JP5271247B2 - 通信品質データのモニタリング測定装置と方法およびプログラム - Google Patents

通信品質データのモニタリング測定装置と方法およびプログラム Download PDF

Info

Publication number
JP5271247B2
JP5271247B2 JP2009284083A JP2009284083A JP5271247B2 JP 5271247 B2 JP5271247 B2 JP 5271247B2 JP 2009284083 A JP2009284083 A JP 2009284083A JP 2009284083 A JP2009284083 A JP 2009284083A JP 5271247 B2 JP5271247 B2 JP 5271247B2
Authority
JP
Japan
Prior art keywords
packet
response packet
response
storage device
address
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.)
Active
Application number
JP2009284083A
Other languages
English (en)
Other versions
JP2011130000A (ja
Inventor
銀河 川口
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2009284083A priority Critical patent/JP5271247B2/ja
Publication of JP2011130000A publication Critical patent/JP2011130000A/ja
Application granted granted Critical
Publication of JP5271247B2 publication Critical patent/JP5271247B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、IP(Internet Protocol)通信などのパケット通信ネットワークにおける通信品質測定技術に係り、特に、通信パケットのキャプチャによる品質測定の効率化を図るのに好適な技術に関するものである。
現在では、IP電話による通信など、ネットワーク内全体で転送遅延が一定以下であることを求める品質基準(総務省電気通信事業者設備規則)などが登場してきている。これにより、簡易的にでも「ネットワーク内の遅延の全体像」を計測することが必要となっている。
ネットワーク上のパケット測定技術には、大きく分けて、自ら測定用パケットを送受信するアクティブ測定と、既存の通信を、ミラーポート等を経由してモニタ(キャプチャ)するパッシブ測定(モニタリング測定)の2種類がある。
また、パケット通信の品質指標は基本的な指標としては、「損失率」、「遅延」、「遅延ゆらぎ」の3点がある。
「遅延」の測定では一般にアクティブ測定技術が用いられる。例えば、意図したパケットの流れを生成して、そのパケット列の送信点で送り出した時刻と、受信側の時刻とを、両端で監視することにより、両者を照合して2点キャプチャ型の一方向遅延を測定する技術、あるいは、受信側で即時応答して送信側に戻ってきたパケットの時間と比較することによる応答時間(RTT:Round Trip Time)を測定する技術(ping応答によるRTT測定技術等)がある。
これらの技術のいずれにおいても、所定のノード間の遅延を測定するためには、測定目的通りのフローを生成させる必要があり、そのために、アクティブに意図通りのフローを生成する必要があるため、アクティブ測定技術が用いられる。
また、アクティブ測定技術においては、pingなどの特殊なアプリケーションでなく、インターネット等のIP通信において、通常利用される非特許文献1に記載のTCP(Transmission Control Protocol)通信[RFC793]の「SYN/ACK応答」を利用して、遅延応答時間を推定する技術も、例えば、非特許文献2等において開示されている。
TCPにてhost_Aからhost_Bに通信を行う場合、まず、TCPセッション開始時にhost_AからSYNパケットを送り、次に、host_BはSYNを受け取るとSYN+ACKパケットを返し、さらに、host_AがSYN+ACKに対しACKパケットを返すことにより成立する。
多くの場合、これらのSYN+ACK、ACK応答は基本的に即時に返るものであり、その応答に要する時間は即ちhost_Aとhost_B間でパケットが往復する時間であるとして、ネットワークの遅延を推定することができる。
尚、既存の実装の例としては、例えば、非特許文献3に記載のように、hpingというツール等を用いる。
このようなアクティブ測定技術に対して、パッシブ測定(モニタリング測定)は、コアルータ等で測定すれば通信網を大規模にモニタすることができるが、シーケンス番号を追い掛けることによる損失率のモニタリングや、通信網全体のフローサイズの分布等を測定するといった用途が主であり、ネットワークの遅延測定には不向きである。尚、このようなパッシブ測定(モニタリング測定)に用いるツールとしてxflow等がある。
しかし、既存の通信でping通信(ICMP echo requestパケットの送信、ICMP echo replyパケットによる応答のペア)があれば、これをパッシブにモニタすることにより、その通信ペアについての遅延推定は可能であるが、通常のIP網の通信においては、そのようなping通信はほとんど発生せず、実際には、ping通信を用いてパッシブに遅延推定を行うことは困難である。
以上のように、狙ったホスト間での遅延について計測する技術は、いくつか知られているが、ネットワーク全体にわたる通信の遅延を計るとなると、アクティブ計測では測定機器を極めて大量に配置しなければならず、また、他のネットワークへの測定用パケットを大量生成してネットワーク上に流すため、ネットワーク自体へ負荷をかけてしまうなど、問題点が多く、また、実際のネットワーク上ではping通信はほとんど発生せず、ping通信を用いてパッシブにネットワーク全体の遅延測定を行うことは困難である。
[RFC793]、[online]、[平成21年11月25日検索]、インターネット<URL :http://tools.ietf.org/html/rfc793>. Bryan Veal、Kang Li、David Lowenthal "New Methods for Passive Estimation of TCP Round-TripTimes",PAM2005,[online]、[平成21年11月25日検索]、インターネット<URL :http://www.cs.uga.edu/~kangli/src/pam05.pdf>. [HPING]、[online]、[平成21年11月25日検索]、インターネット<URL :http://www.hping.org>.
解決しようとする問題点は、従来の技術では、通信ネットワーク全体にわたる通信の遅延をアクティブ計測する場合には、測定機器を極めて大量に配置しなければならないと共に、他のネットワークへの測定用パケットを大量生成してネットワーク上に流すため、ネットワーク自体へ負荷をかけてしまうなど問題点が多く、また、ping通信を用いてパッシブにネットワーク全体の遅延計測を行うことは、実際のネットワーク上ではping通信はほとんど発生せず、困難である。
本発明の目的は、これら従来技術の課題を解決し、ネットワークに負荷をかけることなく、ネットワーク内の遅延の全体像を効率的に計測することを可能とすることである。
上記目的を達成するため、本発明では、通信ネットワーク上の一点における通信パケットのモニタリングを行い、例えば、TCPセッション確立の開始時のTCPヘッダ上のSYNフラグの立ったパケットを受信した際、その送信元および宛先(送信先)のアドレスとポート番号の組を受信時刻と共に取得して記憶装置に記憶し、また、逆方向にTCPセッション確立の応答(SYN+ACKフラグの立ったパケット)を選別して、その送信元および宛先(送信先)のアドレスとポートの組が記憶装置に記憶されたSYNフラグの立ったパケットと照合できた場合には、記憶装置に格納されたSYNパケットの受信時刻と、その応答であるSYN+ACKパケットの受信時刻との差を計算し、その差を宛先(送信先)IPアドレスまでの応答時間として収集・蓄積する。
本発明によれば、ネットワークに負荷をかけることなく、ネットワーク内の遅延の全体像を効率的に計測することができ、ネットワーク上の通信応答時間(RTT)分布の推定等に有効活用することが可能である。
本発明に係る通信品質データのモニタリング測定装置による動作概要を示す説明図である。 本発明に係る通信品質データのモニタリング測定装置による測定対象となるネットワーク構成例を示す説明図である。 本発明に係る通信品質データのモニタリング測定装置の構成例を示すブロック図である。 図1における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第1の処理動作例を示すフローチャートである。 図1における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第2の処理動作例を示すフローチャートである。 図1における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第3の処理動作例を示すフローチャートである。 図1における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第4の処理動作例を示すフローチャートである。
以下、図を用いて本発明を実施するための形態例を説明する。図3に示すRTT解析用装置31は、プログラムされたコンピュータ処理を実行することにより、本発明の通信品質データのモニタリング測定装置として機能する。
すなわち、RTT解析用装置31は、CPUと記憶装置を具備してプログラムされたコンピュータ処理を実行して、通信ネットワーク上の通信品質データをモニタリング測定する際、まず、予め定められた測定点での任意のセッション確立用のパケットの受信時刻T_0を取得し、次に、同測定点での当該パケットに対する応答パケット(第1の応答パケット)の受信時刻T_1を取得し、さらに、同測定点での第1の応答パケットに対する応答パケット(第2の応答パケット)の受信時刻T_2を取得し、そして、受信時刻T_1から受信時刻T_0を減算して第1の応答パケットの発信元との遅延応答時間を算出し、また、受信時刻T_2から受信時刻T_1を減算してセッション確立用パケットおよび第2の応答パケットの発信元との遅延応答時間を算出する。この任意のパケットに対する処理を予め定められた期間、繰り返して、各パケットの送信元・送信先との遅延応答時間を求め、その結果から、図2におけるIPネットワーク21の通信品質の推定を行うことができる。
以下、TCP/IPを例に、図3を用いて、より具体的に説明する。RTT解析用装置31は、プログラムされたコンピュータ処理を実行する手段として、パケット処理部31a、SYNパケットデータベース31b、SYNACKパケットデータベース31c、RTT照会結果記録データベース31dを具備している。尚、各データベースが利用するHDD(Hard Disk Driver)等の外部記憶装置は個別に設けても良いし、1つを共用する構成としても良い。
このような構成からなるRTT解析用装置31は、図2においてRTT分析用のワークステーション(RTT解析用装置)25として示すように、測定対象のIPネットワーク21において、ルータ23a〜23c経由で、ホスト22a〜22f間で送受信されるパケットを、ルータB23bのミラーポート24を介して取得する。
現在では、IP電話による通信など、IPネットワーク21内全体で転送遅延が一定以下であることを求める品質基準(総務省電気通信事業者設備規則)などが登場してきている。これにより簡易的にでも「ネットワーク内の遅延の全体像」を計測することが必要となっている。
IPネットワーク21に負荷をかけずに、ネットワーク全体の特性を把握するには、上述したように「パッシブ測定(モニタリング測定)」技術を活用するのが適切である。
そこで、本例では、図2に示すように、IPネットワーク21上のある一点に測定点として設けたルータ23bで送受信される任意のパケットを、RTT解析用装置25(図3のRTT解析用装置31)においてキャプチャし、通信品質データとしてのRTTを測定する。
すなわち、RTT解析用装置31は、CPUと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、IPネットワーク21上の通信品質データをパッシブ測定(モニタリング測定)する装置であって、プログラムされたコンピュータ処理を実行する手段として、パケット処理部31aを具備し、パケット処理部31aにおいて、予め定められた測定点(図1における測定点1で、図2におけるルータ23b)での例えば任意のSYNパケットの受信時刻T_synを取得し、SYNパケットデータベース31bにおいて格納すると共に、同測定点での当該SYNパケットに対応するSYN+ACKパケットの受信時刻T_synackを取得してSYNACKパケットデータベース31cにおいて格納し、さらに、同測定点での当該SYN+ACKパケットに対応するACKパケットの受信時刻T_ackを取得する。
そして、受信時刻T_synackから受信時刻T_synを減算して、SYN+ACKパケットの発信元との遅延応答時間を算出すると共に、受信時刻T_ackから受信時刻T_synackを減算して、SYNパケットおよびACKパケットの発信元との遅延応答時間を算出して、RTT照合結果記録データベース31dにおいて格納する。この処理を予め定められた期間、繰り返して、各送信元・送信先との遅延応答時間を求め、その結果から、図2におけるIPネットワーク21の通信品質の推定を行うことができる。
このように、通信しているパケット列をキャプチャするパッシブ測定(モニタリング測定)を行い、その各通信のRTTを推定する技術と組み合わせて蓄積することにより、IPネットワーク21内の通信の遅延の分布等を把握することが可能となる。
以下、このような処理をより具体的に説明する。
手順としては、図1に示すように、TCPにてホストA2(host_A)からホストB1(host_B)に通信を行う場合を考える。
まず、測定点1において任意にキャプチャしたパケット列を入力データとして入力し、キャプチャしたパケットが、TCPセッション開始のSYNパケット(SYNフラグ1、ACKフラグ0)であれば、(送信元IPアドレス(src_IP==host_B)、送信先IPアドレス(dst_IP==host_A)、送信元TCPポート番号(src_port)、送信元TCPポート番号(dst_port))の組み合わせ(これにプロトコル種別(TCP)を付加したものは、5-tupleとして知られている組み合わせである)を検索キーとして、(TCPシーケンス番号、パケット到着時間)をセッションデータベース(SYNパケットデータベース31b)に登録していく。
次に、別のパケットでTCPセッション開始応答のSYN+ACKパケット(SYNフラグ1、ACKフラグ1)を受信すれば、(送信先IPアドレス(dst_IP)、送信元IPアドレス(src_IP)、送信元TCPポート番号(dst_port)、送信元TCPポート番号(src_port))をキーとして、セッションデータベース(SYNパケットデータベース31b)を検索し、記録されたレコードがあれば、TCPシーケンスが対応するか(SYNパケットのTCPシーケンス番号に+1加算した値であるかどうか)を確認し、対応していなければそのデータを破棄し、対応していれば、データベース(SYNパケットデータベース31b)中に記録されていたSYNパケットの到着時刻をSYN+ACKパケットの到着時刻から差し引くことで、SYNパケットの送信先IPアドレス(=SYN+ACKパケットの送信元アドレス)までの応答時間を計算する。
また、上述の処理と同様の処理を、任意のSYNパケット&SYN+ACKパケットの組み合わせに対してではなく、任意のSYN+ACKパケットとACKパケットの組み合わせに対して行うことにより、SYNパケットの送信元IPアドレスに対しての応答時間を計算する。
ここで、図1におけるt_2〜t_3およびt_4〜t_5は、ホスト応答処理時間であり、ネットワークの遅延時間ではないが、一般的には無視できる程度に小さいため、ここでは無視する。尚、この影響が無視できない場合には、ネットワークの遅延時間ではなく、「ホスト+ネットワークの応答時間」の測定と解釈する。
これらの応答時間を監視し、収集・記録することにより、IPネットワーク21内の各IPアドレスまでの応答時間をまとめることが可能となる。
尚、対象のIPアドレスを「自ネットワーク内のIPアドレス」で絞り込めば「自ネットワーク内の遅延品質把握」が低コストに実現可能になる。
次に、図2のような状況を考える。パッシブ測定(モニタリング測定)の対象となるIPネットワーク21内の特定のルータ23bについてミラーポート24等の設定を行い、IPネットワーク21内を流れているトラヒックをキャプチャできるようにする。尚、このような技術は、従来の一般的な技術を用いて行う。
キャプチャする装置が、RTT分析用のワークステーション、すなわち、RTT解析用装置25であり、本発明に係る通信品質データのモニタリング測定装置である。
ミラーポート24には、RTT解析用装置25のパケットキャプチャポートを接続する。RTT解析用装置25には、検索用に、図3に示すSYNパケットデータベース31bとSYNACKパケットデータベース31cの2つのデータベースを用意しておく。これらは後述する処理フローにおいて、応答パケットの照合を行うために、過去のパケットデータを記録しておくのに使われる。
実際の処理については、RTT解析用装置25,31では、任意のパケット列を取得し、その取得パケットデータを用いて、パケット処理部31aにおいて、図4〜図7に示すフローに従った処理を実行する。尚、任意のパケット列の取得処理は、例えば、インターネットでURL「http://www.tcpdump.org」において検索できる[tcp/libcap]におけるtcpdumpやlibpcapにより可能である。
図4に示すように、まず、パケットが入力されると(ステップS401)、入力されたパケットの送信元IPアドレスsrc_IPもしくは送信先IPアドレスdst_IPが測定対象範囲に含まれているか否かを判別する(ステップS402)。
含まれていれば、TCPプロトコルであり、かつSYNフラグおよび・もしくは(and/or)ACKフラグが立っているか否かを判別する(ステップS403)。
フラグが立っていれば、(SYNフラグ、ACKフラグ)が(1、0)であるか(Yes)否か(No)を判別する(ステップS404)。
Yesであれば、入力されたパケットはSYNパケットであるので、当該パケットの(送信元IPアドレス(src_IP)、送信先IPアドレス(dst_IP)、送信元TCPポート番号(src_port)、送信元TCPポート番号(dst_port))の4種のデータ組を「検索キー」(SYN_KEY)とし、当該パケットのTCPシーケンス番号(Seq_syn)、到着時刻(T_syn))の2種のデータを「登録データ」としてSYNパケットデータベース31b(SYN・DB)に登録して次のパケットの入力を待つ(ステップS405)。
ステップS404における判別でNoであれば、(SYNフラグ、ACKフラグ)が(1、1)であるか(Yes)否か(No)を判別し(ステップS406)、Yesであれば、入力されたパケットはSYN+ACKパケットであるので、当該パケットの(送信先IPアドレス(dst_IP)、送信元IPアドレス(src_IP)、送信元TCPポート番号(dst_port)、送信元TCPポート番号(src_port))を検索キー(SYNACK_KEY)として、このSYNACK_KEYでSYNパケットデータベース31b(SYN・DB)を検索する(ステップS407)。
その後の処理としての逆向きのパケットについて図5を用いて説明する。
ステップS407の検索で、検索結果がなければ(ステップS408)、処理は行わないが、検索結果が有れば(ステップS408)、SYNパケットデータベース31b(SYN・DB)から、当該SYNパケットのTCPシーケンス番号Seq_syn(=NS1)と、SYNパケットの到着時刻T_syn(=TS1)を取り出し、これを、現在処理中のSYN+ACK応答パケットのTCPシーケンス番号Seq_synack(=NS2)と到着時刻T_synack(=TS2)と比較する(ステップS409)。
正しいSYN+ACK応答パケットは、TCPシーケンス番号として、SYNパケットのTCPシーケンス番号に+1加算した値であるので、もし、「Seq_synack!=(Seq_syn+1)」、すなわち、現在処理中のSYN+ACK応答パケットのTCPシーケンス番号Seq_synack(=NS2)が、SYNパケットのTCPシーケンス番号(=NS1)に+1加算した値と異なる場合は(ステップS410)、シーケンス番号が間違っているため、計測データとして不適切なので処理はしない。
これに対して、Seq_synack!=(Seq_syn+1)でなければ(ステップS410)、この場合、シーケンス番号が対応している場合に該当するので、SYNパケットデータベース31b(SYN・DB)中に記録されていたSYNパケットの到着時刻T_syn(=TS1)をSYN+ACKパケットの到着時刻T_synack(=TS2)から差し引く(TS2−TS1)ことで、SYNパケットの送信先IPアドレスdst_IP(すなわち、SYN+ACKパケットの送信元アドレスsrc_IP)までの応答時間を計算する(ステップS411)。すなわち、送信先IPアドレス(SYN+ACKパケットのsrc_IP)までの応答時間(RTT_dst)を「(RTT_dst)=(T_synack−T_syn)」により算出する。
その後、SYNパケットデータベース31b(SYN・DB)から、検索キー(SYNACK_KEY)と検索結果を共に削除して(ステップS412)、SYN+ACKパケットの送信元アドレスsrc_IPと算出した応答時間RTT_dstを、RTT照合結果記録データベース31d(RTT・DB)に出力する(ステップS413)。
そして、当該キーSYNACK_KEYを検索キー、当該SYN+ACKパケットのTCPシーケンス番号Seq_synackと到着時刻T_synackを登録データとして、SYNACKパケットデータベース31c(SYNACK・DB)に登録する(ステップS414)。
また、図4のステップS406の判別処理の結果がNoであれば、図6に示すように、(SYNフラグ、ACKフラグ)が(0、1)であるか(Yes)否か(No)、すなわち、入力されたパケットが、ACKパケットであるか否かを判別する(ステップS415)。
ここまでの処理で、全条件を網羅したので「No」はなく「Yes」であり、入力されたパケットは「ACKパケット」であるので、当該パケットの送信先IPアドレス(dst_IP)、送信元IPアドレス(src_IP)、送信先TCPポート番号(dst_port)、送信元TCPポート番号(src_port))をキー(ACK_KEY)として、SYNACKパケットデータベース31c(SYNACK・DB)を検索する(ステップS416)。
検索がヒットすれば(ステップS417)、SYNACKパケットデータベース31c(SYNACK・DB)から、検索したSYN+ACKパケットのTCPシーケンス番号Seq_synack(=NA1)と到着時刻T_synack(=TA1)を読み出し、現在処理中のパケット(ACKパケット)のTCPシーケンス番号Seq_ack(=NA2)と到着時刻T_ack(=TA2)と比較する(ステップS418)。
ステップS410の処理と同様に、正しいACK応答パケットは、TCPシーケンス番号として、SYN+ACKパケットのTCPシーケンス番号に+1加算した値であるので、もし、「Seq_ack!=(Seq_synack+1)」、すなわち、現在処理中のACK応答パケットのTCPシーケンス番号Seq_synack(=NA2)が、SYN+ACKパケットのTCPシーケンス番号(=NA1)に+1加算した値と異なる場合は(ステップS419)、シーケンス番号が間違っているため、計測データとして不適切なので処理はしない。
これに対して、Seq_ack!=(Seq_synack+1)でなければ(ステップS419)、この場合、シーケンス番号が対応している場合に該当するので、SYNACKパケットデータベース31c(SYNACK・DB)から、検索したSYN+ACKパケットの到着時刻T_synack(=TA1)を,現在処理中のパケット(ACKパケット)の到着時刻T_ack(=TA2)から差し引く(TA2−TA1)ことで、ACKパケットの送信元IPアドレスsrc_IPであり、大元のSYNパケットの送信元アドレスsrc_IPまでの応答時間を計算する(ステップS420)。すなわち、送信先IPアドレス(SYNパケット=ACKパケットのsrc_IP)までの応答時間(RTT_src)を「(RTT_src)=(T_ack−T_synack)」により算出する。
その後、SYNACKパケットデータベース31c(SYNACK・DB)から、検索キー(ACK_KEY)と検索結果を共に削除して(ステップS421)、ACKパケットの送信元アドレスsrc_IPと算出した応答時間RTT_srcを、RTT照合結果記録データベース31d(RTT・DB)に出力する(ステップS422)。
尚、図4のステップS401の処理においてNoであり、パケットが入力されるまでの間、図7に示す処理を行う。この図7における処理は、未照合データの蓄積による検索データベースの肥大化を防ぐためのものでる。
すなわち、パケット処理部31aは、一定回数(例えば10000処理)毎に(ステップS423)、SYNパケットデータベース31b(SYN・DB)およびSYNACKパケットデータベース31c(SYNACK・DB)から、古いデータ(登録データの到着時刻T_syn、T_synackが最新の処理パケットのタイムスタンプよりも一定時間以上(たとえば6秒)経過したデータ)を削除する処理を行う(ステップS424)。このように、往復6秒の応答時間は大きすぎて意味を持たないので、削除することでデータベースの肥大化を防止する。
以上の処理を各入力パケットに対し繰り返すことで、ステップS413とステップS421の処理で、IPアドレスと応答時間の組を出力し、それをRTT照合結果記録データベース31dに蓄積することにより、現在行われている通信の各IPアドレスまでの応答時間(RTT)を集計することが可能となる。
以上、図1〜図7を用いて説明したように、本例の通信品質データのパッシブ測定(モニタリング測定)するRTT解析用装置25,31は、CPUと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、IPネットワーク21上の通信品質データをパッシブ測定(モニタリング測定)するものであり、プログラムされたコンピュータ処理を実行する手段として、パケット処理部31aを具備し、パケット処理部31aにおいて、予め定められた測定点1での任意のSYNパケットの受信時刻T_synを取得すると共に、測定点1での当該SYNパケットに対応するSYN+ACKパケットの受信時刻T_synackを取得し、さらに、測定点1での当該SYN+ACKパケットに対応するACKパケットの受信時刻T_ackを取得する。
そして、受信時刻T_synackから受信時刻T_synを減算して、SYN+ACKパケットの発信元との遅延応答時間を算出すると共に、受信時刻T_ackから受信時刻T_synackを減算して、SYNパケットおよびACKパケットの発信元との遅延応答時間を算出する。
より詳細には、パケット処理部31aにおいて、受信したSYNフラグの立った任意のパケットの送信元IPアドレスsrc_IPとTCPポート番号src_portおよび送信先IPアドレスdst_IPとTCPポート番号dst_portの4つのデータからなる組を受信時刻T_synと共に取得してSYNパケットデータベース31bに格納し、受信した任意のSYN+ACKフラグの立ったパケットの送信元IPアドレスsrc_IPとTCPポート番号src_portおよび送信先IPアドレスdst_IPとTCPポート番号dst_portの4つのデータからなる組を受信時刻T_synackと共に取得してSYNACKパケットデータベース31cに格納する。
そして、受信したSYN+ACKフラグの立ったパケットの送信元IPアドレスsrc_IPとTCPポート番号src_portおよび送信先IPアドレスdst_IPとTCPポート番号dst_portの4つのデータからなる組をキーにSYNパケットデータベース31bを検索して、同じ組のSYNフラグの立ったパケットを特定し、特定したSYNフラグの立ったパケットの受信時刻T_synとSYN+ACKフラグの立ったパケットの受信時刻T_synackとの差を、SYN+ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する。
さらに、受信したACKフラグの立った任意のパケットの送信元IPアドレスsrc_IPとTCPポート番号src_portおよび送信先IPアドレスdst_IPとTCPポート番号dst_portの組をキーにSYNACKパケットデータベース31cを検索して、同じ組のSYN+ACKフラグの立ったパケットを特定し、特定したSYN+ACKフラグの立ったパケットの受信時刻T_synackとACKフラグの立ったパケットの受信時刻T_ackとの差を、ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する。
このような処理を予め定められた期間、任意の組のSYNパケット、SYN+ACKパケット、ACKパケットに対して繰り返し、各パケットの送信元・送信先との遅延応答時間を求め、その結果から、図2におけるIPネットワーク21の通信品質の推定を行うことができる。
このことにより、従来の技術の問題点、すなわち、従来の技術では、通信ネットワーク全体にわたる通信の遅延をアクティブ計測する場合には、測定機器を極めて大量に配置しなければならないと共に、他のネットワークへの測定用パケットを大量生成してネットワーク上に流すため、ネットワーク自体へ負荷をかけてしまうとの問題点、および、ping通信を用いてパッシブにネットワーク全体の遅延計測を行うことは、実際のネットワーク上ではping通信はほとんど発生せず、困難であるとの問題点を解決し、ネットワークに負荷をかけることなく、ネットワーク内の遅延の全体像を効率的に計測することができ、ネットワーク上の通信応答時間(RTT)分布の推定等に有効活用することが可能となる。
尚、本発明は、図1〜図6を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、TCP/IPにおけるSYNパケットとSYN+ACKパケットおよびACKパケットのそれぞれの同じ測定点における受信時刻を測定して、各パケットの発信元と発信元の遅延応答時間を算出するものとしているが、これに限るものではなく、セッション確立のためのパケットの送受信を行うパケット網において適用可能である。
また、図3に示すRTT解析用装置31においては、SYNパケットデータベース31b、SYNACKパケットデータベース31c、RTT照合結果記録データベース31dのそれぞれは、個別の記憶装置を用いる構成としても良いし、それぞれで1つの記憶装置を共有する構成としても良い。
また、図2に示す例では、ルータ23bでキャプチャしたデータのみを用いる構成としているが、例えば、ルータ23bと共に、ルータ23aとルータ23cのいずれかもしくは両方でキャプチャしたデータもそれぞれ個別に分けて管理して用いる構成等としても良い。
また、図2においては、RTT解析用装置としてワークステーションを用いる構成としているが、十分な処理性能のコンピュータ装置を用いる構成であれば良い。
また、本例のコンピュータ構成に関しても、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、FD(Flexible Disk)等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
1:測定点、2:ホストA(client等)、3:ホストB(Server等)、21:IPネットワーク、22a〜22f:ホスト、23a〜23c:ルータ、24:ミラーポート、25:RTT分析用のワークステーション(RTT解析用装置)、31:RTT解析用装置、31a:パケット処理部、31b:SYNパケットデータベース、31c:SYNACKパケットデータベース、31d:RTT照合結果記録データベース、32:パケットキャプチャポート。

