(57)【要約】      （修正有）【課題】ネットワークに負荷をかけることなく、ネットワーク内の遅延の全体像を効率的に計測する。【解決手段】ＲＴＴ解析用装置３１はパケット処理部３１ａにおいて、測定点でのＳＹＮパケットの受信時刻T_synを取得してＳＹＮパケットデータベース３１ｂに格納し、同測定点でのＳＹＮパケットに対応するＳＹＮ＋ＡＣＫパケットの受信時刻T_synackを取得してＳＹＮＡＣＫパケットデータベース３１ｃに格納し、同測定点でのＳＹＮ＋ＡＣＫパケットに対応するＡＣＫパケットの受信時刻T_ackを取得し、受信時刻T_synack−受信時刻T_synによりＳＹＮ＋ＡＣＫパケットの発信元との遅延応答時間を算出し、受信時刻T_ack−受信時刻T_synackにより、ＳＹＮパケットおよびＡＣＫパケットの発信元との遅延応答時間を算出して、ＲＴＴ照合結果記録データベース３１ｄに格納する。【選択図】図３
2011130000.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定装置であって、
プログラムされたコンピュータ処理を実行する手段として、パケット処理手段を具備し、
該パケット処理手段は、
予め定められた測定点での任意のセッション確立用のパケットの受信時刻T_0を取得する第１の機能と、
上記測定点での上記パケットに対する第１の応答パケットの受信時刻T_1
を取得する第２の機能と、
上記測定点での上記第１の応答パケットに対する第２の応答パケットの受信時刻T_2を取得する第３の機能と、
上記受信時刻T_１から上記受信時刻T_０を減算して、上記第１の応答パケットの発信元との遅延応答時間を算出する第４の機能と、
上記受信時刻T_2から上記受信時刻T_1を減算して、上記セッション確立用のパケットおよび上記第２の応答パケットの発信元との遅延応答時間を算出する第５の機能とを有する
ことを特徴とする通信品質データのモニタリング測定装置。
【請求項２】
ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定装置であって、
プログラムされたコンピュータ処理を実行する手段として、パケット処理手段を具備し、
該パケット処理手段は、
予め定められた測定点での任意のＳＹＮパケットの受信時刻T_synを取得する第１の機能と、
上記測定点での上記ＳＹＮパケットに対応するＳＹＮ＋ＡＣＫパケットの受信時刻T_synackを取得する第２の機能と、
上記測定点での上記ＳＹＮ＋ＡＣＫパケットに対応するＡＣＫパケットの受信時刻T_ackを取得する第３の機能と、
上記受信時刻T_synackから上記受信時刻T_synを減算して、上記ＳＹＮ＋ＡＣＫパケットの発信元との遅延応答時間を算出する第４の機能と、
上記受信時刻T_ackから上記受信時刻T_synackを減算して、上記ＳＹＮパケットおよび上記ＡＣＫパケットの発信元との遅延応答時間を算出する第５の機能とを有する
ことを特徴とする通信品質データのモニタリング測定装置。
【請求項３】
ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定装置であって、
プログラムされたコンピュータ処理を実行する手段として、
上記通信ネットワーク上の予め定められた測定点における通信パケットのモニタリングを行うパケット処理手段を具備し、
該パケット処理手段は、
受信した任意のSYNフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組を受信時刻と共に第１の記憶装置に記憶する機能と、
受信した任意のSYN+ACKフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組を受信時刻と共に第２の記憶装置に記憶する機能と、
上記SYN+ACKフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組をキーに上記第１の記憶装置を検索して、同じ組の上記SYNフラグの立ったパケットを特定する機能と、
該特定したSYNフラグの立ったパケットの受信時刻と上記SYN+ACKフラグの立ったパケットの受信時刻との差を、上記SYN+ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する機能とを有する
ことを特徴とする通信品質データのモニタリング測定装置。
【請求項４】
請求項３に記載の通信品質データのモニタリング測定装置であって、
上記パケット処理手段は、
受信した任意のACKフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組をキーに上記第２の記憶装置を検索して、同じ組の上記SYN＋ACKフラグの立ったパケットを特定する機能と、
該特定したSYN＋ACKフラグの立ったパケットの受信時刻と上記ACKフラグの立ったパケットの受信時刻との差を、上記ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する機能とを有する
ことを特徴とする通信品質データのモニタリング測定装置。
【請求項５】
ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置により、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定方法であって、
上記コンピュータ装置は、プログラムされたコンピュータ処理を実行する手段として、パケット処理手段を具備し、
該パケット処理手段は、
予め定められた測定点での任意のセッション確立用のパケットの受信時刻T_0を取得する第１の手順と、
上記測定点での上記パケットに対する第１の応答パケットの受信時刻T_1を取得する第２の手順と、
上記測定点での上記第１の応答パケットに対する第２の応答パケットの受信時刻T_2を取得する第３の手順と、
上記受信時刻T_１から上記受信時刻T_０を減算して、上記第１の応答パケットの発信元との遅延応答時間を算出する第４の手順と、
上記受信時刻T_2から上記受信時刻T_1を減算して、上記セッション確立用のパケットおよび上記第２の応答パケットの発信元との遅延応答時間を算出する第５の手順と
を実行することを特徴とする通信品質データのモニタリング測定方法。
【請求項６】
ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置により、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定方法であって、
上記コンピュータ装置は、プログラムされたコンピュータ処理を実行する手段として、パケット処理手段を具備し、
該パケット処理手段は、
予め定められた測定点での任意のＳＹＮパケットの受信時刻T_synを取得する第１の手順と、
上記測定点での上記ＳＹＮパケットに対応するＳＹＮ＋ＡＣＫパケットの受信時刻T_synackを取得する第２の手順と、
上記測定点での上記ＳＹＮ＋ＡＣＫパケットに対応するＡＣＫパケットの受信時刻T_ackを取得する第３の手順と、
上記受信時刻T_synackから上記受信時刻T_synを減算して、上記ＳＹＮ＋ＡＣＫパケットの発信元との遅延応答時間を算出する第４の手順と、
上記受信時刻T_ackから上記受信時刻T_synackを減算して、上記ＳＹＮパケットおよび上記ＡＣＫパケットの発信元との遅延応答時間を算出する第５の手順とを実行する
ことを特徴とする通信品質データのモニタリング測定方法。
【請求項７】
ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置により、通信ネットワーク上の通信品質データをモニタリング測定する通信品質データのモニタリング測定方法であって、
上記コンピュータ装置は、プログラムされたコンピュータ処理を実行する手段として、
上記通信ネットワーク上の予め定められた測定点における通信パケットのモニタリングを行うパケット処理手段を具備し、
該パケット処理手段は、
受信した任意のSYNフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組を受信時刻と共に第１の記憶装置に記憶する手順と、
受信した任意のSYN+ACKフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組を受信時刻と共に第２の記憶装置に記憶する手順と、
上記SYN+ACKフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組をキーに上記第１の記憶装置を検索して、同じ組の上記SYNフラグの立ったパケットを特定する手順と、
該特定したSYNフラグの立ったパケットの受信時刻と上記SYN+ACKフラグの立ったパケットの受信時刻との差を、上記SYN+ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する手順とを実行する
ことを特徴とする通信品質データのモニタリング測定方法。
【請求項８】
請求項７に記載の通信品質データのモニタリング測定方法であって、
上記パケット処理手段は、
受信した任意のACKフラグの立ったパケットの送信元ＩＰアドレスとＴＣＰポート番号および送信先ＩＰアドレスとＴＣＰポート番号の組をキーに上記第２の記憶装置を検索して、同じ組の上記SYN＋ACKフラグの立ったパケットを特定する手順と、
該特定したSYN＋ACKフラグの立ったパケットの受信時刻と上記ACKフラグの立ったパケットの受信時刻との差を、上記ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する手順とを実行する
ことを特徴とする通信品質データのモニタリング測定方法。
【請求項９】
コンピュータに、請求項５から請求項８のいずれかに記載の通信品質データのモニタリング測定方法におけるパケット処理手段による各手順を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＰ（Internet Protocol）通信などのパケット通信ネットワークにおける通信品質測定技術に係り、特に、通信パケットのキャプチャによる品質測定の効率化を図るのに好適な技術に関するものである。
【背景技術】
【０００２】
現在では、IP電話による通信など、ネットワーク内全体で転送遅延が一定以下であることを求める品質基準（総務省電気通信事業者設備規則）などが登場してきている。これにより、簡易的にでも「ネットワーク内の遅延の全体像」を計測することが必要となっている。
【０００３】
ネットワーク上のパケット測定技術には、大きく分けて、自ら測定用パケットを送受信するアクティブ測定と、既存の通信を、ミラーポート等を経由してモニタ（キャプチャ）するパッシブ測定（モニタリング測定）の２種類がある。
【０００４】
また、パケット通信の品質指標は基本的な指標としては、「損失率」、「遅延」、「遅延ゆらぎ」の３点がある。
【０００５】
「遅延」の測定では一般にアクティブ測定技術が用いられる。例えば、意図したパケットの流れを生成して、そのパケット列の送信点で送り出した時刻と、受信側の時刻とを、両端で監視することにより、両者を照合して２点キャプチャ型の一方向遅延を測定する技術、あるいは、受信側で即時応答して送信側に戻ってきたパケットの時間と比較することによる応答時間（RTT：Round Trip Time）を測定する技術（ping応答によるRTT測定技術等）がある。
【０００６】
これらの技術のいずれにおいても、所定のノード間の遅延を測定するためには、測定目的通りのフローを生成させる必要があり、そのために、アクティブに意図通りのフローを生成する必要があるため、アクティブ測定技術が用いられる。
【０００７】
また、アクティブ測定技術においては、pingなどの特殊なアプリケーションでなく、インターネット等のIP通信において、通常利用される非特許文献１に記載のTCP（Transmission Control Protocol）通信［RFC793］の「SYN/ACK応答」を利用して、遅延応答時間を推定する技術も、例えば、非特許文献２等において開示されている。
【０００８】
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間でパケットが往復する時間であるとして、ネットワークの遅延を推定することができる。
【００１０】
尚、既存の実装の例としては、例えば、非特許文献３に記載のように、hpingというツール等を用いる。
【００１１】
このようなアクティブ測定技術に対して、パッシブ測定（モニタリング測定）は、コアルータ等で測定すれば通信網を大規模にモニタすることができるが、シーケンス番号を追い掛けることによる損失率のモニタリングや、通信網全体のフローサイズの分布等を測定するといった用途が主であり、ネットワークの遅延測定には不向きである。尚、このようなパッシブ測定（モニタリング測定）に用いるツールとしてxflow等がある。
【００１２】
しかし、既存の通信でping通信（ICMP echo requestパケットの送信、ICMP echo replyパケットによる応答のペア）があれば、これをパッシブにモニタすることにより、その通信ペアについての遅延推定は可能であるが、通常のIP網の通信においては、そのようなping通信はほとんど発生せず、実際には、ping通信を用いてパッシブに遅延推定を行うことは困難である。
【００１３】
以上のように、狙ったホスト間での遅延について計測する技術は、いくつか知られているが、ネットワーク全体にわたる通信の遅延を計るとなると、アクティブ計測では測定機器を極めて大量に配置しなければならず、また、他のネットワークへの測定用パケットを大量生成してネットワーク上に流すため、ネットワーク自体へ負荷をかけてしまうなど、問題点が多く、また、実際のネットワーク上ではping通信はほとんど発生せず、ping通信を用いてパッシブにネットワーク全体の遅延測定を行うことは困難である。
【先行技術文献】
【非特許文献】
【００１４】
【非特許文献１】[RFC793]、［ｏｎｌｉｎｅ］、［平成２１年１１月２５日検索］、インターネット＜ＵＲＬ  ：http://tools.ietf.org/html/rfc793＞．
【非特許文献２】Bryan Veal、Kang Li、David Lowenthal "New Methods for Passive Estimation of TCP Round-TripTimes",PAM2005,［ｏｎｌｉｎｅ］、［平成２１年１１月２５日検索］、インターネット＜ＵＲＬ  ：http://www.cs.uga.edu/~kangli/src/pam05.pdf＞．
【非特許文献３】［HPING］、［ｏｎｌｉｎｅ］、［平成２１年１１月２５日検索］、インターネット＜ＵＲＬ  ：http://www.hping.org＞．
【発明の概要】
【発明が解決しようとする課題】
【００１５】
解決しようとする問題点は、従来の技術では、通信ネットワーク全体にわたる通信の遅延をアクティブ計測する場合には、測定機器を極めて大量に配置しなければならないと共に、他のネットワークへの測定用パケットを大量生成してネットワーク上に流すため、ネットワーク自体へ負荷をかけてしまうなど問題点が多く、また、ping通信を用いてパッシブにネットワーク全体の遅延計測を行うことは、実際のネットワーク上ではping通信はほとんど発生せず、困難である。
【００１６】
本発明の目的は、これら従来技術の課題を解決し、ネットワークに負荷をかけることなく、ネットワーク内の遅延の全体像を効率的に計測することを可能とすることである。
【課題を解決するための手段】
【００１７】
上記目的を達成するため、本発明では、通信ネットワーク上の一点における通信パケットのモニタリングを行い、例えば、TCPセッション確立の開始時のTCPヘッダ上のSYNフラグの立ったパケットを受信した際、その送信元および宛先（送信先）のアドレスとポート番号の組を受信時刻と共に取得して記憶装置に記憶し、また、逆方向にTCPセッション確立の応答（SYN+ACKフラグの立ったパケット）を選別して、その送信元および宛先（送信先）のアドレスとポートの組が記憶装置に記憶されたSYNフラグの立ったパケットと照合できた場合には、記憶装置に格納されたSYNパケットの受信時刻と、その応答であるSYN+ACKパケットの受信時刻との差を計算し、その差を宛先（送信先）IPアドレスまでの応答時間として収集・蓄積する。
【発明の効果】
【００１８】
本発明によれば、ネットワークに負荷をかけることなく、ネットワーク内の遅延の全体像を効率的に計測することができ、ネットワーク上の通信応答時間（ＲＴＴ）分布の推定等に有効活用することが可能である。
【図面の簡単な説明】
【００１９】
【図１】本発明に係る通信品質データのモニタリング測定装置による動作概要を示す説明図である。
【図２】本発明に係る通信品質データのモニタリング測定装置による測定対象となるネットワーク構成例を示す説明図である。
【図３】本発明に係る通信品質データのモニタリング測定装置の構成例を示すブロック図である。
【図４】図１における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第１の処理動作例を示すフローチャートである。
【図５】図１における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第２の処理動作例を示すフローチャートである。
【図６】図１における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第３の処理動作例を示すフローチャートである。
【図７】図１における通信品質データのモニタリング測定装置による本発明に係る通信品質データのモニタリング測定方法の第４の処理動作例を示すフローチャートである。
【発明を実施するための形態】
【００２０】
以下、図を用いて本発明を実施するための形態例を説明する。図３に示すＲＴＴ解析用装置３１は、プログラムされたコンピュータ処理を実行することにより、本発明の通信品質データのモニタリング測定装置として機能する。
【００２１】
すなわち、ＲＴＴ解析用装置３１は、ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行して、通信ネットワーク上の通信品質データをモニタリング測定する際、まず、予め定められた測定点での任意のセッション確立用のパケットの受信時刻T_0を取得し、次に、同測定点での当該パケットに対する応答パケット（第１の応答パケット）の受信時刻T_1を取得し、さらに、同測定点での第１の応答パケットに対する応答パケット（第２の応答パケット）の受信時刻T_2を取得し、そして、受信時刻T_１から受信時刻T_０を減算して第１の応答パケットの発信元との遅延応答時間を算出し、また、受信時刻T_2から受信時刻T_1を減算してセッション確立用パケットおよび第２の応答パケットの発信元との遅延応答時間を算出する。この任意のパケットに対する処理を予め定められた期間、繰り返して、各パケットの送信元・送信先との遅延応答時間を求め、その結果から、図２におけるＩＰネットワーク２１の通信品質の推定を行うことができる。
【００２２】
以下、ＴＣＰ／ＩＰを例に、図３を用いて、より具体的に説明する。ＲＴＴ解析用装置３１は、プログラムされたコンピュータ処理を実行する手段として、パケット処理部３１ａ、ＳＹＮパケットデータベース３１ｂ、ＳＹＮＡＣＫパケットデータベース３１ｃ、ＲＴＴ照会結果記録データベース３１ｄを具備している。尚、各データベースが利用するＨＤＤ（Hard Disk Driver）等の外部記憶装置は個別に設けても良いし、１つを共用する構成としても良い。
【００２３】
このような構成からなるＲＴＴ解析用装置３１は、図２においてＲＴＴ分析用のワークステーション（ＲＴＴ解析用装置）２５として示すように、測定対象のＩＰネットワーク２１において、ルータ２３ａ〜２３ｃ経由で、ホスト２２ａ〜２２ｆ間で送受信されるパケットを、ルータＢ２３ｂのミラーポート２４を介して取得する。
【００２４】
現在では、IP電話による通信など、ＩＰネットワーク２１内全体で転送遅延が一定以下であることを求める品質基準（総務省電気通信事業者設備規則）などが登場してきている。これにより簡易的にでも「ネットワーク内の遅延の全体像」を計測することが必要となっている。
【００２５】
ＩＰネットワーク２１に負荷をかけずに、ネットワーク全体の特性を把握するには、上述したように「パッシブ測定（モニタリング測定）」技術を活用するのが適切である。
【００２６】
そこで、本例では、図２に示すように、ＩＰネットワーク２１上のある一点に測定点として設けたルータ２３ｂで送受信される任意のパケットを、ＲＴＴ解析用装置２５（図３のＲＴＴ解析用装置３１）においてキャプチャし、通信品質データとしてのＲＴＴを測定する。
【００２７】
すなわち、ＲＴＴ解析用装置３１は、ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、ＩＰネットワーク２１上の通信品質データをパッシブ測定（モニタリング測定）する装置であって、プログラムされたコンピュータ処理を実行する手段として、パケット処理部３１ａを具備し、パケット処理部３１ａにおいて、予め定められた測定点（図１における測定点１で、図２におけるルータ２３ｂ）での例えば任意のＳＹＮパケットの受信時刻T_synを取得し、ＳＹＮパケットデータベース３１ｂにおいて格納すると共に、同測定点での当該ＳＹＮパケットに対応するＳＹＮ＋ＡＣＫパケットの受信時刻T_synackを取得してＳＹＮＡＣＫパケットデータベース３１ｃにおいて格納し、さらに、同測定点での当該ＳＹＮ＋ＡＣＫパケットに対応するＡＣＫパケットの受信時刻T_ackを取得する。
【００２８】
そして、受信時刻T_synackから受信時刻T_synを減算して、ＳＹＮ＋ＡＣＫパケットの発信元との遅延応答時間を算出すると共に、受信時刻T_ackから受信時刻T_synackを減算して、ＳＹＮパケットおよびＡＣＫパケットの発信元との遅延応答時間を算出して、ＲＴＴ照合結果記録データベース３１ｄにおいて格納する。この処理を予め定められた期間、繰り返して、各送信元・送信先との遅延応答時間を求め、その結果から、図２におけるＩＰネットワーク２１の通信品質の推定を行うことができる。
【００２９】
このように、通信しているパケット列をキャプチャするパッシブ測定（モニタリング測定）を行い、その各通信のRTTを推定する技術と組み合わせて蓄積することにより、ＩＰネットワーク２１内の通信の遅延の分布等を把握することが可能となる。
【００３０】
以下、このような処理をより具体的に説明する。
【００３１】
手順としては、図１に示すように、TCPにてホストＡ２（host_A）からホストＢ１（host_B）に通信を行う場合を考える。
【００３２】
まず、測定点１において任意にキャプチャしたパケット列を入力データとして入力し、キャプチャしたパケットが、TCPセッション開始のSYNパケット（SYNフラグ１、ACKフラグ0）であれば、（送信元IPアドレス（src_IP==host_B）、送信先IPアドレス（dst_IP==host_A）、送信元TCPポート番号（src_port）、送信元TCPポート番号（dst_port））の組み合わせ（これにプロトコル種別（TCP）を付加したものは、5-tupleとして知られている組み合わせである）を検索キーとして、（TCPシーケンス番号、パケット到着時間）をセッションデータベース（ＳＹＮパケットデータベース３１ｂ）に登録していく。
【００３３】
次に、別のパケットでTCPセッション開始応答のSYN+ACKパケット（SYNフラグ１、ACKフラグ１）を受信すれば、（送信先IPアドレス（dst_IP）、送信元IPアドレス（src_IP）、送信元TCPポート番号（dst_port）、送信元TCPポート番号（src_port））をキーとして、セッションデータベース（ＳＹＮパケットデータベース３１ｂ）を検索し、記録されたレコードがあれば、TCPシーケンスが対応するか（SYNパケットのTCPシーケンス番号に+１加算した値であるかどうか）を確認し、対応していなければそのデータを破棄し、対応していれば、データベース（ＳＹＮパケットデータベース３１ｂ）中に記録されていたSYNパケットの到着時刻をSYN+ACKパケットの到着時刻から差し引くことで、SYNパケットの送信先IPアドレス（=SYN+ACKパケットの送信元アドレス）までの応答時間を計算する。
【００３４】
また、上述の処理と同様の処理を、任意のSYNパケット&SYN+ACKパケットの組み合わせに対してではなく、任意のSYN+ACKパケットとACKパケットの組み合わせに対して行うことにより、SYNパケットの送信元IPアドレスに対しての応答時間を計算する。
【００３５】
ここで、図１におけるt_２〜t_３およびt_4〜t_5は、ホスト応答処理時間であり、ネットワークの遅延時間ではないが、一般的には無視できる程度に小さいため、ここでは無視する。尚、この影響が無視できない場合には、ネットワークの遅延時間ではなく、「ホスト+ネットワークの応答時間」の測定と解釈する。
【００３６】
これらの応答時間を監視し、収集・記録することにより、ＩＰネットワーク２１内の各IPアドレスまでの応答時間をまとめることが可能となる。
【００３７】
尚、対象のIPアドレスを「自ネットワーク内のIPアドレス」で絞り込めば「自ネットワーク内の遅延品質把握」が低コストに実現可能になる。
【００３８】
次に、図２のような状況を考える。パッシブ測定（モニタリング測定）の対象となるIPネットワーク２１内の特定のルータ２３ｂについてミラーポート２４等の設定を行い、IPネットワーク２１内を流れているトラヒックをキャプチャできるようにする。尚、このような技術は、従来の一般的な技術を用いて行う。
【００３９】
キャプチャする装置が、ＲＴＴ分析用のワークステーション、すなわち、ＲＴＴ解析用装置２５であり、本発明に係る通信品質データのモニタリング測定装置である。
【００４０】
ミラーポート２４には、ＲＴＴ解析用装置２５のパケットキャプチャポートを接続する。ＲＴＴ解析用装置２５には、検索用に、図３に示すSYNパケットデータベース３１ｂとSYNACKパケットデータベース３１ｃの２つのデータベースを用意しておく。これらは後述する処理フローにおいて、応答パケットの照合を行うために、過去のパケットデータを記録しておくのに使われる。
【００４１】
実際の処理については、RTT解析用装置２５，３１では、任意のパケット列を取得し、その取得パケットデータを用いて、パケット処理部３１ａにおいて、図４〜図７に示すフローに従った処理を実行する。尚、任意のパケット列の取得処理は、例えば、インターネットでＵＲＬ「http://www.tcpdump.org」において検索できる［tcp/libcap］におけるtcpdumpやlibpcapにより可能である。
【００４２】
図４に示すように、まず、パケットが入力されると（ステップＳ４０１）、入力されたパケットの送信元IPアドレスsrc_IPもしくは送信先IPアドレスdst_IPが測定対象範囲に含まれているか否かを判別する（ステップＳ４０２）。
【００４３】
含まれていれば、TCPプロトコルであり、かつSYNフラグおよび・もしくは（and/or）ACKフラグが立っているか否かを判別する（ステップＳ４０３）。
【００４４】
フラグが立っていれば、（SYNフラグ、ACKフラグ）が（１、０）であるか（Ｙｅｓ）否か（Ｎｏ）を判別する（ステップＳ４０４）。
【００４５】
Ｙｅｓであれば、入力されたパケットはSYNパケットであるので、当該パケットの（送信元IPアドレス（src_IP）、送信先IPアドレス（dst_IP）、送信元TCPポート番号（src_port）、送信元TCPポート番号（dst_port））の4種のデータ組を「検索キー」（SYN_KEY）とし、当該パケットのTCPシーケンス番号（Seq_syn）、到着時刻（T_syn））の２種のデータを「登録データ」としてSYNパケットデータベース３１ｂ（ＳＹＮ・ＤＢ）に登録して次のパケットの入力を待つ（ステップＳ４０５）。
【００４６】
ステップＳ４０４における判別でＮｏであれば、（SYNフラグ、ACKフラグ）が（１、１）であるか（Ｙｅｓ）否か（Ｎｏ）を判別し（ステップＳ４０６）、Ｙｅｓであれば、入力されたパケットはSYN+ACKパケットであるので、当該パケットの（送信先IPアドレス（dst_IP）、送信元IPアドレス（src_IP）、送信元TCPポート番号（dst_port）、送信元TCPポート番号（src_port））を検索キー（SYNACK_KEY）として、このSYNACK_KEYでSYNパケットデータベース３１ｂ（ＳＹＮ・ＤＢ）を検索する（ステップＳ４０７）。
【００４７】
その後の処理としての逆向きのパケットについて図５を用いて説明する。
【００４８】
ステップＳ４０７の検索で、検索結果がなければ（ステップＳ４０８）、処理は行わないが、検索結果が有れば（ステップＳ４０８）、SYNパケットデータベース３１ｂ（ＳＹＮ・ＤＢ）から、当該SYNパケットのTCPシーケンス番号Seq_syn（＝ＮＳ１）と、SYNパケットの到着時刻T_syn（＝ＴＳ１）を取り出し、これを、現在処理中のSYN+ACK応答パケットのTCPシーケンス番号Seq_synack（＝ＮＳ２）と到着時刻T_synack（＝ＴＳ２）と比較する（ステップＳ４０９）。
【００４９】
正しいSYN+ACK応答パケットは、TCPシーケンス番号として、SYNパケットのTCPシーケンス番号に+１加算した値であるので、もし、「Seq_synack!=（Seq_syn+１）」、すなわち、現在処理中のSYN+ACK応答パケットのTCPシーケンス番号Seq_synack（＝ＮＳ２）が、SYNパケットのTCPシーケンス番号（＝ＮＳ１）に+１加算した値と異なる場合は（ステップＳ４１０）、シーケンス番号が間違っているため、計測データとして不適切なので処理はしない。
【００５０】
これに対して、Seq_synack!=（Seq_syn+１）でなければ（ステップＳ４１０）、この場合、シーケンス番号が対応している場合に該当するので、SYNパケットデータベース３１ｂ（ＳＹＮ・ＤＢ）中に記録されていたSYNパケットの到着時刻T_syn（＝ＴＳ１）をSYN+ACKパケットの到着時刻T_synack（＝ＴＳ２）から差し引く（ＴＳ２−ＴＳ１）ことで、SYNパケットの送信先IPアドレスdst_IP(すなわち、SYN+ACKパケットの送信元アドレスsrc_IP）までの応答時間を計算する（ステップＳ４１１）。すなわち、送信先IPアドレス（SYN+ACKパケットのsrc_IP）までの応答時間（RTT_dst）を「（RTT_dst）=（T_synack−T_syn）」により算出する。
【００５１】
その後、SYNパケットデータベース３１ｂ（ＳＹＮ・ＤＢ）から、検索キー（SYNACK_KEY）と検索結果を共に削除して（ステップＳ４１２）、SYN+ACKパケットの送信元アドレスsrc_IPと算出した応答時間RTT_dstを、ＲＴＴ照合結果記録データベース３１ｄ（ＲＴＴ・ＤＢ）に出力する（ステップＳ４１３）。
【００５２】
そして、当該キーSYNACK_KEYを検索キー、当該SYN+ACKパケットのＴＣＰシーケンス番号Seq_synackと到着時刻T_synackを登録データとして、SYNACKパケットデータベース３１ｃ（SYNACK・ＤＢ）に登録する（ステップＳ４１４）。
【００５３】
また、図４のステップＳ４０６の判別処理の結果がＮｏであれば、図６に示すように、（SYNフラグ、ACKフラグ）が（０、１）であるか（Ｙｅｓ）否か（Ｎｏ）、すなわち、入力されたパケットが、ACKパケットであるか否かを判別する（ステップＳ４１５）。
【００５４】
ここまでの処理で、全条件を網羅したので「Ｎｏ」はなく「Ｙｅｓ」であり、入力されたパケットは「ACKパケット」であるので、当該パケットの送信先IPアドレス（dst_IP）、送信元IPアドレス（src_IP）、送信先TCPポート番号（dst_port）、送信元TCPポート番号（src_port））をキー（ACK_KEY）として、SYNACKパケットデータベース３１ｃ（ＳＹＮＡＣＫ・ＤＢ）を検索する（ステップＳ４１６）。
【００５５】
検索がヒットすれば（ステップＳ４１７）、SYNACKパケットデータベース３１ｃ（ＳＹＮＡＣＫ・ＤＢ）から、検索したSYN+ACKパケットのTCPシーケンス番号Seq_synack（＝ＮＡ１）と到着時刻T_synack（＝ＴＡ１）を読み出し、現在処理中のパケット（ACKパケット）のＴＣＰシーケンス番号Seq_ack（＝ＮＡ２）と到着時刻T_ack（＝ＴＡ２）と比較する（ステップＳ４１８）。
【００５６】
ステップＳ４１０の処理と同様に、正しいACK応答パケットは、TCPシーケンス番号として、SYN+ACKパケットのTCPシーケンス番号に+１加算した値であるので、もし、「Seq_ack!=（Seq_synack+１）」、すなわち、現在処理中のACK応答パケットのTCPシーケンス番号Seq_synack（＝ＮＡ２）が、SYN+ACKパケットのTCPシーケンス番号（＝ＮＡ１）に+１加算した値と異なる場合は（ステップＳ４１９）、シーケンス番号が間違っているため、計測データとして不適切なので処理はしない。
【００５７】
これに対して、Seq_ack!=（Seq_synack+１）でなければ（ステップＳ４１９）、この場合、シーケンス番号が対応している場合に該当するので、SYNACKパケットデータベース３１ｃ（ＳＹＮＡＣＫ・ＤＢ）から、検索したSYN+ACKパケットの到着時刻T_synack（＝ＴＡ１）を，現在処理中のパケット（ACKパケット）の到着時刻T_ack（＝ＴＡ２）から差し引く（ＴＡ２−ＴＡ１）ことで、ACKパケットの送信元IPアドレスsrc_IPであり、大元のSYNパケットの送信元アドレスsrc_IPまでの応答時間を計算する（ステップＳ４２０）。すなわち、送信先IPアドレス（SYNパケット＝ACKパケットのsrc_IP）までの応答時間（RTT_src）を「（RTT_src）=（T_ack−T_synack）」により算出する。
【００５８】
その後、SYNACKパケットデータベース３１ｃ（ＳＹＮＡＣＫ・ＤＢ）から、検索キー（ACK_KEY）と検索結果を共に削除して（ステップＳ４２１）、ACKパケットの送信元アドレスsrc_IPと算出した応答時間RTT_srcを、ＲＴＴ照合結果記録データベース３１ｄ（ＲＴＴ・ＤＢ）に出力する（ステップＳ４２２）。
【００５９】
尚、図４のステップＳ４０１の処理においてＮｏであり、パケットが入力されるまでの間、図７に示す処理を行う。この図７における処理は、未照合データの蓄積による検索データベースの肥大化を防ぐためのものでる。
【００６０】
すなわち、パケット処理部３１ａは、一定回数（例えば１００００処理）毎に（ステップＳ４２３）、SYNパケットデータベース３１ｂ（ＳＹＮ・ＤＢ）およびSYNACKパケットデータベース３１ｃ（SYNACK・ＤＢ）から、古いデータ（登録データの到着時刻T_syn、T_synackが最新の処理パケットのタイムスタンプよりも一定時間以上（たとえば6秒）経過したデータ）を削除する処理を行う（ステップＳ４２４）。このように、往復6秒の応答時間は大きすぎて意味を持たないので、削除することでデータベースの肥大化を防止する。
【００６１】
以上の処理を各入力パケットに対し繰り返すことで、ステップＳ４１３とステップＳ４２１の処理で、IPアドレスと応答時間の組を出力し、それをRTT照合結果記録データベース３１ｄに蓄積することにより、現在行われている通信の各IPアドレスまでの応答時間（RTT）を集計することが可能となる。
【００６２】
以上、図１〜図７を用いて説明したように、本例の通信品質データのパッシブ測定（モニタリング測定）するＲＴＴ解析用装置２５，３１は、ＣＰＵと記憶装置を具備してプログラムされたコンピュータ処理を実行するコンピュータ装置からなり、ＩＰネットワーク２１上の通信品質データをパッシブ測定（モニタリング測定）するものであり、プログラムされたコンピュータ処理を実行する手段として、パケット処理部３１ａを具備し、パケット処理部３１ａにおいて、予め定められた測定点１での任意のＳＹＮパケットの受信時刻T_synを取得すると共に、測定点１での当該ＳＹＮパケットに対応するＳＹＮ＋ＡＣＫパケットの受信時刻T_synackを取得し、さらに、測定点１での当該ＳＹＮ＋ＡＣＫパケットに対応するＡＣＫパケットの受信時刻T_ackを取得する。
【００６３】
そして、受信時刻T_synackから受信時刻T_synを減算して、ＳＹＮ＋ＡＣＫパケットの発信元との遅延応答時間を算出すると共に、受信時刻T_ackから受信時刻T_synackを減算して、ＳＹＮパケットおよびＡＣＫパケットの発信元との遅延応答時間を算出する。
【００６４】
より詳細には、パケット処理部３１ａにおいて、受信したSYNフラグの立った任意のパケットの送信元ＩＰアドレスsrc_IPとＴＣＰポート番号src_portおよび送信先ＩＰアドレスdst_IPとＴＣＰポート番号dst_portの４つのデータからなる組を受信時刻T_synと共に取得してＳＹＮパケットデータベース３１ｂに格納し、受信した任意のSYN+ACKフラグの立ったパケットの送信元ＩＰアドレスsrc_IPとＴＣＰポート番号src_portおよび送信先ＩＰアドレスdst_IPとＴＣＰポート番号dst_portの４つのデータからなる組を受信時刻T_synackと共に取得してＳＹＮACKパケットデータベース３１ｃに格納する。
【００６５】
そして、受信したSYN+ACKフラグの立ったパケットの送信元ＩＰアドレスsrc_IPとＴＣＰポート番号src_portおよび送信先ＩＰアドレスdst_IPとＴＣＰポート番号dst_portの４つのデータからなる組をキーにＳＹＮパケットデータベース３１ｂを検索して、同じ組のSYNフラグの立ったパケットを特定し、特定したSYNフラグの立ったパケットの受信時刻T_synとSYN+ACKフラグの立ったパケットの受信時刻T_synackとの差を、SYN+ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する。
【００６６】
さらに、受信したACKフラグの立った任意のパケットの送信元ＩＰアドレスsrc_IPとＴＣＰポート番号src_portおよび送信先ＩＰアドレスdst_IPとＴＣＰポート番号dst_portの組をキーにＳＹＮACKパケットデータベース３１ｃを検索して、同じ組のSYN＋ACKフラグの立ったパケットを特定し、特定したSYN＋ACKフラグの立ったパケットの受信時刻T_synackとACKフラグの立ったパケットの受信時刻T_ackとの差を、ACKフラグの立ったパケットの送信元IPアドレスまでの応答時間として算出する。
【００６７】
このような処理を予め定められた期間、任意の組のＳＹＮパケット、ＳＹＮ＋ＡＣＫパケット、ＡＣＫパケットに対して繰り返し、各パケットの送信元・送信先との遅延応答時間を求め、その結果から、図２におけるＩＰネットワーク２１の通信品質の推定を行うことができる。
【００６８】
このことにより、従来の技術の問題点、すなわち、従来の技術では、通信ネットワーク全体にわたる通信の遅延をアクティブ計測する場合には、測定機器を極めて大量に配置しなければならないと共に、他のネットワークへの測定用パケットを大量生成してネットワーク上に流すため、ネットワーク自体へ負荷をかけてしまうとの問題点、および、ping通信を用いてパッシブにネットワーク全体の遅延計測を行うことは、実際のネットワーク上ではping通信はほとんど発生せず、困難であるとの問題点を解決し、ネットワークに負荷をかけることなく、ネットワーク内の遅延の全体像を効率的に計測することができ、ネットワーク上の通信応答時間（ＲＴＴ）分布の推定等に有効活用することが可能となる。
【００６９】
尚、本発明は、図１〜図６を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。例えば、本例では、TCP/IPにおけるＳＹＮパケットとＳＹＮ＋ＡＣＫパケットおよびＡＣＫパケットのそれぞれの同じ測定点における受信時刻を測定して、各パケットの発信元と発信元の遅延応答時間を算出するものとしているが、これに限るものではなく、セッション確立のためのパケットの送受信を行うパケット網において適用可能である。
【００７０】
また、図３に示すＲＴＴ解析用装置３１においては、ＳＹＮパケットデータベース３１ｂ、ＳＹＮＡＣＫパケットデータベース３１ｃ、ＲＴＴ照合結果記録データベース３１ｄのそれぞれは、個別の記憶装置を用いる構成としても良いし、それぞれで１つの記憶装置を共有する構成としても良い。
【００７１】
また、図２に示す例では、ルータ２３ｂでキャプチャしたデータのみを用いる構成としているが、例えば、ルータ２３ｂと共に、ルータ２３ａとルータ２３ｃのいずれかもしくは両方でキャプチャしたデータもそれぞれ個別に分けて管理して用いる構成等としても良い。
【００７２】
また、図２においては、ＲＴＴ解析用装置としてワークステーションを用いる構成としているが、十分な処理性能のコンピュータ装置を用いる構成であれば良い。
【００７３】
また、本例のコンピュータ構成に関しても、キーボードや光ディスクの駆動装置の無いコンピュータ構成としても良い。また、本例では、光ディスクを記録媒体として用いているが、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）等を記録媒体として用いることでも良い。また、プログラムのインストールに関しても、通信装置を介してネットワーク経由でプログラムをダウンロードしてインストールすることでも良い。
【符号の説明】
【００７４】
１：測定点、２：ホストＡ（client等）、３：ホストＢ（Server等）、２１：ＩＰネットワーク、２２ａ〜２２ｆ：ホスト、２３ａ〜２３ｃ：ルータ、２４：ミラーポート、２５：ＲＴＴ分析用のワークステーション（ＲＴＴ解析用装置）、３１：ＲＴＴ解析用装置、３１ａ：パケット処理部、３１ｂ：ＳＹＮパケットデータベース、３１ｃ：ＳＹＮＡＣＫパケットデータベース、３１ｄ：ＲＴＴ照合結果記録データベース、３２：パケットキャプチャポート。
【図１】
2011130000.tif 000003
【図２】
2011130000.tif 000004
【図３】
2011130000.tif 000005
【図４】
2011130000.tif 000006
【図５】
2011130000.tif 000007
【図６】
2011130000.tif 000008
【図７】
2011130000.tif 000009