(57)【要約】  少なくとも１つの通信経路に接続されることができ、該通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ装置であって、前記記憶媒体に設定された領域の位置情報と該領域に格納する通信データの条件との組を少なくとも１つ保持する検索条件保持部５および保持データ管理部６と、前記通信経路を通過する通信データのうち、前記検索条件保持部５に保持された条件に適合する通信データを適合データとして取得する検索実行部４と、前記適合データに適合する条件に対応する領域である格納領域の位置情報を取得し、該格納領域へ前記適合データを格納する保持データ管理部６およびデータ保持部７と、を備えた。
2008129641.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つの通信経路に接続されることができ、該通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ装置であって、
前記記憶媒体に設定された領域の位置情報と該領域に格納する通信データの条件との組を少なくとも１つ保持する保持部と、
前記通信経路を通過する通信データのうち、前記保持部に保持された条件に適合する通信データを適合データとして取得する取得部と、
前記適合データに適合する条件に対応する領域である格納領域の位置情報を取得し、該格納領域へ前記適合データを格納する格納部と、
を備えるキャプチャ装置。
【請求項２】
請求項１に記載のキャプチャ装置において、
前記領域に格納されているデータを外部へ送信する送信処理を行う送信部を備えることを特徴とするキャプチャ装置。
【請求項３】
請求項２に記載のキャプチャ装置において、
前記送信部は、領域毎に、前記適合データを格納する位置である格納位置を設定し、前記格納部は該格納位置に適合データを書き込むとともに前記送信部は前記格納部によって書き込まれたサイズ分格納位置を移動させ、さらに前記送信部は、前記適合データを送信する位置である送信位置を設定し、該送信位置に格納されたデータを送信するとともに前記送信位置を送信したサイズ分移動させることを特徴とするキャプチャ装置。
【請求項４】
請求項３に記載のキャプチャ装置において、
前記領域は、リングバッファであり、前記格納位置および前記送信位置は前記リングバッファ上を移動することを特徴とするキャプチャ装置。
【請求項５】
請求項４に記載のキャプチャ装置において、
前記格納位置と前記送信位置との差が所定の閾値以下となった場合、前記送信部は前記適合データを外部へ送信することを特徴とするキャプチャ装置。
【請求項６】
請求項１に記載のキャプチャ装置において、
前記格納部は、前記適合データを前記格納領域へ格納する際、該格納領域の余地が所定の条件を満たす場合、所定の規則に基づいてデータの破棄を行うことを特徴とするキャプチャ装置。
【請求項７】
請求項６に記載のキャプチャ装置において、
前記格納部は、更に前記破棄の結果に関する情報を破棄情報として格納することを特徴とするキャプチャ装置。
【請求項８】
請求項６に記載のキャプチャ装置において、
前記所定の規則は、前記適合データを格納する際、該適合データを破棄する規則であることを特徴とするキャプチャ装置。
【請求項９】
請求項６に記載のキャプチャ装置において、
前記所定の規則は、前記適合データを格納する際、該適合データを格納する領域に格納されているデータのうち、最古のデータを破棄する規則であることを特徴とするキャプチャ装置。
【請求項１０】
請求項６に記載のキャプチャ装置において、
前記保持部は、前記領域毎に前記所定の規則を保持し、
前記格納部は、前記保持部から前記格納領域に対応する前記規則を取得し、該規則に基づいて前記破棄を行うことを特徴とするキャプチャ装置。
【請求項１１】
請求項２に記載のキャプチャ装置において、
前記送信部は、前記通信経路における中継処理を行い、
前記保持部は、前記領域毎に前記中継処理に対する前記送信処理の優先度を保持し、
前記送信部は、前記優先度に基づいて前記中継処理及び前記送信処理を行うことを特徴とするキャプチャ装置。
【請求項１２】
少なくとも１つの通信経路に接続されることができ、該通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ装置であって、
前記通信経路を通過する通信データのうち、設定された条件に適合する通信データを適合データとして取得する取得部と、
前記記憶媒体に設定された領域へ前記適合データを格納する格納部と、
前記格納部が前記適合データを前記領域へ格納する際、該領域の余地が所定の条件を満たす場合、所定の規則に基づいてデータの破棄を行う破棄部と、
前記破棄部により行われた破棄の結果に関する情報を破棄情報として保持する破棄情報保持部と、
を備えるキャプチャ装置。
【請求項１３】
請求項１２に記載のキャプチャ装置において、
前記所定の規則は、前記格納部が前記適合データを格納する際、該適合データを破棄する規則であることを特徴とするキャプチャ装置。
【請求項１４】
請求項１２に記載のキャプチャ装置において、
前記所定の規則は、前記格納部が前記適合データを格納する際、該適合データを格納する領域に格納されているデータのうち、最古のデータを破棄する規則であることを特徴とするキャプチャ装置。
【請求項１５】
請求項１２に記載のキャプチャ装置において、
前記所定の規則を保持する保持部を備え、
前記格納部は、前記保持部から前記規則を取得し、該規則に基づいて前記破棄を行うことを特徴とするキャプチャ装置。
【請求項１６】
請求項１２に記載のキャプチャ装置において、
前記破棄情報保持部は、前記破棄部にて破棄されたデータの数を破棄情報として保持することを特徴とするキャプチャ装置。
【請求項１７】
通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ方法であって、
前記記憶媒体に設定された領域の位置情報と該領域に格納する通信データの条件との組を取得する組情報取得ステップと、
前記通信経路を通過する通信データのうち、前記組情報取得ステップにて取得された条件に適合する通信データを適合データとして取得する適合データ取得ステップと、
前記適合データに適合する条件に対応する領域である格納領域の位置情報を取得し、該格納領域へ前記適合データを格納する格納ステップと、
を実行するキャプチャ方法。
【請求項１８】
請求項１７に記載のキャプチャ方法において、
前記領域に格納されているデータを外部へ送信する送信処理を行う送信ステップを備えることを特徴とするキャプチャ方法。
【請求項１９】
請求項１８に記載のキャプチャ方法において、
前記送信ステップは、領域毎に、前記適合データを格納する位置である格納位置を設定し、前記格納ステップは該格納位置に適合データを書き込むとともに前記送信部は前記格納ステップによって書き込まれたサイズ分格納位置を移動させ、さらに前記送信ステップは、前記適合データを送信する位置である送信位置を設定し、該送信位置に格納されたデータを送信するとともに前記送信位置を送信したサイズ分移動させることを特徴とするキャプチャ方法。
【請求項２０】
請求項１７に記載のキャプチャ方法において、
前記格納ステップは、前記適合データを前記格納領域へ格納する際、該格納領域の余地が所定の条件を満たす場合、所定の規則に基づいてデータの破棄を行うことを特徴とするキャプチャ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケットキャプチャを行うためのキャプチャ装置、キャプチャ方法に関するものである。
【背景技術】
【０００２】
近年のセキュリティ意識の高まりに伴い、ネットワーク内の異常を検知し、問題解析のためその通信データを保持したいという要望が高まっている。【０００３】
このような状況のなかで、更に、ネットワーク中継装置（以下、中継装置）にて特定の通信データを識別し、一時的に保持し、中継装置外の管理装置にて通信データの解析をしたいという要望も高まっている。【０００４】
中継装置を流れる通信データを保持する方法として、中継装置外に、ＲＭＯＮ（Remote network MONitoring）プローブ装置や、ＬＡＮアナライザ装置などの外部キャプチャ装置を取り付ける方法が一般的に知られている。【０００５】
外部キャプチャ装置は、ネットワーク間を相互接続している中継装置の各々のネットワークと中継装置との間に取り付けられることで、ネットワーク間に流れるデータを検索し、保持するものである。また外部キャプチャ装置でキャプチャされたデータは、外部キャプチャ装置自体にて解析されたり、外部キャプチャ装置外にある管理装置と呼ばれる装置にアップロードされた後、閲覧、保存され、解析されたりする。【０００６】
最近では、中継装置内部に外部キャプチャ装置相当の機能を内蔵した中継装置も現れている。このような中継装置は、内部に流れるデータをキャプチャし、キャプチャされたデータをすべて管理装置にアップロードする。この場合のキャプチャされたデータは、外部の管理装置にて本当に必要なデータを再検索された後、解析されることを要する。また、キャプチャデータのうち、本当に必要なデータがキャプチャされず、不必要なキャプチャデータで中継装置内部のキャプチャメモリが一杯となることもあった。【０００７】
また中継装置が輻輳状態となった場合、キャプチャメモリがフルになりデータが破棄された場合、破棄されたという情報が保持されないため、管理装置にてキャプチャデータを解析する際、ユーザはデータがネットワーク内で破棄されたのか、中継装置で破棄されたのかがわからず、キャプチャデータの解析に支障をきたすこともあった。【０００８】
なお、本発明の関連ある従来技術として、特定のアドレス、特定のプロトコルなどの条件によってパケットの取捨選択を行うパケットフィルタにおいて、フィルタ条件を複数に分割して保存しておくメモリと、これらの分割したフィルタ条件を前記メモリから読み出し、それぞれにおいて対応するパケットの一部分と比較判定を行うハードウェアにより構成された比較判定機能部と、これらの判定結果を論理和や論理積によって結合し、この結果によってパケットの取捨を決定するハードウェアにより構成された比較結果結合部とを設けることで、複雑な処理が可能で、且つ回路規模の小さい高速なパケットフィルタ機構を提供するパケットフィルタが公知技術として知られている（例えば、特許文献１参照）。
【特許文献１】特開２００１−６９１７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１にて開示されたパケットフィルタは、フィルタ条件によってパケットの取捨選択を行うことができるものの、一旦取得されたパケットのその後の管理は全て同一の扱いとなり、取得する必要はあるがさほど重要でないデータでメモリがフルになり、最重要なデータが取得されない可能性がある。【００１０】
また、特許文献１にて開示されたパケットフィルタにおいても、メモリがフルになりデータが破棄された場合、破棄されたという情報が保持されない。よってユーザは、パケットが無くなった原因がメモリのフルによる破棄なのか、またはネットワーク上のトラフィックの影響によるデータ破棄なのかを知ることができない。【００１１】
本発明は上述した問題点を解決するためになされたものであり、グループ単位でキャプチャデータを保持し、アップロードし、さらに破棄した場合の破棄情報を保持することで、キャプチャデータの解析が容易となるキャプチャ装置およびそのキャプチャ方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上述した課題を解決するため、本発明は、少なくとも１つの通信経路に接続されることができ、該通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ装置であって、前記記憶媒体に設定された領域の位置情報と該領域に格納する通信データの条件との組を少なくとも１つ保持する保持部と、前記通信経路を通過する通信データのうち、前記保持部に保持された条件に適合する通信データを適合データとして取得する取得部と、前記適合データに適合する条件に対応する領域である格納領域の位置情報を取得し、該格納領域へ前記適合データを格納する格納部とを備えるものである。【００１３】
また上述した課題を解決するため、本発明は、少なくとも１つの通信経路に接続されることができ、該通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ装置であって、前記通信経路を通過する通信データのうち、設定された条件に適合する通信データを適合データとして取得する取得部と、前記記憶媒体に設定された領域へ前記適合データを格納する格納部と、前記格納部が前記適合データを前記領域へ格納する際、該領域の余地が所定の条件を満たす場合、所定の規則に基づいてデータの破棄を行う破棄部と、前記破棄部により行われた破棄の結果に関する情報を破棄情報として保持する破棄情報保持部とを備えるものである。【００１４】
また上述した課題を解決するため、本発明は、通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ方法であって、前記記憶媒体に設定された領域の位置情報と該領域に格納する通信データの条件との組を取得する組情報取得ステップと、前記通信経路を通過する通信データのうち、前記組情報取得ステップにて取得された条件に適合する通信データを適合データとして取得する適合データ取得ステップと、前記適合データに適合する条件に対応する領域である格納領域の位置情報を取得し、該格納領域へ前記適合データを格納する格納ステップとを実行するものである。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態に係る中継装置の構成の一例を示すブロック図である。
【図２】本実施の形態に係るキャプチャ装置の機能の一例を示すブロック図である。
【図３】本実施の形態に係る検索条件保持部にて保持される検索条件および検索条件式の一例を示す図である。
【図４】本実施の形態に係るキャプチャグループを管理している管理テーブルを示す図である。
【図５】本実施の形態に係るデータ保持部の区分領域の比率を示す図である。
【図６】本実施の形態に係るリードポインタ、ライトポインタの動きを示す図である。
【図７】本実施の形態に係るネットワークインターフェイス部からルーティング部へ流れる通信データに対するキャプチャ処理を示すフローチャートである。
【図８】本実施の形態に係るルーティング部からネットワークインターフェイス部へ流れる通信データに対するキャプチャ処理を示すフローチャートである。
【図９】本実施の形態に係る外部の管理装置からのアップロード要求をルーティング部が受け付けた場合のアップロード処理を示すフローチャートである。
【図１０】本実施の形態に係るアップロード部における内部アップロード処理を示すフローチャートである。
【図１１】本実施の形態に係るアップロード部からルーティング部へのアップロード起動要求処理を示すフローチャートである。
【図１２】本実施の形態に係る起動要求フラグに基づいたルーティング部側のアップロード処理を示すフローチャートである。
【図１３】本実施の形態に係る最古のキャプチャデータから順に破棄していく方式を示す図である。
【図１４】本実施の形態に係る最新のキャプチャデータから順に破棄していく方式を示す図である。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態について図面を参照しつつ説明する。【００１７】
まず、本実施の形態に係る中継装置の構成について図１を参照しつつ説明する。【００１８】
中継装置１００は、ルーティング部１１０、キャプチャ装置１、ネットワークインターフェイス部１２０から構成されている。ネットワークインターフェイス部１２０のうち、いずれかのネットワークインターフェイスは、キャプチャされたデータ（適合データ）をユーザが閲覧、解析、保存するための外部の管理装置と接続されている。【００１９】
ルーティング部１１０は、転送処理を行うものであり、ネットワークインターフェイス部１２０にて受信された通信データを、最適な経路を選択して別のネットワークに送信する。また、ルーティング部１１０は中央演算処理装置であるＣＰＵ１１１、記憶装置であるメモリ１１２にて構成されている。【００２０】
ネットワークインターフェイス部１２０は、通信データの物理的な入出力を行う。【００２１】
キャプチャ装置１は、ルーティング部１１０とネットワークインターフェイス部１２０との間に備えられることで、ルーティング部１１０とネットワークインターフェイス部１２０との間を流れる通信データを所定の検索条件および検索条件式に基づきキャプチャする。またキャプチャ装置１は、キャプチャした通信データ（以下、キャプチャデータ）を保持し、外部の管理装置へ保持したキャプチャデータをアップロードする。【００２２】
尚、本実施の形態に係るキャプチャ装置１は、中継装置内でも、中継装置の外部に備えてもよい。【００２３】
次に、キャプチャ装置１の機能を図２の機能ブロックを参照しつつ説明する。尚、図２中の実線矢印は通信データ（またはキャプチャデータ）の流れを示し、破線矢印は制御データの流れを示している。【００２４】
キャプチャ装置１は、データ検索部２、データ管理部３を備える。データ検索部２は、データ管理部３、ルーティング部１１０、ネットワークインターフェイス部１２０と接続されており、ルーティング部１１０やネットワークインターフェイス部１２０からの通信データを検索する。またデータ検索部２は、検索実行部４、検索条件保持部５を備える。【００２５】
検索条件保持部５は、キャプチャしたい通信データのビット列を１つの検索条件として複数登録される。また検索条件保持部５は、登録された検索条件を組み合わせることで検索条件式としてグループ化することで検索条件を保持する。【００２６】
ここで、検索条件保持部５にて保持される検索条件および検索条件式の一例を図３に示す。検索条件式は検索条件番号として管理される。例えば検索条件番号１は、所定のＴＣＰポート番号を検索条件式としたものであり、検索条件番号２は、相手先IP Address、送信元IP Addressおよび相手先の所定のＴＣＰポート番号の各検索条件をＡＮＤ条件の検索条件式でグループ化したものである。また検索条件番号３は、ネットワークインターフェイスＡを検索条件式とし、ネットワークインターフェイスＡに流れる全ての通信データをキャプチャ対象と定義するものである。尚、検索条件番号１および検索条件番号３は、１つの検索条件のみであるため、検索条件式と検索条件が一致している。【００２７】
このように検索条件が複数登録され、さらに検索条件番号２のように検索条件が検索条件式としてグループ化がなされることで、通信データのデータ群ごとの判別が可能となり、更にそれぞれの検索条件を組み合わせた検索が可能となる。上述の検索条件以外にも、ネットワークインターフェイス毎の受信のみ、送信のみを対象とした検索や、実際の通信データの通信内容を識別しての検索が可能である。【００２８】
検索実行部４は、通信データの中身を検索する能力を有しており、検索条件保持部５で保持されている検索条件式と、通信データを比較することにより、キャプチャすべきデータとそうでないデータを判別し、検索条件式に適合したキャプチャデータ（適合データ）を取得する。またキャプチャデータの採取時間、キャプチャデータのパケットレングス、破棄情報（後述）等の制御情報も同時に取得する。【００２９】
上述のように、データ検索部２の検索実行部４と検索条件保持部５の機能により、通過する通信データを検索し、検索条件式に適合した通信データをキャプチャデータとして判定し、データ管理部３に通知することが可能となる。【００３０】
データ管理部３は、ルーティング部１１０、データ検索部２と接続されており、データ検索部２にてキャプチャされたキャプチャデータを管理する。またデータ管理部３は、保持データ管理部６、データ保持部７、およびアップロード部８を備える。【００３１】
保持データ管理部６は、検索実行部４によってキャプチャされたキャプチャデータを、データ保持部７に内包されるキャプチャメモリに保持する。また保持データ管理部６は、キャプチャメモリの記憶領域を複数に区分し、区分領域（領域）ごとに管理する。【００３２】
保持データ管理部６は、更にキャプチャグループというグループを構成することで、キャプチャデータを管理する。ここで、図４にキャプチャグループを管理している管理テーブル（組）を参照し、キャプチャグループについて説明する。キャプチャグループは、キャプチャデータを識別するための識別番号（キャプチャグループ番号）、キャプチャデータを管理するためのキャプチャメモリ上の開始アドレスおよび終了アドレス（位置情報）、および検索条件保持部６に保持された検索条件番号（複数の検索条件番号を登録することが可能で、登録された検索条件番号はＯＲ条件で結合）（条件）を主な項目として構成されている。尚、キャプチャメモリ上の開始アドレスおよび終了アドレスの範囲がキャプチャグループの区分領域となる。【００３３】
保持データ管理部６は、検索条件番号と区分領域を対応付けたキャプチャグループを管理することで、検索実行部４によって検索されたキャプチャデータを、対応する区分領域に保持することができる。すなわち、検索実行部４による検索時に用いられた検索条件式と検索条件番号との対応関係（図３）および検索条件番号と区分領域との対応関係（図４の管理テーブル）から、検索実行部４による検索時に用いられた検索条件式と区分領域との対応が導かれ、この検索条件式にて検索されたキャプチャデータが、対応する区分領域に保持される。【００３４】
保持データ管理部６は、各キャプチャグループの開始アドレスおよび終了アドレスの項目が変更されることで、図５に示すようにデータ保持部７に対しキャプチャグループごとの区分領域の比率を変更させることができる。保持データ管理部６は、例えば図５のパターン１のように全キャプチャグループの区分領域を同一の比率にさせることができ、またパターン２のようにキャプチャグループ０は、データの重要度が高くまた通信データ量が多量であるため区分領域の比率を多くすることができる。【００３５】
このように保持データ管理部６によって、区分領域の比率を条件ごとに変えることができるため、ユーザは保持対象のデータ属性、予想されるデータ量および緊急度に応じたデータの保持が可能となる。【００３６】
またキャプチャグループは、上述以外に、ルーティング部１１０が通常の転送処理とキャプチャデータのアップロード処理（送信処理）の方を優先的に実行させるためのフラグ（優先ＦＬＧ）、キャプチャデータの破棄の方式を決定するフラグ（破棄方式ＦＬＧ）、キャプチャデータによって区分領域が満たされそうになった場合にアップロード起動要求を発行する場合の閾値（アップロード起動要求閾値）の各項目によって構成されている。これらの項目に関しては後述する。【００３７】
更に、保持データ管理部６には、制御情報の書き込み機能があり、制御情報をキャプチャデータと１対１で対応させ、書き込む機能を有する。【００３８】
データ保持部７は、実メモリ（キャプチャメモリ）のことであり、保持データ管理部６の管理に基づきキャプチャデータおよび制御情報が格納される。【００３９】
アップロード部８は、データ保持部７にて保持されている区分領域毎のキャプチャデータと制御情報を、ルーティング部１１０により外部の管理装置へ転送させる。また、後述するリードポインタ、ライトポインタの制御も行う。【００４０】
ここで、保持データ管理部６による各区分領域へのキャプチャデータの入力、およびアップロード部８による各区分領域からのキャプチャデータの出力に関する、区分領域の管理について図６を参照しつつ説明する。【００４１】
図６は、１つの区分領域におけるキャプチャメモリの３つの使用状態（キャプチャ開始時、キャプチャ通常動作時、キャプチャバッファフル時）を示しており、＃０、＃１、・・・、＃ｎは、各キャプチャデータおよび制御情報が格納されるアドレスを示している。アップロード部８は、各区分領域に対し、保持データ管理部６による入力、およびアップロード部８による出力をそれぞれライトポインタ（格納位置情報）、リードポインタ（送信位置情報）で管理する。【００４２】
中継装置１００の電源投入直後は、まだデータがキャプチャメモリに存在しないため、ライトポインタ、リードポインタ共に＃０の記憶領域を指している（図６の「キャプチャ開始時」参照）。【００４３】
保持データ管理部６による書込みが行われる場合、ライトポインタが指し示すアドレスにデータが書き込まれ、ライトポインタは１キャプチャデータおよび１制御情報分次のアドレスへ移動する。またアップロード部８による出力が行われる場合、リードポインタが指し示すアドレスのデータが読み込まれ、リードポインタは１キャプチャデータおよび１制御情報分次のアドレスへ移動する。【００４４】
図６の「キャプチャ通常動作時」の例では、保持データ管理部６は＃１８のアドレスにデータを書き込み、アップロード部８は＃３のアドレスのデータを読み込む。尚、区分領域はそれぞれリングバッファであるため、終了アドレス（＃ｎ）へライトポインタ（またはリードポインタ）が到達した場合、次回は開始アドレス（＃０）にライトポインタ（またはリードポインタ）は移動し、キャプチャデータおよび制御情報が書き込まれる。【００４５】
尚、キャプチャデータによって区分領域の容量がフルになった場合、図６の「キャプチャバッファフル時」に示すように、リードポインタとライトポインタは同じアドレスを示すことになる。【００４６】
また、保持データ管理部６における書き込み完了後のライトポインタのアドレスの位置は、書き込み後ライトポインタを移動させる場合と、ライトポインタを移動させた後書き込む場合とでは、１データ分ずれが生じることに留意する。アップロード部８における読出し処理も同様である。【００４７】
次に、本実施の形態の処理をフローチャートを参照しつつ説明する。本実施の形態における処理は、キャプチャ処理およびアップロード処理に分けることができる。【００４８】
まず、キャプチャ処理について説明する。ネットワークインターフェイス部１２０からルーティング部１１０へ流れる通信データをキャプチャする処理のフローチャートを図７に示す。【００４９】
ネットワークインターフェイス部１２０が外部より通信データを受信する（ステップＳ１）と、検索実行部４は、検索条件式に基づき通信データを検索する（ステップＳ２）。ここで、通信データが検索条件式のいずれかに適合した場合（ステップＳ２、検索適合）、検索実行部４は、適合した検索条件式の検索条件番号とキャプチャされた通信データ（キャプチャデータ）を、保持データ管理部６に出力する。【００５０】
また検索実行部４は、現在の時間を取得し、キャプチャデータのレングス計算および破棄情報に値をセット（破棄動作ではないので数値“０”がセットされる）し、これらの情報を制御情報として、キャプチャデータと一緒に保持データ管理部６に出力する。【００５１】
保持データ管理部６は、検索実行部４より取得した検索条件番号と、管理テーブル（図４参照）から対象キャプチャグループを決定し（ステップＳ３）、対象キャプチャグループに対応する区分領域内のライトポインタが指し示すアドレスに、キャプチャデータおよび制御情報を書き込む。その後、アップロード部８は、書き込まれた区分領域のライトポインタに１キャプチャデータおよび１制御情報分の値を加算し、ライトポインタが指し示すアドレスを１キャプチャデータおよび制御情報のサイズ分移動させる（ステップＳ４）。【００５２】
尚、本実施の形態においては、アップロード部８が区分領域のライトポインタに１キャプチャグループ分の値を加算したが、保持データ管理部６が行ってもよい。また、保持データ管理部６によってキャプチャデータが書き込まれた後に、アップロード部８はライトポインタを移動させたが、アップロード部８によってライトポインタが移動された後に、保持データ管理部６がキャプチャデータを書き込こんでもよい。【００５３】
その後、通信データはルーティング部１１０に転送され（ステップＳ５）、従来通りの転送処理がなされる。【００５４】
一方、検索実行部４による検索が適合しなかった場合（ステップＳ２、検索不適合）、通信データはそのままルーティング部１１０に転送され（ステップＳ５）、従来通りの通信データ中継処理がなされる。【００５５】
以上の動作を繰り返すことにより、パケットのキャプチャが可能となる。【００５６】
また、ルーティング部１１０自らがネットワークパケット（通信データ）を生成し、ルーティング部１１０自らの情報をネットワークインターフェイス部１２０を介して外部に送信する場合もあり、そのような通信データもキャプチャ対象とする必要がある。次にルーティング部１１０からネットワークインターフェイス部１２０へ流れる通信データをキャプチャする処理のフローチャートを図８に示し、処理内容を説明する。【００５７】
ルーティング部１１０は、ネットワークインターフェイス部１２０に向けた通信データを送信し（ステップＳ１１）、検索実行部４は、検索処理を行う（ステップＳ１２）。検索実行部４による検索が適合した場合（ステップＳ１２、検索適合）、上述の対象キャプチャグループを決定処理、キャプチャデータ書込み処理が行われ（ステップＳ１３、ステップＳ１４）、ネットワークインターフェイス部１２０に通信データが転送され（ステップＳ１５）、外部に送信される。尚、ステップＳ１２、ステップＳ１３、ステップＳ１４の処理は、それぞれステップＳ２、ステップＳ３、ステップＳ４の処理と同様である。【００５８】
一方、検索実行部４による検索が適合しなかった場合（ステップＳ１２、検索不適合）、通信データはそのままネットワークインターフェイス部１２０に転送され（ステップＳ１５）、外部に送信される。【００５９】
上述の処理によりキャプチャデータがデータ保持部７の区分領域にストックされてくると、区分領域がキャプチャデータでフルになってしまう。よって、キャプチャデータの読み出し（アップロード）処理を行うことで外部の管理装置にキャプチャデータを転送し、区分領域内のキャプチャデータを削除する必要がある。【００６０】
ここで、アップロード処理の種類について説明する。まず、アップロード処理は、ルーティング部１１０における外部の管理装置へのアップロード処理（外部アップロード処理）、アップロード部８におけるルーティング部１１０へのアップロード処理（内部アップロード処理）がある。またアップロード処理は、外部の管理装置からルーティング部１１０に対しアップロード要求がなされることで開始される場合と、アップロード部８からルーティング部１１０に対しアップロード要求がなされることで開始される場合とがある。【００６１】
図９のフローチャートを参照しつつ、外部の管理装置からのアップロード要求をルーティング部１１０が受け付けた場合のアップロード処理を説明する。またルーティング部１１０は、必要に応じてアップロードしたいキャプチャデータ数（もしくは全て）を指定することができるが、本実施の形態では、キャプチャグループｎに対応する区分領域から、ｘ個のキャプチャデータがアップロードされる例として説明する。尚、図９にて示した処理は、ステップＳ２４以外はルーティング部１１０上のソフトウェアにより行われるが、アップロード部８にて行われてもよい。【００６２】
アップロード要求を受け付けたルーティング部１１０は、データ保持部７のキャプチャグループｎに対応する区分領域のライトポインタとリードポインタを確認することで（ステップＳ２１）、アップロード可能なキャプチャデータの有無を判定する（ステップＳ２２）。アップロード可能なキャプチャデータがあった場合（ステップＳ２２、Ｙｅｓ）、ルーティング部１１０は、ｘが０かを判定する（ステップＳ２３）。ｘが０でない場合（ステップＳ２３、Ｎｏ）、アップロード部８に対し内部アップロード処理（後述）を行わせることで、ルーティング部１１０はキャプチャデータを取得する（ステップＳ２４）。【００６３】
内部アップロード処理が終了したら、ルーティング部１１０はｘに対し１減算させ（ステップＳ２５）、ステップＳ２３の判定処理に処理を戻す。ｘが０になるまでステップＳ２４、ステップＳ２５の処理が繰り返される。ｘが０になった場合（ステップＳ２３、Ｙｅｓ）、ルーティング部１１０は、ステップＳ２４にて取得されたキャプチャデータおよび制御情報（ともにｘ個分）をＦＴＰパケット化し（ステップＳ２６）、外部の管理装置に対しＦＴＰプロトコルにてキャプチャデータを送信する（ステップＳ２７、ステップＳ２８）。【００６４】
外部の管理装置への送信が完了した場合（ステップＳ２８、Ｙｅｓ）、処理は終了する。【００６５】
また、ステップＳ２２にてアップロード可能なキャプチャデータがなかった場合（ステップＳ２２、Ｎｏ）、ルーティング部１１０は、外部の管理装置に対し転送するキャプチャデータがない旨を通知する（ステップＳ２９）。【００６６】
次に、アップロード部８における内部アップロード処理について、図１０のフローチャートを参照しつつ説明する。尚、内部アップロード処理は図９のステップＳ２４に対応する。【００６７】
アップロード部８は、キャプチャグループｎに対応する区分領域に格納されたキャプチャデータおよび制御情報を１データ分読み出す（ステップＳ３１）。尚、アップロード部８は、現在のリードポインタにて指し示したアドレスにあるキャプチャデータおよび制御情報を読み出す。その後、アップロード部８は、読み出したキャプチャデータおよび制御情報をルーティング部１１０に転送し（ステップＳ３２）、データ保持部７のキャプチャグループｎに対応する区分領域のリードポインタを１キャプチャデータ分および１制御情報分加算する（ステップＳ３３）。【００６８】
尚、アップロード部８はデータを読み出してからリードポインタに加算したが、リードポインタに加算してからデータを読み出してもよい。【００６９】
通常のアップロード処理は、上述のように外部の管理装置からのアップロード要求をルーティング部１１０が受け付けた場合に実施される。しかしながら、何らかの理由で外部の管理装置からのアップロード要求がこない状態が続き、アップロード部８が管理しているライトポインタとリードポインタの差分がアップロード閾値（図４に示した管理テーブル上にあるアップロード起動要求閾値）を下回った場合、アップロード部８は、対象キャプチャグループに対応した区分領域がフルになるのを防ぐため、ルーティング部１１０に対しアップロード起動要求を発行する。【００７０】
このようなアップロード処理は、アップロード部８からのルーティング部１１０に対するアップロード起動要求処理をトリガとして行われる。ここで、アップロード部８からのルーティング部１１０へのアップロード起動要求処理を図１１に示す。【００７１】
アップロード部８は、所定のキャプチャグループ（ここでは上述同様キャプチャグループｎとする）に対応する区分領域のライトポインタとリードポインタとの差分を確認し、管理テーブル（図４参照）のアップロード起動要求閾値（所定の閾値）以下かどうかを判定する（ステップＳ４１）。ここで、差分がアップロード起動要求閾値以下である場合（ステップＳ４１、Ｙｅｓ）、アップロード部８は、ルーティング部１１０に対し起動要求フラグをＯＮにすることで起動要求を行う（ステップＳ４２）。また、差分がアップロード起動要求閾値より上である場合（ステップＳ４１、Ｎｏ）、アップロード部８は、ルーティング部１１０へ起動要求フラグをＯＦＦにすることで起動要求を停止する（ステップＳ４３）。尚、起動要求フラグのＯＮまたはＯＦＦは、本実施の形態ではルーティング部１１０内で保持され、管理されているものとするが、アップロード部８内部にて保持され、管理されていても構わない。【００７２】
上述のアップロード部８のルーティング部１１０へのアップロード起動要求処理は随時行われる。【００７３】
次に、上述のように起動要求フラグに基づいたルーティング部１１０のアップロード処理を図１２を参照しつつ説明する。ルーティング部１１０では、ルーティング部１１０が処理していたタスクをアップロード部８からのアップロード起動要求処理に切り替えることで、アップロード処理が行われる。【００７４】
ルーティング部１１０は、起動要求フラグがＯＮであるかを確認する（ステップＳ５１）。ここで、起動要求フラグがＯＮである場合（ステップＳ５１、Ｙｅｓ）、ルーティング部１１０は、アップロード部８に対し対象キャプチャグループ（キャプチャグループｎ）に対応する区分領域に対する内部アップロード処理の実施を要求する（ステップＳ５２）。内部アップロード処理の実施の要求を受けたアップロード部８は、内部アップロード処理を実施する（ステップＳ５３）。尚、内部アップロード処理は上述した通りであるため、ここでの説明は省略する（図１０参照）。【００７５】
内部アップロード処理が終了したら、ルーティング部１１０は、再度起動要求フラグがＯＮであるかを確認する（ステップＳ５１）。このように起動要求フラグがＯＦＦになるまで、ステップＳ５１、ステップＳ５２、ステップＳ５３の処理が繰り返される。【００７６】
キャプチャグループｎの区分領域のライトポインタとリードポインタとの差分がアップロード起動要求閾値より上となり（図１１のステップＳ４１、ステップＳ４３）、起動要求フラグがＯＦＦになった場合（ステップＳ５１、Ｎｏ）、ルーティング部１１０は、キャプチャ装置（アップロード部８）からのキャプチャデータ（起動要求フラグがＯＮであった最中のステップＳ５３処理によってストックされたキャプチャデータ）および制御情報をＦＴＰパケット化し（ステップＳ５４）、外部の管理装置に対しＦＴＰプロトコルにてキャプチャデータを送信する（ステップＳ５５、ステップＳ５６）。【００７７】
外部の管理装置への送信が完了した場合（ステップＳ５６、Ｙｅｓ）、処理は終了する。【００７８】
このように、アップロード部８からのルーティング部１１０に対するアップロード起動要求処理によって、キャプチャデータを区分領域から破棄することなくデータキャプチャが可能となる。【００７９】
しかしながら、中継装置１００内でキャプチャされるべきアップロード対象のパケットが大量に伝送路上に流れた場合、キャプチャデータの保持のためのメモリライトに対し、アップロードのためのメモリリードが間に合わず、メモリライトがメモリリードに追いついてしまう。よって、対象区分領域がフルになり（所定の条件）、対象キャプチャグループのキャプチャデータの破棄が必要となる。【００８０】
ここで、破棄の方式（所定の規則）について説明する。破棄の方式は、各区分領域に保持されているキャプチャデータや制御情報等のデータのうち、最古のデータから順に破棄していく方式、もしくは最新のデータから順に破棄していく方式のいずれかである。また保持データ管理部６は、キャプチャグループごとにこれら２つの破棄方式のうちいずれを採用するかを、管理テーブルの破棄方式ＦＬＧ（図４参照）を用いてユーザに選択させることができる。【００８１】
最古のデータから順に破棄していく方式を図１３を参照しつつ説明する。ここでは、区分領域の容量を仮にキャプチャデータおよび制御情報のデータ１６セット分とし、また若い番号が最新のデータであるものとして説明する。【００８２】
図１３の「キャプチャデータフル状態」に区分領域がフルになっている状態を示す。この状態で、保持データ管理部６による書込みが発生した場合、保持データ管理部６は最古のデータ（図１３の「キャプチャデータフル状態」では「１６」のデータ）が格納されたアドレスに、最新のデータを書き込むことで最古のデータを破棄する。そして、アップロード部８は、アップロード部８の内部で管理している破棄カウンタに１加算し、リードポインタを破棄したキャプチャデータおよび制御情報分（すなわち１キャプチャデータおよび１制御情報分）だけ進めておく。【００８３】
上述の処理が保持データ管理部６による書込みの都度行われる。【００８４】
図１３の「キャプチャデータの書き込み１」に「キャプチャデータフル状態」からデータを１つ破棄した状態を示し、「キャプチャデータの書き込み２」に「キャプチャデータフル状態」からデータを２つ破棄した状態を示す。【００８５】
そして、中継装置１００が輻輳状態を逃れキャプチャデータおよび制御情報のアップロードが開始されると、リードポインタとライトポインタ間に充分余裕ができた状態となる。ここで、保持データ管理部６によるキャプチャデータ等の書き込みが発生した場合は、アップロード部８は、その書き込みが発生したキャプチャデータに対応する制御情報の破棄情報に破棄カウンタで数えた破棄パケット数（本例においては「２」）を書き込み、通常のキャプチャ動作に移行する（図１３の「キャプチャデータの書き込み３」参照）。【００８６】
次に、最新のデータから順に破棄していく方式を図１４を参照しつつ説明する。図１４は、４つの状態（キャプチャデータフル状態、キャプチャデータの書き込み１、キャプチャデータの書き込み２、キャプチャデータの書き込み３）における動作を示す。上述同様、ここでも区分領域の容量を仮にキャプチャデータおよび制御情報１６セット分とし、また若い番号が最新のデータであるものとして説明する。【００８７】
図１４の「キャプチャデータフル状態」に区分領域がキャプチャデータで満たされている状態を示す。この状態である場合、保持データ管理部６は、最新のキャプチャデータおよび制御情報を書き込まない（よって、最新のデータは破棄される）。そして、データが破棄されている間は、アップロード部８は、内部で管理している破棄カウンタを破棄パケット分だけ増加する。【００８８】
図１４の「キャプチャデータの書き込み１」に「キャプチャデータフル状態」からデータを１つ破棄した状態を示し、「キャプチャデータの書き込み２」に「キャプチャデータフル状態」からデータを２つ破棄した状態を示す。【００８９】
そして、中継装置１００が輻輳状態を逃れキャプチャデータおよび制御情報のアップロードが開始されると、区分領域はリードポインタとライトポインタ間に充分余裕ができた状態となる。ここで、区分領域にキャプチャデータおよび制御情報の書き込みが発生した場合には、アップロード部８は、書き込みが発生したキャプチャデータの制御情報の破棄情報に破棄カウンタの数を書き込み、通常のキャプチャ動作に移行する（図１４の「キャプチャデータの書き込み３」参照）。【００９０】
尚、上述の最古のデータから順に破棄していく方式、最新のデータから順に破棄していく方式の両方式とも、破棄カウンタの管理および破棄情報への書き込みはアップロード部８にて行われるが、保持データ管理部６にて管理および書き込みが行われてもよい。【００９１】
また、本実施の形態においては、上述の破棄方式は区分領域に対して適用しているが、有限である記憶領域を有する記憶媒体であったら如何なるものにも適用することができる。【００９２】
最古のデータから破棄していく方式、および最新のデータを破棄していく方式のいずれかの方式が採用されても、ユーザは外部の管理装置にてパケットの解析をする際、アップロードされたデータの制御情報の破棄情報に記載があるものを発見することにより、その記載があるキャプチャデータの以前において、キャプチャ装置１内で破棄の処理がなされたことを確認することができる。【００９３】
また、ユーザはキャプチャグループごとにデータを破棄する方式を選択できるため、キャプチャするデータの特徴に合わせた運用が可能となる。【００９４】
上述の区分領域がフルの状態になる要因として、更に通常ルーティング部１１０は、キャプチャデータのアップロード処理より、本来の目的である転送処理を優先するため、区分領域にデータがストックされたままとなることが考えられる。次に、ルーティング部１１０に対し中継データの転送処理よりもキャプチャデータのアップロード処理を優先させることで、輻輳時にキャプチャしたパケットの破棄を防ぐ方法について説明する。【００９５】
この方法は、管理テーブルの優先ＦＬＧ（図４参照）に対し、中継処理よりアップロード処理の優先順位を高く設定するフラグが付与されることで、ＣＰＵ１１１は、アップロード処理の要求を受けた場合、中継データの転送処理を中断する方法である。このようにすることで、キャプチャ対象のパケットが大量に伝送路上を流れ、各区分領域へのライト要求が大量に発生した場合であっても、中継装置１００はキャプチャデータのアップロード処理を優先して処理し、ライトポインタがリードポインタを追い越すことがなくなる。【００９６】
これにより、一旦キャプチャしたキャプチャデータを破棄することなく、また中継したデータとキャプチャデータが同一となることを保証する。また、重要なキャプチャグループのアップロード処理を優先して行うことができる。【００９７】
以上説明したように、本実施の形態における中継装置は、一般的なキャプチャ中継装置と異なり、検索条件を検索条件式としてグループ化でき、そのグループ単位で区分領域への保持およびアップロードが可能なため、外部の管理装置にてキャプチャデータの解析がなされる場合、ユーザは対象のキャプチャデータ群のみを解析することができる。【００９８】
なお、保持部は、実施の形態における検索条件保持部５、保持データ管理部６に対応し、取得部は、実施の形態における検索実行部４に対応する。さらに格納部は、実施の形態における保持データ管理部６、データ保持部７に対応する。また送信部は、実施の形態におけるアップロード部８に対応する。また破棄部は、実施の形態における保持データ管理部６に対応し、破棄情報保持部は、実施の形態におけるアップロード部８もしくは保持データ管理部６に対応する。
【産業上の利用可能性】
【００９９】
以上のように、本発明によれば、ユーザはキャプチャデータの解析を容易に行うことができる。
【図１】
2008129641.tif 000003
【図２】
2008129641.tif 000004
【図３】
2008129641.tif 000005
【図４】
2008129641.tif 000006
【図５】
2008129641.tif 000007
【図６】
2008129641.tif 000008
【図７】
2008129641.tif 000009
【図８】
2008129641.tif 000010
【図９】
2008129641.tif 000011
【図１０】
2008129641.tif 000012
【図１１】
2008129641.tif 000013
【図１２】
2008129641.tif 000014
【図１３】
2008129641.tif 000015
【図１４】
2008129641.tif 000016
【手続補正書】
【提出日】平成21年10月7日(2009.10.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
少なくとも１つの通信経路に接続されることができ、該通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ装置であって、
前記記憶媒体に設定された領域の位置情報と該領域に格納する通信データの条件との組を少なくとも１つ保持する保持部と、
前記通信経路を通過する通信データのうち、前記保持部に保持された条件に適合する通信データを適合データとして取得する取得部と、
前記適合データに適合する条件に対応する領域である格納領域の位置情報を取得し、該格納領域へ前記適合データを格納する格納部と、
を備えるキャプチャ装置。
【請求項２】
請求項１に記載のキャプチャ装置において、
前記領域に格納されているデータを外部へ送信する送信処理を行う送信部を備えることを特徴とするキャプチャ装置。
【請求項３】
請求項２に記載のキャプチャ装置において、
前記送信部は、領域毎に、前記適合データを格納する位置である格納位置を設定し、前記格納部は該格納位置に適合データを書き込むとともに前記送信部は前記格納部によって書き込まれたサイズ分格納位置を移動させ、さらに前記送信部は、前記適合データを送信する位置である送信位置を設定し、該送信位置に格納されたデータを送信するとともに前記送信位置を送信したサイズ分移動させることを特徴とするキャプチャ装置。
【請求項４】
請求項３に記載のキャプチャ装置において、
前記領域は、リングバッファであり、前記格納位置および前記送信位置は前記リングバッファ上を移動することを特徴とするキャプチャ装置。
【請求項５】
請求項４に記載のキャプチャ装置において、
前記格納位置と前記送信位置との差が所定の閾値以下となった場合、前記送信部は前記適合データを外部へ送信することを特徴とするキャプチャ装置。
【請求項６】
少なくとも１つの通信経路に接続されることができ、該通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ装置であって、
前記通信経路を通過する通信データのうち、設定された条件に適合する通信データを適合データとして取得する取得部と、
前記記憶媒体に設定された領域へ前記適合データを格納する格納部と、
前記格納部が前記適合データを前記領域へ格納する際、該領域の余地が所定の条件を満たす場合、所定の規則に基づいてデータの破棄を行う破棄部と、
前記破棄部により行われた破棄の結果に関する情報を破棄情報として保持する破棄情報保持部と、
を備えるキャプチャ装置。
【請求項７】
通信経路を通過する通信データを取得して記憶媒体に格納するキャプチャ方法であって、
前記記憶媒体に設定された領域の位置情報と該領域に格納する通信データの条件との組を取得する組情報取得ステップと、
前記通信経路を通過する通信データのうち、前記組情報取得ステップにて取得された条件に適合する通信データを適合データとして取得する適合データ取得ステップと、
前記適合データに適合する条件に対応する領域である格納領域の位置情報を取得し、該格納領域へ前記適合データを格納する格納ステップと、
を実行するキャプチャ方法。
【国際調査報告】
2008129641.tif 000017
2008129641.tif 000018