Claims (7)

  1. CPUと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定装置であって、
    プログラムされたコンピュータ処理を実行する手段として、パケット処理手段を具備し、
    該パケット処理手段は、
    予め定められた測定点での任意のセッション確立用のパケットを受信するたびに、該受信したセッション確立用のパケットを特定するシーケンス番号を含む識別情報と受信時刻T_0を取得し対応付けて第1の記憶装置に記憶する第1の機能と、
    上記測定点で第1の応答パケットを受信するたびに、該受信した第1の応答パケットの前記識別情報及び上記第1の記憶装置に記憶されている前記識別情報に基づいて、該受信した第1の応答パケットが、上記第1の記憶装置に記憶されている上記セッション確立用のパケットに対する第1の応答パケットであると判別した場合、該第1の応答パケットの受信時刻T_1を取得し、該受信時刻T_1から上記第1の記憶装置に記憶されている当該セッション確立用の受信時刻T_0を減算して、上記セッション確立用のパケットの発信元と上記第1の応答パケットの発信元との遅延応答時間を算出し、該第1の応答パケットの前記識別情報と受信時刻T_1とに対応付けて第2の記憶装置に記憶する第の機能と、
    上記測定点で第2の応答パケットを受信するたびに、該受信した第2の応答パケットの前記識別情報及び上記第2の記憶装置に記憶されている前記識別情報に基づいて、該受信した第2の応答パケットが、上記第2の記憶装置に記憶されている上記第1の応答パケットに対する第2の応答パケットであると判別した場合、該第2の応答パケットの受信時刻T_2から上記第2の記憶装置に記憶されている当該第1の応答パケットの受信時刻T_1を減算して、上記第1の応答パケットの発信元と上記第2の応答パケットの発信元との遅延応答時間を算出して第3の記憶装置に記憶する第の機能と
    上記測定点でのパケットの受信回数が予め定められた回数に達するたびに、上記第1の記憶装置および上記第2の記憶装置に予め定められた時間経過して記憶された上記セッション確立用のパケットの前記識別情報と受信時刻T_0および上記第1の応答パケットの前記識別情報と受信時刻T_1とを削除する第4の機能と、
    を有することを特徴とする通信品質データのモニタリング測定装置。
  2. 上記セッション確立用のパケットはSYNパケットであり、上記第1の応答パケットはSYN+ACKパケットであり、上記第2の応答パケットはACKパケットであ
    ことを特徴とする請求項1記載の通信品質データのモニタリング測定装置。
  3. 上記セッション確立用のパケットはSYNフラグの立ったパケットであり、上記第1の応答パケットはSYN+ACKフラグの立ったパケットであり、上記第2の応答パケットはACKフラグの立ったパケットであり、
    上記セッション確立用のパケットを特定する識別情報は、当該パケットの送信元IPアドレスとTCPポート番号送信先IPアドレスとTCPポート番号、および、TCPシーケンス番号からなり、
    上記第1の応答パケットを特定する識別情報は、当該パケットの送信元IPアドレスとTCPポート番号送信先IPアドレスとTCPポート番号、および、TCPシーケンス番号からなり、
    上記第2の応答パケットを特定する識別情報は、当該パケットの送信元IPアドレスとTCPポート番号送信先IPアドレスとTCPポート番号、および、TCPシーケンス番号からなり、
    上記第2の機能は、上記受信した第1の応答パケットの送信元IPアドレスとTCPポート番号および送信先IPアドレスとTCPポート番号の組をキーに上記第1の記憶装置を検索して、同じ組の上記セッション確立用のパケットを特定し、上記受信した第1の応答パケットのシーケンス番号が上記特定したセッション確立用のパケットのシーケンス番号に1加算した値であれば、該受信した第1の応答パケットが上記セッション確立用のパケットに対する第1の応答パケットであると判別し、
    上記第3の機能は、上記受信した第2のパケットの送信元IPアドレスとTCPポート番号および送信先IPアドレスとTCPポート番号の組をキーに上記第2の記憶装置を検索して、同じ組の上記第1の応答パケットを特定し、上記受信した第2の応答パケットのシーケンス番号が上記特定した第1の応答パケットのシーケンス番号に1加算した値であれば、該受信した第2の応答パケットが上記第1の応答パケットに対する第2の応答パケットであると判別する
    ことを特徴とする請求項1記載の通信品質データのモニタリング測定装置。
  4. CPUと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置により、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定方法であって、
    上記コンピュータ装置は、プログラムされたコンピュータ処理を実行する手段として、パケット処理手段を具備し、
    該パケット処理手段は、
    予め定められた測定点での任意のセッション確立用のパケットを受信するたびに、当該セッション確立用のパケットを特定するシーケンス番号を含む識別情報と受信時刻T_0を取得し対応付けて第1の記憶装置に記憶する第1の手順と、
    上記測定点で第1の応答パケットを受信するたびに、該受信した第1の応答パケットの前記識別情報及び上記第1の記憶装置に記憶されている前記識別情報に基づいて、該受信した第1の応答パケットが、上記第1の記憶装置に記憶されている上記セッション確立用のパケットに対する第1の応答パケットであると判別した場合、該第1の応答パケットの受信時刻T_1を取得し、該受信時刻T_1から上記第1の記憶装置に記憶されている当該セッション確立用の受信時刻T_0を減算して、上記セッション確立用のパケットの発信元と上記第1の応答パケットの発信元との遅延応答時間を算出し、該第1の応答パケットの前記識別情報と受信時刻T_1とに対応付けて第2の記憶装置に記憶する第の手順と、
    上記測定点で第2の応答パケットを受信するたびに、該受信した第2の応答パケットの前記識別情報及び上記第2の記憶装置に記憶されている前記識別情報に基づいて、該受信した第2の応答パケットが、上記第2の記憶装置に記憶されている上記第1の応答パケットに対する第2の応答パケットであると判別した場合、該第2の応答パケットの受信時刻T_2から上記第2の記憶装置に記憶されている当該第1の応答パケットの受信時刻T_1を減算して、上記第1の応答パケットの発信元と上記第2の応答パケットの発信元との遅延応答時間を算出して第3の記憶装置に記憶する第の手順と
    上記測定点でのパケットの受信回数が予め定められた回数に達するたびに、上記第1の記憶装置および上記第2の記憶装置に予め定められた時間経過して記憶された上記セッション確立用のパケットの識別情報と受信時刻T_0および上記第1の応答パケットの識別情報と受信時刻T_1とを削除する第4の手順と、
    を実行することを特徴とする通信品質データのモニタリング測定方法。
  5. 上記セッション確立用のパケットはSYNパケットであり、上記第1の応答パケットはSYN+ACKパケットであり、上記第2の応答パケットはACKパケットであ
    ことを特徴とする請求項4記載の通信品質データのモニタリング測定方法。
  6. 上記セッション確立用のパケットはSYNフラグの立ったパケットであり、上記第1の応答パケットはSYN+ACKフラグの立ったパケットであり、上記第2の応答パケットはACKフラグの立ったパケットであり、
    上記セッション確立用のパケットを特定する識別情報は、当該パケットの送信元IPアドレスとTCPポート番号送信先IPアドレスとTCPポート番号、および、TCPシーケンス番号からなり、
    上記第1の応答パケットを特定する識別情報は、当該パケットの送信元IPアドレスとTCPポート番号送信先IPアドレスとTCPポート番号、および、TCPシーケンス番号からなり、
    上記第2の応答パケットを特定する識別情報は、当該パケットの送信元IPアドレスとTCPポート番号送信先IPアドレスとTCPポート番号、および、TCPシーケンス番号からなり、
    上記第2の手順では、上記受信した第1の応答パケットの送信元IPアドレスとTCPポート番号および送信先IPアドレスとTCPポート番号の組をキーに上記第1の記憶装置を検索して、同じ組の上記セッション確立用のパケットを特定し、上記第1の応答パケットのシーケンス番号が上記特定したセッション確立用のパケットのシーケンス番号に1加算した値であれば、該第1の応答パケットが上記セッション確立用のパケットに対する第1の応答パケットであると判別し、
    上記第3の手順では、上記受信した第2のパケットの送信元IPアドレスとTCPポート番号および送信先IPアドレスとTCPポート番号の組をキーに上記第2の記憶装置を検索して、同じ組の上記第1の応答パケットを特定し、上記第2の応答パケットのシーケンス番号が上記特定した第1の応答パケットのシーケンス番号に1加算した値であれば、該第2の応答パケットが上記第1の応答パケットに対する第2の応答パケットであると判別する
    ことを特徴とする請求項4記載の通信品質データのモニタリング測定方法。
  7. コンピュータに、請求項から請求項のいずれかに記載の通信品質データのモニタリング測定方法におけるパケット処理手段による各手順を実行させるためのプログラム。
