(57)【特許請求の範囲】
【請求項１】
通信ネットワークを介して受信したパケットの転送を行うパケット転送装置であって、
複数のネットワークインターフェースと、
少なくとも、予め定めた攻撃対象となる装置を識別するデータである検索パターンと予め定めた有害パケット除去装置を識別するイーサネットアドレスとを格納する格納手段と、
一のネットワークインターフェースから受信したパケット内の宛先を示す所定のデータが前記検索パターンに合致するかどうかを判定する判定手段と、
前記判定手段による判定結果と前記パケットを受信したネットワークインターフェースとに基づき、前記パケットを出力するためのネットワークインターフェースを決定する出力インターフェース決定手段と、
前記パケットを前記有害パケット除去装置に接続されるネットワークインターフェースから出力する場合に、当該パケットの送信先の装置を識別するイーサネットアドレスを、前記有害パケット除去装置を識別するイーサネットアドレスに置き換えるアドレス置換手段と、
前記パケットを、前記出力インターフェース決定手段により決定されたネットワークインターフェースに送出するパケット送出手段と
を備えたことを特徴とするパケット転送装置。
【請求項２】
前記判定手段により、前記パケット内の宛先を示す所定のデータが前記検索パターンに合致しないと判定された場合に、前記出力インターフェース決定手段は、前記パケットを受信したネットワークインターフェースに対応するものとして予め定めたネットワークインターフェースから当該パケットを出力することを決定する請求項１に記載のパケット転送装置。
【請求項３】
複数のネットワークインターフェースと、少なくとも予め定めた攻撃対象となる装置を識別するデータである検索パターンと予め定めた有害パケット除去装置を識別するイーサネットアドレスとを格納する格納手段を備えたパケット転送装置が、通信ネットワークを介して受信したパケットの転送を行うためのパケット転送方法であって、
一のネットワークインターフェースから受信したパケット内の宛先を示す所定のデータが前記検索パターンに合致するかどうかを判定する判定ステップと、
前記判定ステップによる判定結果と前記パケットを受信したネットワークインターフェースとに基づき、前記パケットを出力するためのネットワークインターフェースを決定する出力インターフェース決定ステップと、
前記パケットを前記有害パケット除去装置に接続されるネットワークインターフェースから出力する場合に、当該パケットの送信先の装置を識別するイーサネットアドレスを、前記有害パケット除去装置を識別するイーサネットアドレスに置き換えるアドレス置換ステップと、
前記パケットを、前記出力インターフェース決定ステップで決定されたネットワークインターフェースに送出するパケット送出ステップと
を備えたことを特徴とするパケット転送方法。
【請求項４】
複数のネットワークインターフェースと、少なくとも予め定めた攻撃対象となる装置を識別するデータである検索パターンと予め定めた有害パケット除去装置を識別するイーサネットアドレスとを格納する格納手段を備えたパケット転送装置に、通信ネットワークを介して受信したパケットの転送を行うための処理を実行させるためのプログラムであって、前記パケット転送装置を、
一のネットワークインターフェースから受信したパケット内の宛先を示す所定のデータが前記検索パターンに合致するかどうかを判定する判定手段、
前記判定手段による判定結果と前記パケットを受信したネットワークインターフェースとに基づき、前記パケットを出力するためのネットワークインターフェースを決定する出力インターフェース決定手段、
前記パケットを前記有害パケット除去装置に接続されるネットワークインターフェースから出力する場合に、当該パケットの送信先の装置を識別するイーサネットアドレスを、前記有害パケット除去装置を識別するイーサネットアドレスに置き換えるアドレス置換手段、
前記パケットを、前記出力インターフェース決定手段で決定されたネットワークインターフェースに送出するパケット送出手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークを介して受信したパケットを他の装置に転送するパケット転送装置に関するものである。
【背景技術】
【０００２】
複数のネットワークに分散するコンピュータが一斉に特定のサーバへパケットを送出し、通信路をあふれさせて機能を停止させてしまう攻撃等の妨害アクセスが増加しているが、そのような妨害アクセスを防止する技術の１つとして有害パケット除去装置がある。この有害パケット除去装置は、例えば、特定のサーバを宛先とするパケットを受信し、そのパケットが攻撃用の有害パケットかどうかを判定し、有害パケットでないパケットのみを送出する機能を備えるものである。
【０００３】
例えば、サービス提供者が、図１に示すネットワーク構成によりISP（インターネットサービスプロバイダ）等のカスタマに対してネットワークアクセスサービスを提供しており、カスタマのネットワーク内のサーバ等のネットワーク装置に対して、サービス提供者のネットワークを経由して有害なトラフィックが配信される場合に、サービス提供者側に上記有害パケット除去装置を備えることにより、サービス提供者側で有害パケットを除去することが可能である。
【０００４】
なお、有害パケット除去に関連する従来技術の例として、特定のビットパターンと一致する攻撃フローに対して、当該攻撃フローの特定および制御を行う特許文献１に記載された技術がある。
【特許文献１】特開２００６−０６７０７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
図１に示す従来技術において、有害パケット除去装置を用いる方法として次の２つの方法がある。
【０００６】
第１の方法は、図２に示すように、カスタマへの接続線に有害パケット除去装置を挿入する方法である。しかし、この方法では、カスタマ毎に有害パケット除去装置を導入する必要があり、サービスが高価なものになってしまうという問題がある。
【０００７】
第２の方法は図３に示すとおりのものである。図３に示すように、サービス提供者のネットワーク内は複数のルータで構成されており、その中の任意の場所に有害パケット除去装置を設置する。この第２の方法では、攻撃対象となったカスタマのネットワーク装置向けのパケットを有害パケット除去装置に誘導するために、サービス提供者のネットワーク内の経路情報を書き換える。ここで、有害パケット除去装置を通過後のパケットはそのままネットワーク内にもどすと、経路上のルータが有害パケット除去装置にそのパケットを送り返してしまい本来の目的地に到達しないので、有害パケット除去装置からカスタマのネットワークへトンネルを構成し、有害パケット除去済みのパケットをそのトンネルへ送るようにしている。
【０００８】
この第２の方法は、第１の方法に比べて有害パケット除去装置を複数のカスタマ間で共有できる利点がある。
【０００９】
しかしながら、カスタマのネットワークへのトンネルの導入が必要となるため、カスタマのネットワーク側にトンネルを終端する機能が必要になるという問題がある。トンネルの終端を追加のハードウェア無しで行う場合、既存のルータでソフトウェア処理することになるが、これはルータのパフォーマンスを著しく低下させる場合がある。従って、トンネルの終端をルータのパフォーマンス低下を引き起こさずに行うためには追加のハードウェアの導入が必要となる。
【００１０】
また、トンネルの終端をソフトウェアで行う場合も追加のハードウェアで行う場合も、そのオペレーションをサービス提供者が行うには、遠隔地での設置コストおよび継続的なオペレーションコストが発生する。更に、経路情報の変更を伴うので、その作業によるコスト（オペレーションのコスト、作業／設定ミスによる事故の可能性の増大、経路情報の肥大化及び可視性の低下等）が発生してしまう。
【００１１】
本発明は上記の点に鑑みてなされたものであり、経路情報の変更を行うことなく、予め定めた条件に合致するパケットを特定の装置に送信し、当該特定の装置から受信したパケットをネットワークに戻すことを可能とするパケット転送技術を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記の課題は、通信ネットワークを介して受信したパケットの転送を行うパケット転送装置であって、複数のネットワークインターフェースと、少なくとも、予め定めた攻撃対象となる装置を識別するデータである検索パターンと予め定めた有害パケット除去装置を識別するイーサネットアドレスとを格納する格納手段と、一のネットワークインターフェースから受信したパケット内の宛先を示す所定のデータが前記検索パターンに合致するかどうかを判定する判定手段と、前記判定手段による判定結果と前記パケットを受信したネットワークインターフェースとに基づき、前記パケットを出力するためのネットワークインターフェースを決定する出力インターフェース決定手段と、前記パケットを前記有害パケット除去装置に接続されるネットワークインターフェースから出力する場合に、当該パケットの送信先の装置を識別するイーサネットアドレスを、前記有害パケット除去装置を識別するイーサネットアドレスに置き換えるアドレス置換手段と、前記パケットを、前記出力インターフェース決定手段により決定されたネットワークインターフェースに送出するパケット送出手段とを備えたことを特徴とするパケット転送装置により解決できる。
【００１６】
前記判定手段により、前記パケット内の所定のデータが前記検索パターンに合致しないと判定された場合に、前記出力インターフェース決定手段は、前記パケットを受信したネットワークインターフェースに対応するものとして予め定めたネットワークインターフェースから当該パケットを出力することを決定するようにしてもよい。
【００１８】
また、本発明は、上記パケット転送装置の動作に対応するパケット転送方法、及び上記パケット転送装置の処理をコンピュータ等に実行させるプログラムとしても構成できる。
【発明の効果】
【００１９】
本発明によれば、経路情報の変更を行うことなく、予め定めた条件に合致するパケットを特定の装置に送信し、当該特定の装置から受信したパケットをネットワークに戻すことを可能とするパケット転送技術を提供できる。
【発明を実施するための最良の形態】
【００２０】
以下、図面を参照して本発明の実施の形態について説明する。
【００２１】
［第１の実施の形態］
（概要）
まず、第１の実施の形態の概要について説明する。図４に、本実施の形態におけるパケット転送装置１０の一使用例を示す。図４に示すように、本実施の形態におけるパケット転送装置１０は、攻撃対象へ向かうパケットが通過する場所に挿入される。また、有害パケット除去装置３０が本実施の形態におけるパケット転送装置１０に接続される。当該パケット転送装置１０は、自身を通過しようとするパケットのうち、攻撃対象に向かうパケットのみを選択して有害パケット除去装置３０に送り、有害パケット除去装置３０を通過した（無害であることが認定された）パケットを攻撃対象へ向かうトラフィックに戻す機能を備えている。本実施の形態では、経路情報の変更を行うことなく、トンネルも用いることなく、上記機能を実現している。
【００２２】
なお、図４に示すとおり、一般にサービス提供者のネットワークはルータを多段に接続して構成されており、パケット転送装置１０はカスタマを収容するルータの前に挿入されるが、必ずしも直接カスタマ収容ルータと接続される必要は無い。
【００２３】
図５に、パケット転送装置１０の接続構成を示す。なお、以降の説明において、カスタマ収容ルータ、あるいは本パケット転送装置１０の挿入点からみてよりカスタマ収容ルータに近い側のルータを下流ルータと呼び、そこへカスタマ宛のパケットを流す側のルータを上流ルータと呼ぶことにする。
【００２４】
図５に示すように、本実施の形態のパケット転送装置１０は、少なくとも３つのネットワークインターフェース（０〜２）を備えている。図５の例では、インターフェース０が上流ルータ４０に接続され、インターフェース１が下流ルータ５０に接続され、インターフェース２が有害パケット除去装置３０に接続されている。
【００２５】
パケット転送装置１０は、受信したパケット内の任意の場所で任意の長さのパターンマッチングを行う機能、上記パケットを受信した入力インターフェースとパターンマッチングの結果とによって出力インターフェースを決定する機能、及び、スイッチおよびルータ等の従来のネットワーク装置との整合を取るためにパケットのヘッダ内のイーサーネットアドレスを、パケットの送出先のイーサーネットアドレスに置換する置換機能を備えている。なお、ここでは、装置間がイーサーネットで接続されているので、送出先の装置を識別するアドレスとしてイーサーネットアドレスを使用しているが、レイヤ２のパケット転送を行うネットワークの種類に応じたアドレスを用いればよい。
【００２６】
なお、イーサーネットとは、ルータ等のIPネットワーク装置間でパケットをやりとりするために使われる規格であり、パケットは宛先と送り元のイーサーネットアドレスを内部に保持している。この宛先／送り元イーサーネットアドレスはこのパケット内のIPパケット内の宛先IPアドレスとは別である。本明細書では単に宛先アドレスと記述した場合は宛先IPアドレスを指すこととする。
【００２７】
（装置詳細構成）
図６に、パケット転送装置１０の詳細機能構成図を示す。図６に示すとおり、パケット転送装置１０は、インターフェース（１１）、パケット受信部１２、パターンマッチング実行部１３、出力インターフェース決定部１４、イーサーネットアドレス置換部１５、パケット送出部１６、パターン設定部１７、パケットバッファ１８を備えている。また、パケット転送装置１０は、メモリ等の記憶装置を備え、当該記憶装置には検索パターン表１９、イーサネットアドレス表２０等が格納される。更に、設定入力用インターフェース２１を備えている。
【００２８】
インターフェース１１は、外部装置と接続するための機能部であり、図６では便宜上、左端と右端に位置されているが、入力と出力とで一対で物理的には同一の場所に実装されるものである。
【００２９】
パケット受信部１２は、インターフェース１１を介してパケットを受信し、パケット本体と受信に使用された入力インターフェースとをパケットバッファ１８に記録する機能を備えている。パターン設定部１７は、設定入力用インターフェース２１を介した利用者からの入力により、検索パターンとそれに対応する入出力インターフェースの組のリスト、及び各インターフェースに接続された機器のイーサーネットアドレスの表を設定する機能を備えている。例えば、図６の例では、検索パターン表１９に、宛先IPアドレスが192.168.24.3のパケットが入力インタフェース０から入力された場合はそのパケットを出力インタフェース２に出力すること等が記録されている。また、イーサーネットアドレス表２０には、インターフェース０に接続されている装置のイーサーネットアドレスが00:ab:00:11:11:11であること等が記録されている。
【００３０】
パターンマッチング実行部１３は、パターン設定部１７で格納された検索パターンを使用して受信したパケットが当該検索パターンに合致するかどうかをチェックし、合致すればそのパターン番号を記録する機能を備えている。
【００３１】
出力インターフェース決定部１４は、パターンマッチング実行部１３によるチェック結果と受信に使用した入力インターフェースとを用い、検索パターン表における当該検索パターンに対応する入出力インターフェースの組から、出力インターフェースを決定する機能を備えている。
【００３２】
イーサーネットアドレス置換部１５は、出力インターフェースに接続する装置がパケットを正しく受け取るために、パケットの宛先イーサーネットアドレス部を該当装置のイーサーネットアドレスで置換する。つまり、出力インターフェース決定部１４で本来の宛先と異なる宛先にパケットを送ることになった場合、接続機器によってはそのパケットの宛先イーサーネットアドレスが自分と一致しないのでパケットを受け取らない場合があるので、パケットの宛先イーサーネットアドレスを、出力インタフェースに接続されている装置のイーサーネットアドレスに置換する。
【００３３】
パケット送出部１６は、出力インターフェース決定部１４で決定された出力インターフェースにパケットを送出する機能を備えている。
【００３４】
図６に示すパケット転送装置１０は、ハードウェアで実装することが可能である。また、パケット転送装置１０は、ネットワークインターフェースを備えたコンピュータに、各機能部の処理を実行するプログラムを搭載することにより実現することもできる。なお、上記コンピュータは、CPUとメモリを備え、プログラムを実行可能な装置を指し、例えばルータも上記コンピュータに含まれる。
【００３５】
（パケット転送装置の基本動作）
次に、本実施の形態のパケット転送装置１０の基本動作を説明する。当該パケット転送装置１０に目的の動作を行わせるためにはまず設定作業を行う。
【００３６】
設定作業では、サービス管理者は設定入力用インターフェース２１を使用して有害パケット除去装置３０に送るべきパケットの検索パターンと、検索パターンに合致した場合の入出力インターフェースの組を入力する。
【００３７】
本実施の形態では、攻撃対象となるサーバのIPアドレスを検索パターンとし、入出力インターフェースの組は（上流ルータ、有害パケット除去装置）（下流ルータ、上流ルータ）（有害パケット除去装置、下流ルータ）とする。つまり、受信したパケットの宛先IPアドレス部分と検索パターンとのパターンマッチングを行い、両者が合致した場合に、上流ルータ４０から受信したパケットは有害パケット除去装置３０に送信し、下流ルータ５０から受信したパケットは上流ルータ４０に送信し、有害パケット除去装置３０から受信したパケットは下流ルータ５０に送信するものとする。なお、検索パターンはIPアドレスに限られるものではない。例えば、IPアドレス、ポート番号、TCPフラグのうちのいずれか、もしくは、これらの任意の２つ以上の組み合わせを検索パターンとしてもよい。
【００３８】
この情報をパターン設定部１７が受け取り、パターンマッチング実行部１３が参照する検索パターンとして格納する。なお、図６に示したとおり、検索パターンと入出力の組は複数記述することができる。これにより複数の攻撃対象を同時に扱うことが可能となる。
【００３９】
また、検索パターンに合致しない場合のパケットの出力インターフェースを指定するため、デフォルトの入出力インターフェースの組を指定しておく。本実施の形態では、デフォルトの入出力インターフェースの組を、（上流ルータ、下流ルータ）（下流ルータ、上流ルータ）（有害パケット除去装置、上流ルータ）としておく。
【００４０】
続いて、上流ルータ、下流ルータ、有害パケット除去装置のイーサーネットアドレスをイーサーネットアドレス表に入力する。
【００４１】
以下、上記の設定がなされたパケット転送装置１０の動作を説明する。入力インターフェースが３つあり、それぞれについて検索パターンに合致するかどうかの２通りの場合があるので、実際に発生するかどうかは別として、動作としては６つの場合で網羅される。以下、それぞれの場合について図７を参照して説明する。
【００４２】
（動作１）パケットが上流ルータから入って検索パターンに合致しない場合
パケット受信部１２は上流ルータ４０に接続される入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納する。続いて、パターンマッチング実行部１３が、当該パケットが検索パターンに合致するかどうかをチェックし、その結果（この場合は合致しない）を記録する。
【００４３】
出力インターフェース決定部１４はパターンマッチング結果と入力インターフェース情報とから出力インターフェースを決定する。この場合は検索パターンに合致しないので、デフォルトの入出力インターフェースの組（上流ルータ、下流ルータ）に従って、下流ルータ５０にパケットを出力することに決定する。
【００４４】
イーサーネットアドレス置換部１５は出力インターフェースにあわせてパケット内の宛先イーサーネットアドレスを置換するが、この場合は上流ルータ４０は下流ルータ５０宛にパケットを送出しており、パケット転送装置１０の出力先と同じなので、パケットは変化しない。そして、パケット送出部１６は下流ルータ５０が接続された出力インターフェースにパケットを送出する。
【００４５】
（動作２）パケットが上流ルータから入って検索パターンに合致する場合
パケット受信部１２は上流ルータ４０に接続されるネットワークインターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納する。そして、パターンマッチング実行部１３はパケットが検索パターンに合致するかどうかをチェックし、その結果（この場合は合致する）を記録する。
【００４６】
出力インターフェース決定部１４はパターンマッチング結果と入力インターフェース情報とから出力インターフェースを決定する。この場合は検索パターンに合致するので有害パケット除去装置３０に出力することに決定する。そして、イーサーネットアドレス置換部１５は出力インターフェースにあわせてパケット内の宛先イーサーネットアドレスを置換する。この場合は有害パケット除去装置３０のイーサーネットアドレスに書き換えられる。パケット送出部１６は有害パケット除去装置３０に接続される出力インターフェースにパケットを送出する。
【００４７】
（動作３）パケットが有害パケット除去装置から入って検索パターンに合致しない場合
有害パケット除去装置３０は、検索パターンに合致するパケットを受信し、受信したパケットのうち無害なもののみを送出するので、有害パケット除去装置３０から受信するパケットで検索パターンに合致しない場合は通常ないが、場合を網羅するためにこの場合を説明する。
【００４８】
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納し、パターンマッチング実行部１３はパケットが検索パターンに合致するかどうかをチェックし、その結果（この場合は合致しない）を記録する。
【００４９】
そして、出力インターフェース決定部１４はパターンマッチング結果と入力インターフェース情報とから出力インターフェースを決定する。この場合は検索パターンに合致せず、有害パケット除去装置３０から入力されているため、上流ルータ４０に出力することに決定する。イーサーネットアドレス置換部１５は出力インターフェースにあわせてパケット内の宛先イーサーネットアドレスを上流ルータ４０のイーサーネットアドレスに書き換え、パケット送出部１６が上流ルータ４０に接続された出力インターフェースにパケットを送出する。
【００５０】
（動作４）パケットが有害パケット除去装置から入って検索パターンに合致する場合
このパケットは、上記（動作２）で有害パケット除去装置３０に送られたパケットのうち、攻撃パケットではないことが認証されたパケットに該当する。つまりパケットの内容は（動作２）で扱ったパケットと同一である場合がある。
【００５１】
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納し、パターンマッチング実行部１３は、パケットが検索パターンに合致するかどうかをチェックし、その結果（この場合は合致する）を記録する。
【００５２】
出力インターフェース決定部１４はパターンマッチング結果と入力インターフェース情報とから出力インターフェースを決定する。この場合は検索パターンに合致し、有害パケット除去装置３０から入力されているので下流ルータ５０に出力することに決定する。
【００５３】
イーサーネットアドレス置換部１５は出力インターフェースにあわせてパケット内の宛先イーサーネットアドレスを置換する。この場合は、宛先イーサーネットアドレスを下流ルータ５０のイーサーネットアドレスに書き換える。パケット送出部１６は出力インターフェースにパケットを送出する。
【００５４】
（動作５）パケットが下流ルータから入って検索パターンに合致しない場合
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納する。パターンマッチング実行部１３は、パケットが検索パターンに合致するかどうかをチェックし、その結果（この場合は合致しない）を記録する。出力インターフェース決定部１４はパターンマッチング結果と入力インターフェース情報とから出力インターフェースを決定する。この場合は検索パターンに合致しないので上流ルータ４０に出力することに決定する。イーサーネットアドレス置換部１５は出力インターフェースにあわせてパケット内の宛先イーサーネットアドレスを置換するが、この場合は下流ルータ５０は上流ルータ４０宛にパケットを送出しているのでパケットは変化しない。そして、パケット送出部３０は上流ルータ４０に接続される出力インターフェースにパケットを送出する。
【００５５】
（動作６）パケットが下流ルータから入って検索パターンに合致する場合
下流ルータ５０は自分の配下に攻撃対象が存在していることを知っているので、通常この動作は発生しないが、場合を網羅するためにこの場合を説明する。  
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納し、パターンマッチング実行部１３はパケットが検索パターンに合致するかどうかをチェックし、その結果（この場合は合致する）を記録する。そして、出力インターフェース決定部１４はパターンマッチング結果と入力インターフェース情報とから出力インターフェースを決定する。この場合は検索パターンに合致するが下流ルータ５０から入力されているので上流ルータ４０に出力することに決定する。そして、イーサーネットアドレス置換部１５は出力インターフェースにあわせてパケット内の宛先イーサーネットアドレスを置換する。この場合は上流ルータ４０のイーサーネットアドレスに書き換えられる。パケット送出部１６は出力インターフェースにパケットを送出する。
【００５６】
（応用動作）
有害パケット除去装置３０には上記の例のような単純なフィルタとしての動作の他にサービスの中継装置としての動作を行うものがある。このような中継装置としての動作を行う有害パケット除去装置３０は、httpプロトコルのようにクライアント・サーバモデルのサービスにおいて、クライアントが接続要求をサーバに出し、その後の処理を行わないことによってサーバの資源を浪費させる攻撃に対応するために用いられる。
【００５７】
ここでは、このような動作をする有害パケット除去装置３０にも本実施の形態のパケット転送装置１０が正しく対応できることを示す。以下の説明では、有害パケット除去装置３０が保護しようとしている攻撃対象をサーバ、サーバにアクセスしようとしているパケットの送出元をクライアント、有害パケット除去装置３０内のサービス中継機能を中継装置３５と呼ぶことにする。
【００５８】
この応用動作で扱うサービスは、図８に示すシーケンスに示すようなプロトコルに従うものとする。つまり、クライアントからサーバへ接続要求が送られ（ステップ１）、サーバからクライアントへ接続許可が送られる（ステップ２）。その後、クライアントからサーバへデータ要求が送られ（ステップ３）、サーバからクライアントへのデータ送信が行われる（ステップ４）。
【００５９】
本応用動作を行わせるために、パケット転送装置１０に対して検索パターンの追加を行う。ここでは、有害パケット除去装置３０に設定される中継装置３５に使用されるIPアドレス（これを以下では中継装置のアドレスと呼ぶ）が宛先IPアドレスにあることをパケットの検索条件とし、この検索条件を満足する場合の入出力インターフェースの組を（上流ルータ、下流ルータ）（下流ルータ、有害パケット除去装置）（有害パケット除去装置、上流ルータ）とした検索パターンを追加する。
【００６０】
図９に示すシーケンス図、及び図１０に示すパケットの流れ図を参照して本応用動作について説明する。両図中の括弧内の数字はパケットを示すものであり、以下の説明中におけるパケットの末尾に付された数字に対応する。
【００６１】
まず、クライアントからサーバに向かう接続要求パケット（１）に対する動作を説明する。このパケット（１）は上流ルータ４０からパケット転送装置１０に入力される。このパケット（１）は、上記基本動作の動作２の場合に該当するので、このパケット（１）は有害パケット除去装置３０に送られる。
【００６２】
有害パケット除去装置３０内の中継装置３５は、（サーバの代わりに）返答パケット（２）をクライアントに返す。このパケットの送り元はサーバ、宛先はクライアントになっている。このパケット（２）は、上記基本動作の動作３の場合に該当するので上流ルータ４０に送られ、クライアントに到達する。
【００６３】
次に、接続許可後のクライアントからサーバに向かうデータ要求パケット（３）に対する動作を説明する。
【００６４】
このパケット（３）は上流ルータ４０からパケット転送装置１０に入力される。パケット（１）の場合と同様に、基本動作の動作２に該当するので、このパケット（３）は有害パケット除去装置３０に送られる。中継装置３５はサーバに向けて接続要求パケット（４）を送る。このパケット（４）は、送り元として上記検索パターンの追加で使用した中継機能用のアドレス、宛先としてサーバのアドレスを持つ。
【００６５】
このパケット（４）は上記基本動作の動作４に該当するので、本パケット転送装置１０は、パケット（４）を下流ルータ５０に出力し、パケット（４）はサーバに到達する。続いて、サーバは接続要求（４）に対して接続許可パケット（５）を出力する。接続許可パケット（５）の宛先は中継装置のアドレスであり、このパケット（５）は下流ルータ５０からパケット転送装置１０に入力される。
【００６６】
このパケット（５）は、追加された検索パターンに該当するので、有害パケット除去装置３０に出力される。 中継装置３５は接続許可（５）を受け取ったのでデータ要求パケット（６）をサーバに向けて送る。データ要求パケット（６）は、上記基本動作の動作４に該当するので、パケット（６）は下流ルータ５０に出力され、サーバに到達する。
【００６７】
サーバはデータ要求（６）に対してデータパケット（７）を出力する。データパケット（７）の宛先はデータ要求の送り元である中継装置３５のアドレスである。このパケット（７）は下流ルータからパケット転送装置１０に入力される。このパケット（７）は、追加された検索パターンに該当するので、有害パケット除去装置３０に出力される。中継装置３５はデータ（７）を受け取り、クライアントに向けて送り直す。このパケット（８）は送り元はサーバ、宛先はクライアントのアドレスである。このパケット（８）は、基本動作の動作３に該当するので、上流ルータ４０に出力され、クライアントに到達する。
【００６８】
（２つ以上の有害パケット除去装置を接続する場合について）
パケット転送装置１０のインターフェースの数を増やすことにより、パケット転送装置１０に複数の有害パケット除去装置を接続することが可能である。複数の有害パケット除去装置を接続することにより負荷分散を行うことができる。２つの有害パケット除去装置を接続した場合の構成を図１１に示す。本実施の形態のパケット転送装置１０では、複数の有害パケット除去装置を接続する場合に、入出力インターフェースの組の記述が追加になる他は、特別に装置を変更する必要は無い。
【００６９】
（イーサーネットアドレス置換部の高速化）
イーサーネットアドレスのサイズは６バイトであり、本実施の形態のパケット転送装置１０を構成するハードウェアのメモリ読み書き単位が８バイト単位である場合、当該メモリにより構成されるパケットバッファ１８上のパケットの宛先イーサーネットアドレスの書き換えは次の手順で行うことができる。
【００７０】
まず、パケットバッファ１８に記録されたパケットの宛先イーサーネットアドレスを含む８バイト（先頭２バイトは送り元イーサーネットアドレスの最後２バイト）をパケットバッファ１８から読み込む。そして、読み込んだデータの宛先イーサーネットアドレス以外の２バイト部分を取得し、書き込むべき８バイトをレジスタにのせ、レジスタのデータをパケットバッファ１８に書き込む。
【００７１】
ここで、本実施の形態のパケット転送装置１０の場合、接続された機器のイーサーネットアドレスは既知であり、あるインターフェースから受信するパケットの送り元のイーサーネットアドレスも記録されているので、それらを利用することにより、宛先イーサーネットアドレスの書き換えを次のようにして高速化できる。
【００７２】
パケットの送り元のイーサーネットアドレス下位２バイトと、宛先イーサーネットアドレス６バイトを使用して書き込むべき８バイトをレジスタに載せ、このレジスタのデータをパケットバッファに書き込む。この高速化を実現するには上流・下流ルータのイーサーネットアドレスをあらかじめ設定しておく必要があるが、本実施の形態では、それらをイーサネットアドレス表に記録するので、それを利用できる。なお、この高速化は読み込みに時間がかかる装置に特に効果が大きい
［第２の実施の形態］
次に、本発明の第２の実施の形態について説明する。第１の実施の形態では、パケット転送装置１０がパケットの検索パターンと入力インタフェースとから出力インタフェースを決定していたが、第２の実施の形態では、パケットが検索パターンに合致する場合に、検索パターンのみから出力インタフェースを決定している。
【００７３】
第２の実施の形態におけるパケット転送装置１０の基本的な接続形態は第１の実施の形態と同様に図４に示したとおりである。
【００７４】
図１２に、第２の実施の形態におけるパケット転送装置１０の詳細構成を示す。基本的な構成は第１の実施の形態のパケット転送装置の構成と同じであるが、第２の実施の形態では、検索パターン合致の際に、検索パターンのみから出力インタフェースを決定していることから、検索パターン表１９及びイーサネットアドレス表２０に記録される情報等が異なる。以下、第１の実施の形態と異なる点を中心にして第２の実施の形態のパケット転送装置１０の構成について説明する。
【００７５】
パケット受信部１２は、第１の実施の形態と同様に、インターフェースを介してパケットを受信し、パケット本体と受信に使用された入力インターフェースとをパケットバッファ１８に記録する機能を備えている。パターン設定部１７は、検索パターンのみを検索パターン表１９として記録する。また、イーサーネットアドレス表２０には、有害パケット除去装置３０のイーサーネットアドレスが記録される。
【００７６】
パターンマッチング実行部１３は、パターン設定部１７で格納された検索パターンを使用して受信したパケットが当該検索パターンに合致するかどうかをチェックし、合致したかどうかの結果を記録する機能を備えている。
【００７７】
出力インターフェース決定部１４は、パターンマッチング実行部１３によるチェック結果に基づき出力インターフェースを決定する機能を備えている。
【００７８】
イーサーネットアドレス置換部１５は、有害パケット除去装置３０にパケットを出力する場合に、パケットの宛先イーサーネットアドレス部をイーサーネットアドレス表２０に記録されている有害パケット除去装置３０のイーサーネットアドレスに置換する機能を備えている。
【００７９】
（基本動作）
次に、本実施の形態のパケット転送装置１０の基本動作を説明する。当該パケット転送装置１０に目的の動作を行わせるためにはまず設定作業を行う。
【００８０】
本実施の形態でも、攻撃対象となるサーバのIPアドレスが宛先アドレス部分にあることをパケットの検索パターンとし、このパターンを格納する。また、この検索パターンに合致したパケットを有害パケット除去装置３０に送ることとする。検索パターンは複数記述でき、これにより複数の攻撃対象を同時に扱うことが可能となる。また、有害パケット除去装置３０のイーサーネットアドレスをイーサーネットアドレス表２０に入力する。
【００８１】
本実施の形態では、検索パターンの照合は上流ルータ４０と下流ルータ５０から入力されたパケットに対してのみ行われ、有害パケット除去装置３０からのパケットに対しては検索パターンの照合を行わない。
【００８２】
検索パターンに合致しない場合のパケットの出力インターフェースは予め決められており、本実施の形態では、上流ルータ->下流ルータ、下流ルータ->上流ルータ、有害パケット除去装置->上流ルータまたは下流ルータ（有害パケット除去装置の指定した送付先に従う）とする。つまり、検索パターンに合致しない場合に、上流ルータ４０から受信したパケットを下流ルータ５０に送出し、下流ルータ５０から受信したパケットを上流ルータ４０に送出する。
【００８３】
有害パケット除去装置３０から受信したパケットは、有害パケット除去装置の指定した送付先（宛先イーサーネットアドレス）に従って、上流ルータ４０または下流ルータ５０に送出するものとする。つまり、パケット転送装置は上流ルータ４０及び下流ルータ５０の宛先イーサーネットアドレスと、それに対応するネットワークインターフェースの情報を保持しており、この情報に基づき、有害パケット除去装置の指定した送付先にパケットを送出する。
【００８４】
以下、上記の設定がなされたパケット転送装置１０の動作を説明する。検索パターン照合が行われる可能性のあるインターフェースが２つあり、それぞれの場合に検索パターンに合致するかどうかで４つの場合があり、これと有害パケット除去装置３０からの入力の５つの場合で全ての可能性が網羅されるのでそれぞれについて、図１３を参照して説明する。
【００８５】
（動作１）パケットが上流ルータから入って検索パターンに合致しない場合
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納する。パターンマッチング実行部１３は、パターンマッチングを行い、パケットが検索パターンに合致しないという結果を記録する。出力インターフェース決定部１４は、パケットが検索パターンに合致しないことから、パケットを下流ルータ５０に出力することを決定し、パケット送出部１６は下流ルータ５０に接続される出力インターフェースにパケットを送出する。
【００８６】
（動作２）パケットが上流ルータから入って検索パターンに合致する場合
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納する。パターンマッチング実行部１３はパケットが検索パターンに合致するという結果を記録する。パケットが検索パターンに合致するので、出力インターフェース決定部１４はパケットを有害パケット除去装置３０に出力することに決定する。そして、イーサーネットアドレス置換部１５はパケットの宛先イーサーネットアドレスを有害パケット除去装置３０のイーサーネットアドレスに置換し、パケット送出部１６が有害パケット除去装置３０に接続された出力インターフェースにパケットを送出する。
【００８７】
（動作３）パケットが下流ルータから入って検索パターンに合致しない場合
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファ１８に格納する。パターンマッチング実行部１３はパケットが検索パターンに合致するかどうかをチェックし、合致しないという結果を記録する。検索パターンに合致しないので、出力インターフェース決定部１４はパケットを上流ルータ４０に出力することに決定し、パケット送出部１６は上流ルータ４０に接続される出力インターフェースにパケットを送出する。
【００８８】
（動作４）パケットが下流ルータから入って検索パターンに合致する場合
下流ルータ４０は自分の配下に攻撃対象が存在していることを知っているので、この動作４は通常の動作では発生しないが、場合を網羅するために説明する。
【００８９】
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファに格納する。パターンマッチング実行部１３は、パターンマッチングを行って、パケットが検索パターンに合致するという結果を記録する。パケットが検索パターンに合致することから、出力インターフェース決定部１４はパケットを有害パケット除去装置３０に出力することに決定し、イーサーネットアドレス置換部１５はパケットの宛先イーサーネットアドレスを有害パケット除去装置３０のイーサーネットアドレスに置換し、パケット送出部１６は有害パケット除去装置３０に接続された出力インターフェースにパケットを送出する。
【００９０】
（動作５）パケットが有害パケット除去装置から入る場合
動作５におけるパケットは、上記動作２で有害パケット除去装置に送られたパケットのうち、攻撃パケットではないことが認証されたパケットに該当する。つまりパケットの内容は動作２で扱ったパケットと同一である場合がある。
【００９１】
パケット受信部１２は入力インターフェースからパケットを受け取り、パケットを入力インターフェース情報と共にパケットバッファに格納する。動作５では、出力インターフェース決定部１４は有害パケット除去装置３０の出力先指定（パケットの宛先イーサーネットアドレスで指定されている）に従うが、通常は下流ルータ５０が指定されているので、ここでも下流ルータ５０が指定されているものとする。パケット送出部１６は下流ルータ５０に接続される出力インターフェースにパケットを送出する。
【００９２】
（応用動作）
第２の実施の形態でも、第１の実施の形態で説明した場合と同様に、パケット転送装置１０を、中継装置３５としての動作を行う有害パケット除去装置３０に適用することができる。本実施の形態でも、適用されるサービスは図８に示すものとする。
【００９３】
本実施の形態では、中継装置３５は独自の経路情報表を備えており、サーバ向けのパケットは下流ルータ５０、それ以外のパケットは上流ルータ４０の宛先イーサネットアドレスをつけてパケットを出力する機能を備えているものとする。また、本実施の形態では、有害パケット除去装置３０に設定される中継装置３５に使用されるIPアドレス（以下では中継装置のアドレスと呼ぶ）が宛先アドレスにあることをパケットの検索条件とした検索パターンを追加する。つまり、パケット転送装置１０は、基本動作で説明した場合に加え、パケットの宛先アドレスが中継装置のアドレスと合致する場合にも当該パケットを有害パケット除去装置３０に送信する。
【００９４】
以下、第２の実施の形態における応用動作について、第１の実施の形態で参照した図９、図１０を再び参照して説明する。図中の括弧内の数字はパケットを示すものであり、以下の説明中におけるパケットの末尾に付されたものに対応する。
【００９５】
まず、クライアントからサーバに向かう接続要求パケット（１）に対する動作を説明する。
【００９６】
このパケット（１）は上流ルータ４０からパケット転送装置１０に入力される。このパケット（１）は、上記基本動作の動作２に該当するので、有害パケット除去装置１０に送られる。
【００９７】
有害パケット除去装置３０内の中継装置３５は、（サーバの代わりに）返答パケット（２）をクライアントに返す。このパケットの送り元はサーバ、宛先はクライアントになっている。このパケット（２）は、上記基本動作の動作５に該当するが、有害パケット除去装置３０から送出されるパケットの宛先イーサーネットアドレスは上流ルータ４０のイーサーネットアドレスなので、パケット転送装置１０は当該パケット（２）を上流ルータ４０に送り、パケット（２）はクライアントに到達する
次に、接続許可後のクライアントからサーバに向かうデータ要求パケット（３）に対する動作を説明する。
【００９８】
このパケット（３）は上流ルータ４０からパケット転送装置１０に入力される。パケット（１）の場合と同様に、上記基本動作の動作２に該当するので、このパケット（３）は有害パケット除去装置１０に送られる。中継装置３５はサーバに向けて接続要求パケット（４）を送る。このパケット（４）は送り元として上記検索パターンの追加で使用した中継機能用のアドレス、宛先としてサーバのアドレスを持つ。
【００９９】
このパケット（４）は上記基本動作の動作５に従って下流ルータ５０に出力され、サーバに到達する。続いて、サーバは接続要求（４）に対して接続許可パケット（５）を出力する。接続許可パケット（５）の宛先は中継装置のアドレスであり、このパケット（５）は下流ルータ５０からパケット転送装置１０に入力される。
【０１００】
このパケット（５）は、追加された検索パターンに該当するので、このパケット（５）は有害パケット除去装置３０に出力される。中継装置３５は接続許可（５）を受け取ったので、データ要求パケット（６）をサーバに向けて送る。
【０１０１】
このパケット（６）は、上記基本動作の動作５に従い下流ルータ５０に出力され、サーバに到達する。そして、サーバはデータ要求（６）に対してデータパケット（７）を出力する。データパケット（７）の宛先はデータ要求の送り元である中継装置のアドレスである。このパケット（７）は下流ルータ５０からパケット転送装置１０に入力される。
【０１０２】
このパケット（７）は、追加された検索パターンに該当するのでこのパケット（７）は有害パケット除去装置３０に出力される。中継装置３５はデータ（７）を受け取り、クライアントに向けて送り直す。このパケット（８）の送り元はサーバ、宛先はクライアントのアドレスである。有害パケット除去装置３０からこのパケット（８）を受信したパケット転送装置は、上記基本動作の動作５に従ってこのパケット（８）を上流ルータ４０に出力する。そして、このパケット（８）はクライアントに到達する。
【０１０３】
（２つ以上の有害パケット除去装置を接続する場合について）
第１の実施の形態において図１１に示した場合と同様に、第２の実施の形態でも２つ以上の有害パケット除去装置を接続することが可能である。ただし、この場合、パケット転送装置１０の内部構成を図１４に示す構成とする。図１４に示す構成は、１つの有害パケット除去装置３０を接続する場合と比較して、下記の点が異なる。
【０１０４】
まず、検索パターン表１９には、検索パターン毎に、合致した場合に出力すべきインターフェースを指定している。また、有害パケット除去装置のイーサーネットアドレスを、有害パケット除去装置毎に記録する。また、基本動作の動作２、４において、パターンマッチング実行部１３が検索パターンに合致すると判定した場合に、その旨の結果だけでなくどの検索パターンが合致したかを記録するとともに、出力インターフェース決定部１４が合致した検索パターンで指定された出力インターフェースにパケットを出力するようにする。更に、イーサーネットアドレス置換部１５が、パケットの宛先イーサーネットアドレスを、出力インターフェースとして指定されたインターフェースに接続された有害パケット除去装置に対応するイーサーネットアドレスに置換するようにする。
【０１０５】
イーサーネットアドレス置換部１５の高速化も第１の実施の形態と同様にして行うことが可能である。ただし、上流・下流ルータのイーサーネットアドレスをあらかじめ設定しておく必要がある。
【０１０６】
（本発明の実施の形態におけるパケット転送装置とルータとの相違）
本発明の実施の形態におけるパケット転送装置は、以下の点で従来のネットワークを構成しているルータと異なる。
【０１０７】
ルータは、ネットワーク内で共有される、あるいは独自の経路情報を使って出力インターフェースを決定するが、本パケット転送装置は経路情報を使用せず、パケット内の特定のパターンを用いて出力インターフェースを決定している。また、特に第１の実施の形態のパケット転送装置は、入力インターフェース情報を出力インターフェースの決定に使用するので、同じ宛先アドレスを持つパケットが異なるインターフェースから入ってきた場合に異なる出力インターフェースを指定することが可能だが、ルータではどのインターフェースから入力されたかを問わず同じ宛先アドレスを持つパケットは同じ出力インターフェースに出力される。
【０１０８】
また、ルータは宛先アドレス以外を出力インターフェースの決定に使用できないが、本パケット転送装置はパケット上の宛先アドレス以外の任意の情報を出力インターフェースの決定に使用できる。
【０１０９】
（本発明の実施の形態におけるパケット転送装置の効果について）
本発明の実施の形態におけるパケット転送装置を用いることにより、図２で説明した従来の方式１に比較して、複数のカスタマ間で有害パケット除去装置を共有することが可能となるという効果を得られる。また、図３で説明した従来の方式２に比較して以下の効果が得られる
本パケット転送装置では、ルータの経路情報を変更する必要がなく、トンネルを導入する必要がなくなるので、カスタマネットワーク側にトンネル終端装置の追加をする必要がなくなり、また、ルータに新たな設定・負荷の増大をおこさずにサービスを実現できる。
【０１１０】
また、サービスの構成要素がサービス提供者のネットワーク内のみに存在するので遠隔オペレーションを行う必要がない。また、動的に経路情報を操作する必要がないのでこれに付随するコストの増大（オペレーションコスト、作業・設定ミスによる事故の可能性の増大、経路情報の変更頻度の増大、肥大化、可視性の低下等）が発生しない。
【０１１１】
更に、有害パケット除去装置に送るパケットの選別にあたり、宛先アドレスに加えてパケットのサービス種別や送出元のアドレス等のパケット上の任意の場所に配置されている情報も条件として付加することができるので、除去したい攻撃のこれらの情報が既知であれば有害パケット除去装置に送るパケットを制限することができる。これは有害パケット除去装置の負荷を軽減する効果がある。
【０１１２】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。例えば、本実施の形態では、パケット転送装置に有害パケット除去装置を接続していたが、有害パケット除去装置に限らずどのような装置でもパケット転送装置に接続できる。
【図面の簡単な説明】
【０１１３】
【図１】有害パケット除去装置を用いたサービスを説明するための図である。
【図２】従来技術において有害パケット除去装置を用いる第１の方法を説明するための図である。
【図３】従来技術において有害パケット除去装置を用いる第２の方法を説明するための図である。
【図４】本発明の第１の実施の形態の概要を説明するための図である。
【図５】パケット転送装置の接続構成図である。
【図６】パケット転送装置の詳細機能構成図である。
【図７】第１の実施の形態におけるパケット転送装置の基本動作を説明するための図である。
【図８】第１の実施の形態におけるパケット転送装置の応用動作で扱うサービスを説明するための図である。
【図９】第１の実施の形態におけるパケット転送装置の応用動作を説明するための図である。
【図１０】第１の実施の形態におけるパケット転送装置の応用動作を説明するための図である。
【図１１】パケット転送装置に２つの有害パケット除去装置を接続した場合の構成を示す図である。
【図１２】第２の実施の形態におけるパケット転送装置の詳細機能構成図である。
【図１３】第２の実施の形態におけるパケット転送装置の基本動作を説明するための図である。
【図１４】第２の実施の形態におけるパケット転送装置に複数の有害パケット除去装置を接続する場合のパケット転送装置の構成を示す図である。
【符号の説明】
【０１１４】
１０  パケット転送装置
３０  有害パケット除去装置
４０  上流ルータ
５０  下流ルータ
１１  インターフェース
１２  パケット受信部
１３  パターンマッチング実行部
１４  出力インターフェース決定部
１５  イーサーネットアドレス置換部
１６  パケット送出部
１７  パターン設定部
１８  パケットバッファ
１９  検索パターン表
２０  イーサネットアドレス表
２１  設定入力用インターフェース
【図１】
0004776412.tif 000002
【図２】
0004776412.tif 000003
【図３】
0004776412.tif 000004
【図４】
0004776412.tif 000005
【図５】
0004776412.tif 000006
【図６】
0004776412.tif 000007
【図７】
0004776412.tif 000008
【図８】
0004776412.tif 000009
【図９】
0004776412.tif 000010
【図１０】
0004776412.tif 000011
【図１１】
0004776412.tif 000012
【図１２】
0004776412.tif 000013
【図１３】
0004776412.tif 000014
【図１４】
0004776412.tif 000015