(57)【要約】【課題】ＨＴＴＰなどの特定のプロトコルのパケットが集中的に送受信されるネットワークの通信路でも、複数の侵入検知装置で通信パケットの精査処理を分散させて実施し、システム全体で性能向上する。【解決手段】侵入検知装置１００ａは、ネットワークに接続されるとともに、ネットワークにおいて確立された通信論理コネクションに従って通信される通信パケットを精査する。侵入検知装置１００ａは、複数の通信論理コネクションのそれぞれの確立を検知し、確立を検知した通信論理コネクションごとに、通信論理コネクションに従って通信される通信パケットの精査処理を実行するかどうかを決定する通信状態管理部１０４ａと、通信状態管理部１０４ａが通信論理コネクションに従って通信される通信パケットの精査処理を実行すると決定した場合に、通信論理コネクションに従って通信される通信パケットの精査処理を実行する検知エンジン部１０５ａとを備えた。【選択図】図３
2007323384.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されるとともに、前記ネットワークにおいて確立された通信論理コネクションに従って通信される通信パケットを精査するパケット精査装置において、
複数の通信論理コネクションのそれぞれの確立を検知し、確立を検知した通信論理コネクションごとに、通信論理コネクションに従って通信される通信パケットの精査処理を実行するかどうかを決定する通信状態管理部と、
前記通信状態管理部が通信論理コネクションに従って通信される通信パケットの精査処理を実行すると決定した場合に、通信論理コネクションに従って通信される通信パケットの精査処理を実行する精査処理実行部と
を備えたことを特徴とするパケット精査装置。
【請求項２】
前記通信状態管理部は、
通信論理コネクションに従って通信される通信パケットの精査処理を実行すると決定した場合に、自装置が通信パケットの精査処理を実行することを示す自装置実施通知を生成して他のパケット精査装置に送信することを特徴とする請求項１記載のパケット精査装置。
【請求項３】
前記通信状態管理部は、
自装置が他のパケット精査装置から前記他のパケット精査装置が所定の通信論理コネクションに従って通信される通信パケットの精査処理を実行することを示す他装置実施通知を受信した場合には、受信した前記他装置実施通知に係る前記所定の通信論理コネクションに従って通信される通信パケットの精査処理を実行しないと決定することを特徴とする請求項１または２のいずれかに記載のパケット精査装置。
【請求項４】
前記パケット精査装置は、さらに、
前記ネットワークに接続する装置の接続関係を示すネットワーク構成情報を記憶するネットワーク構成情報記憶部を備え、
前記通信状態管理部は、
通信論理コネクションの確立を検知すると、前記ネットワーク構成情報記憶部が記憶する前記ネットワーク構成情報を参照することにより、確立を検知した通信論理コネクションにおける自装置から確立を検知した通信論理コネクションに従って通信される通信パケットの宛先の装置までの経路に他のパケット精査装置が存在するかどうかを確認し、他のパケット精査装置がＮ台（Ｎは１以上のいずれかの整数）存在すると確認した場合には、以降、自装置から前記宛先の装置への前記経路を含む通信論理コネクションについては通信論理コネクションの確立Ｎ回につき１回の割合で通信パケットの精査処理を実行すると決定することを特徴とする請求項１〜３のいずれかに記載のパケット精査装置。
【請求項５】
前記パケット精査装置は、さらに、
前記精査処理実行部の処理能力を示す処理能力データを記憶する処理能力データ記憶部を備え、
前記通信状態管理部は、
前記処理能力データ記憶部が記憶する前記処理能力データに基づいて、通信パケットの精査処理を実行するかどうかを決定することを特徴とする請求項１〜３のいずれかに記載のパケット精査装置。
【請求項６】
前記処理能力データ記憶部は、
前記処理能力データとして、所定の数の通信論理コネクションを記憶していることを特徴とする請求項５記載のパケット精査装置。
【請求項７】
前記処理能力データ記憶部は、
前記処理能力データとして、単位時間あたりの通信パケット数を記憶していることを特徴とする請求項５記載のパケット精査装置。
【請求項８】
前記処理能力データ記憶部は、
前記処理能力データとして、通信パケットの単位時間あたりの総バイト数を記憶していることを特徴とする請求項５記載のパケット精査装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ネットワークでやりとりされる通信パケットの精査処理を実行するパケット精査装置に関する。
【背景技術】
【０００２】
従来のネットワーク侵入検知システムでは、一台の侵入検知装置ですべてのシグネチャを用いてパケットを検査するのではなく、管理装置から渡されたシグネチャグループごとに、複数の侵入検知装置で分担して検査を行っていた（例えば、特許文献１）。
【特許文献１】特開２００４−６４６９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来のネットワーク侵入検知システムは、シグネチャを排他的に分類して複数の侵入検知装置で分散させて通信パケットの精査処理を実施していた。よって、ＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）などの特定のプロトコルのパケットが集中的に送受信されるネットワークの通信路では、特定の侵入検知装置に処理負荷が集中し、システム全体で処理性能が上がらないという問題があった。
【０００４】
この発明は、ＨＴＴＰなどの特定のプロトコルのパケットが集中的に送受信されるネットワークの通信路でも、複数の侵入検知装置で通信パケットの精査処理を分散させて実施し、システム全体で性能向上することを目的とする。
【課題を解決するための手段】
【０００５】
この発明のパケット精査装置は、
ネットワークに接続されるとともに、前記ネットワークにおいて確立された通信論理コネクションに従って通信される通信パケットを精査するパケット精査装置において、
複数の通信論理コネクションのそれぞれの確立を検知し、確立を検知した通信論理コネクションごとに、通信パケットの精査処理を実行するかどうかを決定する通信状態管理部と、
前記通信状態管理部が通信パケットの精査処理を実行すると決定した場合に、通信パケットの精査処理を実行する精査処理実行部と
を備えたことを特徴とする。
【発明の効果】
【０００６】
この発明により、パケットの精査処理を効率的に分散させることができる。
【発明を実施するための最良の形態】
【０００７】
実施の形態１．
図１は、コンピュータである侵入検知装置１００ａ（パケット精査装置）の外観の一例を示す図である。図１において、侵入検知装置１００ａは、システムユニット８３０、ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）やＬＣＤ（液晶）の表示画面を有する表示装置８１３、キーボード８１４（Ｋｅｙ  Ｂｏａｒｄ：Ｋ／Ｂ）、マウス８１５、ＦＤＤ８１７（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ    Ｄｒｉｖｅ）、コンパクトディスク装置８１８（ＣＤＤ：Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｄｒｉｖｅ）、プリンタ装置８１９などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
【０００８】
システムユニット８３０はコンピュータであり、ネットワークに接続されている。また、ネットワークには、侵入検知装置１００ｂ、サーバ２００ａ，２００ｂ、端末３００ａ，３００ｂ，管理装置４００が接続されている。
【０００９】
図２は、実施の形態１における侵入検知装置１００ａのハードウェア資源の一例を示す図である。なお後述のように、侵入検知装置１００ａと侵入検知装置１００ｂとは同じ構成である。図２において、侵入検知装置１００ａは、プログラムを実行するＣＰＵ８１０（中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ８１０は、バス８２５を介してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）８１１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８１２、表示装置８１３、キーボード８１４、マウス８１５、通信ボード８１６、ＦＤＤ８１７、ＣＤＤ８１８、プリンタ装置８１９、磁気ディスク装置８２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置８２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
【００１０】
ＲＡＭ８１２は、揮発性メモリの一例である。ＲＯＭ８１１、ＦＤＤ８１７、ＣＤＤ８１８、磁気ディスク装置８２０等の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置、記憶部、格納部あるいはＤＢ（データベース）部の一例である。通信ボード８１６、キーボード８１４、ＦＤＤ８１７などは、入力部、入力装置の一例である。また、通信ボード８１６、表示装置８１３、プリンタ装置８１９などは、出力部、出力装置の一例である。また、通信ボード８１６（送受信部）は、ネットワークに接続されている。
【００１１】
磁気ディスク装置８２０には、オペレーティングシステム８２１（ＯＳ）、ウィンドウシステム８２２、プログラム群８２３、ファイル群８２４が記憶されている。プログラム群８２３のプログラムは、ＣＰＵ８１０、オペレーティングシステム８２１、ウィンドウシステム８２２により実行される。
【００１２】
上記プログラム群８２３には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ８１０により読み出され実行される。
【００１３】
ファイル群８２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の生成結果」、「〜の処理結果」として説明する情報や、データや信号値や変数値やパラメータ、及び、以下の実施の形態で後述する「通信状態管理テーブル」、「ネットワーク構成情報」、「処理能力データ」、「シグネチャ」などが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ８１０によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００１４】
また、以下に述べる実施の形態の説明においては、データや信号値は、ＲＡＭ８１２のメモリ、ＦＤＤ８１７のフレキシブルディスク、ＣＤＤ８１８のコンパクトディスク、磁気ディスク装置８２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等の記録媒体に記録される。また、データや信号は、バス８２５や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１５】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ８１１に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ８１０により読み出され、ＣＰＵ８１０により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【００１６】
図３は、実施の形態１における侵入検知装置１００ａ（パケット精査装置）を示す構成図である。侵入検知装置１００ａは、パケット送受信部１０１ａ、パケット送受信部１０２ａ、パケット検査済チェック部１０３ａ、通信状態管理部１０４ａ、検知エンジン部１０５ａ（精査処理実行部）、シグネチャＤＢ（Ｄａｔａ  Ｂａｓｅ）部１０６ａ、管理通信部１０７ａとを備える。通信状態管理部１０４ａは、通信状態管理テーブル記憶部１０４ａ−１、ネットワーク構成情報記憶部１０４ａ−２、処理能力データ記憶部１０４ａ−３とを備えている。
【００１７】
図３において、
（１）パケット送受信部１０１ａとパケット送受信部１０２ａとは、外部からパケットを受信し、また外部へパケットを送信する。パケット送受信部１０１ａは、物理ポート１ａからのデータを受信し、あるいは物理ポート１ａへデータを送信する。
（２）パケット送受信部１０２ａは、物理ポート２ａからのデータを受信し、あるいは物理ポート２ａへデータを送信する。
（３）パケット検査済チェック部１０３ａは、ＴＣＰのコネクション（通信論理コネクション、以下、単にコネクションという）の状態を検査する。
（４）通信状態管理部１０４ａは、パケットの送信元と宛先と種別により、ＴＣＰコネクションの状態を管理する。また、通信状態管理テーブル記憶部１０４ａ−１は、後述する通信状態管理テーブルを記憶している。ネットワーク構成情報記憶部１０４ａ−２は、後述するネットワーク構成情報を記憶している。処理能力データ記憶部１０４ａ−３は、後述する処理能力データを記憶している。
（５）検知エンジン部１０５ａは、パケット検査済チェック部１０３ａから渡されたパケットと条件が一致するシグネチャをシグネチャＤＢ部１０６ａから取り出して、パケットの検査を実施する。そして、検査が「異常無し」である場合には、受信した側でないパケット送受信部１０１ａまたはパケット送受信部１０２ａにパケットを送信し、検査結果が「異常有り」の場合にはパケットを廃棄する。
（６）シグネチャＤＢ部１０６ａは、管理装置４００から送られたシグネチャを保存するデータベースである。
（７）管理通信部１０７ａは、管理装置４００から送られるシグネチャを、パケット送受信部１０１ａまたはパケット送受信部１０２ａを通してパケット検査済チェック部１０３ａ経由で受信し、そのシグネチャをシグネチャＤＢ部１０６ａに格納する。また、管理通信部１０７ａは、管理装置４００から送られるネットワーク構成情報をネットワーク構成情報記憶部１０４ａ−２に格納する。
【００１８】
（ネットワーク構成）
図４は、実施の形態１におけるネットワーク構成を示す構成図である。図４の侵入検知装置１００ｂは、侵入検知装置１００ａと同一の構成であり、侵入検知装置１００ａに対応する構成要素に「ｂ」を付して説明する。図４に示すように、端末３００ａ、端末３００ｂがルータ５００ａを介して侵入検知装置１００ａに接続してり、また侵入検知装置１００ａはルータ５００ｂに接続している。管理装置４００はルータ５００ｂに接続している。サーバ２００ｂがルータ５００ｂに接続している。サーバ２００ａが侵入検知装置１００ｂに接続しており、侵入検知装置１００ｂはルータ５００ｂに接続している。
【００１９】
次に、管理装置４００がシグネチャ及びネットワーク構成情報を配布する動作について説明する。
【００２０】
（管理装置によるシグネチャの配布）
（１）管理装置４００は、侵入検知装置１００ａと侵入検知装置１００ｂ宛に、シグネチャを配布する。
（２）侵入検知装置１００ａでは、パケット送受信部１０２ａからパケット検査済チェック部１０３ａと管理通信部１０７ａとを通してシグネチャをシグネチャＤＢ部１０６ａに格納する。
（３）侵入検知装置１００ｂでも同様に、パケット送受信部１０１ｂからパケット検査済チェック部１０３ｂと管理通信部１０７ｂを通してシグネチャをシグネチャＤＢ部１０６ｂに格納する。
【００２１】
（ネットワーク構成情報の配布）
（１）また、管理装置４００は、侵入検知装置１００ａと侵入検知装置１００ｂ宛に、ネットワーク構成情報を配布する。「ネットワーク構成情報」とは、ネットワークに接続する装置の接続関係を示す情報であり、図５、図６で後述する。
（２）侵入検知装置１００ａは、パケット送受信部１０２ａからパケット検査済チェック部１０３ａと管理通信部１０７ａとを通してネットワーク構成情報を通信状態管理部１０４ａのネットワーク構成情報記憶部１０４ａ−２に格納する。
（３）侵入検知装置１００ｂでも同様に、パケット送受信部１０１ｂからパケット検査済チェック部１０３ｂと管理通信部１０７ｂを通してネットワーク構成情報を通信状態管理部１０４ｂのネットワーク構成情報記憶部１０４ｂ−２に格納する。
【００２２】
（ネットワーク構成情報）
図５、図６は、管理装置４００が配布するネットワーク構成情報を示す。
【００２３】
図５は、侵入検知装置１００ａに配布されるネットワーク構成情報を示す図である。
（１）宛先サーバとして「サーバ２００ａ」と「サーバ２００ｂ」、
（２）宛先サーバへの物理ポートとして「物理ポート２ａ」、
（３）中継経路上の侵入検知装置としてサーバ２００ａ宛は「侵入検知装置１００ｂ」、及び中継経路上の侵入検知装置としてサーバ２００ｂ宛は侵入検知装置は「なし」が設定されている。
【００２４】
図６は、侵入検知装置１００ｂに配布されるネットワーク構成情報を示す図である。
（１）宛先サーバとして「サーバ２００ａ」と「サーバ２００ｂ」、
（２）宛先サーバへの物理ポートとしてサーバ２００ａ宛は「物理ポート２ｂ」、及び宛先サーバへの物理ポートとしてサーバ２００ｂ宛は「物理ポート１ｂ」、
（３）中継経路上の侵入検知装置としてサーバ２００ａ宛は「なし」、及び中継経路上の侵入検知装置としてサーバ２００ｂ宛は侵入検知装置は「なし」が設定されている。
【００２５】
（端末３００ａとサーバ２００ａとのコネクションの確立）
端末３００ａからサーバ２００ａにＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）でＨＴＴＰアクセスした場合を想定する。図７は、ＴＣＰコネクションを確立する時の、時系列のプロトコルシーケンスを図示したものである。ＴＣＰのＳＹＮパケット、ＳＹＮ−ＡＣＫパケット、ＡＣＫパケットによりＴＣＰのコネクションを確立する（３ｗａｙハンドシェイク）。その時の端末３００ａ発であってサーバ２００ａ宛である通信パケットのＴＣＰ送信元ポート番号は３００００であり、ＴＣＰ宛先ポート番号は８０とすると、端末３００ａとサーバ２００ａ間に「ＴＣＰポート番号３００００とポート番号８０」との間でＴＣＰコネクションを確立する。
【００２６】
次に図８、図９を用いて、端末３００ａとサーバ２００ａとのコネクションの確立の動作を説明する。図８では、「Ｓ２０２〜Ｓ２０４」、「Ｓ２０６〜Ｓ２０８」、「Ｓ２１１〜Ｓ２１３」、「Ｓ２１５〜Ｓ２１７」の動作は、いずれも同様である。
【００２７】
（Ｓ２０１，Ｓ２０２）
端末３００ａからのＴＣＰ・ＳＹＮパケットがルータ５００ａを通して侵入検知装置１００ａに中継される（Ｓ２０１）。侵入検知装置１００ａのパケット送受信部１０１ａは、ＴＣＰ・ＳＹＮパケットを受信し、パケット検査済チェック部１０３ａが、ＴＣＰのコネクションの状態を検査する（Ｓ２０２）。
【００２８】
（Ｓ２０３）
通信状態管理部１０４ａは、ＴＣＰ・ＳＹＮパケットの
（１）送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）処理する装置と
（７）受信物理ポートと
を、通信状態管理テーブル記憶部１０４ａ−１が記憶する「通信状態管理テーブル」に書き込み（Ｓ２０３）、検知エンジン部１０５ａにＴＣＰ・ＳＹＮパケットを送り検査を依頼する。図１０〜図１４は、「通信状態管理テーブル」のそれぞれの状態を示す図である。このＳ２０３では、通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」には、図１０の「通信状態管理テーブル＃１」の「１行目の」状態が書きこまれる。
【００２９】
（Ｓ２０４）
検知エンジン部１０５ａでは、シグネチャＤＢ部１０６ａからパケットの条件に一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ２０４）。ＴＣＰ・ＳＹＮパケットの検査の結果、「異常無し」の場合には、受信した側と逆のパケット送受信部１０２ａからＴＣＰ・ＳＹＮパケットを送信する。
【００３０】
（Ｓ２０５）
端末３００ａからのＴＣＰ・ＳＹＮパケットが侵入検知装置１００ａとルータ５００ｂを中継されて侵入検知装置１００ｂに中継される（Ｓ２０５）。
【００３１】
（Ｓ２０６）
侵入検知装置１００ｂのパケット送受信部１０１ｂが、ＴＣＰ・ＳＹＮパケットを受信し、パケット検査済チェック部１０３ｂが、ＴＣＰのコネクションの状態を検査する（Ｓ２０６）。
【００３２】
（Ｓ２０７）
通信状態管理部１０４ｂは、ＴＣＰ・ＳＹＮパケットの
（１）送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）処理する装置と
（７）受信物理ポートと
を通信状態管理テーブル記憶部１０４ｂ−１が記憶する「通信状態管理テーブル」に書き込み（Ｓ２０７）、検知エンジン部１０５ｂにＴＣＰ・ＳＹＮパケットを送り検査を依頼する。このＳ２０７では、通信状態管理テーブル記憶部１０４ｂ−１の「通信状態管理テーブル」には、図１１の「通信状態管理テーブル＃２」の「１行目」の状態が書きこまれる。
【００３３】
（Ｓ２０８）
検知エンジン部１０５ｂでは、シグネチャＤＢ部１０６ｂからパケットの条件が一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ２０８）。ＴＣＰ・ＳＹＮパケットの検査の結果「異常無し」の場合には、受信した側と逆のパケット送受信部１０２ｂからＴＣＰ・ＳＹＮパケットを送信する。
【００３４】
（Ｓ２０９，Ｓ２１０）
端末３００ａからのＴＣＰ・ＳＹＮパケットがサーバ２００ａに届くと（Ｓ２０９）、サーバ２００ａは、ＴＣＰ・ＳＹＮ−ＡＣＫパケットを端末３００ａ宛に返す（Ｓ２１０）。
【００３５】
（Ｓ２１１）
サーバ２００ａからのＴＣＰ・ＳＹＮ−ＡＣＫパケットを侵入検知装置１００ｂのパケット送受信部１０２ｂが受信し、パケット検査済チェック部１０３ｂがＴＣＰのコネクションの状態を検査する（Ｓ２１１）。
【００３６】
（Ｓ２１２）
通信状態管理部１０４ｂは、
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）処理する装置と
（７）受信物理ポートと
を通信状態管理テーブル記憶部１０４ｂ−１の通信状態管理テーブルに書き込み（Ｓ２１２）、検知エンジン部１０５ｂにＴＣＰ・ＳＹＮ−ＡＣＫパケットを送り検査を依頼する。このＳ２１２では、通信状態管理テーブル記憶部１０４ｂ−１の「通信状態管理テーブル」には、図１１の「通信状態管理テーブル＃２」の「２行目の」状態が書きこまれる。すなわち、Ｓ２１２の時点において、通信状態管理テーブル記憶部１０４ｂ−１の「通信状態管理テーブル」は、図１１の「通信状態管理テーブル＃２」の状態である。
【００３７】
（Ｓ２１３）
検知エンジン部１０５ｂでは、シグネチャＤＢ部１０６ｂからパケットの条件に一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ２１３）。
【００３８】
（Ｓ２１４）
パケットの検査の結果「異常無し」の場合には、受信した側と逆のパケット送受信部１０１ｂからパケットを送信する（Ｓ２１４）。
【００３９】
この時点で通信状態管理テーブル記憶部１０４ｂ−１の「通信状態管理テーブルは、前述のように、図１１に示す通信状態管理テーブル＃２の内容を学習している。すなわち、この時点で通信状態管理テーブル記憶部１０４ｂ−１の「通信状態管理テーブ」は、図１１の「通信状態管理テーブル＃２」の内容である。「通信状態管理テーブル＃２」では、端末３００ａとサーバ２００ａ間とのパケットを処理する装置としては、侵入検知装置１００ｂを記録している。
【００４０】
サーバ２００ａからのＴＣＰ・ＳＹＮ−ＡＣＫパケットが、ルータ５００ｂを通して侵入検知装置１００ａに中継される（前記のＳ２１４）。
【００４１】
（Ｓ２１５）
侵入検知装置１００ａのパケット送受信部１０２ａが、ＴＣＰ・ＳＹＮ−ＡＣＫパケットを受信し、パケット検査済チェック部１０３ａでＴＣＰのコネクションの状態を検査する（Ｓ２１５）。
【００４２】
（Ｓ２１６）
通信状態管理部１０４ａは、
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）処理する装置と
（７）受信物理ポートと
を「通信状態管理テーブル」に書き込み、検知エンジン部１０５ａにパケットを送り検査を依頼する（Ｓ２１６）。このＳ２１６では、通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」には、図１０の「通信状態管理テーブル＃１」の「２行目の」状態が書きこまれる。すなわち、Ｓ２１６の時点において、通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」は，図１０の「通信状態管理テーブル＃１」の状態である。
【００４３】
（Ｓ２１７）
検知エンジン部１０５ａでは、シグネチャＤＢ部１０６ａからパケットの条件に一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ２１７）。
【００４４】
（Ｓ２１８）
パケットの検査の結果「異常無し」の場合には、受信した側と逆のパケット送受信部１０１ａからパケットを送信する（Ｓ２１８）。
【００４５】
この時点での通信状態管理テーブル記憶部１０４ａ−１の「通信テーブル管理テーブル」は、前述のように、図１０に示す通信状態管理テーブル＃１を学習している。すなわち、Ｓ２１８の時点において、通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」は、図１０の「通信状態管理テーブル＃１」の状態である。「通信状態管理テーブル＃１」では、端末３００ａとサーバ２００ａ間のパケットを処理する装置としては、侵入検知装置１００ａを記録している。
【００４６】
次に図９のシーケンス図を用いて、端末３００ａが、ＴＣＰ・ＡＣＫパケットをサーバ２００ａへ返す場合を説明する。ＴＣＰ・ＳＹＮ−ＡＣＫパケットを受信した端末３００ａは、ＴＣＰ・ＡＣＫパケットをサーバ２００ａへ返す。なお、図９において、「Ｓ３０２〜Ｓ３０４」の動作と「Ｓ３０７〜Ｓ３０９」とは、同様の動作である。
【００４７】
（Ｓ３０１，Ｓ３０２）
端末３００ａからのＴＣＰ・ＡＣＫパケットがルータ５００ａを通して侵入検知装置１００ａに中継される（Ｓ３０１）。侵入検知装置１００ａのパケット送受信部１０１ａがＴＣＰ・ＡＣＫパケットを受信し、パケット検査済チェック部１０３ａでＴＣＰのコネクションの状態を検査する（Ｓ３０２）。
【００４８】
（Ｓ３０３）
通信状態管理部１０４ａは
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）受信物理ポート番号と
から、通信状態管理テーブル記憶部１０４ａ−１の通信状態管理テーブル（このとき図１０の＃１の状態である）に既に登録されたエントリを検索し、処理する装置は自装置であることを認識する（Ｓ３０３）。
【００４９】
（Ｓ３０４）
通信状態管理部１０４ａは、検知エンジン部１０５ａにパケットを送り検査を依頼する。検知エンジン部１０５ａでは、シグネチャＤＢ部１０６ａからパケットの条件に一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ３０４）。
【００５０】
（Ｓ３０５）
パケットの検査の結果「異常無し」の場合には、受信した側と逆のパケット送受信部１０２ａからＴＣＰ・ＡＣＫパケットを送信する（Ｓ３０５）。
【００５１】
（Ｓ３０６）
侵入検知装置１００ａは、ＴＣＰ・ＡＣＫパケットの処理が終了すると、ネットワーク構成情報記憶部１０４ａ−２が記憶する図５に示すネットワーク構成情報をアクセスし、サーバ２００ａへのＴＣＰコネクション確立では、中継経路上に侵入検知装置１００ｂが存在することを認識する（Ｓ３０６）。
【００５２】
（Ｓ３１３：ＴＣＰコネクション検査済通知）
侵入検知装置１００ａは、図１５に示す「ＴＣＰコネクション検査済通知」（自装置実施通知の一例）を侵入検知装置１００ｂ宛てへ送信する（Ｓ３１３）。「ＴＣＰコネクション検査済通知」は、侵入検知装置１００ａが通信パケットの精査処理を実行すると決定した場合に、自装置が通信パケットの精査処理を実行することを示す通知である。ＴＣＰコネクション検査済通知には、処理する装置のＩＰアドレスとして侵入検知装置１００ａのＩＰアドレスを設定し、端末３００ａからサーバ２００ａにＴＣＰでＨＴＴＰアクセスし確立したときのＴＣＰのコネクション（ＴＣＰ送信元ポート番号は３００００、ＴＣＰ宛先ポート番号は８０）情報を通知し、シグネチャを用いた検査を侵入検知装置１００ａで行うことを侵入検知装置１００ｂ宛へ通知する。
【００５３】
（Ｓ３０７）
端末３００ａからのＴＣＰ・ＡＣＫパケットが侵入検知装置１００ａとルータ５００ｂを通過して侵入検知装置１００ｂに中継される。侵入検知装置１００ｂのパケット送受信部１０１ｂよりパケットを受信し、パケット検査済チェック部１０３ｂでＴＣＰのコネクションの状態を検査する（Ｓ３０７）。
【００５４】
（Ｓ３０８）
通信状態管理部１０４ｂは
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）受信物理ポート番号と
から通信状態管理テーブル記憶部１０４ｂ−１の通信状態管理テーブル（このとき図１１の＃２の状態である）に既に登録されたエントリを検索し、処理する装置は自装置であることを認識する（Ｓ３０８）。通信状態管理部１０４ｂは、検知エンジン部１０５ｂにパケットを送り検査を依頼する。
【００５５】
（Ｓ３０９）
検知エンジン部１０５ｂでは、シグネチャＤＢ部１０６ｂからパケットの条件が一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ３１０）。
【００５６】
（Ｓ３１０）
パケットの検査の結果「異常無し」の場合には、受信した側と逆のパケット送受信部１０２ｂからパケットを送信する（Ｓ３１０）。
【００５７】
（Ｓ３１１）
侵入検知装置１００ｂは、ＴＣＰ・ＡＣＫパケットの処理が終了すると、ネットワーク構成情報記憶部１０４ｂ−２が記憶する図６に示すネットワーク構成情報をアクセスし、サーバ２００ａへのＴＣＰコネクション確立では、中継経路上に侵入検知装置が存在しないことを認識する（Ｓ３１１）。従って、侵入検知装置１００ｂはＴＣＰコネクション検査済通知を送信しない。
【００５８】
（Ｓ３１２）
サーバ２００ａは、ＴＣＰ・ＡＣＫパケットを受信しＴＣＰのコネクションを確立する（Ｓ３１２）。
【００５９】
（Ｓ３１３）
侵入検知装置１００ｂは、ＴＣＰ・ＡＣＫパケットの処理を終了した後、侵入検知装置１００ａが送信（Ｓ３１３）した「ＴＣＰコネクション検査済通知」を受信する。
【００６０】
（Ｓ３１４）
侵入検知装置１００ｂのパケット送受信部１０１ｂが「ＴＣＰコネクション検査済通知」（他装置実施通知の一例）を受信し、通信状態管理部１０４ｂは、学習している通信状態管理テーブル（図１１の＃２の状態である）において、端末３００ａからサーバ２００ａにＴＣＰでＨＴＴＰアクセスし確立したときのＴＣＰのコネクション（ＴＣＰ送信元ポート番号は３００００、ＴＣＰ宛先ポート番号は８０）のエントリの処理する装置の部分を、侵入検知装置１００ａに書き換える（Ｓ３１４）。書き換えた後に通信状態管理テーブル記憶部１０４ｂ−１が保持している「通信状態管理テーブル」は、図１０に示す「通信状態管理テーブル＃１」の状態である。図１６は、ＴＣＰコネクション検査済通知のシーケンスを示す。
【００６１】
（アプリケーションＨＴＴＰパケットの通信）
図１７を用いて、確立したＴＣＰコネクションを用いてアプリケーションＨＴＴＰパケットが通信される場合を説明する。端末３００ａからサーバ２００ａへのアプリケーションＨＴＴＰパケットは、確立したＴＣＰコネクションを用いて通信される。なお、図１７において、「Ｓ４０２〜Ｓ４０４」と「Ｓ４０９〜Ｓ４１１」との動作とは同様であり、「Ｓ４０５、Ｓ４０６」と「Ｓ４０７、Ｓ４０８」との動作は同様である。
【００６２】
（Ｓ４０１）
端末３００ａからサーバ２００ａ宛のＴＣＰ・ＨＴＴＰパケット（アプリケーションＨＴＴＰパケット）がルータ５００ａを通して侵入検知装置１００ａに中継される（Ｓ４０１）。
【００６３】
（Ｓ４０２）
侵入検知装置１００ａのパケット送受信部１０１ａよりパケットを受信し、パケット検査済チェック部１０３ａでＴＣＰのコネクションの状態を検査する（Ｓ４０２）。
【００６４】
（Ｓ４０３）
通信状態管理部１０４ａは、
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）受信物理ポート番号と
から通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」（このとき図１０の＃１の状態である）に既に登録されたエントリを検索し、処理する装置は自装置であることを認識する（Ｓ４０３）。よって、通信状態管理部１０４ａは、検知エンジン部１０５ａにパケットを送り検査を依頼する。
【００６５】
（Ｓ４０４）
検知エンジン部１０５ａでは、シグネチャＤＢ部１０６ａからパケットの条件に一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ４０４）。パケットの検査の結果「異常無し」の場合には、受信した側と逆のパケット送受信部１０２ａからパケットを送信する。
【００６６】
（Ｓ４０５）
端末３００ａからのアプリケーションＨＴＴＰパケットが侵入検知装置１００ａとルータ５００ｂを通過して侵入検知装置１００ｂに中継される。侵入検知装置１００ｂのパケット送受信部１０１ｂよりパケットを受信し、パケット検査済チェック部１０３ｂでＴＣＰのコネクションの状態を検査する（Ｓ４０５）。
【００６７】
（Ｓ４０６）
通信状態管理部１０４ｂは、
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）受信物理ポート番号と
から、通信状態管理テーブル記憶部１０４ｂ−１の通信状態管理テーブル（このとき図１０の＃１の状態である）に既に登録されたエントリを検索し、処理する装置は侵入検知装置１００ａであることを認識し、パケットの検査を実施せず受信した側と逆のパケット送受信部１０２ｂからパケットを送信する（Ｓ４０６）。
【００６８】
（Ｓ４０７）
サーバ２００ａから端末３００ａ宛のＴＣＰ・アプリケーションＨＴＴＰパケットは、侵入検知装置１００ｂのパケット送受信部１０２ｂより受信される。パケット検査済チェック部１０３ｂがＴＣＰ・アプリケーションＨＴＴＰパケットをもとにＴＣＰのコネクションの状態を検査する（Ｓ４０７）。
【００６９】
（Ｓ４０８）
通信状態管理部１０４ｂは、
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）受信物理ポート番号と
から、通信状態管理テーブル記憶部１０４ｂ−１の「通信状態管理テーブル」（このとき図１０の＃１の状態である）に既に登録されたエントリを検索し、処理する装置は侵入検知装置１００ａであることを認識し、パケットの検査を実施せず受信した側と逆のパケット送受信部１０１ｂからパケットを送信する（Ｓ４０８）。
【００７０】
サーバ２００ａから端末３００ａ宛のＴＣＰ・アプリケーションＨＴＴＰパケットは、侵入検知装置１００ｂとルータ５００ｂを通過し侵入検知装置１００ａに中継される。
【００７１】
（Ｓ４０９）
侵入検知装置１００ａのパケット送受信部１０２ａよりパケットを受信し、パケット検査済チェック部１０３ａでＴＣＰのコネクションの状態を検査する（Ｓ４０９）。
【００７２】
（Ｓ４１０）
通信状態管理部１０４ａは、
（１）パケットの送信元ＩＰアドレスと
（２）宛先ＩＰアドレスと
（３）プロトコル番号と
（４）送信元ポート番号と
（５）宛先ポート番号と
（６）受信物理ポート番号と
から、通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」（このとき図１０の＃１の状態である）に既に登録されたエントリを検索し（Ｓ４１０）、処理する装置は自装置であることを認識する。よって通信状態管理部１０４ａは、検知エンジン部１０５ａにパケットを送り検査を依頼する。
【００７３】
（Ｓ４１１）
検知エンジン部１０５ａでは、シグネチャＤＢ部１０６ａからパケットの条件に一致するシグネチャを取り出し、パケットの検査を実施する（Ｓ４１１）。パケットの検査の結果「異常無し」の場合には、受信した側と逆のパケット送受信部１０１ａからパケットを送信する。「異常有り」の場合にはパケットを廃棄する。
【００７４】
（コネクションの解放）
端末３００ａからサーバ２００ａにＴＣＰでＨＴＴＰアクセスし確立したときのＴＣＰのコネクション（ＴＣＰ送信元ポート番号は３００００、ＴＣＰ宛先ポート番号は８０）を開放するときは、侵入検知装置１００ａと侵入検知装置１００ｂのそれぞれの通信状態管理部１０４ａ，１０４ｂは、それぞれの通信状態管理テーブルに登録していたエントリ情報を削除する。
【００７５】
端末３００ａからサーバ２００ａにＴＣＰでＨＴＴＰアクセスし確立したときのＴＣＰのコネクション（ＴＣＰ送信元ポート番号は３００００、ＴＣＰ宛先ポート番号は８０）を用いた全てのアプリケーションデータは、コネクションを確立後は全て、侵入検知装置１００ａでのみパケットの検査を実施し、侵入検知装置１００ｂではパケットの検査を実施しない。
【００７６】
（端末３００ｂとサーバ２００ａとのコネクションの確立）
次に、端末３００ａとサーバ２００ａとの間でＴＣＰでＨＴＴＰアクセス中に、端末３００ｂからサーバ２００ａにＴＣＰでＨＴＴＰアクセスを開始したとする。これは図４における破線の経路が加わる場合である。ＴＣＰのＳＹＮパケット、ＳＹＮ−ＡＣＫパケット、ＡＣＫパケットによりＴＣＰのコネクションを確立する。その時の端末３００ｂのＴＣＰ送信元ポート番号は２００００、ＴＣＰ宛先ポート番号は８０とすると、端末３００ｂとサーバ２００ａ間にＴＣＰポート番号２００００とポート番号８０でＴＣＰコネクションを確立した場合について説明する。
【００７７】
端末３００ｂとサーバ２００ａとの間で、ＴＣＰのＳＹＮパケット、ＳＹＮ−ＡＣＫパケット、ＡＣＫパケットを送信する場合の動作については、端末３００ａとサーバ２００ａとの間の場合と同様である。
【００７８】
但し、侵入検知装置１００ａ内の通信状態管理部１０４ａの通信状態管理テーブル記憶部１０４ａ−１は、図１２に示す「通信状態管理テーブル＃３」の状態の通信状態管理テーブルを維持している。また、侵入検知装置１００ｂの通信状態管理部１０４ｂの通信状態管理テーブル記憶部１０４ｂ−１は、図１３に示す「通信状態管理テーブル＃４」の状態の通信状態管理テーブルを維持している。
【００７９】
侵入検知装置１００ａ内の通信状態管理部１０４ａは、ＴＣＰ・ＡＣＫパケットの処理が終了すると、図５に示すネットワーク構成情報をアクセスし、サーバ２００ａへのＴＣＰコネクション確立では、中継経路上に侵入検知装置１００ｂが存在することを認識する。しかし、侵入検知装置１００ａは、ＴＣＰコネクション検査済通知を侵入検知装置１００ｂ宛てへ送信しない。端末３００ａとサーバ２００ａとの間の通信では、ＴＣＰ（ポート番号３００００−８０）上のＨＴＴＰアクセスでは、侵入検知装置１００ａがパケットの検査処理を実施したので、端末３００ｂとサーバ２００ａとの間の通信では、ＴＣＰ（ポート番号２００００−８０）上のＨＴＴＰアクセスでは、侵入検知装置１００ｂが検査処理を実施し、侵入検知装置１００ａがパケットの検査処理を実施しない。従って、侵入検知装置１００ａ内の通信状態管理部１０４ａは、図１２に示す「通信状態管理テーブル＃３」の状態から図１３に示す「通信状態管理テーブル＃４」の状態へ、通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」を変更しする。つまり通信状態管理部１０４ａは、端末３００ｂとサーバ２００ａとの間の通信でＴＣＰ（ポート番号２００００−８０）上のＨＴＴＰコネクション部分の処理する装置を、侵入検知装置１００ａから侵入検知装置１００ｂへと変更する。
【００８０】
侵入検知装置１００ｂは、ＴＣＰ・ＡＣＫパケットの処理が終了してもＴＣＰコネクション検査済通知を受信しないので、通信状態管理部１０４ｂが保持している図１３に示す「通信状態管理テーブル＃４」に従って、侵入検知装置１００ｂが端末３００ｂとサーバ２００ａとの間の通信でＴＣＰ（ポート番号２００００−８０）上のＨＴＴＰアクセスのパケットを検査処理する。
【００８１】
侵入検知装置１００ａ内の通信状態管理部１０４ａは、サーバ２００ａ宛のＴＣＰコネクションが確立するに従って、交互に（二回に一回の割合で）パケットの検査処理を実施する装置を自装置と決定する。自装置である侵入検知装置１００ａがパケットの検査処理を実施する場合は、侵入検知装置１００ａは、ＴＣＰコネクション検査済通知を侵入検知装置１００ｂ宛てへ送信し、侵入検知装置１００ａが該当するＴＣＰコネクションのパケットの検査処理を実施することを侵入検知装置１００ｂへ通知する。侵入検知装置１００ｂは、通知のあったＴＣＰコネクションのパケットの検査処理を実施しない。
【００８２】
自装置である侵入検知装置１００ａがパケットの検査処理を実施しない場合は、侵入検知装置１００ａは、ＴＣＰコネクション検査済通知を侵入検知装置１００ｂ宛てへ送信しない。
【００８３】
（端末３００ａとサーバ２００ｂとのコネクションの確立）
次に、端末３００ａからサーバ２００ａへＴＣＰでＨＴＴＰアクセス中であり、かつ、端末３００ｂからサーバ２００ａへＴＣＰでＨＴＴＰアクセス中に、端末３００ａからサーバ２００ｂ宛にＴＣＰでＨＴＴＰアクセスしＴＣＰのコネクション（ＴＣＰ送信元ポート番号は３０００１、ＴＣＰ宛先ポート番号は８０）を確立し、パケット通信した時の動作を説明する。図４において点線の経路が加わる場合である。
【００８４】
端末３００ａからサーバ２００ｂ宛のＴＣＰのＳＹＮパケット、ＳＹＮ−ＡＣＫパケット、ＡＣＫパケットを侵入検知装置１００ａが処理する手順は、端末３００ａからサーバ２００ａ宛のＴＣＰのＳＹＮパケット、ＳＹＮ−ＡＣＫパケット、ＡＣＫパケットを処理する手順と同じである。
【００８５】
但し、侵入検知装置１００ａの通信状態管理部１０４ａは、ＴＣＰ・ＡＣＫパケットの処理が終了すると、図５に示すネットワーク構成情報をアクセスし、サーバ２００ｂへのＴＣＰコネクション確立では、中継経路上に侵入検知装置が存在しないことを認識し、ＴＣＰコネクション検査済通知をどの侵入検知装置にも通知しない。その結果、侵入検知装置１００ａ内の通信状態管理部１０４ａは、図１４に示す「通信状態管理テーブル＃５」を学習し、通信状態管理テーブル記憶部１０４ａ−１の「通信状態管理テーブル」を図１４の「通信状態管理テーブル＃５」の状態とし、端末３００ａからサーバ２００ｂ宛にＴＣＰでＨＴＴＰアクセスしＴＣＰのコネクションを確立したコネクション上のパケットを侵入検知装置１００ａで検査処理を実施する。
【００８６】
上記実施の形態１では、サーバ２００ａ宛のＴＣＰコネクションを確立するごとにパケットの検査処理をする侵入検知装置を交互に侵入検知装置１００ａと侵入検知装置１００ｂとのどちらかに決定していたが、通常は侵入検知装置１００ａでパケットの検査処理を実施し、１０００とか２０００とかの同時に処理できるＴＣＰコネクション数を予め決めて装置に設定しておいて、同時に処理できるＴＣＰコネクション数の処理能力を超えた場合に侵入検知装置１００ｂでパケットの検査処理を実施するようにしても良い。すなわち、図３に示す処理能力データ記憶部１０４ａ−３が検知エンジン部１０５ａの処理能力を示す処理能力データを記憶しておく。そして、通信状態管理部１０４ａは、処理能力データ記憶部１０４ａ−３が記憶する処理能力データに基づいて、通信パケットの精査処理を実行するかどうかを決定する。この場合は、処理能力データ記憶部１０４ａ−３は、処理能力データとして、１０００とか２０００とかの同時に処理できるＴＣＰコネクション数（通信論理コネクション数）を記憶している。
【００８７】
上記の実施の形態１では、サーバ２００ａ宛のＴＣＰコネクションを確立するごとにパケットの検査処理する侵入検知装置を交互に侵入検知装置１００ａと侵入検知装置１００ｂどちらかに決定していたが、通常は侵入検知装置１００ａでパケットの検査処理を実施し、単位時間あたりの処理済みの通信パケット数を予め決めて装置に設定しておいて、単位時間あたりの処理済みの通信パケット数の処理能力を超えた場合に侵入検知装置１００ｂでパケットの検査処理を実施するようにしても良い。
すなわち、図３に示す処理能力データ記憶部１０４ａ−３が検知エンジン部１０５ａの処理能力を示す処理能力データを記憶しておく。そして、通信状態管理部１０４ａは、処理能力データ記憶部１０４ａ−３が記憶する処理能力データに基づいて、通信パケットの精査処理を実行するかどうかを決定する。この場合は、処理能力データ記憶部１０４ａ−３は、処理能力データとして、検知エンジン部１０５ａが処理可能な単位時間あたりの通信パケット数を記憶している。
【００８８】
上記の実施の形態１では、サーバ２００ａ宛のＴＣＰコネクションを確立するごとにパケットの検査処理する侵入検知装置を交互に侵入検知装置１００ａと侵入検知装置１００ｂどちらかに決定していたが、通常は侵入検知装置１００ａでパケットの検査処理を実施し、単位時間あたりの処理済みの通信パケットの転送バイトの総計バイト数を予め決めて装置に設定しておいて、単位時間あたりの処理済みの通信パケットの転送バイトの総計バイト数の処理能力を超えた場合に侵入検知装置１００ｂでパケットの検査処理を実施するようにしても良い。すなわち、図３に示す処理能力データ記憶部１０４ａ−３が検知エンジン部１０５ａの処理能力を示す処理能力データを記憶しておく。そして、通信状態管理部１０４ａは、処理能力データ記憶部１０４ａ−３が記憶する処理能力データに基づいて、通信パケットの精査処理を実行するかどうかを決定する。この場合は、処理能力データ記憶部１０４ａ−３は、処理能力データとして、処理可能な単位時間あたりの通信パケットの転送バイトの総計バイト数を記憶している。
【００８９】
上記実施の形態１では、端末３００ａとサーバ２００ａ間のパケット中継経路上に侵入検知装置が２台ある場合について説明したが、パケット中継経路上に３台以上のＮ台の侵入検知装置があった場合は、端末３００ａに近い侵入検知装置が１／ＮのＴＣＰコネクションのパケットの検査処理を実施し、端末３００ａに近い侵入検知装置＃１は残りの（Ｎ−１）台にＴＣＰコネクション検査済通知を送信し、該当するＴＣＰコネクションは侵入検知装置＃１がパケットの検査処理を実施するように通知する。次の侵入検知装置＃２は、パケットの検査未実施の内の１／（Ｎ−１）を実施するようにして、残りの（Ｎ−２）台にＴＣＰコネクション検査済通知を送信し、該当するＴＣＰコネクションは侵入検知装置＃２がパケットの検査処理を実施するように通知する。次の侵入検知装置は、パケットの検査未実施の内の１／（Ｎ−２）を実施するように繰り返し、Ｎ台の侵入検知装置が各装置それぞれＴＣＰコネクションのパケットの検査処理を１／Ｎだけ実施するようにしても良い。
【００９０】
あるいは、パケット中継経路上に３台以上のＮ台の侵入検知装置があった場合は、端末３００ａに近い侵入検知装置がパケットの検査処理を実施し１０００とか２０００とかのＴＣＰコネクション数の予め決められた処理能力を超えた場合に、中継経路上の次の侵入検知装置がＴＣＰコネクション数の予め決められた処理能力までパケットの検査を実施し、繰り返して、処理能力を超えるごとに次の侵入検知装置で実施するように繰り返しても良い。
【００９１】
実施の形態１の侵入検知装置１００ａは、通信状態管理部１０４ａが、通信論理コネクションが確立するごとに、その通信論理コネクションに従って通信される通信パケットの精査処理を自装置で実行するかどうかを判断する。すなわち、通信状態管理部１０４ａが、通信論理コネクションが確立するごとに、その通信論理コネクションに従って通信される通信パケットの精査処理を自装置で実行するかどうかを判断し、判断結果に対応した通信状態管理テーブルを維持する。よって、特定のプロトコルのパケットが一つのパケット精査装置に集中することをなくすことができる。
【００９２】
実施の形態１の侵入検知装置１００ａは、通信状態管理部１０４ａが、自装置が通信パケットの精査処理を実行すると決定した場合に、パケット検査済通知を他のパケット精査装置に送信するので、特定のプロトコルのパケットが一つのパケット精査装置に集中することをなくすことができる。
【００９３】
実施の形態１の侵入検知装置１００ｂは、通信状態管理部１０４ｂが、他の侵入検知装置１００ａからパケット検査済通知を受信した場合、その通信論理コネクションにおける通信パケットの精査処理を実行しないので、精査処理が一つの侵入検査装置に集中することをなくすことができる。
【００９４】
実施の形態１の侵入検知装置１００ａは、通信状態管理部１０４ａが、通信論理コネクションの確立を検知すると、ネットワーク構成情報記憶部１０４ａ−２が記憶するネットワーク構成情報を参照することにより、確立を検知した通信論理コネクションにおける自装置から確立を検知した通信論理コネクションに従って通信される通信パケットの宛先の装置までの経路に他のパケット精査装置が存在するかどうかを確認し、他のパケット精査装置がＮ台（Ｎは１以上のいずれかの整数）存在すると確認した場合には、以降、自装置から前記宛先の装置への前記経路を含む通信論理コネクションについては通信論理コネクションの確立Ｎ回につき１回の割合で通信パケットの精査処理を実行すると決定するので、精査処理が一つの侵入検査装置に集中することをなくすことができる。
【００９５】
実施の形態１の侵入検知装置１００ａは、通信状態管理部１０４ａが、処理能力データ記憶部１０４ａ−３が記憶する処理能力データに基づいて、通信パケットの精査処理を実行するかどうかを決定するので、精査処理が一つの侵入検査装置に集中することをなくすことができる。
【００９６】
以上の実施の形態では、以下の手段を備えた侵入検知装置を説明した。
（ａ）装置外部から通信パケットを送信かつ受信するパケット送受信部；
（ｂ）上記パケット送受信部で受信した通信パケットを通信論理コネクションに応じてパケット精査処理を実施するかしないかどちらかを決定するパケット検査済みチェック部；
（ｃ）管理装置から送られるシグネチャを、上記パケット送受信部と上記パケット検査済みチェック部を通して受信する管理通信部；
（ｄ）上記管理通信部の指示により管理装置から送られたシグネチャを保存するシグネチャＤＢ部；
（ｅ）上記パケット検査済みチェック部の内部に位置し、通信論理コネクションの状態を保持し、アプリケーションの宛先サーバへの中継経路上の他の侵入検知装置を含むネットワーク構成情報を保持し、上記管理通信部宛て以外のパケットを通信パケット送受信部から受け取り、保持しているネットワーク構成情報の宛先サーバへの中継経路上のＮ台の侵入検知装置の情報に従って、通信論理コネクションの確立Ｎ回に一回だけ通信論理コネクション上を通信している全ての通信パケットのパケット精査処理を自装置で実施するか他の装置で実施するか否かの情報を通信論理コネクションの状態と組みを成して記録し、自装置で通信論理コネクション上の通信パケットのパケット精査処理を実施する場合は中継経路上の他の侵入検知装置へ自装置が該当する通信論理コネクション上の通信パケットのパケット精査処理を実施することを通知し、逆に他の侵入検知装置から該当する通信論理コネクション上の通信パケットのパケット精査処理の実施通知を受信した場合は保持している通信論理コネクションの状態と組みを成して他の侵入検知装置が処理する旨を記録し、通信パケットのパケット精査処理に先立って通信論理コネクションごとに自装置でパケット精査処理するか中継経路上の他の装置でパケット精査処理するかを決定する通信状態管理部；
（ｆ）上記シグネチャＤＢ部に登録されているシグネチャを用いてパケット精査処理を実施し、検査が「異常無し」である場合には受信した側ではないパケット送受信部にパケットを送信し、検査が「異常検知」の場合にはパケットを廃棄する検知エンジン部；
【００９７】
以上の実施の形態では、通信状態管理部において、通信論理コネクションの確立Ｎ回に一回だけ通信論理コネクション上を通信している全ての通信パケットのパケット精査処理を自装置で実施するか他の装置で実施するのではなくて、予め決められた通信論理コネクションの数を超えない場合は通信論理コネクション上を通信している全ての通信パケットのパケット精査処理を自装置で実施し、予め決められた通信論理コネクションの数を超えた場合は他の装置で通信パケットのパケット精査処理を実施する侵入検知装置を説明した。
【００９８】
以上の実施の形態では、通信状態管理部において、通信論理コネクションの確立Ｎ回に一回だけ通信論理コネクション上を通信している全ての通信パケットのパケット精査処理を自装置で実施するか他の装置で実施するのではなくて、予め決められ単位時間あたりの処理済みの通信パケット数を超えない場合は通信論理コネクション上を通信している全ての通信パケットのパケット精査処理を自装置で実施し、予め決められた単位時間あたりの処理済みの通信パケット数を超えた場合は他の装置で通信パケットのパケット精査処理を実施する侵入検知装置を説明した。
【００９９】
以上の実施の形態では、通信状態管理部において、通信論理コネクションの確立Ｎ回に一回だけ通信論理コネクション上を通信している全ての通信パケットのパケット精査処理を自装置で実施するか他の装置で実施するのではなくて、予め決められ単位時間あたりの処理済みの通信パケットの転送バイトの総計バイト数を超えない場合は通信論理コネクション上を通信している全ての通信パケットのパケット精査処理を自装置で実施し、予め決められた単位時間あたりの処理済みの通信パケットの転送バイトの総計バイト数を超えた場合は他の装置で通信パケットのパケット精査処理を実施する侵入検知装置を説明した。
【図面の簡単な説明】
【０１００】
【図１】実施の形態１における侵入検知装置１００ａの外観を示す図。
【図２】実施の形態１における侵入検知装置１００ａのハードウェア構成を示す図。
【図３】実施の形態１における侵入検知装置１００ａの構成ブロック図。
【図４】実施の形態１におけるシステム構成図。
【図５】実施の形態１における侵入検知装置１００ａの有するネットワーク構成情報。
【図６】実施の形態１における侵入検知装置１００ｂの有するネットワーク構成情報。
【図７】実施の形態１における端末３００ａとサーバ２００ａとのシーケンス図。
【図８】実施の形態１におけるＳＹＮパケット、ＳＹＮ−ＡＣＫパケットのやりとりのシーケンス図。
【図９】実施の形態１におけるＡＣＫパケットのやりとりのシーケンス図。
【図１０】実施の形態１における通信状態管理テーブル＃１を示す図。
【図１１】実施の形態１における通信状態管理テーブル＃２を示す図。
【図１２】実施の形態１における通信状態管理テーブル＃３を示す図。
【図１３】実施の形態１における通信状態管理テーブル＃４を示す図。
【図１４】実施の形態１における通信状態管理テーブル＃５を示す図。
【図１５】実施の形態１におけるコネクション検査済通知を示す図。
【図１６】実施の形態１における端末３００ａとサーバ２００ａとのシーケンス図。
【図１７】実施の形態１におけるアプリケーションパケットのやりとりのシーケンス図。
【符号の説明】
【０１０１】
１ａ，２ａ  物理ポート、１００ａ，１００ｂ  侵入検知装置、１０１ａ，１０２ａ，１０１ｂ，１０２ｂ  パケット送受信部、１０３ａ，１０３ｂ  パケット検査済チェック部、１０４ａ，１０４ｂ  通信状態管理部、１０４ａ−１，１０４ｂ−１  通信状態管理テーブル記憶部、１０４ａ−２，１０４ｂ−２  ネットワーク構成情報記憶部、１０４ａ−３，１０４ｂ−３  処理能力データ記憶部、１０５ａ，１０５ｂ  検知エンジン部、１０６ａ，１０６ｂ  シグネチャＤＢ部、１０７ａ，１０７ｂ  管理通信部、２００ａ，２００ｂ  サーバ、３００ａ，３００ｂ  端末、４００  管理装置、５００ａ，５００ｂ  ルータ、８１０  ＣＰＵ、８１１  ＲＯＭ、８１２  ＲＡＭ、８１３  表示装置、８１４  Ｋ／Ｂ、８１５  マウス、８１６  通信ボード、８１７  ＦＤＤ、８１８  ＣＤＤ、８１９  プリンタ装置、８２０  磁気ディスク装置、８２１  ＯＳ、８２２  ウィンドウシステム、８２３  プログラム群、８２４  ファイル群、８２５  バス、８３０  システムユニット。
【図１】
2007323384.tif 000003
【図２】
2007323384.tif 000004
【図３】
2007323384.tif 000005
【図４】
2007323384.tif 000006
【図５】
2007323384.tif 000007
【図６】
2007323384.tif 000008
【図７】
2007323384.tif 000009
【図８】
2007323384.tif 000010
【図９】
2007323384.tif 000011
【図１０】
2007323384.tif 000012
【図１１】
2007323384.tif 000013
【図１２】
2007323384.tif 000014
【図１３】
2007323384.tif 000015
【図１４】
2007323384.tif 000016
【図１５】
2007323384.tif 000017
【図１６】
2007323384.tif 000018
【図１７】
2007323384.tif 000019