[go: up one dir, main page]

JP2015023463A - パケット解析装置、パケット解析方法、及びパケット解析プログラム - Google Patents

パケット解析装置、パケット解析方法、及びパケット解析プログラム Download PDF

Info

Publication number
JP2015023463A
JP2015023463A JP2013150926A JP2013150926A JP2015023463A JP 2015023463 A JP2015023463 A JP 2015023463A JP 2013150926 A JP2013150926 A JP 2013150926A JP 2013150926 A JP2013150926 A JP 2013150926A JP 2015023463 A JP2015023463 A JP 2015023463A
Authority
JP
Japan
Prior art keywords
packet
data
ack
interval
delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
JP2013150926A
Other languages
English (en)
Inventor
岡田 純代
Sumiyo Okada
純代 岡田
祐士 野村
Yuji Nomura
祐士 野村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013150926A priority Critical patent/JP2015023463A/ja
Priority to US14/328,038 priority patent/US20150023189A1/en
Publication of JP2015023463A publication Critical patent/JP2015023463A/ja
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/08Testing, supervising or monitoring using real traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】中継装置におけるパケットの送出開始から送出完了までに生じる遅延による通信品質の解析精度の低下を抑制する。【解決手段】中継装置を経由して端末装置へ送信されるパケットを受信し、受信したパケットに基づいて、中継装置がパケットの送出を開始してから完了するまでの時間を示す遅延時間を算出し、パケットの受信間隔が遅延時間よりも長い場合、中継装置と端末装置の間の通信品質の解析を行う。【選択図】図1

Description

