(57)【要約】【課題】パケットデータが破棄されてもパケットデータに関連する通信の分析を継続する。【解決手段】サーバＡ、ＢとサーバＣ、Ｄとのそれぞれの、パケット通信のミラーリングによるコピーパケットデータはそれぞれ、セッションｓ１〜ｓ４とセッションｓ５〜ｓ１１に属する。これらのコピーパケットデータがポート１６Ｐ１４に送信される。これらのパケットデータの合計のパケットデータ量が、ポート１６Ｐ１４が一時的に記憶できるパケットデータ量を超えると、超えた分のパケットデータ（セッションｓ１１に属する）が破棄される。当該破棄されたパケットデータのセッションｓ１１に属するパケットデータを、スイッチ２ＳＷ２のポート１６Ｐ２３から分析装置１０に送信する分析装置１０は、パケットデータが破棄されても当該パケットデータに対応するセッションのパケットデータを受信できるので、当該セッションの通信の分析を継続することができる。【選択図】図１６
2014230105.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介してパケット通信を行う複数のサーバ装置と、前記複数のサーバ装置間に設けられ、複数のポートに入力されたパケットデータを中継するとともに、所定のポートを通過するパケットデータを複製し、該複製したコピーパケットデータを複数のポートのうちの第１のポートまたは第２のポートに出力する転送装置と、を備えたシステムにおいて前記転送装置の第１のポート及び第２のポートに接続された分析装置であって、
前記コピーパケットデータを受信する受信部と、
受信した前記コピーパケットデータに含まれる所定の情報と前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる所定の情報に基づいて、受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出する検出部と、
前記検出部により受信した前記コピーパケットデータが連続していないことが検出された場合には、連続していない前記コピーパケットデータを前記第１のポートに出力した所定のポートを特定する特定部と、
前記特定部により特定された所定のポートを通過するパケットデータの複製したコピーパケットデータを前記第２のポートに出力するように、前記転送装置を制御する制御部と、
を備えた分析装置。
【請求項２】
前記システムは、複数の転送装置を備え、
前記コピーパケットデータがどの転送装置のどのポートを経由して前記分析装置に到達するのかを示す、送信元情報、送信先情報、経由する転送装置のポート情報、及び前記分析装置の接続情報を記憶する記憶部と、
前記コピーパケットデータが連続していないことが検出された場合、前記記憶部に記憶された情報に基づいて、連続していない前記コピーパケットデータを出力する前記特定された所定のポートを有する転送装置とは異なる他の転送装置があるかどうかを判断する判断部と、
を備え、
前記制御部は、前記判断部により前記コピーパケットデータを出力する前記他の転送装置があると判断された場合、前記記憶部に記憶された情報に基づいて、前記コピーパケットデータを前記他の転送装置の経由するポートに出力されるように、前記転送装置を制御する
請求項１に記載の分析装置。
【請求項３】
連続していないコピーパケットデータが検出された回数を転送装置毎に記憶する回数記憶部と、
情報を表示する表示部と、
を更に備え、
前記制御部は、前記連続していないコピーパケットが検出された場合には、前記回数記憶部に記憶された該当する転送装置に対応する回数を更新すると共に、前記回数記憶部に記憶された回数が所定回数以上となった場合に、前記転送装置に関連する情報が表示されるように前記表示部を制御する
請求項２に記載の分析装置。
【請求項４】
請求項１〜請求項３の何れか１項に記載の分析装置と、
前記複数のサーバ装置と、
前記転送装置と、
を備えたネットワークシステム。
【請求項５】
ネットワークを介してパケット通信を行う複数のサーバ装置と、前記複数のサーバ装置間に設けられ、複数のポートに入力されたパケットデータを中継するとともに、所定のポートを通過するパケットデータを複製し、該複製したコピーパケットデータを複数のポートのうちの第１のポートまたは第２のポートに出力する転送装置と、を備えたシステムにおいて前記転送装置の第１のポート及び第２のポートに接続された分析装置に該複製したコピーパケットデータを送信するポートを、該第１のポートから該第２のポートに切り替えるポート切り替え方法であって、
前記コピーパケットデータを受信し、
受信した前記コピーパケットデータに含まれる所定の情報と前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる所定の情報に基づいて、受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出し、
前記受信した前記コピーパケットデータが連続していないことが検出された場合には、連続していない前記コピーパケットデータを前記第１のポートに出力した所定のポートを特定し、
前記特定された所定のポートを通過するパケットデータの複製したコピーパケットデータを前記第２のポートに出力する
ことを含むポート切り替え方法。
【請求項６】
ネットワークを介してパケット通信を行う複数のサーバ装置と、前記複数のサーバ装置間に設けられ、複数のポートに入力されたパケットデータを中継するとともに、所定のポートを通過するパケットデータを複製し、該複製したコピーパケットデータを複数のポートのうちの第１のポートまたは第２のポートに出力する転送装置と、を備えたシステムにおいて前記転送装置の第１のポート及び第２のポートに接続された分析装置に、該複製したコピーパケットデータを前記分析装置に送信するためのポートが、該第１のポートから該第２のポートに切り替えわるように前記転送装置を制御することを含む処理を実行させるためのポート切り替えプログラムであって、
受信した前記コピーパケットデータに含まれる所定の情報と前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる所定の情報に基づいて、受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出し、
前記受信した前記コピーパケットデータが連続していないことが検出された場合には、連続していない前記コピーパケットデータを前記第１のポートに出力した所定のポートを特定し、
前記特定された所定のポートを通過するパケットデータの複製したコピーパケットが前記第２のポートに出力されるように、前記転送装置を制御する
処理を当該分析装置に実行させるためのポート切り替えプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分析装置、ネットワークシステム、ポートの切り替え方法及びプログラムに関する。
【背景技術】
【０００２】
従来、パケット通信を行う複数のサーバと、複数のサーバ間のパケットデータを転送するスイッチとを備えたシステムにおけるパケット通信の状態をシステム分析装置が分析することが行われている。例えば、図２４（Ａ）に示すように、システム分析装置１００は、スイッチ１２０ＳＷを介して行われるサーバＡ１１４Ａ、サーバＢ１１４Ｂ間のパケット通信を分析する。
【０００３】
ここで、スイッチ１２０ＳＷは、３つのポート１１６Ｐ１〜１１６Ｐ３を有する。サーバＡ１１４Ａは、スイッチ１２０ＳＷのポート１１６Ｐ１に接続されている。サーバＢ１１４Ｂは、スイッチ１２０ＳＷのポート１１６Ｐ２に接続されている。サーバＡ１１４Ａ、サーバＢ１１４Ｂ間のパケット通信は、スイッチ１２０ＳＷのポート１１６Ｐ１、１１６Ｐ２を介して行われる。
【０００４】
システム分析装置１００は、サーバＡ１１４Ａ、サーバＢ１１４Ｂ間のパケット通信を分析するため、次のようなミラーリングを、スイッチ１２０ＳＷに設定している。即ち、まず、サーバＡ１１４Ａ、サーバＢ１１４Ｂ間のパケット通信が行われているスイッチ１２０ＳＷのポート１１６Ｐ１、１１６Ｐ２の一方のポート１１６Ｐ２が、当該ポートを通過するパケットデータがコピーされるポートである対象ポートとして、設定される。また、上記ポート１１６Ｐ１、１１６Ｐ２以外の、分析装置１００に接続されたポート１１６Ｐ３が出力ポートとして設定される。対象ポート１１６Ｐ２を基準にコピーされたパケットデータが、出力ポート１１６Ｐ１３を介してシステム分析装置１００に送信される。
【０００５】
これにより、サーバＡ１１４Ａ、サーバＢ１１４Ｂ間でパケット通信が行われると、当該通信のパケットデータが、対象ポート１１６Ｐ２を通過する際、コピーされると共に、コピーされたパケットデータが、出力ポート１１６Ｐ３を介して、分析装置１００に出力される。
【０００６】
ところで、上記の例では、２つのサーバＡ１１４ＡとサーバＢ１１４Ｂの間の通信を説明した。しかし、実際は、より多くのサーバの間で、複数のスイッチを介して通信がされる。図２４（Ｂ）には、３つのサーバＡ１１４Ａ〜サーバＣ１１４Ｃの間で、２つのスイッチ１２０ＳＷ１、１２０ＳＷ２を介して通信がされる例が示されている。この例では、サーバＢ１１４ＢとサーバＣ１１４Ｃとの間の通信のミラーリングでは、対象ポートとしてポート１１６Ｐ１３が設定されている。サーバＡ１１４ＡとサーバＢ１１４Ｂとの間の通信のミラーリングでは、対象ポートとしてポート１１６Ｐ１１が設定されている。そして、これらのポート１１６Ｐ１１、１１６Ｐ１３を通過するパケットデータコピーされると共にコピーされたパケットデータが出力ポート１１６Ｐ１４を介してシステム分析装置１００に送信される。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２００３−５２５０００号公報
【特許文献２】特開２０１３−３０９４４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、パケットデータを転送する際、ポートは、受信したパケットデータを一時的に記憶し、記憶したパケットデータを転送する。そして、ポートは、一時的に記憶することができるパケットデータ量の限界が定められている。従って、ポート１１６Ｐ１１とポート１１６Ｐ１３とを通過したパケットデータのコピーが一時的に出力ポート１１６Ｐ１４に集中すると、上記限界を超える分の何れかのパケットデータが、出力ポート１１６Ｐ１４に記憶されずに、破棄される。破棄されたパケットデータは、システム分析装置に出力されない。このような状態が継続すると、システム分析装置は、上記システムにおける、破棄されたパケットデータの側のパケット通信の状態を正確に分析することができない。
【０００９】
１つの側面として、本発明は、パケットデータが破棄されても当該パケットデータに関連する通信の分析を継続できるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
開示の技術において、システムは、ネットワークを介してパケット通信を行う複数のサーバ装置を備えている。また、システムは、前記複数のサーバ装置間に設けられ、複数のポートに入力されたパケットデータを中継するとともに、所定のポートを通過するパケットデータを複製し、該複製したコピーパケットデータを複数のポートのうちの第１のポートまたは第２のポートに出力する転送装置を備えている。分析装置は、前記システムにおいて前記転送装置の第１のポート及び第２のポートに接続されている。受信部は、前記コピーパケットデータを受信する。検出部は、受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出する。当該検出は、受信した前記コピーパケットデータに含まれる所定の情報と前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる所定の情報に基づいて、行われる。特定部は、前記検出部により受信した前記コピーパケットデータが連続していないことが検出された場合には、連続していない前記コピーパケットデータを前記第１のポートに出力した所定のポートを特定する。制御部は、前記特定部により特定された所定のポートを通過するパケットデータの複製したコピーパケットデータを前記第２のポートに出力するように、前記転送装置を制御する。
【発明の効果】
【００１１】
１つの側面として、パケットデータが破棄されても当該パケットデータに関連する通信の分析を継続することができる、という効果を有する。
【図面の簡単な説明】
【００１２】
【図１】２つのスイッチと４つのサーバとを有するシステムと、当該システムにおける通信を分析する分析装置１０とを示す図である。
【図２】システム分析装置１０とスイッチ１ＳＷ１、スイッチ２ＳＷ２のブロック図である。
【図３】（Ａ）は、システム分析装置１０の分析プログラムを示し、（Ｂ）は、システム分析装置１０の分析プロセスを示す図である。
【図４】システム分析装置１０の記憶装置２４に設けられた経路スイッチ登録テーブル５０を示す図である。
【図５】システム分析装置１０の記憶装置２４に設けられた初期設定テーブル５２を示す図である。
【図６】各スイッチに設けられたセッション定義テーブル５４を示す図である。
【図７】システム分析装置１０の記憶装置２４に設けられたセッション情報テーブル５６を示す図である。
【図８】システム分析装置１０の記憶装置２４に設けられたスイッチ切り替り回数テーブル５８を示す図である。
【図９】パケットデータの内容を示す図であり、（Ａ）は、ＴＣＰに従ったパケットデータ６２Ａを、（Ｂ）は、ＵＤＰに従ったパケットデータ６２Ｂを、（Ｃ）は、ＩＰヘッダ６４を、（Ｄ）は、ＴＣＰヘッダ６６Ａを、（Ｅ）は、ＵＤＰヘッダ６６Ｂを示す図である。
【図１０】システム分析装置１０がスイッチにミラーリングをするように設定するミラーリング初期設定処理の一例を示すフローチャートである。
【図１１】パケットデータの破棄検出処理の一例を示すフローチャートである。
【図１２】ＵＤＰに従ったパケットデータの破棄の検出及び設定処理の一例を示すフローチャートである。
【図１３】（Ａ）は、ＵＤＰに従ったパケットデータが送信される様子を示し、（Ｂ）は、メッセージ（１）Ｍ１のパケットデータの内、２番目のパケットデータが破棄され、次のメッセージ（２）Ｍ２の先頭のパケットデータが検出された様子を示す図である。
【図１４】第１の周期処理の一例を示すフローチャートである。
【図１５】第２の周期処理の一例を示すフローチャートである。
【図１６】（Ａ）は、セッションｓ１１のパケットデータが出力ポート１６Ｐ１４で破棄されている様子を示し、（Ｂ）は、パケットデータの破棄が生じたセッションｓ１１に属するパケットデータが、スイッチ１ＳＷ１からスイッチ２ＳＷ２に切り替わって、システム分析装置１０に送信される様子を示す図である。
【図１７】第１−１の変形例を示すブロック図である。
【図１８】第１−２の変形例を示すブロック図である。
【図１９】第１−３の第１の変形例を示すブロック図である。
【図２０】第１−３の第２の変形例を示すブロック図である。
【図２１】第１−４の変形例を示すブロック図である。
【図２２】第３の変形例におけるＵＤＰに従ったパケットデータの破棄の検出及び設定処理の一例を示すフローチャートである。
【図２３】（Ａ）は、メッセージ（１）Ｍ１のパケットデータの内、先頭のパケットデータが破棄されている様子を示し、（Ｂ）は、メッセージ（１）Ｍ１の最後のパケットデータが破棄された様子を示す図である。
【図２４】（Ａ）は、スイッチ１２０ＳＷを介して行われるサーバＡ１１４Ａ、サーバＢ１１４Ｂ間の通信がミラーリングされる様子を示す図であり、（Ｂ）は、３つのサーバ１１４Ａ〜１１４Ｃの間で、２つのスイッチ１２０ＳＷ１、１２０ＳＷ２を介して行われる通信のミラーリングの様子を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照して開示の技術の実施形態の一例を詳細に説明する。
図１には、２個のスイッチ１ＳＷ１、スイッチ２ＳＷ２と、４個のサーバ装置（以下、「サーバ」という）Ａ１４Ａ、サーバＢ１４Ｂ、サーバＣ１４Ｃ、サーバＤ１４Ｄとを有するシステムが示されている。また、図１には、当該システムにおけるパケット通信を分析するシステム分析装置１０が示されている。図１に示すように、スイッチ１ＳＷ１には、サーバＣ１４ＣとサーバＤ１４Ｄが接続され、スイッチ２ＳＷ２には、サーバＡ１４ＡとサーバＢ１４Ｂが接続されている。各スイッチ１ＳＷ１、スイッチ２ＳＷ２には、システム分析装置１０が接続されている。
【００１４】
なお、スイッチ１ＳＷ１、スイッチ２ＳＷ２は、本開示の技術の「転送装置」の一例であり、４個のサーバＡ１４Ａ、サーバＢ１４Ｂ、サーバＣ１４Ｃ、サーバＤ１４Ｄは、本開示の技術の「複数のサーバ装置」の一例である。システムは、本開示の技術の「ネットワークシステム」の一例である。システム分析装置１０は、本開示の技術の「分析装置」の一例である。
【００１５】
スイッチ１ＳＷ１には、４個のポート１６Ｐ１１〜１６Ｐ１４が設けられる。サーバＣ１４Ｃはポート１６Ｐ１２に接続され、サーバＤ１４Ｄはポート１６Ｐ１３に接続されている。サーバＣ１４ＣとサーバＤ１４Ｄは、ポート１６Ｐ１２、ポート１６Ｐ１３を介してパケット通信を行う。ポート１６Ｐ１３は、当該ポートを通過するパケットデータがコピーされる、即ち、ミラーリングの対象ポートとして、システム分析装置１０により設定されている。ポート１６Ｐ１４には、システム分析装置１０が接続されている。
【００１６】
スイッチ２ＳＷ２には、４個のポート１６Ｐ２１〜１６Ｐ２４が設けられる。サーバＡ１４Ａはポート１６Ｐ２１に接続され、サーバＢ１４Ｂはポート１６Ｐ２２に接続されている。サーバＡ１４ＡとサーバＢ１４Ｂは、ポート１６Ｐ２１、ポート１６Ｐ２２を介して通信を行う。ポート１６Ｐ２２は、ミラーリングの対象ポートとして、システム分析装置１０により設定されている。ポート１６Ｐ２３には、システム分析装置１０が接続されている。
【００１７】
スイッチ１ＳＷ１のポート１６Ｐ１１と、スイッチ２ＳＷ２のポート１６Ｐ２４とは接続されている。スイッチ１ＳＷ１のポート１６Ｐ１４は、スイッチ１ＳＷ１においてミラーリングの対象ポートとして設定されたポートを通過するパケットのコピーされたパケットがシステム分析装置１０に出力されるように、出力ポートとして、システム分析装置１０により設定されている。よって、ミラーリングの対象ポート１６Ｐ１３を基準としてコピーされたパケットが、ポート１６Ｐ１４に出力される。ミラーリング対象ポート１６Ｐ２２を基準としてコピーされたパケットが、ポート１６Ｐ２４、１６Ｐ１１を介してポート１６Ｐ１４に送信されるように、スイッチ２ＳＷ２がシステム分析装置１０により設定されている。このように、ポート１６Ｐ１４には、ポート１６Ｐ１３を通過するコピーされたパケットと、ポート１６Ｐ２２を通過するコピーされたパケットとが入力される。ポート１６Ｐ１４は、入力されたパケットを一時的に記憶し、記憶したパケットをシステム分析装置１０に送信する。なお、ポート１６Ｐ１４において一時的に記憶できるパケットは１００Ｍｂｐｓ（bits per second）である。
【００１８】
図２には、システム分析装置１０とスイッチ１ＳＷ１、スイッチ２ＳＷ２のブロック図が示されている。図２に示すように、システム分析装置１０は、ＣＰＵ（中央処理装置：Central Processing Unit）２２、入力部２１、表示部２３が、バス２８を介して相互に接続されている。バス２８には更に、メモリ２６、記憶装置２４、ＮＩＣ（Network Interface Card）３０が接続されている。なお、記憶装置２４には、後述する、分析プログラム（図３（Ａ））、種々のテーブル（図４、図５、図７、図８）が記憶されている。
なお、サーバＡ１４Ａ〜サーバＤ１４Ｄは、システム分析装置１０と同様の構成であるので、その説明を省略する。
ＮＩＣ３０は、本開示の技術の「受信部」の一例であり、ＣＰＵ２２は、本開示の技術の「制御部」の一例である。
【００１９】
次に、スイッチ１ＳＷ１、スイッチ２ＳＷ２の構成を説明するが、これらの構成は同様であるので、スイッチ１ＳＷ１のみを説明し、スイッチ２ＳＷ２の構成の説明を省略する。スイッチ１ＳＷ１は、ＣＰＵ２２ＳＷ、ＲＯＭ２４ＳＷ、メモリ２６ＳＷが、バス２８ＳＷを介して相互に接続されている。バス２８ＳＷには、ポート１６Ｐ１１〜１６Ｐ１４が接続されている。メモリ２６ＳＷには後述するセッション定義テーブル５４（図６）が記憶されている。
【００２０】
図３（Ａ）には、システム分析装置１０の分析プログラムが示されている。分析プログラムは、ミラーリング初期設定部３２Ａ、セッション情報処理部３３Ａ、ＴＣＰ解析部３４Ａ、ＵＤＰ解析部３６Ａ、スイッチ移動監視部３８Ａ、移動セッション解析部４０Ａ、及びセッション定義変更部４２Ａを備えている。図３（Ｂ）には、システム分析装置１０の分析プロセスが示されている。分析プロセスは、ミラーリング初期設定プロセス３２Ｂ、セッション情報処理プロセス３３Ｂ、ＴＣＰ解析プロセス３４Ｂ、ＵＤＰ解析プロセス３６Ｂを備えている。また、分析プロセスは、スイッチ移動監視プロセス３８Ｂ、移動セッション解析プロセス４０Ｂ、及びセッション定義変更プロセス４２Ｂを備えている。なお、システム分析装置１０におけるＣＰＵ２２が、上記プロセス３２Ｂ〜４２Ｂの各々を実行することにより、上記各部３２Ａ〜４２Ａとして動作する。
【００２１】
図４には、システム分析装置１０の記憶装置２４に設けられた経路スイッチ登録テーブル５０が示されている。経路スイッチ登録テーブル５０には、パケットデータを送信する宛先のサーバのＩＰ（Internet Protocol）アドレスである送信先ＩＰアドレスを記憶する欄と、パケットデータの送信元のサーバのＩＰアドレスである送信元ＩＰアドレスを記憶する欄が設けられている。また、経路スイッチ登録テーブル５０には、１番目〜ｎ番目までの各スイッチの識別情報を記憶するための「１番目」〜「ｎ番目」の欄が設けられている。
【００２２】
ここで、「１番目」〜「ｎ番目」を説明する。スイッチは、サーバ間の通信におけるパケットデータを転送した場合には、転送したパケットデータをコピーし、コピーすることにより生成されたパケットデータであるコピーパケットデータをシステム分析装置１０に送信する。例えば、図１に示すように、サーバＣ１４ＣとサーバＤ１４Ｄとは、スイッチ１ＳＷ１におけるポート１６Ｐ１２、１６Ｐ１３を介してパケット通信を行う。スイッチ１ＳＷ１は、ポート１６Ｐ１３をコピーの対象ポートとして、当該通信におけるパケットデータをコピーし、コピーパケットデータを、出力ポート１６Ｐ１４を介してシステム分析装置１０に送信する。また、サーバＡ１４ＡとサーバＢ１４Ｂとがスイッチ２ＳＷ２におけるポート１６Ｐ２１、１６Ｐ２２を介してパケット通信を行う。スイッチ２ＳＷ２は、ポート１６Ｐ２２をコピーの対象ポートとして、当該パケット通信におけるパケットデータをコピーし、コピーしたパケットデータ（コピーパケットデータ）を、システム分析装置１０に送信する。本実施の形態では、各スイッチ１ＳＷ１、スイッチ２ＳＷ２は、システム分析装置１０により次のように設定されている。即ち、初期の段階では、各サーバ間の通信におけるコピーパケットデータが、スイッチ１ＳＷ１に集中して集められ、集められたコピーパケットデータがシステム分析装置１０に送信される。よって、スイッチ２ＳＷ２は、コピーパケットデータを、スイッチ２ＳＷ２のポート１６Ｐ２４、スイッチ１ＳＷ１のポート１６Ｐ１１を介してスイッチ１ＳＷ１に送信する。
【００２３】
そこで、スイッチ１ＳＷ１から、各サーバ間のパケット通信における、スイッチ１ＳＷ１から、最も多くのスイッチを介して接続されたサーバが直接接続されるスイッチまでの各スイッチが、順に「１番目」〜「ｎ番目」として定められている。「１番目」〜「ｎ番目」の各スイッチの識別情報（ＩＤ）が、「１番目」〜「ｎ番目」の欄に記憶されている。例えば、サーバＣ１４ＣからサーバＤ１４Ｄにパケットデータを送信する通信の場合には、「１番目」の欄のみに、スイッチ１ＳＷ１のＩＤ＝ＳＷ１が記憶される。また、サーバＡ１４ＡからサーバＢ１４Ｂにパケットデータを送信する通信の場合には、「１番目」の欄に、スイッチ１ＳＷ１のＩＤ＝ＳＷ１が、「２番目」の欄には、スイッチ２ＳＷ２のＩＤ＝ＳＷ２が記憶される。なお、オペレータが事前に、入力部２１を介して入力することにより、送信先ＩＰアドレス、送信元ＩＰアドレスの各データが経路スイッチ登録テーブル５０の各欄に記憶される。なお、システム分析装置１０とスイッチ１ＳＷ１、スイッチ２ＳＷ２とはそれぞれ、１つのポート１６Ｐ１４、１６Ｐ２３により接続されている。よって、上記「１番目」〜「ｎ番目」の欄に記憶されている各スイッチの識別情報（ＳＷ１、ＳＷ２）は、当該ポート１６Ｐ１４、１６Ｐ２３の識別番号にも対応する。
経路スイッチ登録テーブル５０は、本開示の技術の「記憶部」の一例である。
【００２４】
図５には、システム分析装置１０の記憶装置２４に設けられた初期設定テーブル５２が示されている。初期設定テーブル５２には、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号を記憶するための欄が設けられている。Ｌ４とは、ＯＳＩ参照モデルにおける４番目の層（トランスポート層）である。Ｌ４には、ＴＣＰ（Transmission Control Protocol）、ＵＤＰ（User Datagram Protocol）、ＤＣＣＰ（Datagram Congestion Control Protocol）、ＳＣＴＰ（Stream Control Transmission Protocol）、ＲＳＶＰ（Resource Reservation Protocol）等が存在する。しかし、本実施の形態では、他より一般的によく利用されているＴＣＰ（トランスミッション コントロール プロトコル）、ＵＤＰ（ユーザ データグラム プロトコル）を例にとり説明する。ｐｏｒｔ番号とは、一般的には、コンピュータがデータ通信を行う際に通信先のプログラムを特定するための番号である。よって、サーバＡ１４ＡからサーバＤ１４Ｄにパケットデータが送信される場合のｐｏｒｔ番号は、サーバＤ１４Ｄにおける通信のためのプログラムを特定するための番号である。オペレータが事前に、入力部２１を介して入力することにより、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号の各データが初期設定テーブル５２の各欄に記憶される。
【００２５】
図６には、各スイッチに設けられたセッション定義テーブル５４が示されている。セッション定義テーブル５４には、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号、送信元ＩＰアドレス、及び送信元ｐｏｒｔ番号が記憶される欄が設けられている。送信元ｐｏｒｔ番号は、送信元のサーバにおける通信のためのプログラムを特定するための番号である。上記例、即ち、サーバＣ１４ＣからサーバＤ１４Ｄにパケットデータが送信される場合には、送信元ｐｏｒｔ番号は、サーバＣ１４Ｃにおける通信のためのプログラムを特定するための番号である。
【００２６】
Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号、送信元ＩＰアドレス、及び送信元ｐｏｒｔ番号により、実際に行われている通信（１つのセッション）が識別される。即ち、あるサーバと他のサーバとが通信をする場合、一方のサーバを送信先とした当該サーバの送信先ＩＰアドレスと、他方のサーバを送信元とした当該サーバの送信元ＩＰアドレスとだけでは、これらのサーバ間の通信の１つのセッションを一義的に識別できない。各サーバは通信のプログラムを複数備えている。例えば、通信のプログラムとして、Ｗｅｂページを見るためのプログラムや、電子メールを送受信するためのプログラム等がある。また、ＴＣＰはデータの通信の保障をする、比較的通信の速度が遅いプロトコルであるのに対し、ＵＤＰは、データの通信の保障をしない、比較的通信の速度が速いプロトコルである。よって、同じサーバ間で同じ通信のためのプログラムを利用する場合であっても、Ｌ４種別により、通信のセッションが異なる。以上のように、サーバ間の通信のセッションは次の各情報により一義的に識別される。即ち、第１に、どのサーバからどのサーバにデータが通信されるのかの情報（送信先ＩＰアドレス、送信元ＩＰアドレス）である。第２に、これらのサーバのどの通信のプログラムが利用されるのかの情報（送信先ｐｏｒｔ番号、送信元ｐｏｒｔ番号）である。第３に、どのプロトコルを利用するのかの情報（Ｌ４種別）である。これらの第１の情報〜第３の情報により、どのサーバのどの通信用のプログラムと他のどのサーバのどの通信用のプログラムとの間で、どのプロトコルに従ってパケットデータが通信されたのかが認識される。なお、第１の情報〜第３の情報により区別される通信が、セッションと言われる。また、第１の情報〜第３の情報により識別される通信の仮想的な通信路がコネクションと言われる。
【００２７】
図７には、システム分析装置１０の記憶装置２４に設けられたセッション情報テーブル５６が示されている。セッション情報テーブル５６には、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号、送信元ＩＰアドレス、及び送信元ｐｏｒｔ番号を記憶するための欄５６Ａ〜５６Ｅが設けられている。また、セッション情報テーブル５６には、パケットデータの破棄フラグ、入力スイッチ名、シーケンス番号、メッセージ長、及び受信メッセージ長の各データを記憶するための欄５６Ｆ〜５６Ｋが設けられている。これらのパケットデータの破棄フラグ〜受信メッセージ長の各データについては後述する。
【００２８】
図８には、システム分析装置１０の記憶装置２４に設けられたスイッチ切り替え回数テーブル５８が示されている。スイッチ切り替え回数テーブル５８は、スイッチ名に対応して切り替え回数を記憶するためのテーブルである。
【００２９】
図９には、パケットデータの内容が示されている。サーバ間でデータの通信がされる場合には、当該データが複数に分割され、分割データがパケットデータとして送信される。パケットデータの内容は、ＴＣＰ及びＵＤＰの何れかのプロトコルに従って次のように、定まる。
【００３０】
図９（Ａ）には、ＴＣＰに従ったパケットデータ６２Ａが示されている。ＴＣＰに従ったパケットデータ６２Ａは、ＩＰヘッダ６４と、ＴＣＰヘッダ６６Ａと、分割データが含まれているＴＣＰセグメント６８Ａとを備えている。図９（Ｂ）には、ＵＤＰに従ったパケットデータ６２Ｂが示されている。ＵＤＰに従ったパケットデータ６２Ｂは、ＩＰヘッダ６４と、ＵＤＰヘッダ６６Ｂと、分割データが含まれているＵＤＰデータグラム６８Ｂとを備えている。なお、後述するように、ＵＤＰに従った通信では、データを分割して得られた複数のパケットデータのまとまりをメッセージという。各メッセージでは、先頭のパケットデータから順に各パケットデータが送信される。先頭のパケットデータにおけるＵＤＰデータグラム６８Ｂには、当該メッセージに含まれる複数のパケットデータの全体のデータの長さであるメッセージ長６８Ｂ０が含まれている。
【００３１】
図９（Ｃ）には、ＴＣＰに従ったパケットデータ６２ＡとＵＤＰに従ったパケットデータ６２Ｂに共通するＩＰヘッダ６４の内容が示されている。ＩＰヘッダ６４には、バージョン、ヘッダ長、サービスタイプ、データグラム長、識別子、フラグ、フラグメントオフセット、生存時間、プロトコル、ヘッダチェックサムが含まれている。また、ＩＰヘッダ６４には、送信元ＩＰアドレス、送信先ＩＰアドレス、オプション、パディングが含まれる。
【００３２】
図９（Ｄ）には、ＴＣＰに従ったパケットデータ６２ＡにおけるＴＣＰヘッダ６６Ａが示されている。ＴＣＰヘッダ６６Ａには、送信元ｐｏｒｔ番号、送信先ｐｏｒｔ番号、シーケンス番号６６Ａ１、確認応答番号、ヘッダ長、予約ビット、フラグ、ウィンドウサイズ、チェックサム、緊急ポインタ、オプション、パディングが含まれている。
【００３３】
図９（Ｅ）には、ＵＤＰに従ったパケットデータ６２ＢにおけるＵＤＰヘッダ６６Ｂが示されている。ＵＤＰヘッダ６６Ｂには、送信元ｐｏｒｔ番号、送信先ｐｏｒｔ番号、データ長、チェックサムが含まれている。
【００３４】
次に、本実施の形態の作用を説明する。図１０には、システム分析装置１０がスイッチにミラーリングをするように設定するミラーリング初期設定処理の一例が示されている。ステップ７１で、ミラーリング初期設定部３２Ａは、経路スイッチ登録テーブル５０から、各サーバ間の通信における以下の情報を取得する。即ち、送信先ＩＰアドレスと、送信元ＩＰアドレスと、コピーパケットデータをシステム分析装置１０に送信するスイッチの「１番目」の欄に記憶さているスイッチ１ＳＷ１の識別情報とが取得される。ステップ７２で、ミラーリング初期設定部３２Ａは、初期設定テーブル５２から、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号取得を取得する。ステップ７３で、ミラーリング初期設定部３２Ａは、スイッチ１ＳＷ１に、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号取得、送信元ＩＰアドレスのセッション情報の登録依頼を通知する。これにより、スイッチ１ＳＷ１は、セッション毎に、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号取得、送信元ＩＰアドレスを、図６のセッション定義テーブル５４に記憶する。ところで、上記のようにセッションは、ステップ７３の処理において通知される情報以外に、送信元ｐｏｒｔ番号が定まって、一義的に識別される。一方、送信元のサーバは、上記のように通信のための複数の通信プログラムを有する。ユーザがどの通信プログラムを用いて通信するのか、即ち、送信元ｐｏｒｔ番号は、ミラーリング初期設定の段階では、定められない。そこで、ミラーリング初期設定の段階では、スイッチは、送信元ｐｏｒｔ番号の欄には、任意の文字（*）（ワイルドカード）が設定される。その後、サーバ間でのデータの通信行われると、どの通信プログラムが使われたのかが分かり、上記パケットデータのＴＣＰヘッダ６６Ａ（図９（Ｄ））又はＵＤＰヘッダ６６Ｂ（図９（Ｅ））には、送信元ｐｏｒｔ番号に対応する送信元ｐｏｒｔ番号が含まれる。スイッチ１ＳＷ１は、ＴＣＰヘッダ６６Ａ又はＵＤＰヘッダ６６Ｂ内の送信元ｐｏｒｔ番号を取得して、セッション定義テーブル５４における、セッションに対応する送信元ｐｏｒｔ番号の欄に記憶する。
【００３５】
スイッチ１ＳＷ１は、セッション定義テーブル５４に記憶されている各セッションを識別する情報により識別されるセッションにおけるコピーパケットデータを、出力ポート１６Ｐ１４を介してシステム分析装置１０に送信する。上記のように、各サーバ間の通信における、コピーパケットデータの全ては、初期の段階では、スイッチ１ＳＷ１に送信されるように設定される。即ち、初期の段階では、スイッチ１ＳＷ１のセッション定義テーブル５４には、全てのセッションに対応する情報が記憶されている。
【００３６】
他のスイッチも、セッション定義テーブル５４を有する。後述するように、システム分析装置１０から登録依頼があると、当該スイッチは、自身の有するセッション定義テーブル５４にセッションの識別情報を登録（記憶）する。セッション定義テーブル５４にセッションの識別情報が記憶されたスイッチは次のようにコピーパケットデータを送信している。即ち、スイッチは、システム分析装置１０が接続されているポートを出力ポートとする。そして、スイッチは、当該識別情報により識別されるセッションにおけるコピーパケットデータを、出力ポートを介してシステム分析装置１０に送信する。
【００３７】
一方、システム分析装置１０からセッション情報の削除依頼の通知があると、自身の有するセッション定義テーブル５４からセッションの識別情報を削除する。セッション定義テーブル５４からセッションの識別情報が削除されたスイッチは、当該セッションのコピーパケットデータをシステム分析装置１０に送信することを停止する。
【００３８】
ところで、上記のように、各サーバ間の通信におけるコピーパケットデータの全ては、スイッチ１ＳＷ１に送信される。スイッチ１ＳＷ１では、コピーパケットデータを、出力ポート１６Ｐ１４を介してシステム分析装置１０に送信する。例えば、図１６（Ａ）に示すように、サーバＡ１４ＡとサーバＢ１４Ｂとの間の通信におけるパケットデータは、対象ポート１６Ｐ２２を基準として、コピーされる。同じサーバ間の通信でも、セッション毎に各パケット通信が識別される。よって、対象ポート１６Ｐ２２を基準としてコピーされた複数のコピーパケットデータは、符号ＡＢで示されるように、セッションｓ５〜ｓ１１に属する場合がある。これらのセッションｓ５〜ｓ１１のコピーパケットデータが、スイッチ２ＳＷ２のポート１６Ｐ２４、スイッチ１ＳＷ１のポート１６Ｐ１１を介して、出力ポート１６Ｐ１４に到達する。出力ポート１６Ｐ１４は、これらのパケットデータを一時的に記憶し、一時的に記憶したパケットデータをシステム分析装置１０に送信する。
【００３９】
サーバＣ１４ＣとサーバＤ１４Ｄとの間の通信におけるパケットデータは、対象ポート１６Ｐ１３を基準として、コピーされる。対象ポート１６Ｐ１３を基準としてコピーされた複数のコピーパケットデータは、符号ＣＤで示されるように、セッションｓ１〜ｓ４に属する場合がある。これらのセッションｓ１〜ｓ４のコピーされたパケットデータが、出力ポート１６Ｐ１４に到達する。出力ポート１６Ｐ１４は、これらのパケットデータを一時的に記憶し、一時的に記憶したパケットデータをシステム分析装置１０に送信する。
【００４０】
サーバＡ１４ＡとサーバＢ１４Ｂとの間のセッションｓ１〜ｓ４のコピーパケットデータのパケットデータ量が５０Ｍｂｐｓとする。また、サーバＣ１４ＣとサーバＤ１４Ｄとの間のセッションｓ５〜ｓ１１のコピーパケットデータのデータ量が６０Ｍｂｐｓとする。これらのパケットデータが一時的に出力ポート１６Ｐ１４に集中した場合には、次のことが生ずる。上記のように、出力ポート１６Ｐ１４において一時的に記憶することができるパケットデータ量の最大値は、１００Ｍｂｐｓである。よって、出力ポート１６Ｐ１４において一時的に記憶することができるパケットデータ量の最大値を超えて、コピーパケットデータが出力ポート１６Ｐ１４に集中したことになる。セッションｓ１〜ｓ１１の中で最も遅く出力ポート１６Ｐ１４に到達したコピーパケットデータがセッションｓ１１のコピーパケットデータであるとし、当該セッションｓ１１のコピーパケットデータ量が１０Ｍｂｐｓであるとする。この場合、セッションｓ１〜ｓ１０のコピーパケットデータは出力ポート１６Ｐ１４に記憶され、システム分析装置１０に送信される。しかし、出力ポート１６Ｐ１４は、これ以上コピーパケットデータを一時的に記憶することができない。従って、セッションｓ１１のコピーパケットデータは、出力ポート１６Ｐ１４に記憶されない。このため、システム分析装置１０に送信されない。つまり、セッションｓ１１のコピーパケットデータが出力ポート１６Ｐ１４で破棄される。このような状態が継続すると、システム分析装置１０は、システムにおける破棄されたコピーパケットデータに対応するパケット通信の状態を正確に分析することができない。本実施の形態では、次のように処理することにより、システムの状態の分析を続行できるようにしている。
【００４１】
図１１には、パケットデータの破棄検出処理の一例が示されている。パケットデータの破棄検出処理は、コピーパケットデータが受信される毎にスタートする。ステップ７４で、セッション情報処理部３３Ａは、受信したコピーパケットデータを送信したスイッチである入力スイッチの情報を取得する。なお、初期の段階では、上記のように、コピーパケットデータの全てはスイッチ１ＳＷ１が送信するので、スイッチ１ＳＷ１の識別情報が取得される。入力スイッチの情報は、例えば、ＮＩＣ３０のどの部分から受信したのかを判断することにより、取得される。
【００４２】
ステップ７５で、セッション情報処理部３３Ａは、セッション情報を取得する。即ち、まず、図９（Ｃ）に示すように、ＩＰヘッダ６４から、送信元ＩＰアドレス及び送信先ＩＰアドレスを取得する。次に、図９（Ａ）、図９（Ｂ）に示すように、パケットデータにＴＣＰヘッダ６６Ａが存在する場合には、Ｌ４種別として、ＴＣＰを、また、パケットデータ中にＵＤＰヘッダ６６Ｂが存在する場合には、Ｌ４種別として、ＵＤＰを特定できる。また、パケットデータにＴＣＰヘッダ６６Ａが存在する場合には、図９（Ｄ）に示すように、ＴＣＰヘッダ６６Ａ中の送信元及び送信先の各ｐｏｒｔ番号が取得される。また、パケットデータ中にＵＤＰヘッダ６６Ｂが存在する場合には、図９（Ｅ）に示すように、ＵＤＰヘッダ６６Ｂ中の送信元及び送信先の各ｐｏｒｔ番号が取得される。
【００４３】
セッション情報処理部３３Ａは、ステップ７６で、セッション情報テーブル５６（図７）を検索し、ステップ７７で、ステップ７５で取得されたセッション情報がセッション情報テーブル５６に検出された否かを判断する。ステップ７５で取得されたセッション情報がセッション情報テーブル５６に検出された場合には、パケットデータの破棄検出処理はステップ８２の処理に移行される。
【００４４】
ところで、サーバ間の通信は、一方のサーバから他方のサーバにパケットデータが送信される場合ばかりでなく、他方のサーバから一方のサーバにもパケットデータが送信される。しかし、上記のように、セッション情報テーブル５６にはサーバ間のどちらかの方向のパケットデータの送信におけるセッション情報のみが、サーバ間の通信のセッションとして登録されている。そこで、ステップ７５で取得されたセッション情報がセッション情報テーブル５６に検出されなかった場合には、セッション情報処理部３３Ａは、ステップ７８で、送信先と送信元のＩＰアドレス／ｐｏｒｔ番号を入れ替える。セッション情報処理部３３Ａは、ステップ７９で、セッション情報テーブル５６を検索し、ステップ８０で、ステップ７５で取得されたセッション情報がセッション情報テーブル５６から検出された否かを判断する。
【００４５】
ステップ８０の判定結果が否定判定となるのは、新規なセッションが行われた結果による。即ち、例えば、いままで通信されなかったサーバ間で新たに通信が行われたり、全く新たなサーバが、システムに追加されたり、した場合に、ステップ８０の判定結果が否定判定となる。そこで、ステップ８１で、セッション情報処理部３３Ａは、ステップ７４で取得した入力スイッチの情報及びステップ７５で取得されたセッション情報を、セッション情報テーブル５６の欄５６Ｇ、５６Ａ〜５６Ｅに記憶する。その後、パケットデータの破棄検出処理は、ステップ８２に移行される。
【００４６】
ステップ８２で、ＴＣＰ解析部３４Ａは、今回受信されたコピーパケットデータにＴＣＰヘッダ６６Ａが存在するか否かを判断することにより、当該コピーパケットデータは、ＴＣＰに従っているか否かを判断する。今回受信されたコピーパケットデータがＴＣＰに従っている場合には、ステップ８３で、ＴＣＰ解析部３４Ａは、コピーパケットデータが破棄されたか否かを判断する。
【００４７】
ここで、ＴＣＰに従っているコピーパケットデータの破棄の検出原理を説明する。ＴＣＰでは、データを送信する際、当該データが複数の分割データに分割される。分割データは、図９（Ａ）に示すパケットデータ６２ＡのＴＣＰセグメントに入れて、データ分の複数のパケットデータとして、順に送信される。そして、ＴＣＰでは、複数のパケットデータの各々を、送信される順に識別するシーケンス番号６６Ａ１が、各パケットデータ６２ＡにおけるＴＣＰヘッダ６６Ａに付加されている。後述するように、ＴＣＰに従ったコピーパケットデータが受信される毎に、ステップ８５で、ＴＣＰ解析部３４Ａは、上記シーケンス番号６６Ａ１を取得して、セッション情報テーブル５６（図７）のシーケンス番号に上書きして記憶する。よって、今回受信したコピーパケットデータからシーケンス番号６６Ａ１を取得する。当該シーケンス番号６６Ａ１が、セッション情報テーブル５６（図７）のシーケンス番号に連続している場合には、当該セッションにおけるコピーパケットデータは連続して受信されたと理解される。即ち、パケットデータの破棄は生じていないことが理解される。
【００４８】
しかし、例えば、セッション情報テーブル５６（図７）のシーケンス番号が４で、今回受信したコピーパケットデータから取得したシーケンス番号６６Ａ１が１０であった場合がある。この場合には、シーケンス番号５〜９それぞれで識別される各コピーパケットデータは破棄されていることが理解される。
【００４９】
そこで、ＴＣＰ解析部３４Ａは、ステップ８３では、今回受信したコピーパケットデータから取得したシーケンス番号がセッション情報テーブル５６のシーケンス番号に連続していないか否かを判断する。これにより、今回受信したコピーパケットデータの属するセッションに属する他のコピーパケットデータが破棄されたか否かが判断される。
【００５０】
今回受信したコピーパケットデータが破棄されている場合には、ステップ８４で、ＴＣＰ解析部３４Ａは、セッション情報テーブル５６の、当該今回受信したコピーパケットデータのセッションに対応するパケットデータの破棄フラグ５６Ｆに１を設定する。よって、後で、セッション情報テーブル５６のパケットデータの破棄フラグ５６Ｆに１が設定されていることが分かると、当該セッションにおいてコピーパケットデータの破棄が生じていることが理解される。
【００５１】
ステップ８４の処理の後、及びステップ８３の判定結果が否定判定の場合には、パケットデータの破棄検出処理はステップ８５に移行される。ステップ８５で、ＴＣＰ解析部３４Ａは、今回受信したパケットデータから取得したシーケンス番号を、セッション情報テーブル５６のシーケンス番号に上書きして記憶する。なお、ステップ８５の処理が実行されると、パケットデータの破棄検出処理が終了する。
【００５２】
一方、ステップ８２で、今回受信されたコピーパケットデータがＴＣＰに従っていないと判定された場合には、ステップ８６で、ＵＤＰ解析部３６Ａは、ＵＤＰに従ったパケットデータの破棄の検出及び設定処理を実行する。なお、ステップ８６の処理が実行されると、パケットデータの破棄検出処理が終了する。
図１１のステップ８３、ステップ８６（図１２のステップ８７〜９４）は、本開示の技術の「検出する」内容の一例である。
【００５３】
図１２には、ＵＤＰに従ったパケットデータの破棄の検出及び設定処理の一例が示されている。最初に、ＵＤＰに従ったパケットデータがどのように送信されるのかを説明する。図１３（Ａ）には、ＵＤＰに従ったパケットデータが送信される様子が示されている。図１３（Ａ）に示すように、１つのデータが複数に分割されることにより形成された複数のパケットデータを有する１つのまとまりは、メッセージと言われる。同じコネクションＣ内のセッションには、複数のメッセージＭ１、Ｍ２が連続して送信される。図１３（Ａ）に示す例では、メッセージ（１）Ｍ１、メッセージ（２）Ｍ２では、１つのデータが３つに分割されて、３つのパケットデータが送信される。１つのメッセージの先頭のパケットデータのＵＤＰデータグラム６８Ｂ（図９（Ｂ））には、当該１つのメッセージに含まれる全てのパケットデータの全体のメッセージ長のデータが含まれている。先頭のパケットデータには、当該パケットデータが先頭のパケットデータである先頭のパケットデータ識別情報が含まれる。よって、先頭のパケットデータ識別情報の有無により１つのメッセージの先頭のパケットデータか否かが認識される。
【００５４】
図１３（Ｂ）には、メッセージ（１）Ｍ１のコピーパケットデータの内、２番目のコピーパケットデータが破棄され、次のメッセージ（２）Ｍ２の先頭のコピーパケットデータが検出された様子が示されている。なお、メッセージ（１）Ｍ１のパケットデータの内、先頭のコピーパケットデータが破棄されることもある。
【００５５】
図１２のステップ８７で、ＵＤＰ解析部３６Ａは、先頭のパケットデータ識別情報の有無により、今回受信したコピーパケットデータが先頭のコピーパケットデータか否かを判断する。
【００５６】
今回受信したコピーパケットデータが先頭のコピーパケットデータである場合には、ステップ８８で、ＵＤＰ解析部３６Ａは、上記メッセージ長を読み出す。また、ＵＤＰ解析部３６Ａは、読出したメッセージ長を、セッション定義テーブル５６における、当該コピーパケットデータのセッションに対応するメッセージ長を記憶する欄５６Ｊに（設定）記憶する。
【００５７】
ステップ８９で、ＵＤＰ解析部３６Ａは、受信メッセージ長が０か否かを判断する。ステップ８９の処理の内容は後述する。
【００５８】
一方、ステップ８７の処理結果が否定判定の場合、即ち、今回受信したコピーパケットデータが先頭のパケットデータでない場合には、ステップ９２で、ＵＤＰ解析部３６Ａは、メッセージ長が設定済みか否かを判断する。この内容も後述する。
【００５９】
ステップ９２の判定結果が肯定判定の場合には、パケットデータの破棄検出設定処理はステップ９０に移行される。
【００６０】
ところで、ＵＤＰに従ったパケットデータのＵＤＰヘッダ６６Ｂには、図９（Ｅ）に示すように、当該パケットデータのデータ長が含まれている。各パケットデータのデータ長を１メッセージ長分加算すると、加算値はメッセージ長と等しくなる。そこで、ステップ９０で、ＵＤＰ解析部３６Ａは、今回受信したコピーパケットデータのデータ長を読み出し、それまでに受信したコピーパケットデータのデータ長（受信メッセージ長）の加算値に加算する。ステップ９１で、ＵＤＰ解析部３６Ａは、受信メッセージ長がメッセージ長に等しいか否かを判断する。ステップ９１が肯定判定の場合には１つのメッセージの全てのパケットデータが受信されたと判断している。そこで、ステップ９３で、ＵＤＰ解析部３６Ａは、受信メッセージ長を０にクリアする。
【００６１】
上記ステップ８９の処理をここで説明する。ステップ８９の処理が実行される場合は、ステップ８７において、先頭のコピーパケットデータと判断されていると共にステップ９０の上記処理が実行される前である。よって、受信メッセージ長は０であるはずである。しかし、図１３（Ｂ）に示すように、１つのメッセージにおいて途中のコピーパケットデータ、例えば、２番目のコピーパケットデータが破棄されている場合を考えてみる。この場合には、１つのメッセージの最終のコピーパケットデータが受信されて、当該データ長が受信メッセージ長に加算した加算値は、メッセージ長に等しくならない。よって、ステップ９１の判定結果が否定判定されて、受信メッセージ長は０にならない。この状態で、次のメッセージの先頭のコピーパケットデータが受信されると、ステップ８９で、受信メッセージ長が０でない場合となる。つまり、ステップ８９の判定結果が否定判定の場合には、図１３（Ｂ）に示す、１つのメッセージにおける途中のコピーパケットデータが破棄されていることが判明される。そこで、ステップ９４で、ＵＤＰ解析部３６Ａは、パケットデータの破棄フラグの欄５６Ｆ（図７）に１を設定する。
【００６２】
次に、ステップ９２の処理をここで説明する。メッセージの先頭のコピーパケットデータが受信された場合には、上記ステップ８８で、メッセージ長が設定される。しかし、先頭のコピーパケットデータが破棄され、例えば、２番目のコピーパケットデータが受信された場合にはステップ８７の判定結果が否定判定となり、ステップ８８の処理が実行されない。以上から次のことが理解される。まず、先頭のコピーパケットデータでないと判断された場合には、本来なら先頭のコピーパケットデータが受信されているはずである。よって、メッセージ長が設定されているはずである。しかし、先頭のコピーパケットデータでないと判断された場合であってもメッセージ長が設定されていない場合、即ち、ステップ９２の判定結果が否定判定となるのは、先頭のコピーパケットデータが破棄されたことにより、メッセージ長が設定されていないことが原因である。つまり、ステップ９２の判定結果が否定判定の場合は、先頭のコピーパケットデータが破棄されたことが判明される。そこで、ステップ９２の判定結果が否定判定の場合には、ステップ９４で、ＵＤＰ解析部３６Ａは、パケットデータの破棄フラグの欄５６Ｆ（図７）に１を設定する。
【００６３】
図１４には、一定時間（例えば、1分)毎に実行される第１の周期処理の一例が示されている。ステップ１２２で、移動セッション解析部４０Ａは、セッション情報テーブル５６（図７）のパケットデータの破棄フラグ５６Ｆに１が設定されているセッションを検索する。ステップ１２４で、移動セッション解析部４０Ａは、パケットデータの破棄フラグ５６Ｆに１が設定されているセッションがあるか否かを判断する。パケットデータの破棄フラグ５６Ｆに１が設定されているセッションがない場合には、本周期処理は終了する。パケットデータの破棄フラグ５６Ｆに１が設定されているセッションがある場合には、ステップ１２６で、移動セッション解析部４０Ａは次のデータを取得する。即ち、パケットデータの破棄フラグ５６Ｆに１が設定されているセッションにおける、送信先ＩＰアドレスと送信元ＩＰアドレス、現在の入力スイッチの各データが、セッション情報テーブル５６を取得される。
【００６４】
ステップ１２８で、移動セッション解析部４０Ａは、経路スイッチ登録テーブル５０（図４）を参照し、現在の入力スイッチの識別情報以外に他のスイッチの識別情報が登録されているか否かを検索する。他のスイッチの識別情報が登録されている場合は、ステップ１３０で、移動セッション解析部４０Ａは、現在の入力スイッチの次に登録されているスイッチの識別情報を収集する。図１６（Ａ）に示す例では、パケットデータが破棄されたセッションｓ１１は、サーバＡ１４ＡとサーバＢ１４Ｂとの間の通信に基づくものである。この場合、入力スイッチ名の欄５６Ｇ（図７）には、スイッチ１ＳＷ１の識別情報が登録されている。経路スイッチ登録テーブル５０（図４）を参照すると、現在の入力スイッチ以外に登録されているスイッチとしては、スイッチ２ＳＷ２の識別情報が登録されている。よって、図１６（Ａ）に示す例では、ステップ１２８の判定結果は肯定判定となり、ステップ１３０の処理では、スイッチ２ＳＷ２の識別情報が取得される。
【００６５】
ステップ１３２で、セッション定義変更部４２Ａは、現在のスイッチ（スイッチ１ＳＷ１）に対して、登録されているセッション情報の削除を依頼する。これにより、スイッチ１ＳＷ１は、セッション定義テーブル５４から、依頼されたセッション情報を削除する。よって、以後、スイッチ１ＳＷ１は、セッションｓ１１のコピーパケットデータをシステム分析装置１０に送信しなくなる。ステップ１３４で、セッション定義変更部４２Ａは、新たなセッション情報の追加依頼を、ステップ１３０で取得された識別情報により識別されるスイッチ２ＳＷ２に通知する。これにより、スイッチ２ＳＷ２は、セッション定義テーブル５４に、依頼されたセッション情報を登録する。よって、以後、スイッチ２ＳＷ２は、セッションｓ１１のコピーパケットデータを、システム分析装置１０に接続されたポート１６Ｐ２３を介して、システム分析装置１０に送信するようになる。
【００６６】
これにより、まず、図１６（Ｂ）に示すように、サーバＡ１４ＡとサーバＢ１４Ｂの間の通信における、コピーパケットデータ（セッションｓ５〜ｓ１０に属するもの）は、以前と同じように送信される。即ち、これらのコピーパケットデータは。スイッチ２ＳＷ２のポート１６Ｐ２４、スイッチ１ＳＷ１のポート１６Ｐ１１、出力ポート１６Ｐ１４を介してシステム分析装置１０に送信される。また、サーバＣ１４ＣとサーバＤ１４Ｄの間の通信における、コピーパケットデータ（セッションｓ１〜ｓ４に属する）も、以前とおなじように、出力ポート１６Ｐ１４を介してシステム分析装置１０に送信される。このように、パケットデータの破棄が生じていないセッションｓ１〜ｓ１０に属するコピーパケットデータは、以前と同じように、出力ポート１６Ｐ１４を介してシステム分析装置１０に送信される。
【００６７】
しかし、パケットデータの破棄が生じたセッションｓ１１に属するコピーパケットデータは次のように送信される。即ち、当該コピーパケットデータは、パケットデータの破棄が検出する前のスイッチ１ＳＷ１とは異なる別のスイッチ２ＳＷ２の、システム分析装置１０に接続されたポート１６Ｐ２３を介して、システム分析装置１０に送信される。
ステップ１３４の処理は、本開示の技術の「・・・転送装置を制御する」内容の一例である。
【００６８】
ステップ１３６で、セッション定義変更部４２Ａは、切り替え回数を記録するスイッチ切り替え回数テーブル５８（図８）を更新する。ステップ１３８で、セッション定義変更部４２Ａは、セッション情報テーブル５６（図７）の入力スイッチ名の欄５６Ｇの情報を、移動先スイッチの識別情報に変更する。
【００６９】
以上のようにセッションｓ１１のパケットデータは、スイッチ２ＳＷ２のポート１６Ｐ２３を介して、システム分析装置１０に送信される。そこで、ステップ１４０で、移動セッション解析部４０Ａは、パケットデータの破棄フラグの欄５６Ｆに０を設定する。
【００７０】
また、上記のように、パケットデータの破棄フラグの欄５６Ｆに１が設定され、経路スイッチ登録テーブル５０（図４）を検索したが、他のスイッチが無かった場合がある（ステップ１２８の判定結果が否定判定の場合）。上記図１６（Ａ）の例では、例えば、セッションｓ１〜４のパケットデータの破棄が検出された場合である。この場合には、ステップ１４０で、移動セッション解析部４０Ａは、パケットデータの破棄フラグの欄５６Ｆに０を設定する。
【００７１】
図１５には、一定時間（例えば、1時間)毎にされる第２の周期処理の一例が示されている。ステップ１４２で、スイッチ移動監視部３８Ａは、スイッチ切り替え回数テーブル５８（図８）を参照し、ステップ１４４で、所定回数、例えば、５回連続してスイッチの切り替えが行われているスイッチがあるか否かを判断する。５回連続してスイッチの切り替えが行われているスイッチがない場合には、本周期処理が終了する。
【００７２】
５回連続してスイッチの切り替えが行われているスイッチがある場合には、ミラーリング対象のセッションのトラフィック量（コピーパケットデータの通過量）がミラーリング出力ポートの限界値を超えていると判断できる。そこで、ステップ１４６で、スイッチ移動監視部３８Ａは、表示部２３に切り替えが発生しているスイッチ名を表示することにより、保守者にアラーム通知をする。なお、上記のように、システム分析装置１０とスイッチ１ＳＷ１、スイッチ２ＳＷ２とはそれぞれ、１つのポート１６Ｐ１４、１Ｐ２３により接続されている。よって、表示されるスイッチ名は、ポート１６Ｐ１４、１Ｐ２３に関連する情報に対応する。スイッチ名は、本開示の技術の「転送装置に関連する情報」の一例である。
【００７３】
次に、本実施の形態における効果を説明する。
第１の効果を説明する。本実施の形態では、パケットデータの破棄が生じたセッションｓ１１に属するパケットデータが、パケットデータの破棄が検出される前のスイッチ１ＳＷ１とは異なる別のスイッチ２ＳＷ２を介して、システム分析装置１０に送信される。従って、本実施の形態は、パケットデータが破棄されても当該パケットデータに関連するセッションのパケットデータがシステム分析装置１０に送信される。よって、本実施の形態は、パケットデータの破棄が生じたセッションに属するパケットデータの分析を継続することができる、という第１の効果を有する。
【００７４】
第２の効果を説明する。コピーパケットデータが破棄された場合、対象ポートを通過するすべてのセッションにおけるコピーパケットデータを、別のスイッチを介してシステム分析装置１０に送信することも考えられる。しかし、別のスイッチにおいて既に別のサーバ間の通信におけるコピーパケットデータをシステム分析装置１０に送信している場合がある。よって、この場合には、当該別のスイッチでコピーパケットデータの破棄が発生することもある。しかし、本実施の形態では、コピーパケットデータが破棄された場合、当該コピーパケットデータの属するセッションのコピーパケットデータのみが、別のスイッチを介してパケットデータが分析装置１０に送信される。よって、本実施の形態では、別のスイッチでコピーパケットデータの破棄が発生する可能性をより低くすることができる、という第２の効果を有する。
【００７５】
第３の効果を説明する。本実施の形態では、スイッチの切り替えが行われたスイッチの識別情報が記憶される。そして、所定回数連続してスイッチの切り替えが行われているスイッチがある場合には、当該スイッチ名を表示する。よって、本実施の形態は、保守者に知らせることができる、という第３の効果を有する。
【００７６】
第４の効果を説明する。本実施の形態では、上記のように、コピーパケットデータを受信する毎に、コピーパケットデータの破棄を検出している。よって、同じ出力ポートに送信される、複数のサーバ間の通信におけるコピーパケットデータ量を計測して、合計が、当該出力ポートの一時的に記憶できるパケットデータ量を超えたか否か判断するよりも、早くコピーパケットデータの破棄を検出することができる。即ち、本実施の形態は、より早くコピーパケットデータの破棄を検出することができるという、第４の効果を有する。
【００７７】
第５の効果を説明する。本実施の形態では、ＵＤＰに従ったパケットデータにおけるメッセージ長と、当該メッセージに含まれる各パケットデータのパケットデータ量の合計値とから、ＵＤＰに従ったパケットデータの破棄を検出している。よって、本実施の形態は、ＵＤＰに従ったパケットデータの破棄も検出することができる、という第５の効果を有する。
【００７８】
次に、本実施の形態の変形例を説明する。
第１−１の変形例を説明する。上記例では次の場合を想定している。即ち、破棄されたパケットデータに対応するサーバＡ１４Ａ（サーバＢ１４Ｂ）が、出力ポート１６Ｐ１４を有するスイッチ１ＳＷ１以外の別のスイッチ２ＳＷ２を介して接続されている。スイッチ１ＳＷ１とスイッチ２ＳＷ２とが直接接続されている。システムは４つのサーバを有する。これらに限定されない。
【００７９】
図１７（Ａ）に示すように、システムは、３つのサーバＡ１４Ａ、サーバＢ１４Ｂ、サーバＣ１４Ｃを有する。サーバＡ１４ＡとサーバＢ１４Ｂとがスイッチ１ＳＷ１を介して通信している。サーバＢ１４ＢとサーバＣ１４Ｃとが、３つのスイッチ１ＳＷ１、スイッチ２ＳＷ２、スイッチ３ＳＷ３を介して通信している。システム分析装置１０は、３つのスイッチ１ＳＷ１、スイッチ２ＳＷ２、スイッチ３ＳＷ３に接続されている。サーバＢ１４ＢとサーバＣ１４Ｃとの通信におけるコピーパケットデータが破棄されたことが検出された場合、次のようにパケットデータが送信される。即ち、破棄されたコピーパケットデータが属するセッションｓ０のパケットデータが、図１７（Ｂ）に示すように、スイッチ２ＳＷ２を介して、又は、図１７（Ｃ）に示すように、スイッチ３ＳＷ３を介して、システム分析装置１０に送信される。
【００８０】
第１−２の変形例を説明する。上記例では、図１、図１６（Ａ）に示すように、まず、スイッチ１ＳＷ１とスイッチ２ＳＷ２とがシステム分析装置１０に直接接続されている。また、パケットデータの破棄が検出された場合、当該パケットデータの属するセッションの他のパケットデータを、スイッチ１ＳＷ１からスイッチ２ＳＷ２を介してシステム分析装置１０に接続している。これらに限定されない。
【００８１】
図１８（Ａ）に示すように、スイッチ２ＳＷ２はシステム分析装置１０に直接接続されていない。システム分析装置１０は、スイッチ１ＳＷ１に、２つの異なるポート１６Ｐ１４、１６Ｐ１５で接続されている。上記のように、パケットデータの破棄がポート１６Ｐ１４で生じた場合、図１８（Ｂ）に示すように、セッションｓ０のパケットデータのみをポート１６Ｐ１５からシステム分析装置１０に送信することができる。
【００８２】
第１−３の変形例を説明する。上記例では、システム分析装置１０に接続しているスイッチが複数（２つ）のスイッチ１ＳＷ１、スイッチ２ＳＷ２が存在している。これに限定されない。即ち、図１９（Ａ）に示すように、システム分析装置１０に接続しているスイッチが１つのスイッチ１ＳＷ１のみの場合も考えられる。この場合、システム分析装置１０は、スイッチ１ＳＷ１に、２つの異なるポート１６Ｐ１４、１６Ｐ１５で接続されている。上記のように、パケットデータの破棄がポート１６Ｐ１４で生じた場合、図１９（Ｂ）に示すように、破棄されたパケットデータの属するセッションｓ０のパケットデータのみをポート１６Ｐ１５からシステム分析装置１０に送信することができる。更に、図２０（Ａ）及び図２０（Ｂ）に示すように、図１９（Ａ）及び図１９（Ｂ）に示す、スイッチ１ＳＷ１とシステム分析装置１０との間に別のスイッチＳＷ０が接続されていてもよい。
【００８３】
更に、２つのサーバと、システム分析装置と複数のポートで接続された１つのスイッチとを備えたシステムでもよい。即ち、２つのサーバ間で、複数のセッションのパケット通信が行われ、これらに対応するコピーパケットデータが、出力ポートに、当該出力ポートが一時的に記憶できるパケットデータ量を超えて、集中する場合もある。そこで、上記のように破棄されたコピーパケットデータに対応するセッションのコピーパケットデータを、出力ポート以外の他の、システム分析装置が接続しているポートからシステム分析装置に送信することができる。
【００８４】
第１−４の変形例を説明する。図１に示す例では、サーバＣ１４ＣとサーバＤ１４Ｄとがスイッチ１ＳＷ１を介して、サーバＡ１４ＡとサーバＢ１４Ｂがスイッチ２ＳＷ２を介して通信している。これに限定されない。即ち、図２１（Ａ）に示すように、サーバＡ１４ＡとサーバＤ１４Ｄとが、サーバＣ１４ＣとサーバＢ１４Ｂとが、ともにスイッチ１ＳＷ１及びスイッチ２ＳＷ２を介して通信してもよい。そして、上記のようにパケットデータの破棄が、ポート１６Ｐ２５で生じた場合、当該パケットデータの属するセッションｓ０のパケットデータを、スイッチ２ＳＷ２のポート１６Ｐ２６を介してシステム分析装置１０に送信することができる。
【００８５】
第２に、上記例では、ＴＣＰに従ったパケットデータの破棄を、シーケンス番号の連続性から判断している。しかし、これに限定されない。即ち、パケットデータを受信する毎に受信したパケットデータの識別情報を記憶しておく。パケットデータ送信に対応する、パケットデータの宛先のサーバからの応答に対応するパケットデータを受信したときに、当該応答に対応する元のパケットデータの有無に基づいて、パケットデータの破棄を検出することもできる。
【００８６】
第３に、上記例では、先頭のパケットデータには、特徴、即ち、当該パケットデータが先頭のパケットデータである先頭のパケットデータ識別情報が含まれる。これに限定されない。
【００８７】
図２２には、第３の変形例におけるＵＤＰに従ったパケットデータの破棄の検出及び設定処理の一例が示されている。なお、メッセージ長、受信メッセージ長は上記例と同様である。
【００８８】
第３の例では、今回受信されたコピーパケットデータが先頭のコピーパケットデータか否かを、識別情報の有無に基づいて判断するものではない。今回受信されたパケットデータが先頭のコピーパケットデータであれば、後述する受信メッセージ長の加算処理は行われていない。即ち、今回受信されたコピーパケットデータが先頭のコピーパケットデータであれば、受信メッセージ長は０である。
【００８９】
そこで、ステップ１５２で、ＵＤＰ解析部３６Ａは、今回受信されたコピーパケットデータが属するセッションに対応する受信メッセージ長が０か否かを判断することにより、今回受信されたパケットデータが先頭のコピーパケットデータか否かを判断する。
【００９０】
今回受信されたコピーパケットデータが先頭のコピーパケットデータでない場合、即ち、２番目以降のコピーパケットデータが受信された場合には、パケットデータの破棄の検出及び設定処理はステップ１６０の処理に移行される。今回受信されたコピーパケットデータが先頭のコピーパケットデータである場合には、ステップ１５４で、ＵＤＰ解析部３６Ａは、当該コピーパケットデータからメッセージ長を読み出し、ステップ１５６で、ＵＤＰ解析部３６Ａは、メッセージ長が正常であるか否かを判断する。例えば、図２３（Ａ）に示すように、先頭のコピーパケットデータが破棄されている場合において、２番目のコピーパケットデータが受信された場合を考えてみる。この場合、後述する受信メッセージ長の加算処理は行われていない。よって、受信メッセージ長は０であるので、ステップ１５２が肯定判定されて、ステップ１５４の処理後、ステップ１５６で、メッセージ長が正常であるか否かを判断するため、メッセージ長を、当該パケットデータから取得しようとする。しかし、２番目のコピーパケットデータには、メッセージ長がない。よって、メッセージ長は正常ではないと判定される。なお、先頭のコピーパケットデータ及び２番目のコピーパケットデータも破棄されて、３番目のコピーパケットデータが受信された場合も同様である。
【００９１】
そこで、ステップ１５６の判定結果が否定判定の場合には、先頭のパケットデータが破棄されているので、ステップ１６８で、ＵＤＰ解析部３６Ａは、パケットデータの破棄フラグの欄５６Ｆに１を設定する。今回のパケットデータが先頭のコピーパケットデータであれば、メッセージ長を読み出せるので、ステップ１５６の判定結果は、肯定判定となる。この場合、ステップ１５８で、ＵＤＰ解析部３６Ａは、上記読み出したメッセージ長を、当該パケットデータが属するセッションに対応するメッセージ長を記憶する欄５６Ｊに記憶する。ステップ１６０で、ＵＤＰ解析部３６Ａは、受信メッセージ長の加算設定処理を行い、ステップ１６２で、ＵＤＰ解析部３６Ａは、メッセージ長が受信メッセージ長に等しいか否かを判断する。
【００９２】
メッセージ内の全てのコピーパケットデータが受信されていない場合には、受信メッセージ長はメッセージ長と等しくはない。この場合には、ステップ１６２の判定結果が否定判定となって、ステップ１６４で、ＵＤＰ解析部３６Ａは、受信メッセージ長が未だメッセージ長よりも短いか否かを判断する。例えば、先頭のパケットデータが受信され、２番目のパケットデータが受信された場合には、受信メッセージ長が未だメッセージ長より小さい。よって、ステップ１６４の判定結果は否定判定となって、パケットデータの破棄の検出及び設定処理は終了する。
【００９３】
一方、メッセージ内の全てのパケットデータが受信された場合には、受信メッセージ長はメッセージ長と等しい。即ち、ステップ１６２の判定結果は肯定判定となる。この場合には、ステップ１６６で、ＵＤＰ解析部３６Ａは、受信メッセージ長の欄５６Ｋに０を設定する。
【００９４】
一方、図２３（Ｂ）に示すように、先頭のパケットデータ、２番目のパケットデータが受信されたが、最終（３番目）のパケットデータが破棄された場合を考えてみる。ここで、メッセージ長を３５００バイトとし、先頭及び２番目のパケットデータが１５００バイト、最後のパケットデータが５００バイトであるとする。また。メッセージ（１）Ｍ１に続く、同じコネクション内の２番目のメッセージの構成も、メッセージ（１）Ｍ１と同様あるとする。最終（３番目）のパケットデータが破棄された場合、ステップ１６２の判定結果は肯定判定とならず、ステップ１６６の、受信メッセージ長の欄５６Ｋに０を設定する処理が実行されない。この状態で、次のメッセージ（２）Ｍ２の先頭のパケットデータが受信されると、受信メッセージ長は、４５００バイトとなり、メッセージ長を超える。よって、受信メッセージ長がメッセージ長を超えた場合には、２番目以降のパケットデータが破棄されたことが判明される。そこで、ステップ１７０で、ＵＤＰ解析部３６Ａは、パケットデータの破棄フラグの欄５６Ｆに１を設定する。
【００９５】
以上の処理により、先頭のパケットデータに先頭のパケットデータ識別情報が存在しない場合であっても、先頭のパケットデータの破棄や、２番目以降のパケットデータの破棄を検出することができる。
【００９６】
第４に、上記例では、パケットデータが破棄された場合には、当該パケットデータの属するセッションの他の全てのパケットデータが、出力ポートを有するスイッチとは別のスイッチのポートからシステム分析装置１０に送信される。または、上記全てのパケットデータが、出力ポートを有する同じスイッチ内の他のポートから、システム分析装置１０に送信される。これに限定されない。本開示の技術の目的は、コピーパケットデータが破棄されても当該コピーパケットデータに関連する通信の分析を継続することである。よって、以下のことが考えられる。
【００９７】
上記のように、Ｌ４種別、送信先ＩＰアドレス、送信先ｐｏｒｔ番号、送信元ＩＰアドレス、及び送信元ｐｏｒｔ番号の５個の情報により通信が及ぶ範囲であるセッションが識別される。そこで、当該セッションより、通信の及ぶ範囲を広くする。即ち、上記５個の情報の少なくとも１つ以上でかつ多くとも４までの情報の如何を問わない範囲を準セッションとする。例えば、Ｌ４種別の如何は問わず、残りの４個の情報により識別される通信の及ぶ範囲を準セッションとする。また、Ｌ４種別及び送信元ｐｏｒｔ番号の如何を問わず、残りの３個の情報により識別される通信の及ぶ範囲を準セッションとする。
【００９８】
そして、パケットデータが破棄された場合には、当該パケットデータの属する上記準セッションに属する他のパケットデータを、上記別のスイッチや上記同じスイッチ内の他のポートから、システム分析装置１０に送信するようにしてもよい。
【００９９】
本明細書に記載された全ての文献、特許出願及び技術規格は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に参照により取り込まれる。
【０１００】
以上の実施形態に関し、更に以下の付記を開示する。
【０１０１】
（付記１）
ネットワークを介してパケット通信を行う複数のサーバ装置と、前記複数のサーバ装置間に設けられ、複数のポートに入力されたパケットデータを中継するとともに、所定のポートを通過するパケットデータを複製し、該複製したコピーパケットデータを複数のポートのうちの第１のポートまたは第２のポートに出力する転送装置と、を備えたシステムにおいて前記転送装置の第１のポート及び第２のポートに接続された分析装置であって、
前記コピーパケットデータを受信する受信部と、
受信した前記コピーパケットデータに含まれる所定の情報と前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる所定の情報に基づいて、受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出する検出部と、
前記検出部により受信した前記コピーパケットデータが連続していないことが検出された場合には、連続していない前記コピーパケットデータを前記第１のポートに出力した所定のポートを特定する特定部と、
前記特定部により特定された所定のポートを通過するパケットデータの複製したコピーパケットデータを前記第２のポートに出力するように、前記転送装置を制御する制御部と、
を備えた分析装置。
【０１０２】
（付記２）
前記システムは、複数の転送装置を備え、
前記コピーパケットデータがどの転送装置のどのポートを経由して前記分析装置に到達するのかを示す、送信元情報、送信先情報、経由する転送装置のポート情報、及び前記分析装置の接続情報を記憶する記憶部と、
前記コピーパケットデータが連続していないことが検出された場合、前記記憶部に記憶された情報に基づいて、連続していない前記コピーパケットデータを出力する前記特定された所定のポートを有する転送装置とは異なる他の転送装置があるかどうかを判断する判断部と、
を備え、
前記制御部は、前記判断部により前記コピーパケットデータを出力する前記他の転送装置があると判断された場合、前記記憶部に記憶された情報に基づいて、前記コピーパケットデータを前記他の転送装置の経由するポートに出力されるように、前記転送装置を制御する
付記１に記載の分析装置。
【０１０３】
（付記３）
連続していないコピーパケットデータが検出された回数を転送装置毎に記憶する回数記憶部と、
情報を表示する表示部と、
を更に備え、
前記制御部は、前記連続していないコピーパケットが検出された場合には、前記回数記憶部に記憶された該当する転送装置に対応する回数を更新すると共に、前記回数記憶部に記憶された回数が所定回数以上となった場合に、前記転送装置に関連する情報が表示されるように前記表示部を制御する
付記２に記載の分析装置。
【０１０４】
（付記４）
前記パケット通信では、複数のパケットデータが順に送信され、
各パケットデータは、ＴＣＰに応じた形式により生成されかつ前記所定の情報として前記パケット通信における順番を表すデータを含み、
前記検出部は、前記受信した前記コピーパケットデータに含まれる前記順番を表すデータと前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる前記順番を表すデータを比較することにより、前記受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出する
付記１〜付記３の何れか１項に記載の分析装置。
【０１０５】
（付記５）
前記パケット通信では、複数のパケットデータが順に送信され、
各パケットデータは、ＵＤＰに応じた形式により生成されると共に前記所定の情報として当該パケットデータの個別の長さの個別データを含み、
前記複数のパケットデータの中の先頭のパケットデータは、前記所定の情報として前記複数のパケットデータの全体の長さの全体データを更に含み、
前記検出部は、前記受信した前記コピーパケットデータと前記過去のコピーパケットデータに含まれる前記個別データと、前記先頭のパケットデータが受信された場合には、前記先頭のパケットデータに含まれる前記全体データとに基づいて、前記受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出する
付記１〜付記３の何れか１項に記載の分析装置。
【０１０６】
（付記６）
付記１〜付記５の何れか１項に記載の分析装置と、
前記複数のサーバ装置と、
前記転送装置と、
を備えたネットワークシステム。
【０１０７】
（付記７）
ネットワークを介してパケット通信を行う複数のサーバ装置と、前記複数のサーバ装置間に設けられ、複数のポートに入力されたパケットデータを中継するとともに、所定のポートを通過するパケットデータを複製し、該複製したコピーパケットデータを複数のポートのうちの第１のポートまたは第２のポートに出力する転送装置と、を備えたシステムにおいて前記転送装置の第１のポート及び第２のポートに接続された分析装置に該複製したコピーパケットデータを送信するポートを、該第１のポートから該第２のポートに切り替えるポート切り替え方法であって、
前記コピーパケットデータを受信し、
受信した前記コピーパケットデータに含まれる所定の情報と前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる所定の情報に基づいて、受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出し、
前記受信した前記コピーパケットデータが連続していないことが検出された場合には、連続していない前記コピーパケットデータを前記第１のポートに出力した所定のポートを特定し、
前記特定された所定のポートを通過するパケットデータの複製したコピーパケットデータを前記第２のポートに出力する
ことを含むポート切り替え方法。
【０１０８】
（付記８）
ネットワークを介してパケット通信を行う複数のサーバ装置と、前記複数のサーバ装置間に設けられ、複数のポートに入力されたパケットデータを中継するとともに、所定のポートを通過するパケットデータを複製し、該複製したコピーパケットデータを複数のポートのうちの第１のポートまたは第２のポートに出力する転送装置と、を備えたシステムにおいて前記転送装置の第１のポート及び第２のポートに接続された分析装置に、該複製したコピーパケットデータを前記分析装置に送信するためのポートが、該第１のポートから該第２のポートに切り替えわるように前記転送装置を制御することを含む処理を実行させるためのポート切り替えプログラムであって、
受信した前記コピーパケットデータに含まれる所定の情報と前記コピーパケットデータより前に受信した過去のコピーパケットデータに含まれる所定の情報に基づいて、受信した前記コピーパケットデータが該過去のコピーパケットデータと連続しているかどうかを検出し、
前記受信した前記コピーパケットデータが連続していないことが検出された場合には、連続していない前記コピーパケットデータを前記第１のポートに出力した所定のポートを特定し、
前記特定された所定のポートを通過するパケットデータの複製したコピーパケットが前記第２のポートに出力されるように、前記転送装置を制御する
処理を当該分析装置に実行させるためのポート切り替えプログラム。
【符号の説明】
【０１０９】
１０  システム分析装置
１４Ａ〜１４Ｄ  サーバ
ＳＷ１、ＳＷ２  スイッチ
１６Ｐ１１〜１６Ｐ２４  ポート
【図１】
2014230105.tif 000003
【図２】
2014230105.tif 000004
【図３】
2014230105.tif 000005
【図４】
2014230105.tif 000006
【図５】
2014230105.tif 000007
【図６】
2014230105.tif 000008
【図７】
2014230105.tif 000009
【図８】
2014230105.tif 000010
【図９】
2014230105.tif 000011
【図１０】
2014230105.tif 000012
【図１１】
2014230105.tif 000013
【図１２】
2014230105.tif 000014
【図１３】
2014230105.tif 000015
【図１４】
2014230105.tif 000016
【図１５】
2014230105.tif 000017
【図１６】
2014230105.tif 000018
【図１７】
2014230105.tif 000019
【図１８】
2014230105.tif 000020
【図１９】
2014230105.tif 000021
【図２０】
2014230105.tif 000022
【図２１】
2014230105.tif 000023
【図２２】
2014230105.tif 000024
【図２３】
2014230105.tif 000025
【図２４】
2014230105.tif 000026