ネットワーク中に配置されたアプライアンス及びスイッチと、前記アプライアンス及び前記スイッチに接続されたコントローラとを備え、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替える場合、前記コントローラは、ショートカット処理を行った後、切り替え処理を行い、前記ショートカット処理において、前記コントローラは、前記スイッチに対して、第1エントリを前記フローテーブルに設定するように指示し、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理において、前記コントローラは、前記スイッチに対して、第2エントリを前記フローテーブルに設定するように指示し、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定するネットワークシステム。請求項1に記載のネットワークシステムであって、前記第1アプライアンスは、自身が処理するフローに関する情報を示すセッションテーブルを参照することによって、前記既存フローに属するパケットに対して前記第1パケット処理を実施し、前記コントローラは、前記第1アプライアンスの前記セッションテーブルの内容を示すセッション情報を取得し、前記コントローラは、前記セッション情報に基いて、前記スイッチに対して、前記第1エントリを前記フローテーブルに設定するように指示するネットワークシステム。請求項2に記載のネットワークシステムであって、前記ショートカット処理の前に、前記コントローラは、前記スイッチに対して、転送エントリを前記フローテーブルに設定するように指示し、前記転送エントリは、前記アプライアンス宛てのパケットを前記コントローラに転送することを指定するネットワークシステム。請求項3に記載のネットワークシステムであって、前記スイッチから転送パケットを受け取った場合、前記コントローラは、前記転送パケットのヘッダ情報と前記セッション情報とに基いて、前記転送パケットが前記既存フローに属するか否かを判定し、その後、前記転送パケットを前記スイッチに返送し、前記転送パケットが前記既存フローに属する場合、前記コントローラは、前記スイッチに対して、前記転送パケットに前記第1パケット処理を実施することを指示し、前記転送パケットが前記既存フローに属さない場合、前記コントローラは、前記スイッチに対して、前記転送パケットを前記第2アプライアンスに転送することを指示するネットワークシステム。ネットワーク中に配置されたアプライアンス及びスイッチに接続されるコントローラであって、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記コントローラは、処理装置を備え、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替える場合、前記処理装置は、ショートカット処理を行った後、切り替え処理を行い、前記ショートカット処理において、前記処理装置は、前記スイッチに対して、第1エントリを前記フローテーブルに設定するように指示し、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理において、前記処理装置は、前記スイッチに対して、第2エントリを前記フローテーブルに設定するように指示し、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定するコントローラ。アプライアンス及びスイッチが配置されたネットワークの制御方法であって、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記制御方法は、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替えることを含み、前記切り換えることは、ショートカット処理を行うことと、前記ショートカット処理の後に切り替え処理を行うこととを含み、前記ショートカット処理は、前記スイッチにおいて、第1エントリを前記フローテーブルに設定することを含み、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理は、前記スイッチにおいて、第2エントリを前記フローテーブルに設定することを含み、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定する制御方法。アプライアンス及びスイッチが配置されたネットワークの制御処理をコンピュータに実行させる制御プログラムが記録された記録媒体であって、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記制御処理は、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替えることを含み、前記切り換えることは、ショートカット処理を行うことと、前記ショートカット処理の後に切り替え処理を行うこととを含み、前記ショートカット処理は、前記スイッチに対して、第1エントリを前記フローテーブルに設定するように指示することを含み、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理は、前記スイッチに対して、第2エントリを前記フローテーブルに設定するように指示することを含み、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定する記録媒体。添付図面を参照して、本発明の実施の形態を説明する。1.構成図1は、本実施の形態に係るネットワークシステム1の構成を概略的に示すブロック図である。本実施の形態に係るネットワークシステム1は、例えば、データセンターDataCenterに適用される。ネットワークシステム1は、スイッチ10、アプライアンス20、コントローラ100、及びサーバ200を備えている。スイッチ10及びアプライアンス20は、スイッチ-アプライアンスネットワークを構成している。サーバ200は、そのスイッチ-アプライアンスネットワークに接続されている。スイッチ-アプライアンスネットワークは更に、ネットワークシステム1の外部の外部ネットワークに接続されている。コントローラ100は、制御回線図中、破線で表されているを介して、各スイッチ10及び各アプライアンス20に接続されている。図2は、本実施の形態に係るスイッチ10、アプライアンス20、及びコントローラ100の各機能構成を示している。以下、スイッチ10、アプライアンス20、及びコントローラ100の各構成を詳細に説明する。1-1.スイッチ10スイッチ10は、パケット転送等のスイッチ処理を行う。より詳細には、図2に示されるように、スイッチ10は、スイッチ処理部11、フローテーブル12、及びコントローラ用インターフェース13を備えている。図3は、フローテーブル12を概念的に示している。フローテーブル12の各エントリは、マッチ条件フロー識別情報とアクションを示している。マッチ条件は、パケットの入力ポート、送信元MACアドレス、宛先MACアドレス、送信元IPアドレス、宛先IPアドレス、送信元ポート番号、宛先ポート番号などのパラメータの組み合わせで構成される。尚、フローもそれらパラメータの組み合わせで定義される。つまり、マッチ条件は、フローを規定するフロー識別情報でもある。アクションは、マッチ条件にマッチするパケットに対して行われる処理を指定する。アクションとしては、指定ポートへのパケット出力、パケットヘッダの特定フィールドの書き換え、パケット廃棄等が挙げられる。尚、フローテーブル12は、記憶装置に格納されている。スイッチ処理部11は、フローテーブル12に従って、スイッチ処理を行う。より詳細には、スイッチ処理部11は、入力ポートを通してパケットを受信する。パケットを受信すると、スイッチ処理部11は、フローテーブル12を参照し、当該受信パケットにマッチするエントリを検索する。具体的には、スイッチ処理部11は、受信パケットのヘッダ情報を抽出し、受信パケットの入力ポート及びヘッダ情報を検索キーとして用いることにより、フローテーブル12の検索を行う。その検索キーと一致するマッチ条件を示すエントリが、受信パケットにマッチするマッチエントリである。受信パケットがいずれかのエントリのマッチ条件にマッチした場合、すなわち、マッチエントリが見つかった場合、スイッチ処理部11は、そのマッチエントリで指定されるアクションを受信パケットに対して実施する。コントローラ用インターフェース13は、制御回線を介してコントローラ100に接続されており、コントローラ100との間で通信を行う際のインターフェースとなる。また、コントローラ用インターフェース13は、コントローラ100からの指示に従って、フローテーブル12のエントリを設定追加、変更、削除等する機能を有する。更に、コントローラ用インターフェース13は、コントローラ100からの指示に従って、フローテーブル12の内容によらずともパケットを特定のポートに直接出力する機能も備える。1-2.アプライアンス20アプライアンスネットワークアプライアンス20は、ネットワークトラヒックに対して特定の処理を実行するネットワーク装置である。アプライアンス20としては、ロードバランサやファイヤーウォールが例示される。ロードバランサは、負荷分散の機能を提供する。より詳細には、ロードバランサは、外部ネットワークから仮想的なサーバ仮想サーバとして見え、クライアントは、この仮想サーバに対応する仮想IPアドレスVIPおよびポート番号を指定して要求を行う。ロードバランサは、仮想サーバに対応してあらかじめ設定された複数のサーバ実サーバの中から、実際にクライアントにサービスを提供する実サーバを一つ選択する。そして、ロードバランサは、要求パケット中の宛先アドレス例えばMACアドレス、あるいはMACアドレスとIPアドレスの両方を選択した実サーバのものに書き換えて、当該要求を実サーバに転送する。ファイヤーウォールは、通信制御を通してセキュリティを確保する機能を提供する。より詳細には、ファイヤーウォールは、IPアドレスやポート番号等の条件に応じて、パケットを通過させたり破棄したりする。また、一度通過させたパケットに対する応答パケットのみを通過させるといった制御も考えられる。このように、ファイヤーウォールは、コネクションやセッションの状態を管理して、強固なセキュリティを確保する。図2に示されるように、アプライアンス20は、アプライアンス処理部21、セッションテーブル22、セッション情報送信部23を備えている。セッションテーブル22は、自アプライアンス20が扱っているフローセッションに関する情報を示す。フローに関する情報とは、送信元IPアドレス、送信元ポート番号、宛先IPアドレス、宛先ポート番号等であり、上述のフロー識別情報と同様である。また例えば、アプライアンス20がロードバランサの場合、セッションテーブル22は、各フローに属するパケットを実際に処理する実サーバも示す。アプライアンス処理部21は、アプライアンス20としての特定の処理を実行する。例えば、アプライアンス20がロードバランサの場合、アプライアンス処理部21は、入力されたパケットのヘッダから宛先の仮想サーバの情報仮想IPアドレス、ポート番号を抽出し、当該仮想サーバに対応付けられた複数の実サーバの中から1つを選択する。そして、アプライアンス処理部21は、パケットのヘッダに含まれる宛先アドレスの情報を、選択した実サーバのものに書き換えて、送出する。また、アプライアンス処理部21は、選択した実サーバを当該フローと関連付けてセッションテーブル22に登録する。それ以降、アプライアンス処理部21は、セッションテーブル22を参照することによって、同一フローに属するパケットに対してパケット処理を実施することができる。セッション情報送信部23は、制御回線を介してコントローラ100に接続されている。このセッション情報送信部23は、コントローラ100からの要求に応じて、セッションテーブル22の内容を示すセッション情報SESをコントローラ100に送信する機能を有する。1-3.コントローラ100コントローラ100は、制御回線を介して、各スイッチ10のフローテーブル12の内容を設定する機能を有する。具体的には、コントローラ100は、エントリの設定追加、変更、削除等を指示するエントリ設定データENTを作成し、そのエントリ設定データENTを対象スイッチ10に送る。エントリ設定データENTを受け取った対象スイッチ10のコントローラ用インターフェース13は、そのエントリ設定データENTに従って、自身のフローテーブル12内のエントリの設定追加、変更、削除等を行う。このように、コントローラ100は、フローテーブル12の内容の設定を通してスイッチ10の動作を制御し、それにより、ネットワークトラフィックを適宜制御することができる。このような処理を実現するためのコントローラ100とスイッチ10との間のインタフェース方式としては、例えば、Openflowhttp://www.openflowswitch.org/を参照が挙げられる。この場合、OpenflowControllerがコントローラ100となり、OpenflowSwitchが各スイッチ10となる。図4は、本実施の形態に係るコントローラ100の構成を示すブロック図である。コントローラ100は、処理装置101、記憶装置102、及び通信装置103を備えている。処理装置101は、CPUCentralProcessingUnitを含む。記憶装置102は、例えば、RAMRandomAccessMemoryやHDDHardDiskDriveを含む。通信装置103は、例えば、外部との通信を行うネットワークカードを含む。記憶装置102には、接続情報CON、セッション情報SES、エントリ設定データENT等が格納される。接続情報CONは、ネットワークの接続関係を示す。つまり、接続情報CONは、スイッチ10、アプライアンス20、サーバ200といった構成要素間の接続関係トポロジを示す。より詳細には、接続情報CONは、各構成要素の各ポートがどの構成要素のどのポートに接続されているかを示す。各構成要素の識別情報としては、MACアドレスやIPアドレスなどが挙げられる。セッション情報SESは、アプライアンス20が有するセッションテーブル22の内容を示す。このセッション情報SESは、アプライアンス20から取得することができる。詳細は後述される。エントリ設定データENTは、上述の通り、対象スイッチ10に対してエントリの設定追加、変更、削除等を指示する情報である。処理装置101は、本実施の形態に係るネットワーク制御処理を行う。より詳細には、図4に示されるように、処理装置101は、スイッチ制御部110、アプライアンス制御部120、及び変換部130を備えている。これら機能ブロックは、処理装置101が制御プログラムPROGを実行することにより実現される。制御プログラムPROGは、コンピュータ処理装置101によって実行されるコンピュータプログラムであり、記憶装置102に格納される。制御プログラムPROGは、コンピュータ読み取り可能な記録媒体に格納されていてもよい。スイッチ制御部110は、制御回線を介してスイッチ10と接続され、通信を行う。このスイッチ制御部110は、スイッチ10に対して、所望のエントリをフローテーブル12に設定するよう指示する機能を有している。具体的には、スイッチ制御部110は、所望のエントリの設定を指示するエントリ設定データENTを作成し、そのエントリ設定データENTを記憶装置102に格納する。エントリ設定データENTは、後述される変換部130によって作成される場合もある。スイッチ制御部110は、エントリ設定データENTを記憶装置102から読み出し、そのエントリ設定データENTをスイッチ10に送信する。これにより、所望のエントリを当該スイッチ10のフローテーブル12に設定することができる。アプライアンス制御部120は、制御回線を介してアプライアンス20と接続され、通信を行う。このアプライアンス制御部120は、所望のアプライアンス20からセッション情報SESを取得する機能を有している。より詳細には、アプライアンス制御部120は、所望のアプライアンス20に対して、セッション情報SESの送付を要求する。その要求に応答して、当該アプライアンス20のセッション情報送信部23は、自身のセッションテーブル22の内容を示すセッション情報SESを、コントローラ100に送信する。アプライアンス制御部120は、当該アプライアンス20からセッション情報SESを受け取り、そのセッション情報SESを記憶装置102に格納する。変換部130は、セッション情報SESをエントリ設定データENTに変換する機能を有している。上述の通り、アプライアンス20は、セッションテーブル22を参照することによって、あるフローに属するパケットに対して所定のパケット処理を実施する。そのセッションテーブル22の内容をスイッチ10のフローテーブル12に反映させることができれば、スイッチ10は、同一フローに属するパケットに対して同じパケット処理を行うことができるはずである。すなわち、アプライアンス20が受信パケットに対して行っていた所定のパケット処理を、スイッチ10に肩代わりさせることができる。そのために、変換部130は、セッション情報SESを記憶装置102から読み出し、そのセッション情報SESに応じたエントリ設定データENTを作成する。作成されるエントリ設定データENTは、アプライアンス20と同じパケット処理を実現するエントリの設定を、スイッチ10に対して指示する。変換部130は、作成したエントリ設定データENTを記憶装置102に格納する。2.処理フロー以下、本実施の形態に係るネットワーク制御処理をより詳細に説明する。例として、図5で示される状態を考える。図5において、第1アプライアンス20-1はアクティブなアプライアンス20であり、一方、第2アプライアンス20-2はスタンバイ状態にある。スイッチ10のフローテーブル12は、アプライアンス20宛てのパケットを第1アプライアンス20-1に転送することを指定するエントリを含んでいる。フローFLOW0は、現在アプライアンス20によって処理されている既存フローであり、当該既存フローFLOW0に属するパケットの宛先はアプライアンス20である。スイッチ10は、既存フローFLOW0に属するパケットを受け取ると、フローテーブル12中のマッチエントリに従って、受信パケットを第1アプライアンス20-1に転送する。第1アプライアンス20-1は、既存フローFLOW0に属するパケットを受け取り、セッションテーブル22に従って、当該受信パケットに対して所定のパケット処理ロードバランサとしての処理、ファイヤーウォールとしての処理、等を実施する。ここで、使用するアプライアンス20を、第1アプライアンス20-1から第2アプライアンス20-2に切り替えることを考える。つまり、第1アプライアンス20-1を保守などのために停止させ、別の第2アプライアンス20-2にその機能を移行することを考える。図6は、その場合の処理を示すフローチャートである。2-1.収集処理ステップS10まず、コントローラ100は、収集処理を行うステップS10。図7及び図2を参照して、収集処理を説明する。ステップS11:コントローラ100は、アプライアンス20宛のパケットを第1アプライアンス20-1ではなくコントローラ100に集めるための処理を行う。そのために、コントローラ100のスイッチ制御部110は、転送エントリの設定を指示するエントリ設定データENT0を作成する。その転送エントリは、アプライアンス20宛てのパケットをコントローラ100に転送することを指定する。スイッチ制御部110は、そのエントリ設定データENT0をスイッチ10に送信する。すなわち、スイッチ制御部110は、スイッチ10に対して、転送エントリをフローテーブル12に設定するよう指示する。スイッチ10のコントローラ用インターフェース13は、コントローラ100からエントリ設定データENT0を受け取る。コントローラ用インターフェース13は、そのエントリ設定データENT0に従って、上記転送エントリをフローテーブル12に設定する。その後、スイッチ処理部11は、アプライアンス20宛てのパケットを受け取ると、当該転送エントリに従って、受信パケットをコントローラ100に転送する。少なくとも既存フローFLOW0に属するパケットは、第1アプライアンス20-1ではなくコントローラ100に転送されることになる。このパケットに対するコントローラ100の処理については、後述する第2-4節参照。ステップS12:また、コントローラ100は、移行元の第1アプライアンス20-1からセッション情報SESを取得する。より詳細には、コントローラ100のアプライアンス制御部120は、第1アプライアンス20-1に対して、セッション情報SESの送付を要求する。その要求に応答して、第1アプライアンス20-1のセッション情報送信部23は、自身のセッションテーブル22の内容を示すセッション情報SESを、コントローラ100に送信する。アプライアンス制御部120は、第1アプライアンス20-1からセッション情報SESを受け取る。そのセッション情報SESは、移行元の第1アプライアンス20-1が既存フローFLOW0に属するパケットに対して実施していたパケット処理に関する情報を含んでいる。2-2.ショートカット処理ステップS20次に、コントローラ100は、ショートカット処理を行うステップS20。ショートカット処理とは、アプライアンス20がパケットに対して行っていた所定のパケット処理を、スイッチ10に肩代わりさせることである。つまり、ショートカット処理とは、アプライアンス20を介することなく、アプライアンス20と同等のパケット処理をスイッチ10に行わせることである。図8及び図2を参照して、ショートカット処理を説明する。ステップS21:移行元の第1アプライアンス20-1が扱っていた既存フロー既存セッションの各々に関して、ショートカット処理が行われる。ここでは、代表として、上述の既存フローFLOW0に関するショートカット処理を説明する。コントローラ100は、既存フローFLOW0に関して、次のような処理を行うステップS22、S23。ステップS22:コントローラ100の変換部130は、既出のステップS12で取得したセッション情報SESに基いて、第1エントリの設定を指示する第1エントリ設定データENT1を作成する。その第1エントリは、既存フローFLOW0に属するパケットに対して、第1アプライアンス20-1と同じパケット処理を実施することを指定する。既存フローFLOW0のフロー識別情報は、セッション情報SESから分かる。また、第1アプライアンス20-1が既存フローFLOW0に属するパケットに対して行っていたパケット処理も、セッション情報SESから分かる。そのパケット処理エントリのアクションとしてパケット転送が必要な場合、接続情報CONを参照することによって出力ポートを把握することができる。すなわち、変換部130は、セッション情報SES及び接続情報CONを参照することによって、セッション情報SESに応じた第1エントリ設定データENT1を作成することができる。ステップS23:コントローラ100のスイッチ制御部110は、作成された第1エントリ設定データENT1をスイッチ10に送信する。すなわち、スイッチ制御部110は、スイッチ10に対して、上記第1エントリをフローテーブル12に設定するよう指示する。スイッチ10のコントローラ用インターフェース13は、コントローラ100から第1エントリ設定データENT1を受け取る。コントローラ用インターフェース13は、その第1エントリ設定データENT1に従って、上記第1エントリをフローテーブル12に設定する。その後、スイッチ処理部11は、既存フローFLOW0に属するパケットを受け取ると、当該第1エントリに従って、第1アプライアンス20-1と同じパケット処理を当該受信パケットに対して行う。すなわち、既存フローFLOW0に属するパケットは、もはや第1アプライアンス20-1を経由することなく処理される。2-3.切り替え処理ステップS30次に、コントローラ100は、切り替え処理を行うステップS30。図9及び図2を参照して、切り替え処理を説明する。この時点で、アクティブなアプライアンス20は、第2アプライアンス20-2に変更される。ステップS31:コントローラ100は、アプライアンス20宛の新規フローを移行先の第2アプライアンス20-2に転送するための処理を行う。そのために、コントローラ100のスイッチ制御部110は、第2エントリの設定を指示する第2エントリ設定データENT2を作成する。その第2エントリは、アプライアンス20宛てのパケット但し、既存フローFLOW0以外の新規フローに属するパケットを、第2アプライアンス20-2に転送することを指定する。スイッチ制御部110は、その第2エントリ設定データENT2をスイッチ10に送信する。すなわち、スイッチ制御部110は、スイッチ10に対して、第2エントリをフローテーブル12に設定するよう指示する。スイッチ10のコントローラ用インターフェース13は、コントローラ100から第2エントリ設定データENT2を受け取る。コントローラ用インターフェース13は、その第2エントリ設定データENT2に従って、上記第2エントリをフローテーブル12に設定する。その後、スイッチ処理部11は、新規フローFLOW1に属するアプライアンス20宛てのパケットを受け取ると、当該第2エントリに従って、当該受信パケットを第2アプライアンス20-2に転送する。つまり、既存フローFLOW0と異なる新規フローFLOW1に属するパケットは、移行先の第2アプライアンス20-2に転送される。2-4.一時パケット処理上述のステップS11の結果、アプライアンス20宛てのパケットは、しばらくの間、コントローラ100に転送されることになる。コントローラ100は、その転送パケットに対して一時パケット処理を行う。この一時パケット処理は、上述のステップS10~S30と並行して行われる。図10を参照して、一時パケット処理を説明する。コントローラ100のスイッチ制御部110は、スイッチ10から転送パケットを受け取るステップS41。スイッチ制御部110は、転送パケットのヘッダ情報と上述のセッション情報SESとに基いて、転送パケットが既存フローに属するか否かを判定するステップS42。転送パケットが既存フローに属する場合ステップS43;Yes、第1アプライアンス20-1と同等のパケット処理が実行されるステップS44。具体的には、スイッチ制御部110は、転送パケットをスイッチ10に返送し、更に、スイッチ10に対して転送パケットに第1アプライアンス20-1と同じパケット処理を実施することを指示する。スイッチ10のコントローラ用インターフェース13は、コントローラ100からの指示に従って、転送パケットに対して第1アプライアンス20-1と同じパケット処理を実施する。あるいは、スイッチ制御部110は、上記ステップS23の完了後に、転送パケットをスイッチ10に返送してもよい。一方、転送パケットが新規フローに属する場合ステップS43;No、当該パケットは第2アプライアンス20-2に転送されるステップS45。具体的には、スイッチ制御部110は、転送パケットをスイッチ10に返送し、更に、スイッチ10に対して転送パケットを第2アプライアンス20-2に転送することを指示する。スイッチ10のコントローラ用インターフェース13は、コントローラ100からの指示に従って、転送パケットを第2アプライアンス20-2に出力する。尚、ステップS42において、スイッチ制御部110はまず、転送パケットのSYNフラグをチェックしてもよい。SYNフラグが立っていれば、それは新規セッションを意味する。従って、その場合、スイッチ制御部110は直ちにステップS45を実行することができる。このことは、処理時間の短縮に寄与する。また、ステップS45により転送された新規フローのパケットについて、第2アプライアンスに転送することを指示するエントリを追加で設定してもよい。これにより、一度新規フローとして処理されたフローに属する後続パケットが再度コントローラ100に転送されないようにすることができる。このことは、コントローラ100の処理時間の短縮や負荷の軽減に寄与する。2-5.効果以上に説明されたように、本実施の形態によれば、ショートカット処理ステップS20が行われる。これにより、移行元の第1アプライアンス20-1が行っていた所定のパケット処理をスイッチ10に肩代わりさせ、既存フロー既存セッションを維持することが可能となる。そして、ショートカット処理ステップS20の完了時点で、第1アプライアンス20-1を経由する既存フローは無くなる。従って、その時点で、第1アプライアンス20-1をネットワークから切り離すことが可能となる。すなわち、第1アプライアンス20-1を利用する全てのセッションが終了するのを待つ必要はなく、また、不定期間のタイムアウトを設定する必要もない。予測可能な時間で、且つ、既存フローを切断することなく、第1アプライアンス20-1の動作を停止させることが可能である。また、移行先の第2アプライアンス20-2は、移行元の第1アプライアンス20-1からセッション情報SESを受け取る機構を有していなくてもよい。従って、第1アプライアンス20-1と第2アプライアンス20-2のベンダーが互いに異なっていても、本発明を容易に実装することができる。更に、アプライアンス20がネットワーク上に一つしか存在しない場合、新規セッションは利用できないが、ショートカット処理によって既存セッションをそのまま維持することも可能である。3.具体例以下、本実施の形態に係るアプライアンス切り替え処理の具体例を説明する。ここでは、図11に示されるようなネットワーク構成を考える。図11において、アプライアンス20としてのロードバランサ20-1、20-2、及び実サーバとしてのサーバ200-1~200-3が、スイッチ10に接続されている。ロードバランサ20-1はアクティブ状態であり、ロードバランサ20-2はスタンバイ状態である。ロードバランサ20では、仮想サーバに対応した仮想IPアドレスVIP1がTCPポート80でサービスされる。その仮想IPアドレスVIP1に対応する実サーバ群が、サーバ200-1~200-3である。サーバ200-1、200-2、200-3のそれぞれのIPアドレスは、IP1、IP2、IP3であり、それぞれのMACアドレスはMAC1、MAC2、MAC3である。また、各サーバ200のサービスポートは、仮想サーバと同じTCPポート80となっている。クライアント300は、外部ネットワークからロードバランサ20が提供する仮想サーバを通じて、実サーバ200にアクセスする。外部ネットワークと接続しているルータには、MACアドレスEXTによってロードバランサ20から到達可能である。また、実サーバ群200は、戻りパケットを処理させるためデフォルトゲートウェイとしてロードバランサ20を指定しており、そのIPアドレスはLBである。ロードバランサ20-1、20-2はそれぞれMACアドレスLB1、LB2をもつ。図12は、スイッチ10のフローテーブル12の状態を示している。フローテーブル12中のアスタリスクは任意であることを表す。エントリF1は、ロードバランサ20VIP1宛てのパケットをロードバランサ20-1に転送することを指定している。エントリF2は、サーバ200-1IP1、MAC1宛てのパケットをサーバ200-1に転送することを指定している。エントリF3は、サーバ200-2IP2、MAC2宛てのパケットをサーバ200-2に転送することを指定している。エントリF4は、サーバ200-3IP3、MAC3宛てのパケットをサーバ200-3に転送することを指定している。クライアント300は、ロードバランサ20に対してTCP接続要求を行う。クライアント300から送出されるパケットの宛先IPアドレスはVIP1となっている。スイッチ10は、そのパケットを受信すると、図12で示されるフローテーブル12を参照する。このとき、エントリF1がヒットエントリとなるため、スイッチ10は、受信パケットをロードバランサ20-1に転送する。ロードバランサ20-1は、そのパケットを受信し、当該フローを処理する実サーバとして例えばサーバ200-1を選択する。ロードバランサ20-1は、受信パケットに対してパケット処理を行う。具体的には、ロードバランサ20-1は、宛先IPアドレスをIP1に書き換え、宛先MACアドレスをMAC1に書き換えた後、当該パケットをサーバ200-1に向けて送信する。スイッチ10は、そのパケットを受信すると、図12で示されるフローテーブル12を参照する。このとき、エントリF2がヒットエントリとなるため、スイッチ10は、受信パケットをサーバ200-1に転送する。サーバ200-1からクライアント300に対する応答パケットは、宛先IPアドレスと宛先ポート番号がクライアント300で、宛先MACアドレスはLB1となっている。ロードバランサ20-1は、送信元IPアドレスをVIP1に、宛先MACアドレスをEXTに書き換え、応答パケットを外部ネットワークに転送する。クライアント300はこれを受信する。この状態において、アクティブなロードバランサ20を、ロードバランサ20-1からロードバランサ20-2に切り替えることを考える。ステップS11:コントローラ100は、転送エントリの設定を指示するエントリ設定データENT0をスイッチ10に送信する。その結果、図13に示されるように、エントリF1は、ロードバランサ20VIP1宛てのパケットをコントローラ100に転送することを指定するように書き換えられる。コントローラ100は、ロードバランサ20宛てのパケットを一時的に受け取り、上述の一時パケット処理を行う。ステップS12:また、コントローラ100は、移行元のロードバランサ20-1からセッション情報SESを取得する。そのセッション情報SESは、ロードバランサ20-1が受信パケットに対して行っていた上記パケット処理に関する情報を含んでいる。ステップS20:コントローラ100は、セッション情報SESに基いて、第1エントリの設定を指示する第1エントリ設定データENT1を作成する。その第1エントリは、既存フローに属するパケットに対して、ロードバランサ20-1と同じパケット処理を実施することを指定する。コントローラ100は、その第1エントリ設定データENT1をスイッチ10に送信する。スイッチ10は、その第1エントリ設定データENT1に従って、第1エントリをフローテーブル12に設定する。図14は、ある1つの既存フロークライアントIPアドレス=CIP1、ポート番号=12345、宛先IPアドレス=VIP1、宛先ポート番号=80に関する第1エントリF5が設定されたフローテーブル12を示している。第1エントリF5は、当該既存フローに属するパケットに対して、宛先IPアドレスをIP1に書き換え、宛先MACアドレスをMAC1に書き換えた後、実サーバ200-1に転送することを指定している。この第1エントリF5は、エントリF1よりも高い優先度でフローテーブル12に設定される。その結果、当該既存フローに属するパケットは、ロードバランサ20-1を経由することなく、実サーバ200-1に直接送り届けられるようになる。尚、エントリF5’は、実サーバ200-1からクライアント300への戻りトラフィックのショートカットを実現するためのものである。このエントリF5’も、上記第1エントリF5と同様に設定される。図15は、複数の異なる既存フローに対して、それぞれ第1エントリF5~Fn及びF5’~Fn’が設定された場合を示している。第1エントリF5~Fn及びF5’~Fn’の各々は、図14の場合と同様に設定される。ステップS30:コントローラ100は、第2エントリの設定を指示する第2エントリ設定データENT2を作成する。その第2エントリは、ロードバランサ20宛てのパケット但し、既存フロー以外の新規フローに属するパケットを、ロードバランサ20-2に転送することを指定する。コントローラ100は、その第2エントリ設定データENT2をスイッチ10に送信する。スイッチ10は、その第2エントリ設定データENT2に従って、第2エントリをフローテーブル12に設定する。本例では、図16に示されるように、エントリF1が、ロードバランサ20VIP1宛てのパケットをロードバランサ20-2に転送することを指定するように書き換えられる。その結果、既存フローに属するパケットは、上記第1エントリF5~Fn、F5’~Fn’に従って、ロードバランサ20-1を経由することなく処理され、一方、既存フロー以外の新規フローに属するパケットは、エントリF1に従って、ロードバランサ20-2に転送される。このようにして、既存フローを切断することなく、アクティブなロードバランサ20を短時間で切り替えることが可能となる。ファイヤーウォールの場合も同様である。尚、アクティブなロードバランサがロードバランサ20-2に切り替わると、ロードバランサ20-1のIPアドレスVIP1およびLBはロードバランサ20-2に引き継がれることになる。このIPアドレスに対応するMACアドレスがLB1からLB2に変化したことは、ARPAddressResolutionProtocolの仕組みによってサーバ200にも伝えられる。以上、本発明の実施の形態が添付の図面を参照することにより説明された。但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。上記の実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。付記1ネットワーク中に配置されたアプライアンス及びスイッチと、前記アプライアンス及び前記スイッチに接続されたコントローラとを備え、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替える場合、前記コントローラは、ショートカット処理を行った後、切り替え処理を行い、前記ショートカット処理において、前記コントローラは、前記スイッチに対して、第1エントリを前記フローテーブルに設定するように指示し、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理において、前記コントローラは、前記スイッチに対して、第2エントリを前記フローテーブルに設定するように指示し、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定するネットワークシステム。付記2付記1に記載のネットワークシステムであって、前記第1アプライアンスは、自身が処理するフローに関する情報を示すセッションテーブルを参照することによって、前記既存フローに属するパケットに対して前記第1パケット処理を実施し、前記コントローラは、前記第1アプライアンスの前記セッションテーブルの内容を示すセッション情報を取得し、前記コントローラは、前記セッション情報に基いて、前記スイッチに対して、前記第1エントリを前記フローテーブルに設定するように指示するネットワークシステム。付記3付記2に記載のネットワークシステムであって、前記ショートカット処理の前に、前記コントローラは、前記スイッチに対して、転送エントリを前記フローテーブルに設定するように指示し、前記転送エントリは、前記アプライアンス宛てのパケットを前記コントローラに転送することを指定するネットワークシステム。付記4付記3に記載のネットワークシステムであって、前記スイッチから転送パケットを受け取った場合、前記コントローラは、前記転送パケットのヘッダ情報と前記セッション情報とに基いて、前記転送パケットが前記既存フローに属するか否かを判定し、その後、前記転送パケットを前記スイッチに返送し、前記転送パケットが前記既存フローに属する場合、前記コントローラは、前記スイッチに対して、前記転送パケットに前記第1パケット処理を実施することを指示し、前記転送パケットが前記既存フローに属さない場合、前記コントローラは、前記スイッチに対して、前記転送パケットを前記第2アプライアンスに転送することを指示するネットワークシステム。付記5ネットワーク中に配置されたアプライアンス及びスイッチに接続されるコントローラであって、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記コントローラは、処理装置を備え、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替える場合、前記処理装置は、ショートカット処理を行った後、切り替え処理を行い、前記ショートカット処理において、前記処理装置は、前記スイッチに対して、第1エントリを前記フローテーブルに設定するように指示し、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理において、前記処理装置は、前記スイッチに対して、第2エントリを前記フローテーブルに設定するように指示し、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定するコントローラ。付記6アプライアンス及びスイッチが配置されたネットワークの制御方法であって、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記制御方法は、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替えることを含み、前記切り換えることは、ショートカット処理を行うことと、前記ショートカット処理の後に切り替え処理を行うこととを含み、前記ショートカット処理は、前記スイッチにおいて、第1エントリを前記フローテーブルに設定することを含み、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理は、前記スイッチにおいて、第2エントリを前記フローテーブルに設定することを含み、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定する制御方法。付記7アプライアンス及びスイッチが配置されたネットワークの制御処理をコンピュータに実行させる制御プログラムであって、前記スイッチは、フローテーブルを備え、前記フローテーブルの各エントリは、マッチ条件にマッチするパケットに対して行われるアクションを指定し、前記スイッチは、パケットを受け取ると前記フローテーブルを参照し、前記受け取ったパケットにマッチするエントリで指定される前記アクションを前記受け取ったパケットに対して行い、前記アプライアンスとしての第1アプライアンスは、既存フローに属するパケットに対して第1パケット処理を実施し、前記制御処理は、前記アプライアンスを前記第1アプライアンスから第2アプライアンスに切り替えることを含み、前記切り換えることは、ショートカット処理を行うことと、前記ショートカット処理の後に切り替え処理を行うこととを含み、前記ショートカット処理は、前記スイッチに対して、第1エントリを前記フローテーブルに設定するように指示することを含み、前記第1エントリは、前記既存フローに属するパケットに対して前記第1パケット処理を実施することを指定し、前記切り替え処理は、前記スイッチに対して、第2エントリを前記フローテーブルに設定するように指示することを含み、前記第2エントリは、前記アプライアンス宛てのパケットであって前記既存フロー以外の新規フローに属するパケットを、前記第2アプライアンスに転送することを指定する制御プログラム。本出願は、2010年2月1日に出願された日本国特許出願2010-020391を基礎とする優先権を主張し、その開示の全てをここに取り込む。