JP2009284083A 2009-12-15 2009-12-15 通信品質データのモニタリング測定装置と方法およびプログラム Active JP5271247B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009284083A JP5271247B2 (ja) 2009-12-15 2009-12-15 通信品質データのモニタリング測定装置と方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009284083A JP5271247B2 (ja) 2009-12-15 2009-12-15 通信品質データのモニタリング測定装置と方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2011130000A JP2011130000A (ja) 2011-06-30
JP5271247B2 true JP5271247B2 (ja) 2013-08-21

Family

ID=44292148

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009284083A Active JP5271247B2 (ja) 2009-12-15 2009-12-15 通信品質データのモニタリング測定装置と方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5271247B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11178107B2 (en) * 2019-09-30 2021-11-16 Michael Schloss System and method for detecting surreptitious packet rerouting

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101272670B1 (ko) * 2011-11-28 2013-06-10 엔에이치엔(주) 사용자 단말의 접속 네트워크 식별 장치, 방법 및 컴퓨터 판독 가능한 기록 매체
JP5966382B2 (ja) 2012-01-26 2016-08-10 富士通株式会社 伝送装置および遅延測定方法
JP5991908B2 (ja) * 2012-12-11 2016-09-14 東日本電信電話株式会社 ログ生成装置
JP5990491B2 (ja) * 2013-05-23 2016-09-14 日本電信電話株式会社 ネットワーク品質測定システム及び方法及びプログラム
JP6412529B2 (ja) * 2016-07-26 2018-10-24 株式会社ソニー・インタラクティブエンタテインメント 送信制御装置、送信制御方法及び送信制御プログラム
KR102354699B1 (ko) * 2017-10-31 2022-01-24 삼성전자주식회사 네트워크 연결 제어 장치 및 그 방법
US20230140715A1 (en) * 2020-03-27 2023-05-04 Nippon Telegraph And Telephone Corporation Optical transmission device, optical communication system, and optical communication method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003258881A (ja) * 2002-02-28 2003-09-12 Nippon Telegr & Teleph Corp <Ntt> アダプティブ品質制御方式
JP2009199556A (ja) * 2008-02-25 2009-09-03 Nec Corp 通信監視装置、通信監視方法、コンピュータプログラム、そのシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11178107B2 (en) * 2019-09-30 2021-11-16 Michael Schloss System and method for detecting surreptitious packet rerouting