本発明は、通信ネットワークにおいて送受信されるパケットの解析に関する。
近年、情報技術の発展に伴い、パケット通信ネットワークを介しての双方向通信が活発に行われている。例えば、インターネットの標準プロトコルとして広く認知されているTCP/IP(Transmission Control Protocol/Internet Protocol)によって、パケット化したデータを、パケット通信ネットワークを介して送受信することができる。パケット通信ネットワークにおいて、通信品質の監視・管理が重要になる。パケット通信ネットワーク内において、通信品質の監視・管理を行うためには、パケット通信ネットワーク内に監視装置を設置することが考えられる。監視装置はパケット通信ネットワーク内の中継装置(例えば、スイッチやタップなどの分岐装置)を介して、中継装置を通過するパケットを受信して、パケット通信ネットワークの通信品質を監視することができるパケット解析装置である。
ところで、パケットの受信間隔を用いてパケット通信ネットワークの通信品質の解析を行う監視装置がある。
特開2005−252608号公報
パケット通信ネットワークには、有線区間及び無線区間が含まれ、パケット通信ネットワークの端末として無線通信装置が使用される場合がある。パケット通信ネットワークにおいて有線区間と無線区間との間を中継する中継装置は、有線区間の回線から受信したパケットを無線区間の回線に送出する。その際、中継装置では、パケットサイズや、帯域幅に応じて、パケットの送出開始から送出完了までに遅延が生じる可能性がある。このような送信遅延による影響が大きくなれば、監視装置における通信品質の解析結果への送信遅延の影響が大きくなり、本来解析すべき情報の割合が小さくなるため、その中に含まれる誤差の影響が相対的に大きくなる。そのため、監視装置による通信品質の解析精度の低下を招くおそれがある。
そこで、1つの側面では、本発明は、中継装置におけるパケットの送出開始から送出完了までに生じる遅延による通信品質の解析精度の低下を抑制することを目的とする。
一態様の監視装置は、受信部、算出部、及び解析部を含む。受信部は、中継装置を経由して端末装置へ送信されるパケットを受信する。算出部は、受信したパケットに基づいて、中継装置がパケットの送出を開始してから完了するまでの時間を示す遅延時間を算出する。解析部は、受信したパケットと1つ前に受信したパケットの受信間隔が遅延時間よりも長い場合、中継装置と端末装置の間の通信品質の解析を行う。
一実施態様によれば、中継装置におけるパケットの送出開始から送出完了までに生じる遅延による通信品質の解析精度の低下を抑制することができる。
パケット解析装置の一実施例の構成を図解した機能ブロック図である。 本実施形態に係る通信システムの構成の一例を示す。 監視装置における、無線区間の回線の種別を判定する解析処理を説明するための図である。 シリアル化遅延を説明するための図である。 シリアル化遅延がないと仮定した場合の、有線端末と無線端末間のパケットの流れの一例を示す図である。 シリアル化遅延があると仮定した場合の、有線端末と無線端末間のパケットの流れの一例を示す図である。 無線回線種別判定において、シリアル化遅延の影響がない場合の一例である。 無線回線種別判定において、シリアル化遅延の影響がある場合の一例である。 シリアル化遅延の影響がない場合の有線端末から無線端末にかけてのパケットの流れの一例を示す。 シリアル化遅延の影響がある場合の有線端末から無線端末にかけてのパケットの流れの一例を示す。 監視装置の通信プログラムの機能構成の一例を示す。 Ethernet(登録商標)フレームのヘッダの構成の一例を示す。 IPヘッダの構成の一例を示す。 TCPヘッダの構成の一例を示す。 記録部により記録される受信履歴情報の一例である。 シリアル化遅延の算出方法の一例の処理内容を図解したフローチャートである。 種別毎に無線再送周期の値が記録された無線再送周期情報の一例である。 パケットを受信したときの監視装置の処理内容を図解したフローチャートである。 監視装置による回線種別判定処理の一例の処理内容を図解したフローチャートである。 パケットのサイズが同じ場合に、RTTを計測することによりシリアル化遅延を算出する方法を説明する図である。 パケットのサイズが同じ場合に、RTTを計測することによりシリアル化遅延を算出する方法の処理内容を図解したフローチャートである。 パケットのサイズが異なる場合に、シリアル化遅延を算出する方法を説明する図である。 パケットのサイズが異なる場合に、シリアル化遅延を算出する方法の処理内容を図解したフローチャートである。 監視装置のハードウェア構成の一例を示す。
監視装置は、受信した2つのパケットの受信間隔を用いて通信品質の解析を行う。例えば、監視装置は、受信した2つのパケットの受信間隔と、それらのパケットの確認応答パケットの受信間隔とを用いて、パケットを中継する中継装置で再送が発生した場合の再送時間を算出(推定)する。そして、監視装置は、算出した再送時間を、無線回線の種類毎に予め定められた再送時間と比較することにより、無線回線の種別を判定する。しかしながら、中継装置においてパケットの送出開始から送出完了までに生じる遅延に因り、監視装置がパケットの受信間隔に基づいて算出(推定)する再送時間を正確に算出できない場合がある。この場合は無線回線の種別の判定精度が低下することとなる。監視装置は、そのような正確に再送時間を算出できない場合を判定して、無線回線の種別の判定を行わないようにする。これにより、中継装置におけるパケットの送出開始から送出完了までに生じる遅延による通信品質の解析精度の低下を抑制することができる。
図1は、パケット解析装置の一実施例の構成を図解した機能ブロック図である。図1において、パケット解析装置10は、受信部1、算出部2、解析部3、及び格納部4を含む。
受信部1は、中継装置を経由して端末装置へ送信されるパケットを受信する。また、受信部は、パケットに対する確認応答パケットを受信する。
算出部2は、受信したパケットに基づいて、中継装置がパケットの送出を開始してから完了するまでの時間を示す遅延時間を算出する。また、算出部は、有線回線から受信されたパケットに基づいて、中継装置が無線回線へのパケットの送出を開始してから完了するまでにかかる遅延時間を算出する。さらに、算出部は、第1のパケットと第2のパケットの受信間隔と、第1のパケットに対する確認応答パケットと第2のパケットに対する確認応答パケットの受信間隔と、の差分を用いて、中継装置が無線回線へのパケットの送出を開始してから完了するまでにかかる遅延時間を算出する。
解析部3は、パケットの受信間隔が遅延時間よりも長い場合、中継装置と端末装置の間の通信品質の解析を行う。
格納部4は、無線回線の通信速度情報を格納する。算出部2は、格納部4に格納された無線回線の通信速度情報と、有線回線から受信されたパケットのサイズに基づいて、中継装置が無線回線へのパケットの送出を開始してから完了するまでにかかる遅延時間を算出する。
図2は、本実施形態に係る通信システム20の構成の一例を示す。
通信システム20は、有線端末21、分岐装置22、中継装置23、無線端末24、及び監視装置25を含む。有線端末21と中継装置23は有線回線で接続され、有線端末21と中継装置23の有線経路上には分岐装置22が配置される。分岐装置22は、有線端末21及び中継装置23間を接続することに加え、さらに監視装置25に接続する。中継装置23と無線端末24は無線回線で接続される。ここで、本実施形態においては、有線区間の回線は、無線区間の回線よりも通信速度が速いものとする。監視装置25は、パケット解析装置10の一例である。
有線端末21は、無線端末24に宛ててパケットを送信する。そして、有線端末21は、送信したパケットに対する確認応答パケットを無線端末24から受信する。以下の説明では、有線端末21から無線端末24に宛てて送信されたパケットをデータパケット、データパケットに対する無線端末24から有線端末21に宛てて送信された確認応答パケットをACKパケットと記す。有線端末21と無線端末24の間で通信されるパケットは、例えばTCPパケットであり、パケットが宛先の端末に受信されると、宛先の端末はパケットが到達したことを示す情報を返信する。
分岐装置22は、有線経路上を流れるデータパケット及びACKパケットをキャプチャする。そして、分岐装置22は、キャプチャしたパケットをそのパケットの宛先に向けて回送するとともに、キャプチャしたパケットを複製して、監視装置25に転送する。尚、分岐装置22は、例えば、タップ、リピータハブ、またはスイッチ等である。例えば、スイッチのミラーポートを監視装置25に接続して、ミラーポートから監視装置25にパケットを転送してもよい。
中継装置23は、データパケットを有線回線から受信し、受信したデータパケットを無線通信可能な形式に変換して、無線端末24に宛てて無線回線に送信する。また、中継装置23は、無線回線からACKパケットを受信し、受信したACKパケットを有線で通信可能な形式に変換して、有線端末21に宛てて有線回線に送信する。中継装置23は、例えば、携帯電話の基地局等である。
無線端末24は、有線端末21からデータパケットを受信する。すると、無線端末24は、データパケットを受信したことを示すACKパケットを有線端末21に宛てて返信する。
監視装置25は、有線端末21から無線端末24に宛てて送信されたデータパケットと、データパケットに対する確認応答のACKパケットと、に基づいて、無線区間についての様々な情報を解析する。情報の解析の一例としては、具体的には、無線区間の回線の種別を判定する解析処理がある。無線種別判定を行うと、無線種別に合わせて品質(良いのか悪いのか)を判定することができ、どの無線回線で問題が発生しているのかの切り分けができる。また、監視装置25は、無線区間ではなく、有線区間に配置されることにより、パケットのキャプチャが容易になる。さらに、監視装置25が無線端末の近くではなく、コア網である有線区間に配置されることにより、監視装置25の集約が可能となり、監視装置25の数を減らすことができる。
図3は、監視装置25における、無線区間の回線の種別を判定する解析処理を説明するための図である。監視装置25は、受信したパケットの受信時刻を用いて、中継装置23において再送が発生した場合の再送時間を算出(推定)し、算出した再送時間を、無線回線の種類毎に予め定められている再送時間と比較することにより、無線回線の種別を判定する。
具体的には、監視装置25は、有線端末21からデータパケットを受信すると、受信したデータパケットの監視装置25での受信時刻を記録する。また、監視装置25は、受信時刻を記憶したデータパケットに対するACKパケットを受信すると、受信したACKパケットの監視装置25での受信時刻を記録する。そして監視装置25は、受信時刻を記録したデータパケットのうち、2つのデータパケット(ここでは、データパケットA、BとしデータパケットAはデータパケットBより前に受信されたとする)に着目し、この2つのデータパケットの受信時刻の差分を算出する。このデータパケットA、Bの受信時刻の差分を、以下の説明では、データ間隔と記す。また、監視装置25は、着目したデータパケットA、Bにそれぞれ対応するACKパケットであるACKパケットA、Bの受信時刻の差分を取得する。このACKパケットA、Bの受信時刻の差分を、以下の説明では、ACK間隔と記す。そして、監視装置25は、中継装置23におけるパケットの再送にかかる時間(再送時間)を、監視装置25におけるACK間隔とデータ間隔の差分をとることにより算出(推定)する。そして、監視装置25は、ACK間隔とデータ間隔の差分を、予め監視装置25の所定の記憶領域に記憶しておいた回線毎にかかる再送時間と比較することで、無線回線の種別の判定を行う。このように、キャプチャしたパケットの受信時刻を記憶してデータ間隔とACK間隔の差分を算出し、回線毎の再送時間と比較することで、監視装置25は、無線回線の種別を判定することができる。
ここで、中継装置23において高速な有線区間から受信されたデータパケットは、低速な無線区間に送信される。このとき、中継装置23では、パケットをインターフェースから送信するために電気信号や光信号、電波など物理的な信号に変換するために時間がかかり、有線区間から受信したデータパケットを無線区間に送出するために遅延が発生する。このような遅延をシリアル化遅延と呼ぶ。
無線回線へ送出するデータのシリアル化遅延は、以下の式(1)により求められる。
シリアル化遅延=無線回線へ送出するデータのサイズ/無線回線の通信速度 (1)
図4は、シリアル化遅延を説明するための図である。図4(A)は、帯域幅の大きい回線を示し、図4(B)は、帯域幅の小さい回線を示している。同じサイズのデータを送信する場合でも、帯域幅の大きい回線では、送出(送信)開始から送出(送信)終了までの時間が短く、帯域幅の小さい回線では、送出(送信)開始から送出(送信)終了までの時間が長くなる。
中継装置23においてこのようなシリアル化遅延が発生すると、図3を参照して説明した無線回線種別判定の精度が低下する。図3の無線回線種別判定処理では、中継装置23における再送にかかる時間を、監視装置25におけるACK間隔とデータ間隔の差分をとることにより算出している。しかしながら、シリアル化遅延が発生する場合は、ACK間隔とデータ間隔の差分は、実際の再送にかかる時間からずれてしまう。これについて、図5及び図6を参照して説明する。
図5は、シリアル化遅延がないと仮定した場合の、有線端末21と無線端末24間のパケットの流れの一例を示す図である。図6は、シリアル化遅延があると仮定した場合の、有線端末21と無線端末24間のパケットの流れの一例を示す図である。
図5の例では、中継装置23においてシリアル化遅延がないと仮定しているため、無線区間において再送が発生しない場合には、有線区間におけるデータ間隔と無線区間におけるデータ間隔が同じになっている。そのため、監視装置25における、ACK間隔とデータ間隔との差分は、再送時間と等しくなる。
一方、図6の例では、無線区間において再送が発生しない場合にも、有線区間におけるデータ間隔と無線区間におけるデータ間隔が異なっている。これは、中継装置23でシリアル化遅延があると仮定しているため、無線区間におけるデータ間隔が、有線区間におけるデータ間隔よりも大きくなるからである。この場合、監視装置25における、ACK間隔とデータ間隔の差分は再送時間とはならない。
図3を参照して説明した無線回線種別判定では、ACK間隔とデータ間隔の差分と、予め監視装置25の所定の記憶領域に記憶しておいた回線毎にかかる再送時間とを比較することで、無線回線の種別の判定を行う。このような判定では、図6のように、シリアル化遅延の影響で、ACK間隔とデータ間隔の差分が再送時間とずれる場合には、正確に無線回線種別の判定ができない。
そこで、本実施形態では、シリアル化遅延により無線回線種別の判定結果に影響がある場合には、監視装置25は、無線回線種別の判定を行わないようにする。このようにすることで、シリアル化遅延により無線回線種別の判定の精度が低下することを抑制することができる。
次に、シリアル化遅延により無線回線種別の判定結果に影響がある場合とはどういう場合かを詳細に説明する。図7及び図8を参照して以下で説明されるように、シリアル化遅延が発生しても、無線回線種別の判定結果に影響がある場合とそうでない場合とがある。
図7は、無線回線種別判定において、シリアル化遅延の影響がない場合の一例である。シリアル化遅延の影響がない場合は、監視装置25におけるデータ間隔が、シリアル化遅延の値以上の場合である。図7のように、監視装置25におけるデータ間隔がシリアル化遅延の値以上の場合には、有線区間におけるデータ間隔と無線区間におけるデータ間隔は同じになる。従って、図5を参照して説明したように、監視装置25における、ACK間隔とデータ間隔の差分は再送時間となるため、無線回線種別の判定結果に影響はない。
図8は、無線回線種別判定において、シリアル化遅延の影響がある場合の一例である。シリアル化遅延の影響がある場合は、監視装置25におけるデータ間隔が、シリアル化遅延の値よりも小さい場合である。この場合には、有線区間におけるデータ間隔と無線区間におけるデータ間隔が異なる。従って、図6を参照して説明したように、監視装置25における、ACK間隔とデータ間隔の差分は再送時間とはならないため、無線回線種別の判定結果に影響が生じる。よって、監視装置25におけるデータ間隔が、シリアル化遅延の値よりも小さい場合には、監視装置25は無線回線種別判定を行わないようにする。
シリアル化遅延の影響がない場合について、さらに例を挙げて説明する。図9は、シリアル化遅延の影響がない場合の有線端末21から無線端末24にかけてのパケットの流れの一例を示す。尚、図9の例では、2つのデータパケットに対して1つのACKパケットが応答されているが、これに限定されず、所定量のデータを受信する毎にACKパケットを返信するようにしてもよい。
図9において、先ず、有線端末21はDATA1〜6の6つのパケットをほぼ同時に無線端末24に宛てて送信する。その後、有線端末21はACKを受信する毎に、2つのパケットをほぼ同時に無線端末24に宛てて送信する。
中継装置23では、データパケットを無線区間に送出するためにシリアル化遅延が発生している。
無線端末24は、2つのデータパケットを受信する毎に、ACKパケットを有線端末21に返信する。
監視装置25は、データパケットをキャプチャすると、データパケットの受信時刻をそのデータパケットの識別情報と対応付けて、所定の記憶領域に格納する。また、監視装置25は、ACKパケットをキャプチャすると、ACKパケットの受信時刻をそのACKパケットの識別情報と対応付けて、所定の記憶領域に格納する。ここで、格納されたデータパケットとACKパケットの受信時刻は、データ間隔とACK間隔を算出する際に用いられる。
ここでは説明のために、監視装置25は、DATA10とDATA12に着目して、ACK間隔とデータ間隔の差分を算出することとする。DATA10とDATA12のデータ間隔はシリアル化遅延と等しくなっている。これは、DATA10は有線端末21においてACK4が受信されると同時に送信され、DATA12はACK6が受信されると同時に送信されており、さらに、ACK4とACK6の間隔はシリアル化遅延の間隔と等しくなっているからである。
DATA12とDATA10のデータ間隔はシリアル化遅延の値以上であるため、無線区間で再送が発生しない場合、有線区間と無線区間でDATA12とDATA10のデータ間隔は同じになる。よって、DATA12とDATA10の監視装置25におけるACK間隔とデータ間隔の差分は、再送時間(DATA11と12の再送時間とDATA9と10の再送時間の差分)と等しくなる。従って、図9の例では、DATA10とDATA12に着目した場合はシリアル化遅延が解析結果に影響を及ぼさないので、監視装置25は、DATA10とDATA12の「ACK間隔」−「データ間隔」の値を解析の対象とする。
図9に示されるように、DATA11とDATA12について、無線端末24に到達するまでに中継装置23からの再送が5回発生している。従って、DATA10とDATA12の、「ACK間隔」−「データ間隔」は、再送遅延×5の値となる。ここで、再送遅延とは、中継装置23において、パケットのロスが発生した場合などに、パケットの一度の再送処理にかかる時間(最初のパケットを送信してから、再送パケットが送信されるまでの時間)である。よって、中継装置23は、DATA10とDATA12の、「ACK間隔」−「データ間隔」の値を算出し、算出した値と、予め記憶された無線回線種別毎の再送遅延の値×N(Nは正の整数)とを比較することで、無線回線種別を判定することができる。
図10は、シリアル化遅延の影響がある場合の有線端末21から無線端末24にかけてのパケットの流れの一例を示す。
図10において、有線端末21、監視装置25、中継装置23、及び無線端末24の動作は、図9で説明したものと同様である。しかしながら、図9と異なり図10では、中継装置23から無線端末24に対する無線区間の通信において、DATA4の到着が遅れ、ACK4とACK6がほぼ同時に有線端末21に宛てて送信されている。この場合、有線端末21はACK4とACK6をほぼ同時に受信するため、DATA9〜DATA12の4つのデータパケットをほぼ同時に無線端末24に宛てて送信することとなる。すると、DATA10とDATA12のデータ間隔は、シリアル化遅延の値よりも小さくなる。
すると、DATA10とDATA12の無線区間でのデータ間隔は有線区間のデータ間隔よりも大きくなる。よって、DATA10とDATA12の監視装置25におけるACK間隔とデータ間隔の差分は再送時間と等しくならない。従って、図10では、DATA10とDATA12に着目した場合はシリアル化遅延が解析結果に影響を及ぼすため、監視装置25は、DATA10とDATA12の「ACK間隔」−「データ間隔」の値を、無線回線種別判定処理の対象とはしない。
次に、監視装置25において、無線回線種別判定処理を行う通信プログラムの構成について説明する。図11は、監視装置25の通信プログラム30の機能構成の一例を示す。通信プログラム30は、取得部31、抽出部32、分類部33、記録部34、算出部35、比較部36、及び判定部37を含む。取得部31は、受信部1の一例である。算出部35は、算出部2の一例である。比較部36及び判定部37は、解析部3の一例である。
取得部31は、パケットを受信(キャプチャ)する。例えば、取得部31は、監視装置25のネットワークカードを介してパケットを受信する。ネットワークカードは、有線経路上に配設された分岐装置22と接続し、分岐装置22からパケットを受信する。
抽出部32は、取得部31が受信したパケットがTCPか否かを判定して、TCPパケットを抽出する。具体的には、抽出部32は、キャプチャしたパケットのヘッダ情報を参照してTCPパケットか否かを判定することにより、受信したパケットの中からTCPパケットを抽出する。
ここで、パケットのヘッダの構成について説明する。
図12は、Ethernet(登録商標)フレームのヘッダの構成の一例を示す。図12に示すように、Ethernet(登録商標)フレームのヘッダは、宛先アドレス、送信元アドレス、タイプ、データ、及びFCS(Frame Check Sequence)のフィールドを含む。
宛先アドレスフィールドにはフレームの宛先のMACアドレスが格納される。送信元アドレスフィールドにはフレームの送信元のMACアドレスが格納される。タイプフィールドにはデータフィールドに格納される上位層プロトコルを示す識別情報が格納される。データフィールドにはデータが格納される。FCSフィールドにはフレームのエラーを検出するための情報が格納される。
図13は、IPヘッダの構成の一例を示す。図13に示すように、IPヘッダは、プロトコル、送信元IPアドレス、宛先IPアドレス、その他の各種情報のフィールドを含む。
プロトコルフィールドは、上位に当たるトランスポート層のネットワーク・プロトコルの種類を表す番号が格納される。例えば、プロトコルフィールドに格納される番号は、「1」はICMP(Internet Control Message Protocol)を示し、「6」はTCP(Transmission Control Protocol)を示すなどと定められている。送信元IPアドレスフィールドは、送信元のIPアドレスが格納される。宛先IPアドレスフィールドは、宛先のIPアドレスが格納される。
図14は、TCPヘッダの構成の一例を示す。図14に示すように、TCPヘッダは、送信元ポート番号、宛先ポート番号、シーケンス番号、応答確認番号、その他の各種情報のフィールドを含む。
送信元ポート番号フィールドは、送信元のアプリケーションを識別するための番号が格納される。宛先ポート番号フィールドは、宛先のアプリケーションを識別するための番号が格納される。シーケンス番号フィールドは、送信するデータに対して順序付けを行うための番号が格納される。また、シーケンス番号は、これから送受信しようとしているデータの位置を示すともいえる。応答確認番号フィールドは、受信したデータに対してどこまで受信できたのかを示す情報が格納される。
抽出部32は、パケットのEthernet(登録商標)フレームのヘッダの「タイプ」フィールドが「0800」であればIPv4、IPヘッダの「プロトコル」フィールドが「6」であればTCPであると判定して、TCPであると判定したパケットを抽出する。
尚、抽出するパケットはTCPパケットとしたが、これに限定されず、受信応答を行うプロトコルに準拠したパケットでTCPと同等の解析ができるのであれば、種々のパケットが用いられてもよい。
分類部33は、TCPと判定されたパケットをコネクション毎に分類する。本実施形態においてコネクションとは、パケットの、送信元IPアドレス、宛先IPアドレス、送信元ポート番号、及び宛先ポート番号の組み合わせにより一意に識別されるものである。尚、分類部33は、送信元IPアドレス及び宛先IPアドレスを、IPヘッダの送信元IPアドレスフィールド及び宛先IPアドレスフィールドから取得する。また、分類部33は、送信元ポート番号及び宛先ポート番号を、TCPヘッダの送信元ポート番号フィールド及び宛先ポート番号フィールドから取得する。データパケットとそのデータパケットに対応するACKパケットとは、送信元IPアドレス(ポート番号)と宛先IPアドレス(ポート番号)の値が入れ替わることになるが、これらは同じコネクションに分類されるとする。
記録部34は、パケットの受信時刻を、パケットの識別情報と対応付けて所定の記憶領域に記録する。以下の説明では、記録部34が記録する情報を受信履歴情報と記す。記録部34は、ACKパケットの情報については、どのデータパケットに対応するのかを示す情報も受信履歴情報に記録する。また、記録部34は、受信したパケットの受信時刻とともにパケットのサイズも受信履歴情報に記憶するようにしてもよい。尚、記録部34は、特定のコネクションの情報のみを受信履歴情報として記録するようにしてもよい。
パケットの識別情報は、パケットを一意に識別するための情報であり、例えば、パケットのTCPヘッダに含まれるシーケンス番号、確認応答番号、及び分類部33が分類したコネクションの組み合わせにより表される。
図15は、記録部34により記録される受信履歴情報の一例である。受信履歴情報90は、送信元IPアドレス81、送信元ポート番号82、宛先IPアドレス83、宛先ポート番号84、シーケンス番号85、確認応答番号86、及び受信時刻87のデータ項目を含む。
送信元IPアドレス81、送信元ポート番号82、宛先IPアドレス83、及び、宛先ポート番号84は、分類部33が分類したコネクションを一意に識別するための情報である。
シーケンス番号85は、パケットのTCPヘッダに含まれるシーケンス番号が格納される。
確認応答番号86は、パケットのTCPヘッダに含まれる確認応答番号が格納される。
受信時刻87は、パケットを監視装置25が受信した時刻が格納される。
記録部34は、受信したパケットのIPヘッダの送信元IPアドレスフィールド及び宛先IPアドレスフィールドの情報を、それぞれ、送信元IPアドレス81、宛先IPアドレス83に格納する。また、記録部34は、受信したパケットのTCPヘッダの送信元ポート番号フィールド及び宛先ポート番号フィールドの情報を、それぞれ、送信元ポート番号82、宛先ポート番号84に格納する。さらに、記録部34は、受信したパケットのTCPヘッダのシーケンス番号と確認応答番号の各フィールドの情報を、それぞれ、シーケンス番号85、確認応答番号86に格納する。そして、記録部34は、受信したパケットの受信時刻を受信時刻87に格納する。尚、記録部34は、監視装置25のタイマ(時計)を用いて、パケットの受信時刻を格納する。
図15の受信履歴情報90には、送信元IPアドレス81が「100.100.100.100」、送信元ポート番号82が「80」、宛先IPアドレス83が「200.200.200.200」、宛先ポート番号84が「40000」のレコード91が格納されている。レコード91は、さらに、シーケンス番号85に「1000」、確認応答番号86に「2700」、受信時刻87に「2013/1/1/10:00:00.000」が格納されている。ここで、以下の説明においては簡略のために、送信元IPアドレス81が「100.100.100.100」、送信元ポート番号82が「80」、宛先IPアドレス83が「200.200.200.200」、宛先ポート番号84が「40000」である4つの組を、まとめてコネクション「A」と記す。尚、送信元IPアドレス(ポート番号)と宛先IPアドレス(ポート番号)の値が入れ替わったものも、同一のコネクション「A」と記す。
図15の受信履歴情報90には、さらに、コネクションが「A」、シーケンス番号85が「2700」、確認応答番号86が「1500」、受信時刻87が「2013/1/1/10:00:00.020」のレコード92が格納されている。また、受信履歴情報90には、コネクションが「A」、シーケンス番号85が「1500」、確認応答番号86が「2700」、受信時刻87が「2013/1/1/10:00:00.025」のレコード93が格納されている。さらに、受信履歴情報90には、コネクションが「A」、シーケンス番号85が「2700」、確認応答番号86が「2000」、受信時刻87が「2013/1/1/10:00:00.055」のレコード94が格納されている。
例えば、レコード91とレコード92とでは、送信元IPアドレス(ポート番号)と宛先IPアドレス(ポート番号)の値が入れ替っているが、これは、同一コネクションにおいてパケットの送信される向きが逆であることを示している。
また、例えば、レコード91のシーケンス番号85が「1000」であり、レコード92の確認応答番号86が「1500」であることから、レコード91に対応するパケットのTCPデータのサイズは「500(byte)」であることが分かる。尚、フレームのサイズはTCPデータのサイズにヘッダのサイズを加えれば算出できる。
算出部35は、中継装置23において所定のデータパケットについて発生するシリアル化遅延の値を算出(推定)する。図16は、シリアル化遅延の算出方法の一例の処理内容を図解したフローチャートである。
図16のフローにおいて、算出部35は、先ず、対象のデータパケットのサイズを取得する(S101)。
データパケットのサイズは、予め所定の記憶領域に記憶された所定の固定値としてもよいし、中継装置23が受信した所定数のパケットの平均値等としてもよい。また、例えば、データパケットのサイズは、以下のように算出してもよい。
すなわち、先ず算出部35は、所定の2つのACKパケットに着目する。着目するACKパケットは、取得部31が直近に受信したACKパケットとしてもよいし、任意のACKパケットとしてもよい。ここでは、説明のために着目する2つのACKパケットをACKパケットA、ACKパケットBとし、ACKパケットAは、同一コネクションにおいてACKパケットBの1つ前に中継装置23に受信されたACKパケットであるとする。そして、ACKパケットA、Bにそれぞれ対応するデータパケットをデータパケットA、Bとする。すると、算出部35は、中継装置23がデータパケットAを受信した直後の時点から、中継装置23がデータパケットBを受信した直後の時点までの間に受信したデータパケットのサイズの平均を算出する。
個々のデータパケットのサイズについては、算出部35は受信履歴情報を参照して取得する。例えば受信履歴情報90においては、算出部35は、受信履歴情報90に含まれるACKパケットA及びACKパケットBに対応するレコードの確認応答番号86の差分に基づいて算出する。
次に、算出部35は、無線回線の通信速度情報(帯域幅)を取得する(S102)。通信速度情報は、予め監視装置25の所定の記憶領域に記憶されたものである。
そして、算出部35は、S1で算出したデータパケットのサイズを、S2で取得した無線回線の通信速度で割り、その商をシリアル化遅延として算出する(S103)。
ここで、シリアル化遅延の値は、S103で算出した値と実際のシリアル化遅延との誤差を考慮して、S103で算出した値に所定の値を加えた値としてもよい。例えば、「速度=1Mbps」で「データサイズ=1500バイト」のとき、「シリアル化遅延=12ms」が算出されるが、これに所定の値αを加えて、パケット2つ分のシリアル化遅延は、「12ms×2(パケット)+α(α=6ms)=30ms」などとしてもよい。
比較部36は、データ間隔がシリアル化遅延の値以上か否かを判定する。
具体的には先ず、比較部36は、無線端末24が受信したACKパケットのうち、所定の2つのACKパケットA、Bに着目する。比較部36が着目するパケットは、例えば、算出部35がデータパケットのサイズを算出する際に着目した2つのパケットとしてもよい。そして、比較部36は、ACKパケットA、Bにそれぞれ対応するデータパケットA、Bのデータ間隔を、記録部34が記録した受信履歴情報を用いて算出する。
データ間隔の算出においては、受信履歴情報90を用いる場合、具体的には先ず、比較部36は、ACKパケットA、Bに各々対応するデータパケットA、Bに対応する受信履歴情報90のレコードを特定して、特定したレコードの受信時刻87の値を取得する。
図15の例においては、ACKパケットAはレコード92に対応し、ACKパケットBはレコード94に対応するものとする。比較部36は、ACKパケットA、Bにそれぞれ対応する受信履歴情報90のレコードを、コネクション、シーケンス番号、及び確認応答番号に基づいて特定する。すると、シーケンス番号85と確認応答番号86の関係から、ACKパケットAに対応するデータパケットはレコード91が示すパケットであると比較部36は特定する。そして、比較部36は、データパケットAの受信時刻を、レコード91の受信時刻87から取得する。同様に、比較部36は、ACKパケットBに対応するデータパケットBはレコード93が示すパケットであると特定し、データパケットBの受信時刻を、レコード93の受信時刻87から取得する。すなわち、比較部36は、ACKパケットA、Bに対応するデータパケットA、Bの受信時刻として、それぞれ「2013/1/1/10:00:00.000」、「2013/1/1/10:00:00.025」を取得する。
そして、比較部36は、抽出した2つの受信時刻の差分をとり、データパケットA、Bのデータ間隔の値を算出する。そして、比較部36は、算出したデータパケットA、Bのデータ間隔が、算出部35が算出した、データパケットA、B間のシリアル化遅延の値以上か否かを判定する。
図15の例においては、比較部36は、データパケットA、Bのデータ間隔を「2013/1/1/10:00:00.025」−「2013/1/1/10:02:00.000」から「0.025」(s)であると算出する。そして、比較部36は、「0.025」(s)が、算出部35により算出されたシリアル化遅延の値以上か否かを判定する。
判定部37は、データ間隔がシリアル化遅延の値以上であると比較部36が判定した場合に、「ACK間隔」−「データ間隔」が0より大きいか否かを判定する。「ACK間隔」−「データ間隔」は、言い換えると、監視装置25と無線端末24の間で発生した遅延である。そして、「ACK間隔」−「データ間隔」が0より大きいと判定した場合、判定部37は、「ACK間隔」−「データ間隔」の値が無線再送周期と一致するか否かを判定する。
判定部37は、先ず「ACK間隔」−「データ間隔」を算出する。具体的には、判定部37は、比較部36が着目したACKパケットA、Bに着目する。そして、ACKパケットA、Bの端末装置での受信時刻を、受信履歴情報からそれぞれ取得する。図15の受信履歴情報90の例においては、判定部37は、ACKパケットA、Bの受信時刻として、それぞれ、レコード92、レコード94の受信時刻87の値である、「2013/1/1/10:00:00.020」、「2013/1/1/10:00:00.055」を取得する。
そして、判定部37は、ACKパケットBの受信時刻からACKパケットAの受信時刻を引くことにより、ACKパケットA、BのACK間隔を取得する。図15の例においては、ACKパケットA、Bのデータ間隔は、「2013/1/1/10:00:00.055」−「2013/1/1/10:00:00.020」=「0.035」(s)となる。
ACK間隔を算出すると、判定部37は、ACKパケットA、Bに対応するACK間隔がデータ間隔より大きいか否かを判定する。図15の例においては、ACK間隔は「0.035」(s)であり、データ間隔は「0.025」(s)であるので、判定部37は、ACKパケットA、Bに対応するACK間隔がデータ間隔より大きいと判定する。
次に、ACK間隔がデータ間隔より大きいと判定した場合、判定部37は、「ACK間隔」−「データ間隔」の値が無線再送周期と一致するか否かを判定する。具体的には、判定部37は、比較部36が算出した「ACK間隔」−「データ間隔」が、予め記憶された無線再送周期と一致するか否かを判定する。
図17は、種別毎に無線再送周期の値が記録された無線再送周期情報の一例である。無線再送周期情報は、種別111と再送周期112のデータ項目を含む。種別111は、無線の種別を識別するための識別情報である。再送周期112は、種別111で示される無線の種別の再送周期を示す情報である。図17の例においては、種別111はHSPDA(High Speed Downlink Packet Access)とLTE(Long Term Evolution)が示されている。そして、HSPDAの再送周期112として「10ms」、LTEの再送周期112として「8ms」が記されている。尚、無線の種別111は、図17に示したHSPDAとLTEに限定されず種々の種別としてもよい。また、図17はテーブル形式で記載したが、無線の種別と再送周期が関連付けられれば種々のデータ構造としてもよい。
例えば、判定部37は、「ACK間隔」−「データ間隔」の値が「10ms×N±2ms」(N:正の整数)(2msは誤差)の範囲に入っていればHSPDAの再送周期と一致しており、範囲に入っていなければ再送周期と一致していないと判定する。図15の例においては、ACKパケットA、Bに着目したときの「ACK間隔」−「データ間隔」の値は「0.035-0.025=0.010」であり、この値は、「10ms×N±2ms」の範囲内である。従って、判定部37は、ACKパケットA、Bに着目したときの「ACK間隔」−「データ間隔」が、HSPDAの無線再送周期に一致すると判定する。
そして、判定部37は、「ACK間隔」−「データ間隔」が無線再送周期と一致すると判定した場合、着目したACKパケットのコネクションにおける無線回線の種別は、無線再送周期が一致した無線回線の種別であると判定する。図15の例の場合、着目したパケットは、ACKパケットA、Bであり、それらのコネクションはコネクション「A」であるので、コネクション「A」における無線回線の種別はHSPDAであると判定部37は判定する。
もしくは、判定部37は、同一コネクションの複数のパケットに着目したときの「ACK間隔」−「データ間隔」の値を蓄積し、再送周期と一致している「ACK間隔」−「データ間隔」の割合が所定の閾値以上である場合に、無線回線の種別の判定をしてもよい。例えば、判定部37は、蓄積した「ACK間隔」−「データ間隔」の値のうちで、HSPDAの再送周期と一致している値の割合が80%以上であれば、無線回線の種別がHSPDAであると判定してもよい。
図18は、パケットを受信したときの監視装置25の処理内容を図解したフローチャートである。
図18の動作フローにおいて、先ず取得部31は、パケットを受信(キャプチャ)する(S121)。次に、抽出部32は、取得部31が受信したパケットがTCPか否かを判定する(S122)。受信したパケットがTCPでないと判定された場合(S122でNo)、処理はS121に戻る。一方、S122において、パケットがTCPであると判定された場合(S122でYes)、分類部33は、受信したパケットをコネクション毎に分類する(S123)。そして、記録部34は、パケットの受信時刻を、パケットの識別情報と対応付けて、受信履歴情報90に格納する(S124)。
図19は、監視装置25による回線種別判定処理の一例の処理内容を図解したフローチャートである。
図19の動作フローにおいて、先ず、算出部35はシリアル化遅延を算出する(S125)。シリアル化遅延の具体的な算出のフローは、図16を参照して説明したものである。
次に、比較部36は、所定のACKパケットに着目し、着目したACKパケットの一つ前に受信したACKパケットと着目したACKパケットとにそれぞれ対応する2つのデータパケットのデータ間隔を算出する(S126)。ここで、S125でシリアル化遅延を算出する際に、所定のACKパケットに着目した場合には、比較部36は、S125で着目したACKパケットと同じACKパケットに着目してもよい。
次に、比較部36は、S126で算出したデータ間隔がS125で算出したシリアル化遅延の値以上か否かを判定する(S127)。データ間隔がシリアル化遅延の値より小さい場合(S127でNo)、処理は終了する。データ間隔がシリアル化遅延の値より小さい場合に、以降の回線種別判定処理を行わないことで、回線種別判定の精度が低下することを抑制することができる。
一方、S127において、データ間隔がシリアル化遅延の値以上である場合(S127でYes)、判定部37は、S126で着目したACKパケットと、着目したACKパケットの一つ前に受信したACKパケットとのACK間隔を算出する(S128)。
次に、判定部37は、S128で算出されたACK間隔からS126で算出されたデータ間隔を引いた値が0より大きいか否かを判定する(S129)。「ACK間隔」−「データ間隔」の値が0以下である場合(S129でNo)、処理は終了する。
一方、S129において、「ACK間隔」−「データ間隔」の値が0より大きい場合(S129でYes)、判定部37は、「ACK間隔」−「データ間隔」の値が、再送周期と一致するか否かを判定する(S130)。「ACK間隔」−「データ間隔」の値が、再送周期と一致しないと判定された場合(S130でNo)、処理は終了する。
一方S130において、「ACK間隔」−「データ間隔」が再送周期と一致すると判定した場合(S130でYes)、判定部37は、S126で着目したACKパケットが伝送された無線回線は、再送周期と一致した種別の無線回線であると判定する(S131)。そして、処理は終了する。
尚、図18のフローで示した処理の直後に図19のフローを開始してもよい。その場合、S126で着目するACKパケットは、S121で取得部31が受信したACKパケットとしてもよい。また、S126において着目したACKパケットの一つ前のACKパケットの受信履歴情報90のレコードは、S128の処理が終了した時点で削除してもよい。同様に、S126において着目したACKパケットの一つ前のACKパケットに対応するデータパケットの受信履歴情報90のレコードは、S127の処理が終了した時点で削除してもよい。
S129において「ACK間隔」−「データ間隔」の値を算出すると、判定部37は、所定の記憶領域に「ACK間隔」−「データ間隔」の値を、着目したパケットのコネクションに対応付けて記憶してもよい。そして、過去に記録された「ACK間隔」−「データ間隔」の値を参照して、判定部37は、再送周期と一致しているデータ間隔−ACK間隔の割合が所定の閾値以上である場合に、無線回線の種別の判定をしてもよい。
尚、S125とS126は順序が逆でもよい。また、S128は、S127の前であってもよい。また、S126において、着目したACKパケットと、着目したACKパケットの一つ前に受信したACKパケットに対応するデータパケットのデータ間隔を算出するとしたが、任意のパケット間のデータ間隔を算出してもよい。その場合、S128のACK間隔は、S126で算出したデータ間隔に対応するものする。
シリアル化遅延の算出方法は、図16を参照して説明した方法に限定されず、通信品質に応じて種々の方法を採ることができる。次に、その他のシリアル化遅延の算出方法の例を示す。
先ず、パケットのサイズが同じである場合に、RTT(Round-Trip Time)を計測することによりシリアル化遅延を算出する方法について説明する。図20は、パケットのサイズが同じ場合に、RTTを計測することによりシリアル化遅延を算出する方法を説明する図である。尚、以降説明する図20〜23の説明では、2つのデータパケットに対して、1つのACKが返されるものとして説明する。
図20(A)は、ACKが返ってきていないパケットが存在しない場合に、新たに2つのパケットが送信されたときの、監視装置25と無線端末24の間でデータが伝送される様子を示している。この場合、監視装置25が受信した新たな2つのパケットのRTTを計測すると、「RTT(A)=伝送遅延+シリアル化遅延×2」となる。尚、伝送遅延は、電波が伝送路を通ってデバイスからデバイスに到達するのに必要な時間である。
図20(B)は、ACKが返ってきていないパケットがウインドウサイズと等しい場合に、新たに2つのパケットが送信されたときの、監視装置25と無線端末24の間でデータが伝送される様子を示している。ウインドウサイズとは、送信側が、受信側からの送達確認なし(ACKパケットの受信を待たず)に連続して送受信できるデータ量を示す値である。この場合、監視装置25が受信した新たな2つのパケットのRTTを計測すると、「RTT(B)=伝送遅延+シリアル化遅延×ウインドウサイズ」となる。ここで、図20(B)の場合、ウインドウサイズの値は8としている。図20において、例えばDATA12のRTTは、「伝送遅延+シリアル化遅延×8」となる。
ここで、図20(A)のときのRTT(A)と図20(B)のときのRTT(B)の差分をとると、図20(A)と図20(B)の伝送遅延は等しいため、伝送遅延が相殺され、「RTT(B)―RTT(A)=シリアル化遅延×(ウインドウサイズ−2)」となる。したがって、「シリアル化遅延=(RTT(B)―RTT(A))/(ウインドウサイズ−2)」により、シリアル化遅延を算出することができる。
図21は、パケットのサイズが同じ場合に、RTTを計測することによりシリアル化遅延を算出する方法の処理内容を図解したフローチャートである。
図21のフローにおいて、先ず監視装置25の算出部35は、有線端末から送信されたデータパケットのうち、無線端末24からACKが返ってきていないパケットのサイズの合計が0か否かを判定する(S201)。具体的には、算出部35は受信履歴情報を参照して、ACKが返ってきていないデータパケットを特定し、特定したデータパケットのサイズの合計が0か否かを判定する。図15の例では、算出部35は、監視装置25が受信したデータパケットのうち、受信履歴情報90にそのデータパケットに対応するACKパケットのレコードが存在するか否かを確認することにより、ACKが返ってきていないデータパケットを特定する。そして、算出部35は、特定したACKが返ってきていないデータパケットのサイズを合計し、合計した値が0か否かを判定する。
S201で、ACKが返ってきていないパケットのサイズの合計が0である場合(S201でYes)、算出部35は、次に監視装置25がほぼ同時に受信する2つのデータパケットのRTTであるRTTを算出する(S202)。具体的には、算出部35は、次に監視装置25が受信する2つのデータパケットの受信時刻と、そのデータパケットに対応するACKパケットの受信時刻とから、RTTを算出する。このデータパケット2つ分のRTTは「伝送遅延+(シリアル化遅延×2)」と等しくなる。
そして、算出部35は、S2で算出したRTTを所定の記憶領域に記録する(S203)。そして処理は終了する。
S201で、ACKが返ってきていないパケットのサイズの合計が0でない場合(S201でNo)、算出部35は、ACKが返ってきていないパケットのサイズの合計がウインドウサイズと等しいか否かを判定する(S204)。ACKが返ってきていないパケットのサイズの合計がウインドウサイズと異なる場合(S204でNo)、処理は終了する。
一方、S204でACKが返ってきていないパケットのサイズの合計がウインドウサイズである場合(S204でYes)、算出部35は、次に監視装置25がほぼ同時に受信する2つのデータパケットのRTTであるRTTfullを算出する(S205)。具体的には、算出部35は、次に監視装置25がほぼ同時に受信する2つのデータパケットの受信時刻と、そのデータパケットに対応するACKパケットの受信時刻とから、RTTfullを算出する。このウインドウサイズ分のデータパケットRTTfullは「伝送遅延+(シリアル化遅延×ウインドウサイズ)」と等しくなる。
次に、算出部35は、S203で記録したRTTとS205で算出したRTTfullを用いてシリアル化遅延を算出する(S206)。具体的には、算出部35は、「(RTTfull−RTT)/(ACKが返ってきていないパケット数−2)」の値をシリアル化遅延として算出する。
次に、サイズの異なるパケットを用いたシリアル化遅延の算出方法について説明する。この方法では、サイズの異なるパケットのRTTの差分を取ることで、伝送遅延を相殺し、シリアル化遅延を算出する。図22は、パケットのサイズが異なる場合に、シリアル化遅延を算出する方法を説明する図である。図22(A)は、サイズが500バイトのパケットが監視装置25から無線端末24にかけて伝送される様子を示している。図22(B)は、サイズが1500バイトのパケットが監視装置25から無線端末24にかけて伝送される様子を示している。
図22(A)と図22(B)では、伝送遅延の値は同じになるが、パケットのサイズが異なるため、シリアル化遅延に差分が生じる。よって、図(B)のRTTから図(A)のRTTを引くことで、伝送遅延の値が相殺され、シリアル化遅延の差分が算出される。このシリアル化遅延の差分を、サイズの差分で割ることにより、単位サイズあたりのシリアル化遅延の値を算出することができる。
図23は、パケットのサイズが異なる場合に、シリアル化遅延を算出する方法の処理内容を図解したフローチャートである。
図23のフローにおいて、先ず監視装置25の算出部35は、有線端末21から送信されたデータパケットのうち、無線端末24からACKが返ってきていないパケットのサイズの合計が0か否かを判定する(S301)。具体的には、算出部35は受信履歴情報を参照して、ACKが返ってきていないデータパケットを特定し、特定したデータパケットのサイズの合計が0か否かを判定する。図15の例では、算出部35は、監視装置25が受信したデータパケットのうち、受信履歴情報90にそのデータパケットに対応するACKパケットのレコードが存在するか否かを確認することにより、ACKが返ってきていないデータパケットを特定する。そして、算出部35は、特定したACKが返ってきていないデータパケットのサイズを合計し、合計した値が0か否かを判定する。無線端末24からACKが返ってきていないパケットのサイズの合計が0でないと判定された場合(S301でNo)、すなわち、有線端末21から送信されたデータパケットのうち、ACKが返ってきていないデータパケットがある場合は、処理は終了する。
S301で、無線端末24からACKが返ってきていないパケットのサイズの合計が0であると判定した場合は(S301でYes)、算出部35は、データパケット2つ分のRTTであるRTT1を算出する(S302)。具体的には、算出部35は、次に監視装置25がほぼ同時に受信する2つのデータパケットの受信時刻と、それらのデータパケットに対応するACKパケットの受信時刻との差分をとり、RTT1を算出する。尚、図15の例の場合、算出部35は、ACKパケット及びデータパケットの受信時刻を、受信履歴情報90のそれぞれ対応するレコードの受信時刻87から取得する。
ここで、RTTは、監視装置25がデータパケットを送信してからACKを受信するまでの間の時間を指す。本実施形態における監視装置25と無線端末24の間のRTTは、「(監視装置25と無線端末24の間の伝送遅延×2)+(1パケットあたりのシリアル化遅延)」となる。よって、RTT1は、「データパケット2つ分のRTTであるので、RTT1=(監視装置25と無線端末24間の伝送遅延×2)+(1パケットあたりのシリアル化遅延×2)」となる。
そして、算出部35は、S302で算出したRTT1と、2つのデータパケットのパケットサイズとを対応付けて所定の記憶領域に記録する(S303)。ここで記録する2つのデータパケットのパケットサイズとRTT1を、以下の説明では、通信情報と記す。
次に、算出部35は、S303で記録した通信情報とは別に、既に通信情報が記憶領域に格納されているか否かを判定する(S304)。ここで、S303で記録した通信情報を通信情報Aと記し、S303で記録した通信情報とは別の既に格納されていた通信情報を通信情報Bと記す。通信情報Bが記憶領域に格納されていないと判定された場合(S304でNo)、処理は終了する。
S304において、通信情報Bが既に記憶領域に格納されていると判定した場合(S304でYes)、算出部35は、通信情報Aと通信情報Bに含まれる2つのパケットサイズを比較して、2つのパケットサイズが異なるか否かを判定する(S305)。通信情報Aと通信情報Bのパケットサイズが等しいと判定された場合(S305でNo)、処理は終了する。
S304において、通信情報Aと通信情報Bのパケットサイズが異なると判定した場合、(S305でYes)、算出部35は、シリアル化遅延を次の式を用いて算出する。
単位サイズあたりのシリアル化遅延=(通信情報BのRTT1−通信情報AのRTT1)/(通信情報Bのパケットサイズ−通信情報Aのパケットサイズ)
尚、所定のサイズのシリアル化遅延の値は、単位サイズあたりのシリアル化遅延の値に所定のサイズを掛けることで算出される。そして、処理は終了する。
次に、監視装置25の構成について説明する。図24は、監視装置25のハードウェア構成の一例を示す。
監視装置25は、CPU401、メモリ402、記憶装置403、読取装置404、通信インターフェース405、及び出力インターフェース406を含む。CPU401、メモリ402、記憶装置403、読取装置404、通信インターフェース405、及び出力インターフェース406はバスを介して接続される。
CPU401は、メモリ402を利用して上述のフローチャートの手順を記述したプログラムを実行することにより、取得部31、抽出部32、分類部33、記録部34、算出部35、比較部36、及び判定部37の一部または全部の機能を提供する。
メモリ402は、例えば半導体メモリであり、RAM領域およびROM領域を含んで構成される。記憶装置403は、例えばハードディスクであり、実施形態の通信プログラム30を格納する。なお、記憶装置403は、フラッシュメモリ等の半導体メモリであってもよい。また、記憶装置403は、外部記録装置であってもよい。メモリ402または記憶装置403は、受信履歴情報、パケットのサイズ、無線回線の通信速度、無線再送周期情報、パケットのRTT、及び通信情報の何れかまたは全てを格納する。メモリ402または記憶装置403は、格納部4の一例である。
読取装置404は、CPU401の指示に従って着脱可能記録媒体450にアクセスする。着脱可能記録媒体450は、たとえば、半導体デバイス(USBメモリ等)、磁気的作用により情報が入出力される媒体(磁気ディスク等)、光学的作用により情報が入出力される媒体(CD−ROM、DVD等)などにより実現される。尚、読取装置404は監視装置25に含まれなくてもよい。
通信インターフェース405は、分岐装置22に接続し、CPU401の指示に従ってネットワークを介してデータを送受信する。
出力インターフェース406は、出力装置451に接続し、CPU401が通信プログラム30を実行した結果を出力する。尚、出力インターフェース406は、監視装置25に含まれなくてもよい。
実施形態の通信プログラムは、例えば、下記の形態で監視装置25に提供される。
(1)記憶装置403に予めインストールされている。
(2)着脱可能記録媒体450により提供される。
(3)プログラムサーバ(図示せず)から通信インターフェース405を介して提供される。
さらに、実施形態の監視装置25の一部は、ハードウェアで実現してもよい。或いは、実施形態の監視装置23は、ソフトウェアおよびハードウェアの組み合わせで実現してもよい。
尚、中継装置23は、有線回線と無線回線を中継するとしたが、これに限定されず、有線回線は種々の高速回線でもよいし、無線回線は種々の低速回線でもよい。また、中継装置で発生する遅延をシリアル化遅延としたが、シリアル化遅延に限定されず、シリアル化遅延と同等に遅延が推測可能であれば、再送遅延以外の中継装置で発生する様々な遅延としてもよいし、それらの組合せとしてもよい。
尚、本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
上記実施形態に関し、更に以下の付記を開示する。
(付記1)
中継装置を経由して端末装置へ送信されるパケットを受信する受信部と、
受信した前記パケットに基づいて、前記中継装置が前記パケットの送出を開始してから完了するまでの時間を示す遅延時間を算出する算出部と、
前記パケットの受信間隔が前記遅延時間よりも長い場合、前記中継装置と前記端末装置の間の通信品質の解析を行う解析部と、
を備えることを特徴とするパケット解析装置。
(付記2)
前記算出部は、有線回線から受信された前記パケットに基づいて、前記中継装置が無線回線への前記パケットの送出を開始してからから完了するまでにかかる前記遅延時間を算出する
ことを特徴とする付記1に記載のパケット解析装置。
(付記3)
前記受信部は、前記パケットに対する確認応答パケットを受信し、
前記算出部は、第1のパケットと第2のパケットの受信間隔と、前記第1のパケットに対する確認応答パケットと前記第2のパケットに対する確認応答パケットの受信間隔と、の差分を用いて、前記遅延時間を算出する
ことを特徴とする付記2に記載のパケット解析装置。
(付記4)
前記パケット解析装置は、さらに、
前記無線回線の通信速度情報を格納する格納部
を備え、
前記算出部は、前記無線回線の通信速度情報と、前記有線回線から受信された前記パケットのサイズに基づいて、前記遅延時間を算出する
ことを特徴とする付記2に記載のパケット解析装置。
(付記5)
パケット解析装置により実行されるパケット解析方法であって、
前記パケット解析装置が、
中継装置を経由して端末装置へ送信されるパケットを受信し、
受信した前記パケットに基づいて、前記中継装置が前記パケットの送出を開始してから完了するまでの時間を示す遅延時間を算出し、
前記パケットの受信間隔が前記遅延時間よりも長い場合、前記中継装置と前記端末装置の間の通信品質の解析を行う
ことを特徴とするパケット解析方法。
(付記6)
前記パケット解析装置が、
有線回線から受信された前記パケットに基づいて、前記中継装置が無線回線への前記パケットの送出を開始してから完了するまでにかかる前記遅延時間を算出する
ことを特徴とする付記5に記載のパケット解析方法。
(付記7)
前記パケット解析装置が、
前記パケットに対する確認応答パケットを受信し、
第1のパケットと第2のパケットの受信間隔と、前記第1のパケットに対する確認応答パケットと前記第2のパケットに対する確認応答パケットの受信間隔と、の差分を用いて、前記遅延時間を算出する
ことを特徴とする付記6に記載のパケット解析方法。
(付記8)
前記パケット解析装置が、
前記無線回線の通信速度情報を格納する格納部に格納された前記通信速度情報と、前記有線回線から受信された前記パケットのサイズに基づいて、前記遅延時間を算出する
ことを特徴とする付記6に記載のパケット解析方法。
(付記9)
コンピュータに、
中継装置を経由して端末装置へ送信されるパケットを受信し、
受信した前記パケットに基づいて、前記中継装置が前記パケットの送出を開始してから完了するまでの時間を示す遅延時間を算出し、
前記パケットの受信間隔が前記遅延時間よりも長い場合、前記中継装置と前記端末装置の間の通信品質の解析を行う
処理を実行させることを特徴とするパケット解析プログラム。
(付記10)
コンピュータに、
有線回線から受信された前記パケットに基づいて、前記中継装置が無線回線への前記パケットの送出を開始してから完了するまでにかかる前記遅延時間を算出する
処理を実行させることを特徴とする付記9に記載のパケット解析プログラム。
(付記11)
コンピュータに、
前記パケットに対する確認応答パケットを受信し、
第1のパケットと第2のパケットの受信間隔と、前記第1のパケットに対する確認応答パケットと前記第2のパケットに対する確認応答パケットの受信間隔と、の差分を用いて、前記遅延時間を算出する
処理を実行させることを特徴とする付記10に記載のパケット解析プログラム。
(付記12)
コンピュータに、
前記無線回線の通信速度情報を格納する格納部に格納された前記通信速度情報と、前記有線回線から受信された前記パケットのサイズに基づいて、前記遅延時間を算出する
処理を実行させることを特徴とする付記10に記載のパケット解析プログラム。
1 受信部
2 算出部
3 解析部
4 格納部
10 パケット解析装置
20 通信システム
21 有線端末
22 分岐装置
23 中継装置
24 無線端末
25 監視装置
30 通信プログラム
31 取得部
32 抽出部
33 分類部
34 記録部
35 算出部
36 比較部
37 判定部
81 送信元IPアドレス
82 送信元ポート番号
83 宛先IPアドレス
84 宛先ポート番号
85 シーケンス番号
86 確認応答番号
87 受信時刻
90 受信履歴情報
111 種別
112 再送周期
401 CPU
402 メモリ
403 記憶装置
404 読取装置
405 通信インターフェース
406 出力インターフェース
450 着脱可能記録媒体
451 出力装置
そして、算出部35は、S101で算出したデータパケットのサイズを、S102で取得した無線回線の通信速度で割り、その商をシリアル化遅延として算出する(S103)。
比較部36は、データ間隔がシリアル化遅延の値以上か否かを判定する。
具体的には先ず、比較部36は、監視装置25が受信したACKパケットのうち、所定の2つのACKパケットA、Bに着目する。比較部36が着目するパケットは、例えば、算出部35がデータパケットのサイズを算出する際に着目した2つのパケットとしてもよい。そして、比較部36は、ACKパケットA、Bにそれぞれ対応するデータパケットA、Bのデータ間隔を、記録部34が記録した受信履歴情報を用いて算出する。
判定部37は、先ず「ACK間隔」−「データ間隔」を算出する。具体的には、判定部37は、比較部36が着目したACKパケットA、Bに着目する。そして、ACKパケットA、Bの監視装置25での受信時刻を、受信履歴情報からそれぞれ取得する。図15の受信履歴情報90の例においては、判定部37は、ACKパケットA、Bの受信時刻として、それぞれ、レコード92、レコード94の受信時刻87の値である、「2013/1/1/10:00:00.020」、「2013/1/1/10:00:00.055」を取得する。
そして、算出部35は、S202で算出したRTTを所定の記憶領域に記録する(S203)。そして処理は終了する。
ここで、RTTは、監視装置25がデータパケットを送信してからACKを受信するまでの間の時間を指す。本実施形態における監視装置25と無線端末24の間のRTTは、「(監視装置25と無線端末24の間の伝送遅延×2)+(1パケットあたりのシリアル化遅延)」となる。よって、RTT1は、データパケット2つ分のRTTであるので、RTT1=(監視装置25と無線端末24間の伝送遅延×2)+(1パケットあたりのシリアル化遅延×2)」となる。

