(57)【要約】【課題】  同一のパケットあるいはフレームに対するキャプチャパケットを発見する際に、ＣＰＵやＨＤＤの処理を負荷を低減させる。【解決手段】  本発明は、パケットのネットワーク中を流れる方向が上流または下流のいずれであるかを判定し、第１のキャプチャ情報に対応するパケットのネットワーク中を流れる方向に基づき、第２のトラフィック情報取得装置が第１のトラフィック情報取得装置の上流側または下流側のいずれにあるかを判断し、上流側であると判断された場合は、第２のトラフィック情報取得装置が取得したキャプチャ情報を、第１のキャプチャ情報における受信時刻から時刻が小さくなる方向に向かって、キャプチャ情報収集サーバ内のキャプチャ情報リストを探索し、下流側であると判断された場合は、該第１のキャプチャ情報における受信時刻から時刻が大きくなる方向に向かってキャプチャ情報リストを探索する。【選択図】  図８
2012094998.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク中に設置された複数のトラフィック情報取得装置が、ネットワーク中を流れるパケットまたはフレーム（以下、単に「パケット」と記す）の通過または受信時刻（以下、単に「受信時刻」と記す）と該パケットの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として単一または複数のキャプチャ情報収集サーバにそれぞれ送信し、該キャプチャ情報サーバが、受信した該キャプチャ情報を取得したトラフィック情報取得装置毎に、または、取得したトラフィック情報取得装置に対応付けて、キャプチャ情報における受信時刻の順に記憶手段のキャプチャ情報リストに蓄積し、解析装置が、該キャプチャ情報収集サーバ内の各キャプチャ情報リストから、第１のトラフィック情報取得装置が取得した第１のキャプチャ情報に対し、同一のパケットまたはフレームに対する第２のトラフィック情報取得装置が取得した第２のキャプチャ情報を探索するシステムにおける、同一キャプチャ情報探索方法であって、
前記解析装置において、
前記パケットの前記ネットワーク中を流れる方向が上流または下流のいずれであるかを判定する方向認知ステップと、
前記第１のキャプチャ情報に対応するパケットのネットワーク中を流れる方向に基づき、前記第２のトラフィック情報取得装置が前記第１のトラフィック情報取得装置の上流側または下流側のいずれにあるかを判断する装置順序判断ステップと、
前記装置順序判断ステップにおいて、上流側であると判断された場合は、前記第２のトラフィック情報取得装置が取得したキャプチャ情報を、第１のキャプチャ情報における受信時刻から時刻が小さくなる方向に向かって前記キャプチャ情報リストを探索し、下流側であると判断された場合は、該第１のキャプチャ情報における受信時刻から時刻が大きくなる方向に向かって前記キャプチャ情報リストを探索する方向探索ステップと、
を行うことを特徴とする同一キャプチャ情報探索方法。
【請求項２】
ネットワーク中に設置された複数のトラフィック情報取得装置が、ネットワーク中を流れるパケットまたはフレーム（以下、単に「パケット」と記す）の通過または受信時刻（以下、単に「受信時刻」と記す）と該パケットの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として単一または複数のキャプチャ情報収集サーバにそれぞれ送信し、該キャプチャ情報サーバが、受信した該キャプチャ情報を取得したトラフィック情報取得装置毎に、または、取得したトラフィック情報取得装置に対応付けて、キャプチャ情報における受信時刻の順に記憶手段のキャプチャ情報リストに蓄積し、解析装置が、該キャプチャ情報収集サーバ内の各キャプチャ情報リストから、第１のトラフィック情報取得装置が取得した第１のキャプチャ情報に対し、同一のパケットまたはフレームに対する第２のトラフィック情報取得装置が取得した第２のキャプチャ情報を探索するシステムにおける、同一キャプチャ情報探索方法であって、
前記解析装置において、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見ステップを行い、
前記同一情報発見ステップにおいて、
任意の手法により前記第１のトラフィック情報取得装置と前記第２のトラフィック情報取得装置の伝搬時間を取得する伝搬時間認知ステップと、
前記キャプチャ情報リストの前記第１のトラフィック情報取得装置が取得したキャプチャ情報の中から、探索対象のキャプチャ情報の受信時刻を取得して一時記憶する時刻取得ステップと、
前記第１のキャプチャ情報に対応するパケットのネットワーク中を流れる方向に基づき、前記第２のトラフィック情報取得装置が前記第１のトラフィック情報取得装置の上流側または下流側のいずれにあるかを前記第２のキャプチャ情報により判断する装置順序判定ステップと、
前記キャプチャ情報リストの前記第２のトラフィック情報取得装置が取得したキャプチャ情報の中から、前記パケットの受信時刻が、一時記憶されている前記第１のキャプチャ情報における受信時刻から所定範囲内にある第２のキャプチャ情報を探索する近隣発見ステップと、
前記第２のトラフィック情報取得装置が上流側に存在する場合は、前記第１のキャプチャ情報における受信時刻から前記伝搬時間を減算した時刻と前記所定範囲内にあるキャプチャ情報における受信時刻とを比較し、下流側に存在する場合は、該第１のキャプチャ情報における受信時刻に前記伝搬時間を加算した時刻と該所定範囲内にあるキャプチャ情報における受信時刻とを比較し、該所定範囲内にあるキャプチャ情報における受信時刻が大きい場合には、第２のトラフィック情報取得装置が取得したキャプチャ情報を、該所定範囲内にあるキャプチャ情報における受信時刻から時刻が小さくなる方向に向かって前記キャプチャ情報リストを探索し、小さい場合には、第２のトラフィック情報取得装置が取得したキャプチャ情報を、該所定の範囲内にあるキャプチャ情報における受信時刻から時刻が大きくなる方向に向かって探索し、第２のキャプチャ情報を探索する伝搬方向時間探索ステップと、
を行う
ことを特徴とする同一キャプチャ情報探索方法。
【請求項３】
ネットワーク中に設置された複数のトラフィック情報取得装置が、ネットワーク中を流れるパケットまたはフレーム（以下、単に「パケット」と記す）の通過または受信時刻（以下、単に「受信時刻」と記す）と該パケットの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として単一または複数のキャプチャ情報収集サーバにそれぞれ送信し、該キャプチャ情報サーバが、受信した該キャプチャ情報を取得したトラフィック情報取得装置毎に、または、取得したトラフィック情報取得装置に対応付けて、キャプチャ情報における受信時刻の順に記憶手段のキャプチャ情報リストに蓄積し、解析装置が、該キャプチャ情報収集サーバ内の各キャプチャ情報リストから、第１のトラフィック情報取得装置が取得した第１のキャプチャ情報に対し、同一のパケットまたはフレームに対する第２のトラフィック情報取得装置が取得した第２のキャプチャ情報を探索するシステムにおける、同一キャプチャ情報探索方法であって、
前記解析装置において、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見ステップを行い、
前記同一情報発見ステップにおいて、
前記キャプチャ情報リストから、前記第２のトラフィック情報取得装置が取得したキャプチャ情報の中から、受信時刻が前記第１のキャプチャ情報における受信時刻から所定の範囲内にあるキャプチャ情報を探索する近隣探索ステップと、
前記第２のトラフィック情報取得装置が取得したキャプチャ情報における受信時刻から時刻が大きくなる方向及び小さくなる方向に向かって探索し、第２のキャプチャ情報を探索する時刻探索ステップと、
を行う
ことを特徴とする同一キャプチャ情報探索方法。
【請求項４】
前記キャプチャ情報収集サーバは、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を同一のキャプチャ情報リストに蓄積する集中収集ステップを行い、
前記同一情報発見ステップにおいて、
前記集中収集ステップで蓄積された前記キャプチャ情報リストを参照する
請求項１乃至３のいずれか１項に記載の同一キャプチャ情報探索方法。
【請求項５】
前記集中収集ステップにおいて、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を、一時的にバッファに蓄積し、該バッファ内で、該キャプチャ情報の受信時刻に従って並び替えて、前記キャプチャ情報リストに蓄積する
請求項４記載の同一キャプチャ情報探索方法。
【請求項６】
前記キャプチャ情報収集サーバは、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を、該トラフィック情報取得装置毎のキャプチャ情報リストに蓄積する集中分割収集ステップを行い、
前記同一情報発見ステップにおいて、
前記集中分割収集ステップで蓄積された前記キャプチャ情報リストを参照する
請求項１乃至３のいずれか１項に記載の同一キャプチャ情報探索方法。
【請求項７】
前記集中収集ステップまたは、前記集中分割収集ステップにおいて、
前記キャプチャ情報リストに前記キャプチャ情報を蓄積する際に、
１つのキャプチャ情報の格納サイズが一定長となるように、パディングを施す、または、予め定められた情報以外は蓄積しない、
請求項４または６記載の同一キャプチャ情報探索方法。
【請求項８】
ネットワーク中を流れるパケットまたはフレーム（以下、単に「パケット」と記す）の通過または受信時刻（以下、単に「受信時刻」と記す）と該パケットの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として送信するネットワーク中に設置された複数のトラフィック情報取得装置と、該複数のトラフィック情報取得装置から該キャプチャ情報を受信し、受信した該キャプチャ情報を取得したトラフィック情報取得装置毎に、または、取得したトラフィック情報取得装置に対応付けて、キャプチャ情報における受信時刻の順に記憶手段のキャプチャ情報リストに蓄積するキャップチャ情報収集サーバと、該キャプチャ情報収集サーバ内の各キャプチャ情報リストから、第１のトラフィック情報取得装置が取得した第１のキャプチャ情報に対し、同一のパケットまたはフレームに対する第２のトラフィック情報取得装置が取得した第２のキャプチャ情報を探索する同一キャプチャ情報探索装置からなる同一キャプチャ情報探索システムであって、
前記同一キャプチャ情報探索装置は、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見手段を有し、
前記同一情報発見手段は、
前記パケットの前記ネットワーク中を流れる方向が上流または下流のいずれであるかを判定する方向認知手段と、
前記第１のキャプチャ情報に対応するパケットのネットワーク中を流れる方向に基づき、前記第２のトラフィック情報取得装置が前記第１のトラフィック情報取得装置の上流側または下流側のいずれにあるかを判断する装置順序判断手段と、
前記装置順序判断手段において、上流側であると判断された場合は、前記第２のトラフィック情報取得装置が取得したキャプチャ情報を、第１のキャプチャ情報における受信時刻から時刻が小さくなる方向に向かって前記キャプチャ情報リストを探索し、下流側であると判断された場合は、該第１のキャプチャ情報における受信時刻から時刻が大きくなる方向に向かって前記キャプチャ情報リストを探索する方向探索手段と、
を有することを特徴とする同一キャプチャ情報探索システム。
【請求項９】
ネットワーク中を流れるパケットまたはフレーム（以下、単に「パケット」と記す）の通過または受信時刻（以下、単に「受信時刻」と記す）と該パケットの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として送信するネットワーク中に設置された複数のトラフィック情報取得装置と、該複数のトラフィック情報取得装置から該キャプチャ情報を受信し、受信した該キャプチャ情報を取得したトラフィック情報取得装置毎に、または、取得したトラフィック情報取得装置に対応付けて、キャプチャ情報における受信時刻の順に記憶手段のキャプチャ情報リストに蓄積するキャップチャ情報収集サーバと、該キャプチャ情報収集サーバ内の各キャプチャ情報リストから、第１のトラフィック情報取得装置が取得した第１のキャプチャ情報に対し、同一のパケットまたはフレームに対する第２のトラフィック情報取得装置が取得した第２のキャプチャ情報を探索する同一キャプチャ情報探索装置からなる同一キャプチャ情報探索システムであって、
前記同一キャプチャ情報探索装置は、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見手段を有し、
前記同一情報発見手段は、
任意の手法により前記第１のトラフィック情報取得装置と前記第２のトラフィック情報取得装置の伝搬時間を取得する伝搬時間認知手段と、
前記キャプチャ情報リストの前記第１のトラフィック情報取得装置が取得したキャプチャ情報の中から、探索対象のキャプチャ情報の受信時刻を取得して一時記憶する時刻取得手段と、
前記第１のキャプチャ情報に対応するパケットのネットワーク中を流れる方向に基づき、前記第２のトラフィック情報取得装置が前記第１のトラフィック情報取得装置の上流側または下流側のいずれにあるかを前記第２のキャプチャ情報により判断する装置順序判定手段と、
前記キャプチャ情報リストの前記第２のトラフィック情報取得装置が取得したキャプチャ情報の中から、前記パケットの受信時刻が、一時記憶されている前記第１のキャプチャ情報における受信時刻から所定範囲内にある第２のキャプチャ情報を探索する近隣発見手段と、
前記第２のトラフィック情報取得装置が上流側に存在する場合は、前記第１のキャプチャ情報における受信時刻から前記伝搬時間を減算した時刻と前記所定範囲内にあるキャプチャ情報における受信時刻とを比較し、下流側に存在する場合は、該第１のキャプチャ情報における受信時刻に前記伝搬時間を加算した時刻と該所定範囲内にあるキャプチャ情報における受信時刻とを比較し、該所定範囲内にあるキャプチャ情報における受信時刻が大きい場合には、第２のトラフィック情報取得装置が取得したキャプチャ情報を、該所定範囲内にあるキャプチャ情報における受信時刻から時刻が小さくなる方向に向かって前記キャプチャ情報リストを探索し、小さい場合には、第２のトラフィック情報取得装置が取得したキャプチャ情報を、該所定の範囲内にあるキャプチャ情報における受信時刻から時刻が大きくなる方向に向かって探索し、第２のキャプチャ情報を探索する伝搬方向時間探索手段と、
を有することを特徴とする同一キャプチャ情報探索システム。
【請求項１０】
ネットワーク中を流れるパケットまたはフレーム（以下、単に「パケット」と記す）の通過または受信時刻（以下、単に「受信時刻」と記す）と該パケットの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として送信するネットワーク中に設置された複数のトラフィック情報取得装置と、該複数のトラフィック情報取得装置から該キャプチャ情報を受信し、受信した該キャプチャ情報を取得したトラフィック情報取得装置毎に、または、取得したトラフィック情報取得装置に対応付けて、キャプチャ情報における受信時刻の順に記憶手段のキャプチャ情報リストに蓄積するキャップチャ情報収集サーバと、該キャプチャ情報収集サーバ内の各キャプチャ情報リストから、第１のトラフィック情報取得装置が取得した第１のキャプチャ情報に対し、同一のパケットまたはフレームに対する第２のトラフィック情報取得装置が取得した第２のキャプチャ情報を探索する同一キャプチャ情報探索装置からなる同一キャプチャ情報探索システムであって、
前記同一キャプチャ情報探索装置は、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見手段を有し、
前記同一情報発見手段は、
前記キャプチャ情報リストから、前記第２のトラフィック情報取得装置が取得したキャプチャ情報の中から、受信時刻が前記第１のキャプチャ情報における受信時刻から所定の範囲内にあるキャプチャ情報を探索する近隣探索手段と、
前記第２のトラフィック情報取得装置が取得したキャプチャ情報における受信時刻から時刻が大きくなる方向及び小さくなる方向に向かって探索し、第２のキャプチャ情報を探索する時刻探索手段と、
を有することを特徴とする同一キャプチャ情報探索システム。
【請求項１１】
前記キャプチャ情報収集サーバは、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を同一のキャプチャ情報リストに蓄積する集中収集手段を含み、
前記同一キャプチャ情報探索装置の前記同一情報発見手段は、
前記集中収集ステップで蓄積された前記キャプチャ情報リストを参照する手段を含む
請求項８乃至１０のいずれか１項に記載の同一キャプチャ情報探索システム。
【請求項１２】
前記集中収集手段は、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を、一時的にバッファに蓄積し、該バッファ内で、該キャプチャ情報の受信時刻に従って並び替えて、前記キャプチャ情報リストに蓄積する手段を含む
請求項１１記載の同一キャプチャ情報探索システム。
【請求項１３】
前記キャプチャ情報収集サーバは、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を、該トラフィック情報取得装置毎のキャプチャ情報リストに蓄積する集中分割収集手段を含み、
前記同一キャプチャ情報探索装置の前記同一情報発見手段は、
前記集中分割収集ステップで蓄積された前記キャプチャ情報リストを参照する手段を含む
請求項８乃至１０のいずれか１項に記載の同一キャプチャ情報探索システム。
【請求項１４】
前記集中収集手段または、前記集中分割収集手段は、
前記キャプチャ情報リストに前記キャプチャ情報を蓄積する際に、
１つのキャプチャ情報の格納サイズが一定長となるように、パディングを施す、または、予め定められた情報以外は蓄積しない手段を含む、
請求項１１または１３記載の同一キャプチャ情報探索システム。
【請求項１５】
請求項８乃至１０のいずれか１項に記載の同一キャプチャ情報探索システムにおける同一キャプチャ情報探索装置を構成する各手段としてコンピュータを機能させるための同一キャプチャ情報探索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同一キャプチャ情報探索方法及びシステム及びプログラムに係り、ネットワーク中を流れるパケットあるいはフレームの情報であるキャプチャ情報の探索処理のための同一キャプチャ情報探索方法及びシステム及びプログラムに関する。
【背景技術】
【０００２】
近年のブロードバンド環境の普及やNGN (Next Generation Network) の登場と多種多様な広帯域アプリケーションの登場によって、ネットワークを流れるIP トラフィック量が増大している。これによりネットワークに対する負荷が増大し、サービスに影響を与えることも考えられる。
【０００３】
一方でこのトラフィック需要に応えるため、IEEE における40Gbps 及び100Gbps Ethernet 規格の標準化（"IEEE 802.3 Higher Speed Study Group"，http://ieee802. org/3/hssg/）や、ITU-T SG15 におけるOTN (Optical Transport Network) の規格（"G.709: Interfaces for the Optical Transport Network (OTN)"，http://www.itu.int/rec/T-REC-G.709/e）であるG.709 の改訂等、通信インタフェースの高速化に向けた取り組みがなされており、今後さらに高速化していくものと考えられる。サービス品質を考慮したネットワーク設計／構築のためには、詳細なネットワーク状態をフロー単位で測定できる技術が求められているが、今後のトラフィック増大とより高速なインタフェースを視野に入れると、ネットワークの観測においてはさらに高精度で時間変化をとらえること、パケット単位で測定する高解像度が必要になると考えられる（例えば、非特許文献１参照）。
【０００４】
現在のハイエンドルータ、例えばJuniper T1600 (10G 64Port)では転送速度が1.92 Billion ppsであり、これを換算すると10G 1Port 1秒あたり3000万パケットとなる。
【０００５】
このときネットワークの状態を計測する方法として、図１５，図１６に示すように、ネットワーク中に設置した装置（請求項中では"トラフィック情報取得装置"、本明細書中では、"プローブ"と記す）において通過または入力されるパケットもしくはフレームに対し、その中に含まれる情報（送受信アドレス、ポート番号、ペイロード部分や全体のハッシュ値など）を、プローブの情報（プローブID、受信或いは通過時刻、順序番号）等と共に、ネットワーク中の収集サーバ（請求項中では"キャプチャ情報収集サーバ"、本明細書中では、"コレクタ"と記す)にキャプチャパケット（請求項中では"キャプチャ情報"と記す)として送信し、コレクタにてデータベース等に蓄積する、という方法がある（但し、パケット或いはフレームから取得する情報や、プローブの情報は上記に限らない）（例えば、非特許文献２，３参照）。
【０００６】
このとき、複数のプローブからのデータを合わせて解析することで、例えば片道の伝搬遅延が得られる。但し、プローブが正確な時刻を持っている（例えば、非特許文献４、５参照）ということが前提となる。
【０００７】
コレクタには各プローブからのキャプチャパケットがその通過或いは受信時刻付で収集される。このため、プローブが複数設置されている場合、計測対象のパケットは複数個のプローブを通過し（或いは受信され）、それぞれでキャプチャパケットが生成される。コレクタに収集された後（収集するコレクタが同一であるとは限らない）、その中のキャプチャパケットから同じパケット或いはフレームに対するキャプチャパケットを発見し、その時刻を比較することによって２つのプローブ間の片道の伝搬遅延を算出できる。このとき同じパケット或いはフレームに対するキャプチャパケットはハッシュ値を用いて探索する。つまり、1コレクタ（或いはコレクタ内１データベース）内のあるパケット或いはフレームに対する伝搬遅延を知りたい場合、それと同じハッシュ値を持つキャプチャパケットを探し出し、記録されている時刻を比較すればよい。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】山本猛仁, 山田義朗, 手島光啓, 石田修, 金子晋丈, "NTP ハードウェア実装を用いた高精度パッシブネットワーク測定の実証実験, " 電気学会 通信研究会 CMN-10-010, Jan 2010
【非特許文献２】T. Zseby, M. Molina, N. Duffield, S. Niccolini, F. Raspall, "Sampling and Filtering Techniques for IP Packet Selection," RFC 5475 (3. Terminology), March 2009  (http://www.ietf.org/rfc/rfc5475.txt)
【非特許文献３】A. Johnson, J. Quittek, "Packet Sampling (PSAMP) Protocol Specifications," RFC 5476 (3. Terminology), March 2009  (http://www.ietf.org/rfc/rfc5476.txt)
【非特許文献４】山田義朗, 小林正啓, 久留賢治, 手島光啓, 石田修, "NTPハードウェア実装を用いたクロック配信技術," 信学技報Volume 107, No. 343, Page 21-26, November 2007.
【非特許文献５】山田義朗, 久留賢治, 手島光啓, 石田修, "NTP ハードウェア実装(HwNTP)を用いたIP網クロック配信技術," NTT技術ジャーナル, March 2008
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記のように同一のパケット或いはフレームに対するキャプチャパケットを発見するのはより困難になりつつある。理由の一つは、先に挙げたトラフィック量の増大とインタフェースの高速化である。これにより計測対象となるパケット或いはフレームが増えるために、コレクタに送信・蓄積されるキャプチャパケットの数が増える。また、例に挙げた伝搬遅延の計測についても単純に1つのパケット或いはフレームに対する伝搬遅延だけでなく、より詳細にネットワーク状況を把握するという意味では例えば伝搬遅延のジッタ（揺らぎ）を観測する要望もあり得る。この場合、伝搬遅延を求めるべきパケット或いはフレームの数は膨大になり、それぞれで同じパケット或いはフレームに対するキャプチャパケットを発見する必要が生じる。これらのことから、コレクタで収集されたキャプチャパケットを解析する事に対し、例えばデータベースを検索することによるCPUへの負荷或いはHDDへの負荷は大きく解析時間がかかる。また、プローブ・コレクタの数は２対であるとは限らず、広域のネットワークを観測するには多量のプローブ・コレクタが設置されるため、複数のコレクタ(或いはデータベース)から所望のパケット或いはフレームに対するキャプチャパケットを発見する必要があり、上記の負荷はさらに大きなものになる。
【００１０】
そのためこれらインタフェース高速化、プローブ・コレクタの数、生成されるキャプチャパケットの膨大さを考慮すると、負荷を掛けない或いは高速に探索を可能にする必要がある。
【００１１】
また、プローブでキャプチャパケットを生成する段階でフィルタリングをかけるという方法も考えられるが、例えば様々なユーザのトラフィックが多重されたネットワークを想定し、どのユーザの情報でも提示できるよう準備することを考えるとフルキャプチャの上でコレクタにて解析するという方法が望ましい。
【００１２】
また、ネットワーク計測を行うためにコレクタにおいてどう有用なデータを得るかに関する技術（例えば、特開2005-020214号公報）があるが、今回のようにコレクタに収集した後に、時刻に着目して同じパケットに対するキャプチャデータ（キャプチャパケット）を発見しようとする例はない。
【００１３】
本発明は、上記の点に鑑みなされたもので、コレクタでネットワーク計測を行うためのデータを収集し、同一キャプチャを発見するためにＣＰＵやＨＤＤの負荷を低減し、キャプチャパケットの解析やデータ取得の効率化、高速化が可能な同一キャプチャ情報探索方法及びシステム及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記の課題を解決するため、本発明（請求項１）は、ネットワーク中に設置された複数のトラフィック情報取得装置が、ネットワーク中を流れるパケットまたはフレーム（以下、単に「パケット」と記す）の通過または受信時刻（以下、単に「受信時刻」と記す）と該パケットの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として単一または複数のキャプチャ情報収集サーバにそれぞれ送信し、該キャプチャ情報サーバが、受信した該キャプチャ情報を取得したトラフィック情報取得装置毎に、または、取得したトラフィック情報取得装置に対応付けて、キャプチャ情報における受信時刻の順に記憶手段のキャプチャ情報リストに蓄積し、解析装置が、該キャプチャ情報収集サーバ内の各キャプチャ情報リストから、第１のトラフィック情報取得装置が取得した第１のキャプチャ情報に対し、同一のパケットまたはフレームに対する第２のトラフィック情報取得装置が取得した第２のキャプチャ情報を探索するシステムにおける、同一キャプチャ情報探索方法であって、
前記解析装置において、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見ステップを行い、
前記同一情報発見ステップにおいて、
前記パケットの前記ネットワーク中を流れる方向が上流または下流のいずれであるかを判定する方向認知ステップと、
前記第１のキャプチャ情報に対応するパケットのネットワーク中を流れる方向に基づき、前記第２のトラフィック情報取得装置が前記第１のトラフィック情報取得装置の上流側または下流側のいずれにあるかを判断する装置順序判断ステップと、
前記装置順序判断ステップにおいて、上流側であると判断された場合は、前記第２のトラフィック情報取得装置が取得したキャプチャ情報を、第１のキャプチャ情報における受信時刻から時刻が小さくなる方向に向かって前記キャプチャ情報リストを探索し、下流側であると判断された場合は、該第１のキャプチャ情報における受信時刻から時刻が大きくなる方向に向かって前記キャプチャ情報リストを探索する方向探索ステップと、を行う。
【００１５】
また、本発明（請求項２）は、前記解析装置において、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見ステップを行い、
前記同一情報発見ステップにおいて、
任意の手法により前記第１のトラフィック情報取得装置と前記第２のトラフィック情報取得装置の伝搬時間を取得する伝搬時間認知ステップと、
前記キャプチャ情報リストの前記第１のトラフィック情報取得装置が取得したキャプチャ情報の中から、探索対象のキャプチャ情報の受信時刻を取得して一時記憶する時刻取得ステップと、
前記第１のキャプチャ情報に対応するパケットのネットワーク中を流れる方向に基づき、前記第２のトラフィック情報取得装置が前記第１のトラフィック情報取得装置の上流側または下流側のいずれにあるかを前記第２のキャプチャ情報により判断する装置順序判定ステップと、
前記キャプチャ情報リストの前記第２のトラフィック情報取得装置が取得したキャプチャ情報の中から、前記パケットの受信時刻が、一時記憶されている前記第１のキャプチャ情報における受信時刻から所定範囲内にある第２のキャプチャ情報を探索する近隣発見ステップと、
前記第２のトラフィック情報取得装置が上流側に存在する場合は、前記第１のキャプチャ情報における受信時刻から前記伝搬時間を減算した時刻と前記所定範囲内にあるキャプチャ情報における受信時刻とを比較し、下流側に存在する場合は、該第１のキャプチャ情報における受信時刻に前記伝搬時間を加算した時刻と該所定範囲内にあるキャプチャ情報における受信時刻とを比較し、該所定範囲内にあるキャプチャ情報における受信時刻が大きい場合には、第２のトラフィック情報取得装置が取得したキャプチャ情報を、該所定範囲内にあるキャプチャ情報における受信時刻から時刻が小さくなる方向に向かって前記キャプチャ情報リストを探索し、小さい場合には、第２のトラフィック情報取得装置が取得したキャプチャ情報を、該所定の範囲内にあるキャプチャ情報における受信時刻から時刻が大きくなる方向に向かって探索し、第２のキャプチャ情報を探索する伝搬方向時間探索ステップと、を行う。
【００１６】
また、本発明（請求項３）は、前記解析装置において、
複数の前記キャプチャ情報収集サーバ内の各キャプチャ情報リストから、それぞれ同じキャプチャ情報を探索する同一情報発見ステップを行い、
前記同一情報発見ステップにおいて、
前記キャプチャ情報リストから、前記第２のトラフィック情報取得装置が取得したキャプチャ情報の中から、受信時刻が前記第１のキャプチャ情報における受信時刻から所定の範囲内にあるキャプチャ情報を探索する近隣探索ステップと、
前記第２のトラフィック情報取得装置が取得したキャプチャ情報における受信時刻から時刻が大きくなる方向及び小さくなる方向に向かって探索し、第２のキャプチャ情報を探索する時刻探索ステップと、を行う。
【００１７】
また、本発明（請求項４）は、前記キャプチャ情報収集サーバにおいて、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を同一のキャプチャ情報リストに蓄積する集中収集ステップを行い、
前記同一情報発見ステップにおいて、
前記集中収集ステップで蓄積された前記キャプチャ情報リストを参照する。
【００１８】
また、本発明（請求項５）は、前記集中収集ステップにおいて、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を、一時的にバッファに蓄積し、該バッファ内で、該キャプチャ情報の受信時刻に従って並び替えて、前記キャプチャ情報リストに蓄積する。
【００１９】
また、本発明（請求項６）は、前記キャプチャ情報収集サーバにおいて、
前記複数のトラフィック情報取得装置から取得したキャプチャ情報を、該トラフィック情報取得装置毎のキャプチャ情報リストに蓄積する集中分割収集ステップを行い、
前記同一情報発見ステップにおいて、
前記集中分割収集ステップで蓄積された前記キャプチャ情報リストを参照する。
【００２０】
また、本発明（請求項７）は、前記集中収集ステップまたは、前記集中分割収集ステップにおいて、
前記キャプチャ情報リストに前記キャプチャ情報を蓄積する際に、
１つのキャプチャ情報の格納サイズが一定長となるように、パディングを施す、または、予め定められた情報以外は蓄積しない。
【発明の効果】
【００２１】
上記のように、本発明は、時刻情報を有しているキャプチャパケットを利用している。例えば、図１のようにプローブ（トラフィック情報取得装置）それぞれにコレクタ（キャプチャ情報収集サーバ）が存在する場合を考えたとき（プローブＡ,コレクタＡの組とプローブＢ，コレクタＢの組が大きく離れている場合、一台のコレクタに収集するのはネットワーク資源の利用の観点からも望ましくない）、同一のパケット或いはフレームがそれぞれのプローブを通過した（或いは受信された）場合、そのキャプチャパケットに記録される時刻は大きく離れてはいない（片道の伝搬遅延程度）。そのため、例えば、コレクタＡに格納されたあるパケット或いはフレームに対して、同じパケット或いはフレームに対するコレクタＢに格納されているキャプチャパケットを探す場合、コレクタＡに記録されている受信時刻に近い受信時刻を持つキャプチャパケットから、同じ値（ハッシュ値）を持つものを探すことで効率化が可能である。
【００２２】
また、パケット或いはフレームの流れる方向から、例えば図１ではプローブＢの方が、通過（受信）時刻が遅いことが解るため、コレクタＢ内の同じハッシュ値をもつキャプチャパケットを探すのに、データベースなどを探索する方向を得ることができる。更に一度1つのパケット或いはフレームに対して伝搬遅延が算出できると、他のパケット或いはフレームに対しても同程度の遅延があると予想できることから、さらに同じ値（ハッシュ値）をもつキャプチャパケットを探すべき範囲を絞ることができる。
【００２３】
これにより、キャプチャ情報の探索処理におけるＣＰＵやＨＤＤの負荷を低減することができ、高速な探索処理が可能となる。
【図面の簡単な説明】
【００２４】
【図１】本発明の第１の実施の形態におけるシステム構成図である。
【図２】本発明の第１の実施の形態における装置構成図である。
【図３】本発明の第１の実施の形態における動作のフローチャートである。
【図４】本発明の第１の実施の形態におけるネットワーク間のパケット情報の出力の例である。
【図５】本発明の第１の実施の形態におけるキャプチャパケットの構成を示す図である。
【図６】本発明の第１の実施の形態におけるコレクタに格納されるキャプチャパケットの例である。
【図７】本発明の第１の実施の形態における順序整理処理を説明するための図である。
【図８】本発明の第２の実施の形態における解析装置の構成図である。
【図９】本発明の第２の実施の形態における同一情報発見ステップの詳細な動作のフローチャートである。
【図１０】本発明の第３の実施の形態における解析装置の構成図である。
【図１１】本発明の第３の実施の形態における同一情報発見ステップの詳細な動作のフローチャートである。
【図１２】本発明の第４の実施の形態における解析装置の構成図である。
【図１３】本発明の第４の実施の形態における同一情報発見ステップの詳細な動作のフローチャートである。
【図１４】本発明の第５の実施の形態におけるキャプチャパケット格納の例である。
【図１５】コレクタにおけるキャプチャパケットの収集処理を示す図（その１）である。
【図１６】コレクタにおけるキャプチャパケットの収集処理を示す図（その２）である。
【発明を実施するための形態】
【００２５】
以下図面と共に、本発明の実施の形態を説明する。
【００２６】
まず、本明細書中で用いる用語と特許請求の範囲で用いる用語の対応関係を以下に示す。
【００２７】
・トラフィックパケット：パケットあるいはフレーム（請求項）
・プローブ：トラフィック情報取得装置（請求項）
・キャプチャパケット：キャプチャ情報（請求項）
・コレクタ：キャプチャ情報収集サーバ（請求項）
・プローブ通過時刻：パケットあるいはフレームを受信あるいは通過した時刻（請求項）
［第１の実施の形態］
前述の背景技術の項に記載のように、ネットワーク中のパケットあるいはフレームに対して、キャプチャパケットをプローブで生成し、収集サーバであるコレクタに送信する場合を例に説明する。
【００２８】
図１は、本発明の第１の実施の形態におけるシステム構成を示す。
【００２９】
同図は、ネットワーク中に設置された複数のプローブ２００Ａ，２００Ｂ、複数のコネクタ３００Ａ，３００Ｂ、解析装置１００から構成される。なお、同図では、説明の簡単化のためにプローブとコネクタを２つずつ設けた例を示しているが、本発明は、この構成に限定されるものではない。また、解析装置１００とコレクタ300Ａあるいは３００Ｂが同一装置という構成もあり得る。
【００３０】
図２は、本発明の第１の実施の形態における装置構成を示す。
【００３１】
プローブ２００は、キャプチャパケット取得部２１０を有し、ネットワーク中を流れるパケット／フレームの通過（または受信）時刻と該パケット／フレームの少なくとも一部に対するハッシュ値を取得し、キャプチャ情報として、時刻情報と共に、コネクタ３００にそれぞれ送信する。
【００３２】
コネクタ３００は、それぞれ、キャプチャ情報生成部３１０とキャプチャ情報ＤＢ３２０を有し、受信したキャプチャ情報を取得したプローブ２００毎に、または、取得したプローブ２００に対応付けて、キャプチャ情報における通過（または受信）時刻順にキャプチャ情報リストを作成してキャプチャ情報ＤＢ３２０に蓄積する。
【００３３】
解析装置１００は、同一情報抽出部１１０を有し、コネクタ３００のキャプチャ情報ＤＢ３２０Ａにアクセスし、取得したキャプチャ情報に対し、コネクタ３００Ｂのキャプチャ情報ＤＢ３２０Ｂから同じハッシュ値を持つキャプチャ情報を探索する。
【００３４】
図３は、本発明の第１の実施の形態における動作のフローチャートである。以下、図３に従って説明する。
【００３５】
ステップ１１０：各自収集ステップ）  プローブ２００は、ネットワーク中に設置され、キャプチャパケット取得部２１０において、流れるパケット或いはフレームを通過させる或いは受信する。通過する場合は、ネットワーク中にインラインで設置された場合であり、入力されたパケット或いはフレームを他のポートからそのままネットワーク中に出力するものであり、図４に示すように、受信する場合はスイッチのミラーポートや光カプラ等を用いてネットワーク中のパケット或いはフレームがコピーされて入力され、他ポートからは出力しない。このように入力されたパケット或いはフレームに対して、その情報を含むキャプチャパケットを生成する。
【００３６】
キャプチャパケットに含まれるデータは、図５に示すように、送受信アドレス、ポート番号、ペイロード部分や全体のハッシュ値、プローブID、受信或いは通過時刻、順序番号等があり、これがコレクタ３００に送信され、キャプチャ情報ＤＢ３２０に時刻順に蓄積される。なお、コレクタ３００内では、キャプチャ情報ＤＢとして、例えばデータベースが動作しており、受信したキャプチャパケットが逐次挿入される場合が考えられるが、その限りではなく、HDD等にそのまま書き込んでいく方法もある。以下、ＤＢを用いて説明する。
【００３７】
ステップ１２０：同一情報発見ステップ）  解析装置１００は、コレクタ３００のキャプチャ情報ＤＢ３２０に蓄積されたキャプチャパケットを解析することにより、ネットワーク状態を知ることができる。ここでいうネットワーク状態とは例えばトラフィック量や伝搬遅延、伝搬遅延ジッタ、帯域使用率、ある送受信ノード対の通信状況などである。
【００３８】
具体的には、プローブ２００で一定時間内に受信したパケット或いはフレームに対するキャプチャパケットに含まれるパケット或いはフレームの長さ(Length)の合計をその時間で除算すればトラフィック量を得ることができる。また、プローブ２００が設置されているリンクの最大帯域を入力すれば、このトラフィック量から帯域使用率が算出できる。
【００３９】
また、図６に示すように、複数のプローブ２００Ａ、２００Ｂで同じパケット或いはフレームを受信した場合、それぞれのコレクタ３００Ａ，３００Ｂにこのパケット或いはフレームに対するキャプチャパケットが格納されるため、解析装置１００において、それぞれのコレクタ３００Ａ，３００Ｂ内のキャプチャ情報ＤＢ３２０Ａ，３２０Ｂのキャプチャパケットが同じパケット或いはフレームに対するものであるかは、例えばハッシュ値が一致することで確認できる。
【００４０】
また、２つのプローブ２００Ａ，２００Ｂが同じコレクタ（例えば、３００Ａ）にキャプチャパケットを送信する場合も同様である。より具体的には、あるコレクタ２００Ａ内の1キャプチャパケットに対しては、そのハッシュ値を一時記憶した後、同じハッシュ値をもつ他コレクタ２００Ｂ内のキャプチャパケットを探索する。
【００４１】
上記では、解析装置１００で同一パケットを探索する例を示したが、本動作の実行手段は複数存在する。一つには、あるコレクタ２００Ａが、自身(コレクタ２００Ａ)が保持するキャプチャパケットのハッシュ値と時刻を記憶し、別コレクタ２００Ｃに送信し、別コレクタ２００Ｃが、当該コレクタ２００Ｃから見た別コレクタ２００Ｂが保持するキャプチャパケット群情報をネットワークを介して参照しつつ探索する方法がある。また、一つには、キャプチャパケットが記録された複数のコレクタの、可搬記憶媒体（例えばHDD）を何れかのコレクタ或いは別解析用PCまで運搬し、一カ所で解析・探索する方法があり、本ステップの動作主体はキャプチャパケットを蓄積するコレクタに限らない。なお、このことは他の全ての実施例にも共通であるが、本明細書中では解析装置１００を実行手段として説明する。
【００４２】
このときキャプチャパケットに打刻されている時刻(プローブ通過時刻)は異なっており、この差がプローブ間の伝搬遅延であると言える。（図６の例では、10時43分28秒 - 10時43分21秒 = 7秒、但し、実際はより細かな時刻を有していると想定され、粒度の高い伝搬遅延が算出できる）。
【００４３】
ステップ１３０：順序整理ステップ）  各自収集ステップ（ステップ１１０）において、コレクタ３００のキャプチャ情報生成部３１０では、例えば、キャプチャ情報ＤＢ３２０に挿入する前にキャプチャパケット内の時刻によってソートを行い、その時刻順に格納するという処理を行う。ソートを行うためにバッファが必要であるが、ここではコレクタ３００内にバッファを持つ方法と、コレクタ３００の外（ネットワーク的にコレクタの前段）におく方法を説明する。
【００４４】
コレクタ３００内にバッファを持つ方法では、コレクタ３００は汎用PCにおいて構成されている場合が考えられるため、例えば、図７に示すように、データベースソフトなどでキャプチャ情報ＤＢ３２０にキャプチャパケットの蓄積を行う場合、データベースソフトの前にバッファ３３０を設け、そこで時刻順にソートを行った後、データベースソフトに渡す。
【００４５】
コレクタ３００の外に置く方法では、プローブとコレクタの間(例えばコレクタの直前)に時刻順でソートを行う装置を設置し、ここで並べ替えた後でコレクタに渡す方法である。
【００４６】
［第２の実施の形態］
本実施の形態では、前述の第１の実施の形態の各自収集ステップ（ステップ１１０）、同一情報発見ステップ（ステップ１２０）は同じであるが、本実施の形態では、同一情報発見ステップにおける、より詳細な処理について説明する。当該実施の形態は、請求項１に対応する。
【００４７】
図８は、本発明の第２の実施の形態における解析装置の構成を示す。
【００４８】
同図に示す解析装置１００の同一情報抽出部１１０は、流れ方向認知部１１１、装置順序判定部１１２、方向探索部１１３から構成される。
【００４９】
流れ方向認知部１１１は、キャプチャ情報ＤＢ３２０Ａ，３２０Ｂに格納されているキャプチャパケットの受信時刻を参照し、時刻が早い方が上流側、遅い方が下流側と判定する。
【００５０】
装置順序判定部１１２は、流れ方向認知部１１１で判定された流れ方向に基づいて、プローブ２００Ｂがプローブ２００Ａの上流または下流のいずれの方向にあるかを判定する。
【００５１】
方向探索部１１３は、装置順序判定部１１２の判定結果に基づいて、プローブ２００Ｂがプローブ２００Ａの上流であれば、コレクタ３００Ｂのパケット情報ＤＢ３２０Ｂのキャプチャ情報を、キャプチャ情報ＤＢ３２０Ａのキャプチャパケットの受信時刻から時刻が小さくなる方向に探索する。一方、プローブ２００Ｂがプローブ２００Ａの下流であれば、パケット情報ＤＢ３２０のキャプチャ情報を、キャプチャ情報ＤＢ３２０Ａのキャプチャパケットの受信時刻から時刻が大きくなる方向に探索する。
【００５２】
図９は、本発明の第２の実施の形態における同一情報発見ステップの詳細な動作のフローチャートである。
【００５３】
ステップ１２１：流れ方向認知ステップ）  前述の図６に示すように、同図中左から右方向にパケットあるいはフレームが流れているとき、この流れる方向を認識する。例えば、ネットワーク管理者が、直接解析システムやアプリケーションに入力する方法がある。
【００５４】
また、これまでに行った同一フローの解析結果から推測する方法もあり、より具体的には、流れ方向認知部１１１は、これまでに解析したあるパケット或いはフレームのキャプチャパケットに打刻されている時刻（図６の受信時刻）を参照することで、時刻が早い方が上流側、遅い方が下流側であると判断する。
【００５５】
ステップ１２２：装置順序判断ステップ）  次に、装置順序判定部１１２は、キャプチャパケットについて上流側・下流側の判断を行う。図６の、コレクタ３００ＡにあるパケットＡに対するキャプチャパケットについて、同じパケットＡに対するキャプチャパケットをコレクタ３００Ｂから発見したい場合を例に説明する。このとき、流れ方向認知ステップ（ステップ１２１）で検知したパケット或いはフレームの流れる方向から、コレクタ３００Ａに対応するプローブ２００Ａとコレクタ２００Ｂに対応するプローブ３００Ｂについては、プローブ２００Ａの方が下流にあるとわかる。
【００５６】
ステップ１２３：方向探索ステップ） コレクタ３００Ａに格納されているキャプチャパケットに記載の受信時刻が10時43分21秒であるとすると、コレクタ３００Ｂに対応するプローブ２００Ｂが下流側にあることから、コレクタ３００Ｂ内に格納されているキャプチャパケットに記載の時刻はこれより遅いはずである。そのため方向探索部１１３は、コレクタ３００Ｂのキャプチャ情報ＤＢ３２０においてあるキャプチャパケットを発見し、それが10時43分21秒以前であった場合、発見すべき目的のキャプチャパケットは記載されている時刻が大きくなる方向に探索をすればよく、小さくなる方向を探索する必要はない。
【００５７】
そのため、例えばコレクタ３００Ｂ内に格納されているキャプチャパケットのハッシュ値を順番に一致するか確認していく方法ではなく、例えばランダムにキャプチャパケットを抜き出し、記載されている時刻を見た上で、時刻が大きくなる方向に探索を開始し、この時初めてハッシュ値が一致するかを確認していくという方法がある。この場合、コレクタ３００Ｂのキャプチャ情報ＤＢ３２０Ｂからランダムに抜き出したキャプチャパケットの時刻が10時43分21秒以降であったならば、ランダムにキャプチャパケットの抜き出しを再開する方法や、記載されている時刻が小さくなる方向に1つずつではなく大きな数(例えば1000個)ごとスキップしながら、記載されている時刻が10時43分21秒以前であるキャプチャパケットを発見するまで探索する方法が考えられる。但し、本実施の形態中ではプローブ２つ、コレクタ２つの状況において、プローブ２００Ａが上流側にあり、コレクタ３００Ｂにおいて時刻が大きくなる方向に探索する場合で説明したが、その限りではない。
【００５８】
［第３の実施の形態］
本実施の形態は、前述の各自収集ステップ（ステップ１１０）及び同一情報発見ステップ（ステップ１２０）を行うことは同様であるが、同一情報発見ステップについてより詳細な処理を示す。本実施の形態は、請求項３に対応する。
【００５９】
図１０は、本発明の第３の実施の形態における解析装置の構成を示す。
【００６０】
同図に示す解析装置１００の同一情報抽出部１１０は、時刻取得部１１４、近隣発見部１１５、時刻探索部１１６から構成される。
【００６１】
時刻取得部１１４は、キャプチャ情報ＤＢ３２０Ａに格納されているキャプチャパケットの受信時刻を取得し、メモリ（図示せず）に格納する。
【００６２】
近隣発見部１１５は、メモリ（図示せず）に格納されているキャプチャパケットの受信時刻から所定の範囲内の受信時刻を有するキャプチャパケットをキャプチャ情報ＤＢ３２０Ｂから探索する。
【００６３】
時刻探索部１１６は、近隣発見部１１５で探索されたキャプチャパケットから時刻の大きくなる方向、及び／または、小さくなる方向に向かってキャプチャ情報ＤＢ３２０Ｂを探索する。
【００６４】
図９は、本発明の第３の実施の形態における同一情報発見ステップの詳細な動作のフローチャートである。
【００６５】
ステップ２２１：時刻取得ステップ）  図６に示すコレクタ３００Ａのキャプチャ情報ＤＢ３２０Ａに格納されているパケットＡに対するキャプチャパケットについて、同じパケットＡに対するキャプチャパケットをコレクタ３００Ｂから発見したい場合を例に説明する。ここでは時刻取得部１１４が、コレクタ３００Ａにあるキャプチャパケットの受信時刻である10時43分21秒という値を一時的にメモリ（図示せず）に記憶する。
【００６６】
ステップ２２２：近隣発見ステップ）  近隣発見部１１５は、コレクタ３００Ｂのキャプチャ情報ＤＢ３２０Ｂに格納されているキャプチャパケットの中から、先ほどメモリ（図示せず）に記憶した受信時刻に近い時刻が記載されたキャプチャパケットを探索する。この方法として、例えばコレクタ３００Ｂのキャプチャ情報ＤＢ３２０Ｂからキャプチャパケットをランダムに選び出し、先ほどメモリ（図示せず）に記憶した受信時刻と比較し、最も近いものを選択する方法がある。また、ある閾値(例えば1分)を予め決めておき、キャプチャパケットの受信時刻である10時43分21秒という値との差がこの閾値以下となるキャプチャパケットを順番に探していく方法もあり、このときは1つずつではなく、より大きな数(例えば1000個)毎スキップしながら探す方法もある。
【００６７】
ステップ２２３：時刻探索ステップ）  時刻探索部１１６は、上記の近隣発見ステップ（ステップ２２２）において発見した、メモリ（図示せず）に記憶した受信時刻に近い時刻が記録されたキャプチャパケットから、キャプチャパケットに記載されている時刻が大きくなる方向或いは小さくなる方向或いはその両方向へとキャプチャ情報ＤＢ３２０Ｂの探索を開始する。このときはハッシュ値の比較を行い同じハッシュ値をもつキャプチャパケットが見つかるまでキャプチャ情報ＤＢ３２０Ｂを探索する。また、探索の方向については任意であるが、例えば、キャプチャ情報ＤＢ３２０Ｂにおいて、受信時刻に近い時刻が記録されたキャプチャパケットから両側に1つずつ遠いキャプチャパケットを探索していく方法や、何れかの方向に探索を行い、上記の閾値以上になれば逆方向の探索に切り替える、等といった方法もある。
【００６８】
［第４の実施の形態］
本実施の形態は、前述の各自収集ステップ（ステップ１１０）及び同一情報発見ステップ（ステップ１２０）を行うことは同様であるが、同一情報発見ステップについてより詳細な処理を示す。本実施の形態は、請求項２に対応する。
【００６９】
図１２は、本発明の第４の実施の形態における解析装置の構成を示す。
【００７０】
同図に示す解析装置１００の同一情報抽出部１１０は、伝搬時間認知部１１７、装置順序判定部１１２、時刻取得部１１６、近隣発見部１１５、時刻比較部１１８、伝搬方向時間探索部１１９から構成される。同図において、第２、第３の実施の形態と同様の構成要素には同一符号を付す。
【００７１】
伝搬時間認知部１１７は、プローブ２００Ａとプローブ２００Ｂでパケットを受信した時刻の差分である伝搬遅延を取得する。
【００７２】
装置順序判定部１１２は、第２の実施の形態と同様に、パケットの流れる方向からプローブ２００Ｂがプローブ２００Ａの上流、下流のいずれにあるかを判定する。
【００７３】
時刻取得部１１６は、第３の実施の形態と同様に、キャプチャ情報ＤＢ３２０Ａに格納されているキャプチャパケットの受信時刻を取得し、メモリ（図示せず）に格納する。
【００７４】
近隣発見部１１５は、第３の実施の形態と同様に、メモリ（図示せず）に格納されているキャプチャパケットの受信時刻から所定の範囲内の受信時刻を有するキャプチャパケットをキャプチャ情報ＤＢ３２０Ｂから探索する。
【００７５】
時刻比較部１１８は、装置順序判定部１１２の判定結果が、キャプチャ情報ＤＢ３２０に対応するプローブ２００ＢがプローブＡの上流であれば、時刻取得部１１６で取得した受信時刻から伝搬遅延を減算し、下流であれば、当該受信時刻に伝搬遅延を加算する。このように、減算または加算した時刻と近隣発見部１１５で探索されたキャプチャパケットの受信時刻を比較する。
【００７６】
伝搬方向時間探索部１１９は、探索されたキャプチャパケットの時刻が大きい場合には、当該受信時刻から小さくなる方向に向かってキャプチャ情報ＤＢ３２０Ｂを探索し、探索されたキャプチャパケットの時刻の方が小さい場合には、当該受信時刻が大きくなる方向に向かってハッシュ値が一致するキャプチャパケットが存在するか探索する。
【００７７】
図１３は、本発明の第４の実施の形態における同一情報発見ステップの詳細な動作のフローチャートである。
【００７８】
ステップ３２１：伝搬時間認知ステップ）  前述の図６に示すコレクタ３００Ａのキャプチャ情報ＤＢ３２０Ａに格納されているパケットＡに対するキャプチャパケットについて、同じパケットＡに対するキャプチャパケットをコレクタ３００Ｂのキャプチャ情報ＤＢ３２０Ｂから発見したい場合を例に説明する。伝搬時間認知部１１７では、プローブ２００Ａとプローブ２００Ｂの間の伝搬遅延を取得する。ただし、伝搬遅延はネットワーク状態により可変であり、おおよその伝搬遅延でもよい。取得する方法は例えばネットワーク管理者が直接解析システムやアプリケーションに入力する方法がある。また、これまでに行った同一フローの解析結果から推測する方法もあり、より具体的にはこれまでに解析することで得られた伝搬遅延を用いる方法がある。このときの伝搬遅延はある1パケット或いはフレームに対する結果でもよいし、幾つかのパケット或いはフレームに対する結果の平均を用いてもよい。
【００７９】
ステップ３２２：装置順序判断ステップ）当該ステップは、第２の実施の形態のステップ１２２と同様であるので、その説明を省略する。
【００８０】
ステップ３２３：時刻取得ステップ）  当該ステップは、第３の実施の形態のステップ２２３と同様であるので、その説明を省略する。
【００８１】
ステップ３２４：近隣発見ステップ）  当該ステップは、第３の実施の形態のステップ２２３と同様であるので、その説明を省略する。
【００８２】
ステップ３２５：時刻比較ステップ）  時刻比較部１１８は、伝搬時間認知ステップ（ステップ３２１）で得られた時刻が例えば7.2秒であり、装置順序判断ステップ（ステップ３２２）よりプローブ２００Ｂが下流側であると判定されたものとして説明する。また、近隣発見ステップ（ステップ３２４）で10時43分28.5秒のキャプチャパケットが発見していたとする。このとき、コレクタ３００Ｂ内のパケット情報ＤＢ３２０に格納されているパケットＡに対するキャプチャパケットの受信時刻はおよそ10時43分28.2秒であると推測できる。これは、プローブ２００におけるキャプチャパケットの受信時刻に、同一のキャプチャパケットの伝搬時間を、同一キャプチャ情報を探索する対象のキャプチャ情報ＤＢ３２０に対応するプローブが上流側であれば減算し、下流側であれば加算することにより推測する。このときこの2つ(10時43分28.5秒, 10時43分28.2秒)を比較すると近隣発見ステップにおける10時43分28.5秒の方が大きいと解る。
【００８３】
ステップ３２６：伝搬方向時間探索ステップ）  そのため、伝搬方向時間探索部１１９は、近隣発見ステップ（ステップ３２４）で発見したキャプチャパケットよりも時刻が小さくなる方向に、コレクタ３００Ｂのキャプチャ情報ＤＢ３２０Ｂ内のパケットＡに対するキャプチャパケットが存在すると判断し、その方向にハッシュ値が一致するキャプチャパケットが存在するか探していく。
【００８４】
［第５の実施の形態］
本実施の形態では、ブローブ２００からの情報を１台のコレクタ３００に収集し、格納する処理について説明する。本実施の形態は、請求項４〜６に対応する。
【００８５】
図１４は、本発明の第５の実施の形態におけるキャプチャパケット格納の例を示す。
【００８６】
同図に示すように、複数のプローブ２００からのキャプチャパケットを１台のコレクタ３００に集める場合を考える。このとき、プローブ２００からキャプチャパケットをコレリタ３００に格納する際に、以下のような３つの方法がある。
【００８７】
・コレクタ３００内に、１つの例えば、デーベースソフトを用意する、あるいは、記憶領域を確保し、いずれかのプローブ２００から送出されたキャプチャパケットも同様に格納する。
【００８８】
・コレクタ３００内に、１つの例えば、データベースソフトを用意する、あるいは、記憶領域を確保し、いずれかのプローブ２００から送出されたキャプチャパケットも同様に格納する際に、第１の実施の形態と同様に、バッファを用意して、プローブ２００でのパケット受信時刻に基づいてソートを行ってから格納する。
【００８９】
・コレクタ３００内にプローブ２００毎の、例えば、データベースソフトを用意する、あるいは、記憶領域を確保し、キャプチャパケットに含まれるプローブのＩＤに基づいて、格納先を選択し、格納する。
【００９０】
なお、上記以外のブローブ２００での情報収集、解析装置１００での同一パケットあるいはフレームに対するキャプチャパケットの探索処理については、前述の第１〜第４の実施の形態野いずれかを適用するものとする。
【００９１】
［第６の実施の形態］
本実施の形態では、キャプチャパケットをデータベースソフトあるいはＨＤＤ等の記憶領域に格納する際に、そのサイズが一定となるようにするものである。
【００９２】
具体的には、十分に大きなサイズを予め決めておき、コレクタ３００が格納すべきキャプチャパケットを受信したときに、そのサイズになるまで、パディングを行う、あるいは、予め適当なサイズを決めておき、コレクタ３００が格納すべきキャプチャパケットを受信したときに、そのサイズになるまで、キャプチャパケット内の情報を削除する方法がある。
【００９３】
これにより、ＨＤＤ等の記憶領域において、一定間隔毎にキャプチャパケットの先頭が記録されることになるため、探索速度の向上が期待できる。
【００９４】
なお、上記の第１〜第７の実施の形態における動作をプログラムとして構築し、プローブ、コレクタ、解析装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００９５】
また、構築されたプログラムをハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。
【００９６】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００９７】
１００  解析装置
１１０  同一情報抽出部
１１１  流れ方向認知部
１１２  装置順序判断部
１１３  方向探索部
１１４  時刻取得部
１１５  近隣発見部
１１６  時刻探索部
１１７  伝搬時間認知部
１１８  時刻比較部
１１９  伝搬方向時間探索部
２００  プローブ
２１０  キャプチャパケット取得部
３００  コレクタ
３１０  キャプチャ情報生成部
３２０  キャプチャ情報ＤＢ
３３０  バッファ
【図１】
2012094998.tif 000003
【図２】
2012094998.tif 000004
【図３】
2012094998.tif 000005
【図４】
2012094998.tif 000006
【図５】
2012094998.tif 000007
【図６】
2012094998.tif 000008
【図７】
2012094998.tif 000009
【図８】
2012094998.tif 000010
【図９】
2012094998.tif 000011
【図１０】
2012094998.tif 000012
【図１１】
2012094998.tif 000013
【図１２】
2012094998.tif 000014
【図１３】
2012094998.tif 000015
【図１４】
2012094998.tif 000016
【図１５】
2012094998.tif 000017
【図１６】
2012094998.tif 000018