(57)【特許請求の範囲】
【請求項１】
現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、
前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、
前記第１のスイッチから送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習する変換ルール管理部を備え、前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し、前記現用系のネットワークアプライアンスと同様の出力パケットとなるようヘッダ書き換えを指示する制御装置と、を含むネットワークアプライアンス冗長化システム。
【請求項２】
前記第１、２のスイッチは、
受信パケットと照合するためのマッチング条件と、処理内容とを対応付けた制御情報を記憶する制御情報記憶部と、
前記制御情報記憶部に記憶された制御情報の中から、受信パケットに適合するマッチング条件を持つ制御情報に定められた処理内容を実行するパケット処理部とを備え、
前記制御装置は、前記第１、２のスイッチの制御情報記憶部の制御情報を書き換えることにより、前記第１のスイッチから送信されたパケットのヘッダ情報と、前記第２のスイッチにて受信したパケットのヘッダ情報と、を受け取る請求項１のネットワークアプライアンス冗長化システム。
【請求項３】
前記制御装置は、
前記第１のスイッチに、前記現用系のネットワークアプライアンスによる変更前後のヘッダ情報を格納可能なパケットを送信させる制御情報を設定し、
前記第２のスイッチに、前記現用系のネットワークアプライアンスによってヘッダ情報が書き換えられたパケットを転送させる制御情報を設定することにより、
前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習する請求項２のネットワークアプライアンス冗長化システム。
【請求項４】
前記制御装置は、
前記制御情報を用いて、前記第１、第２のスイッチに対して、ヘッダ書き換えを指示する請求項２又は３のネットワークアプライアンス冗長化システム。
【請求項５】
前記制御装置は、
前記第２のスイッチからの通知に基づいて、アドレス変換テーブルの更新有無を検出し、前記変換ルール管理部に保持されているヘッダ変換ルールを更新するとともに、前記第２のスイッチに対し、前記現用系のネットワークアプライアンスと同様の出力パケットとなるようヘッダ書き換えを指示する請求項１から４いずれか一のネットワークアプライアンス冗長化システム。
【請求項６】
前記ネットワークアプライアンスは、ＮＡＴ装置、ＮＡＰＴ装置、ロードバランサのいずれかである請求項１から５いずれか一のネットワークアプライアンス冗長化システム。
【請求項７】
現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、
前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、に接続され、
前記第１のスイッチから送信されたパケットと、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットと、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習する変換ルール管理部を備え、
前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し、前記現用系のネットワークアプライアンスと同様の出力パケットとなるようヘッダ書き換えを指示する制御装置。
【請求項８】
現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、接続された制御装置が、
前記第１のスイッチから送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習するステップと、
前記現用系のネットワークアプライアンスから前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し前記現用系のネットワークアプライアンスと同様の出力パケットとなるようにヘッダ書き換えを指示するステップとを含む制御装置と、を含むネットワークアプライアンス冗長化方法。
【請求項９】
現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、接続された制御装置に搭載されたコンピュータに、
前記第１のスイッチから送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習する処理と、
前記現用系のネットワークアプライアンスから前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し前記現用系のネットワークアプライアンスと同様の出力パケットとなるようにヘッダ書き換えを指示する処理とを実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１２−０７９９５３号（２０１２年  ３月３０日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、ネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラムに関し、特に、２つの異なる機種のネットワークアプライアンスが配置されているネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラムに関する。
【背景技術】
【０００２】
特許文献１にマスタルータとバックアップルータを並列に配置した構成が開示されている。同公報によると、並列に配置したルータの前段のシェアードハブにてパケットを複製し、マスタルータとバックアップルータの両方に送信し、マスタルータがパケットを転送し、バックアップルータがパケットを廃棄することで、マスタルータとバックアップルータ間で通信を行うことなく状態を同期できると記載されている。【０００３】
特許文献２には、装置内でパケットを複製し、現用系と待機系の双方の経路制御モジュールに転送して経路制御処理を実行させ、待機系モジュールからの内部制御パケットの受信から、待機系モジュールの状態を判定する仕組みを持ったパケット転送装置が開示されている。【０００４】
非特許文献１には、パケットを二重処理して状態を冗長化することにより、状態交換のオーバーヘッドを低減できるようにした方式が提案されている。【０００５】
非特許文献２、３は、オープンフローと呼ばれる集中制御型のネットワークに関する文献である。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２０８５０２号公報
【特許文献２】特開２００５−３０３５０１号公報
【非特許文献】
【０００７】
【非特許文献１】狩野秀一、鈴木一哉、地引昌弘、「ルータクラスタにおける二重パケット処理冗長方式（インターネット及び一般）」、電子情報通信学会技術研究報告、ＩＡ、インターネットアーキテクチャ、１０４（３７７）、２１-２６、２００４−１０−２１
【非特許文献２】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  Ｉｎｎｏｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年２月１４日検索］、インターネット〈URL: http://www.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献３】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．１．０  Ｉｍｐｌｅｍｅｎｔｅｄ  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０２）、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年２月１４日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００８】
以下の分析は、本発明によって与えられたものである。複数の仮想ネットワークで物理ネットワーク資源を共有している場合、１つのネットワークの故障が複数の仮想ネットワークに影響を与えてしまう。このような事態に備え、通常はあらゆるネットワーク機器を現用系と予備系の２つ以上の系を用意し冗長化を行っておく必要がある。【０００９】
しかしながら、ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）やＮＡＰＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｐｏｒｔ  Ｔｒａｎｓｌａｔｉｏｎ）、ＬＢ（Ｌｏａｄ  Ｂａｌａｎｃｅｒ）といった、パケットヘッダ（以降、単に「ヘッダ」と称する）の変換（以降、「ヘッダ変換」と称する。）を伴うネットワークアプライアンス（以降、単に「アプライアンス」または「ＡＰ」と称する。）を冗長化する場合、サービスによっては、ステートフルなフェールオーバを実現する必要がある。ここで、ステートフルなフェールオーバとは、セッションが存在するうちに現用系（または、「ＡＣＴ」と称する。逆に、予備系は、「ＳＢＹ」と称する。）なアプライアンスの切り替え（以降、「系切り替え」と称する）が発生しても、それらのセッションが継続できるようなフェールオーバである。その場合、ユーザはステートフルな冗長化機能を持った同機種のアプライアンスを２台以上用意し、かつ、それらを密に接続しなければならない。その理由は、これらのアプライアンスが行うヘッダの変換結果（以降、「変換後ヘッダ」と称する。）が、装置ごとに異なるため、ＡＣＴとＳＢＹで変換情報を交換して共有する必要があり、その共有手法がメーカや装置毎に異なるからである。結果、この制約がネットワーク構成や物理資源の割り当ての柔軟性を損なうことになってしまう。【００１０】
この点、特許文献１、２及び非特許文献１の技術では、それぞれルータの改造が必要であり、各ベンダで販売されているものをそのまま用いることができないという問題点がある。【００１１】
本発明の目的は、２つの異なる機種のネットワークアプライアンスを用いたステートフルなフェールオーバの実現に貢献することのできるネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１２】
第１の視点によれば、現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、前記第１のスイッチから送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習する変換ルール管理部を備え、前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し、前記現用系のネットワークアプライアンスと同様の出力パケットとなるようヘッダ書き換えを指示する制御装置と、を含むネットワークアプライアンス冗長化システムが提供される。【００１３】
第２の視点によれば、現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、に接続され、前記第１のスイッチから送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習する変換ルール管理部を備え、前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し、前記現用系のネットワークアプライアンスと同様の出力パケットとなるようヘッダ書き換えを指示する制御装置が提供される。【００１４】
第３の視点によれば、現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、接続された制御装置が、前記第１のスイッチから送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習するステップと、前記現用系のネットワークアプライアンスから前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し前記第１のスイッチと同様のヘッダ書き換えを指示するステップとを含む制御装置と、を含むネットワークアプライアンス冗長化方法が提供される。本方法は、スイッチを制御する制御装置という、特定の機械に結びつけられている。【００１５】
第４の視点によれば、現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンスの前段に配置される第１のスイッチと、前記２つの異なる機種のネットワークアプライアンスの後段に配置される第２のスイッチと、接続された制御装置に搭載されたコンピュータに、前記第１のスイッチから送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して前記第２のスイッチにて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンスによるヘッダ変換ルールを学習する処理と、前記現用系のネットワークアプライアンスから前記予備系のネットワークアプライアンスに切り替わった際に、前記ヘッダ変換ルールに基づいて、前記第２のスイッチに対し前記第１のスイッチと同様のヘッダ書き換えを指示する処理とを実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な（非トランジエントな）記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１６】
本発明によれば、２つの異なる機種のネットワークアプライアンスを用いた冗長構成で、ステートフルなフェールオーバの実現に貢献することが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態の構成を示す図である。
【図２】本発明の第１の実施形態のネットワークアプライアンス冗長化システムの構成を示す図である。
【図３】図２の各装置のＭＡＣアドレスとＩＰアドレスの対応表である。
【図４】本発明の第１の実施形態の制御装置に保持される冗長構成管理テーブルの例である。
【図５】本発明の第１の実施形態の制御装置に保持されるヘッダ変換テーブルの例である。
【図６】本発明の第１の実施形態の第１スイッチ（前段スイッチ）に設定されるフローエントリ（制御情報）の例である。
【図７】本発明の第１の実施形態の第２スイッチ（後段スイッチ）に設定されるフローエントリ（制御情報）の例である。
【図８】本発明の第１の実施形態におけるパケット変換の一例（カプセル化）である。
【図９】本発明の第１の実施形態におけるパケット変換の別の一例（ヘッダ埋め込み）である。
【図１０】本発明の第１の実施形態の動作（初期設定）を表した流れ図である。
【図１１】本発明の第１の実施形態の一連の動作（ＣＬ１のＡＲＰ〜ＡＲＰ応答まで）を表したシーケンス図である。
【図１２】本発明の第１の実施形態の一連の動作（ＣＬ１のパケット送信〜ＳＶ１到達まで）を表したシーケンス図である。
【図１３】本発明の第１の実施形態の一連の動作（ＳＶ１のＡＲＰ〜ＡＲＰ応答まで）を表したシーケンス図である。
【図１４】本発明の第１の実施形態の一連の動作（ＳＶ１のパケット送信〜ＣＬ１到達まで）を表したシーケンス図である。
【図１５】本発明の第１の実施形態の動作（ＮＡＴテーブル変換）を表した流れ図である。
【図１６】ＡＰ２（系２）が現用系で動作している状態の冗長構成管理テーブルの例である。
【図１７】ＡＰ２（系２）が現用系で動作している状態において第１スイッチ（前段スイッチ）に設定されるフローエントリ（制御情報）の例である。
【図１８】ＡＰ２（系２）が現用系で動作している状態において第２スイッチ（後段スイッチ）に設定されるフローエントリ（制御情報）の例である。
【発明を実施するための形態】
【００１８】
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１９】
本発明は、図１に示すように、その一実施形態において、現用系と予備系とに切り替えて運用される２つの異なる機種のネットワークアプライアンス２０、２１の前段に配置される第１のスイッチ３０と、前記２つの異なる機種のネットワークアプライアンス２０、２１の後段に配置される第２のスイッチ３１と、前記第１、第２のスイッチ３０、３１を制御する制御装置４０とを含む構成にて実現できる。
【００２０】
より具体的には、制御装置４０は、第１のスイッチ３０から送信されたパケットのヘッダ情報と、前記現用系のネットワークアプライアンスを経由して第２のスイッチ３１にて受信したパケットのヘッダ情報と、に基づいて、前記現用系のネットワークアプライアンス２０によるヘッダ変換ルールを学習する変換ルール管理部を備える。そして、制御装置４０は、現用系から予備系のネットワークアプライアンス２１に切り替わった際に、前記ヘッダ変換ルールに基づいて、第２のスイッチ３１に対し、前記現用系のネットワークアプライアンス２０と同様の出力パケットとなるようヘッダ書き換えを指示する。
【００２１】
以上により、異なるアプライアンス間でのステートフルなフェールオーバが実現できる。なお、上記構成によれば、アプライアンスに対する改造は不要であり、また、アプライアンス２０、２１は、それぞれ同種のヘッダ変換の機能を有していればよく、メーカや機種が異なっていてもよい。
【００２２】
［第１の実施形態］
続いて、本発明の第１の実施形態について図面を参照して詳細に説明する。以下、アプライアンスとしてＨａｌｆ−ＮＡＴを行うロードバランサ（以降、「ＬＢ」と称する。）を冗長化する例を取り上げる。なお、本発明はこの実施形態に限定されるものではなく、その他ヘッダ変換を伴うアプライアンスの冗長化を行う際に適用可能である。
【００２３】
図２は、本発明の第１の実施形態のネットワークアプライアンス冗長化システムの構成を示す図である。図２を参照すると、並列に配置されたアプライアンス（ＡＰ）１２０、１２１と、これらＡＰ１２０、１２１の前段に配置された第１スイッチ１１０と、これらＡＰ１２０、１２１の後段に配置された第２スイッチ１１１と、第１、第２スイッチ１１０、１１１を制御する制御装置１４０とを含む構成が示されている。
【００２４】
第１スイッチ１１０のポートｐ０には、クライアントＣＬ１が接続されている。第１スイッチ１１０のポートｐ１には、初期状態において現用系で動作するアプライアンス（ＡＰ）１２０が接続され、ポートｐ２には、初期状態において予備系で動作するアプライアンス（ＡＰ）１２１が接続されている。同様に、第２スイッチ１１１のポートｐ１には、初期状態において現用系で動作するアプライアンス（ＡＰ１）１２０が接続され、ポートｐ２には、初期状態において予備系で動作するアプライアンス（ＡＰ２）１２１が接続されている。また、第２スイッチ１１１のポートｐ０には、スイッチ１１２を介して、サーバＳＶ１〜ＳＶ３が接続されている。なお、アプライアンス（ＡＰ）１２０、１２１はそれぞれＮＡＴテーブル（アドレス変換テーブルに相当）を内部に持っている。
【００２５】
制御装置１４０は、ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスとポートの関係を学習する機能と、図３に示すようにＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスとＭＡＣアドレスの関係を学習する機能や第１、第２スイッチにフローエントリ（制御情報）を設定する機能を持った経路制御部１４１と、変換ルール管理部１４２とを備えている。
【００２６】
また、制御装置１４０の変換ルール管理部１４２は、冗長化されたアプライアンスの構成及び状態を管理するための冗長構成管理テーブルと、冗長構成を組んだ各系がフロー単位に行ったヘッダ変換内容を管理するためのヘッダ変換テーブルとを保持している。制御装置１４０の変換ルール管理部１４２は、現用系から予備系のアプライアンス１２１に切り替わった際に、前記ヘッダ変換テーブルを参照して、これらアプライアンスの後段に配置された第２スイッチ１１１に対し、現用系のアプライアンス１２０と同様の出力パケットとなるようヘッダ書き換えを指示する。
【００２７】
図４は、変換ルール管理部１４２に保持されている冗長構成管理テーブルの例である。図４の例では、冗長構成を組んだアプライアンスを特定するためのクラスタＩＤ（以降、「ＣＬＩＤ」と称する。）と対応づけて、冗長構成を設定したアプライアンスとスイッチの接続情報（ｓｗ１は第１スイッチのＩＤ、ｓｗ２は第２スイッチのＩＤを示す。）、現用系として動作している系の情報、アプライアンスの種別情報、ＡＣＴとＳＢＹの両方のヘッダ変換ルールが揃った後も変換前ヘッダを付与する処理を継続するかどうかを示す継続フラグ、変換前ヘッダにおいて、あるパケット列を同じフローとみなすために必要なキーとなるフィールドを管理するキーフィールドを格納可能となっている。
【００２８】
図５は、変換ルール管理部１４２に保持されているヘッダ変換テーブルの例である。図５の例では、ＣＬＩＤと対応づけて、変換前のヘッダの情報（即ち、第２スイッチ１１１経由で入手される第１スイッチ１１０から送信されたパケットのヘッダ情報）と、アプライアンス１２０、１２１でそれぞれ変換された変換後のヘッダ情報（即ち、第２スイッチ１１１が受信したパケットのヘッダ情報）とを格納可能となっている。なお、図４、図５を含む以下の説明において、ｄｌ＿ｔｙｐｅは、上位層のプロトコルタイプを示し、ｄｌ＿ｓｒｃは、送信元ＭＡＣアドレスを示し、ｄｌ＿ｄｓｔは、送信先ＭＡＣアドレスを示す。また、ｎｗ＿ｓｒｃは、送信元ＩＰアドレスを示し、ｎｗ＿ｄｓｔは、送信先ＩＰアドレスを示す。また、ｔｐ＿ｓｒｃは、送信元Ｌ４ポート番号を示す、ｔｐ＿ｄｓｔは、送信先Ｌ４ポート番号を示すものとする。
【００２９】
第１、第２スイッチ１１０、１１１は、それぞれ上記した制御装置１４０の経路制御部１４１から設定されたフローエントリ（制御情報）に従って動作するパケット処理部１３０、１３１を備える。また、第１、第２スイッチ１１０、１１１は、フローエントリ（制御情報）を記憶する制御情報記憶部（図示省略）を備えている。
【００３０】
図６は、第１スイッチ１１０に設定されるフローエントリ（制御情報）の例である。図６の例では、上位に格納されたフローエントリ（Ｎｏ．フィールドの値が大きい）程、優先度の高いフローエントリとして取り扱われる。フローエントリ（制御情報）は、フローを識別するマッチ条件（ｍａｔｃｈ）と、そのフローに対して行うアクション（ａｃｔｉｏｎ）と対応付けて構成される。例えば、図６のＮｏ．１０３のフローエントリは、ポートｐ１、即ち、アプライアンス１２０から送信元ＩＰアドレスがＶＩＰ＿Ｌ（アプライアンスの入力側の仮想ＩＰアドレス）、宛先ＩＰアドレスがＩＰ＿ＣＬ１（クライアントＣＬ１のＩＰアドレス）であるＩＰパケットを受信した場合、ポートｐ０、即ち、クライアントＣＬ１に転送すべきことを示している。なお、図６中の「＊」は、ワイルドカードを示している。例えば、図６のＮｏ．０のフローエントリは、すべて「＊」が設定されている。このため、第１スイッチ１１０は、上位のフローエントリのいずれにも適合しないヘッダを持つパケットを受信した場合、制御装置１４０にパケットを送信する。制御装置１４０の経路制御部１４１は、前記パケットを受信すると、その内容を解析して、経路の計算等を行って、適切なフローエントリを第１スイッチ１１０（必要なら第２スイッチ１１１にも）に設定する。
【００３１】
また、図６の例では、ポートｐ０、即ち、クライアントＣＬ１から送信元ＩＰアドレスがＩＰ＿ＣＬ１（クライアントＣＬ１のＩＰアドレス）、宛先ＩＰアドレスがＶＩＰ＿Ｌ（アプライアンスの入力側の仮想ＩＰアドレス）であるＩＰパケットを受信した場合、その宛先ＭＡＣアドレス等を書き換えたものを、それぞれポートｐ１、ｐ２から送信するフローエントリが設定されている（Ｎｏ．１０２のフローエントリ参照）。また、クライアントＣＬ１からＡＲＰ（Ａｄｄｒｅｓｓ  Ｒｅｓｏｌｕｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）パケットを受信した場合も、それぞれポートｐ１、ｐ２から送信するフローエントリが設定されている（Ｎｏ．１００のフローエントリ参照）。
【００３２】
図７は、第２スイッチ１１１に設定されるフローエントリ（制御情報）の例である。例えば、図７のＮｏ．１０４のフローエントリは、ポートｐ０、即ち、スイッチ１１２からＩＰパケットで送信元ＩＰアドレスがＶＩＰ＿Ｌ（アプライアンスの入力側の仮想ＩＰアドレス）、宛先ＩＰアドレスがＩＰ＿ＣＬ１（クライアントＣＬ１のＩＰアドレス）であるパケットを受信した場合、それぞれヘッダの宛先ＭＡＣアドレスをアプライアンスの接続ポートのＭＡＣアドレスに書き換えた上で、ポートｐ１、ｐ２から送信するフローエントリが設定されている（Ｎｏ．１０４のフローエントリ参照；アプライアンス１２１に送信するパケットについては送信元ＭＡＣアドレス、送信元ＩＰアドレスも書き換え。）。また、図７の例では、前記のように、第１スイッチ１１０で変換前ヘッダが付加され、アプライアンス１２０を経由してきたパケットについて、変換前ヘッダを除去した上で、スイッチ１１２に転送するフローエントリが設定されている（Ｎｏ．１０１のフローエントリ参照）。一方、第１スイッチ１１０で変換前ヘッダが付加され、予備系のアプライアンス１２１を経由してきたパケットについては、廃棄を指示するフローエントリが設定されている（Ｎｏ．１００のフローエントリ参照）。また、図７にも図６と同様にすべてワイルドカード「＊」が設定されたフローエントリが設定されている（Ｎｏ．０のフローエントリ参照）。このため、第２スイッチ１１１も、上位のフローエントリのいずれにも適合しないヘッダを持つパケットを受信した場合、制御装置１４０にパケットを送信する。
【００３３】
上記のようなパケット処理部１３０、ｌ３１は、各スイッチ１１０、１１１上のＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）で動作するプログラムとして実装したり、特定の処理を行うＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）として実現したりすることもできる。また、上記基本動作は、非特許文献１、２のオープンフロースイッチと同様であるので、非特許文献２の仕様に従って構成されたスイッチを用いることもできる。
【００３４】
ここで、図６、図７におけるアクションとしてヘッダ付与、ヘッダ削除が設定されている場合の具体的なヘッダ付与（削除）の方法について説明する。このようなヘッダ付与（削除）の方法には、例えば、次のような方式が挙げられる。一つ目の方式は、図８のように、パケットヘッダを同じパケットヘッダでカプセル化する方式である。図８の例では、パケットに変換前ヘッダが付与されているかどうかを識別するために、ＩＰヘッダのオプションフィールド（Ｏｐｔｉｏｎｓ）に、変換前ヘッダを付加していることを示すフラグを設けられている。
【００３５】
２つ目の方式は、図９のように、ＩＰヘッダのオプションフィールド（Ｏｐｔｉｏｎｓ）内に、ヘッダを格納する方式である。図９の例においても、変換前ヘッダが付与されているかどうかを識別するための付与フラグが設けられている。なお、図８、図９の例では、ＩＰヘッダのオプションフィールド（Ｏｐｔｉｏｎｓ）を利用しているが、ＴＣＰヘッダのオプションフィールド（Ｏｐｔｉｏｎｓ）を利用してもよい。また、図８、図９の例では、Ｌ２〜Ｌ４のヘッダを保存しているが、すべてのヘッダを保存する必要もなく、ヘッダのうち必要なフィールドのみを保存してもよい。
【００３６】
続いて、本実施形態の動作について図面を参照して詳細に説明する。
［初期設定］
はじめに、図２に示した制御装置１４０や第１、第２スイッチ１１０、１１１に対して行われる初期設定について説明する。図１０は、本発明の第１の実施形態の動作（初期設定）を表した流れ図である。以下、第１スイッチ１１０を前段スイッチと呼び、第２スイッチ１１１を後段スイッチと呼んで説明する。
【００３７】
図１０に示すとおり、オペレータは、冗長構成管理テーブルに、クラスタＩＤ（ＣＬＩＤ）、冗長構成を設定したアプライアンスと前後段のスイッチの接続情報、現用系として動作している系の情報、アプライアンスの種別情報、継続フラグ、キーフィールドを登録する（ステップＳ１００）。
【００３８】
その際に、継続フラグやキーフィールドは手動で入力するようにしてもよいし、自動入力としてもよい。例えば、アプライアンス種別がＨａｌｆ−ＮＡＴ（ＤＮＡＴ）ということから、例えば、システムが継続フラグはＮｏ、キーフィールドはｎｗ＿ｓｒｃである、というように自動的に判定してもよい。ここで、継続フラグは、アプライアンスが行うパケットヘッダの変換により、アプライアンスの前後でフロー情報が一意に識別できなくなる場合は必ずＹｅｓにする必要がある。例えば、アプライアンスの種別が図４のようにＨａｌｆ−ＮＡＴではなくＦｕｌｌ−ＮＡＴである場合、送信元ＩＰアドレスも宛先ＩＰアドレスも変換されてしまうため、アプライアンスの前後でフローの識別が不可能になる。そのような場合、継続フラグＹｅｓに設定することで、前段スイッチ（第１スイッチ１１０）での変換前ヘッダ情報の付与と、後段スイッチ（第２スイッチ１１１）での変換前ヘッダ情報の除去が継続され、制御装置がフローを識別できるようになる。なお、Ｆｕｌｌ−ＮＡＴの場合のキーフィールドはｎｗ＿ｓｒｃ、ｎｗ＿ｄｓｔとなり、ＮＡＰＴの場合はｔｐ＿ｓｒｃ、ｔｐ＿ｄｓｔも条件に加わる。
【００３９】
以下、本実施形態では、オペレータが、継続フラグとしてＹｅｓ、キーフィールドをｎｗ＿ｓｒｃに手動で設定したとする。なお、継続フラグがＮｏの場合、ヘッダ変換テーブルに、ＡＣＴとＳＢＹの両方の変換後ヘッダ情報が揃った時点で、制御装置１４０は、パケット処理部１３０に変換前ヘッダの付与の停止を指示する（図６のＮｏ．１０２のフローエントリの削除を指示すればよい。）。変換前ヘッダの付与中は、前段スイッチ（第１スイッチ１１０）は前述したＩＰヘッダ内にある付与フラグ（図８、図９参照）をＯＮにしておき、後段スイッチ（第２スイッチ１１１）ではＯＮの場合に変換前ヘッダ情報を除去する処理を行う。
【００４０】
次に、冗長構成管理テーブルにエントリが登録された段階で、制御装置１４０は、それらの情報をもとに、前段スイッチ（第１スイッチ１１０）のフローテーブルにＳＢＹからのパケットを廃棄するフローエントリＮｏ．１と設定する。また、制御装置１４０は、後段スイッチ（第２スイッチ１１１）のフローテーブルにＳＢＹからのＡＲＰパケットを廃棄するフローエントリＮｏ．１を設定する。なお、前後段スイッチのＮｏ．０のフローエントリは、制御装置と、これらのスイッチが接続された段階で設定されているとする。
【００４１】
続いて、上記初期設定の完了後に実施可能となるパケット転送処理について説明する。
［パケット転送］
図１１〜図１４は、本発明の第１の実施形態の一連の動作を表したシーケンス図である。図１１に示すように、クライアントＣＬ１は、通信開始に当たって、ＶＩＰ＿Ｌ（アプライアンスの入力側の仮想ＩＰアドレス）宛てにＡＲＰ要求パケットを送信する（ステップｓ１１）。
【００４２】
前段スイッチ（第１スイッチ１１０）は、パケット処理部１３０内のフローテーブル（以降、単に「フローテーブル」と呼ぶ）から、受信したＡＲＰ要求パケットに適合するマッチ条件を持つエントリを検索する。ここでは、図６のＮｏ．０のフローエントリがヒットするため、前段スイッチ（第１スイッチ１１０）は、そのアクションに従って、制御装置１４０に対してＡＲＰパケットを転送する（以下、スイッチから制御装置へのパケット転送処理（フローエントリの設定要求処理）を「パケットイン」と呼ぶ。）（ステップｓ１２）。
【００４３】
制御装置１４０は、冗長構成管理テーブルの接続情報と受信パケットのヘッダから、パケットがアプライアンスのＶＩＰ＿Ｌに対するＡＲＰ要求と判定し、ＡＲＰパケットをＡＰ１２０とＡＰ１２１へ送信するようなフローエントリを前段スイッチ（第１スイッチ１１０）に設定する。ここでは、図６のＮｏ．１００のフローエントリが設定される。続いて、制御装置１４０は、前段スイッチ（第１スイッチ１１０）のポートｐ１、ｐ２からそれぞれアプライアンスＡＰ１２０とＡＰ１２１にパケット送信要求を行い、前段スイッチ（第１スイッチ１１０）にパケットを送信させる（以下、この処理を「パケットアウト」と呼ぶ。）（ステップｓ１３）。
【００４４】
アプライアンスＡＰ１２０、ＡＰ１２１は、ＡＲＰパケットを受け取り、ＶＩＰ＿Ｌに対するＭＡＣアドレスをＡＲＰ応答パケットで返信する（ステップｓ１４）。
【００４５】
前段スイッチ（第１スイッチ１１０）は、ＡＰ１２１から受け取ったＡＲＰ応答を、図６のＮｏ．１のフローエントリに従って廃棄する（ステップｓ１５）。
【００４６】
一方、前段スイッチ（第１スイッチ１１０）は、ＡＰ１２０から受け取ったＡＲＰ応答を、図６のＮｏ．０のフローエントリに従って、制御装置１４０に送信する（ステップｓ１６）。
【００４７】
制御装置１４０の経路制御部１４１は、受信したパケットがアプライアンスからのＡＲＰ応答と判定し、その送信先となる前段スイッチ（第１スイッチ１１０）のポートに出力するようなフローエントリを設定する。ここでは、送信先はＣＬ１であるため、出力先ポートはｐ０となり、図６のＮｏ．１０１のフローエントリが設定される。そして、制御装置１４０は、前段スイッチ（第１スイッチ１１０）のポートｐ０からパケットアウトさせる（ステップｓ１７）。クライアントＣＬ１はＡＲＰ応答を受け取る（ステップｓ１８）。
【００４８】
前記ＡＲＰ応答を受け取ったクライアントＣＬ１は、図１２に示すように、ＶＩＰ＿Ｌ宛てにＩＰパケットを送信する（ステップｓ１９）。
【００４９】
前段スイッチ（第１スイッチ１１０）は、Ｎｏ．０のフローエントリに従って、制御装置１４０に対して受信したＩＰパケットを送信する（ステップｓ２０）。
【００５０】
制御装置１４０は、受信したパケットがアプライアンスへのＩＰパケットと判定し、変換前ヘッダを付与し、宛先ＭＡＣアドレスをそれぞれのアプライアンス用に変換し、ＡＰ１２０とＡＰ１２１へ送信するようなフローエントリを前段スイッチ（第１スイッチ１１０）に設定する。さらに、制御装置１４０は、前段スイッチ（第１スイッチ１１０）に、パケットに対して変換前ヘッダを付与し、ポートｐ１、ｐ２からパケットアウトさせる（ステップｓ２１）。なお、冗長構成管理テーブルの継続フラグがＹｅｓのため、図６のＮｏ．１０２のフローエントリのように、アクションに変換前ヘッダ付与処理を追加するフローエントリが設定される。また、継続フラグがＹｅｓのため、ＩＰヘッダ中の付与フラグは利用しないことにする。
【００５１】
アプライアンスＡＰ１２０、ＡＰ１２１は、それぞれ自身のＮＡＴテーブルに基づいて受信パケットを変換し出力する（ステップｓ２２）。
【００５２】
後段スイッチ（第２スイッチ１１１）は、パケット処理部１３１内のフローテーブルから、受信したパケットに適合するマッチ条件を持つエントリを検索する。ここでは、図７のＮｏ．０のフローエントリがヒットするため、後段スイッチ（第２スイッチ１１１）は、そのアクションに従って、制御装置１４０に対して受信パケットを転送する（ステップｓ２３ａ、ｓ２３ｓ）。
【００５３】
制御装置１４０は、冗長構成管理テーブルを参照し、受信パケットの入力ポート情報（ｉｎｐｏｒｔ）から、後段スイッチ（第２スイッチ１１１）からの受信パケットがＡＣＴからのものか、ＳＢＹからのものかを判定し、それに基づいて、ヘッダ変換テーブルのエントリを登録する。
【００５４】
制御装置１４０は、ＡＣＴからの受信パケットでヘッダ変換テーブルにエントリを登録した場合、後段スイッチ（第２スイッチ１１１）に対し、ポートｐ０から後続パケットを出力させるフローエントリを設定する。なおこの時、冗長構成管理テーブルの継続フラグがＹｅｓの場合、制御装置１４０は、図７のＮｏ．１０１のフローエントリに示すように、変換前ヘッダの除去アクションを追加する。その後、制御装置１４０は変換前ヘッダの除去を行い、後段スイッチ（第２スイッチ１１１）にポートｐ０からパケットアウトさせる（ステップｓ２４ａ）。
【００５５】
一方、ＳＢＹからの受信パケットでヘッダ変換テーブルにエントリを登録した場合、制御装置１４０は、後続パケットを廃棄させるフローエントリを設定するとともに、当該パケットを廃棄する（ステップｓ２４ｓ）。
【００５６】
以上の結果、ＡＰ１２０経由で転送されたパケットが、ＳＶ１にて受信される（ステップｓ２５ａ）。
【００５７】
次に、前記パケットを受信したＳＶ１は、図１３に示すように、ＩＰ＿ＣＬ１への応答パケットの送信にあたり、デフォルトＧＷであるＶＩＰ＿Ｒに対してＡＲＰ要求パケットを送信する（ステップｓ３０）。
【００５８】
後段スイッチ（第２スイッチ１１１）は、パケット処理部１３１内のフローテーブルから、受信したＡＲＰパケットに適合するマッチ条件を持つエントリを検索する。ここでは、図７のＮｏ．０のフローエントリがヒットするため、後段スイッチ（第２スイッチ１１１）は、そのアクションに従って、制御装置１４０に対してＡＲＰパケットを転送する（ステップｓ３１）。
【００５９】
制御装置１４０は、冗長構成管理テーブルの接続情報と受信パケットのヘッダから、パケットがアプライアンスのＶＩＰ＿Ｒに対するＡＲＰ要求と判定し、ＡＲＰパケットをＡＰ１２０とＡＰ１２１へ送信するようなフローエントリを後段スイッチ（第２スイッチ１１１）に設定する。ここでは、図７のＮｏ．１０２のフローエントリが設定される。続いて、制御装置１４０は、後段スイッチ（第２スイッチ１１１）のポートｐ１、ｐ２からそれぞれアプライアンスＡＰ１２０とＡＰ１２１にパケットを送信させる（ステップｓ３２）。
【００６０】
アプライアンスＡＰ１２０、ＡＰ１２１は、ＡＲＰパケットを受け取り、ＶＩＰ＿Ｒに対するＭＡＣアドレスをＡＲＰ応答パケットで返信する（ステップｓ３３）。
【００６１】
後段スイッチ（第２スイッチ１１１）は、ＡＰ１２１から受け取ったＡＲＰ応答を、図７のＮｏ．１のフローエントリに従って廃棄する（ステップｓ３４）。
【００６２】
一方、後段スイッチ（第２スイッチ１１１）は、ＡＰ１２０から受け取ったＡＲＰ応答を、図７のＮｏ．０のフローエントリに従って、制御装置１４０に送信する（ステップｓ３５）。
【００６３】
制御装置１４０の経路制御部１４１は、受信したパケットがアプライアンスからＳＶ１へのＡＲＰ応答と判定し、その送信先となる後段スイッチ（第２スイッチ１１１）のポートに出力するようなフローエントリを設定する。ここでは、送信先はＳＶ１であるため出力先ポートはｐ０となり、図７のＮｏ．１０３のフローエントリが設定される。そして、制御装置１４０は、後段スイッチ（第２スイッチ１１１）のポートｐ０からパケットアウトさせる（ステップｓ３６）。ＳＶ１はＡＲＰ応答を受け取る。
【００６４】
前記ＡＲＰ応答を受け取ったＳＶ１は、図１４に示すように、ＶＩＰ＿Ｒ宛てにＩＰパケットを送信する（ステップｓ３７）。
【００６５】
後段スイッチ（第２スイッチ１１１）は、Ｎｏ．０のフローエントリに従って、制御装置１４０に対して受信したＩＰパケットを送信する（ステップｓ３８）。
【００６６】
制御装置１４０は、受信したパケットがＣＬ１へのＩＰパケットと判定し、当該ＩＰパケットをＡＰ１２０へ送信するために宛先ＭＡＣアドレス（ｄｌ＿ｄｓｔ）を変換し、ＡＰ１２１へ送信するために宛先ＭＡＣアドレス（ｄｌ＿ｄｓｔ）、送信元ＭＡＣアドレス（ｄｌ＿ｓｒｃ）、送信元ＩＰアドレス（ｎｗ＿ｓｒｃ）を変換して送信するようなフローエントリを設定する。ここでは、図７のＮｏ．１０４のフローエントリが設定される。さらに、制御装置１４０は、後段スイッチ（第２スイッチ１１１）に、受信パケットに同様の処理を行った後、ポートｐ１、ｐ２からパケットアウトさせる（ステップｓ３９）。このようなＡＰ１２１への送信時の変換を行う理由は、ＡＰ１２１が通信したＳＶ２からの戻りのパケットと見せる必要があるからである。これらの情報は経路制御部１４１から取得できる。
【００６７】
アプライアンスＡＰ１２０、ＡＰ１２１は、それぞれＩＰパケットを受信し、自身のＮＡＴテーブルに基づいてパケットヘッダを変換してから、前段スイッチ（第１スイッチ１１０）に出力する（ステップｓ４０）。
【００６８】
前段スイッチ（第１スイッチ１１０）は、パケット処理部１３０内のフローテーブルから、受信したパケットに適合するマッチ条件を持つエントリを検索する。ＡＰ１２１からのパケットは、図６のＮｏ．１のフローエントリに従って、廃棄される（ステップｓ４１）。
【００６９】
一方、ＡＰ１２０からのパケットは、図６のＮｏ．０のフローエントリに従って、制御装置１４０に転送される（ステップｓ４２）。
【００７０】
制御装置１４０は、受信パケットが、ＡＰ１２０からの折り返しパケットと判定し、前段スイッチ（第１スイッチ１１０）に、出力ポートｐ０からパケットを出力するフローエントリを設定する。ここでは、図６のＮｏ．１０３のフローエントリが設定される。制御装置１４０は、前段スイッチ（第１スイッチ１１０）にパケットアウトを指示する（ステップｓ４３）。
【００７１】
以上の結果、ＡＰ１２０経由で転送された応答パケットが、ＣＬ１にて受信される（ステップｓ４４）。
【００７２】
［ＮＡＴテーブルの更新］
続いて、アプライアンスＡＰ１２０、ＡＰ１２１において、ＮＡＴテーブルの更新が行われた場合の処理について説明する。図１５は、本発明の第１の実施形態の動作（ＮＡＴテーブル変換）を表した流れ図である。
【００７３】
ＮＡＴテーブルの更新が行われた場合、それらのアプライアンスを通過したパケットのヘッダは、前段スイッチ（第１スイッチ１１０）、もしくは、後段スイッチ（第２スイッチ１１１）のＮｏ．０のフローエントリにて捕捉され、制御装置１４０に送信されることになる。
【００７４】
ここで、例として、ＣＬ１からＶＩＰ＿Ｌ宛てに送信しているパケットについて、現在ＡＣＴである系１のＡＰ１２０のＮＡＴテーブルが更新され、ｎｗ＿ｄｓｔがＩＰ＿ＳＶ１からＩＰ＿ＳＶ３に書き変わったものとして説明する。
【００７５】
この場合、後段スイッチ（第２スイッチ１１１）は、新しいＮＡＴテーブルの情報に従ってヘッダ変換されたパケットを受信すると、Ｎｏ．０のフローエントリに従って、制御装置１４０に対し、当該パケットを送信する（ステップＳ２０１）。
【００７６】
制御装置１４０は、冗長構成管理テーブルを参照して受信パケットがどのアプライアンスが出力したパケットかを特定する。この例では、後段スイッチ（第２スイッチ１１１）のＳＷＩＤがｓｗ２、入力ポート情報（ｉｎｐｏｒｔ）がｐ１であるため、冗長構成管理テーブルのＣＬＩＤが１のエントリが該当する。また、このエントリのキーフィールド情報はｎｗ＿ｓｒｃあり、受信パケットのヘッダのｎｗ＿ｓｒｃフィールドの値はＩＰ＿ＣＬ１となっている。これらの結果から、制御装置１４０は、ヘッダ変換テーブルのＮｏ．１のエントリであると特定する。次に、制御装置１４０は、ヘッダ変換テーブルのＮｏ．１の系１の変換後ヘッダ情報のうち、ｎｗ＿ｄｓｔを、受信パケットのヘッダから取得したＩＰ＿ＳＶ３へ書き換える（ステップＳ２０２）。なお、逆向きから送信されたパケットの場合は、ｎｗ＿ｓｒｃの逆であるｎｗ＿ｄｓｔがキー情報となる。また、継続フラグがＹｅｓのため、変換前ヘッダをもとにヘッダ変換テーブルのエントリを特定してもよい。
【００７７】
次に、制御装置１４０は、系１の変換後ヘッダの書き換え前後の情報をもとに、後段スイッチ（第２スイッチ１１１）のフローエントリを書き換える。まず、図７のＮｏ．１０１のフローエントリのマッチ条件のｎｗ＿ｄｓｔをＩＰ＿ＳＶ１からＩＰ＿ＳＶ３に書き換え、Ｎｏ．１０４のフローエントリのマッチ条件のｎｗ＿ｓｒｃを ＩＰ＿ＳＶ１からＩＰ＿ＳＶ３に書き換える。その後、制御装置１４０は、後段スイッチ（第２スイッチ１１１）にポートｐ０からパケットアウトさせる（ステップＳ２０３）。
【００７８】
なお、上記の例は、アプライアンス種別がＨａｌｆ−ＮＡＴで、ＣＬ１からＳＶ１へのパケットについての一例にすぎず、実施の形態について限定するものではない。
【００７９】
［系切り替え］
続いて、ＡＰ１２０とＡＰ１２１のＡＣＴとＳＢＹの切り替えが行われた場合の動作について説明する。冗長構成を組むＡＰ１２０とＡＰ１２１のアプライアンスのうち、ＡＰ１２０に障害が発生した場合、制御装置１４０は、その通知を受け取る。この方法には、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）のＴｒａｐやアプライアンスから情報を受ける、アプライアンスを経由するパケットを監視する、または、ハートビートによる生存確認、などの方法があるが、特にこれらに限定するものではない。
【００８０】
制御装置１４０は、受け取った通知から、冗長構成管理テーブルを参照し、ＣＬＩＤが１のエントリを参照し、現在のＡＣＴ（現用系）を系２に変更し、系１の接続ポートとキーフィールド情報のｎｗ＿ｓｒｃを取得する。次に、制御装置１４０は、ヘッダ変換テーブルを参照し、ＣＬＩＤが１、現用系フィールドが系１のｎｗ＿ｓｒｃの一覧を取得する。この例ではヘッダ変換テーブルのＮｏ．１のエントリが該当する。図１６は、上記更新後の冗長構成管理テーブルを示す図であり、破線は変更された箇所を示す。
【００８１】
次に、制御装置１４０は、取得したｎｗ＿ｓｒｃ（この例ではＩＰ＿ＣＬ１）について、関連する後段スイッチ（第２スイッチ１１１）のフローエントリを書き換える。具体的には、制御装置１４０は、後段スイッチ（第２スイッチ１１１）のフローエントリのうち、マッチ条件のｎｗ＿ｓｒｃがＩＰ＿ＣＬ１のＮｏ．１００とＮｏ．１０１フローエントリを特定し（図７参照）、Ｎｏ．１００のフローエントリのアクションをｒｅｗｒｉｔｅ  ｄｌ＿ｄｓｔ＝ＭＡＣ＿ＳＶ１、ｒｅｗｒｉｔｅ  ｎｗ＿ｄｓｔ＝ＩＰ＿ＳＶ１、ｏｕｔｐｕｔ  ｐ０に変更する。また、制御装置１４０は、Ｎｏ．１０１のフローエントリのアクションを廃棄（ｄｒｏｐ）に変更する。
【００８２】
次に、制御装置１４０は、従前ＳＢＹであった系２の接続ポートｐ２に関してＡＲＰ パケットを廃棄するＮｏ．１のフローエントリについて、マッチ 条件の入力ポート情報（ｉｎｐｏｒｔ）を新ＳＢＹの接続ポートｐ１に変更する。また、Ｎｏ．１０３のフローエントリについて、マッチ条件の入力ポート情報（ｉｎｐｏｒｔ）を新ＡＣＴの接続ポートｐ２に変更する。以上で、後段スイッチ（第２スイッチ１１１）は、新ＡＣＴであるＡＰ１２１との通信パケットを（パケットヘッダを変換しながら）転送し、従前のＡＣＴであるＡＰ１２０の通信パケットを廃棄するようになる。図１８は、上記更新後の後段スイッチ（第２スイッチ１１１）のフローエントリを示す図であり、破線は変更された箇所を示す。
【００８３】
次に、制御装置１４０は、前段スイッチ（第１スイッチ１１０）のフローエントリのうち関連するものを書き換える（図７参照）。具体的には、制御装置１４０は、従前ＡＣＴであった系１の接続ポートｐ１に関してＡＲＰパケットを転送するＮｏ．１０１のフローエントリについて、マッチ条件の入力ポート情報（ｉｎｐｏｒｔ）を新ＡＣＴの接続ポートｐ２に変更する。次に、制御装置１４０は、従前ＳＢＹであった系２の接続ポートｐ２に関してＡＲＰパケットを廃棄するＮｏ．１のフローエントリについて、マッチ条件の入力ポート情報（ｉｎｐｏｒｔ）を新ＳＢＹの接続ポートｐ１に変更する。さらに、制御装置１４０は、従前ＡＣＴからＣＬ１へ返信パケットを転送するＮｏ．１０３のフローエントリについて、マッチ条件の入力ポート情報（ｉｎｐｏｒｔ）をｐ２に変更する。図１７は、上記更新後の前段スイッチ（第１スイッチ１１０）のフローエントリを示す図であり、破線は変更された箇所を示す。
【００８４】
以上で、前段スイッチ（第１スイッチ１１０）は、新ＡＣＴであるＡＰ１２１との通信パケットを（パケットヘッダを変換しながら）転送し、従前ＡＣＴであるＡＰ１２０の通信パケットを廃棄するようになる。
【００８５】
なお、系切り替え後に、系を切り戻す場合は、上記の手順を逆に戻せばよい。
【００８６】
以上のように、本実施形態によれば、後段スイッチ（第２スイッチ１１１）にて、ＡＰ１２０系とＡＰ１２１系のヘッダ変換の差分が吸収される。その結果、ＡＣＴとＳＢＹのアプライアンスが異機種であっても、ステートフルなフェールオーバが実現できる。本実施形態のように、冗長化したいアプライアンスを前段スイッチ（第１スイッチ１１０）と後段スイッチ（第２スイッチ１１１）で挟み込むことで異機種間のステートフルフェールオーバが実現できるため、アプライアンス機種選択や配置に関する自由度が増し、物理資源の割り当ての柔軟性が向上する。
【００８７】
以上、本発明の実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した実施形態では、前段スイッチ（第１スイッチ１１０）にクライアントＣＬ１が接続され、後段スイッチ（第２スイッチ１１１）にスイッチ１１２を介してサーバＳＶ１〜ＳＶ３が接続されているものとして説明したが、これらは、本発明の理解を助けるための一例であり、例示した態様に限定されるものではない。
【００８８】
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
また日本語は単複同形であり、単数で記載された用語は複数も代表する。
【符号の説明】
【００８９】
２０、２１  ネットワークアプライアンス
３０  第１のスイッチ
３１  第２のスイッチ
４０  制御装置
１１０  第１スイッチ
１１１  第２スイッチ
１１２  スイッチ
１２０、１２１  アプライアンス（ＡＰ）
１３０、１３１  パケット処理部
１４０  制御装置
１４１  経路制御部
１４２  変換ルール管理部
ｐ０、ｐ１、ｐ２  ポート
ＣＬ１  クライアント
ＳＶ１〜ＳＶ３  サーバ
【図１】
0005861772.tif 000002
【図２】
0005861772.tif 000003
【図３】
0005861772.tif 000004
【図４】
0005861772.tif 000005
【図５】
0005861772.tif 000006
【図６】
0005861772.tif 000007
【図７】
0005861772.tif 000008
【図８】
0005861772.tif 000009
【図９】
0005861772.tif 000010
【図１０】
0005861772.tif 000011
【図１１】
0005861772.tif 000012
【図１２】
0005861772.tif 000013
【図１３】
0005861772.tif 000014
【図１４】
0005861772.tif 000015
【図１５】
0005861772.tif 000016
【図１６】
0005861772.tif 000017
【図１７】
0005861772.tif 000018
【図１８】
0005861772.tif 000019