Claims (6)

  1. 中継装置を経由して端末装置へ送信されるパケットを受信する受信部と、
    受信した前記パケットに基づいて、前記中継装置が前記パケットの送出を開始してから完了するまでの時間を示す遅延時間を算出する算出部と、
    前記パケットの受信間隔が前記遅延時間よりも長い場合、前記パケットに基づいて、前記中継装置と前記端末装置の間の通信品質の解析を行う解析部と、
    を備えることを特徴とするパケット解析装置。
  2. 前記算出部は、有線回線から受信された前記パケットに基づいて、前記中継装置が無線回線への前記パケットの送出を開始してから完了するまでにかかる前記遅延時間を算出する
    ことを特徴とする請求項1に記載のパケット解析装置。
  3. 前記受信部は、前記パケットに対する確認応答パケットを受信し、
    前記算出部は、第1のパケットと第2のパケットの受信間隔と、前記第1のパケットに対する確認応答パケットと前記第2のパケットに対する確認応答パケットの受信間隔と、の差分を用いて、前記遅延時間を算出する
    ことを特徴とする請求項2に記載のパケット解析装置。
  4. 前記パケット解析装置は、さらに、
    前記無線回線の通信速度情報を格納する格納部
    を備え、
    前記算出部は、前記無線回線の通信速度情報と、前記有線回線から受信された前記パケットのサイズに基づいて、前記遅延時間を算出する
    ことを特徴とする請求項2に記載のパケット解析装置。
  5. パケット解析装置により実行されるパケット解析方法であって、
    前記パケット解析装置が、
    中継装置を経由して端末装置へ送信されるパケットを受信し、
    受信した前記パケットに基づいて、前記中継装置が前記パケットの送出を開始してから完了するまでの時間を示す遅延時間を算出し、
    前記パケットの受信間隔が前記遅延時間よりも長い場合、前記中継装置と前記端末装置の間の通信品質の解析を行う
    ことを特徴とするパケット解析方法。
  6. コンピュータに、
    中継装置を経由して端末装置へ送信されるパケットを受信し、
    受信した前記パケットに基づいて、前記中継装置が前記パケットの送出を開始してから完了するまでの時間を示す遅延時間を算出し、
    前記パケットの受信間隔が前記遅延時間よりも長い場合、前記中継装置と前記端末装置の間の通信品質の解析を行う
    処理を実行させることを特徴とするパケット解析プログラム。
