(57)【要約】  パケット廃棄機能を有するアプライアンスは、パケットを廃棄した場合、廃棄パケットに関する情報であるパケット廃棄情報をコントローラへ送る。コントローラは、パケット廃棄情報に応答してスイッチ制御処理を行う。スイッチ制御処理において、コントローラは、ネットワークの中から対象スイッチを選択し、廃棄パケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示するエントリ設定情報を作成し、作成したエントリ設定情報を対象スイッチに送信する。対象スイッチは、コントローラから送られるエントリ設定情報に応答して、自身のフローテーブル内のエントリを設定する。
2011081020.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク中に配置されたアプライアンス及びスイッチと、
前記アプライアンス及び前記スイッチに接続されたコントローラと
を備え、
前記スイッチは、フローテーブルを備え、
前記フローテーブルの各エントリは、マッチ条件と、前記マッチ条件にマッチするパケットに対して行われるアクションを示し、
前記スイッチは、前記コントローラから送られるエントリ設定情報に応答して、前記フローテーブル内のエントリを設定し、
前記スイッチは、受信パケットを受信すると前記フローテーブルを参照し、前記受信パケットにマッチするエントリで指定される前記アクションを前記受信パケットに対して実施し、
前記アプライアンスは、パケット廃棄機能を有し、パケットを廃棄した場合、前記廃棄されたパケットに関する情報であるパケット廃棄情報を前記コントローラへ送り、
前記コントローラは、前記パケット廃棄情報に応答してスイッチ制御処理を行い、
前記スイッチ制御処理において、前記コントローラは、前記ネットワークの中から対象スイッチを選択し、前記廃棄されたパケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示する前記エントリ設定情報を作成し、前記作成したエントリ設定情報を前記対象スイッチに送信する
ネットワークシステム。
【請求項２】
請求項１に記載のネットワークシステムであって、
前記コントローラは、前記ネットワークの接続関係を示す接続情報が格納される記憶装置を備え、
前記パケット廃棄情報は、前記廃棄されたパケットの送信元に関する情報を含み、
前記コントローラは、前記パケット廃棄情報及び前記接続情報を参照することにより、前記送信元に最も近いスイッチを前記対象スイッチとして選択する
ネットワークシステム。
【請求項３】
請求項２に記載のネットワークシステムであって、
前記送信元に接続されたスイッチが前記ネットワーク中に存在する場合、前記コントローラは、当該スイッチを前記対象スイッチとして選択し、
前記送信元に接続されたスイッチが前記ネットワーク中に存在しない場合、前記コントローラは、外部ネットワークに接続されているスイッチを前記対象スイッチとして選択する
ネットワークシステム。
【請求項４】
請求項１乃至３のいずれか一項に記載のネットワークシステムであって、
前記スイッチ制御処理の後、前記コントローラは、前記アプライアンスに対して、前記廃棄されたパケットが属するフローに関するルールの無効化を指示する
ネットワークシステム。
【請求項５】
ネットワーク中に配置されたアプライアンス及びスイッチに接続されるコントローラであって、
前記スイッチは、フローテーブルを備え、
前記フローテーブルの各エントリは、マッチ条件と、前記マッチ条件にマッチするパケットに対して行われるアクションを示し、
前記スイッチは、前記コントローラから送られるエントリ設定情報に応答して、前記フローテーブル内のエントリを設定し、
前記スイッチは、受信パケットを受信すると前記フローテーブルを参照し、前記受信パケットにマッチするエントリで指定される前記アクションを前記受信パケットに対して実施し、
前記アプライアンスは、パケット廃棄機能を有し、パケットを廃棄した場合、前記廃棄されたパケットに関する情報であるパケット廃棄情報を前記コントローラへ送り、
前記コントローラは、
前記パケット廃棄情報が格納される記憶装置と、
前記パケット廃棄情報に応答してスイッチ制御処理を行う処理装置と
を備え、
前記スイッチ制御処理において、前記処理装置は、前記ネットワークの中から対象スイッチを選択し、前記廃棄されたパケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示する前記エントリ設定情報を作成し、前記作成したエントリ設定情報を前記対象スイッチに送信する
コントローラ。
【請求項６】
請求項５に記載のコントローラであって、
前記記憶装置には更に、前記ネットワークの接続関係を示す接続情報が格納され、
前記パケット廃棄情報は、前記廃棄されたパケットの送信元に関する情報を含み、
前記処理装置は、前記パケット廃棄情報及び前記接続情報を参照することにより、前記送信元に最も近いスイッチを前記対象スイッチとして選択する
コントローラ。
【請求項７】
アプライアンス及びスイッチが配置されたネットワークの制御方法であって、
前記スイッチは、フローテーブルを備え、
前記フローテーブルの各エントリは、マッチ条件と、前記マッチ条件にマッチするパケットに対して行われるアクションを示し、
前記スイッチは、エントリ設定情報に応答して、前記フローテーブル内のエントリを設定し、
前記スイッチは、受信パケットを受信すると前記フローテーブルを参照し、前記受信パケットにマッチするエントリで指定される前記アクションを前記受信パケットに対して実施し、
前記制御方法は、
前記アプライアンスにおいてパケットが廃棄された場合、前記廃棄されたパケットに関する情報であるパケット廃棄情報を取得することと、
前記パケット廃棄情報に応答してスイッチ制御処理を行うことと
を含み、
前記スイッチ制御処理は、
前記ネットワークの中から対象スイッチを選択することと、
前記廃棄されたパケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示する前記エントリ設定情報を作成することと、
前記作成したエントリ設定情報を前記対象スイッチに送信することと
を含む
制御方法。
【請求項８】
アプライアンス及びスイッチが配置されたネットワークの制御処理をコンピュータに実行させる制御プログラムが記録された記録媒体であって、
前記スイッチは、フローテーブルを備え、
前記フローテーブルの各エントリは、マッチ条件と、前記マッチ条件にマッチするパケットに対して行われるアクションを示し、
前記スイッチは、エントリ設定情報に応答して、前記フローテーブル内のエントリを設定し、
前記スイッチは、受信パケットを受信すると前記フローテーブルを参照し、前記受信パケットにマッチするエントリで指定される前記アクションを前記受信パケットに対して実施し、
前記制御処理は、
前記アプライアンスにおいてパケットが廃棄された場合、前記廃棄されたパケットに関する情報であるパケット廃棄情報を取得することと、
前記パケット廃棄情報に応答してスイッチ制御処理を行うことと
を含み、
前記スイッチ制御処理は、
前記ネットワークの中から対象スイッチを選択することと、
前記廃棄されたパケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示する前記エントリ設定情報を作成することと、
前記作成したエントリ設定情報を前記対象スイッチに送信することと
を含む
記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステムとその制御方法に関する。特に、本発明は、パケット廃棄機能を有するアプライアンスを備えるネットワークシステムとその制御方法に関する。
【背景技術】
【０００２】
アプライアンス（ネットワークアプライアンス）は、ネットワークトラヒックに対して特定の処理を実行するネットワーク装置である。例えば、ファイアウォールは、指定されたパケットを廃棄する機能を有するアプライアンスである。具体的には、ファイアウォールは、予め設定されているルール（ポリシ）を参照し、受信パケットが当該ルールで指定された条件にマッチした場合、その受信パケットを廃棄する。これにより、サーバへの不正アクセスや攻撃を防止することができる。【０００３】
インターネット上のサーバに対する攻撃への対策に関連する技術として、次のものが知られている。【０００４】
特許文献１（特開２００６−６７０７８号公報）には、ＩＰルータが開示されている。そのＩＰルータは、攻撃検知手段と、転送手段と、フィルタ手段とを備える。攻撃検知手段は、インターネット上のサーバを標的にした攻撃を検知する。攻撃が検知されると、転送手段は、攻撃検知情報を、ネットワーク全体の監視および状況把握を行う管理装置へ転送する。フィルタ手段は、管理装置からの指示に従って、特定のビットパターンと一致する攻撃フローに対して、該攻撃フローの特定および制御を行う。【０００５】
特許文献２（特開２００７−２０１９６６号公報）には、管理サーバが開示されている。管理サーバは、それぞれ複数のポートを有する複数のパケット中継装置と接続されている。この管理サーバは、トポロジ情報記憶部と、フロー情報受信部と、フロー起点検索部とを有する。トポロジ情報記憶部は、複数のパケット中継装置の複数のポートの接続関係情報を記憶する。フロー情報受信部は、複数のパケット中継装置からトラフィックフローを特定するフロー情報と入力ポートを示す入力ポート情報とを受信する。フロー起点検索部は、入力ポート情報、フロー情報及び接続関係情報に基づいて、トラフィックフローの起点を検索する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００６−６７０７８号公報
【特許文献２】特開２００７−２０１９６６号公報
【発明の概要】
【０００７】
上述の通り、パケット廃棄機能を有するアプライアンスは、パケットを受信する毎に、当該受信パケットを廃棄すべきか否かを判定する。そして、判定結果が廃棄の場合、アプライアンスは、当該受信パケットを廃棄する。しかしながら、廃棄されるべきパケットのトラフィックが当該アプライアンスに供給され続けることは、アプライアンス資源及びネットワーク帯域幅の浪費を招く。
【０００８】
本発明の１つの目的は、パケット廃棄機能を有するアプライアンスを備えるネットワークシステムにおいて、アプライアンス資源及びネットワーク帯域幅の浪費を防ぐことにある。
【０００９】
本発明の１つの観点において、ネットワークシステムが提供される。そのネットワークシステムは、ネットワーク中に配置されたアプライアンス及びスイッチと、それらアプライアンス及びスイッチに接続されたコントローラと、を備える。スイッチは、フローテーブルを備える。フローテーブルの各エントリは、マッチ条件と、マッチ条件にマッチするパケットに対して行われるアクションを示す。スイッチは、コントローラから送られるエントリ設定情報に応答して、フローテーブル内のエントリを設定する。スイッチは、受信パケットを受信するとフローテーブルを参照し、その受信パケットにマッチするエントリで指定されるアクションを受信パケットに対して実施する。アプライアンスは、パケット廃棄機能を有し、パケットを廃棄した場合、廃棄されたパケットに関する情報であるパケット廃棄情報をコントローラへ送る。コントローラは、パケット廃棄情報に応答してスイッチ制御処理を行う。スイッチ制御処理において、コントローラは、ネットワークの中から対象スイッチを選択し、廃棄パケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示するエントリ設定情報を作成し、作成したエントリ設定情報を対象スイッチに送信する。
【００１０】
本発明の他の観点において、ネットワーク中に配置されたアプライアンス及びスイッチに接続されるコントローラが提供される。スイッチは、フローテーブルを備える。フローテーブルの各エントリは、マッチ条件と、マッチ条件にマッチするパケットに対して行われるアクションを示す。スイッチは、コントローラから送られるエントリ設定情報に応答して、フローテーブル内のエントリを設定する。スイッチは、受信パケットを受信するとフローテーブルを参照し、その受信パケットにマッチするエントリで指定されるアクションを受信パケットに対して実施する。アプライアンスは、パケット廃棄機能を有し、パケットを廃棄した場合、廃棄されたパケットに関する情報であるパケット廃棄情報をコントローラへ送る。コントローラは、パケット廃棄情報が格納される記憶装置と、パケット廃棄情報に応答してスイッチ制御処理を行う処理装置と、を備える。スイッチ制御処理において、処理装置は、ネットワークの中から対象スイッチを選択し、廃棄パケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示するエントリ設定情報を作成し、作成したエントリ設定情報を対象スイッチに送信する。
【００１１】
本発明の更に他の観点において、アプライアンス及びスイッチが配置されたネットワークの制御方法が提供される。スイッチは、フローテーブルを備える。フローテーブルの各エントリは、マッチ条件と、マッチ条件にマッチするパケットに対して行われるアクションを示す。スイッチは、エントリ設定情報に応答して、フローテーブル内のエントリを設定する。スイッチは、受信パケットを受信するとフローテーブルを参照し、その受信パケットにマッチするエントリで指定されるアクションを受信パケットに対して実施する。本発明に係る制御方法は、（Ａ）アプライアンスにおいてパケットが廃棄された場合、廃棄されたパケットに関する情報であるパケット廃棄情報を取得することと、（Ｂ）パケット廃棄情報に応答してスイッチ制御処理を行うことと、を含む。スイッチ制御処理は、（Ｂ１）ネットワークの中から対象スイッチを選択することと、（Ｂ２）廃棄パケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示するエントリ設定情報を作成することと、（Ｂ３）作成したエントリ設定情報を対象スイッチに送信することと、を含む。
【００１２】
本発明の更に他の観点において、アプライアンス及びスイッチが配置されたネットワークの制御処理をコンピュータに実行させる制御プログラムが提供される。スイッチは、フローテーブルを備える。フローテーブルの各エントリは、マッチ条件と、マッチ条件にマッチするパケットに対して行われるアクションを示す。スイッチは、エントリ設定情報に応答して、フローテーブル内のエントリを設定する。スイッチは、受信パケットを受信するとフローテーブルを参照し、その受信パケットにマッチするエントリで指定されるアクションを受信パケットに対して実施する。本発明に係る制御処理は、（Ａ）アプライアンスにおいてパケットが廃棄された場合、廃棄されたパケットに関する情報であるパケット廃棄情報を取得することと、（Ｂ）パケット廃棄情報に応答してスイッチ制御処理を行うことと、を含む。スイッチ制御処理は、（Ｂ１）ネットワークの中から対象スイッチを選択することと、（Ｂ２）廃棄されたパケットと同じフローに属するパケットを廃棄するようなエントリの作成を指示するエントリ設定情報を作成することと、（Ｂ３）作成したエントリ設定情報を対象スイッチに送信することと、を含む。
【００１３】
本発明によれば、パケット廃棄機能を有するアプライアンスを備えるネットワークシステムにおいて、アプライアンス資源及びネットワーク帯域幅の浪費を防ぐことが可能となる。
【図面の簡単な説明】
【００１４】
上記及び他の目的、長所、特徴は、次の図面と共に説明される本発明の実施の形態により明らかになるであろう。【００１５】
【図１】図１は、本発明の実施の形態に係るネットワークシステムの構成を概略的に示すブロック図である。
【図２】図２は、本実施の形態に係るスイッチが有するフローテーブルの一例を示している。
【図３】図３は、本実施の形態に係るコントローラの構成を示すブロック図である。
【図４】図４は、本実施の形態におけるネットワーク接続関係の一例を示している。
【図５】図５は、本実施の形態における接続情報の一例を示している。
【図６】図６は、本実施の形態に係る処理を示すフローチャートである。
【図７】図７は、本実施の形態に係る処理を示す概念図である。
【図８】図８は、本実施の形態におけるステップＳ１００を示すフローチャートである。
【図９】図９は、本実施の形態におけるステップＳ２００を示すフローチャートである。
【図１０】図１０は、本実施の形態におけるパケット廃棄情報からエントリ設定情報への変換の一例を示している。
【図１１】図１１は、本実施の形態におけるパケット廃棄情報からエントリ設定情報への変換の他の例を示している。
【図１２】図１２は、本実施の形態におけるステップＳ３００を示すフローチャートである。
【図１３】図１３は、本実施の形態に係る処理の変形例を示すフローチャートである。
【図１４】図１４は、本実施の形態に係る処理の変形例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
添付図面を参照して、本発明の実施の形態を説明する。
【００１７】
１．ネットワークシステム
図１は、本実施の形態に係るネットワークシステム１の構成を概略的に示している。本実施の形態に係るネットワークシステム１は、例えば、データセンターに適用される。
【００１８】
ネットワークシステム１は、サーバ１０、アプライアンス１００及びスイッチ３００を備えている。アプライアンス１００及びスイッチ３００は、アプライアンス−スイッチネットワークを構成している。サーバ１０は、そのアプライアンス−スイッチネットワークに接続されている。アプライアンス−スイッチネットワークは更に、ネットワークシステム１の外部の外部ネットワークに接続されている。
【００１９】
アプライアンス（ネットワークアプライアンス）１００は、ネットワークトラフィックに対して特定の処理を実行するネットワーク装置である。本実施の形態において、アプライアンス１００は「パケット廃棄機能」を有する。具体的には、アプライアンス１００は、予め設定されているルール（ポリシ）を参照し、受信パケットが当該ルールで指定された条件にマッチした場合、その受信パケットを廃棄する。アプライアンス１００としては、ファイアウォール、Ｗｅｂアプリケーションファイアウォール（ＷＡＦ：Ｗｅｂ  Ａｐｐｌｉｃａｔｉｏｎ  Ｆｉｒｅｗａｌｌ）、侵入防止システム（ＩＰＳ：Ｉｎｔｒｕｓｉｏｎ  Ｐｒｅｖｅｎｔｉｏｎ  Ｓｙｓｔｅｍ）、メールセキュリティ装置等が例示される。
【００２０】
スイッチ３００は、パケット転送等のスイッチ処理を行う。より詳細には、スイッチ３００は、図２に示されるようなフローテーブルＴＢＬを備えている。フローテーブルＴＢＬの各エントリは、「マッチ条件（フロー識別情報）」と「アクション」を示している。「マッチ条件」は、パケットの入力ポート、送信元ＭＡＣアドレス、宛先ＭＡＣアドレス、送信元ＩＰアドレス、宛先ＩＰアドレス、送信元ポート番号、宛先ポート番号などのパラメータの組み合わせで構成される。尚、フローもそれらパラメータの組み合わせで定義される。つまり、「マッチ条件」は、フローを規定するフロー識別情報でもある。「アクション」は、マッチ条件にマッチするパケットに対して行われる処理を示す。「アクション」としては、指定ポートへのパケット出力、パケット廃棄等が挙げられる。
【００２１】
スイッチ３００は、パケットを受信すると、フローテーブルＴＢＬを参照し、当該受信パケットにマッチするエントリを検索する。具体的には、スイッチ３００は、受信パケットのヘッダ情報を抽出し、受信パケットの入力ポート及びヘッダ情報を検索キーとして用いることにより、フローテーブルＴＢＬの検索を行う。その検索キーと一致するマッチ条件を示すエントリが、受信パケットにマッチするマッチエントリである。受信パケットがいずれかのエントリのマッチ条件にマッチした場合、すなわち、マッチエントリが見つかった場合、スイッチ３００は、そのマッチエントリで指定される「アクション」を受信パケットに対して実施する。
【００２２】
ネットワークシステム１は、更に、ネットワークにおけるトラフィックを制御するためのコントローラ２００を備えている。コントローラ２００は、ネットワーク中に配置されている各アプライアンス１００及び各スイッチ３００に対して、制御回線（図１中、破線で示されている）を介して接続されている。コントローラ２００は、制御回線を介してアプライアンス１００やスイッチ３００から情報を受け取り、また、制御回線を介してアプライアンス１００やスイッチ３００を制御する。
【００２３】
例えば、コントローラ２００は、制御回線を介して、各スイッチ３００のフローテーブルＴＢＬの内容を設定する機能を有する。具体的には、コントローラ２００は、エントリの設定（追加、変更、削除等）を指示する「エントリ設定情報」を作成し、そのエントリ設定情報を対象スイッチ３００に送る。エントリ設定情報を受け取った対象スイッチ３００は、そのエントリ設定情報に従って、自身のフローテーブルＴＢＬ内のエントリの設定（追加、変更、削除等）を行う。このように、コントローラ２００は、フローテーブルＴＢＬの内容の設定を通してスイッチ３００の動作を制御し、それにより、ネットワークトラフィックを適宜制御することができる。
【００２４】
このような処理を実現するためのコントローラ２００とスイッチ３００との間のインタフェース方式としては、例えば、Ｏｐｅｎｆｌｏｗ（ｈｔｔｐ：／／ｗｗｗ．ｏｐｅｎｆｌｏｗｓｗｉｔｃｈ．ｏｒｇ／を参照）が挙げられる。この場合、「Ｏｐｅｎｆｌｏｗ  Ｃｏｎｔｒｏｌｌｅｒ」がコントローラ２００となり、「Ｏｐｅｎｆｌｏｗ  Ｓｗｉｔｃｈ」が各スイッチ３００となる。
【００２５】
２．コントローラ
図３は、本実施の形態に係るコントローラ２００の構成を示すブロック図である。コントローラ２００は、処理装置２０１、記憶装置２０２、及び通信装置２０３を備えている。処理装置２０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を含む。記憶装置２０２は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）を含む。通信装置２０３は、例えば、外部との通信を行うネットワークカードを含む。
【００２６】
記憶装置２０２には、パケット廃棄情報ＤＲＰ、エントリ設定情報ＥＮＴ、接続情報ＣＯＮ等が格納される。
【００２７】
パケット廃棄情報ＤＲＰは、パケット廃棄機能を有するアプライアンス１００によって廃棄されたパケットに関する情報である。詳細は後述される。
【００２８】
エントリ設定情報ＥＮＴは、上述の通り、対象スイッチ３００に対してエントリの設定（追加、変更、削除等）を指示する情報である。
【００２９】
接続情報ＣＯＮは、ネットワークの接続関係を示す。つまり、接続情報ＣＯＮは、サーバ１０、アプライアンス１００、スイッチ３００といった構成要素間の接続関係（トポロジ）を示す。図４は、ネットワーク接続関係の一例を示しており、図５は、図４の場合の接続情報ＣＯＮの一例を示している。図５の例において、接続情報ＣＯＮは、接続元の識別情報、その接続元の各ポート、その接続元ポートに接続されている接続先の識別情報及びポートを示している。接続元や接続先の識別情報としては、ＭＡＣアドレスやＩＰアドレスが挙げられる。尚、コントローラ２００は、例えば、ＩＥＥＥ８０２．１ＡＢで規定されているＬＬＤＰ（Ｌｉｎｋ  Ｌａｙｅｒ  Ｄｉｓｃｏｖｅｒｙ  Ｐｒｏｔｏｃｏｌ）を利用することによって、接続情報ＣＯＮを取得することができる。
【００３０】
処理装置２０１は、本実施の形態に係る「ネットワーク制御処理」を行う。より詳細には、図３に示されるように、処理装置２０１は、アプライアンス通信部２１０、スイッチ選択部２２０、情報変換部２３０、ネットワーク制御部２４０、及びスイッチ通信部２５０を備えている。これら機能ブロックは、処理装置２０１が制御プログラムＰＲＯＧを実行することにより実現される。制御プログラムＰＲＯＧは、コンピュータ（処理装置２０１）によって実行されるコンピュータプログラムであり、記憶装置２０２に格納される。制御プログラムＰＲＯＧは、コンピュータ読み取り可能な記録媒体に格納されていてもよい。
【００３１】
３．処理フロー
３−１．概要
図６及び図７のそれぞれは、本実施の形態に係る処理を示すフローチャート及び概念図である。図６及び図７を参照して、本実施の形態に係る処理の概要を説明する。
【００３２】
ステップＳ１００：
図７に示されるように、送信元５０がパケットを送信する。そのパケットは、スイッチ３００を通してアプライアンス１００に到達する。アプライアンス１００は、パケット廃棄機能を有しており、場合によっては受信パケットを廃棄する。パケットを廃棄した場合、アプライアンス１００は、当該廃棄パケットに関する情報であるパケット廃棄情報ＤＲＰを、コントローラ２００に送る。
【００３３】
ステップＳ２００：
コントローラ２００は、パケット廃棄情報ＤＲＰに応答して「スイッチ制御処理」を行う。具体的には、コントローラ２００は、送信元５０とアプライアンス１００との間の経路上のいずれかスイッチ３００を、「対象スイッチ」として選択する。また、コントローラ２００は、廃棄パケットと同じフローに属するパケットを廃棄（ｄｒｏｐ）するようなエントリの作成を指示するエントリ設定情報ＥＮＴを作成する。つまり、コントローラ２００は、パケット廃棄情報ＤＲＰを、それに対応するエントリ設定情報ＥＮＴに変換する。そして、コントローラ２００は、そのエントリ設定情報ＥＮＴを対象スイッチ３００に送信する。すなわち、コントローラ２００は、対象スイッチ３００に対して、廃棄パケットと同じフローに属するパケットを廃棄するよう指示する。
【００３４】
ステップＳ３００：
エントリ設定情報ＥＮＴを受け取った対象スイッチ３００は、そのエントリ設定情報ＥＮＴに従って、自身のフローテーブルＴＢＬ内にエントリを設定する。具体的には、対象スイッチ３００は、アプライアンス１００における廃棄パケットと同じフローに属するパケットを廃棄（ｄｒｏｐ）するようなエントリを作成する。その結果、当該フローに属する後続パケットは、対象スイッチ３００によって廃棄されることになる。
【００３５】
このように、本実施の形態によれば、アプライアンス１００によってあるフローに属するパケットが廃棄された場合、同一フローに属する後続パケットは、アプライアンス１００に転送されることなく、対象スイッチ３００によって廃棄されることになる。その結果、廃棄されるべきフローのトラフィックがアプライアンス１００に供給され続けることがなくなる。従って、アプライアンス資源及びネットワーク帯域幅の浪費が防止される。アプライアンス資源及びネットワーク帯域幅を効率的に使用することが可能となる。
【００３６】
３−２．詳細なフロー
図８は、アプライアンス１００により行われるステップＳ１００をより詳しく示すフローチャートである。
【００３７】
ステップＳ１１０：
アプライアンス１００は、パケットを受け取ると、予め設定されているルール（ポリシ）を参照し、受信パケットが当該ルールで指定された条件にマッチするか否かを調べる。受信パケットが当該ルールで指定された条件にマッチした場合、その受信パケットを廃棄する。
【００３８】
ステップＳ１２０：
パケットを廃棄した場合（ステップＳ１１０；Ｙｅｓ）、アプライアンス１００は、その廃棄パケットに関する情報をログに記録する。尚、このようなログ機能は、多くのアプライアンスにおいて一般に採用されている“ｓｙｓｌｏｇ”により実現可能である。
【００３９】
ステップＳ１３０：
更に、アプライアンス１００は、上記ステップＳ１２０において記録されたログ情報をパケット廃棄情報ＤＲＰとして、コントローラ２００に送信する。尚、このような送信機能も“ｓｙｓｌｏｇ”により実現可能である。
【００４０】
図９は、コントローラ２００（図３参照）により行われるステップＳ２００をより詳しく示すフローチャートである。
【００４１】
ステップＳ２１０：
処理装置２０１のアプライアンス通信部２１０は、通信装置２０３を通して、アプライアンス１００からパケット廃棄情報ＤＲＰを受信（取得）する。アプライアンス通信部２１０は、パケット廃棄情報ＤＲＰを記憶装置２０２に格納する。このパケット廃棄情報ＤＲＰに応答して、処理装置２０１は、次のような「スイッチ制御処理（ステップＳ２２０〜Ｓ２４０）」を行う。
【００４２】
ステップＳ２２０：
処理装置２０１のスイッチ選択部２２０は、ネットワークの中から対象スイッチ３００を選択する。このとき、スイッチ選択部２２０は、廃棄パケットの送信元５０になるべく近いスイッチ３００を対象スイッチ３００として選択する。そのために、スイッチ選択部２２０は、次のような方法で対象スイッチ３００を選択する。
【００４３】
まず、スイッチ選択部２２０は、パケット廃棄情報ＤＲＰ及び接続情報ＣＯＮ（図５参照）を記憶装置２０２から読み出す。パケット廃棄情報ＤＲＰは、廃棄パケットの送信元５０に関する情報（以下、「送信元情報」と参照される）を含んでいる。送信元情報としては、送信元ＩＰアドレス等が挙げられる。スイッチ選択部２２０は、その送信元情報と接続情報ＣＯＮを参照する（ステップＳ２２１）。それにより、スイッチ選択部２２０は、送信元５０に接続されているスイッチ３００がネットワーク中に存在するか否かを調べる（ステップＳ２２２）。
【００４４】
送信元５０に接続されたスイッチ３００がネットワーク中に存在している場合（ステップＳ２２２；Ｙｅｓ）、スイッチ選択部２２０は、当該スイッチ３００を対象スイッチ３００として選択する（ステップＳ２２３）。一方、送信元５０に接続されたスイッチ３００がネットワーク中に無い場合（ステップＳ２２２；Ｎｏ）、それは、送信元５０が外部ネットワークに存在することを意味する。従って、スイッチ選択部２２０は、外部ネットワークに接続されているスイッチ３００を対象スイッチ３００として選択する（ステップＳ２２４）。このような方法によって、スイッチ選択部２２０は、送信元５０に最も近いスイッチ３００を対象スイッチ３００として選択することができる。
【００４５】
図４を参照して、対象スイッチの選択例を説明する。一例として、外部ネットワークのクライアント２０（送信元）が、本実施の形態に係るネットワークシステム１中のサーバ１０−１宛にパケットを送信する場合を考える。そのパケットは、外部ネットワークからスイッチ３００−４及び３００−１を経由してアプライアンス１００−１に転送され、アプライアンス１００−１において破棄されたとする。図５を参照すると、送信元であるクライアント２０に接続されているスイッチ３００は見当たらない（ステップＳ２２２；Ｎｏ）。従って、外部ネットワークに接続されているスイッチ３００−４が対象スイッチとして選択される（ステップＳ２２４）。すなわち、ネットワークシステム１中で送信元に最も近いスイッチ３００−４が対象スイッチとして選択される。
【００４６】
別の例として、本実施の形態に係るネットワークシステム１中のサーバ１０−３（送信元）が、外部ネットワークに向けてパケットを送信する場合を考える。そのパケットは、サーバ１０−３からスイッチ３００−２及び３００−１を経由してアプライアンス１００−１に転送され、そのアプライアンス１００−１において破棄されたとする。ここでは、サーバ１０−３がウイルスに感染し、攻撃トラヒックを送信している場合を想定している。図５を参照すると、送信元であるサーバ１０−３にはスイッチ３００−２が接続されていることが分かる（ステップＳ２２２；Ｙｅｓ）。従って、当該スイッチ３００−２が対象スイッチとして選択される（ステップＳ２２３）。すなわち、ネットワークシステム１中で送信元に最も近いスイッチ３００−２が対象スイッチとして選択される。
【００４７】
このように、スイッチ選択部２２０は、送信元５０が内部ネットワークにあろうが外部ネットワークにあろうが、その送信元５０に最も近いスイッチ３００を対象スイッチ３００として選択する。これは、送信元５０になるべく近い位置で不要なトラフィックを止めることを意味し、ネットワーク帯域幅の効率的な利用につながる。
【００４８】
ステップＳ２３０：
処理装置２０１の情報変換部２３０は、パケット廃棄情報ＤＲＰを記憶装置２０２から読み出す。そして、情報変換部２３０は、そのパケット廃棄情報ＤＲＰに基づいて、エントリ設定情報ＥＮＴを作成する。作成されるエントリ設定情報ＥＮＴは、アプライアンス１００における廃棄パケットと同じフローに属するパケットを廃棄するようなエントリの作成を、対象スイッチ３００に対して指示する。つまり、情報変換部２３０は、パケット廃棄情報ＤＲＰを、それに応じたエントリ設定情報ＥＮＴに変換する。情報変換部２３０は、作成したエントリ設定情報ＥＮＴを記憶装置２０２に格納する。
【００４９】
図１０は、パケット廃棄情報ＤＲＰからエントリ設定情報ＥＮＴへの変換の一例を示している。ここでは、パケットを廃棄したアプライアンス１００は、ファイアウォールである。エントリのマッチ条件に含まれる送信元ＩＰアドレス（ｓｒｃ  ＩＰ：Ｘ．Ｘ．Ｘ．Ｘ）、宛先ＩＰアドレス（ｄｓｔ  ＩＰ：Ｙ．Ｙ．Ｙ．Ｙ）、送信元ポート番号（ｓｒｃ  ｐｏｒｔ：１２３４）、及び宛先ポート番号（ｄｓｔ  ｐｏｒｔ：５６７８）は、パケット廃棄情報ＤＲＰから分かる。また、コントローラ２００は、スイッチ３００がＩＰネットワーク上に設置されていることを知っているので、Ｅｔｈｅｒｎｅｔ  ｔｙｐｅを０ｘ８００（ＩＰｖ４）に設定している。送信元ＭＡＣアドレス、宛先ＭＡＣアドレス、ＶＬＡＮ  ＩＤに関しては、パケット廃棄情報ＤＲＰに記載がないため、“Ａｎｙ（＊）”に設定されている。入力ポート（ｉｎｐｕｔ  ｓｗｉｔｃｈ  ｐｏｒｔ）は、外部ネットワークあるいは送信元に接続されている上記対象スイッチ３００のポート番号であり、上記ステップＳ２２０において得られている。アクション（ａｃｔｉｏｎ）は、パケット廃棄を意味する「ｄｒｏｐ」に設定される。
【００５０】
図１１は、パケット廃棄情報ＤＲＰからエントリ設定情報ＥＮＴへの変換の他の例を示している。ここでは、パケットを廃棄したアプライアンス１００は、アプリケーションレイヤまでを含むマルチレイヤを検査する侵入防止システム（ＩＰＳ）である。図１０の場合と同様に変換処理が可能であることが分かる。本実施の形態は、ファイアウォールのようなＬ４を検査するアプライアンス１００のみならず、侵入防止システムのようなＬ７までを含むマルチレイヤの検査を行うアプライアンス１００にも対応することができることに留意されたい。
【００５１】
ステップＳ２４０：
ネットワーク制御部２４０は、ステップＳ２３０で作成されたエントリ設定情報ＥＮＴを記憶装置２０２から読み出す。そして、ネットワーク制御部２４０は、エントリ設定情報ＥＮＴをスイッチ通信部２５０に渡し、そのエントリ設定情報ＥＮＴをステップＳ２２０で選択された対象スイッチ３００へ送信するよう指示する。スイッチ通信部２５０は、通信装置２０３を通して、エントリ設定情報ＥＮＴを対象スイッチ３００に送信する。
【００５２】
図１２は、対象スイッチ３００により行われるステップＳ３００をより詳しく示すフローチャートである。
【００５３】
ステップＳ３１０：
対象スイッチ３００は、コントローラ２００からエントリ設定情報ＥＮＴを受け取る。
【００５４】
ステップＳ３２０：
対象スイッチ３００は、そのエントリ設定情報ＥＮＴに従って、自身のフローテーブルＴＢＬ内にエントリを設定する。具体的には、対象スイッチ３００は、アプライアンス１００における廃棄パケットと同じフローに属するパケットを廃棄するようなエントリを作成する（図１０、図１１参照）。
【００５５】
その後、当該フローに属する後続パケットは、アプライアンス１００に転送されることなく、対象スイッチ３００によって廃棄されることになる。
【００５６】
３−３．変形例
図１３及び図１４は、本実施の形態に係る処理の変形例を示している。変形例では、上述のスイッチ制御処理（ステップＳ２２０〜Ｓ２４０）の後、更に次のような処理が実行される。
【００５７】
対象スイッチ３００におけるエントリ設定（ステップＳ３００）が成功した場合（ステップＳ２５０；Ｙｅｓ）、処理装置２０１のネットワーク制御部２４０は、ステップＳ２６０を実施する。ステップＳ２６０において、ネットワーク制御部２４０は、パケットを廃棄したアプライアンス１００に対して、当該廃棄パケットが属するフローに関するルールの無効化を指示する。このルール無効化指示は、アプライアンス通信部２１０及び通信装置２０３を介して、当該アプライアンス１００に送られる。
【００５８】
アプライアンス１００は、コントローラ２００からルール無効化指示を受け取る（ステップＳ４１０；Ｙｅｓ）。そのルール無効化指示に従って、アプライアンス１００は、該当ルールを無効化にする（ステップＳ４２０）。ここで、該当ルールを無効にするとは、アプライアンス処理時に参照（検索）される対象から該当ルールを外すという意味である。これにより、その後、アプライアンス１００がアプライアンス処理を行う際の負荷が軽減される。
【００５９】
４．効果
以上に説明されたように、本実施の形態によれば、アプライアンス１００によってあるフローに属するパケットが廃棄された場合、同一フローに属する後続パケットは、アプライアンス１００に転送されることなく、対象スイッチ３００によって廃棄されることになる。その結果、廃棄されるべきフローのトラフィックがアプライアンス１００に供給され続けることがなくなる。従って、アプライアンス資源及びネットワーク帯域幅の浪費が防止される。アプライアンス資源及びネットワーク帯域幅を効率的に使用することが可能となる。
【００６０】
また、本実施の形態によれば、廃棄パケットの送信元５０が内部ネットワークにあろうが外部ネットワークにあろうが、その送信元５０に最も近いスイッチ３００が対象スイッチ３００として選択される。これにより、その送信元５０になるべく近い位置で不要なトラフィックを止めることが可能となる。その結果、ネットワーク帯域幅を更に効率的に使用することが可能となる。
【００６１】
上述の特許文献１、特許文献２では、外部からの攻撃トラヒックのみを想定している。その場合、１箇所にＩＰＳなどＭｉｔｉｇａｔｏｒ等の装置を配備すれば不要トラヒックの排除はできた。しかし、クラウド環境になると、内部マシンからの攻撃も考慮する必要がある。データセンター内ネットワークの効率利用を考えると、不要なトラヒックは送信元に近いところで排除することが望ましい。しかし、どこにホストが接続されているかをスイッチレベルで容易に把握することはできない。本実施の形態では、上述の通り、送信元が内部ネットワークにあろうが外部ネットワークにあろうが、その送信元に最も近い位置で不要なトラフィックを排除することができる。
【００６２】
更に、図１０及び図１１で示されたように、本実施の形態は、ファイアウォールのようなＬ４を検査するアプライアンス１００のみならず、侵入防止システムのようなＬ７までを含むマルチレイヤの検査を行うアプライアンス１００にも対応することができる。アプライアンス１００がＬ４以下の検査をしただけでは攻撃ではなくとも、Ｌ７までのアプリケーションレイヤまで検査して攻撃とわかる場合がある。そのため、Ｌ４に限定せず、Ｌ７までを含むマルチレイヤでの検査をすることは重要である。
【００６３】
また、本実施の形態において、アプライアンス１００は、パケット廃棄を行った場合にパケット廃棄情報ＤＲＰを作成し、そのパケット廃棄情報ＤＲＰをコントローラ２００に送信している。このような処理は、多くのアプライアンスにおいて一般に採用されている“ｓｙｓｌｏｇ”により実現可能である。すなわち、本実施の形態に係る処理を実現するために、既存のアプライアンスを改造する必要はない。マルチベンダに対応することも可能である。
【００６４】
以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
【００６５】
本出願は、２０１０年１月４日に出願された日本国特許出願２０１０−０００２５２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【図１】
2011081020.tif 000003
【図２】
2011081020.tif 000004
【図３】
2011081020.tif 000005
【図４】
2011081020.tif 000006
【図５】
2011081020.tif 000007
【図６】
2011081020.tif 000008
【図７】
2011081020.tif 000009
【図８】
2011081020.tif 000010
【図９】
2011081020.tif 000011
【図１０】
2011081020.tif 000012
【図１１】
2011081020.tif 000013
【図１２】
2011081020.tif 000014
【図１３】
2011081020.tif 000015
【図１４】
2011081020.tif 000016
【国際調査報告】
2011081020.tif 000017
2011081020.tif 000018