Also Published As

Publication number Publication date
JP2011130000A (ja) 2011-06-30

Similar Documents

Publication Publication Date Title
JP5271247B2 (ja) 通信品質データのモニタリング測定装置と方法およびプログラム
US20090180393A1 (en) Sampling apparatus distinguishing a failure in a network even by using a single sampling and a method therefor
Bauer et al. Measuring the state of ECN readiness in servers, clients, and routers
US9634851B2 (en) System, method, and computer readable medium for measuring network latency from flow records
WO2006050147A2 (en) Remote estimation of round-trip delays in a data network
JP2009303089A (ja) 遅延時間計測装置、遅延時間計測プログラム、および遅延時間計測方法
JP2006304288A (ja) 測定データを共有する方法、測定データを共有するためのシステム、及びネットワークノード装置
CN111327478A (zh) 网络测量方法和装置、设备及存储介质
JP2008283621A (ja) ネットワーク輻輳状況監視装置、ネットワーク輻輳状況監視方法及びプログラム
US8593974B2 (en) Communication conditions determination method, communication conditions determination system, and determination apparatus
US10680922B2 (en) Communication control apparatus and communication control method
JP5479793B2 (ja) 片道変動遅延時間の推定方法及びその装置
Moura et al. Old but gold: prospecting TCP to engineer and live monitor DNS anycast
JP4254555B2 (ja) ネットワーク品質の一点観測型測定方法及び装置
US10277498B2 (en) Analysis of network performance
JP5199224B2 (ja) フロー通信品質推定方法と装置およびプログラム
Baillargeon et al. Ericsson two-way active measurement protocol (twamp) value-added octets
JP2011244312A (ja) ノード装置、最適パス決定方法及びプログラム
JP2011198033A (ja) P2p配信システムならびにそのピアノード間のネットワーク距離算出方法およびシステム
JP2013243534A (ja) 遅延時間評価装置および遅延時間評価方法
JP2010268368A (ja) ネットワークにおけるサーバ選択方法,選択システム及びプログラム
Hendriks Improving anycast census at scale
JP7472989B2 (ja) 遅延測定器、遅延測定方法、および、遅延測定プログラム
JP4277067B2 (ja) ネットワーク計測情報収集方法、サーバ装置及びノード装置
JP2013251648A (ja) フロー通信品質劣化検出装置及び方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110608

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110608

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110616

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110704

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110719

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120220

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120608

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120629

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130115

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130315

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130510

R150 Certificate of patent or registration of utility model

Ref document number: 5271247

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350