JP2013150926A 2013-07-19 2013-07-19 パケット解析装置、パケット解析方法、及びパケット解析プログラム Ceased JP2015023463A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013150926A JP2015023463A (ja) 2013-07-19 2013-07-19 パケット解析装置、パケット解析方法、及びパケット解析プログラム
US14/328,038 US20150023189A1 (en) 2013-07-19 2014-07-10 Packet analysis device and packet analyzing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013150926A JP2015023463A (ja) 2013-07-19 2013-07-19 パケット解析装置、パケット解析方法、及びパケット解析プログラム

Publications (1)

Publication Number Publication Date
JP2015023463A true JP2015023463A (ja) 2015-02-02

Family

ID=52343504

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013150926A Ceased JP2015023463A (ja) 2013-07-19 2013-07-19 パケット解析装置、パケット解析方法、及びパケット解析プログラム

Country Status (2)

Country Link
US (1) US20150023189A1 (ja)
JP (1) JP2015023463A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019087800A (ja) * 2017-11-02 2019-06-06 富士通株式会社 パケット解析プログラム、パケット解析装置、及び、パケット解析方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5018663B2 (ja) * 2008-06-17 2012-09-05 富士通株式会社 遅延時間計測装置、遅延時間計測プログラム、および遅延時間計測方法
WO2015110620A1 (en) * 2014-01-27 2015-07-30 Koninklijke Kpn N.V. Reliable network probing session
JP7323782B2 (ja) * 2019-07-16 2023-08-09 富士通株式会社 パケット解析プログラム、パケット解析方法およびパケット解析装置
US11876790B2 (en) * 2020-01-21 2024-01-16 The Boeing Company Authenticating computing devices based on a dynamic port punching sequence

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024475B1 (en) * 2000-04-24 2006-04-04 Nortel Networks Limited Performance modeling of a communications system
JP2013038749A (ja) * 2011-08-11 2013-02-21 Kddi Corp 通信品質測定方法および装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5186355B2 (ja) * 2008-12-25 2013-04-17 株式会社Kddi研究所 通信特性測定装置及び無線端末

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024475B1 (en) * 2000-04-24 2006-04-04 Nortel Networks Limited Performance modeling of a communications system
JP2013038749A (ja) * 2011-08-11 2013-02-21 Kddi Corp 通信品質測定方法および装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
岡田純代、野村祐士: "リモートサイトでのTCPパッシブ計測による3G/LTE無線区間品質推定方式", 電子情報通信学会技術研究報告, vol. Vol.112、No.492, JPN6017005921, 7 March 2013 (2013-03-07), JP, pages 107〜112 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019087800A (ja) * 2017-11-02 2019-06-06 富士通株式会社 パケット解析プログラム、パケット解析装置、及び、パケット解析方法

