(57)【要約】  計測装置Ａ、Ｂ、およびＣは、同一のネットワーク上に接続され、ネットワーク上を流れるパケットをキャプチャする。分担制御処理装置は、予め決められた分担制御規則と、計測装置ＡからステップＳ１０１で通知されるキャプチャに関する状況とに基づいて、計測装置Ａから計測装置Ｂにキャプチャを交替させることを決定する。すると、分担制御処理装置は、ステップＳ１０２で計測装置Ｂにキャプチャを開始するよう指示する。計測装置ＢがパケットＰ４を実際にキャプチャしたことを表す状況が、ステップＳ１０３で計測装置Ｂから通知された後に、分担制御処理装置は、ステップＳ１０４で計測装置Ａにキャプチャの停止を指示する。
2010086907.tif 000002
【特許請求の範囲】
【請求項１】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットをキャプチャする複数の計測装置と、
前記ネットワーク上を流れるパケットのキャプチャの、前記複数の計測装置間での分担を制御する分担制御処理手段と、
前記複数の計測装置がそれぞれキャプチャしたパケットを収集する集計手段とを備え、
前記複数の計測装置のそれぞれは、
前記キャプチャの開始と停止を制御するキャプチャ制御手段と、
前記キャプチャ制御手段による制御にしたがって行われる前記キャプチャに関する状況を前記分担制御処理手段に通知するキャプチャ状況通知手段とを備え、
前記分担制御処理手段は、
予め決められた分担制御規則と前記キャプチャ状況通知手段により通知される前記状況に基づいて、前記複数の計測装置のいずれに前記キャプチャを開始または停止させるかを決定する分担制御手段と、
前記分担制御手段の決定にしたがって前記複数の計測装置に前記キャプチャの開始または停止を指示する分担指示手段とを備え、
前記分担制御手段が第１の計測装置から第２の計測装置に前記キャプチャを交替させることを決定すると、前記分担指示手段は、前記キャプチャを開始するよう前記第２の計測装置に指示し、前記第２の計測装置がパケットを実際にキャプチャしたことを表す第１の状況を前記第２の計測装置の前記キャプチャ状況通知手段が前記分担制御処理手段に通知した後に、前記第１の計測装置に前記キャプチャの停止を指示し、
前記集計手段は、前記第１と前記第２の計測装置が重複してキャプチャしたために前記収集したパケットの中に重複して含まれるパケットを重複パケットとして特定することで、前記ネットワーク上を流れる一連のパケットを重複なく復元する、
ことを特徴とするパケットキャプチャシステム。
【請求項２】
前記第１の計測装置が前記キャプチャを行っているときに、前記キャプチャに関する状況が予め決められた停止基準を満たす場合、前記第１の計測装置の前記キャプチャ状況通知手段は、前記停止基準が満たされているという第２の状況を前記分担制御手段に通知し、
前記分担制御手段は、通知された前記第２の状況を契機として、前記分担制御規則に基づいて、前記第１の計測装置から前記第２の計測装置に前記キャプチャを交替させることを決定する、
ことを特徴とする請求項１に記載のパケットキャプチャシステム。
【請求項３】
前記分担制御規則は、前記複数の計測装置の間で前記キャプチャを分担する分担順序を静的に定めていることを特徴とする請求項１または２に記載のパケットキャプチャシステム。
【請求項４】
前記分担制御規則は、前記第２の状況が前記第１の計測装置の前記キャプチャ状況通知手段から通知されたときに、前記複数の計測装置のうち前記第１の計測装置以外の１つ以上の不活性計測装置に問い合わせる問い合わせ事項と、前記問い合わせ事項に対する応答の中から１つの応答を選択するための選択基準とを含み、
前記パケットキャプチャシステムは、前記分担制御規則にしたがって前記問い合わせ事項を前記不活性計測装置に問い合わせる問い合わせ手段をさらに備え、
前記分担制御手段は、前記問い合わせ手段による問い合わせに対する前記不活性計測装置からの前記応答の中から前記選択基準によって１つの応答を選択し、選択した前記１つの応答を返した計測装置を前記第２の計測装置として決定する、
ことを特徴とする請求項２に記載のパケットキャプチャシステム。
【請求項５】
前記問い合わせ事項は、前記１つ以上の不活性計測装置それぞれの負荷に関し、
前記選択基準は、前記１つ以上の不活性計測装置からの前記応答のうち最も低い負荷を示す応答を選択するという基準である、
ことを特徴とする請求項４に記載のパケットキャプチャシステム。
【請求項６】
前記停止基準は、前記第１の計測装置がキャプチャするパケットの個数、前記第１の計測装置が前記キャプチャを行う時間、または前記第１の計測装置の負荷に関することを特徴とする請求項２から５のいずれか１項に記載のパケットキャプチャシステム。
【請求項７】
前記複数の計測装置は、前記ネットワーク上を流れるパケットをキャプチャすると、キャプチャ時刻と関連付けて前記キャプチャしたパケットを記憶し、
前記集計手段は、前記複数の計測装置から前記キャプチャ時刻も収集し、
前記パケットキャプチャシステムは、前記重複パケットに前記第１と前記２の計測装置がそれぞれ関連付けた第１と第２のキャプチャ時刻の差に基づいて、前記重複なく復元した一連のパケットにそれぞれ関連付けられている前記キャプチャ時刻を調整し、基準の時計で表した時刻に補正する相対時刻調整手段をさらに備える、
ことを特徴とする請求項１から６のいずれか１項に記載のパケットキャプチャシステム。
【請求項８】
前記第１の計測装置から前記第２の計測装置への前記キャプチャの交替において前記第１と前記第２の計測装置が重複してキャプチャする重複パケットに関する重複パケット条件として、前記重複パケットの数、種類、送信元、または宛先を含む条件を、前記複数の計測装置に指定する重複パケット指定手段をさらに備え、
前記第１の状況は、前記分担指示手段から前記キャプチャの開始が指示された後に、前記重複パケット指定手段により指定された前記重複パケット条件を満たす１つ以上のパケットを前記第２の計測装置がキャプチャしたという状況である、
ことを特徴とする請求項１から７のいずれか１項に記載のパケットキャプチャシステム。
【請求項９】
前記重複パケット条件は、前記重複パケットの前記種類を、一定間隔で送信されるビーコンパケットであると指定する情報を含むことを特徴とする請求項８に記載のパケットキャプチャシステム。
【請求項１０】
前記キャプチャ状況通知手段は、前記ネットワークとは異なる通信経路を介して前記状況を前記分担制御処理手段に通知することを特徴とする請求項１から９のいずれか１項に記載のパケットキャプチャシステム。
【請求項１１】
同一のネットワーク上に接続された複数の計測装置を備えるパケットキャプチャシステムが実行するパケットキャプチャ方法であって、
前記複数の計測装置のうち第１の計測装置に前記ネットワーク上を流れるパケットのキャプチャの開始を指示し、
前記第１の計測装置に、キャプチャしたパケットの個数、前記キャプチャを行う時間、または前記第１の計測装置の負荷に関して予め決められた停止基準が満たされるか否かを監視させ、
前記停止基準が満たされたとき、前記第１の計測装置に、前記停止基準が満たされたという第１の状況を通知させ、
前記第１の状況の通知を契機として、予め決められた分担制御規則に基づいて、前記複数の計測装置のうち第２の計測装置に前記キャプチャを交替させることを決定し、
前記キャプチャを開始するよう前記第２の計測装置に指示し、
前記第２の計測装置が実際にパケットをキャプチャしたとき、前記第２の計測装置に前記パケットを実際にキャプチャしたという第２の状況を通知させ、
前記第２の状況の通知の後に、前記第１の計測装置に前記キャプチャの停止を指示し、  前記複数の計測装置がそれぞれキャプチャしたパケットを収集し、
前記第１の計測装置と前記第２の計測装置が重複してキャプチャしたために前記収集したパケットの中に重複して含まれるパケットを重複パケットとして特定することで、前記ネットワーク上を流れる一連のパケットを重複なく復元する、
ことを特徴とするパケットキャプチャ方法。
【請求項１２】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットをキャプチャする情報処理装置であって、
前記ネットワーク上を流れるパケットのキャプチャの開始と停止を、前記情報処理装置と通信可能な分担制御処理手段から与えられる指示にしたがって制御するキャプチャ制御手段と、
前記キャプチャ制御手段による制御にしたがって行われる前記キャプチャに関する状況を前記分担制御処理手段に通知するキャプチャ状況通知手段とを備え、
前記分担制御処理手段から前記キャプチャの開始が指示されると、
前記キャプチャ制御手段は前記キャプチャを開始する制御を行い、
前記キャプチャ状況通知手段は、キャプチャするパケットの個数、前記キャプチャを行う時間、または前記情報処理装置の負荷に関して予め決められた停止基準が満たされるか否かの監視を開始し、
前記キャプチャ状況通知手段はさらに、実際にパケットをキャプチャすると前記パケットを実際にキャプチャしたという状況を前記分担制御処理手段に通知し、
前記停止基準が満たされたとき、
前記キャプチャ状況通知手段は、前記停止基準が満たされたという状況を前記分担制御処理手段に通知し、
前記キャプチャ制御手段は、前記分担制御処理手段から前記キャプチャの停止の指示を受けてから、前記キャプチャを停止させる制御を行う、
ことを特徴とする情報処理装置。
【請求項１３】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットのキャプチャを行う複数の計測装置と通信可能な情報処理装置であって、
予め決められた分担制御規則と、前記複数の計測装置が通知してくる前記キャプチャに関する状況とに基づいて、前記複数の計測装置のいずれに前記キャプチャを開始または停止させるかを決定する分担制御手段と、
前記分担制御手段の決定にしたがって前記複数の計測装置に前記キャプチャの開始または停止を指示する分担指示手段とを備え、
前記分担制御手段が第１の計測装置から第２の計測装置に前記キャプチャを交替させることを決定すると、前記分担指示手段は、前記キャプチャを開始するよう前記第２の計測装置に指示し、前記第２の計測装置がパケットを実際にキャプチャしたという状況を前記第２の計測装置が通知してきた後に、前記第１の計測装置に前記キャプチャの停止を指示する、
ことを特徴とする情報処理装置。
【請求項１４】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットをキャプチャする情報処理装置に、
前記ネットワーク上を流れるパケットのキャプチャの開始と停止を、前記情報処理装置と通信可能な分担制御処理手段から与えられる指示にしたがって制御するキャプチャ制御ステップと、
前記キャプチャ制御ステップによる制御にしたがって行われる前記キャプチャに関する状況を前記分担制御処理手段に通知するキャプチャ状況通知ステップとを実行させ、
前記分担制御処理手段から前記キャプチャの開始が指示されると、さらに
前記キャプチャを開始する制御を行うキャプチャ開始ステップと、
キャプチャするパケットの個数、前記キャプチャを行う時間、または前記情報処理装置の負荷に関して予め決められた停止基準が満たされるか否かの監視を開始する監視開始ステップと、
実際にパケットをキャプチャしたとき前記パケットを実際にキャプチャしたという状況を前記分担制御処理手段に通知する第１の通知ステップとを実行させ、
前記停止基準が満たされたときにはさらに、
前記停止基準が満たされたという状況を前記分担制御処理手段に通知する第２の通知ステップと、
前記分担制御処理手段から前記キャプチャの停止の指示を受けてから、前記キャプチャを停止させる制御を行う停止ステップとを実行させる、
ことを特徴とするプログラム。
【請求項１５】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットのキャプチャを行う複数の計測装置と通信可能な情報処理装置に、前記複数の計測装置間での前記キャプチャの分担を制御させるプログラムであって、
該プログラムは前記情報処理装置に、
予め決められた分担制御規則と、前記複数の計測装置が通知してくる前記キャプチャに関する状況とに基づいて、前記複数の計測装置のいずれに前記キャプチャを開始または停止させるかを決定する決定ステップと、
前記決定ステップにおける決定にしたがって前記複数の計測装置に前記キャプチャの開始または停止を指示する指示ステップとを実行させ、
前記決定ステップにおいて、第１の計測装置から第２の計測装置に前記キャプチャを交替させると決定されると、前記プログラムは、前記指示ステップにおいて前記情報処理装置に、前記キャプチャを開始するよう前記第２の計測装置に指示させるとともに、前記第２の計測装置がパケットを実際にキャプチャしたという状況を前記第２の計測装置が通知してきた後に、前記第１の計測装置に前記キャプチャの停止を指示させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパケットキャプチャ技術に関する。
【背景技術】
【０００２】
近年、様々な分野でパケット通信ネットワークを流れるパケットをキャプチャ（すなわち取得）することが行われている。例えば、ＩＰ（Internet Protocol）ネットワークの監視やＶｏＩＰ（Voice over Internet Protocol）の品質管理のためにパケットのキャプチャが行われている。特に、近年では日本国内のＶｏＩＰサービス（例えばＩＰ電話サービス）の市場規模および日本国内企業のＶｏＩＰ機器の市場規模は急激に拡大しており、さらに高い成長率が見込まれることから、ＶｏＩＰ品質管理システムの重要性も高まっている。【０００３】
また、パケットキャプチャの目的によっては、ネットワーク上の監視対象ポイントを流れるすべてのパケットを漏らさずキャプチャするフルキャプチャ（full capture）が行われる。例えば、フォレンジック（forensic）製品ではフルキャプチャが行われる。もちろん、ＩＰネットワーク監視システムやＶｏＩＰ品質管理がフルキャプチャ装置を含むこともある。【０００４】
ＶｏＩＰによる通話の品質に影響する因子の１つは、一定間隔で送信されるパケット同士の間隔に、ネットワークの影響で、宛先において揺れ（ジッタ（jitter）ともいう）が生じてしまうことである。よって、例えば、呼が集中するネットワークの経路上に予め１台の監視装置を配置し、品質を計測する対象の通話に関わるパケットをすべてキャプチャし、ジッタをリアルタイムに解析することで、ＶｏＩＰによる通話の品質を監視することも可能である。【０００５】
また、通信品質管理のためには、ジッタだけではなく、トラフィック量、パケットの消失率（ロス率）、送信元から宛先までの遅延時間など、様々な量が計測の対象となりうる。計測対象によっては、フルキャプチャが必要となることもある。なお、計測された通信品質値を、ネットワーク管理者などが予め設定した管理基準値と比較することにより、通信状態を自動的に判断し、パケット通信ネットワークを監視することができる。【０００６】
しかし、通話本数が大量になった場合であっても１台の監視装置によりフルキャプチャを実現し、かつリアルタイムの解析処理を続行可能としようとすると、高価な専用装置が必要になることがありうる。なぜなら、汎用の監視装置が備えるバッファメモリの容量、および汎用の監視装置が備えるＣＰＵ（Central Processing Unit）の処理能力では、ピーク時の通信量に対処しきれず、フルキャプチャとリアルタイムの解析が保証されない場合があるからである。例えば、汎用の監視装置を使うと、通話本数が大量になった場合にはバッファオーバフローによるキャプチャ漏れが生じるかもしれない。【０００７】
そこで、高価な装置を使わずにフルキャプチャを実現するため、複数の装置でキャプチャを分担することにより大量のＩＰパケットをキャプチャすることも考えられる。
例えば、複数のトラフィック収集・分析装置と、分担調整手段とを有するトラフィック収集・分析システムが知られている。複数のトラフィック収集・分析装置は、同一のネットワークセグメント上に接続され、各々がトラフィック収集・分析手段を具備する。また、分担調整手段はトラフィック収集・分析手段における分担を調整する。分担調整手段は、ネットワークセグメント上のトラフィックを、各トラフィック収集・分析手段に取りこぼしなく分担させて収集・分析させる。【０００８】
このトラフィック収集・分析システムでは、例えば、各トラフィック収集・分析装置間で時間を同期させ、それぞれの収集プロセス（収集オブジェクト）にトラフィックを収集する時間帯を割り当てることで分担を決める方法が用いられる。つまり、各収集プロセスは、割り当てられた時間帯内にそのセグメントを通過したパケットに関してのみ収集・分析処理を行うように決められる。この場合、切り換え時に取りこぼしが発生してしまうのを防ぐために、同期の精度の分だけ、各収集オブジェクトの連続収集時間相互間に余裕（すなわち重なり）を持たせる必要がある。
【特許文献１】特開平１１−８８３２８号公報
【発明の開示】
【０００９】
以下に開示する技術の目的は、複数の計測装置間での時刻同期を必要とせずに、複数の計測装置によるパケットのフルキャプチャを実現することである。
開示の技術の第１の態様によれば、パケットキャプチャシステムが提供される。前記パケットキャプチャシステムは、同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットをキャプチャする複数の計測装置を備える。また、前記パケットキャプチャシステムは、前記ネットワーク上を流れるパケットのキャプチャの、前記複数の計測装置間での分担を制御する分担制御処理手段を備える。さらに、前記パケットキャプチャシステムは、前記複数の計測装置がそれぞれキャプチャしたパケットを収集する集計手段を備える。
【００１０】
前記複数の計測装置のそれぞれは、前記キャプチャの開始と停止を制御するキャプチャ制御手段と、前記キャプチャ制御手段による制御にしたがって行われる前記キャプチャに関する状況を前記分担制御処理手段に通知するキャプチャ状況通知手段とを備える。
【００１１】
また、前記分担制御処理手段は、予め決められた分担制御規則と前記キャプチャ状況通知手段により通知される前記状況に基づいて、前記複数の計測装置のいずれに前記キャプチャを開始または停止させるかを決定する分担制御手段を備える。前記分担制御処理手段はさらに、前記分担制御手段の決定にしたがって複数の計測装置に前記キャプチャの開始または停止を指示する分担指示手段を備える。
【００１２】
そして、前記分担制御手段が第１の計測装置から第２の計測装置に前記キャプチャを交替させることを決定すると、前記分担指示手段は、前記キャプチャを開始するよう前記第２の計測装置に指示する。また、前記分担指示手段は、前記第２の計測装置がパケットを実際にキャプチャしたことを表す第１の状況を前記第２の計測装置の前記キャプチャ状況通知手段が前記分担制御処理手段に通知した後に、前記第１の計測装置に前記キャプチャの停止を指示する。
【００１３】
なお、前記集計手段は、前記第１と前記第２の計測装置が重複してキャプチャしたために前記収集したパケットの中に重複して含まれるパケットを重複パケットとして特定することで、前記ネットワーク上を流れる一連のパケットを重複なく復元する。
【００１４】
開示の技術の第２の態様によれば、第１の態様における前記パケットキャプチャシステムが実行するのと同様の方法が提供される。
また、開示の技術の第３と第４の態様によれば、第１の態様における前記計測装置および前記分担制御処理手段としてそれぞれ機能する情報処理装置が提供される。さらに、開示の技術の第５および第６の態様によれば、情報処理装置が第３と第４の態様においてそれぞれ実行する処理を当該情報処理装置に実行させるためのプログラムが提供される。
【００１５】
開示の技術によれば、いずれの態様においても、第１の計測装置がキャプチャを停止する前に第２の計測装置が実際にパケットをキャプチャしているので、第１と第２の計測装置の双方によりキャプチャされるパケットが存在する。よって、複数の計測装置間での時刻同期を行わなくても、複数の計測装置によるパケットのフルキャプチャが実現される。
【図面の簡単な説明】
【００１６】
【図１】第１〜第３実施形態に共通のキャプチャ動作を説明する図である。
【図２】第１〜第３実施形態に共通の集計動作を説明する図である。
【図３】第１〜第３実施形態が適用されるネットワークの例を示す構成図である。
【図４】第１実施形態における通信品質測定システムの構成図である。
【図５】第１実施形態におけるキャプチャ動作を説明する図である。
【図６】第１実施形態におけるキャプチャ動作のフローチャートである。
【図７】第１実施形態における集計動作のフローチャートである。
【図８】ＩＰｖ４（IP version 4）のＩＰパケットの形式を説明する図である。
【図９】第２実施形態における通信品質測定システムの構成図である。
【図１０】第２実施形態におけるキャプチャ動作を説明する図である。
【図１１】第２実施形態におけるキャプチャ動作のフローチャートである。
【図１２】第３実施形態における通信品質測定システムの構成図である。
【図１３】第３実施形態におけるキャプチャ動作のフローチャートである。
【図１４】第３実施形態における集計動作を説明する図である。
【図１５】第３実施形態における集計動作のフローチャートである。
【発明を実施するための最良の形態】
【００１７】
以下、実施形態について、図面を参照しながら詳細に説明する。まず、図１〜図３を参照して第１〜第３実施形態の共通点を説明してから、図４〜図８を参照して第１実施形態について説明し、図９〜図１１を参照して第２実施形態について説明し、図１２〜図１５を参照して第３実施形態について説明する。最後にその他の実施形態について説明する。【００１８】
図１は、第１〜第３実施形態に共通のキャプチャ動作を説明する図である。図１の横軸は時間軸である。
第１〜第３実施形態のいずれにおいても、複数の計測装置が交替しながらパケットのキャプチャを行う。すなわち、複数の計測装置は時分割式にパケットのキャプチャを分担する。詳しくは後述するが、第１〜第３実施形態の違いは、交替の契機や、交替の順序の決め方などである。【００１９】
図１のキャプチャ動作によれば、計測装置Ａ〜Ｃと分担制御処理装置とを含むパケットキャプチャシステムにおいて、計測装置Ａ〜Ｃの時刻同期を行わなくても、目的のパケットを漏れなくすべてキャプチャするフルキャプチャを実現することができる。【００２０】
パケットキャプチャシステムの構成の具体例は図３とともに後述するが、計測装置Ａ〜Ｃは、例えばネットワークタップ（以下では単に「タップ」という）を介して、同一ネットワーク上に接続されており、ネットワーク上を流れるパケットをキャプチャする。例えば、計測装置Ａ〜Ｃは１つのコリジョンドメイン（collision domain）に含まれてもよい。【００２１】
また、詳細は後述するが、分担制御処理装置は、計測装置Ａ〜Ｃとそれぞれ通信可能な装置である。分担制御処理装置は、計測装置Ａ〜Ｃのいずれかの内部に組み込まれていてもよく、計測装置Ａ〜Ｃとは独立した外部装置であってもよい。【００２２】
以下では、個々の計測装置がネットワーク上を流れるパケットをキャプチャする期間を「計測区間」という。
図１では、計測区間Ｔ１１、Ｔ１２、およびＴ１３において、それぞれ計測装置Ａ、Ｂ、およびＣがパケットをキャプチャする。図１に示すとおり、計測区間Ｔ１１とＴ１２は一部が重なっており、計測区間Ｔ１２とＴ１３は一部が重なっている。隣り合う２つの計測区間が適切に重なるように各計測装置Ａ〜Ｃの動作を分担制御処理装置が制御することにより、フルキャプチャが保証される。【００２３】
図１はさらに、計測区間Ｔ１１とＴ１２の重なりの詳細を示している。図１の例では、キャプチャに関する状況が、計測装置ＡがパケットＰ３をキャプチャした時点からパケットＰ４をキャプチャした時点までのいずれかの時点で変化し、予め決められた基準（以下「停止基準」という）が満たされる。停止基準の詳細は後述するが、停止基準が満たされると、キャプチャを実行中の計測装置Ａはキャプチャの停止のための準備を開始する。【００２４】
つまり、計測装置ＡがパケットＰ１をキャプチャした時点、およびパケットＰ２をキャプチャした時点では停止基準が満たされていないので、計測装置Ａはキャプチャを続ける。また、停止基準が満たされた後も、計測装置Ａは、すぐにはキャプチャを停止しない。したがって、計測装置ＡはパケットＰ３の後続のパケットＰ４もキャプチャしている。【００２５】
停止基準が満たされることは、計測装置Ａから他の計測装置へのキャプチャの交替の契機となる。具体的には、計測装置Ａは、停止基準が満たされたことを認識すると、ステップＳ１０１において、分担制御処理装置に、停止基準が満たされたという状況を通知する。換言すれば、計測装置ＡはステップＳ１０１において、キャプチャを停止する予定であることを分担制御処理装置に通知する。【００２６】
分担制御処理装置は、ステップＳ１０１の通知を受けると、次にキャプチャを行う計測装置を、予め決められた規則（以下「分担制御規則」という）に基づいて決定する。分担制御規則の具体例は後述する。図１の例は、次にキャプチャを行う計測装置として、分担制御処理装置が計測装置Ｂを選択した場合の例である。【００２７】
分担制御処理装置は、次にキャプチャを行う計測装置を計測装置Ｂに決定すると、ステップＳ１０２において、計測装置Ｂにパケットのキャプチャを開始するよう指示する。そして、計測装置Ｂは指示にしたがってパケットのキャプチャを開始し、計測区間Ｔ１２が開始する。【００２８】
図１の例では、ステップＳ１０２の後にネットワーク上をパケットＰ４が流れるので、パケットＰ４は計測装置ＡとＢの双方にキャプチャされる。以下、キャプチャを担当する計測装置の交替時に２つの計測装置が重複してキャプチャするパケットを「重複パケット」という。【００２９】
計測装置Ｂは、パケットＰ４をキャプチャした後、ステップＳ１０３において、「実際にパケットＰ４をキャプチャした」という状況を分担制御処理装置に通知する。なお、図１の例では１つのパケットＰ４をキャプチャしたことを契機にステップＳ１０３の通知が行われるが、実施形態によっては、複数のパケットをキャプチャしてから計測装置ＢがステップＳ１０３の通知を行ってもよい。【００３０】
ステップＳ１０３の通知は、重複パケットに関して予め決められた条件（以下「重複パケット条件」という）にしたがってなされる。重複パケット条件の詳細は後述する。図１の例では、例えば「ステップＳ１０２の指示にしたがってキャプチャを開始した後、計測装置Ｂがキャプチャしたパケットの個数が、１個に達した」という条件を重複パケット条件として用いてもよい。【００３１】
分担制御処理装置は、ステップＳ１０３の通知を受けると、続いてステップＳ１０４において、計測装置Ａにキャプチャの停止を指示する。そして、計測装置Ａは指示にしたがってパケットのキャプチャを停止し、計測区間Ｔ１１が終了する。【００３２】
以上の動作によれば、計測装置Ｂがキャプチャ動作を開始したことではなく、実際に計測装置Ｂがパケットのキャプチャに成功したこと（より正確には重複パケット条件が満たされたこと）を契機として、計測装置Ａがキャプチャを停止する。したがって、少なくとも１つのパケットが重複して計測装置ＡとＢによりキャプチャされることが保証される。【００３３】
よって、図１のキャプチャ動作によれば、複数の計測装置が交替しながらパケットをキャプチャするパケットキャプチャシステムにおいて、あるパケットがどの計測装置にもキャプチャされない、いわゆる「キャプチャ漏れ」を防ぐことができる。換言すれば、図１のキャプチャ動作によれば、フルキャプチャを実現することができる。【００３４】
また、上記の説明から明らかなとおり、図１のキャプチャ動作は、計測装置Ａ〜Ｃ間での時刻同期を必要としない。そして、計測装置Ａ〜Ｃが時計を備えていない場合であっても、図１のキャプチャ動作によればフルキャプチャが保証される。【００３５】
例えば、複数の計測装置間で時刻同期を行い、隣り合う２つの計測区間が同期の精度に応じた長さの重なりを有するように、各計測装置の計測区間の時間割を予め決める比較例を想定し、この比較例と比較すると、図１の方法は次の点で有利である。【００３６】
すなわち、１回時刻同期を行っても、いずれは各計測装置の時計にずれが生じるので、比較例においては繰り返し時刻同期を行う必要があるが、図１の方法には時刻同期を行う必要がまったくない。また、比較例では同期の精度を予め調べる必要がある。【００３７】
さらに、比較例において計測装置の経年変化や環境の変化などが同期の精度に影響する場合には、キャプチャ漏れを防ぐために重なりの範囲を大きめに設定しなくてはならないかもしれない。すると、計測装置に必要以上の負荷がかかることがある。他方、図１の方法では、重複パケット条件に応じて決められた１つまたは複数のパケットが、隣り合う２つの計測区間に対応する２つの計測装置で重複してキャプチャされさえすれば、前の計測装置はキャプチャを停止することができる。よって、停止基準と重複パケット条件が適切に定められていれば、計測装置に必要以上の負荷はかからない。【００３８】
以上、図１を参照して、第１〜第３実施形態に共通のキャプチャ動作とその利点について説明した。
続いて、パケットキャプチャシステムが備える集計処理装置が、複数の計測装置によりそれぞれキャプチャされたパケットを収集してから行う集計動作について、図２を参照して説明する。なお、詳細は後述するが、集計処理装置は、計測装置Ａ〜Ｃとそれぞれ通信可能な装置である。集計処理装置は、計測装置Ａ〜Ｃのいずれかの内部に組み込まれていてもよく、計測装置Ａ〜Ｃとは独立した外部装置であってもよい。【００３９】
図２は、第１〜第３実施形態に共通の集計動作を説明する図である。集計処理装置による集計動作には、下記の２つのステップが含まれる。
集計動作の第１ステップは、収集したパケットの中に含まれる重複パケットを特定（すなわち同定）することにより、ネットワーク上を流れる一連のパケットを重複なく復元するステップである。図１の方法によればキャプチャ漏れがないので、図２の集計動作により、漏れも重複もなく一連のパケットを復元することが可能となる。【００４０】
例えば、図２には元のデータとして１５個のパケットＰ１〜Ｐ１５が示されている。また、図２の例では、計測装置Ａが計測区間Ｔ２１においてパケットＰ１〜Ｐ６をキャプチャし、計測装置Ｂが計測区間Ｔ２２においてパケットＰ６〜１１をキャプチャし、計測装置Ｃが計測区間Ｔ２３においてパケットＰ１１〜Ｐ１５をキャプチャしている。【００４１】
図２に示すとおり、計測区間Ｔ２１とＴ２２は重なっており、パケットＰ６は計測装置ＡとＢに重複してキャプチャされる重複パケットである。同様に、計測区間Ｔ２２とＴ２３は重なっており、パケットＰ１１は計測装置ＢとＣに重複してキャプチャされる重複パケットである。図２と後述の図１４では重複パケットを四角形で表し、それ以外のパケットを円で表している。【００４２】
図２の例では、集計処理装置は、計測装置Ａから６個のパケットＰ１〜Ｐ６を収集し、計測装置Ｂから６個のパケットＰ６〜Ｐ１１を収集し、計測装置Ｃから５個のパケットＰ１１〜Ｐ１５を収集する。換言すれば、集計処理装置は延べ１７個（＝６＋６＋５）のパケットを収集する。【００４３】
なお、各計測装置は、複数のパケットを、キャプチャした順序が保たれるように記憶しており、集計処理装置は、各計測装置がキャプチャした複数のパケットを、キャプチャされた順序にしたがって収集する。順序を保つことは、各計測装置に時計がなくても可能である。【００４４】
そして、集計動作の第１ステップでは、集計処理装置は、パケットＰ６とＰ１１が重複パケットであることを同定する。詳しくは後述するが、集計処理装置は、２つのパケットが等しいか否かを判断するために、２つのパケットのパケットヘッダに含まれる情報同士を比較してもよい。【００４５】
集計処理装置は、後述の第２ステップの後で、計測装置ＡとＢの両方から重複して収集したパケットＰ６のうちの１個を廃棄し、計測装置ＢとＣの両方から重複して収集したパケットＰ１１のうちの１個を廃棄する。重複パケットの一方を廃棄することで、集計処理装置は、重複のない一連の１５個のパケットＰ１〜Ｐ１５を得ることができる。【００４６】
また、集計処理装置は上記のように順序を保ってパケットを収集するので、パケットＰ１〜Ｐ６の中での順序と、パケットＰ６〜Ｐ１１の中での順序と、パケットＰ１１〜Ｐ１５の中での順序を認識している。したがって、重複のないよう復元した１５個のパケットＰ１〜Ｐ１５の中での順序も集計処理装置は認識することができる。【００４７】
以上により、複数の計測装置が分担しながらパケットＰ１〜Ｐ１５をキャプチャする場合でも、パケットキャプチャシステムは、漏れも重複もなくしかも順序を保って、一連のパケットＰ１〜Ｐ１５を復元することができる。復元されたパケットＰ１〜Ｐ１５は、例えば監査証跡として記憶装置に記憶されてもよいし、品質解析システムに出力されてもよい。【００４８】
集計動作の第２ステップは、省略することもできるが、例えばＶｏＩＰサービスなどのストリーミングデータを提供するサービスにおける品質管理などを目的として、行われてもよい。具体的には、例えばジッタ解析のためなどに、第２ステップが行われてもよい。【００４９】
なお、第２ステップが行われるのは、下記３つの条件が成立する場合である。
・各計測装置が時計を備えている。
・各計測装置は、キャプチャしたパケットをキャプチャ時刻と関連付けて記憶する。【００５０】
・集計処理装置は、パケットだけでなくキャプチャ時刻も収集する。
第２ステップは、具体的には、第１ステップにより復元された漏れも重複もない一連のパケットＰ１〜Ｐ１５にそれぞれ関連付けられているキャプチャ時刻を調整し、基準の時計で表した時刻に補正するステップである。第２ステップでの補正は、異なる２つの計測装置が同じ重複パケットにそれぞれ関連付けたキャプチャ時刻の差に基づく。【００５１】
例えば、計測装置ＡがキャプチャしたパケットＰ１〜Ｐ６には、計測装置Ａの時計で表したキャプチャ時刻が関連付けられている。同様に、計測装置ＢがキャプチャしたパケットＰ６〜Ｐ１１には、計測装置Ｂの時計で表したキャプチャ時刻が関連付けられており、計測装置ＣがキャプチャしたパケットＰ１１〜Ｐ１５には、計測装置Ｃの時計で表したキャプチャ時刻が関連付けられている。【００５２】
どの時計を基準の時計として採用するかは任意であり、計測装置Ａ〜Ｃのいずれかの時計でもよいし、それ以外の時計でもよい。以下では、説明の便宜上、計測装置Ａの時計を基準の時計とする。また、説明の便宜上、計測装置Ｂの時計は計測装置Ａの時計よりも１秒進んでおり、計測装置Ｃの時計は計測装置Ａの時計よりも０．８秒遅れているとする。【００５３】
なお、図２において各横軸は、それぞれの時計での時刻を表す時間軸である。よって、複数の計測装置で同時にキャプチャされるパケットの水平方向の位置が、図２では計測装置間の時計のずれに応じてずれて表されている。例えば、計測装置Ｂの時計が計測装置Ａの時計よりも１秒進んでいるので、計測装置Ａの時間軸上のパケットＰ６の位置よりも計測装置Ｂの時間軸上のパケットＰ６の位置の方が右にある。【００５４】
ここで、基準の時計は計測装置Ａの時計なので、計測装置ＡがキャプチャしたパケットＰ１〜Ｐ６に関連付けたキャプチャ時刻は、補正の必要がない。
また、集計処理装置は、第１ステップにおいてパケットＰ６が重複パケットであると特定している。したがって、パケットＰ６に計測装置ＡとＢがそれぞれ関連付けたキャプチャ時刻の差から、集計処理装置は、「計測装置Ｂの時計は計測装置Ａの時計よりも１秒進んでいる」と認識する。よって、集計処理装置は、パケットＰ７〜Ｐ１１に計測装置Ｂが関連付けたキャプチャ時刻から１秒を引くことで、パケットＰ７〜Ｐ１１のキャプチャ時刻を基準の時計で表した時刻に補正することができる。【００５５】
同様に、集計処理装置は、既にパケットＰ１１が重複パケットであると特定している。よって、集計処理装置は、パケットＰ１１に計測装置ＢとＣがそれぞれ関連付けたキャプチャ時刻の差から、計測装置Ｃの時計は計測装置Ｂの時計よりも１．８秒遅れていることを認識することができる。したがって、集計処理装置は、計測装置Ｂの時計は計測装置Ａの時計よりも１秒進んでいるという認識に基づいて、計測装置Ｃの時計が計測装置Ａの時計よりも０．８秒遅れていることを認識することができる。【００５６】
その結果、集計処理装置は、パケットＰ１２〜Ｐ１５に計測装置Ｃが関連付けたキャプチャ時刻に０．８秒を足すことで、パケットＰ１２〜Ｐ１５のキャプチャ時刻を基準の時計で表した時刻に補正することができる。【００５７】
以上説明した第２ステップにより、重複も漏れもない一連のパケットＰ１〜Ｐ１５のキャプチャ時刻は調整され、同じ１つの基準の時計で表される。よって、調整後のキャプチャ時刻を用いることで、複数の計測区間にわたってキャプチャされたキャプチャを対象とするジッタ解析などが可能となる。【００５８】
続いて、図１と図２で説明した第１〜第３実施形態に共通の動作を実行するパケットキャプチャシステムの構成例について、図３を参照して説明する。上記で説明したパケットキャプチャシステムは、パケットをキャプチャする目的によって、監査証跡を記録するフォレンジックシステムでもよいし、ジッタ解析などを行う品質管理システムでもよい。以下では説明の便宜上、パケットキャプチャシステムの一例として、通信品質測定システムについて主に述べる。【００５９】
図３は、第１〜第３実施形態が適用されるネットワークの例を示す構成図である。
図３のネットワーク１００内に設定された観測地点に、通信品質測定システム１１０が設けられる。通信品質測定システム１１０は、通信品質の解析および管理のために、観測地点におけるトラフィックを観測する。通信品質測定システム１１０は、タップ１１１、１１２、および１１３、ならびに計測装置１１４、１１５、および１１６を含む。【００６０】
観測地点は、具体的にはルータ１２０と１３０で挟まれたセグメントにある。また、ルータ１２０はネットワーク１４０と接続されている。ネットワーク１４０は、例えばＬＡＮ（Local Area Network）である。図３には、ＩＳＰ（Internet Service Provider）により提供されるＷＡＮ（Wide Area Network）１５０によって互いに接続されたネットワーク１４０、１６０、および１７０が例示されている。ネットワーク１６０と１７０も、例えばＬＡＮである。図３におけるＷＡＮ１５０は、ＶｏＩＰによりＩＰ電話サービスを提供するパケット通信ネットワークである。【００６１】
図３の例ではＷＡＮ１５０とネットワーク１４０の間に観測地点があるので、ネットワーク１００に含まれる複数のルータのうち、ネットワーク１４０を外部に接続するルータ１２０と、ルータ１２０に対向するＷＡＮ１５０側のルータ１３０のみを表示している。例えば、ＷＡＮ１５０とネットワーク１６０を接続するルータなどは図示を省略している。【００６２】
ネットワーク１４０には、ＩＰ電話機能を有する電話機１４１および１４２、ならびにＰＣ（Personal Computer）１４３および１４４が、不図示のスイッチングハブなどを介して接続されている。同様に、ネットワーク１６０には、ＩＰ電話機能を有する電話機１６１および１６２、ならびにＰＣ１６３および１６４が、不図示のスイッチングハブなどを介して接続されている。また、ネットワーク１７０には、ＩＰ電話機能を有する電話機１７１および１７２、ならびにＰＣ１７３および１７４が、不図示のスイッチングハブなどを介して接続されている。【００６３】
ＰＣ１４３、１４４、１６３、１６４、１７３、および１７４は、例えば、ＩＰ電話機能を有してもよいし、ＷＡＮ１５０を介して不図示のストリーミングサーバからストリーミングサービスを受けてもよい。【００６４】
以上のように構成された図３のネットワーク１００内の通信品質測定システム１１０において、図１と図２に関して説明した複数の計測装置に相当する装置は、計測装置１１４、１１５、および１１６である。これらの計測装置１１４、１１５、および１１６は、それぞれタップ１１１、１１２、および１１３を介して、ルータ１２０とルータ１３０の間の監視対象の経路に接続されている。よって、計測装置１１４、１１５、および１１６は、監視対象の経路上を流れるパケットを、タップ１１１、１１２、および１１３を介してキャプチャすることができる。【００６５】
また、図１と図２に関して説明した分担制御処理装置と集計処理装置はそれぞれ、図３の例では、計測装置１１４、１１５、および１１６のいずれかの内部に設けられている。詳しくは後述するが、図１と図２に関して説明した分担制御処理装置と集計処理装置と計測装置の機能は、いずれもプログラムによって実現することが可能である。よって、いずれかの計測装置が分担制御処理装置と集計処理装置を兼ねることにより、通信品質測定システム１１０に含まれる装置の数を減らし、通信品質測定システム１１０を小規模化することができる。【００６６】
以上、図１〜図３を参照して第１〜第３実施形態の共通点について説明した。
続いて、図４〜図８を参照して第１実施形態について説明する。
図４は、第１実施形態における通信品質測定システムの構成図である。図４の通信品質測定システム１１０−１は、図３の通信品質測定システム１１０の具体例である。【００６７】
通信品質測定システム１１０−１は、図３の計測装置１１４、１１５、および１１６の具体例である計測装置２００ａ、２００ｂ、および２００ｃを含む。また、通信品質測定システム１１０−１は、図３のタップ１１１、１１２、および１１３の具体例であるタップ２２０ａ、２２０ｂ、および２２０ｃを含む。また、図３に示したルータ１２０と１３０の間の監視対象経路は、図４では監視対象経路２３０として示されている。なお、第１実施形態では、計測装置２００ａが図１と図２に関して説明した分担制御処理装置と集計処理装置の機能を兼ねている。【００６８】
計測装置２００ａは、ＲＡＭ（Random Access Memory）などの書き換え可能なメモリ２０１ａを含み、メモリ２０１ａには、分担制御処理部２０２ａ、集計処理部２０３ａ、およびキャプチャ制御処理部２０４ａの機能を実現するためのプログラムがロードされている。【００６９】
分担制御処理部２０２ａは図１に関して説明した分担制御処理装置と同様の機能を提供し、集計処理部２０３ａは図２に関して説明した集計処理装置と同様の機能を提供する。キャプチャ制御処理部２０４ａは計測装置２００ａが行うパケットのキャプチャを制御する。【００７０】
第１実施形態において分担制御処理部２０２ａは、分担指示部２０５ａ、分担制御部２０６ａ、および重複パケット指定部２０７ａを備え、集計処理部２０３ａは、集計部２０８ａと相対時刻調整部２０９ａを備える。また、キャプチャ制御処理部２０４ａは、キャプチャ状況通知部２１０ａとキャプチャ制御部２１１ａを備える。分担制御処理部２０２ａ、集計処理部２０３ａ、およびキャプチャ制御処理部２０４ａが備えるこれら各部の詳細は、図５〜図７とともに後述する。【００７１】
計測装置２００ａはさらに、メモリ２０１ａにロードされたプログラムを実行することにより分担制御処理部２０２ａ、集計処理部２０３ａ、およびキャプチャ制御処理部２０４ａの機能を実現するＣＰＵ（Central Processing Unit）２１２ａを備える。【００７２】
また、計測装置２００ａは、タップ２２０ａと接続された通信部２１３ａと、タップ２２０ａを介さずに監視対象経路２３０と接続された通信部２１４ａを備える。例えば、２つの物理的な通信ポートと、各通信ポートを介しての通信のインタフェイスを提供するデバイスドライバにより、通信部２１３ａと２１４ａが実現されてもよい。【００７３】
計測装置２００ｂは、メモリ２０１ｂを含み、メモリ２０１ｂにキャプチャ制御処理部２０４ｂの機能を実現するためのプログラムがロードされている点で計測装置２００ａと類似する。また、キャプチャ制御処理部２０４ｂは、キャプチャ制御処理部２０４ａと同様に、キャプチャ状況通知部２１０ｂとキャプチャ制御部２１１ｂを含む。【００７４】
また、計測装置２００ｂは、メモリ２０１ｂにロードされたプログラムを実行することによりキャプチャ制御処理部２０４ｂの機能を実現するＣＰＵ２１２ｂを備える。さらに、計測装置２００ｂは、タップ２２０ｂと接続された通信部２１３ｂと、タップ２２０ｂを介さずに監視対象経路２３０と接続された通信部２１４ｂも備える。【００７５】
計測装置２００ｃは計測装置２００ｂと同様の構成なので、詳しい説明を省略する。
なお、以上説明した計測装置２００ａ、２００ｂ、および２００ｃは、専用の機器により実現されてもよいが、汎用的なコンピュータにより実現されてもよい。また、分担制御処理部２０２ａ、集計処理部２０３ａ、ならびにキャプチャ制御処理部２０４ａ、２０４ｂ、および２０４ｃの機能が、プログラムではなくハードウェア回路によって実現されてもよい。なお、各部の機能を実現するプログラムは、磁気ディスクや光ディスクなどのコンピュータ読み取り可能な記憶媒体に格納され、記憶媒体から各計測装置２００ａ、２００ｂ、および２００ｃに読み出されてもよい。【００７６】
図４において、計測装置２００ａ、２００ｂ、および２００ｃは、監視対象経路２３０上に挿入されたタップ２２０ａ、２２０ｂ、および２２０ｃをそれぞれ介して、監視対象経路２３０に接続されている。よって、監視対象経路２３０を通って図３のルータ１２０と１３０の間を流れるパケットを、計測装置２００ａ、２００ｂ、および２００ｃはそれぞれタップ２２０ａ、２２０ｂ、および２２０ｃを介してキャプチャすることができる。【００７７】
なお、本実施形態におけるタップ２２０ａ、２２０ｂ、および２２０ｃは、データ・インジェクション（data injection）機能を持たない一般的なネットワークタップである。すなわち、タップ２２０ａ、２２０ｂ、および２２０ｃをそれぞれ介して、通信部２１３ａ、２１３ｂ、および２１３ｃから監視対象経路２３０へのデータ送信を行うことができない。【００７８】
しかし、図１のキャプチャ動作は、各計測装置が分担制御処理装置との間で通信可能であることが前提である。換言すれば、本実施形態では、計測装置２００ａ、２００ｂ、および２００ｃの間の通信経路が存在することが前提である。【００７９】
本実施形態は、計測装置２００ａ、２００ｂ、および２００ｃの間の通信経路として、監視対象経路２３０を利用する例である。よって、計測装置２００ａ、２００ｂ、および２００ｃは、通信部２１４ａ、２１４ｂ、および２１４ｃをそれぞれ介して監視対象経路２３０に接続されている。その結果、計測装置２００ａ、２００ｂ、および２００ｃから監視対象経路２３０へとデータを送信することが可能となり、計測装置２００ａ、２００ｂ、および２００ｃの間での通信経路が確保される。【００８０】
なお、通信部２１４ａ、２１４ｂ、および２１４ｃのそれぞれを介した、計測装置２００ａ、２００ｂ、および２００ｃの監視対象経路２３０への接続経路は任意であるので、図４では詳細な図示を省略している。例えば、図３のルータ１２０と１３０に挟まれた図４の監視対象経路２３０上の任意の箇所に、３台の不図示のハブが存在し、３台のハブと通信部２１４ａ、２１４ｂ、および２１４ｃとがそれぞれケーブルによって接続されていてもよい。【００８１】
また、タップ２２０ａ、２２０ｂ、および２２０ｃは、監視対象経路２３０上をルータ１２０からルータ１３０へ向かって流れるパケットと、逆方向に流れるパケットを、まとめて１つの物理ポートから出力するタイプでもよい。その場合、通信部２１３ａ、２１３ｂ、および２１３ｃを実現する物理ポートはそれぞれ１つでよい。【００８２】
あるいは、タップ２２０ａ、２２０ｂ、および２２０ｃは、監視対象経路２３０上をルータ１２０からルータ１３０へ向かって流れるパケットと、逆方向に流れるパケットを、別々の２つのポートから出力するタイプでもよい。その場合、通信部２１３ａ、２１３ｂ、および２１３ｃを実現する物理ポートはそれぞれ２つである。【００８３】
なお、キャプチャ制御処理部２０４ａ、２０４ｂ、および２０４ｃは、通信部２１３ａ、２１３ｂ、および２１３ｃを介して流入してきたパケットのうち、計測装置２００ａ、２００ｂ、および２００ｃの間の通信のためのパケット（以下では「管理パケット」という）を破棄するための制御をさらに行ってもよい。なぜなら、管理パケットは通信部２１４ａ、２１４ｂ、および２１４ｃでも受信されるためである。【００８４】
なお、あるパケットが管理パケットであるか否かは、例えば、パケットの送信元または宛先が計測装置２００ａ、２００ｂ、または２００ｃであるか否かによって判断することができる。【００８５】
あるいは、図３のルータ１２０と１３０の間の通信にはネットワーク層のプロトコルとしてＩＰのみが使われる場合、管理パケットの通信には、例えばＩＰＸ（Internetwork Packet eXchange）などのＩＰ以外のプロトコルを使う実施形態も可能である。その場合、キャプチャ制御処理部２０４ａ、２０４ｂ、および２０４ｃは、ＩＰＸパケットを廃棄し、ＩＰパケットのみをキャプチャするよう、計測装置２００ａ、２００ｂ、および２００ｃそれぞれのキャプチャ動作を制御してもよい。【００８６】
以上、図４を参照して第１実施形態における通信品質測定システム１１０−１の構成について説明した。
続いて、通信品質測定システム１１０−１の各部の動作を、図５〜図８とともに説明する。図５と図６は、図１の具体例に相当し、図７は図２の具体例に相当する。【００８７】
図５は、第１実施形態におけるキャプチャ動作を説明する図である。第１実施形態において、図１に関して説明した分担制御規則は、複数の計測装置２００ａ、２００ｂ、および２００ｃの間でキャプチャを分担する順序を静的に定める規則である。また、図１に関して説明した停止基準と重複パケット条件も、第１実施形態では静的に予め決められている。【００８８】
分担制御規則として静的に定められる分担順序、および停止基準は、分担制御部２０６ａに設定される。また、重複パケット条件は、重複パケット指定部２０７ａに設定される。【００８９】
例えば、分担順序と停止基準は、不図示の入力装置を介して分担制御部２０６ａに入力されてもよく、重複パケット条件も、不図示の入力装置を介して重複パケット指定部２０７ａに入力されてもよい。あるいは、停止基準と重複パケット条件は、計測装置２００ａが備える不図示の不揮発性記憶装置に予め記録され、分担制御部２０６ａと重複パケット指定部２０７ａにそれぞれ読み込まれてもよい。【００９０】
以下に、分担順序、停止基準、および重複パケット条件の組み合わせの例として（１ａ）〜（１ｇ）を挙げる。
（１ａ）分担順序、停止基準、および重複パケット条件がすべて一律な例
分担順序は、「計測装置２００ａ→計測装置２００ｂ→計測装置２００ｃ→計測装置２００ａ→計測装置２００ｂ→計測装置２００ｃ→……」の繰り返しである。すなわち分担順序は、すべての計測装置２００ａ、２００ｂ、および２００ｃが一律に同じ頻度で現れる繰り返しパターンにより定義される。【００９１】
停止基準は、「キャプチャを開始してからのキャプチャの継続時間が６０秒に達した」という条件である。なお、ここで「６０秒」という値は説明の便宜上の値である。予備実験などに基づいて、計測装置２００ａ、２００ｂ、および２００ｃの能力に合った適切な値を用いて停止基準を定義することが好ましい。【００９２】
なお、上記の「能力」とは、例えば、以下の要素などに依存して決まる全般的な処理能力である。
・通信部２１３ａ、２１３ｂ、および２１３ｃを介してキャプチャしたパケットを一時的に保存するバッファとして使用可能なメモリ２０１ａ、２０１ｂ、および２０１ｃの容量。【００９３】
・ＣＰＵ２１２ａ、２１２ｂ、および２１２ｃのクロックスピード
・通信部２１３ａ、２１３ｂ、および２１３ｃの通信スピード
重複パケット条件は「キャプチャを開始した後、実際にキャプチャしたパケットの個数が１個に達した」という条件である。この重複パケット条件は、パケットの種類などによらない。換言すれば、この重複パケット条件は、「どのような属性のパケットであるかは問わず、とにかく１つのパケットを実際にキャプチャした」という条件である。つまり、（１ａ）の例における重複パケット条件は、単純に、「１個」という重複パケット数で表される。【００９４】
この（１ａ）の例は、計測装置２００ａ、２００ｂ、および２００ｃの能力に大きな差がないときに好適である。
（１ｂ）停止基準が一律でない例
この（１ｂ）の例において、分担順序と重複パケット条件は（１ａ）の例と同様に一律である。他方、停止基準は、計測装置２００ａ、２００ｂ、および２００ｃの能力（性能）に応じて決められている。【００９５】
例えば、計測装置２００ａの性能が最も高く、計測装置２００ｃの能力が最も低いとする。このとき、計測装置２００ａの停止基準は、例えば、「キャプチャを開始してからのキャプチャの継続時間が６０秒に達した」という条件である。また、計測装置２００ｂの停止基準は、例えば、「キャプチャを開始してからのキャプチャの継続時間が３０秒に達した」という条件である。そして、計測装置２００ｃの停止基準は、例えば、「キャプチャを開始してからのキャプチャの継続時間が１０秒に達した」という条件である。【００９６】
つまり、（１ｂ）の例においては、高い能力の計測装置ほど、長い時間で規定される停止基準が適用される。よって、予備実験などによって各計測装置の能力を予め調べておき、調べた結果に基づいて各計測装置の停止基準を定めることにより、複数の計測装置の能力が異なる場合にも各計測装置の能力に応じた適切かつ効率的な分担が実現される。【００９７】
（１ｃ）分担順序が一律でない例
この（１ｃ）の例において、停止基準と重複パケット条件は（１ａ）の例と同様に一律である。しかし、分担順序は、計測装置２００ａ、２００ｂ、および２００ｃの性能に応じて決められている。【００９８】
例えば、計測装置２００ａの性能が最も高く、計測装置２００ｂと２００ｃの性能はほぼ同等だとする。このとき、分担順序は、例えば、「計測装置２００ａ→計測装置２００ｂ→計測装置２００ａ→計測装置２００ｃ→計測装置２００ａ→計測装置２００ｂ→計測装置２００ａ→計測装置２００ｃ→……」という順序である。【００９９】
つまり、（１ｃ）の例においては、高い能力の計測装置ほど高い頻度で出現する繰り返しパターンにより分担順序が定義される。よって、予備実験などによって各計測装置の能力を予め調べておき、調べた結果に基づいて分担順序の繰り返しパターンを定めることにより、複数の計測装置の能力が異なる場合にも各計測装置の能力に応じた適切かつ効率的な分担が実現される。【０１００】
（１ｄ）重複パケット条件における重複パケット数が１より大きい例
この（１ｄ）の例において、分担順序と停止基準は（１ａ）の例と同様である。
重複パケット条件は、「キャプチャを開始した後、実際にキャプチャしたパケットの個数が１０個に達した」という条件である。換言すれば、（１ｄ）は重複パケット数が「１０個」という例である。【０１０１】
図１の説明は第１実施形態に当てはまるので、第１実施形態によればフルキャプチャが実現される。しかし、ごくまれに生じる何らかの問題によりキャプチャ漏れが起きる可能性は、完全なゼロではない。この（１ｄ）の例は、万が一のキャプチャ漏れの可能性を、上記（１ａ）の例よりも低減させる効果がある。【０１０２】
（１ｅ）重複パケット条件において重複パケットとして数えるパケットが制限されている例
この（１ｅ）の例において、分担順序は、（１ａ）の例と同様に一律な繰り返しパターンで定義されてもよく、（１ｃ）の例と同様に能力に応じた頻度で各計測装置２００ａ、２００ｂ、および２００ｃが出現する繰り返しパターンで定義されてもよい。また、（１ａ）の例と同様に一律な停止基準がすべての計測装置２００ａ、２００ｂ、および２００ｃに適用されてもよく、（１ｂ）の例と同様に能力に応じて異なる停止基準が計測装置２００ａ、２００ｂ、および２００ｃにそれぞれ適用されてもよい。【０１０３】
重複パケット条件は、「キャプチャを開始した後、実際にキャプチャしたパケットのうち、ユーザパケットの個数が１個に達した」という条件である。
すなわち、（１ｅ）の重複パケット条件は、「実際にキャプチャしたパケットのうち、予め指定された特定の属性のパケットのみを数えることにして、数えた値が所定の閾値に達した」という条件の例である。なお、（１ｅ）の例では、「特定の属性」とは「ユーザパケットであること」、「所定の閾値」とは「１個」である。【０１０４】
なお、ユーザパケットとは、アプリケーションソフトウェアからネットワークに送信されたパケットのことである。本実施形態のユーザパケットは、より具体的には、通信品質測定システム１１０−１の内部で送信される管理パケット以外のパケットのことである。【０１０５】
また、上記重複パケット条件では、ユーザパケットの種類をさらに限定する条件を含まないので、ルータ１２０または１３０から監視対象経路２３０上に流される任意のＩＰパケットはユーザパケットとして数えられる。【０１０６】
（１ｆ）重複パケット条件において重複パケットとして数えるパケットがさらに制限されている例
この（１ｆ）の例において、分担順序と停止基準は（１ｅ）の例と同様である。重複パケット条件は、（１ｅ）の例における重複パケット条件をさらに限定した条件である。（１ｆ）の例における重複パケット条件は、（１ｅ）の例に関して説明した「特定の属性」が「ＲＴＰ（Real-time Transport Protocol）によるユーザパケットであること」であり、「所定の閾値」が「１個」である場合に相当する。【０１０７】
（１ｇ）重複パケット条件において重複パケットとして数えるパケットがさらに制限されている例
この（１ｇ）の例において、分担順序と停止基準は（１ｅ）の例と同様である。また、重複パケット条件は、（１ｆ）の例における重複パケット条件をさらに限定した条件である。例えば（１ｇ）の例において上記の「特定の属性」とは、「ＲＴＰによるユーザパケットであり、送信元ＩＰアドレスが１０．２５．１２３．３３であり、送信元ポート番号が２００００である」という属性であってもよい。【０１０８】
なお、送信元ＩＰアドレスは、図８とともに後述するとおり、ＩＰヘッダに含まれる。また、ＲＴＰパケットは、ＩＰパケットのデータペイロードに含まれるＵＤＰ（User Datagram Protocol）パケットのデータペイロードに含まれ、送信元ポート番号はＵＤＰヘッダに含まれる。キャプチャ制御処理部２０４ａ、２０４ｂ、および２０４ｃは、キャプチャしたパケットにカプセル化されて含まれる各階層のプロトコルヘッダを解析することで、（１ｅ）〜（１ｇ）の例のような重複パケット条件が満たされているか否かを判断することができる。【０１０９】
また、（１ｅ）〜（１ｇ）の例のような重複パケット条件は、キャプチャの目的に合わせて、より確実に万が一のキャプチャ漏れを防ぐのに有益である。例えば、キャプチャの目的が、ＲＴＰを用いて提供されるサービスの品質の管理である場合、ＲＴＰパケット以外の種類のパケットのキャプチャ漏れよりも、ＲＴＰパケットのキャプチャ漏れの方が深刻な問題である。そこで、キャプチャの目的に応じて重要視される属性のパケット（例えばＲＴＰパケット）が必ず重複パケットとして含まれるように、重複パケット条件を定めておくことは有益である。【０１１０】
以上、分担順序、停止基準、および重複パケット条件の組み合わせについて、（１ａ）〜（１ｇ）の例を示したが、他にも様々な組み合わせが可能なことは明らかである。
さて、以下では説明の便宜上、（１ａ）の場合を例として、図５について説明する。すなわち、分担制御規則として、具体的には「計測装置２００ａ→計測装置２００ｂ→計測装置２００ｃ→計測装置２００ａ→計測装置２００ｂ→計測装置２００ｃ→……」の繰り返しパターンにより定義される分担順序が分担制御部２０６ａに設定されている。また、停止基準として、「キャプチャを開始してからのキャプチャの継続時間が６０秒に達した」という条件が分担制御部２０６ａに設定されている。さらに、重複パケット条件として、「キャプチャを開始した後、実際にキャプチャしたパケットの個数が１個に達した」という条件が重複パケット指定部２０７ａに設定されている。【０１１１】
まず、図５のステップＳ２０１の前に、予め以下の処理が行われる。分担制御部２０６ａは、通信部２１４ａと監視対象経路２３０を介して、計測装置２００ｂと２００ｃの双方に停止基準を通知する。通知された停止基準は、通信部２１４ｂと２１４ｃでそれぞれ受信され、キャプチャ状況通知部２１０ｂと２１０ｃでそれぞれ認識される。また、分担制御部２０６ａは、同じ計測装置２００ａ内のキャプチャ状況通知部２１０ａにも停止基準を通知し、キャプチャ状況通知部２１０ａは停止基準を認識する。【０１１２】
また、重複パケット指定部２０７ａは、通信部２１４ａと監視対象経路２３０を介して、計測装置２００ｂと２００ｃの双方に重複パケット条件を通知する。通知された重複パケット条件は、通信部２１４ｂと２１４ｃでそれぞれ受信され、キャプチャ状況通知部２１０ｂと２１０ｃでそれぞれ認識される。また、重複パケット指定部２０７ａは、同じ計測装置２００ａ内のキャプチャ状況通知部２１０ａにも重複パケット条件を通知し、キャプチャ状況通知部２１０ａは重複パケット条件を認識する。【０１１３】
以上のように事前準備が整うと、ステップＳ２０１において、図１の分担制御処理装置としての、分担制御処理部２０２ａ内の分担制御部２０６ａは、設定された分担順序から、最初にパケットのキャプチャを行う計測装置が計測装置２００ａであると決定する。そして、分担制御部２０６ａは、計測装置２００ａ（より具体的にはキャプチャ制御部２１１ａ）にキャプチャの開始を指示するよう、分担指示部２０５ａに指示する。【０１１４】
すると、分担指示部２０５ａは分担制御部２０６ａからの指示にしたがって、計測装置２００ａのキャプチャ制御部２１１ａにキャプチャ動作の開始を指示する。キャプチャ制御部２１１ａは、キャプチャを行うか否かを切り替えるための制御機能を有し、指示にしたがってキャプチャ動作を開始する制御を行う。計測装置２００ａがキャプチャ動作を開始した時点から、図５の計測区間Ｔ３１が始まっている。【０１１５】
キャプチャ動作を開始する制御として、キャプチャ制御部２１１ａは、タップ２２０ａから通信部２１３ａを介して流入してくるパケットを破棄せずに、メモリ２０１ａまたはその他の不図示の記憶装置に記憶するための制御を行う。より具体的には、本実施形態においてキャプチャ制御部２１１ａは、パケットをキャプチャした順序を保ち、かつキャプチャした各パケットにはキャプチャ時刻を関連付けながら、キャプチャしたパケットを記憶するための制御を行う。【０１１６】
計測区間Ｔ３１において、キャプチャ状況通知部２１０ａは、キャプチャ動作の状況を監視し続けており、具体的には、停止基準が満たされているか否かを監視する。図５は、計測区間Ｔ３１の開始時点から６０秒間の間に１０個のパケットＰ１〜Ｐ１０が計測装置２００ａにキャプチャされたこと、およびパケットＰ１０を計測装置２００ａがキャプチャした直後に計測区間Ｔ３１の開始時点から６０秒が経過したことを示している。【０１１７】
こうしてステップＳ２０２において計測区間Ｔ３１の開始時点から６０秒が経過すると、キャプチャ状況通知部２１０ａは、停止基準が満たされたことを認識し、停止基準が満たされたことを分担制御部２０６ａに通知する。停止基準が満たされたという通知は、計測装置２００ａがキャプチャを停止する予定であるという通知でもある。【０１１８】
すると、ステップＳ２０２の通知を受けた分担制御部２０６ａは、ステップＳ２０３において、計測装置２００ａから計測装置２００ｂにキャプチャを交替させることを決定する。すなわち、ステップＳ２０２の通知を契機として、分担順序により定義された分担制御規則にしたがって、分担制御部２０６ａは、次にキャプチャを行う計測装置を計測装置２００ｂと決定する。【０１１９】
ステップＳ２０３においてさらに、分担指示部２０５ａが、分担制御部２０６ａの決定にしたがって、計測装置２００ｂのキャプチャ制御部２１１ｂに、キャプチャを開始するよう指示する。この指示は、通信部２１４ａ、監視対象経路２３０、および通信部２１４ｂを介して行われる。【０１２０】
そして、指示を受け取った計測装置２００ｂのキャプチャ制御部２１１ｂは、ステップＳ２０１におけるキャプチャ制御部２１１ａと同様に、キャプチャ動作を開始する制御を行う。計測装置２００ｂがキャプチャ動作を開始した時点から、図５の計測区間Ｔ３２が始まっている。【０１２１】
また、計測区間Ｔ３２において、キャプチャ状況通知部２１０ｂは、キャプチャ動作の状況を監視し続けており、具体的には、重複パケット条件と停止基準が満たされているか否かをそれぞれ監視する。【０１２２】
その後、監視対象経路２３０上にパケットＰ１１が流れると、パケットＰ１１は、計測装置２００ａと２００ｂの双方によりキャプチャされる。すると、計測装置２００ｂはキャプチャの開始後、実際に１つのパケットをキャプチャしたことになり、重複パケット条件が満たされる。キャプチャ状況通知部２１０ｂは、計測区間Ｔ３２の開始時点から計測装置２００ｂがキャプチャしたパケットの個数を数えることによって、重複パケット条件が満たされたことを認識することができる。【０１２３】
すると、ステップＳ２０４においてキャプチャ状況通知部２１０ｂは、通信部２１４ｂ、監視対象経路２３０、および通信部２１４ａを介して、分担制御部２０６ａに、重複パケット条件が満たされたことを通知する。【０１２４】
通知を受けた分担制御部２０６ａは、ステップＳ２０５において、計測装置２００ａによるキャプチャを停止することを決定する。そして、分担指示部２０５ａが、分担制御部２０６ａによる決定に基づいて、計測装置２００ａのキャプチャ制御部２１１ａにキャプチャの停止を指示する。【０１２５】
すると、キャプチャ制御部２１１ａはキャプチャを停止する制御を行い、計測装置２００ａはキャプチャを停止し、計測区間Ｔ３１が終了する。このように、計測装置２００ａは、ステップＳ２０２で重複パケット条件が満たされた後にもキャプチャを続けているので、パケットＰ１１をキャプチャしている。つまり、パケットＰ１１は計測装置２００ａと２００ｂの双方により重複してキャプチャされている。【０１２６】
ステップＳ２０５の後は、計測装置２００ｂがパケットＰ１２、Ｐ１３、Ｐ１４などのキャプチャを継続する。計測装置２００ｂのキャプチャ状況通知部２１０ｂは、計測区間Ｔ３２の開始時点から６０秒が経過した時点で分担制御処理部２０２ａの分担制御部２０６ａに、キャプチャを停止する予定であることを通知する。【０１２７】
なお、上記の図５の説明では、ステップＳ２０１の前に予め計測装置２００ａ、２００ｂ、および２００ｃに停止基準と重複パケット条件を通知する場合を説明した。しかし、事前の通知の代わりに、分担制御部２０６ａが各計測装置２００ａ、２００ｂ、および２００ｃのキャプチャ制御部２１１ａ、２１１ｂ、および２１１ｃにキャプチャの開始を指示する際に、停止基準と重複パケット条件の通知を合わせて行うこともできる。それにより、可変の停止基準または可変の重複パケット条件を利用することが可能となる。【０１２８】
以下に、可変の重複パケット条件を含む設定の例を（１ｈ）として挙げる。
（１ｈ）重複パケット条件における重複パケット数が可変の例
この（１ｈ）の例において、分担順序と停止基準は（１ａ）の例と同様である。【０１２９】
また、上記の（１ａ）と（１ｄ）の例ではそれぞれ「１個」と「１０個」という固定の重複パケット数により重複パケット条件が定義されているが、（１ｈ）の例では、可変の重複パケット数により重複パケット条件が定義される。具体的には、パケットをキャプチャしている計測装置が停止基準を満たした時点での、当該計測装置の負荷状況に応じて重複パケット条件が可変であってもよい。【０１３０】
例えば、重複パケット数は、「停止基準が満たされた時点での計測装置のＣＰＵ使用率が１０％未満なら１５個、１０％以上２０％未満なら１０個、２０％以上５０％未満なら５個、５０％以上８０％未満なら２個、８０％以上なら１個」などと定義されてもよい。このように負荷が高いほど重複パケット数が少なくなるように決めることで、計測装置にリソースの余裕がある場合は、余裕の度合いに合わせて、より確実に重複パケットのロス（つまりキャプチャ漏れ）を防ぐことができる。【０１３１】
続いて、図５を参照して説明したキャプチャ動作について、さらに図６を参照して説明する。
図６は、第１実施形態におけるキャプチャ動作のフローチャートである。【０１３２】
ステップＳ３０１において、分担制御処理部２０２ａは分担設定を取得する。図５に関して説明したとおり、分担設定は、上記（１ａ）〜（１ｈ）またはその他の様々な設定が可能だが、説明の便宜上、（１ａ）の分担設定が利用されるものとする。上記（１ａ）の例によれば、ステップＳ３０１で分担制御処理部２０２ａが取得する分担設定は下記の３つの組み合わせである。【０１３３】
・停止基準を規定する、個々の計測装置による計測時間（すなわちキャプチャを継続する時間）
・分担制御規則の具体例としての、静的に決められた分担順序
・重複パケット条件を規定する重複パケット数
より具体的には、計測時間と分担順序は分担制御部２０６ａが取得し、重複パケット数は重複パケット指定部２０７ａが取得する。【０１３４】
次に、分担制御処理部２０２ａは、ステップＳ３０２において、分担順序にしたがい、第１の計測装置に計測開始を指示する。つまり、分担制御処理部２０２ａ内の分担制御部２０６ａが分担順序にしたがって、最初にキャプチャ動作を行う計測装置を決定し、決定にしたがって分担指示部２０５ａが第１の計測装置にキャプチャ動作の開始を指示する。図５の例では、第１の計測装置は計測装置２００ａである。【０１３５】
すると、指示を受けた第１の計測装置は、ステップＳ３０３において計測（つまりパケットのキャプチャ）を開始する。例えば、第１の計測装置である計測装置２００ａにおいて、キャプチャ制御部２１１ａがキャプチャを開始する制御を行うことにより、計測装置２００ａはキャプチャ動作を開始する。ステップＳ３０２とＳ３０３が図５のステップＳ２０１に相当する。【０１３６】
続くステップＳ３０４において、現在計測中の計測装置において計測時間が経過したか否かが判断される。
例えば、図５の計測区間Ｔ３１では「現在計測中の計測装置」は計測装置２００ａである。よって、計測装置２００ａのキャプチャ状況通知部２１０ａは、ステップＳ３０４において、例えば「６０秒」という計測時間が経過して停止基準が満たされたか否かを監視している。【０１３７】
計測時間が経過していなければステップＳ３０４の監視が繰り返される。計測時間が経過すると、現在計測中の計測装置（例えば２００ａ）のキャプチャ状況通知部（例えば２１０ａ）は、キャプチャを停止する予定であることを分担制御処理部２０２ａの分担制御部２０６ａに通知し、処理はステップＳ３０５に移行する。ステップＳ３０４からステップＳ３０５への移行が、図５のステップＳ２０２に相当する。【０１３８】
すると、ステップＳ３０５で分担制御処理部２０２ａは、分担順序にしたがい、次の計測装置に計測開始を指示する。例えば、図５の例では、分担制御処理部２０２ａの分担制御部２０６ａが、分担順序にしたがって、計測装置２００ｂを次の計測装置として決定し、決定にしたがって分担指示部２０５ａが計測装置２００ｂにキャプチャの開始を指示する。【０１３９】
すると、ステップＳ３０６では、次の計測装置が計測を開始する。例えば、図５の例では、次の計測装置として選ばれた計測装置２００ｂにおいて、キャプチャ制御部２１１ｂがパケットのキャプチャを開始する制御を行うことにより、計測装置２００ｂはパケットのキャプチャを開始する。ステップＳ３０５とＳ３０６が図５のステップＳ２０３に相当する。【０１４０】
続くステップＳ３０７において、次の計測装置がＩＰパケットを「重複パケット数」分取得したか否かが判断される。次の計測装置がＩＰパケットを「重複パケット数」分取得するまで、ステップＳ３０７は繰り返される。【０１４１】
例えば、図５の例では、計測区間Ｔ３２の開始後、「次の計測装置」である計測装置２００ｂが、「重複パケット数」すなわち１個のＩＰパケットを取得したか否かを、計測装置２００ｂのキャプチャ状況通知部２１０ｂが監視し続けている。ステップＳ３０７の判断は、キャプチャ状況通知部２１０ｂによってなされる。よって、計測区間Ｔ３２の開始後、１個目のパケットＰ１１を計測装置２００ｂがキャプチャするまで、ステップＳ３０７が繰り返される。そして、計測装置２００ｂがパケットＰ１１をキャプチャすると、処理はステップＳ３０８に移行する。【０１４２】
すると、ステップＳ３０８において、次の計測装置は、分担制御処理部２０２ａに、「重複パケット数」分のＩＰパケットを取得したことを通知する。例えば、図５の例では、次の計測装置である計測装置２００ｂのキャプチャ状況通知部２１０ｂが、分担制御処理部２０２ａの分担制御部２０６ａに、ステップＳ３０８の通知を行う。なお、ステップＳ３０７からステップＳ３０８への移行およびステップＳ３０８の実行が、図５のステップＳ２０４に相当する。【０１４３】
続いて、ステップＳ３０９において、分担制御処理部２０２ａは、現在計測中の計測装置に計測停止を指示する。なお、ステップＳ３０９が実行される時点では、２つの計測装置が同時にパケットのキャプチャを実行しているが、ステップＳ３０９における「現在計測中の計測装置」とは、ステップＳ３０４における「現在計測中の計測装置」を指す。【０１４４】
例えば、図５の例では、ステップＳ３０９において、分担制御処理部２０２ａ内の分担制御部２０６ａが、「現在計測中の計測装置」である計測装置２００ａにキャプチャを停止させることを決定する。そして分担指示部２０５ａが決定にしたがって計測装置２００ａのキャプチャ制御部２１１ａにキャプチャの停止を指示する。【０１４５】
すると、指示を受けた現在計測中の計測装置は、ステップＳ３１０において計測（すなわちパケットのキャプチャ）を停止する。例えば、図５の例では、キャプチャ制御部２１１ａがキャプチャを停止する制御を行い、計測装置２００ａはキャプチャを停止する。なお、ステップＳ３０９とＳ３１０が図５のステップＳ２０５に相当する。【０１４６】
そして、ステップＳ３１１では計測を続けるか否かが判断される。例えば、計測装置２００ａに、不図示の入力装置を介してキャプチャの停止を指示する入力が与えられた場合は、分担制御処理部２０２ａが、計測を続けないと判断し、図６の処理が終了する。逆に、キャプチャの停止を指示する入力がなければ、分担制御処理部２０２ａは、計測を続けると判断する。【０１４７】
ステップＳ３１１において、計測を続けると判断されると、処理はステップＳ３０４に戻り、その際、現在の「次の計測装置」を新たな「現在計測中の計測装置」とする。例えば、図５の例では、現在の「次の計測装置」である計測装置２００ｂを新たな「現在計測中の計測装置」として、図６のステップＳ３０４以降の処理が繰り返される。【０１４８】
以上、図５と図６を参照して第１実施形態におけるキャプチャ動作について詳細に説明した。
続いて、図７と図８を参照して、第１実施形態における集計動作の例を説明する。なお、具体的な集計動作は重複パケット条件に応じて変化しうるが、上記（１ｅ）の分担設定が利用される場合について説明する。また、図５のパケットＰ１１がユーザパケットである場合、図５は（１ｅ）の分担設定にも当てはまるので、以下では適宜図５も参照しながら説明する。【０１４９】
図７は、第１実施形態における集計動作のフローチャートである。図７のステップＳ４０７より前が、図２に関して説明した集計動作の第１ステップであり、図７のステップＳ４０７が、集計動作の第２ステップである。【０１５０】
ステップＳ４０１において、集計処理部２０３ａ内の集計部２０８ａは、各計測装置２００ａ、２００ｂ、および２００ｃから、各計測装置２００ａ、２００ｂ、および２００ｃがキャプチャしたパケットを収集する。【０１５１】
計測装置２００ａがキャプチャしたパケットの収集は、例えば、キャプチャしたパケットを記憶するための第１の記憶領域から、収集したパケットを記憶するための第２の記憶領域への、計測装置２００ａ内部データ転送により実現されてもよい。第１の記憶領域はキャプチャ制御処理部２０４ａにより管理され、第２の記憶領域は集計部２０８ａにより管理される。第２の記憶領域は、不図示のハードディスク装置などでもよい。【０１５２】
また、計測装置２００ｂがキャプチャしたパケットの収集は、通信部２１４ｂ、監視対象経路２３０、および通信部２１４ａを介して行われる。同様に、計測装置２００ｃがキャプチャしたパケットの収集は、通信部２１４ｃ、監視対象経路２３０、および通信部２１４ａを介して行われる。【０１５３】
ステップＳ４０１が実行されるタイミングは任意である。例えば、キャプチャしたパケットをほぼリアルタイムに解析するために通信品質測定システム１１０−１が利用される場合は、各計測装置２００ａ、２００ｂ、および２００ｃは、１つパケットをキャプチャするたびにキャプチャしたパケットを出力し、集計部２０８ａは出力されたパケットを継続的に収集してもよい。【０１５４】
あるいは、リアルタイム解析が不要な場合は、各計測装置２００ａ、２００ｂ、および２００ｃは、キャプチャしたパケットを計測区間ごとにまとめて出力してもよい。または、各計測装置２００ａ、２００ｂ、および２００ｃは、分担順序の繰り返しパターンが複数回繰り返される間に、それぞれキャプチャしたパケットを不図示のハードディスク装置などに蓄積していってもよい。そして、例えば、ルータ１２０と１３０の間での通信量が少ない時間帯など、保守作業に適した予め決められた時刻になると、集計部２０８ａがパケットの収集を行ってもよい。【０１５５】
なお、図７は、説明の簡単化のため、隣り合う２つの計測区間でキャプチャされたパケットの集計作業についてのみ示している。しかし、図７の処理を繰り返すことで、３つ以上の計測区間にわたって複数の計測装置によりキャプチャされたパケットの集計作業が可能なことは明らかである。【０１５６】
集計部２０８ａは、ステップＳ４０１でのパケットの収集の後、隣り合う２つの計測区間のうち後の計測区間でキャプチャされた最初のユーザパケット（以下、便宜的に「参照パケット」という）と同一の、前の計測区間でキャプチャされたパケットを特定する。図７において、ステップＳ４０２〜Ｓ４０６が、参照パケットと同一のパケットを特定する処理に当たる。【０１５７】
例えば、図５の例では、「隣り合う２つの計測区間」は計測区間Ｔ３１とＴ３２である。また、集計部２０８ａはステップＳ４０１において、計測区間Ｔ３１でキャプチャされたパケットＰ１〜Ｐ１１と、計測区間Ｔ３２でキャプチャされたパケットＰ１１、Ｐ１２、……を収集している。【０１５８】
この場合、「前の計測区間」は計測区間Ｔ３１であり、「後の計測区間」は計測区間Ｔ３２であり、「参照パケット」は、計測装置２００ｂから収集したパケットＰ１１である。よって、集計部２０８ａは、ステップＳ４０１の後、計測装置２００ａから収集したパケットのうち、参照パケットと同一のパケットを特定するため、ステップＳ４０２〜Ｓ４０６の処理を実行する。【０１５９】
具体的には、ステップＳ４０２で集計部２０８ａは、前の計測区間の最後のパケットに注目する。以下、注目したパケットを便宜的に「注目パケット」という。例えば、図５の例では、集計部２０８ａは、計測区間Ｔ３１で計測装置２００ａによりキャプチャされた最後のパケットであるパケットＰ１１に注目する。【０１６０】
続くステップＳ４０３〜Ｓ４０６は、前の計測区間でキャプチャされたパケットを後ろから順に調べて、参照パケットと同一のパケットを探す処理である。
すなわち、ステップＳ４０３で集計部２０８ａは、注目パケットがＩＰパケットであるか否かを調べる。注目パケットがＩＰパケットならば処理はステップＳ４０４に移行し、注目パケットがＩＰパケットでなければ処理はステップＳ４０６に移行する。【０１６１】
また、ステップＳ４０４で集計部２０８ａは、参照パケットと注目パケットの送信元ＩＰアドレスが同じか否かを調べる。両パケットの送信元ＩＰアドレスが同じならば処理はステップＳ４０５に移行し、同じでなければ処理はステップＳ４０６に移行する。【０１６２】
そして、ステップＳ４０５で集計部２０８ａは、参照パケットと注目パケットの識別子（identification）が同じか否かを調べる。両パケットの識別子が同じならば処理はステップＳ４０７に移行し、同じでなければ処理はステップＳ４０６に移行する。【０１６３】
ここで、ステップＳ４０３〜Ｓ４０５の処理によって参照パケットと注目パケットの同一性を判断することが可能な理由について、図８を参照して説明する。
図８は、ＩＰｖ４（IP version 4）のＩＰパケットの形式を説明する図である。【０１６４】
図８に示すように、ＩＰｖ４のＩＰパケットは、ヘッダとデータペイロードを含み、ヘッダは下記のフィールドを含む。なお、下記のリストにおける括弧内のビット数は、当該フィールドの長さを示す。【０１６５】
・バージョン番号（４ビット）
・ヘッダ長（４ビット）
・サービスタイプ（Type Of Service）（８ビット）
・パケット長（１６ビット）
・識別子（identification）（１６ビット）
・フラグ（３ビット）
・フラグメントオフセット（１３ビット）
・ＴＴＬ（Time To Live）（８ビット）
・プロトコル番号（８ビット）
・ヘッダチェックサム（１６ビット）
・送信元ＩＰアドレス（３２ビット）
・宛先ＩＰアドレス（３２ビット）
・オプション（可変長）
・パディング（可変長）
各フィールドの意味などは公知であるので、詳細な説明は省略する。【０１６６】
本実施形態に関連する部分について説明すると、例えば、ネットワーク１００の設定から断片化（fragmentation）が起きないことが保証される場合には、送信元ＩＰアドレスとＩＤの組によりＩＰパケットを一意に識別することができる。なぜなら、ＩＤフィールドは、送信元ホストがＩＰパケットを識別するために割り当てた識別情報を示すからである。図７では説明の簡単化のため、断片化が起きないものと仮定する。【０１６７】
ただし、ネットワーク１００において断片化が起こり得る場合にも、集計部２０８ａは、送信元ＩＰアドレスとＩＤとフラグメントオフセットの組によってＩＰフラグメントパケット同士の同一性を判断することができる。よって、図７の処理に、参照パケットと注目パケットのフラグメントオフセット同士を比較するステップを追加してもよい。【０１６８】
ここで図７の説明に戻ると、ステップＳ４０３〜Ｓ４０５の実行により、参照パケットと注目パケットが等しいと判明した場合は処理がステップＳ４０７に移行する。例えば、図５の例では、ステップＳ４０２で注目した注目パケットは、計測装置２００ａによりキャプチャされたパケットＰ１１なので、参照パケット（すなわち計測装置２００ｂによりキャプチャされたパケットＰ１１）と等しい。よって、処理はステップＳ４０５からステップＳ４０７へと移行する。【０１６９】
他方、参照パケットと注目パケットが等しくないと判明した場合は、処理がステップＳ４０６に移行する。ステップＳ４０６で集計部２０８ａは、前の計測区間でキャプチャされたパケットのうち、現在の注目パケットの１つ前のパケットに注目し、新たな「注目パケット」とする。そして、処理はステップＳ４０３に戻る。フルキャプチャが実現されている限り、ステップＳ４０３〜Ｓ４０５を１回以上実行した後、必ず処理はステップＳ４０７に移行する。【０１７０】
ステップＳ４０７では、相対時刻調整部２０９ａが、隣り合う２つの計測区間において２つの計測装置でキャプチャした重複パケットのキャプチャ時刻を利用して、計測装置間の時計のずれを算出し、時刻調整を行う。例えば、相対時刻調整部２０９ａは、複数の計測装置のうちのどれか１つの時計に、収集した各パケットのキャプチャ時刻を合わせる。【０１７１】
また、集計部２０８ａは、ステップＳ４０２〜Ｓ４０６の処理により特定した重複パケットを削除することで、重複なく一連のパケットを復元することができる。
なお、ステップＳ４０７の時刻調整の詳細は、図２に関して説明したとおりである。例えば、第１実施形態では、収集した各パケットのキャプチャ時刻を計測装置２００ａの時計で表すための調整を相対時刻調整部２０９ａが行ってもよい。【０１７２】
ステップＳ４０７の実行により図７の処理は終了する。図７の処理結果は、例えば、ジッタ解析などの各種の解析に利用可能である。
また、重複パケット条件に応じて、ステップＳ４０３〜Ｓ４０５の処理を適宜変更してもよい。例えば、図５に関して説明した（１ｆ）の例の場合、集計部２０８ａはさらに、下記の３条件が満たされるか否かを調べ、この３条件とステップＳ４０３〜Ｓ４０５の各条件が満たされた場合に、参照パケットと注目パケットが等しいと判断してもよい。【０１７３】
・参照パケットと注目パケットがともにＲＴＰパケットである。
・参照パケットと注目パケットそれぞれのＵＤＰヘッダにおける送信元ポート番号が等しい。【０１７４】
・参照パケットと注目パケットそれぞれのＲＴＰヘッダにおけるシーケンス番号が等しい。
以上、図４〜図８を参照して第１実施形態について説明した。【０１７５】
続いて、図９〜図１１を参照して第２実施形態について説明する。なお、第１実施形態との共通点については適宜説明を省略する。
図９は、第２実施形態における通信品質測定システムの構成図である。図９の通信品質測定システム１１０−２は、下記の３点において、第１実施形態に関する図４の通信品質測定システム１１０−１と異なる。【０１７６】
・分担制御処理部２０２ａは、各計測装置２００ａ、２００ｂ、および２００ｃに負荷状況を問い合わせる負荷状況問い合わせ部２１５ａをさらに備える。
・計測装置２００ａ、２００ｂ、および２００ｃがそれぞれ負荷状況通知部２１６ａ、２１６ｂ、および２１６ｃをさらに備える。負荷状況通知部２１６ａ、２１６ｂ、および２１６ｃは、それぞれ、負荷状況問い合わせ部２１５ａからの問い合わせに応じて、負荷状況を負荷状況問い合わせ部２１５ａに通知する。負荷状況問い合わせ部２１５ａと負荷状況通知部２１６ａの間の問い合わせおよび応答は、例えば、分担制御部２０６ａとキャプチャ状況通知部２１０ａの間の通信と同様に、計測装置２００ａ内部のプロセス間通信により実現することができる。負荷状況問い合わせ部２１５ａと負荷状況通知部２１６ｂまたは２１６ｃとの間の通信は、通信部２１４ａ、２１４ｂ、および２１４ｃを介してなされる。【０１７７】
・通信部２１４ａ、２１４ｂ、および２１４ｃは、監視対象経路２３０とは別系統の通信路２４０に接続されている。計測装置２００ａ、２００ｂ、および２００ｃの間の通信は通信路２４０を介して行われる。【０１７８】
なお、負荷状況問い合わせ部２１５ａが問い合わせる負荷状況は、例えば、ＣＰＵ使用率、メモリ使用率、キャプチャしたパケットを記憶する記憶領域の残り容量、およびその組み合わせである。【０１７９】
また、例えば、計測装置２００ａ、２００ｂ、および２００ｃが、不図示の同じ１台のスイッチングハブに、通信部２１４ａ、２１４ｂ、および２１４ｃをそれぞれ介して接続されていてもよい。その場合、通信路２４０は、スイッチングハブ内のルーティング経路である。あるいは、通信路２４０が無線通信路であり、各通信部２１４ａ、２１４ｂ、および２１４ｃが無線通信インタフェイスであってもよい。【０１８０】
第２実施形態での分担制御規則は、負荷状況通知部２１６ａが負荷状況問い合わせ部２１５ａ、２１５ｂ、および２１５ｃに問い合わせる問い合わせ事項と、問い合わせた結果に基づいて１つの計測装置を選択するための選択基準の組により定義される。したがって、第１実施形態とは異なり、第２実施形態では、実際にどのような順序で計測装置２００ａ、２００ｂ、および２００ｃがキャプチャを分担するかは、問い合わせの結果に応じて動的に決定される。負荷状況問い合わせ部２１５ａは、問い合わせ事項を問い合わせる問い合わせ手段の一例である。【０１８１】
以下に、第２実施形態における分担設定の例として（２ａ）と（２ｂ）を挙げる。
（２ａ）ＣＰＵ使用率に基づく分担設定の例
停止基準として、ＣＰＵ使用率に基づいて、例えば「ＣＰＵ使用率が８０％を超えた」などの条件が設定される。【０１８２】
分担制御規則は、例えば計測装置２００ａを、通信品質測定システム１１０−２がキャプチャを開始するときに最初にキャプチャを行う計測装置として定める設定を含む。
さらに、分担制御規則は、キャプチャを実行中の計測装置が停止基準を満たした場合に、キャプチャを行っていない他の計測装置（以下、便宜的に「不活性計測装置」という）に負荷状況問い合わせ部２１５ａが問い合わせる問い合わせ事項を含む。具体的には、停止基準と問い合わせ事項が同じリソースに関連した内容となるように、ＣＰＵ使用率が問い合わせ事項として設定される。あるいは、問い合わせ事項は、ＣＰＵのクロックスピードとＣＰＵ使用率の組などでもよい。【０１８３】
また、分担制御規則は、不活性計測装置への問い合わせに対する応答の中から１つの応答を選択するための選択基準を含む。選択基準は、好ましくは、「問い合わせに対する応答のうち最も低い負荷を示す応答を選択する」という基準である。【０１８４】
例えば、図９において計測装置２００ａがキャプチャを実行している場合、不活性計測装置は計測装置２００ｂと２００ｃである。よって、負荷状況問い合わせ部２１５ａは、計測装置２００ｂと２００ｃの負荷状況通知部２１６ｂと２１６ｃに、ＣＰＵ２１２ｂと２１２ｃそれぞれの使用率を問い合わせる。【０１８５】
例えば、負荷状況通知部２１６ｂからは「５％」、負荷状況通知部２１６ｃからは「１５％」という応答が得られたとすると、最も低い負荷（つまり最も低いＣＰＵ使用率）を示すのは「５％」という応答である。したがって、この場合、分担制御部２０６ａは、選択基準により「５％」という応答を選択し、「５％」という応答を返した計測装置２００ｂを、次の計測装置として決定する。【０１８６】
ＣＰＵ使用率が一時的に増加する（瞬時に増加してすぐに減少する）場合のことを考慮し、停止基準は、「ＣＰＵ使用率が８０％を超えた状態が５秒間以上続いた」などの条件でもよい。【０１８７】
なお、（２ａ）の例における重複パケット条件は、例えば（１ａ）の例と同様でよい。
（２ｂ）メモリ使用率に基づく分担設定の例
停止基準として、メモリ使用率に基づいて、例えば「メモリ使用率が８０％を超えた」などの条件が設定される。【０１８８】
分担制御規則は、（２ａ）の例と同様に、例えば計測装置２００ａを、通信品質測定システム１１０−２がキャプチャを開始するときに最初にキャプチャを行う計測装置として定める設定を含む。また、分担制御規則が含む問い合わせ事項は、例えば、メモリ使用量、メモリ使用率、メモリ残量などである。選択基準は、例えば、「問い合わせに対する応答のうち最も低い負荷を示す応答を選択する」という基準である。例えば、メモリ２０１ａ、２０１ｂ、および２０１ｃの容量が等しい場合、メモリ使用量を問い合わせ事項として設定し、「最も少ないメモリ使用量を示す応答を選択する」という基準を選択基準として設定してもよい。【０１８９】
メモリ使用率が一時的に増加する（瞬時に増加してすぐに減少する）場合のことを考慮し、停止基準は、「メモリ使用率が８０％を超えた状態が５秒間以上続いた」などの条件でもよい。【０１９０】
この（２ｂ）の例においても、重複パケット条件は、例えば（１ａ）の例と同様でよい。
以上、第２実施形態における分担設定の例として（２ａ）と（２ｂ）を挙げたが、ＣＰＵリソースとメモリリソースの使用状況に基づいて定義される総合的な負荷状況を、停止基準や問い合わせ事項に利用することもできる。【０１９１】
以下では、説明の便宜上、（２ａ）の分担設定が分担制御処理部２０２ａに設定されている場合について説明する。
図１０は、第２実施形態におけるキャプチャ動作を説明する図である。【０１９２】
ステップＳ５０１において、分担制御処理部２０２ａ内の分担制御部２０６ａは、設定された分担順序から、最初にパケットのキャプチャを行う計測装置が計測装置２００ａであると決定する。そして、分担指示部２０５ａは、決定に基づいてキャプチャ制御部２１１ａにキャプチャ動作の開始を指示する。【０１９３】
すると、キャプチャ制御部２１１ａは、指示にしたがってキャプチャ動作を開始する制御を行う。計測装置２００ａがキャプチャ動作を開始した時点から、図１０における計測区間Ｔ４１が始まっている。【０１９４】
計測区間Ｔ４１において、キャプチャ状況通知部２１０ａは、キャプチャ動作の状況を監視し続けており、具体的には、停止基準が満たされているか否かを監視する。図１０では、計測装置２００ａがパケットＰ１〜Ｐ１０を取得するまでは、計測装置２００ａにおけるＣＰＵ２１２ａの使用率は８０％以下であって、停止基準が満たされていない。しかし、計測装置２００ａがパケットＰ１０をキャプチャした直後に、ＣＰＵ２１２ａの使用率が８０％を超え、停止基準が満たされる。【０１９５】
するとステップＳ５０２においてキャプチャ状況通知部２１０ａは、停止基準が満たされたことを分担制御部２０６ａに通知する。この通知を受けた時点で不活性計測装置は計測装置２００ｂと２００ｃである。【０１９６】
そこで、負荷状況問い合わせ部２１５ａは、ステップＳ５０３ｂにおいて、計測装置２００ｂの負荷状況通知部２１６ｂに、問い合わせ事項として設定されたＣＰＵ使用率を問い合わせる。問い合わせは、通信部２１４ａ、通信路２４０、および通信部２１４ｂを介してなされる。【０１９７】
同様に、負荷状況問い合わせ部２１５ａは、ステップＳ５０３ｃにおいて、計測装置２００ｃの負荷状況通知部２１６ｃに、問い合わせ事項として設定されたＣＰＵ使用率を問い合わせる。問い合わせは、通信部２１４ａ、通信路２４０、および通信部２１４ｃを介してなされる。【０１９８】
なお、ステップＳ５０３ｂとＳ５０３ｃの実行順序は任意である。負荷状況問い合わせ部２１５ａは、問い合わせ事項を２１６が通信部２１４ａを介して通信路２４０にブロードキャストすることで、ステップＳ５０３ｂとＳ５０３ｃを同時に実行してもよい。【０１９９】
すると、ステップＳ５０４ｂでは、計測装置２００ｂの負荷状況通知部２１６ｂが、通信部２１４ｂ、通信路２４０、および通信部２１４ａを介して、計測装置２００ｂの負荷状況としてＣＰＵ２１２ｂの使用率を計測装置２００ａに通知する。以下、説明の便宜上、ステップＳ５０４ｂでは「５％」というＣＰＵ使用率が通知されたとする。【０２００】
同様に、ステップＳ５０４ｃでは、計測装置２００ｃの負荷状況通知部２１６ｃが、通信部２１４ｃ、通信路２４０、および通信部２１４ａを介して、計測装置２００ｃの負荷状況としてＣＰＵ２１２ｃの使用率を計測装置２００ａに通知する。以下、説明の便宜上、ステップＳ５０４ｃでは「１５％」というＣＰＵ使用率が通知されたとする。なお、ステップＳ５０４ｂとＳ５０４ｃの実行順は任意である。【０２０１】
また、ステップＳ５０３ｂ、Ｓ５０３ｃ、Ｓ５０４ｂ、およびＳ５０４ｃの実行中に、新たなパケットＰ１１が監視対象経路２３０上を流れることもある。図１０に示すように、このパケットＰ１１も、まだキャプチャを停止していない計測装置２００ａによりキャプチャされる。【０２０２】
その後、ステップＳ５０５で、各不活性計測装置（つまり計測装置２００ｂと２００ｃ）からの通知を受けた計測装置２００ａにおいて分担制御部２０６ａは、ＣＰＵ使用率が最も低いのは計測装置２００ｂだと認識する。そして、分担制御部２０６ａは、次の計測装置を計測装置２００ｂに決定する。すると、分担指示部２０５ａは、分担制御部２０６ａの決定にしたがって、計測装置２００ｂのキャプチャ制御部２１１ｂに、キャプチャを開始するよう、通信部２１４ａ、通信路２４０、および通信部２１４ｂを介して指示する。【０２０３】
続いて、キャプチャ制御部２１１ｂは、キャプチャ動作を開始する制御を行う。計測装置２００ｂがキャプチャ動作を開始した時点から、図１０の計測区間Ｔ４２が始まっている。また、計測区間Ｔ４２においてキャプチャ状況通知部２１０ｂは、キャプチャ動作の状況を監視し続けており、具体的には、重複パケット条件と停止基準が満たされているか否かをそれぞれ監視する。【０２０４】
その後、監視対象経路２３０上にパケットＰ１２が流れると、パケットＰ１２は計測装置２００ａと２００ｂの双方によりキャプチャされる。すると、計測装置２００ｂはキャプチャの開始後、実際に１つのパケットをキャプチャしたことになり、重複パケット条件が満たされる。キャプチャ状況通知部２１０ｂは、計測区間Ｔ４２開始時点から計測装置２００ｂがキャプチャしたパケットの個数を数えることによって、重複パケット条件が満たされたことを認識することができる。【０２０５】
すると、ステップＳ５０６においてキャプチャ状況通知部２１０ｂは、通信部２１４ｂ、通信路２４０、および通信部２１４ａを介して、分担制御部２０６ａに、重複パケット条件が満たされたことを通知する。【０２０６】
通知を受けた分担制御部２０６ａは、ステップＳ５０７において、計測装置２００ａによるキャプチャを停止することを決定する。そして、分担指示部２０５ａが、分担制御部２０６ａによる決定に基づいて、計測装置２００ａのキャプチャ制御部２１１ａにキャプチャの停止を指示する。【０２０７】
すると、キャプチャ制御部２１１ａはキャプチャを停止する制御を行い、計測装置２００ａはキャプチャを停止し、計測区間Ｔ４１が終了する。このように、計測装置２００ａは、ステップＳ５０２で重複パケット条件が満たされた後にもキャプチャを続けているので、パケットＰ１２をキャプチャしている。つまり、パケットＰ１２は計測装置２００ａと２００ｂの双方により重複してキャプチャされている。【０２０８】
ステップＳ５０７の後は、計測装置２００ｂがパケットＰ１３、Ｐ１４などのキャプチャを継続する。
なお、第１実施形態と同様に、停止基準と重複パケット条件は、ステップＳ５０１の前に予め分担制御処理部２０２ａから通知されていてもよいし、キャプチャの開始の指示とともに通知されてもよい。【０２０９】
続いて、図１０を参照して説明したキャプチャ動作について、さらに図１１を参照して説明する。図６と同様の点については、適宜説明を省略する。
図１１は、第２実施形態におけるキャプチャ動作のフローチャートである。【０２１０】
ステップＳ６０１において、分担制御処理部２０２ａは分担設定を取得する。以下では説明の便宜上、（２ａ）の分担設定が利用されるものとする。具体的には、停止基準と分担制御規則は分担制御部２０６ａが取得し、重複パケット条件としての重複パケット数は重複パケット指定部２０７ａが取得する。【０２１１】
次に、分担制御処理部２０２ａは、ステップＳ６０２において、分担制御規則にしたがい、第１の計測装置に計測開始を指示する。つまり、分担制御処理部２０２ａ内の分担制御部２０６ａが分担制御規則にしたがって、最初にキャプチャ動作を行う計測装置を決定し、決定にしたがって分担指示部２０５ａが第１の計測装置にキャプチャ動作の開始を指示する。図１０の例では、第１の計測装置は計測装置２００ａである。【０２１２】
すると、指示を受けた第１の計測装置は、ステップＳ６０３において計測（つまりパケットのキャプチャ）を開始する。ステップＳ６０２とＳ６０３が図１０のステップＳ５０１に相当する。【０２１３】
続くステップＳ６０４では、現在計測中の計測装置において、ＣＰＵ使用率が８０％を超えたか否かが判断される。なお、図１１における「現在計測中の計測装置」の意味は、図６における意味と同様である。【０２１４】
ＣＰＵ使用率が８０％を超えていなければステップＳ６０４の監視が繰り返される。ＣＰＵ使用率が８０％を超えると、現在計測中の計測装置（例えば２００ａ）のキャプチャ状況通知部（例えば２１０ａ）は、キャプチャを停止する予定であることを分担制御処理部２０２ａの分担制御部２０６ａに通知し、処理はステップ６０５に移行する。ステップＳ６０４からＳ６０５への移行が、図１０のステップＳ５０２に相当する。【０２１５】
すると、ステップＳ６０５で分担制御処理部２０２ａの負荷状況問い合わせ部２１５ａは、設定された問い合わせ事項であるＣＰＵ使用率を、「現在計測中の計測装置」以外の計測装置（すなわち不活性計測装置）に問い合わせる。すると、各不活性計測装置からＣＰＵ使用率が通知される。【０２１６】
以上のステップＳ６０５は、図１０のステップＳ５０３ｂ〜Ｓ５０４ｃに相当する。
すると、ステップＳ６０６において分担制御部２０６ａは、選択基準にしたがって、最もＣＰＵ使用率の低い計測装置（例えば、図１０の例では計測装置２００ｂ）を次の計測装置に決定する。なお、図１１における「次の計測装置」の意味は、図６における意味と同様である。さらに、分担制御部２０６ａの決定に基づいて、分担指示部２０５ａが、計測装置２００ｂにキャプチャの開始を指示する。【０２１７】
そして、ステップＳ６０７では、次の計測装置が計測を開始する。ステップＳ６０６とＳ６０７が図１０のステップＳ５０５に相当する。
続くステップＳ６０８において、次の計測装置がＩＰパケットを「重複パケット数」分取得したか否かが判断される。次の計測装置がＩＰパケットを「重複パケット数」分取得するまで、ステップＳ６０８は繰り返される。【０２１８】
次の計測装置がＩＰパケットを「重複パケット数」分取得すると、ステップＳ６０９において、次の計測装置のキャプチャ状況通知部（例えば２１０ｂ）は、分担制御処理部２０２ａに、「重複パケット数」分のＩＰパケットを取得したことを通知する。なお、ステップＳ６０８からＳ６０９への移行およびステップＳ６０９の実行が、図１０のステップＳ５０６に相当する。【０２１９】
続いて、ステップＳ６１０において、分担制御処理部２０２ａは、現在計測中の計測装置に計測停止を指示する。
すると、ステップＳ６１１において現在計測中の計測装置は、計測（すなわちパケットのキャプチャ）を停止する。ステップＳ６１０とＳ６１１が、図１０のステップＳ５０７に相当する。【０２２０】
そして、ステップＳ６１２では計測を続けるか否かが、例えば第１実施形態と同様にして判断される。ステップＳ６１２において計測を続けると判断されると、処理はステップＳ６０４に戻り、その際、現在の「次の計測装置」を新たな「現在計測中の計測装置」とする。逆に、ステップＳ６１２において計測を続けないと判断されると、図１１の処理全体が終了する。【０２２１】
以上、図９〜図１１を参照して第２実施形態におけるキャプチャ動作について詳細に説明した。
第２実施形態における集計動作は、キャプチャされたパケットの収集が監視対象経路２３０ではなく通信路２４０を介して行われる点以外は、第１実施形態と同様である。したがって詳しい説明は省略する。【０２２２】
続いて、図１２〜図１５を参照して第３実施形態について説明する。なお、第１実施形態または第２実施形態との共通点については適宜説明を省略する。
図１２は、第３実施形態における通信品質測定システムの構成図である。図１２の通信品質測定システム１１０−３は、計測装置２００ａがビーコン送信部２１７ａをさらに備えるという点において、第１実施形態に関する図４の通信品質測定システム１１０−１と異なる。【０２２３】
ビーコン送信部２１７ａは、通信部２１４ａを介して一定間隔で監視対象経路２３０にビーコンパケットを送信する。ビーコンパケットの具体的な形式は任意である。本実施形態では、「一意な識別番号を含み、一定間隔で送信される、予め決められた形式のパケット」を「ビーコンパケット」と定義している。なお、以下ではビーコンパケットの識別番号を「ビーコン番号」という。【０２２４】
本実施形態において計測装置２００ａ、２００ｂ、および２００ｃは、タップ２２０ａ、２２０ｂ、および２２０ｃと通信部２１３ａ、２１３ｂ、および２１３ｃを介して、監視対象経路２３０上を流れるビーコンパケットをキャプチャする。なお、第１実施形態に関して説明したように、キャプチャ制御処理部２０４ａ、２０４ｂ、および２０４ｃは、管理パケットを破棄する制御を行ってもよい。その場合、第３実施形態では、キャプチャ制御処理部２０４ａ、２０４ｂ、および２０４ｃは、管理パケットの１種であるビーコンパケットは例外的に破棄しないように制御を行う。【０２２５】
ビーコンパケットは監視対象経路２３０上をブロードキャストされてもよい。その場合、送信元が計測装置２００ａ、２００ｂ、または２００ｃのパケットを破棄するように、監視対象経路２３０の両端に位置する図３のルータ１２０および１３０が予め設定されていることが好ましい。その設定により、ビーコンパケットがネットワーク１４０やＷＡＮ１５０に流出することを防ぐことができる。【０２２６】
なお、以下では説明の便宜上、第１実施形態の（１ａ）の例と同様の分担順序および停止基準が分担制御部２０６ａに設定されているものとするが、その他の分担順序および停止基準を採用する実施形態も可能である。【０２２７】
また、第３実施形態における重複パケット条件は、例えば「キャプチャを開始した後、実際にキャプチャしたパケットのうち、ビーコンパケットの個数が１個に達した」という条件である。すなわち、第３実施形態における重複パケット条件は、重複パケット数と、ビーコンパケットというパケットの属性により規定される。なお、重複パケット数は、（１ｈ）の例のように可変であってもよい。【０２２８】
続いて、図１３を参照して通信品質測定システム１１０−３によるキャプチャ動作について説明する。
図１３は、第３実施形態におけるキャプチャ動作のフローチャートである。図６と同様の点については適宜説明を省略する。【０２２９】
ステップＳ７０１において、分担制御処理部２０２ａは重複パケット条件を含む分担設定を取得する。具体的には、停止基準と分担制御規則は分担制御部２０６ａが取得し、重複パケット条件は重複パケット指定部２０７ａが取得する。【０２３０】
次に、分担制御処理部２０２ａは、ステップＳ７０２において、分担順序にしたがい、第１の計測装置に計測開始を指示する。つまり、分担制御処理部２０２ａ内の分担制御部２０６ａが分担順序にしたがって最初にキャプチャ動作を行う計測装置を決定し、決定にしたがって分担指示部２０５ａが第１の計測装置にキャプチャ動作の開始を指示する。例えば、（１ａ）の分担順序によれば、第１の計測装置は計測装置２００ａである。【０２３１】
すると、指示を受けた第１の計測装置は、ステップＳ７０３において計測（つまりパケットのキャプチャ）を開始する。
続くステップＳ７０４において、現在計測中の計測装置において、停止基準として設定されている計測時間が経過したか否かが判断される。なお、「現在計測中の計測装置」の意味は、図６における意味と同様である。【０２３２】
計測時間が経過していなければステップＳ７０４の監視が繰り返される。計測時間が経過すると、現在計測中の計測装置（例えば２００ａ）のキャプチャ状況通知部（例えば２１０ａ）は、キャプチャを停止する予定であることを分担制御処理部２０２ａの分担制御部２０６ａに通知し、処理はステップＳ７０５に移行する。【０２３３】
すると、ステップＳ７０５で分担制御処理部２０２ａは、分担順序にしたがい、次の計測装置に計測開始を指示する。なお、「次の計測装置」の意味は、図６における意味と同様である。【０２３４】
そして、ステップＳ７０６では、次の計測装置が計測を開始する。
続くステップＳ７０７において、次の計測装置が、重複パケット条件において設定された属性の重複パケット（すなわちビーコンパケット）を１つ以上（具体的には重複パケット条件で規定されている重複パケット数）取得したか否かが判断される。例えば、次の計測装置が計測装置２００ｂのとき、キャプチャ状況通知部２１０ｂが計測装置２００ｂによるパケットのキャプチャの状況を監視しており、ステップＳ７０７の判断はキャプチャ状況通知部２１０ｂによりなされる。【０２３５】
ステップＳ７０７は、次の計測装置がビーコンパケットを「重複パケット数」分取得するまで繰り返される。次の計測装置がビーコンパケットを「重複パケット数」分取得すると、処理はステップＳ７０８に移行する。【０２３６】
すると、ステップＳ７０８において、次の計測装置（具体的には、例えばキャプチャ状況通知部２１０ｂ）は、分担制御処理部２０２ａに、「重複パケット数」分のビーコンパケットを取得したことを通知する。【０２３７】
続いて、ステップＳ７０９において、分担制御処理部２０２ａは、現在計測中の計測装置に計測停止を指示する。
そして、ステップＳ７１０において、現在計測中の計測装置は、計測（すなわちパケットのキャプチャ）を停止する。【０２３８】
さらに、ステップＳ７１１では計測を続けるか否かが、例えば図６のステップＳ３１１と同様にして判断される。ステップＳ７１１において計測を続けると判断されると、処理はステップＳ７０４に戻り、その際、現在の「次の計測装置」を新たな「現在計測中の計測装置」とする。逆に、ステップＳ７１１において計測を続けないと判断されると、図１３の処理全体が終了する。【０２３９】
続いて、第３実施形態における集計動作について図１４と図１５を参照して説明する。
図１４は、第３実施形態における集計動作を説明する図である。図１４は図２と類似の形式により、各時計による時刻を表す時間軸を横軸として集計動作を説明している。【０２４０】
図１４では、図３のルータ１２０または１３０により中継されて図１２の監視対象経路２３０上を流れる１５個のパケットＰ１〜Ｐ１１が、「元のデータ」として表されている。パケットＰ１〜Ｐ１１はユーザパケットである。【０２４１】
さらに、第３実施形態では、パケットＰ１〜Ｐ１１が流れるタイミングとは無関係に図１２のビーコン送信部２１７ａが一定間隔で送出するビーコンパケットが、監視対象経路２３０上を流れる。図１３には９個のビーコンパケットＢ１〜Ｂ９が示されている。【０２４２】
また、分担制御処理部２０２ａは、設定された分担順序にしたがって、計測装置２００ａ、２００ｂ、２００ｃの順にキャプチャを担当するよう制御する。すると、図１４に示すように、計測装置２００ａが計測区間Ｔ５１でパケットＰ１〜Ｐ６とビーコンパケットＢ１〜Ｂ４をキャプチャする。また、計測装置２００ｂが計測区間Ｔ５２でパケットＰ７〜Ｐ１１とビーコンパケットＢ４〜Ｂ７をキャプチャする。そして計測装置２００ｃが計測区間Ｔ５３でパケットＰ１２〜Ｐ１５とビーコンパケットＢ７〜Ｂ９をキャプチャする。【０２４３】
なお、第３実施形態の重複パケット条件によれば、隣り合う２つの計測区間において２つの計測装置が同じユーザパケットを重複してキャプチャしなくても、フルキャプチャが実現される。【０２４４】
例えば、図１４の例において、計測装置２００ａと２００ｂはビーコンパケットＢ４を重複してキャプチャしているが、計測装置２００ａと２００ｂにより重複してキャプチャされるユーザパケットはない。同様に、計測装置２００ｂと２００ｃはビーコンパケットＢ７を重複してキャプチャしているが、計測装置２００ｂと２００ｃにより重複してキャプチャされるユーザパケットはない。【０２４５】
もちろん、ユーザパケットが監視対象経路２３０上を流れるタイミングによっては、隣り合う２つの計測区間において２つの計測装置が同じユーザパケットを重複してキャプチャすることも起こりうる。【０２４６】
例えば、パケットＰ６とＰ７の間に、ビーコンパケットＢ４よりも前のタイミングで、不図示のユーザパケットＰｘが監視対象経路２３０上を流れる場合、当該ユーザパケットＰｘは、計測装置２００ａと２００ｂにより重複してキャプチャされる。この場合、集計部２０８ａは、「重複パケットであるビーコンパケットＢ４より前に計測区間Ｔ５２でキャプチャされたユーザパケットＰｘも、計測装置２００ａと２００ｂにより重複してキャプチャされたパケットである」と認識することができる。【０２４７】
いずれにせよ、集計処理部２０３ａは、重複してキャプチャされたビーコンパケットを特定することで、重複なく順序を保って、ユーザパケットとビーコンパケットを復元し、さらに各パケットに関連付けられたキャプチャ時刻の補正を行う。【０２４８】
また、ビーコンパケットは所定の形式なので、集計部２０８ａはビーコンパケットとユーザパケットを判別することが可能である。したがって、復元後に集計部２０８ａはビーコンパケットを取り除いて、一連のユーザパケットＰ１〜Ｐ１５のみを後段の解析処理のために出力してもよい。【０２４９】
なお、ビーコンパケットを重複パケットとして利用することで、例えばユーザパケットが少ない場合やユーザパケットの流れが停止してしまう場合でも、「現在計測中の計測装置」は、停止基準が満たされてから一定の時間以内にキャプチャを停止することができる。一定の時間とは、計測装置２００ａ、２００ｂ、および２００ｃの間での２往復分の通信時間と、ビーコンパケットの送信間隔との和である。【０２５０】
また、第３実施形態では集計部２０８ａが重複なく順序を保ってユーザパケットＰ１〜Ｐ１５を復元するだけではなく、相対時刻調整部２０９ａが時刻の調整を行う。なお、説明の便宜上、例えば計測装置２００ｂの時計は計測装置２００ａの時計よりも１秒進んでおり、計測装置２００ｃの時計は計測装置２００ａの時計よりも０．８秒遅れているとする。また、基準の時計は計測装置２００ａの時計であるとする。【０２５１】
この場合、相対時刻調整部２０９ａは、重複パケットであると特定されたビーコンパケットＢ４に計測装置２００ａと２００ｂがそれぞれ関連付けたキャプチャ時刻の差から、計測装置２００ｂの時計は計測装置２００ａの時計よりも１秒進んでいると認識する。よって、相対時刻調整部２０９ａは、パケットＰ７〜Ｐ１１とビーコンパケットＢ４〜Ｂ７に計測装置２００ｂが関連付けたキャプチャ時刻から１秒を引くことで、時刻の調整を行う。【０２５２】
同様に、相対時刻調整部２０９ａは、重複パケットであると特定されたビーコンパケットＢ７に計測装置２００ｂと２００ｃがそれぞれ関連付けたキャプチャ時刻の差から、計測装置２００ｃの時計は計測装置２００ｂの時計よりも１．８秒遅れていることを認識することができる。したがって、相対時刻調整部２０９ａは、計測装置２００ｂの時計は計測装置２００ａの時計よりも１秒進んでいるという認識に基づいて、計測装置２００ｃの時計が計測装置２００ａの時計よりも０．８秒遅れていることを認識することができる。【０２５３】
その結果、相対時刻調整部２０９ａは、パケットＰ１２〜Ｐ１５とビーコンパケットＢ７〜Ｂ９に計測装置２００ｃが関連付けたキャプチャ時刻に０．８秒を足すことで、時刻の調整を行う。【０２５４】
続いて、図１５を参照して、集計動作についてさらに説明する。
図１５は、第３実施形態における集計動作のフローチャートである。図７と同様の点については適宜説明を省略する。【０２５５】
ステップＳ８０１において、集計処理部２０３ａ内の集計部２０８ａは、各計測装置２００ａ、２００ｂ、および２００ｃから、各計測装置２００ａ、２００ｂ、および２００ｃがキャプチャしたパケットを収集する。【０２５６】
集計部２０８ａは、ステップＳ８０１でのパケットの収集の後、隣り合う２つの計測区間のうち後の計測区間でキャプチャされた最初のビーコンパケットを参照パケットとして、参照パケットと同一の、前の計測区間でキャプチャされたパケットを特定する。特定のための処理がステップＳ８０２〜Ｓ８０５に相当する。ステップＳ８０２およびＳ８０５は、図７のステップＳ４０２およびＳ４０６とそれぞれ類似のステップであり、図７のステップＳ４０３〜Ｓ４０５の代わりに第３実施形態ではステップＳ８０３とＳ８０４が実行される。【０２５７】
ステップＳ８０２で集計部２０８ａは、前の計測区間の最後のパケットに注目する。
続くステップＳ８０３〜Ｓ８０５は、前の計測区間でキャプチャされたパケットを後ろから順に調べて、参照パケットと同一のパケットを探す処理である。【０２５８】
すなわち、ステップＳ８０３で集計部２０８ａは、注目パケットがビーコンパケットであるか否かを調べる。注目パケットがビーコンパケットならば処理はステップＳ８０４に移行し、注目パケットがビーコンパケットでなければ処理はステップＳ８０５に移行する。【０２５９】
また、ステップＳ８０４で集計部２０８ａは、参照パケットと注目パケットのビーコン番号が同じか否かを調べる、両パケットのビーコン番号が同じならば処理はステップＳ８０６に移行し、同じでなければ処理はステップＳ８０５に移行する。【０２６０】
つまり、ステップＳ８０３とＳ８０４の実行により、参照パケットと注目パケットが等しいと判明した場合は処理がステップＳ８０６に移行する。他方、参照パケットと注目パケットが等しくないと判明した場合は、処理がステップＳ８０５に移行する。【０２６１】
ステップＳ８０５で集計部２０８ａは、前の計測区間でキャプチャされたパケットのうち、現在の注目パケットの１つ前のパケットに注目し、新たな「注目パケット」とする。そして、処理はステップＳ８０３に戻る。フルキャプチャが実現されている限り、ステップＳ８０３〜Ｓ８０４を１回以上実行した後、必ず処理はステップＳ８０６に移行する。【０２６２】
ステップＳ８０６では、相対時刻調整部２０９ａが、隣り合う２つの計測区間において２つの計測装置でキャプチャした重複パケットのキャプチャ時刻を利用して、計測装置間の時計のずれを算出し、時刻調整を行う。例えば、相対時刻調整部２０９ａは、複数の計測装置のうちのどれか１つの時計に、収集した各パケットのキャプチャ時刻を合わせる。【０２６３】
また、集計部２０８ａは、ステップＳ８０３〜Ｓ８０５の処理により特定した重複パケットを削除することで、重複なく一連のパケットを復元することができる。
なお、ステップＳ８０６の時刻調整の詳細は、図２に関して説明したとおりである。ステップＳ８０６の実行により図１５の処理は終了する。図１５の処理結果も、例えば、ジッタ解析などの各種の解析に利用可能である。【０２６４】
以上、第１〜第３実施形態について説明したが、いずれの実施形態においても、複数の計測装置でキャプチャを分担する。よって、通信品質測定システム全体としては切れ目なくキャプチャを継続することができる一方で、１台の計測装置のキャプチャ量（換言すればキャプチャの実行によって生じる負荷）を抑えることができる。したがって、汎用の安価な装置を使ってフルキャプチャを実現することが可能である。【０２６５】
また、複数の計測装置間での時刻同期がなされていなくても、上記実施形態によれば、重複パケットを用いることにより、各パケットのキャプチャ時刻を基準の時計による時刻で表すための補正が可能である。したがって時刻同期のためのコストも不要である。【０２６６】
なお、本発明は上記の実施形態に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
第１実施形態または第３実施形態を、第２実施形態のように監視対象経路２３０とは独立した通信路２４０を利用するよう変形してもよい。逆に、第２実施形態を、第１実施形態のように、通信路２４０ではなく監視対象経路２３０を利用するように変形してもよい。【０２６７】
また、第２実施形態と第３実施形態を組み合わせることもできる。あるいは、第２実施形態において重複パケット条件として、（１ｅ）〜（１ｇ）のような条件を利用することもできる。【０２６８】
また、上記の説明では、キャプチャされたすべてのパケットを復元する集計動作について説明したが、特定の条件を満たすパケットのみを集計部２０８ａが集計動作において復元してもよい。例えば、特定のＲＴＰセッションに関わるパケットのみを復元することも可能である。【０２６９】
なお、相対時刻調整部２０９ａによる時刻調整は、例えば、２０ｍｓｅｃといった所定の間隔で定期的にＲＴＰパケットが送信されるストリームデータの送信における通信品質の解析に特に好適である。例えば、ＲＴＰパケットのみを集計部２０８ａが復元し、不図示の解析システムが、隣接する２つのパケット同士の間隔をＲＴＰセッションごとに解析してもよい。時刻調整されたキャプチャ時刻を用いることで、例えば、間隔が揺れている（すなわちジッタが生じている）か否か、間隔が次第に大きくなる傾向がある（すなわち通信路上のどこかが混雑している）か否か、といった解析が可能となる。【０２７０】
もちろん、時刻調整は、それ以外の目的で行われてもよい。例えば、ＨＴＴＰ（HyperText Transfer Protocol）のリクエストからレスポンスまでの遅延時間の計測をはじめとして、各種の通信における経過時間や反応時間の正確な計測のために、時刻調整後のキャプチャ時刻を用いることもできる。【０２７１】
また、第１〜第３実施形態では、データ・インジェクション機能を持たないタップ２２０ａ〜２２０ｃを介して計測装置２００ａ〜２００ｃが監視対象経路２３０に接続されている。しかし、タップ２２０ａ〜２２０ｃをデータ・インジェクション機能付きのタップに置き換えてもよい。その場合、通信部２１４ａ〜２１４ｃは省略可能であり、第１〜第３実施形態における通信部２１４ａ〜２１４ｃの機能を通信部２１３ａ〜２１３ｃが兼ねることになる。【０２７２】
あるいは、タップ２２０ａ〜２２０ｃを、ポートミラーリング（port mirroring）機能を持ったスイッチングハブに置き換えることもできる。ポートミラーリング機能を持つスイッチングハブは、一般には、設定を切り替えることによって監視対象のポートへとデータを送出することができるので、通信部２１４ａ、２１４ｂ、および２１４ｃを省略することもできる。【０２７３】
ただし、スイッチングハブは一般的に、ルーティングするデータを一時的に記憶するバッファを内部に有する。そのため、実際に監視対象経路２３０上をパケットが流れた時点と、スイッチングハブを介して計測装置２００ａ、２００ｂ、または２００ｃがパケットをキャプチャする時点に差が生じることがある。【０２７４】
よって、バッファリングによって生じる時差の程度によっては、相対時刻調整部２０９ａによる時刻の調整や、調整後の時刻を用いたジッタ解析など、時刻にシビアな用途には向かないスイッチングハブもある。しかしながら、バッファリングによって生じる時差がキャプチャの目的に応じた許容範囲に収まるならば、タップ２２０ａ〜２２０ｃの代わりにポートミラーリング機能を持ったスイッチングハブを用いてもよい。【０２７５】
また、上記の実施形態において、集計動作における時刻の調整では、計測装置２００ａ、２００ｂ、および２００ｃの時計の時刻のずれを相対時刻調整部２０９ａが補正している。しかし、複数の時計の間で、単に時刻がずれているだけではなく、時刻が進む割合が異なる場合もある。例えば、計測装置２００ａの時計が６０秒進む間に計測装置２００ｂの時計は６０．５秒進むかもしれない。【０２７６】
このように複数の時計の間で時刻が進む割合が異なる場合は、例えば、重複パケット条件において重複パケット数をＮ（Ｎ＞１）に設定してもよい。そして、例えば、ｊ番目（１≦ｊ≦Ｎ）の重複パケットに２つの計測装置がそれぞれ関連付けたキャプチャ時刻の差ｄｊの変動に基づいて、相対時刻調整部２０９ａが時刻が進む割合の差を算出し、時刻の調整を行ってもよい。【０２７７】
また、上記の各実施形態では、隣り合う２つの計測区間に対応する２つの計測装置によってある１つのパケットが重複してキャプチャされる場合、キャプチャの絶対時刻同士は等しいと仮定している。複数の計測装置が同一ネットワーク上（例えば１つのコリジョンドメイン内）に接続される限り、一般に、この仮定が成立すると見なせる。【０２７８】
しかし、タップやポートミラーリング機能を備えたスイッチングハブなどの分岐装置の特性、またはネットワークの構成など、何らかの理由によって、１つのパケットが２つの計測装置で重複してキャプチャされる絶対時刻に差が生じる実施形態もあるかもしれない。その場合、無視することができないほどの差があるならば、例えば次のように図１の処理を変形し、同じパケットが重複してキャプチャされていることをより確実に確認してもよい。【０２７９】
すなわち、ステップＳ１０２において分担制御処理装置は、計測装置Ｂに計測開始を指示するとともに、現在計測中の計測装置が計測装置Ａであることを通知する。そして、ステップＳ１０３で重複パケット条件が満たされたと計測装置Ｂが認識すると、計測装置Ｂは、計測装置Ｂ自身が重複パケットとしてキャプチャしたパケットを同定するための情報を計測装置Ａに送る。すなわち、計測装置Ｂは、計測装置Ａも同じパケットをキャプチャしたか否かを計測装置Ａに問い合わせる。【０２８０】
そして、計測装置Ａは計測装置Ｂの問い合わせに応答する。計測装置ＡとＢの双方が同じパケットを重複パケットとしてキャプチャしていることが確認できたら、計測装置Ｂは、図２のステップＳ１０３と同様に、重複パケット条件が満たされたことを分担制御処理装置に通知する。【０２８１】
なお、計測装置Ｂから計測装置Ａへの問い合わせと計測装置Ａから計測装置Ｂへの応答を、分担制御処理装置を介して行うよう、さらに上記の変形例を変形することも可能である。あるいは、計測装置Ａは、計測装置Ｂからの問い合わせにより、計測装置Ｂと同じパケットを重複してキャプチャしていたことを認識した時点でキャプチャを停止し、キャプチャを停止したことを分担制御処理装置に報告してもよい。
【図１】
2010086907.tif 000003
【図２】
2010086907.tif 000004
【図３】
2010086907.tif 000005
【図４】
2010086907.tif 000006
【図５】
2010086907.tif 000007
【図６】
2010086907.tif 000008
【図７】
2010086907.tif 000009
【図８】
2010086907.tif 000010
【図９】
2010086907.tif 000011
【図１０】
2010086907.tif 000012
【図１１】
2010086907.tif 000013
【図１２】
2010086907.tif 000014
【図１３】
2010086907.tif 000015
【図１４】
2010086907.tif 000016
【図１５】
2010086907.tif 000017
【手続補正書】
【提出日】平成23年3月9日(2011.3.9)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットをキャプチャする複数の計測装置と、
前記ネットワーク上を流れるパケットのキャプチャの、前記複数の計測装置間での分担を制御する分担制御処理手段と、
前記複数の計測装置がそれぞれキャプチャしたパケットを収集する集計手段とを備え、
前記複数の計測装置のそれぞれは、
前記キャプチャの開始と停止を制御するキャプチャ制御手段と、
前記キャプチャ制御手段による制御にしたがって行われる前記キャプチャに関する状況を前記分担制御処理手段に通知するキャプチャ状況通知手段とを備え、
前記分担制御処理手段は、
予め決められた分担制御規則と前記キャプチャ状況通知手段により通知される前記状況に基づいて、前記複数の計測装置のいずれに前記キャプチャを開始または停止させるかを決定する分担制御手段と、
前記分担制御手段の決定にしたがって前記複数の計測装置に前記キャプチャの開始または停止を指示する分担指示手段とを備え、
前記分担制御手段が第１の計測装置から第２の計測装置に前記キャプチャを交替させることを決定すると、前記分担指示手段は、前記キャプチャを開始するよう前記第２の計測装置に指示し、前記第２の計測装置がパケットを実際にキャプチャしたことを表す第１の状況を前記第２の計測装置の前記キャプチャ状況通知手段が前記分担制御処理手段に通知した後に、前記第１の計測装置に前記キャプチャの停止を指示し、
前記集計手段は、前記第１と前記第２の計測装置が重複してキャプチャしたために前記収集したパケットの中に重複して含まれるパケットを重複パケットとして特定することで、前記ネットワーク上を流れる一連のパケットを重複なく復元する、
ことを特徴とするパケットキャプチャシステム。
【請求項２】
前記第１の計測装置が前記キャプチャを行っているときに、前記キャプチャに関する状況が予め決められた停止基準を満たす場合、前記第１の計測装置の前記キャプチャ状況通知手段は、前記停止基準が満たされているという第２の状況を前記分担制御手段に通知し、
前記分担制御手段は、通知された前記第２の状況を契機として、前記分担制御規則に基づいて、前記第１の計測装置から前記第２の計測装置に前記キャプチャを交替させることを決定する、
ことを特徴とする請求項１に記載のパケットキャプチャシステム。
【請求項３】
前記分担制御規則は、前記複数の計測装置の間で前記キャプチャを分担する分担順序を静的に定めていることを特徴とする請求項１または２に記載のパケットキャプチャシステム。
【請求項４】
前記分担制御規則は、前記第２の状況が前記第１の計測装置の前記キャプチャ状況通知手段から通知されたときに、前記複数の計測装置のうち前記第１の計測装置以外の１つ以上の不活性計測装置に問い合わせる問い合わせ事項と、前記問い合わせ事項に対する応答の中から１つの応答を選択するための選択基準とを含み、
前記パケットキャプチャシステムは、前記分担制御規則にしたがって前記問い合わせ事項を前記不活性計測装置に問い合わせる問い合わせ手段をさらに備え、
前記分担制御手段は、前記問い合わせ手段による問い合わせに対する前記不活性計測装置からの前記応答の中から前記選択基準によって１つの応答を選択し、選択した前記１つの応答を返した計測装置を前記第２の計測装置として決定する、
ことを特徴とする請求項２に記載のパケットキャプチャシステム。
【請求項５】
前記複数の計測装置は、前記ネットワーク上を流れるパケットをキャプチャすると、キャプチャ時刻と関連付けて前記キャプチャしたパケットを記憶し、
前記集計手段は、前記複数の計測装置から前記キャプチャ時刻も収集し、
前記パケットキャプチャシステムは、前記重複パケットに前記第１と前記２の計測装置がそれぞれ関連付けた第１と第２のキャプチャ時刻の差に基づいて、前記重複なく復元した一連のパケットにそれぞれ関連付けられている前記キャプチャ時刻を調整し、基準の時計で表した時刻に補正する相対時刻調整手段をさらに備える、
ことを特徴とする請求項１から４のいずれか１項に記載のパケットキャプチャシステム。
【請求項６】
同一のネットワーク上に接続された複数の計測装置を備えるパケットキャプチャシステムが実行するパケットキャプチャ方法であって、
前記複数の計測装置のうち第１の計測装置に前記ネットワーク上を流れるパケットのキャプチャの開始を指示し、
前記第１の計測装置に、キャプチャしたパケットの個数、前記キャプチャを行う時間、または前記第１の計測装置の負荷に関して予め決められた停止基準が満たされるか否かを監視させ、
前記停止基準が満たされたとき、前記第１の計測装置に、前記停止基準が満たされたという第１の状況を通知させ、
前記第１の状況の通知を契機として、予め決められた分担制御規則に基づいて、前記複数の計測装置のうち第２の計測装置に前記キャプチャを交替させることを決定し、
前記キャプチャを開始するよう前記第２の計測装置に指示し、
前記第２の計測装置が実際にパケットをキャプチャしたとき、前記第２の計測装置に前記パケットを実際にキャプチャしたという第２の状況を通知させ、
前記第２の状況の通知の後に、前記第１の計測装置に前記キャプチャの停止を指示し、
前記複数の計測装置がそれぞれキャプチャしたパケットを収集し、
前記第１の計測装置と前記第２の計測装置が重複してキャプチャしたために前記収集したパケットの中に重複して含まれるパケットを重複パケットとして特定することで、前記ネットワーク上を流れる一連のパケットを重複なく復元する、
ことを特徴とするパケットキャプチャ方法。
【請求項７】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットをキャプチャする情報処理装置に、
前記ネットワーク上を流れるパケットのキャプチャの開始と停止を、前記情報処理装置と通信可能な分担制御処理手段から与えられる指示にしたがって制御するキャプチャ制御ステップと、
前記キャプチャ制御ステップによる制御にしたがって行われる前記キャプチャに関する状況を前記分担制御処理手段に通知するキャプチャ状況通知ステップとを実行させ、
前記分担制御処理手段から前記キャプチャの開始が指示されると、さらに
前記キャプチャを開始する制御を行うキャプチャ開始ステップと、
キャプチャするパケットの個数、前記キャプチャを行う時間、または前記情報処理装置の負荷に関して予め決められた停止基準が満たされるか否かの監視を開始する監視開始ステップと、
実際にパケットをキャプチャしたとき前記パケットを実際にキャプチャしたという状況を前記分担制御処理手段に通知する第１の通知ステップとを実行させ、
前記停止基準が満たされたときにはさらに、
前記停止基準が満たされたという状況を前記分担制御処理手段に通知する第２の通知ステップと、
前記分担制御処理手段から前記キャプチャの停止の指示を受けてから、前記キャプチャを停止させる制御を行う停止ステップとを実行させる、
ことを特徴とするプログラム。
【請求項８】
同一のネットワーク上に接続され、前記ネットワーク上を流れるパケットのキャプチャを行う複数の計測装置と通信可能な情報処理装置に、前記複数の計測装置間での前記キャプチャの分担を制御させるプログラムであって、
該プログラムは前記情報処理装置に、
予め決められた分担制御規則と、前記複数の計測装置が通知してくる前記キャプチャに関する状況とに基づいて、前記複数の計測装置のいずれに前記キャプチャを開始または停止させるかを決定する決定ステップと、
前記決定ステップにおける決定にしたがって前記複数の計測装置に前記キャプチャの開始または停止を指示する指示ステップとを実行させ、
前記決定ステップにおいて、第１の計測装置から第２の計測装置に前記キャプチャを交替させると決定されると、前記プログラムは、前記指示ステップにおいて前記情報処理装置に、前記キャプチャを開始するよう前記第２の計測装置に指示させるとともに、前記第２の計測装置がパケットを実際にキャプチャしたという状況を前記第２の計測装置が通知してきた後に、前記第１の計測装置に前記キャプチャの停止を指示させる、
ことを特徴とするプログラム。
【国際調査報告】
2010086907.tif 000018
2010086907.tif 000019
2010086907.tif 000020
2010086907.tif 000021