Also Published As

Publication number Publication date
US20150023189A1 (en) 2015-01-22

Similar Documents

Publication Publication Date Title
US11611498B2 (en) Round-trip time evaluation system, method, and apparatus
US9282017B2 (en) Apparatus and method for analyzing a packet
US9344347B2 (en) Delay time measuring apparatus, computer readable record medium on which delay time measuring program is recorded, and delay time measuring method
CN106850337A (zh) 一种网络质量检测方法及装置
CN104754630B (zh) 一种网络质量评估方法、装置及处理平台
JP4924503B2 (ja) 輻輳検出方法、輻輳検出装置及び輻輳検出プログラム
CN101321092A (zh) 一种测量互联网协议传输网服务质量的方法和装置
JP2015023463A (ja) パケット解析装置、パケット解析方法、及びパケット解析プログラム
CN114584485B (zh) 检测边缘网络质量的方法、装置、设备和计算机可读存储介质
US9253669B2 (en) Network analysis method, information processing device, and computer-readable recording medium
JP6455135B2 (ja) パケット抽出装置、パケット抽出プログラムおよびパケット抽出方法
CN115002008B (zh) 一种网络时延测量的方法、装置、设备以及存储介质
CN115190070B (zh) 路由探测方法及装置
US10680756B2 (en) Packet classification apparatus, packet classification method and storage medium
US9749203B2 (en) Packet analysis apparatus and packet analysis method
JP5958355B2 (ja) 分析装置、分析方法及び分析プログラム
JP6355116B2 (ja) パケットロス検出のための方法、装置、およびシステム
CN104703198B (zh) 一种端到端网络服务时延的确定方法及装置
US20250039106A1 (en) Data processing method, apparatus, network device and storage medium
JP2014042091A (ja) パケット中継装置及びパケット中継方法
JP5990491B2 (ja) ネットワーク品質測定システム及び方法及びプログラム
US10880414B2 (en) Packet analysis method and information processing apparatus
JP5354684B2 (ja) ネットワーク品質計測システム
JP6459645B2 (ja) スループット計測プログラム、スループット計測方法及びスループット計測装置
JP2011249922A (ja) ネットワーク装置、tcpパケット受信装置及び方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160405

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170228

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20170413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170420

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170413

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170613

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20171031