(57)【特許請求の範囲】
【請求項１】
外部から設定された制御情報に基づいてパケットを処理するスイッチと、前記スイッチに前記制御情報を設定する制御装置と、の間に配置され、
前記制御装置から受信した制御情報と、前記制御情報のスイッチでの設定状態を示す情報とをそれぞれ記憶する制御情報記憶部と、
前記スイッチが保持する制御情報の増大を防ぐ所定の制御ポリシーに基づいて、前記制御装置から受信した制御内容を、前記スイッチに保持されている制御情報に反映させる制御情報変換部と、
を備える制御メッセージ中継装置。
【請求項２】
前記スイッチから制御装置に対する制御情報の送信要求メッセージを受信した場合、前記制御情報記憶部を参照して、前記制御装置に代わって前記制御情報を送信する請求項１の制御メッセージ中継装置。
【請求項３】
前記制御情報変換部は、前記制御装置から送信された制御情報に含まれる適用するパケットを特定するためのマッチ条件を変更する請求項１又は２の制御メッセージ中継装置。
【請求項４】
前記制御情報変換部は、前記スイッチが保持する制御情報のエントリ数が減るよう、前記マッチ条件を、前記制御装置が設定した内容よりも適用対象の広い内容に変更する請求項３の制御メッセージ中継装置。
【請求項５】
さらに、
複数のスイッチを、１つのスイッチとして認識させるための対応付けを記憶する結合スイッチ構成設定部を備え、
前記制御情報変換部は、さらに、前記結合スイッチ構成設定部を参照して、前記制御装置に、前記複数のスイッチを前記１つのスイッチとして認識させるように前記制御装置と前記結合スイッチを構成するスイッチ間の制御メッセージを変換する請求項１から４いずれか一の制御メッセージ中継装置。
【請求項６】
前記制御装置又はスイッチとしての機能を有し、他の制御メッセージ中継装置と階層的に接続されている請求項１から５いずれか一の制御メッセージ中継装置。
【請求項７】
前記制御装置と前記スイッチのいずれか一方から他方に宛てられた制御メッセージの変換ルールを保持し、
前記変換ルールを参照して、前記制御装置と前記スイッチとの間の制御メッセージを変換する請求項１から６いずれか一の制御メッセージ中継装置。
【請求項８】
さらに、前記制御情報記憶部に記憶されている制御情報の有効期限を管理する制御情報タイマーカウント部を備え、
スイッチに代わって、前記制御情報の有効期限を管理する請求項１から７いずれか一の制御メッセージ中継装置。
【請求項９】
前記スイッチにおいて制御情報を保持するためのリソースが不足した際に、前記スイッチが保持する制御情報を入れ替えるために、前記制御装置に代わって前記制御情報を送信する請求項２の制御メッセージ中継装置。
【請求項１０】
外部から設定された制御情報に基づいてパケットを処理するスイッチと、前記スイッチに前記制御情報を設定する制御装置と、の間に配置された制御メッセージ中継装置が、
前記スイッチが保持する制御情報の増大を防ぐ所定の制御ポリシーに基づいて、前記制御装置から受信した制御内容を、前記スイッチに保持されている制御情報に反映させるステップと、
前記制御装置から受信した制御情報と、前記制御情報のスイッチでの設定状態を示す情報とをそれぞれ記憶する制御情報記憶部の内容を更新するステップと、
を含む制御メッセージ中継方法。
【請求項１１】
前記スイッチから制御装置に対する制御情報の送信要求メッセージを受信した場合、前記制御情報記憶部を参照して、前記制御装置に代わって前記制御情報を送信する請求項１０の制御メッセージ中継方法。
【請求項１２】
前記反映させるステップにおいて、前記制御装置から送信された制御情報に含まれる適用するパケットを特定するためのマッチ条件を変更する請求項１０又は１１の制御メッセージ中継方法。
【請求項１３】
前記反映させるステップにおいて、前記スイッチが保持する制御情報のエントリ数が減るよう、前記マッチ条件を、前記制御装置が設定した内容よりも適用対象の広い内容に変更する請求項１２の制御メッセージ中継方法。
【請求項１４】
複数のスイッチを、１つのスイッチとして認識させるための対応付けを、結合スイッチ構成設定部に記憶するステップを含み、
前記反映させるステップにおいて、さらに、前記結合スイッチ構成設定部を参照して、前記制御装置に、前記複数のスイッチを前記１つのスイッチとして認識させるように前記制御装置と前記結合スイッチを構成するスイッチ間の制御メッセージを変換する請求項１０から１３いずれか一の制御メッセージ中継方法。
【請求項１５】
前記制御装置と前記スイッチのいずれか一方から他方に宛てられた制御メッセージの変換ルールを保持するステップと、
前記変換ルールを参照して、前記制御装置と前記スイッチとの間の制御メッセージを変換するステップと、を含む、請求項１０から１４いずれか一の制御メッセージ中継方法。
【請求項１６】
外部から設定された制御情報に基づいてパケットを処理するスイッチと、前記スイッチに前記制御情報を設定する制御装置と、の間に配置されたコンピュータに、
前記スイッチが保持する制御情報の増大を防ぐ所定の制御ポリシーに基づいて、前記制御装置から受信した制御内容を、前記スイッチに保持されている制御情報に反映させる処理と、
前記制御装置から受信した制御情報と、前記制御情報のスイッチでの設定状態を示す情報とをそれぞれ記憶する制御情報記憶部の内容を更新する処理と、
を実行させるプログラム。
【請求項１７】
前記スイッチから制御装置に対する制御情報の送信要求メッセージを受信した場合、前記制御情報記憶部を参照して、前記制御装置に代わって前記制御情報を送信する処理を、前記コンピュータに実行させる請求項１６のプログラム。
【請求項１８】
前記反映させる処理において、前記制御装置から送信された制御情報に含まれる適用するパケットを特定するためのマッチ条件を変更する処理を、前記コンピュータに実行させる、請求項１６又は１７のプログラム。
【請求項１９】
前記反映させる処理において、前記スイッチが保持する制御情報のエントリ数が減るよう、前記マッチ条件を、前記制御装置が設定した内容よりも適用対象の広い内容に変更する処理を、前記コンピュータに実行させる、請求項１８のプログラム。
【請求項２０】
複数のスイッチを、１つのスイッチとして認識させるための対応付けを、結合スイッチ構成設定部に記憶する処理を前記コンピュータに実行させ、
前記反映させるステップにおいて、さらに、前記結合スイッチ構成設定部を参照して、前記制御装置に、前記複数のスイッチを前記１つのスイッチとして認識させるように前記制御装置と前記結合スイッチを構成するスイッチ間の制御メッセージを変換する処理を、前記コンピュータに実行させる、請求項１６から１９いずれか一のプログラム。
【請求項２１】
前記制御装置と前記スイッチのいずれか一方から他方に宛てられた制御メッセージの変換ルールを保持する処理と、
前記変換ルールを参照して、前記制御装置と前記スイッチとの間の制御メッセージを変換する処理と、を前記コンピュータに実行させる、請求項１６から２０いずれか一のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願についての記載）
本発明は、日本国特許出願：特願２０１３−０４８３２０号（２０１３年０３月１１日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、制御メッセージ中継装置、制御メッセージの中継方法及びプログラムに関し、特に、集中制御型のネットワークの制御装置とスイッチ間の制御メッセージを中継する制御メッセージ中継装置、制御メッセージの中継方法及びプログラムに関する。
【背景技術】
【０００２】
非特許文献１、２に、コントロール／データプレーン分離がされたオープンフロー（ＯｐｅｎＦｌｏｗ）と呼ばれる技術が記載されている。オープンフローは、オープンフローコントローラと呼ばれる制御装置が、配下のスイッチに、パケットの転送ルールやヘッダ変換ルールを定めた制御情報（フローエントリ）を設定し、このスイッチが制御情報を参照して受信パケットを処理する。【０００３】
非特許文献３には、上記オープンフローの拡張技術として、ＦｌｏｗＶｉｓｏｒと呼ばれるスイッチ仮想化技術が提案されている。ＦｌｏｗＶｉｓｏｒは、複数のオープンフローコントローラとスイッチとの間にＦｌｏｗＶｉｓｏｒと呼ばれる中継機器を配置する。そして、ＦｌｏｗＶｉｓｏｒは、オープンフローコントローラからの制御メッセージをインターセプトし、リソース割り当てポリシーに従って、スイッチへ設定するかどうかを決定する。また、スイッチからの制御メッセージはリソース割り当てポリシーに従って、対応するネットワークコントローラへと転送する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  ＩｎＮＯｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２５（２０１３）年１月９日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献２】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．３．１  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０４）、［ｏｎｌｉｎｅ］、［平成２５（２０１３）年１月９日検索］、インターネット〈URL:https://www.opennetworking.org/images/stories/downloads/specification/openflow-spec-v1.3.1.pdf〉
【非特許文献３】“ＦｌｏｗＶｉｓｏｒ：  Ａ  Ｎｅｔｗｏｒｋ  Ｖｉｒｔｕａｌｉｚａｔｉｏｎ  Ｌａｙｅｒ”、［ｏｎｌｉｎｅ］、［平成２５（２０１３）年１月９日検索］、インターネット〈http://www.openflow.org/downloads/technicalreports/openflow-tr-2009-1-flowvisor.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００５】
以下の分析は、本発明によって与えられたものである。オープンフローに代表される集中制御型のネットワークのスイッチには、制御装置から受信した制御情報を保持し、高速にパケットを処理することが要求される。このため、集中制御型のネットワークのスイッチは、制御情報を保持するためのＣＡＭ（Ｃｏｎｔｅｎｔ  Ａｄｄｒｅｓｓａｂｌｅ  Ｍｅｍｏｒｙ）を備えているが、ＣＡＭは高価なため、搭載量が限定される場合がある。また、ＣＡＭの搭載量はスイッチごとに様々である。この結果、１つのスイッチに設定できる制御情報のエントリの数が異なっているような状況が起こりうるが、制御装置が実装する制御アルゴリズムは、そのようなスイッチ毎のＣＡＭの量の違いに対応できていないという問題点がある。【０００６】
上記のようにＣＡＭが一杯となった状況で、制御装置から新たな制御情報の設定用の制御メッセージを受信すると、スイッチは、エラーメッセージを応答することになっている。この結果、制御装置は、他のスイッチに設定した制御情報の削除等を行わなければならないケースも生じ、制御装置にも負担が生じてしまうという問題点がある。【０００７】
とりわけ、非特許文献３のＦｌｏｗＶｉｓｏｒのような資源分離型ブローカーを用いた場合、複数の制御装置が、１つのスイッチにそれぞれ制御情報を設定することになるため、設定可能量がさらに制限される可能性がある。【０００８】
本発明は、スイッチ側のＣＡＭの大きさを統一するなどの措置を取らなくとも、制御装置によるスイッチへの制御情報の設定を容易化することのできる制御メッセージ中継装置、制御メッセージの中継方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
第１の視点によれば、外部から設定された制御情報に基づいてパケットを処理するスイッチと、前記スイッチに前記制御情報を設定する制御装置と、の間に配置され、前記制御装置から受信した制御情報と、前記制御情報のスイッチでの設定状態を示す情報とをそれぞれ記憶する制御情報記憶部と、前記スイッチが保持する制御情報の増大を防ぐ所定の制御ポリシーに基づいて、前記制御装置から受信した制御内容を、前記スイッチに保持されている制御情報に反映させる制御情報変換部と、を備える制御メッセージ中継装置が提供される。
【００１０】
第２の視点によれば、外部から設定された制御情報に基づいてパケットを処理するスイッチと、前記スイッチに前記制御情報を設定する制御装置と、の間に配置された制御メッセージ中継装置が、前記スイッチが保持する制御情報の増大を防ぐ所定の制御ポリシーに基づいて、前記制御装置から受信した制御内容を、前記スイッチに保持されている制御情報に反映させるステップと、前記制御装置から受信した制御情報と、前記制御情報のスイッチでの設定状態を示す情報とをそれぞれ記憶する制御情報記憶部の内容を更新するステップと、を含む制御メッセージ中継方法が提供される。本方法は、スイッチと制御装置との間の制御メッセージを中継する制御メッセージ中継装置という、特定の機械に結びつけられている。
【００１１】
第３の視点によれば、外部から設定された制御情報に基づいてパケットを処理するスイッチと、前記スイッチに前記制御情報を設定する制御装置と、の間に配置されたコンピュータに、前記スイッチが保持する制御情報の増大を防ぐ所定の制御ポリシーに基づいて、前記制御装置から受信した制御内容を、前記スイッチに保持されている制御情報に反映させる処理と、前記制御装置から受信した制御情報と、前記制御情報のスイッチでの設定状態を示す情報とをそれぞれ記憶する制御情報記憶部の内容を更新する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な（非トランジエントな）記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１２】
本発明によれば、制御装置によるスイッチへの制御情報の設定を容易化することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態の構成を示す図である。
【図２】本発明の一実施形態の動作を説明するための図である。
【図３】本発明の一実施形態の動作を説明するための図である。
【図４】本発明の第１の実施形態の制御メッセージ中継装置の構成を示す図である。
【図５】本発明の第１の実施形態の制御メッセージ中継装置の動作（制御通信確立メッセージ受信時）を示すフローチャートである。
【図６】本発明の第１の実施形態の制御メッセージ中継装置の動作（通信制御メッセージ受信時）を示すフローチャートである。
【図７】本発明の第１の実施形態の制御メッセージ中継装置の動作（制御情報操作メッセージ受信時）を示すフローチャートである。
【図８】本発明の第１の実施形態の制御メッセージ中継装置の動作（制御情報設定失敗通知受信時）を示すフローチャートである。
【図９】本発明の第１の実施形態の制御メッセージ中継装置の動作（制御情報削除通知受信時）を示すフローチャートである。
【図１０】本発明の第１の実施形態の制御メッセージ中継装置の動作（制御情報設定要求メッセージ受信時）を示すフローチャートである。
【図１１】本発明の第１の実施形態の制御メッセージ中継装置の動作の具体例を説明するための図である。
【図１２】図１１の続図である。
【図１３】図１２の続図である。
【図１４】図１３の続図である。
【図１５】図１４の続図である。
【図１６】図１５の続図である。
【図１７】図１６の続図である。
【図１８】図１７の続図である。
【図１９】図１８の続図である。
【図２０】図１９の続図である。
【図２１】図２０の続図である。
【図２２】図２１の続図である。
【図２３】図２２の続図である。
【図２４】図２３の続図である。
【図２５】本発明の第１の実施形態の制御メッセージ中継装置の動作の別の具体例を説明するための図である。
【図２６】図２５の続図である。
【図２７】本発明の第２の実施形態の制御メッセージ中継装置の動作（制御情報操作メッセージ受信時）を示すフローチャートである。
【図２８】本発明の第２の実施形態の制御メッセージ中継装置の動作（制御情報設定失敗通知受信時）を示すフローチャートである。
【図２９】本発明の第２の実施形態の制御メッセージ中継装置の動作（制御情報削除通知受信時）を示すフローチャートである。
【図３０】本発明の第２の実施形態の制御メッセージ中継装置の動作の具体例を説明するための図である。
【図３１】図３０の続図である。
【図３２】図３１の続図である。
【図３３】図３２の続図である。
【図３４】図３３の続図である。
【図３５】図３４の続図である。
【図３６】図３５の続図である。
【図３７】図３６の続図である。
【図３８】図３７の続図である。
【図３９】図３８の続図である。
【図４０】図３９の続図である。
【図４１】図４０の続図である。
【図４２】本発明の第３の実施形態の制御メッセージ中継装置の構成を示す図である。
【図４３】本発明の第３の実施形態の制御メッセージ中継装置によって仮想的に結合されるスイッチを説明するための図である。
【図４４】本発明の第３の実施形態の制御メッセージ中継装置の動作（制御通信確立メッセージ受信時）を示すフローチャートである。
【図４５】本発明の第３の実施形態の制御メッセージ中継装置の動作（通信制御メッセージ受信時）を示す図である。
【図４６】本発明の第３の実施形態の制御メッセージ中継装置の動作の具体例を説明するための図である。
【図４７】図４６の続図である。
【図４８】図４７の続図である。
【図４９】図４８の続図である。
【図５０】図４９の続図である。
【図５１】図５０の続図である。
【図５２】図５１の続図である。
【図５３】図５２の続図である。
【図５４】図５３の続図である。
【図５５】図５４の続図である。
【図５６】図５５の続図である。
【図５７】本発明の第４の実施形態の制御メッセージ中継装置の構成を示す図である。
【図５８】本発明の第４の実施形態の制御メッセージ中継装置の動作（タイマー設定）を示すフローチャートである。
【図５９】本発明の第４の実施形態の制御メッセージ中継装置の動作（有効期限判定）を示すフローチャートである。
【図６０】本発明の第４の実施形態の制御メッセージ中継装置の動作の具体例を説明するための図である。
【図６１】図６０の続図である。
【図６２】図６１の続図である。
【図６３】図６２の続図である。
【発明を実施するための形態】
【００１４】
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１５】
本発明は、その一実施形態において、図１に示すように、外部から設定された制御情報に基づいてパケットを処理するスイッチ３００と、スイッチ３００に制御情報を設定する制御装置１００と、の間に配置される制御メッセージ中継装置２００にて実現できる。
【００１６】
より具体的には、この制御メッセージ中継装置２００は、制御装置１００から受信した制御情報と、スイッチ３００に設定されている制御情報とをそれぞれ記憶する制御情報記憶部２１０と、所定の制御ポリシーに基づいて、制御装置１００から受信した制御内容を、スイッチ３００に保持されている制御情報に反映させる制御情報変換部２２０と、を備える。
【００１７】
例えば、スイッチ３００にすでに送信元ＭＡＣアドレスがＢであるパケットを破棄するとの制御情報が設定されており、かつ、スイッチ３００の設定する制御情報のエントリ数を削減するとの制御ポリシーが設定されている場合、制御メッセージ中継装置２００は、次の動作を行う。この場合において、図２に示すように、制御装置１００が、制御メッセージ中継装置２００経由で、スイッチ３００に対し、送信元ＭＡＣアドレスがＡであるパケットを破棄することを指示する制御情報を送信したものとする。この制御情報をスイッチ３００にそのまま送信してしまうと、スイッチが保持する制御情報は２つになってしまう。
【００１８】
スイッチ３００のポート＃Ｎに接続されている他のスイッチに送信元ＭＡＣ＝Ａの端末と、送信元ＭＡＣ＝Ｂの端末とが接続されているといった情報が得られている場合、制御メッセージ中継装置２００は、制御装置１００から受信した制御情報をスイッチ３００に送らずに、スイッチ３００が保持している送信元ＭＡＣアドレスがＢであるパケットを破棄することを指示する制御情報を、ポート＃Ｎから受信したパケットを破棄することを指示する制御情報に書換える動作を行う。これにより、スイッチが保持する制御情報を増やさずに、制御装置１００が意図した制御内容を実現することが可能となる。
【００１９】
また、上記実施形態によれば、例えば、ＣＡＭの容量等によりスイッチ３００が新規の制御情報を保持できない場合であっても、エラーが返されず、制御装置から見れば、制御情報を設定できたことになる（制御情報の設定が容易化されている）。
【００２０】
［第１の実施形態］
続いて、本発明の第１の実施形態について図面を参照して詳細に説明する。図４は、本発明の第１の実施形態の制御メッセージ中継装置の構成を示す図である。図４を参照すると、ネットワークの制御方針を決定しスイッチ３０に設定する制御装置（以下、「ネットワークコントローラ」）１０と、ネットワークコントローラ１０の指示に基づきパケット転送をするスイッチ３０との間に、制御メッセージ中継装置２０を配置した構成が示されている。
【００２１】
制御メッセージ中継装置２０は、制御通信仲介部２１と、制御メッセージ変換部２２と、制御ポリシー記憶部２３と、スイッチ情報記憶部２４と、制御情報記憶部２５とを備えている。
【００２２】
制御通信仲介部２１は、ネットワークコントローラ１０及びスイッチ３０間の制御メッセージをインターセプトし、制御メッセージ変換部２２に制御メッセージを伝える。また、制御通信仲介部２１は、制御メッセージ変換部２２から決定された制御メッセージを対象装置（ネットワークコントローラ１０又はスイッチ３０）へ送信する。
【００２３】
制御通信仲介部２１のインターセプトの方法は、命令をフックする方法が挙げられる。しかしながら、命令をフックする方法だけには捉われない。ネットワークコントローラ１０から制御通信ができ、スイッチ３０とも制御通信できれば、その実現方法は別の方法で実現しても構わない。例えば、制御メッセージ中継装置２０が、負荷分散装置（Ｌｏａｄ  Ｂａｌａｎｃｅｒ）やキャッシュサーバのように一旦通信端点となって、制御メッセージをインターセプトする方法でも構わない。すなわち、制御メッセージ中継装置２０は、自らの通信端点を持ち、ネットワークコントローラ１０及びスイッチ３０の通信端点と自らの通信端点との通信の組み合わせを用いて制御通信ができればよい。
【００２４】
制御メッセージ変換部２２は、上記した制御情報変換部に相当し、制御通信仲介部２１から制御メッセージを通知された場合、制御ポリシー記憶部２３を参照して、制御メッセージの変換を行う。そして、制御通信仲介部２１を介して、対象装置（ネットワークコントローラ１０又はスイッチ３０）へ制御メッセージを送信する。
【００２５】
制御メッセージ変換部２２は、制御メッセージの変換を行う際、制御ポリシー記憶部２３に加えて、スイッチ情報記憶部２４及び制御情報記憶部２５に記憶内容を参照することができる。
【００２６】
本実施形態の制御メッセージ変換部２２は、ネットワークコントローラ１０とスイッチ３０間の最初の制御通信確立用制御メッセージを受信した場合、ネットワークコントローラ１０とスイッチ３０間の対応関係をスイッチ情報記憶部２４に記憶する。なお、制御通信確立用制御メッセージの受信を契機とするほかに、事前に、スイッチ情報記憶部２４に、ネットワークコントローラ１０とスイッチ３０間の対応関係を設定しておくことでもよい。
【００２７】
制御ポリシー記憶部２３は、制御メッセージの変換ルール（制御ポリシー）を管理する。変換ルールは、例えば、ある制御メッセージや制御情報の指定箇所を書換えるといったルールとして記載する方式に限られない。例えば、変換ルールに相当する入出力を行うモジュールとして制御ポリシー記憶部２３を実現することもできる。
【００２８】
スイッチ情報記憶部２４は、ネットワークコントローラ１０とスイッチ３０間の対応関係を記憶する。また、本実施形態のスイッチ情報記憶部２４は、上記対応関係に加えて、ネットワークコントローラ１０とスイッチ３０間の接続可否情報を記憶する。
【００２９】
制御情報記憶部２５は、スイッチ情報記憶部２４のネットワークコントローラ１０とスイッチ３０の対応関係に対して、それぞれの機器が認識している制御情報の設定状態を保持する。例えば、制御情報記憶部２５は、ネットワークコントローラ１０が指示してきた制御情報群と、フラグ等を用いて実現されるこれら制御情報のスイッチ３０へ設定状態を示す付加情報を少なくとも保持する。
【００３０】
なお、図４に示した制御メッセージ中継装置２０の各部（処理手段）は、制御メッセージ中継装置２０を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
【００３１】
続いて、本実施形態の制御メッセージ中継装置２０の動作について図面を参照して詳細に説明する。はじめに、制御メッセージ中継装置２０がネットワークコントローラ１０とスイッチ３０間の制御通信確立用の制御メッセージ（以降、「制御通信確立メッセージ」と呼ぶ。）をインターセプトしたときの仲介動作を説明する。
【００３２】
図５は、本発明の第１の実施形態の制御メッセージ中継装置の動作（制御通信確立メッセージ受信）を示すフローチャートである。本フローは、制御メッセージ中継装置２０が、ネットワークコントローラ１０又はスイッチ３０から発せられた制御通信確立メッセージをインターセプトしたときから開始される。
【００３３】
制御メッセージ中継装置２０の制御通信仲介部２１は、ネットワークコントローラ１０又はスイッチ３０から発せられる制御通信確立メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、ネットワークコントローラ・スイッチ間対応関係ルールを取り出す。ネットワークコントローラ・スイッチ間対応関係ルールに従い、必要に応じて、スイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチ３０間に確立が許可されているかをチェックする（図５ステップＳ１１０１）。
【００３４】
ネットワークコントローラ・スイッチ間対応関係ルールの一例として、「すべてのネットワークコントローラ・スイッチ間の通信を許可する」というルールを採用できる。ネットワークコントローラ・スイッチ間対応関係ルールの別の一例として、予めスイッチ情報記憶部２４にネットワークコントローラ・スイッチ対応関係を記憶しておき、スイッチ情報記憶部２４を参照して「対応関係が存在するネットワークコントローラとスイッチ間の通信のみ許可する」というルールが挙げられる。また、ネットワークコントローラ・スイッチ間対応関係ルールの別の一例として、予めスイッチ情報記憶部２４にネットワークコントローラ・スイッチ対応関係を記憶しておき、制御メッセージ中継装置２０宛の制御通信確立要求の場合、スイッチ情報記憶部２４を参照して接続相手が特定できる場合、許可する、というルールが挙げられる。
【００３５】
制御メッセージ中継装置２０の制御メッセージ変換部２２は、制御通信確立メッセージに対して確立許可されている場合（図５のステップＳ１１０１ＹＥＳ）に、接続関係をスイッチ情報記憶部２４に記憶する。既に設定されている場合などは、接続関係メッセージを通した、もしくは、有効になったことを示す有効フラグなどを記憶する（図５ステップＳ１１０２）。
【００３６】
制御メッセージ中継装置２０の制御メッセージ変換部２２は、インターセプトした制御通信確立メッセージを元に、確立対象に対する制御通信確立メッセージを新規作成し、制御通信仲介部２１を介して、確立対象へと送信する（図５ステップＳ１１０３）。
【００３７】
確立対象に対する制御通信確立メッセージを新規作成する例としては、ネットワークコントローラ１０又はスイッチ３０からインターセプトした制御通信確立メッセージをそのまま利用する方法を含む。確立対象に対する制御通信確立メッセージに新規作成する別の例としては、対応する確立相手と、制御メッセージ中継装置２０との制御通信確立メッセージを新規作成し、対応する確立相手へ送信する。
【００３８】
以上の制御を行うことにより、制御メッセージ中継装置２０が、ネットワークコントローラ１０・スイッチ３０間の仲介役として制御通信に介在することが可能となる。
【００３９】
なお、制御通信確立メッセージに対して確立が許可されない場合（図５ステップＳ１１０１ＮＯ）、制御メッセージ中継装置２０の制御メッセージ変換部２２は、制御通信確立メッセージ送信側に、制御通信仲介部２１を介して、制御通信確立失敗応答メッセージを作成し送信する。本処理は、失敗することが応答のないこととする場合に、省略することができる（図５ステップＳ１１０４）。以上の制御を行うことにより、制御メッセージ中継装置２０が、確立失敗時の現象を実現する。
【００４０】
次に、図６のフローチャートを用いて、本実施形態の制御メッセージ中継装置２０がネットワークコントローラ１０・スイッチ３０間の制御通信確立要求メッセージ以外の制御メッセージをインターセプトしたときの仲介動作を説明する。
【００４１】
本フローは、ネットワークコントローラ１０又はスイッチ３０から発せられる通信確立要求メッセージ群以外の制御メッセージ（以下、「通信制御メッセージ」とも言う。）を制御メッセージ中継装置２０がインターセプトしたときから開始される。
【００４２】
制御メッセージ中継装置２０の制御通信仲介部２１は、ネットワークコントローラ１０又はスイッチ３０から発せられる通信制御メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２はスイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチ３０間に制御用通信が確立されているかをチェックする（図６ステップＳ１２０１）。
【００４３】
ネットワークコントローラ１０・スイッチ３０間に制御用通信が確立済みの場合（図６ステップＳ１２０１ＹＥＳ）、制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、適用可能な変換ルールを取り出す。制御メッセージ変換部２２は、変換ルールに基づき、通信制御メッセージの変換又は通信制御メッセージの新規作成を行う。また、このとき、制御メッセージ変換部２２は、制御情報記憶部２５に対して制御対象制御情報や制御情報の更新を行う。また、変換ルールが存在しない場合、制御メッセージ変換部２２は、該通信制御メッセージを、メッセージ対象となるネットワークコントローラ１０又はスイッチ３０へ送信するためのメッセージ変換をする（図６ステップＳ１２０２）。
【００４４】
制御メッセージ変換部２２は、変換ルールに基づき、新たな通信制御メッセージを作成又は変換した場合（図６ステップＳ１２０３ＹＥＳ）、送信すべき対象装置に対し、前記作成した新たな通信制御メッセージを送信する（図６ステップＳ１２０４）。
【００４５】
以上の制御を行うことにより、制御メッセージ中継装置２０は、変換ルールに基づく仮想化されたスイッチ資源の制御を実現する。
【００４６】
なお、ネットワークコントローラ１０・スイッチ３０間に制御用通信が確立済みでない場合（図６ステップＳ１２０１ＮＯ）、確立されてない通信路に流れる通信制御メッセージであるため、制御メッセージ変換部２２は、前記インターセプトした通信制御メッセージを破棄する。これにより、制御メッセージ中継装置２０は、接続されていないネットワークコントローラ１０・スイッチ３０間の動作を再現する。また、エラー応答も含め、送信すべきメッセージがない場合も（図６ステップＳ１２０３ＮＯ）、該通信制御メッセージを破棄するだけで終了する。
【００４７】
以上のように制御メッセージ中継装置２０を配置した本実施形態によれば、ネットワークコントローラ１０におけるスイッチ依存度を緩和することができる。なぜならば、制御メッセージ中継装置２０が、所定の変換ルールに基づき、スイッチ動作を仮想化することで、スイッチの物理的、または、プロトコル的制約に依存しないスイッチ動作を実現するためである。これにより、スイッチの制約により捉われないネットワークコントローラ開発が可能になる。
【００４８】
また本実施形態は、また、ネットワークコントローラ１０への負荷集中を緩和することが可能となる。なぜならば、本実施形態の制御メッセージ中継装置２０は、ネットワークコントローラ１０に対し、仮想化した資源を持つスイッチに見せかけることで、物理的制約で発生するエラー制御を吸収することが可能であるためである。これにより、ネットワークコントローラの管理量（管理可能なスイッチ数、フローエントリ数等）を向上させることも可能となる。
【００４９】
（具体的実施形態）
続いて、上記した第１の実施形態における制御メッセージ中継装置２０の動作をより詳しく説明するために、より具体的な動作を示して説明する。以降の具体例では、通信制御メッセージのやり取りに非特許文献２のオープンフロープロトコルを用いるものとする。そのため、制御情報の設定用制御メッセージ（非特許文献２の「Ｆｌｏｗ−Ｍｏｄ」メッセージ）のうち、追加、更新系メッセージに対するスイッチからの応答はなく、削除系メッセージに対して、スイッチが削除応答を返す。追加、更新系メッセージに対する応答が必要な場合は、応答確認による通信制御変換ルールの変形で対応可能であることは明白である。
【００５０】
始めに、本発明の第１の実施形態における通信確立要求命令群以外の制御メッセージをインターセプトしたときの変換ルールの適用処理（図６のフローチャートのステップＳ１２０２以降）についてより詳細に説明する。以下、ネットワークコントローラ１０からの制御情報の操作（設定／削除）、スイッチ３０からの制御情報の設定失敗通知、スイッチ３０からの制御情報の削除通知、スイッチ３０からの制御情報の設置要求（問い合わせ）が、制御メッセージ中継装置２０にてインターセプトされた場合の動作についてそれぞれ説明する。
【００５１】
また、以下の説明では、制御メッセージ中継装置２０の制御情報記憶部２５が記憶する制御情報の設定状態として、ネットワークコントローラ１０から受信した制御情報について、それぞれ、スイッチ３０に設定していることを示す設定済みフラグ、ネットワークコントローラ１０からの指示によりスイッチ３０に対して削除要求中である削除中フラグ、制御情報入替のためにスイッチ３０に対して削除要求中である入替削除中フラグ、制御情報入替のためにスイッチ３０に対して設定を待たせている入替待機中フラグを設定可能であるものとする。
【００５２】
［変換ルール適用の具体例１（制御情報操作メッセージの受信時）］
図７は、制御情報操作メッセージ（ここでは、制御情報の設定用と制御情報の削除用の２種類の制御メッセージがあるものとする。）を受信した場合に適用される変換ルールを説明するためのフローチャートである。本フローは、制御メッセージ中継装置２０が、ネットワークコントローラ１０から発せられる制御情報の操作（設定用／削除用）メッセージをインターセプトしたときから開始される。制御メッセージ中継装置２０の制御通信仲介部２１は、ネットワークコントローラ１０から発せられる制御情報操作メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は制御ポリシー記憶部２３を参照し、図７に示されるフローに従って変換ルールを適用する。
【００５３】
制御メッセージ変換部２２は、該制御情報操作メッセージが削除要求かどうかを判定する（図７ステップＳ２１０１）。
【００５４】
該制御情報操作メッセージが削除要求でない場合（図７ステップＳ２１０１ＮＯ）、制御メッセージ変換部２２は、スイッチ情報記憶部２４を介して、制御情報記憶部２５に該制御情報設定メッセージ記載の制御情報を登録、更新する。また、このとき、設定済みフラグを更新する（図７ステップＳ２１０２）。
【００５５】
そして、制御メッセージ変換部２２は、該制御情報操作メッセージを、スイッチ３０へ制御情報の設定を指示する制御メッセージに変換する（図７ステップＳ２１０６）。制御通信仲介部２１は、変換された制御情報の設定用制御メッセージをスイッチ３０へ送信する（図６ステップＳ１２０４）。
【００５６】
一方、インターセプトした制御情報操作メッセージが削除要求の場合（図７ステップＳ２１０１ＹＥＳ）、制御メッセージ変換部２２は、スイッチ情報記憶部２４を介して、制御情報記憶部２５から、該制御情報設定メッセージ記載の制御情報のフラグ情報を取得する。そして、設定済みフラグが設定されているかをチェックする（図７ステップＳ２１０３）。
【００５７】
設定済みフラグが設定されている場合（図７ステップＳ２１０３ＹＥＳ）、スイッチ３０にすでに該当する制御情報を設定済みであるため、制御メッセージ中継装置２０は、通信制御を解除させることになる。制御メッセージ変換部２２は、制御情報記憶部２５の該制御情報に削除中フラグをマークする（図７ステップＳ２１０４）。また、制御メッセージ変換部２２は、該当制御情報に入替削除中フラグが設定されているかをチェックする。入替削除中フラグが設定されている場合（図７ステップＳ２１０５ＹＥＳ）、既に削除するための通信制御メッセージが、スイッチ３０に発行済みであるため、制御メッセージ変換部２２は、制御情報記憶部２５の該当制御情報の入替削除中フラグを削除する（図７ステップＳ２１０７）。なお、ステップＳ２１０５で削除対象の制御情報に、入替削除中フラグが設定されていない場合（図７ステップＳ２１０５ＮＯ）、制御メッセージ変換部２２は、スイッチ３０へ制御情報の削除を指示する制御メッセージに変換する（図７ステップＳ２１０６）。制御通信仲介部２１は、スイッチ３０に対し、前記変換した該制御情報操作メッセージを送信する（図６ステップＳ１２０４）。
【００５８】
一方、ステップＳ２１０３で設定済みフラグが設定されてないと判定した場合（図７ステップＳ２１０３ＮＯ）、当該制御情報は、資源仮想化のためにスイッチ３０に設定されておらず、また、制御メッセージ中継装置２０が、ネットワークコントローラ１０に対して当該制御情報が設定されているように見せている状態である。そのため、制御メッセージ中継装置２０は、スイッチ３０へ改めて制御の必要はない。制御メッセージ変換部２２は、制御情報記憶部２５から該制御情報を削除する（図７ステップＳ２１０８）。その後、制御メッセージ変換部２２は、該制御情報を削除したことをネットワークコントローラ１０へ伝えるための制御情報の削除通知メッセージを作成する（図７ステップＳ２１０１９）。制御通信仲介部２１は、作成された該制御情報削除通知メッセージをネットワークコントローラ１０へ送信する（図６ステップＳ１２０４）。
【００５９】
以上の動作により、制御メッセージ中継装置２０は、ネットワークコントローラ１０が設定管理している制御情報を制御情報記憶部２５へ記憶すると共に、スイッチ３０の要求状態、設定状態を管理する。これにより、スイッチ３０の実際の制御設定と切り離して、ネットワークコントローラ１０からの通信制御要求に応答することが可能になる。また、ネットワークコントローラ１０から見て、スイッチは、仮想化されたＣＡＭ容量を持つ仮想スイッチとして動作するようにできる。
【００６０】
［変換ルール適用の具体例２（制御情報の設定失敗通知の受信時）］
次に、図８を参照して、スイッチ３０からの制御情報の設定失敗通知を受けた場合に適用される変換ルールの具体例について説明する。本フローは、スイッチ３０から発せられる制御情報の設定失敗通知メッセージを制御メッセージ中継装置２０がインターセプトしたときから開始される。
【００６１】
制御メッセージ中継装置２０の制御通信仲介部２１は、スイッチ３０から発せられる制御情報設定失敗通知メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は制御ポリシー記憶部２３を参照し、図８に示されるフローに従って変換ルールを適用する。
【００６２】
はじめに、制御メッセージ変換部２２は、該制御情報設定失敗通知メッセージから、失敗理由を抽出する。（図８ステップＳ２２０１）。
【００６３】
失敗理由がスイッチ３０の制御情報の格納領域不足の場合（図８ステップＳ２２０１ＹＥＳ）、制御メッセージ中継装置２０は、制御情報の入れ替え処理により、ネットワークコントローラ１０にＣＡＭ容量不足を認識させず、かつ、スイッチ３０に必要な制御情報を設定する処理に入る。具体的には、制御メッセージ変換部２２は、制御情報記憶部２５から、該制御情報設定失敗通知メッセージに対応する制御情報の設定済みフラグを削除し、入替待機フラグをマークする（図８ステップＳ２２０２）。
【００６４】
次に、制御メッセージ変換部２２は、制御情報記憶部２５から、削除中、および、入替削除中でない設定済み制御情報を抽出する。制御メッセージ変換部２２は、その中から、制御情報設定失敗通知メッセージにて指定された制御情報以外の任意の制御情報を選択する（図８ステップＳ２２０３）。そして、選択した通信ルールの削除を指示する制御メッセージを作成する。同時、制御メッセージ変換部２２は、制御情報記憶部２５に該当制御情報の入替削除中フラグをマークする（図８ステップＳ２２０４）。制御通信仲介部２１は、スイッチに対し、前記作成した入替のための制御情報削除用の制御メッセージを送信する（図６ステップＳ１２０４）。
【００６５】
上記削除用制御情報の選択方法の一例として、ルール設定順番、もしくは、設定時期を記憶しておき、より設定時期が古いルールを選択する方法が挙げられる。また、削除用制御情報の選択方法の別の一例として、ルールに設定される満了（ｅｘｐｉｒｅ）時間を基準に、満了時間の最も短いルール、もしくは、最も長いルールを選択する方法が挙げられる。
【００６６】
一方、ステップＳ２２０１にて判定した失敗理由がスイッチの制御情報の格納領域不足以外の場合（図８ステップＳ２２０１ＮＯ）、制御メッセージ中継装置２０によるＣＡＭ容量仮想化の範疇外の処理となる。しかしながら、情報の更新やエラー通知が必要になるので制御メッセージ中継装置２０は、以下の処理を行う。まず、制御メッセージ変換部２２は、制御情報記憶部２５から該制御情報設定失敗通知メッセージにて対応する制御情報を削除する（図８ステップＳ２２０５）。制御メッセージ変換部２２は、インターセプトした制御情報設定失敗通知メッセージを、ネットワークコントローラ１０に対する送信用のメッセージに変換する（図８ステップＳ２２０６）。制御通信仲介部２１は、ネットワークコントローラ１０に対して、前記変換した制御情報設定失敗通知メッセージを送信する（図６ステップＳ１２０４）。
【００６７】
以上のように、制御メッセージ中継装置２０は、制御情報の設定失敗通知の受信を契機として、スイッチ３０のＣＡＭ容量の不足を検知し、他の制御情報との置き換える動作を行う。これにより、ネットワークコントローラ１０にフローテーブル（ＣＡＭ）の容量を隠すことが可能になる。
【００６８】
［変換ルール適用の具体例３（制御情報の削除通知の受信時）］
次に、図９を参照して、スイッチ３０からの制御情報の削除通知を受けた場合に適用される変換ルールの具体例について説明する。本フローは、スイッチ３０から発せられる制御情報の削除通知メッセージを制御メッセージ中継装置２０がインターセプトしたときから開始される。
【００６９】
制御メッセージ中継装置２０の制御通信仲介部２１は、スイッチ３０から発せられる制御情報削除通知メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は制御ポリシー記憶部２３を参照し、図９に示されるフローに従って変換ルールを適用する。
【００７０】
制御メッセージ変換部２２は、制御情報削除通知メッセージを参照し、削除原因がネットワークコントローラ１０からの制御情報削除要求に対応する応答であったか否かをチェックする。ネットワークコントローラ１０からの削除要求に対応する応答であった場合、制御メッセージ変換部２２は、さらに、スイッチ情報記憶部２４を介して、制御情報記憶部２５を参照し、該制御情報削除通知メッセージに対応する制御情報の入替削除中フラグがマークされているか否かをチェックする（図９ステップＳ２３０１）。
【００７１】
制御情報削除通知メッセージが、削除要求に対する応答として発行されたものであり、かつ、削除対象の制御情報の入替削除中フラグがマークされているとき（図９ステップＳ２３０１ＹＥＳ）、制御メッセージ中継装置２０は、入れ替えのために削除した制御情報の削除完了通知を受けていることになり、ネットワークコントローラ１０へ通知する必要はない。制御メッセージ変換部２２は、制御情報記憶部２５から、該制御情報の設定済みフラグと入替削除中フラグを解除する（図９ステップＳ２３０２）。
【００７２】
該制御情報削除通知メッセージが、削除要求に対する応答として発行されたものでない場合（例えば、スイッチ３０における制御情報のタイムアウト成立）、又は、削除対象の制御情報に対して入替削除中フラグが設定されていない場合（図９ステップＳ２３０１ＮＯ）、制御メッセージ中継装置２０は、スイッチ３０からの自発的な制御解除通知を受けている、もしくは、ネットワークコントローラ１０からの明示的な削除に基づく削除応答を受けていることになる。そのため、制御メッセージ中継装置２０は、自己の制御情報記憶を削除すると共に、ネットワークコントローラ１０に対し削除完了の通知が必要になる。制御メッセージ変換部２２は、制御情報記憶部２５から、該制御情報削除通知メッセージに対応する制御情報を削除する（図９ステップＳ２３０３）。また、該制御情報削除通知メッセージをネットワークコントローラ１０へ送信するためのメッセージに変更する（図９ステップＳ２３０４）。制御通信仲介部２１は、ネットワークコントローラ１０に対して、前記変換した制御情報設定削除通知メッセージを送信する（図６ステップＳ１２０４）。
【００７３】
次に、ネットワーク制御メッセージ中継装置２０は、スイッチ３０の制御情報が削除されたことを通知されているので、ネットワークコントローラ１０から設定指示を受けたがＣＡＭの空きができるのを待機している制御情報の設定を行う。制御メッセージ変換部２２は、制御情報記憶部２５を参照し、入替待機フラグを持つ制御情報が存在するかを検索する（図９ステップＳ２３０５）。入替待機フラグを持つ制御情報が存在した場合（図９ステップＳ２３０５ＹＥＳ）、制御メッセージ変換部２２は、前記入替待機フラグが設定されている制御情報から任意の１つを選択する（図９ステップＳ２３０６）。制御メッセージ変換部２２は、前記選択した入替待機フラグを持つ制御情報を基に、スイッチ３０へ通信制御設定するための制御情報の設定用の制御メッセージを作成する。制御メッセージ変換部２２は、制御情報記憶部２５から、メッセージを作成した待機中制御情報の設定フラグをマークし、かつ、入替待機中フラグを削除する（図９ステップＳ２３０７）。制御通信仲介部２１は、作成された制御情報の設定用の制御メッセージをネットワークコントローラ３０へ送信する（図６ステップＳ１２０４）。
【００７４】
以上の動作により、制御メッセージ中継装置２０は、スイッチ３０における制御情報の削除が他制御情報との入れ替えのための能動的な削除（ステップＳ２３０１のＹＥＳ）であるか、ルール削除設定やルール有効時間切れなどの理由による受動的な削除（ステップＳ２３０１のＮＯ）であるかを判定し、自装置側でスイッチの仮想化に必要な情報を保持するとともに、必要としない削除情報等を削除することができる。また、制御メッセージ中継装置２０は、仮想化のためでない制御情報の削除通知（ステップＳ２３０１のＮＯ）のときは、制御メッセージ中継装置２０がネットワークコントローラ１０に制御情報設定削除通知メッセージを送信することで、制御情報の削除が完了した通知することができる。さらに、制御メッセージ中継装置２０は、これらの制御情報の削除通知を契機に、スイッチ３０に、入替待機中であった制御情報を設定することができる。
【００７５】
［変換ルール適用の具体例４（制御情報の設定要求の受信時）］
次に、図１０を参照して、スイッチ３０からの制御情報の設定要求を受けた場合に適用される変換ルールの具体例について説明する。本フローは、スイッチ３０から発せられる制御情報の設定要求メッセージを制御メッセージ中継装置２０がインターセプトしたときから開始される。ここで、通信設定の設定要求メッセージは、非特許文献２のオープンフロープロトコルのＰａｃｋｅｔ−Ｉｎメッセージのような、ルールにマッチしなかったパケットの通知などで代用する場合も含む。
【００７６】
制御メッセージ中継装置２０の制御通信仲介部２１は、スイッチ３０から発せられる制御情報の設定要求メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は制御ポリシー記憶部２３を参照し、図１０に示されるフローに従って変換ルールを適用する。
【００７７】
制御メッセージ変換部２２は、スイッチ情報記憶部２４を介して、制御情報記憶部２５を参照し、前記制御情報の設定要求メッセージにマッチする制御情報が存在するかをチェックする（図１０ステップＳ２４０１）。
【００７８】
前記制御情報の設定要求メッセージにマッチする制御情報が存在する場合（図１０ステップＳ２４０１ＹＥＳ）、制御メッセージ変換部２２は、該制御情報を基に、スイッチ３０へ設定する制御情報の設定用の制御メッセージを作成する。また、制御メッセージ変換部２２は、制御情報記憶部２５に該当制御情報に設定フラグをマークする（図１０ステップＳ２４０２）。その後、制御通信仲介部２１は、スイッチ３０に対して、前記作成した制御情報の設定用の制御メッセージを送信する（図６ステップＳ１２０４）。
【００７９】
一方、前記制御情報の設定要求メッセージにマッチする制御情報が存在しないとき（図１０ステップＳ２４０１ＮＯ）、制御メッセージ変換部２２は、該制御情報の設定要求メッセージを、コントローラ１０へ通信するための制御メッセージへ変換する（図１０ステップＳ２４０３）。制御通信仲介部２１は、変換された該通信設定問合せメッセージをスイッチ３０へ送信する（図６ステップＳ１２０４）。
【００８０】
以上の動作により、制御メッセージ中継装置２０は、スイッチ３０から制御不明なパケットに対して、制御メッセージ中継装置２０で仮想化中（入替待機中）の制御情報を設定するか、あるいは、新規設定のためにネットワークコントローラ１０へ問合せを行う。これにより、スイッチ３０からはあたかもネットワークコントローラ１０が存在するかのように対応できると同時に、制御メッセージ中継装置２０自身が仮想化のために記憶しておいた制御情報について、ネットワークコントローラに対し、再度設定を要求することを防ぐことができる。
【００８１】
続いて、図１１〜図２４を参照して、上記した一連の動作を、制御メッセージ中継装置２０及びスイッチ３０の制御情報記憶部の状態とともに説明する。
【００８２】
また、以下の説明では、説明簡略化のため、スイッチ３０がその制御情報記憶部に保持可能な制御情報の数は、２エントリであるものとする。また、通常ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）などの通信は双方向が基本であるが、今回はそれを意識しないものとする。例えば、双方向の制御チャネルのうちの一方が別の経路で構成されており、スイッチ３０に相手からの応答が来ないものとする。
【００８３】
また、図１１〜図２４では、太線矢印でメッセージの流れを示し、スイッチなどの図の下部に、流れているメッセージの内容を記載する。さらに、図右部に、制御メッセージ中継装置２０の制御情報記憶部２５と、スイッチ３０が記憶する制御情報記憶部（フローテーブル）を簡易化したものを記載する。制御情報記憶部（フローテーブル）のＲｕｌｅフィールドは、マッチ条件を格納するＭａｔｃｈフィールドとマッチ条件に適合するパケットに適用する処理内容を示すＡｃｔｉｏｎフィールドとを対応付けて構成され、制御情報を格納可能となっている。なお、「ＳＲＣ」は送信元ＩＰアドレスを示し、「ＤＳＴ」は宛先ＩＰアドレスを示す。
【００８４】
制御メッセージ中継装置２０の制御情報記憶部２５のＩｎｆｏ−Ｍａｒｋｉｎｇ欄の「Ｓｅｔ」は設定フラグを示し、「Ｒｅｍ」は削除中フラグを示す。また、「Ｅｘｃｈ」は、入替削除中フラグを示し、「Ｗａｉｔ」は入替待機中フラグを示す。また、各フラグには、マーキングされているか否かだけでなく、設定順序や待機順序が分かるように、順序ナンバーで付記する。
【００８５】
初期状態において、各装置は、通信に関する情報を何も持たない。スイッチ３０は、ネットワークコントローラ１０の制御下に入ろうと、制御通信確立メッセージを投げる。制御メッセージ中継装置２０は、該御通信確立メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、該通信確立メッセージからネットワークコントローラ１０との確立が許可されているかをチェック（図５ステップＳ１１０１）。今回は、スイッチ３０とネットワークコントローラ１０間の通信に制限がないものとし、許可されているとする。制御メッセージ変換部２２は、スイッチ３０とネットワークコントローラ１０に接続関係を持つように、スイッチ情報記憶部２４に記憶する（図５ステップＳ１１０２）。そして、確立対象に対する制御通信確立メッセージとして、通信確立メッセージをそのまま使用することとし、ネットワークコントローラ１０へ送信する（図５ステップＳ１１０３）。ネットワークコントローラ１０からの通信確立メッセージも同様に処理し、スイッチ３０へと送信する。このとき、スイッチ情報記憶部２４には接続関係が既に記憶されているため、新たに登録することはない。
【００８６】
図１１は、上記スイッチ３０とネットワークコントローラ１０間の制御チャネルが確立された状態を示す図である。この状態では、制御メッセージ中継装置２０の制御情報記憶部２５は、データを保持していない。同様にスイッチ３０の制御情報記憶部にも、何も設定されていない。
【００８７】
まず、１９２．１６８．０．１から１９２．１６８．０．１００宛ての通信がスイッチ３０に発生したとする。スイッチ３０は、ネットワークコントローラ１０へ向け、制御情報の設定要求メッセージを送信する（図１２のスイッチ３０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、前記制御情報の設定要求メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図１０に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【００８８】
この時点では、制御情報記憶部２５に、制御情報の設定要求メッセージにマッチする制御情報が存在しないため（図１０ステップＳ２４０１）、制御メッセージ中継装置２０は、制御情報の設定要求メッセージを、ネットワークコントローラ１０へ送信する制御メッセージとして変換する（図１０ステップＳ２４０２）。制御通信仲介部２１は、スイッチ３０に対し、前記変換した制御情報の設定要求メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４）。これにより、制御メッセージ中継装置２０は、ネットワークコントローラ１０へ制御情報の設定要求メッセージを送信する（図１２の制御メッセージ中継装置２０とネットワークコントローラ１０間の矢印）。
【００８９】
ネットワークコントローラ１０は、制御情報の設定要求メッセージを受けると、スイッチ３０に設定する制御情報を作成する。今回は、該当パケットをＰｏｒｔ１から出力する制御情報を作成したものとする。ネットワークコントローラ１０は、スイッチ３０へ向け、１９２．１６８．０．１から１９２．１６８．０．１００の通信はＰｏｒｔ１へ出力するための制御情報の設定用の制御メッセージを発信する（図１３のネットワークコントローラ１０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御情報の設定用の制御メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図１０に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【００９０】
制御メッセージ変換部２２は、制御情報の操作メッセージが削除を指示するものでないため（図７ステップＳ２１０１ＮＯ）、制御情報記憶部２５に対し、制御情報を格納し（図１３の制御情報記憶部参照）、設定済みフラグをマークする（図７ステップＳ２１０２）。そして、制御メッセージ変換部２２は、この制御情報の設定用制御メッセージをスイッチ３０へ出力するメッセージとして変換する（図７ステップＳ２１０６）。制御通信仲介部２１は、スイッチ３０に対し、前記変換した該制御情報設定メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４）。これにより、制御メッセージ中継装置２０は、ネットワークコントローラ１０に対し、制御情報の設定要求に対する応答メッセージを送信したことになる（図１３の制御メッセージ中継装置２０とスイッチ３０間の矢印）。スイッチ３０は、その制御情報記憶部に、制御メッセージ中継装置２０から転送された制御情報を記憶し（図１３のスイッチ３０の制御情報記憶部参照）、パケット転送を開始する。
【００９１】
同様にして、別の通信、例えば、１９２．１６８．０．１から１９２．１６８．０．１０１宛ての通信がスイッチ３０に発生し、Ｐｏｒｔ２への転送を指示する制御情報を設定したとする。制御メッセージ中継装置２０は、制御情報記憶部２５に前記制御情報を記憶すると共に、スイッチ３０にも同様の制御情報が設定される。図１４は、このときの状態を表している。
【００９２】
その後、さらに、別の通信、例えば、１９２．１６８．０．１から１９２．１６８．０．１０２宛ての通信がスイッチ３０に発生した場合、ネットワークコントローラ１０は、Ｐｏｒｔ３への転送をする制御情報を設定しようとする。
【００９３】
ネットワークコントローラ１０は、制御情報の設定用の制御メッセージをスイッチ３０へ向け発信する（図１５のネットワークコントローラ１０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御情報設定メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図１０に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【００９４】
制御メッセージ変換部２２は、制御情報の操作メッセージが制御情報の削除操作を行うものでないため（図７ステップＳ２１０１ＮＯ）、制御情報記憶部２５へ制御情報を記憶し（図１５の制御情報記憶部（上段）参照）、設定済みフラグをマークする（図７ステップＳ２１０２）。そして、制御メッセージ変換部２２は、該制御情報設定メッセージをスイッチ３０へ出力する制御メッセージとして変換する（図７ステップＳ２１０６）。制御通信仲介部２１は、スイッチ３０に対し、前記変換した該制御情報設定メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４）。これにより、制御メッセージ中継装置２０は、ネットワークコントローラ１０からの制御情報の設定用の制御メッセージを転送する（図１５の制御メッセージ中継装置２０とスイッチ３０間の矢印）。しかしながら、スイッチ３０はすでに制御情報記憶部が一杯のため受け付けることができない。
【００９５】
スイッチ３０は、ネットワークコントローラ１０に対し、制御情報記憶部に空きがなく受け付けることができないことを通知する制御情報設定失敗通知メッセージを発信する（図１６の制御メッセージ中継装置２０とスイッチ３０間の矢印）。なお、制御情報設定失敗通知メッセージには、領域不足エラーとの理由が付されているものとする。
【００９６】
制御メッセージ中継装置２０は、該制御情報設定失敗通知メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図８に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【００９７】
制御メッセージ変換部２２は、前記制御情報の設定の失敗原因が領域不足のため（図８ステップＳ２２０１ＹＥＳ）、設定失敗した制御情報の設定済みフラグを削除し、入替待機フラグをマークする（図８ステップＳ２２０２、図１６の制御情報記憶部（上段）の「Ｓｅｔ」フラグ、「Ｗａｉｔ」フラグ参照。）。
【００９８】
次に制御メッセージ中継装置２０は、制御情報の入れ替え処理に入る。これにより、コントローラ１０へルールテーブル領域不足による制御失敗を隠蔽すると同時に、スイッチ３０に求められている通信設定を行う。制御メッセージ中継装置２０の制御メッセージ変換部２２は、制御情報記憶部２５を参照し、入れ替え対象制御情報を選択する。今回は、１９２．１６８．０．１から１９２．１６８．０．１００の通信が一番古いため、該制御情報を選択する（図８ステップＳ２２０３）。制御メッセージ変換部２２は、該制御情報を削除するためのスイッチ３０への制御情報の削除用制御メッセージを作成する。そして、制御メッセージ変換部２２は、制御情報記憶部２５の制御情報に、入替削除中フラグをマークする（図８ステップＳ２２０４、図１７の制御情報記憶部（上段）の「Ｅｘｃｈ」フラグ参照。）。制御通信仲介部２１は、スイッチ３０に対し、前記作成した制御情報の削除用制御メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図１７の制御メッセージ中継装置２０とスイッチ３０間の矢印）。
【００９９】
上記制御情報の削除用制御メッセージを受け取ったスイッチ３０は、自身の制御情報記憶部から対応する制御情報を削除する（図１８のスイッチ３０の制御情報記憶部の上段のエントリを削除）。スイッチ３０は、ネットワークコントローラ１０に対し、制御情報を削除したことを、制御情報削除通知メッセージとして発信する（図１８のスイッチ３０と制御メッセージ中継装置２０間の矢印）。
【０１００】
制御メッセージ中継装置２０は、前記制御情報削除通知メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図９に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１０１】
制御メッセージ変換部２２は、制御情報削除通知メッセージから、削除理由が削除要求に対する応答であったことを特定する。さらに、制御メッセージ変換部２２は、制御情報記憶部２５を参照し、削除対象の制御情報に対して、入替削除中フラグがマークされている、すなわち、入替削除中制御情報であったことを特定する（図９ステップＳ２３０１ＹＥＳ）。制御メッセージ変換部２２は、制御情報記憶部２５から、該当制御情報の入替削除中フラグ及び設定済みフラグを削除する（図９ステップＳ２３０２、図１８の制御情報記憶部（上段）の「Ｓｅｔ」、「Ｅｘｃｈ」フラグ参照。）。
【０１０２】
制御メッセージ変換部２２は、制御情報記憶部２５を参照し、設定待機状態になっている制御情報がないかをチェックする。ここでは、図１８に示すように、「Ｗａｉｔ」フラグにより、１９２．１６８．０．１から１９２．１６８．０．１０２への通信設定が待機中であることが検索される（図９ステップＳ２３０５ＹＥＳ）。制御メッセージ変換部２２は、検索された中から、入替待機中制御情報を１つ選択する。今回は、１つしか待機していないため、前記制御情報が選択される（図９ステップＳ２３０６）。制御メッセージ変換部２２は、１９２．１６８．０．１から１９２．１６８．０．１０２宛ての制御情報を元に、スイッチ３０へ設定するための制御情報の設定用制御メッセージを作成する。また、制御メッセージ変換部２２は、制御情報記憶部２５の該当制御情報に設定済みフラグをマークし、入替待機中フラグを削除する（図９ステップＳ２３０７、図１９の制御情報記憶部（上段）の「Ｓｅｔ」、「Ｅｘｃｈ」フラグ参照。）。制御通信仲介部２１は、スイッチ３０に対して、前記作成した制御情報の設定用制御メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図１９の制御メッセージ中継装置２０とスイッチ３０間の矢印）。スイッチ３０は、制御情報を設定し、１９２．１６８．０．１から１９２．１６８．０．１０２への通信をＰｏｒｔ３へ転送し始める（図１９のスイッチ３０の制御情報記憶部参照）。
【０１０３】
上記までの動作のように、制御メッセージ中継装置２０は、ネットワークコントローラ１０から、３つの制御情報を設定されているように扱い、ネットワークコントローラ１０にＣＡＭ不足を認識させない。また、スイッチ３０へは、制御メッセージ中継装置２０は、制御情報の入れ替えにより、あたかもネットワークコントローラ１０が入れ替えているかのように扱い、スイッチ３０が必要としている制御情報を与えることを実現している。
【０１０４】
次に、スイッチ３０に設定されている制御情報の有効期限が満了したときの動作を説明する。スイッチ３０は、制御情報が設定されてからの時間が所定期間を超えたり（ハードタイムアウト）、制御情報にマッチするパケットを受信しなかった期間が所定期間を超えると（アイドルタイムアウト）、制御情報記憶部から該当する制御情報を削除する（図２０のスイッチ３０の制御情報記憶部の下段のエントリ削除）。また、スイッチ３０は、前記制御情報の削除を、ネットワークコントローラ１０に伝えるために、制御情報削除通知メッセージを作成し、送信する（図２０の制御メッセージ中継装置２０とスイッチ３０間の矢印）。なお、制御情報削除通知メッセージには、削除理由（例えば、図２０に示すように「ＥＸＰＩＲＥＤ」等）が付されているものとする。
【０１０５】
制御メッセージ中継装置２０は、前記のような理由による制御情報削除通知メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図９に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１０６】
制御メッセージ変換部２２は、該制御情報削除通知メッセージが削除要求に対するものでないため（図９ステップＳ２３０１ＮＯ）、該制御情報削除通知メッセージに対応する制御情報を制御情報記憶部２５から削除する（図９ステップＳ２３０３、スイッチ３０の制御情報記憶部参照）。制御メッセージ変換部２２は、次に、前記制御情報削除通知メッセージをネットワークコントローラ３０へ通知するように変換する（図９ステップＳ２３０４）。次に、制御メッセージ変換部２２は、制御情報記憶部２５を参照して、入替待機中の制御情報が存在しないか検索する（図９ステップＳ２３０５）。今回は存在しないので（図９ステップＳ２３０５ＮＯ）、制御情報削除通知メッセージの受信を契機とする変換ルールの適用はこれで終わりとなる。制御通信仲介部２１は、ネットワークコントローラ１０に対し、前記変換した制御情報削除通知メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図２０の制御メッセージ中継装置２０とネットワークコントローラ１０間の矢印）。スイッチ３０は、その後、１９２．１６８．０．１から１９２．１６８．０．１０２宛てのパケットをＰｏｒｔ３へ転送し始める処理を継続する（図２０のスイッチ３０の制御情報記憶部参照）。
【０１０７】
上記の動作のように、制御メッセージ中継装置２０は、スイッチ３０に保持されている制御情報の有効期限が満了したことを検知し、内部情報を更新すると同時に、ネットワークコントローラ１０へ必要な情報を送信する。
【０１０８】
次に、スイッチ３０が、再度、制御情報の設定要求をしてきたときに、制御メッセージ中継装置２０が、制御メッセージ中継装置２０内部に蓄えている制御情報にて設定し、ネットワークコントローラ１０に対し制御情報の設定要求を送信しない、という動作について説明する。図２１に示すように、スイッチ３０に、再び、１９２．１６８．０．１から１９２．１６８．０．１００への通信が発生すると、スイッチ３０は、ネットワークコントローラ１０に対して、制御情報の設定要求メッセージを発信する（図２１のスイッチ３０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御情報設定要求メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図１０に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１０９】
制御メッセージ変換部２２は、制御情報の設定要求メッセージから制御情報を取り出し、制御情報記憶部２５を参照し、１９２．１６８．０．１から１９２．１６８．０．１００への通信に対する制御情報がマッチすることを検出する（図１０ステップＳ２４０１のＹＥＳ）。そのため、制御メッセージ変換部２２は、該制御情報をスイッチ３０へ設定するための制御情報の設定用の制御メッセージを作成する。同時に、制御メッセージ変換部２２は、制御情報記憶部２５へ、該制御情報の設定済みフラグをマークする（図１０ステップＳ２４０２、図２１のスイッチ３０の制御情報記憶部参照）。制御通信仲介部２１は、スイッチ３０に対し、前記作成した制御情報の設定用制御メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図２２のスイッチ３０と制御メッセージ中継装置２０間の矢印）。スイッチ３０は、該制御情報を設定し、１９２．１６８．０．１から１９２．１６８．０．１００あての通信をＰｏｒｔ１へ転送する制御を再開する（図２２のスイッチ３０の制御情報記憶部参照）。
【０１１０】
上記の動作のように、制御メッセージ中継装置２０は、スイッチ３０から制御情報の設定要求に対して、該当する制御情報を記憶している場合には、ネットワークコントローラ１０へ問合せなしに、通信制御を設定することができ、ネットワークコントローラ１０が応答したかのように答えることができる。
【０１１１】
次に、ネットワークコントローラ１０から、明示的な制御情報の削除指示を受け取った際の制御メッセージ中継装置２０の動作について説明する。ネットワークコントローラ１０は、１９２．１６８．０．１から１９２．１６８．０．１００への通信を取り消すため、制御情報を削除するための制御情報の削除用の制御メッセージを発信する（図２３のネットワークコントローラ１０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、制御情報の削除用の制御メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図７に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１１２】
制御メッセージ変換部２２は、受信した制御メッセージが削除要求であることを判断する（図７ステップＳ２１０１ＹＥＳ）。制御メッセージ変換部２２は、制御情報記憶部２５を参照し、制御情報の削除用制御メッセージが指定する１９２．１６８．０．１から１９２．１６８．０．１００への通信に対する制御情報が存在し、設定済みフラグがマークされていることを判断する（図７ステップＳ２１０３ＹＥＳ）。制御メッセージ変換部２２は、制御情報記憶部２５の該当制御情報の削除中フラグを更新し（図７ステップＳ２１０４、図２３制御情報記憶部（上段）のフラグ「Ｒｅｍ」参照）、入替削除中フラグを参照する。ここでは、該当制御情報は、入替中でないため（図７ステップＳ２１０５ＮＯ）、制御メッセージ変換部２２は、制御情報の削除用の制御メッセージをスイッチ３０宛ての制御メッセージとして変換する（図７ステップＳ２１０６）。制御通信仲介部２１は、スイッチ３０に対し、前記作成した制御情報の削除用の制御メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図２３の制御メッセージ中継装置２０とスイッチ３０間の矢印）。
【０１１３】
前記制御情報の削除用の制御メッセージを受信したスイッチ３０は、該制御情報を削除し、１９２．１６８．０．１から１９２．１６８．０．１００宛てのパケットの転送を停止する（図２４スイッチ３０の制御情報記憶部参照）。スイッチ３０は、ネットワークコントローラ１０に対し、前記制御情報を削除したことを、制御情報削除通知メッセージとして発信する（図２４のスイッチ３０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御情報削除通知メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図９に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１１４】
制御メッセージ変換部２２は、該制御情報削除通知メッセージの削除理由が削除要求であるため、制御情報記憶部２５を参照し、入替削除中フラグがマークされているかをチェックする（図９ステップＳ２３０１）。しかしながら、入替削除中フラグがマークされていないため（図９ステップＳ２３０１ＮＯ）、制御メッセージ変換部２２は、該制御情報削除通知メッセージに対応する１９２．１６８．０．１から１９２．１６８．０．１００宛ての通信に対する制御情報を、制御情報記憶部２５から削除する。制御メッセージ変換部２２は、前記制御情報削除通知メッセージをネットワークコントローラ１０へ到達する制御メッセージに変換する（図９ステップＳ２３０４）。制御メッセージ変換部２２は、制御情報記憶部２５から、入替待機中フラグを持つ制御情報を検索するが、存在しないため（図９ステップＳ２３０５ＮＯ）、制御情報の変換処理を終了する。制御通信仲介部２１は、ネットワークコントローラ１０に対して、前記変換した制御情報削除通知メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図２４の制御メッセージ中継装置２０とネットワークコントローラ１０間の矢印）。
【０１１５】
次に、図２５〜図２６を用いて、ネットワークコントローラ１０が明示的に制御情報の削除を指示したときに、スイッチ３０に該当する制御情報が設定されていないときの動作について具体的に説明する。図２５は、図２１の状態において、ネットワークコントローラ１０から制御情報の削除用の制御メッセージを受信した状態を示している。
【０１１６】
ネットワークコントローラ１０は、１９２．１６８．０．１から１９２．１６８．０．１００宛ての通信を取り消すため、制御情報を削除するための制御メッセージを発信する（図２５のネットワークコントローラ１０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御情報の削除用の制御メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図７に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１１７】
制御メッセージ変換部２２は、受信した制御メッセージが削除要求であることを判断する（図７ステップＳ２１０１ＹＥＳ）と、制御情報記憶部２５を参照し、該制御メッセージにて指定された１９２．１６８．０．１から１９２．１６８．０．１００宛ての通信に対する制御情報が存在し、設定済みフラグがマークされていないことを判断する（図７ステップＳ２１０３ＮＯ）。
【０１１８】
制御メッセージ変換部２２は、制御情報記憶部２５から、削除対象の制御情報を削除する（図７ステップＳ２１０８、図２６制御情報記憶部（上段）参照）。さらに、通信制御メッセージ変換部２２は、該制御情報を削除要求で削除したことを、ネットワークコントローラ１０に応答するための制御情報削除通知メッセージを作成する（図７ステップＳ２１０９）。制御通信仲介部２１は、ネットワークコントローラ１０に対して、前記作成した制御情報削除通知メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図２６の制御メッセージ中継装置２０とネットワークコントローラ１０間の矢印）。
【０１１９】
上記の動作のように、制御メッセージ中継装置２０は、スイッチ３０に設定済みの制御情報の場合、スイッチ３０の削除を待ってから、ネットワークコントローラ１０に対し、制御情報の削除通知メッセージを送信する。一方、スイッチ３０に設定済みでない制御情報の場合、制御メッセージ中継装置２０は、制御メッセージ中継装置２０内の処理のみで、ネットワークコントローラ１０へ削除通知を応答する。このように、削除する制御情報を行う際も、制御メッセージ中継装置２０内で仮想化した制御情報による管理が行われる。
【０１２０】
上記一連の動作が示すように、制御メッセージ中継装置２０は、その動作により、ネットワークコントローラ１０とスイッチ３０との物理的関係を切り離し、仮想化することができる。すなわち、制御メッセージ中継装置２０は、ネットワークコントローラ１０からは、より巨大なスイッチ資源を保持したスイッチを制御しているように見せ、スイッチ３０からは、ネットワークコントローラ１０が一貫して制御しているように見せることができる。換言すれば、ネットワークコントローラ１０からは、スイッチ３０が実際保持できる数以上に制御情報を保持できるように見え、スイッチ３０側からは、制御情報の設定要求が実際にネットワークコントローラ１０まで届かなくても、矛盾のない制御情報の設定を受けることができるようになる。
【０１２１】
［第２の実施形態］
続いて、上記第１の実施形態における適用する変換ルールに変更を加えた第２の実施形態について説明する。第１の実施形態との相違点は、制御情報の入替のみでなく、制御情報の統合（集約／抽象化）を行うことで、スイッチ自体が同時に転送可能な通信数を増やせることにある。その他、基本的な構成は第１の実施形態と同様であるので、以下、その相違点を中心に説明する。
【０１２２】
本発明の第２の実施形態では、通信確立要求メッセージ以外の制御メッセージをインターセプトしたときの仲介動作が異なる。具体的には、制御情報操作（設定／削除）メッセージ、制御情報設定失敗通知メッセージ、制御情報削除通知メッセージ及び制御情報の設定要求メッセージの受信時の動作に、制御情報の統合（集約／抽象化）に伴う動作が追加されることになる。すなわち、図６のフローチャートのステップＳ１２０２にて適用されるメッセージ毎に適用される変換ルールに変更が加えられている。
【０１２３】
また、本実施形態では、制御情報記憶部２５が記憶する制御情報の設定状態として、第１の実施形態で説明した制御情報の設定状態（各種フラグ）に加え、統合された制御情報を示す統合属性と、統合対象となり関連していることを示す依存情報を記憶する。
【０１２４】
［変換ルール適用の具体例２−１（制御情報操作メッセージの受信時）］
図２７は、制御情報操作メッセージを受信した場合に適用される変換ルールを説明するためのフローチャートである。本フローは、制御メッセージ中継装置２０が、ネットワークコントローラ１０から発せられる制御情報の操作（設定用／削除用）メッセージをインターセプトしたときから開始される。制御メッセージ中継装置２０の制御通信仲介部２１は、ネットワークコントローラ１０から発せられる制御情報操作メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は制御ポリシー記憶部２３を参照し、図２７に示されるフローに従って変換ルールを適用する。
【０１２５】
制御メッセージ変換部２２は、制御情報操作メッセージから制御情報を取り出し、制御情報記憶部２５を参照して、競合する統合済制御情報が存在するかどうかを判定する（図２７ステップＳ３１０１）。ここで競合する統合済み制御情報が存在するとは、制御情報操作メッセージにて操作されようとする制御情報のマッチ条件が、統合済みの制御情報のマッチ条件の範囲内にあることを言う。
【０１２６】
制御メッセージ変換部２２は、該制御情報に競合する統合制御情報が存在しない場合（図２７ステップＳ３１０１ＮＯ）、通常の制御情報操作メッセージ受信時の変換ルールの適用、すなわち、図７のフローチャートに示された処理を行う（図２７ステップＳ３１１２）。
【０１２７】
制御メッセージ変換部２２は、該制御情報に競合する統合済制御情報が存在する場合（図２７ステップＳ３１０１ＹＥＳ）、該制御情報のアクションの内容が、競合する統合済制御情報のアクションにマッチするかを判定する（図２７ステップＳ３１０２）。ここで、アクション同士がマッチするとは、マッチ条件に適合するパケットに適用する処理内容が矛盾しないことを意味し、一般的には、アクションフィールドの内容が一致することを言う。ただし、アクションが削除系処理内容の場合で、かつ、通信システムとして他の統合済制御情報の条件にマッチし、スイッチ３０における制御情報の適用を許可されている場合、これに対しても矛盾しないと扱うことができる。
【０１２８】
制御メッセージ変換部２２は、該制御情報に競合する統合済制御情報のアクションがマッチしない場合（図２７ステップＳ３１０２ＮＯ）、該制御情報又は競合する統合済制御情報の優先度変更により、競合の回避が可能かどうかを判定する（図２７ステップＳ３１０３）。
【０１２９】
制御メッセージ変換部２２は、該制御情報又は競合する統合済制御情報の優先度の変更により、競合の回避が可能な場合（図２７ステップＳ３１０３ＹＥＳ）、制御情報記憶部２５に対し、優先度を変更した制御情報の登録又は統合済制御情報の優先度更新を行う。このとき、制御情報の優先度を更新する場合、ネットワークコントローラ１０からの設定と異なるため、マッチ条件が重複するが異なる優先度を持つ統合済制御情報として扱う。制御メッセージ変換部２２は、スイッチ３０に、制御情報記憶部２５に登録し又は更新した統合済制御情報を設定するための制御情報の設定用制御メッセージを作成する。また、このときに、該統合済制御情報の設定フラグをマークする（図２７ステップＳ３１０４）。
【０１３０】
制御メッセージ変換部２２は、該制御情報に競合する統合済制御情報のアクションがマッチした場合（図２７ステップＳ３１０２ＹＥＳ）、または、該制御情報又は競合する統合済制御情報が優先度により競合を回避できると判断した場合（図２７ステップＳ３１０４〜）、制御情報の操作メッセージが制御情報の削除要求であるか否かを判定する（図２７ステップＳ３１０５）。
【０１３１】
制御情報の操作メッセージが削除要求の場合（図２７ステップＳ３１０５ＹＥＳ）、制御メッセージ変換部２２は、該制御情報が、対応する統合済制御情報によって統合されている制御情報（被統合制御情報）のうちの最後の制御情報かどうかを判定する（図２７ステップＳ３１０６）。
【０１３２】
一方、制御メッセージ変換部２２は、制御情報の操作メッセージが削除要求でない場合（図２７ステップＳ３１０５ＮＯ）、または、該制御情報が、対応する統合済制御情報によって統合されている制御情報のうちの最後の制御情報でない場合（図２７ステップＳ３１０６ＮＯ）、制御情報記憶部２５へ制御情報の更新を行う（図２７ステップＳ３１０７）。
【０１３３】
制御情報記憶部２５へ制御情報の更新後、制御メッセージ変換部２２は、必要に応じて、ネットワークコントローラ１０に対し、制御情報設定通知メッセージを作成する（図２７ステップＳ３１０８）。ここで、制御情報設定通知メッセージとは、該制御情報の設定が削除要求のときに対する、制御情報削除通知メッセージのような応答を意味する。
【０１３４】
制御メッセージ変換部２２は、該制御情報又は競合する統合済制御情報の優先度の変更により、競合の回避が可能でない場合（図２７ステップＳ３１０３ＮＯ）、制御情報記憶部２５への該当制御情報の登録と、入替待機中フラグのマークをする（図２７ステップＳ３１０９）。
【０１３５】
次に、制御メッセージ変換部２２は、競合の回避が可能でないので、統合済制御情報の解体、解除を行う。制御メッセージ変換部２２は、制御情報記憶部２５から、統合済制御情報を削除し、制御情報表から関連性を削除する（図２７ステップＳ３１１０）。
【０１３６】
一方、制御メッセージ変換部２２は、削除指示を受けた制御情報が、対応する統合済制御情報によって統合されている制御情報のうちの最後の制御情報であった場合（図２７ステップＳ３１０６ＹＥＳ）、又は、統合済制御情報の解体処理（図２７ステップＳ３１０９〜）の場合、スイッチ３０に対し、該統合済制御情報の削除を指示するための制御情報の削除用の制御メッセージを作成する。また、制御メッセージ変換部２２は、制御情報記憶部２５の該当制御情報に削除中フラグをマークする（図２７ステップＳ３１１１）。
【０１３７】
以上、図２７に示す変換ルールにより作成された各通信制御メッセージは、制御通信仲介部２１により、ネットワークコントローラ１０又はスイッチ３０へと発信される。
【０１３８】
以上の動作により、制御メッセージ中継装置２０は、ネットワークコントローラ１０から設定された制御情報を制御情報記憶部２５に記憶するとともに、統合された制御情報を含めて、スイッチ３０に対し、設定済みの制御情報に矛盾しない制御情報を設定することができる。また、ネットワークコントローラ１０には、必要に応じて設定応答を返すことにより、制御情報を設定済みであることを伝えることができるようになる。
【０１３９】
［変換ルール適用の具体例２−２（制御情報の設定失敗通知の受信時）］
次に、図２８を参照して、スイッチ３０からの制御情報の設定失敗通知を受けた場合に適用される変換ルールの具体例について説明する。本フローは、スイッチ３０から発せられる制御情報の設定失敗通知メッセージを制御メッセージ中継装置２０がインターセプトしたときから開始される。
【０１４０】
制御メッセージ中継装置２０の制御通信仲介部２１は、スイッチ３０から発せられる制御情報設定失敗通知メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は制御ポリシー記憶部２３を参照し、図２８に示されるフローに従って変換ルールを適用する。
【０１４１】
はじめに、制御メッセージ変換部２２は、該制御情報設定失敗通知メッセージから、失敗理由を抽出し、領域不足エラーかどうかを判別する。（図２８ステップＳ３２０１）。
【０１４２】
前記制御情報設定失敗通知メッセージの失敗理由が領域不足エラーの場合（図２８ステップＳ３２０１ＹＥＳ）、制御メッセージ変換部２２は、制御情報記憶部２５を参照し、設定を失敗した制御情報と統合可能な制御情報、又は、統合済制御情報が存在するかを検索する（図２８ステップＳ３２０２）。
【０１４３】
ここで、２つの制御情報の統合の方法の一例としては、アクションの内容が同一であるとき、マッチ条件のフィールドにおいて、ドメイン分割で切り分けられる範囲を抽出する方法が挙げられる。例えば、１９２．１６８．０．２／３６と１９２．１６８．０．３／３６であれば、１９２．１６８．０．２／３５として、抽象度を上げ、統合することができる。また、制御情報の統合の方法の別の一例としては、アクションの内容が同一であるとき、マッチ条件のフィールドにおいて、ビットの差異をユークリッド距離で小さいものから選択する方法が挙げられる。例えば、１９２．１６８．０．１／３６と１９２．１６８．１．２／３６に対して、１９２．１６８．１．１／３６があった場合、前者は、ユーグリッド距離が１、後者は２となるため、前者をまとめて、１９２．１６８．０．１／２５５．２５５．２５４．２５５とした方が影響範囲を狭くすることができる。
【０１４４】
制御メッセージ変換部２２は、設定を失敗した制御情報と統合可能な制御情報又は統合済制御情報が存在する場合（図２８ステップＳ３２０２ＹＥＳ）、制御メッセージ変換部２２は、それらを統合した制御情報に対して、競合する制御情報が存在するかを検索する（図２８ステップＳ３２０３）。
【０１４５】
制御メッセージ変換部２２は、作成する統合済制御情報に競合する制御情報が存在する場合（図２８ステップＳ３２０３ＹＥＳ）、優先度の解決により競合が回避可能かどうかを判定する（図２８ステップＳ３２０４）。
【０１４６】
制御メッセージ変換部２２は、前記判定の結果、優先度解決により競合を回避可能であると判定した場合（図２８ステップＳ３２０４ＹＥＳ）、制御情報記憶部２５に、優先度解決により変更になる制御情報を、統合済制御情報として更新するとともに、当該制御情報をスイッチ３０へ設定するための制御情報の設定用（優先度変更用）制御メッセージを作成する。また、制御メッセージ変換部２２は、前記制御情報の設定済みフラグをマークする（図２８ステップＳ３２０５）。このとき、新たに作成する統合済制御情報側の優先度設定により回避する場合は、本フェーズでは何もせず、次のステップＳ３２０６でその優先度を設定することとする。
【０１４７】
制御メッセージ変換部２２は、作成する統合済制御情報に競合する制御情報が存在しない場合（図２８ステップＳ３２０３ＮＯ）、又は、制御情報の競合が優先度により解決できると判定した場合（図２８ステップＳ３２０５〜）、元の設定に失敗した制御情報の設定済みフラグを削除する。そして、元の設定に失敗した制御情報と統合可能な制御情報とを統合した制御情報を、制御情報記憶部２５に統合済制御情報として登録し、入替待機中フラグをマークする（図２８ステップＳ３２０６）。
【０１４８】
制御メッセージ変換部２２は、スイッチ３０に対し、元の設定に失敗した制御情報に対して統合対象として選択した制御情報を削除させるための制御情報の削除用の制御メッセージを作成し、制御情報記憶部２５に入替削除中フラグをマークする（図２８ステップＳ３２０７）。
【０１４９】
一方、ステップＳ３２０１で、通信制御失敗応答メッセージの失敗理由が領域不足エラーでない場合（図２８ステップＳ３２０１ＮＯ）と判定した場合、次の処理が行われる。まず、制御メッセージ変換部２２は、制御情報記憶部２５を参照して、設定失敗した制御情報が統合済制御情報かどうかを判定する（図２８ステップＳ３２０８）。
【０１５０】
制御メッセージ変換部２２は、設定失敗した制御情報が統合済制御情報の場合（図２８ステップＳ３２０８ＹＥＳ）、制御情報記憶部２５から、該当する統合済制御情報を削除する（図２８ステップＳ３２０９）。また、該統合済制御情報により統合されていた制御情報（「被統合済制御情報」と呼ぶこととする）を、制御情報記憶部２５から抽出する。そして、制御メッセージ変換部２２は、制御情報記憶部２５から抽出された被統合済制御情報同士の統合関係を削除する（図２８ステップＳ３２１０）。
【０１５１】
制御メッセージ変換部２２は、上記ステップＳ３２０９と同時に、制御情報記憶部２５を参照し、統合の起因となった制御情報を特定する（図２８ステップＳ３２１３）。ここで、統合の起因となった制御情報は１つとは限らないこととする。制御メッセージ変換部２２は、統合の起因となった制御情報を、制御情報の設定の失敗として置き換え、以後の処理を継続する。
【０１５２】
ここで、統合の起因となった制御情報の抽出方法の一例として、被統合済制御情報全部を選択する方法がある。また、ここで統合の起因となった制御情報の抽出方法の別の一例として、被統合済制御情報に順番を記憶しておき、最後に設定された被統合済制御情報を選択する方法が挙げられる。
【０１５３】
なお、制御メッセージ変換部２２は、制御情報の設定に失敗した理由が領域不足エラーでなく、設定に失敗した制御情報が統合済制御情報でない場合（図２８ステップＳ３２０８ＮＯ）、又は、設定失敗した制御情報に対して統合可能な制御情報が存在しない場合（図２８ステップＳ３２０２ＮＯ）、又は、作成する統合済制御情報に対し、優先度調整により衝突回避不能な制御情報が存在する場合（図２８ステップＳ３２０４ＮＯ）、設定失敗した制御情報に対して、第１の実施形態で説明した変換ルール、すなわち、図８のフローチャートに示された処理を実行する（図２８ステップＳ３２１１）。このとき、入替制御情報の選択範囲は統合済制御情報を含む。また、制御メッセージ変換部２２は、統合の起因となった制御情報に展開された場合（図２８ステップＳ３２１３〜）、統合の起因となった制御情報の各々に対して、通常の通信制御設定失敗ルールの適用、すなわち、図８のフローチャートに従った処理を実行する（図２８ステップＳ３２１１）。このとき、入替制御情報の選択範囲には統合済制御情報を含む。
【０１５４】
以上の動作により、制御メッセージ中継装置２０は、スイッチ３０に対する制御情報の設定失敗を契機に、制御情報を統合し、統合済制御情報を作成し、スイッチ３０へ再設定、又は、入れ替えを実現することができる。また、通信終了などのエラーもネットワークコントローラ１０へ通知することができる。
【０１５５】
［変換ルール適用の具体例２−３（制御情報の削除通知の受信時）］
次に、図２９を参照して、スイッチ３０からの制御情報の削除通知を受けた場合に適用される変換ルールの具体例について説明する。本フローは、スイッチ３０から発せられる制御情報の削除通知メッセージを制御メッセージ中継装置２０がインターセプトしたときから開始される。
【０１５６】
制御メッセージ中継装置２０の制御通信仲介部２１は、スイッチ３０から発せられる制御情報削除通知メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は制御ポリシー記憶部２３を参照し、図２９に示されるフローに従って変換ルールを適用する。
【０１５７】
はじめに、制御メッセージ変換部２２は、制御情報記憶部２５を参照して、該制御情報削除通知メッセージの削除対象の制御情報が統合済制御情報であるかどうかを判定する（図２９ステップＳ３３０１）。
【０１５８】
制御メッセージ変換部２２は、削除対象の制御情報が統合済制御情報である場合（図２９ステップＳ３３０１ＹＥＳ）、制御情報記憶部２５を参照して、入替削除中フラグがマークされているかをチェックし、入れ替えのための削除中であるかを判定する。また、制御メッセージ変換部２２は、該制御情報削除通知メッセージから、削除の理由が削除要求の応答であったかを判定する（図２９ステップＳ３３０２）。
【０１５９】
制御メッセージ変換部２２は、削除する統合済制御情報が入替削除中、理由が削除要求の応答のいずれでもない場合（図２９ステップＳ３３０２ＮＯ）、制御情報記憶部２５から、該統合済制御情報を削除する。制御メッセージ変換部２２は、制御情報記憶部２５を参照し、関連する被統合済制御情報を抽出する。制御メッセージ変換部２２は、制御情報記憶部２５から、被統合済制御情報の統合に関する情報を削除し、統合前の状態に戻す処理を行う（図２９ステップＳ３３０３）。
【０１６０】
その後、制御メッセージ変換部２２は、削除する制御情報、もしくは、抽出された被統合済制御情報に対して、第１の実施形態で説明したように、図２９のフローチャートに従い、変換ルールを適用する（図２９ステップＳ３３０４）。このとき、入替制御情報の選択範囲には統合済制御情報が含まれる。
【０１６１】
以上の動作により、制御メッセージ中継装置２０は、スイッチ３０からの制御情報削除通知を契機に、統合済制御情報を含めた制御情報の入れ替えと、統合済制御情報の展開によるネットワークコントローラ１０が把握している制御情報の設定状態に適合する制御情報の削除通知を実現する。
【０１６２】
なお、制御情報の設定要求時の変換ルールの適用に関しては、制御情報記憶部２５の検索範囲を統合済制御情報にも広げるだけで変わりはないので説明を省略する。
【０１６３】
続いて、図３０〜図４１を参照して、上記した一連の動作を、制御メッセージ中継装置２０及びスイッチ３０の制御情報記憶部の状態とともに説明する。
【０１６４】
また、以下の説明では、説明簡略化のため、スイッチ３０がその制御情報記憶部に保持可能な制御情報の数は、２エントリであるものとする。また、図３１〜図４１では、太線矢印でメッセージの流れを示し、スイッチなどの図の下部に、流れているメッセージの内容を記載する。さらに、図右部に、制御メッセージ中継装置２０の制御情報記憶部２５と、スイッチ３０が記憶する制御情報記憶部（フローテーブル）を簡易化したものを記載する。制御情報記憶部（フローテーブル）のＲｕｌｅフィールドは、マッチ条件を格納するＭａｔｃｈフィールドとマッチ条件に適合するパケットに適用する処理内容を示すＡｃｔｉｏｎフィールドとを対応付けて構成され、制御情報を格納可能となっている。なお、「ＳＲＣ」は送信元ＩＰアドレスを示し、「ＤＳＴ」は宛先ＩＰアドレスを示す。
【０１６５】
制御メッセージ中継装置２０の制御情報記憶部２５のＩｎｆｏ−Ｍａｒｋｉｎｇ欄の「Ｓｅｔ」は設定フラグを示し、「Ｒｅｍ」は削除中フラグを示す。また、「Ｅｘｃｈ」は、入替削除中フラグを示し、「Ｗａｉｔ」は入替待機中フラグを示す。また、各フラグには、マーキングされているか否かだけでなく、設定順序や待機順序が分かるように、順序ナンバーで付記する。また、「Ｍｅｔ」は、対応統合番号を示し、該当する制御情報が統合されたときの統合済制御情報の番号を記載する。また、図３０〜図４１の中段のテーブルは、統合済制御情報を記憶するための統合済制御情報記憶部（メタ制御情報）を示す。なお、図３０〜図４１に示した管理方法は、一例であり、制御情報記憶部２５に統合フラグ欄（ＮＯ）を加えて、一つのテーブルとして管理しても問題ない。また、統合範囲をより明確に分かるようにするため、任意ビットのマスクをＩＰアドレス表記で記載する。
【０１６６】
図３０は、１９２．１６８．０．１から１９２．１６８．０．１００宛ての通信及び１９２．１６８．０．１から１９２．１６８．０．１０１宛ての通信が設定され、転送している状態を示している（第１の実施形態の図１４の状態に相当）。ここで、１９２．１６８．０．１から１９２．１６８．０．１０２宛ての通信が発生し、制御情報の設定要求がネットワークコントローラ１０に届いたものとする。
【０１６７】
ネットワークコントローラ１０は、スイッチ３０へ向け、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５への通信をＰｏｒｔ１へ転送させるための制御情報の設定用の制御メッセージを発行する（図３１のネットワークコントローラ１０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図２７に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１６８】
この時点では、競合する制御情報は存在しないため、制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照して、図１０に示すフローに相当する変換ルールの適用を実施する（図２７ステップＳ３１１２）。第１の実施形態と同様の処理により、制御メッセージ中継装置２０は、制御情報記憶部２５に制御情報を登録し、制御通信仲介部２１から制御情報設定メッセージをスイッチ３０へ送信する（図３１の制御メッセージ中継装置２０とスイッチ３０間の矢印）。
【０１６９】
スイッチ３０は、制御情報記憶部に空きがないので、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての通信に対する制御情報の通信制御失敗通知メッセージを発信する（図３２のスイッチ３０と制御メッセージ中継装置２０間の矢印）。なお、この通信制御失敗通知メッセージには、失敗理由が領域不足エラーであることが示されている。制御メッセージ中継装置２０は、該通信制御失敗通知メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図２８に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１７０】
制御メッセージ変換部２２は、前記通信制御失敗通知メッセージから、失敗理由が領域不足エラーであることを検出する（図２８ステップＳ３２０１ＹＥＳ）。制御メッセージ変換部２２は、制御情報記憶部２５を参照し、統合可能なルールを選択する。今回は、ユークリッド距離にて選出する方法で説明する。候補としては、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０１／２５５．２５５．２５５．２５５宛ての通信に対する制御情報と１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての通信に対する制御情報がある。これらは、互いにユークリッド距離が１であるが、アクションの矛盾性チェックから、Ｐｏｒｔ１への転送が同じである１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５５宛ての通信に対する制御情報が選択される（図２８ステップＳ３２０２ＹＥＳ）。このとき、両者を統合すると、マッチ条件の３１ビット目を任意にした１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５３宛ての制御情報となる。この統合済制御情報に競合するルールは存在しないため（図２８ステップＳ３２０３ＮＯ）、制御メッセージ変換部２２は、制御情報記憶部２５に対して、設定に失敗した１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての制御情報の設定済みフラグを削除する（図３３の制御情報記憶部（上段）のＳｅｔフラグ参照）。また、制御メッセージ変換部２２は、制御情報記憶部（メタ制御情報）に統合した制御情報を登録し、入替待機フラグ（Ｗａｉｔ）をマークする（図２８ステップＳ３２０６、図３３制御情報記憶部（メタ制御情報）のＷａｉｔフラグ参照）。
【０１７１】
制御メッセージ変換部２２は、統合して入れ替えるため、統合対象として選択した１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５５宛ての通信に対する制御情報を削除するためのスイッチ３０への制御情報の削除用制御メッセージを作成する。また、制御メッセージ変換部２２は、制御情報記憶部２５から該制御情報の入れ替え削除中フラグを設定する（図２８ステップＳ３２０６、図３３制御情報記憶部（上段）の上から１番目の制御情報参照）。制御通信仲介部２１は、スイッチ３０に対して、前記作成した該制御情報設定メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図３３の制御メッセージ中継装置２０とスイッチ３０間の矢印）。
【０１７２】
スイッチ３０は、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５５宛ての通信に対する制御情報を削除する制御情報設定メッセージを受信したので、制御情報記憶部から該当する制御情報を削除する（図３４スイッチ３０の制御情報記憶部の上から１番目のエントリの削除）。
【０１７３】
そして、スイッチ３０は、ネットワークコントローラ１０に対し、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５５宛ての通信に対する制御情報を、削除要求を理由に削除したことを、制御情報削除通知メッセージとして送信する（図３４スイッチ３０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御情報削除通知メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図２９に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１７４】
制御メッセージ変換部２２は、まず、制御情報削除通知メッセージを参照し、削除制御情報が統合済制御情報ではないため（図２９ステップＳ３３０１ＮＯ）、制御ポリシー記憶部２３を参照して、図９に示すフローに相当する変換ルールの適用を実施する（図２９ステップＳ３３０４）。制御メッセージ変換部２２は、制御情報記憶部２５を参照し、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５５宛ての通信に対する制御情報が入替削除中であり、かつ、制御情報削除通知メッセージから、削除要求が理由で削除されていることから（図９ステップＳ２３０１ＹＥＳ）、制御情報記憶部２５の該制御情報の設定中フラグ及び入替削除中フラグを削除する（図９ステップＳ２３０１、図３４の制御情報記憶部（上段）の上から１番目のエントリのＳｅｔフラグ、Ｅｘｃｈフラグ参照）。
【０１７５】
制御メッセージ変換部２２は、制御情報記憶部２５を参照し、入替待機中制御情報として、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５３宛ての統合済制御情報が存在するため（図３４の制御情報記憶部（メタ制御情報）参照）、該統合済制御情報を取り出す（図９ステップＳ２３０５ＹＥＳ〜ステップＳ２３０６）。
【０１７６】
制御メッセージ変換部２２は、該統合済制御情報をスイッチ３０に設定するための制御情報設定メッセージを作成し、制御情報記憶部２５から、設定済みフラグのマークと入替待機中フラグの削除を行う（図９ステップＳ２３０７、図３５の制御情報記憶部（メタ制御情報）Ｓｅｔフラグ及びＥｘｃｈフラグ参照）。制御通信仲介部２１は、スイッチ３０に対し、前記作成した該制御情報設定メッセージを送信する（図６ステップＳ１２０３ＹＥＳ〜図６ステップＳ１２０４、図３５の制御メッセージ中継装置２０とスイッチ３０間の矢印）。スイッチ３０は、該制御情報を設定し、該当パケットのＰｏｒｔ１への転送を開始する（図３５のスイッチ３０の制御情報記憶部の上から１番目のエントリ参照）。ここで、設定された制御情報は統合されたマッチ条件を持ち、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５５宛てと、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての双方のパケットにマッチすることになる。このため、スイッチ３０は、２つのエントリで、３つの通信に対してパケット転送できることになる。
【０１７７】
上記のように、制御メッセージ中継装置２０は、制御情報を統合し、入れ替える動作を行う。これにより、ネットワークコントローラ１０に対しては制御情報の設定が成功したように、スイッチ３０に対してはより広範囲の通信を同時に行えているかのように見せることができる。
【０１７８】
次に、統合済制御情報を取り扱う本実施形態において、ネットワークコントローラ１０から、明示的な制御情報の削除指示を受け取った際の制御メッセージ中継装置２０の動作について説明する。
【０１７９】
ネットワークコントローラ１０は、最初にネットワークコントローラ１０が、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５５宛ての通信を取り消すため、制御情報を削除するための制御情報の削除用の制御メッセージを発信する（図３６のネットワークコントローラ１０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、制御情報の削除用の制御メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図２７に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１８０】
制御メッセージ変換部２２は、制御情報記憶部２５を参照し、競合する統合済制御情報が存在するかをチェックする。ここでは、図３６に示すとおり、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５３への通信という形で統合された統合済制御情報が存在することを検出する（図２７ステップＳ３１０１ＹＥＳ）。
【０１８１】
制御メッセージ変換部２２は、削除指示を受けた制御情報のアクションと、競合する統合済制御情報のアクションを照合し、マッチすると判定する（図２７ステップＳ３１０２ＹＥＳ）。
【０１８２】
制御メッセージ変換部２２は、受信した制御メッセージが削除要求であるため（図２７ステップＳ３１０５ＹＥＳ）、制御情報記憶部２５を参照し、削除要求を受けた制御情報が、競合する統合済制御情報に統合された制御情報のうち最後の制御情報かどうかをチェックする。図３６の制御情報記憶部のＭｅｔフラグに示すとおり、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての制御情報がまだ存在するため、今回は、統合済制御情報に対する最後の制御情報ではない（図２７ステップＳ３１０６ＮＯ）。
【０１８３】
制御メッセージ変換部２２は、制御情報記憶部２５から、制御情報を更新、すなわち、削除する（図２７ステップＳ３１０７、図３６の制御情報記憶部（上段）の上から１番目のエントリを削除、削除後は図３７参照）。制御メッセージ変換部２２は、制御情報を削除したので、ネットワークコントローラ１０へ向け、制御情報削除通知メッセージを、削除理由に対する応答を理由として作成する（図２７ステップＳ３１０８）。制御通信仲介部２１は、該制御情報削除通知メッセージをネットワークコントローラ１０へ送信する（図３７の制御メッセージ中継装置２０とネットワークコントローラ１０間の矢印）。
【０１８４】
その後、ネットワークコントローラ１０が、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての制御情報の削除を指示してきたとする。ネットワークコントローラ１０は、スイッチ３０へ向け、該制御情報の削除を指示する制御情報設定メッセージを送信する（図３８のネットワークコントローラ１０と制御メッセージ中継装置２０間の矢印）。制御メッセージ中継装置２０は、該制御情報の削除用の制御メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照して、図２７に示すフローに相当する変換ルールの適用を実施する（図６ステップＳ１２０２）。
【０１８５】
制御メッセージ変換部２２は、制御情報記憶部２５を参照し、競合する統合済制御情報が存在するかをチェックする。ここでは、図３８に示すとおり、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５３宛ての通信という形で統合された制御情報が存在することを検出する（図２７ステップＳ３１０１ＹＥＳ）。
【０１８６】
制御メッセージ変換部２２は、削除指示を受けた制御情報のアクションと、競合する統合済制御情報のアクションを照合し、マッチすると判定する（図２７ステップＳ３１０２ＹＥＳ）。
【０１８７】
制御メッセージ変換部２２は、受信した制御メッセージが削除要求であるため（図２７ステップＳ３１０５ＹＥＳ）、制御情報記憶部２５を参照し、競合する統合済制御情報に対して、削除要求を受けた制御情報が競合する統合済制御情報に統合された制御情報のうちの最後の制御情報かどうかをチェックする。今回は、図３８に示すとおり、統合済制御情報に統合された最後の制御情報となる（図２７ステップＳ３１０６ＹＥＳ）。
【０１８８】
制御メッセージ変換部２２は、スイッチ３０に対し、前記統合済制御情報を削除するため制御情報の削除用の制御メッセージを作成する。また、制御メッセージ変換部２２は、制御情報記憶部２５の該当制御情報に削除中フラグをマークする（図２７ステップＳ３１１１、図３９の制御情報記憶部（メタ制御情報）のＲｅｍフラグ参照）。制御通信仲介部２１は、スイッチ３０に対し、前記作成した制御情報設定メッセージを送信する（図３９の制御メッセージ中継装置２０とスイッチ３０間の矢印）。
【０１８９】
スイッチ３０は受信した制御情報の削除用制御メッセージに基づき、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５３宛ての制御情報を削除して、該当パケットの転送を停止する（図４０スイッチ３０の制御情報記憶部の上から１番目のエントリ参照）。スイッチ３０は、ネットワークコントローラ１０に対し、削除要求を理由に該当制御情報を削除したことを通知するための制御情報削除通知メッセージを送信する。（図４０のスイッチ３０と制御メッセージ中継装置２０間の矢印）。
【０１９０】
制御メッセージ中継装置２０は、該制御情報削除通知メッセージをインターセプトする。制御メッセージ中継装置２０の制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し制御通信対応関係が存在しているため（図６ステップＳ１２０１のＹＥＳ）、制御ポリシー記憶部２３を参照し、図２９に示されるフローに従って変換ルールを適用する。
【０１９１】
制御メッセージ変換部２２は、制御情報記憶部２５を参照し、該制御情報削除通知メッセージ記載の１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１００／２５５．２５５．２５５．２５３宛ての制御情報が、統合済制御情報であることを判定する（図２９ステップＳ３３０１ＹＥＳ）。制御メッセージ変換部２２は、該統合済制御情報は、該制御情報削除通知メッセージの削除理由が削除要求応答であったが、制御情報記憶部２５を参照し、入替削除中でないことを判定する（図２９ステップＳ３３０２ＮＯ）。
【０１９２】
制御メッセージ変換部２２は、該統合済制御情報を制御情報記憶部２５から削除する（図４１の制御情報記憶部（メタ制御情報）のエントリ参照）。そして、制御メッセージ変換部２２は、制御情報記憶部２５から、該統合済制御情報に対応する被統合済制御情報１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての制御情報を抽出し、該被統合済制御情報の統合情報欄（Ｍｅｔフラグ）を削除する（図２９ステップＳ３３０３）。
【０１９３】
その後、制御メッセージ変換部２２は、該被統合済制御情報に対して、制御ポリシー記憶部２３を参照して、図９に示すフローに相当する変換ルールの適用を実施する（図２９ステップＳ３３０４）。これにより、被統合ルールである１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５への制御情報の削除と、削除通知処理が行われる。制御メッセージ中継装置２０は、ネットワークコントローラ１０に対し、１９２．１６８．０．１／２５５．２５５．２５５．２５５から１９２．１６８．０．１０２／２５５．２５５．２５５．２５５宛ての制御情報の制御情報削除通知メッセージを送信する（図４１の制御メッセージ中継装置２０とネットワークコントローラ１０間の矢印）。
【０１９４】
以上のように、本実施形態によれば、制御メッセージ中継装置２０が、ネットワークコントローラ１０に対し、スイッチ３０に実際よりも多くの制御情報が設定されているように振舞う。このため、実際に設定されている制御情報のエントリ数に相違があるにも拘らず、ネットワークコントローラ１０は、必要な制御情報がすべて設定されているように認識し、スイッチ３０も、ネットワークコントローラ１０から必要な制御情報が過不足なく設定されているものとして動作することになる。
【０１９５】
なお、上記した第１、第２の実施形態では、制御メッセージ中継装置２０に対して、ネットワークコントローラ１０とスイッチ３０が１対で接続されているものとして説明したが、制御メッセージ中継装置２０が複数対を扱っても問題ないことは明白である。スイッチ情報記憶部２４が、ネットワークコントローラとスイッチの対応付けを記憶、管理しているため、これを参照して、通信制御メッセージの転送先を決定すればよい。
【０１９６】
［第３の実施形態］
続いて、制御メッセージ中継装置が複数のスイッチを１つのスイッチであるかのように見せ掛けるような制御メッセージの変換を行う本発明の第３の実施形態について図面を参照して詳細に説明する。図４２は、本発明の第３の実施形態の制御メッセージ中継装置の構成を示す図である。図４２を参照すると、上記した第１の実施形態の構成に、結合スイッチ構成設定部２６を追加した制御メッセージ中継装置２０ａが示されている。その他構成は、第１の実施形態と同様であるので、以下、その相違点を中心に説明する。
【０１９７】
結合スイッチ構成設定部２６は、複数のスイッチを１個のスイッチに見せるための条件及び対応関係ルールを記憶する。以後、複数のスイッチを結合した１個の仮想的なスイッチを結合スイッチ（「ＶＳＷ」とも記載する。）と呼ぶこととする。
【０１９８】
結合スイッチにする条件の一例としては、実スイッチの集合構成条件と、複数のスイッチを１つのスイッチに見せた結合スイッチとしての識別子とポートの見せ方が挙げられる。例えば、他スイッチが外部に見せるポートと、他スイッチへ接続しているポート数が等しい関係があるスイッチ集合が存在する場合に、該スイッチ群を外部に見せるポートを集めた１つの結合スイッチとして見せることができる。
【０１９９】
図４３は、本発明の第３の実施形態の制御メッセージ中継装置によって仮想的に結合されるスイッチを説明するための図である。図４３の例では、スイッチＳＷ１とＳＷ２があり、スイッチＳＷ１はポートＰ１〜Ｐ６までを、スイッチＳＷ２はポートＰ７〜Ｐ１２までを外部に見せることとする。また、スイッチＳＷ１のポートＰ７〜Ｐ１２はスイッチＳＷ２のポートＰ１〜Ｐ６に接続し、スイッチＳＷ２の外部に見せるポートＰ７〜Ｐ１２と同数接続されている。同様に、スイッチＳＷ２のＰ１〜Ｐ６はスイッチＳＷ１のポートＰ７〜Ｐ１２に接続し、スイッチＳＷ１の外部に見せるポートとＰ１〜Ｐ６と同数接続されている。このようなとき、スイッチＳＷ１とスイッチＳＷ２を１つの結合した仮想的なスイッチＶＳＷとして関連付ける。また、結合スイッチＶＳＷのポートＰ１〜Ｐ６にはスイッチＳＷ１のポートＰ１〜Ｐ６を関連付け、ＶＳＷのポートＰ７〜Ｐ１２にはスイッチＳＷ２のポートＰ７〜Ｐ１２を関連付ける。
【０２００】
結合スイッチにする条件には、実スイッチの識別子と集合構成条件、複数のスイッチを１つのスイッチに見せた結合スイッチとしての識別子とポートの識別子そのものを明記しておくことが好ましい。例えば、図４３の例では、明示的にスイッチＳＷ１とＳＷ２の識別子と、集合構成条件として、スイッチＳＷ１のポートＰ７〜Ｐ１２とスイッチＳＷ２のポートＰ１〜Ｐ６が互いにつながっている。このときに、結合スイッチ化する条件として、結合スイッチの識別子としてＶＳＷを、ポートの識別子としてＰ１〜Ｐ１２を明確に記載しておくことができる。これにより、同一の構成でも、他スイッチとの結合を防ぐことができる。
【０２０１】
また、本実施形態のスイッチ情報記憶部２４ａは、ネットワークコントローラ・スイッチ間の対応関係に加えて、結合スイッチに関する構成情報及び対応関係を記憶する。すなわち、スイッチ情報記憶部２４ａは、実際に構成された結合スイッチの構成情報を記憶する（図４６以降の「結合スイッチ構成テーブル」参照）。
【０２０２】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図４４は、本発明の第３の実施形態の制御メッセージ中継装置の動作（制御通信確立メッセージ受信時）を示すフローチャートである。本フローは、ネットワークコントローラ１０又はスイッチ３０から発せられる制御通信確立メッセージを制御メッセージ中継装置２０ａがインターセプトしたときから開始される。
【０２０３】
制御メッセージ中継装置２０ａの制御通信仲介部２１は、ネットワークコントローラ１０又はスイッチ３０から発せられる制御通信確立メッセージをインターセプトすると、制御メッセージ変換部２２へメッセージを通知する。制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、ネットワークコントローラ・スイッチ間対応関係ルールを取り出す。ネットワークコントローラ・スイッチ間対応関係ルールに従い、必要に応じて、スイッチ情報記憶部２４を参照し、制御通信確立メッセージをインターセプトしたネットワークコントローラ１０・スイッチ３０間の通信の確立が許可されているかをチェックする（図４４ステップＳ４１０１）。
【０２０４】
制御通信確立メッセージをインターセプトしたネットワークコントローラ・スイッチ間の通信確立が許可されている場合（図４４ステップＳ４１０１ＹＥＳ）、制御メッセージ中継装置２０ａの制御メッセージ変換部２２は、スイッチ情報記憶部２４に、当該ネットワークコントローラ・スイッチ間の接続関係を記憶する。既に、該当する情報が設定されている場合、制御メッセージ変換部２２は、接続関係メッセージを通した、又は、有効になったことを示す有効フラグなどを記憶する（図４４ステップＳ４１０２）。
【０２０５】
制御メッセージ変換部２２は、結合スイッチ構成設定部２６を参照し、制御通信確立対象スイッチが結合スイッチの対象かどうかをチェックする（図４４ステップＳ４１０３）。
【０２０６】
制御メッセージ変換部２２は、制御通信確立対象スイッチが結合スイッチの対象であった場合（図４４ステップＳ４１０３ＹＥＳ）に、スイッチ情報記憶部２４へ、該制御通信確立対象スイッチが結合スイッチに加わったことを更新する（図４４ステップＳ４１０４）。
【０２０７】
制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し、既に結合スイッチとして通信制御を確立しているかどうかをチェックする（図４４ステップＳ４１０５）。
【０２０８】
制御メッセージ変換部２２は、制御通信確立対象スイッチが統合される結合スイッチが、未だ制御通信確立状態にない場合（図４４ステップＳ４１０５ＮＯ）、制御通信確立対象を結合スイッチとした制御通信確立メッセージを作成し、制御通信仲介部２１を介して送信する（図４４ステップＳ４１０６）。なお、スイッチ主導で通信を確立するネットワークシステムの場合、制御通信確立対象を結合スイッチとした制御通信確立メッセージとは、スイッチ識別子を結合スイッチとした制御通信確立メッセージとなる。一方、ネットワークコントローラ主導で通信が確立するネットワークシステムの場合、制御通信確立メッセージの要求先が結合スイッチとなるため、制御メッセージ変換部２２は、制御通信確立メッセージの結合スイッチを構成する各スイッチに変換した制御通信確立メッセージを生成する。
【０２０９】
制御メッセージ変換部２２は、制御通信確立対象スイッチが統合される結合スイッチが、すでに制御通信確立状態にある場合（図４４ステップＳ４１０５ＹＥＳ）、制御通信確立対象メッセージの相手は、既に結合スイッチとして確立されているため、改めて制御通信確立を要求する必要はない。しかし、要求元には、確立応答をする必要がある。そのため、制御メッセージ変換部２２は、制御通信確立要求に対する応答メッセージを作成し、制御通信仲介部２１を介して送信する（図４４ステップＳ４１０７）。
【０２１０】
制御メッセージ変換部２２は、また、結合スイッチの構成状態が変化するため、必要に応じて、結合スイッチ状態変化メッセージを作成し、制御通信仲介部２１を介して、ネットワークコントローラ１０又はスイッチ３０へ送信する（図４４ステップＳ４１０８）。例えば、制御通信確立時にポート情報を含める場合、新たに結合対象スイッチが結合スイッチに統合される場合に、統合される新スイッチ分の結合スイッチポートを新たに作成する必要がある。制御メッセージ変換部２２は、この情報をポート追加メッセージとして作成し、送信することになる。なお、これらの構成情報などの授受を確立時に行わないネットワークである場合、本処理を省略することができる。
【０２１１】
制御メッセージ変換部２２は、また、結合スイッチ構成設定部２６を参照し、結合スイッチ構成時に、恒久的に設定する制御情報が存在した場合、該制御情報を設定するための制御情報設定メッセージを作成し、制御通信仲介部２１を介して送信する。また、このときに必要な管理情報があれば、スイッチ情報記憶部２４及び制御情報記憶部２５に記憶する（図４４ステップＳ４１０９）。
【０２１２】
制御メッセージ変換部２２は、制御通信確立対象スイッチが結合スイッチの対象でない場合（図４４ステップＳ４１０３ＮＯ）、インターセプトした制御通信確立メッセージを元に、確立対象に対する制御通信確立メッセージを新規作成し、制御通信仲介部２１を介して、確立対象へと送信する（図４４ステップＳ４１１０）。
【０２１３】
また、制御メッセージ変換部２２は、制御通信確立メッセージに対して確立が許可されない場合（図４４ステップＳ４１０１ＮＯ）に、制御通信確立メッセージ送信側に、制御通信仲介部２１を介して、制御通信確立失敗応答メッセージを作成し送信する。通信確立の失敗を応答する必要がない場合、本処理を省略することができる（図４４ステップＳ４１１１）。
【０２１４】
以上の制御を行うことにより、制御メッセージ中継装置２０ａが、ネットワークコントローラ１０・スイッチ３０間の仲介役として制御通信に挿入することが可能となると共に、複数スイッチを１つのスイッチとして仮想化した結合スイッチとネットワークコントローラ間の通信制御の確立が可能となる。
【０２１５】
次に、制御メッセージ中継装置２０ａがネットワークコントローラ１０・スイッチ３０間の通信制御メッセージをインターセプトしたときの仲介動作を、図４５のフローチャートを参照して説明する。
【０２１６】
本フローは、制御メッセージ中継装置２０ａが、ネットワークコントローラ１０又はスイッチ３０から発せられる通信制御メッセージをインターセプトしたときから開始される。
【０２１７】
制御メッセージ中継装置２０ａの制御通信仲介部２１は、ネットワークコントローラ１０又はスイッチ３０から発せられる通信制御メッセージをインターセプトすると、制御メッセージ変換部２２へ前記通信制御メッセージを送る。
【０２１８】
制御メッセージ変換部２２はスイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチ３０間に制御用通信が確立されているかをチェックする（図４５ステップＳ４２０１）。
【０２１９】
ネットワークコントローラ１０・スイッチ３０間に制御用通信が確立済みの場合（図４５ステップＳ４２０１ＹＥＳ）、制御メッセージ変換部２２は、制御情報記憶部２５に対して、制御情報の更新をする（図４５ステップＳ４２０２）。なお、制御情報の操作とは関係のない通信制御メッセージ等、通信制御メッセージの種類によっては、更新を省略する。
【０２２０】
制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し、通信制御メッセージの送信元スイッチ又は制御情報の設定対象スイッチが、結合スイッチに統合されているかをチェックする（図４５ステップＳ４２０３）。
【０２２１】
通信制御メッセージの送信元スイッチ又は制御情報の設定対象スイッチが、結合スイッチに統合されている場合（図４５ステップＳ４２０３ＹＥＳ）、制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、通信制御メッセージにて指示された制御情報の操作内容、結合スイッチ用の制御情報の操作内容に変換する変換ルールを取り出す。制御メッセージ変換部２２は、変換ルールに基づき、通信制御用メッセージの変換又は新規作成を行う。また、制御メッセージ変換部２２は、結合スイッチと実スイッチのスイッチ識別子の対応付けを行う（図４５ステップＳ４２０４）。
【０２２２】
制御メッセージ変換部２２は、前記変換ルールに基づき、新たな通信制御メッセージの作成又は通信制御メッセージの変換を実行した場合（図４５ステップＳ４２０５ＹＥＳ）前記作成又は変換した通信制御メッセージを送信すべき対象装置へと送信する（図４５ステップＳ４２０６）。
【０２２３】
以上の制御を行うことにより、制御メッセージ中継装置２０ａは、統合化対応変換ルールに基づく仮想化されたスイッチ資源の制御を実現する。
【０２２４】
一方、図４５のステップＳ４２０１において、ネットワークコントローラ１０・スイッチ３０間で制御用通信が確立済みでない場合（図４５ステップＳ４２０１ＮＯ）、インターセプトした制御メッセージは、確立されてない通信路に流れるメッセージであるため、制御メッセージ変換部２２は、該制御メッセージを破棄する。これにより、制御メッセージ中継装置２０ａは、接続されていないネットワークコントローラ１０・スイッチ３０間の動作を再現する。また、エラー応答も含め、送信すべきメッセージがない場合（図４５ステップＳ４２０５ＮＯ）も、制御メッセージ中継装置２０ａは、該制御メッセージを破棄するだけで終了する。
【０２２５】
以上説明したように、本発明の第３の実施形態によれば、複数のスイッチを１つのスイッチとして、ネットワークコントローラに認識させ、管理させることができる。またこのように、複数のスイッチを１つのスイッチとすることで、スイッチ資源の利用を分散させることができ、スイッチ物理的制約による動作制限を緩和することができる。
【０２２６】
また、本実施形態は、複数のスイッチを１つのスイッチとして、ネットワークコントローラに認識させるため、ネットワークコントローラが扱っているスイッチ管理の負荷や情報を減らすことにも貢献する。
【０２２７】
本発明の第３の実施形態では、制御メッセージ中継装置２０ａが、複数のスイッチを１つのスイッチとして、上位のネットワークコントローラに認識させている。すなわち、上位のネットワークコントローラ相当になる装置は１つのスイッチを扱っているように見える。このことは、ある制御メッセージ中継装置２０ａが扱うスイッチが、別の制御メッセージ中継装置２０ａが仮想化した結合スイッチであってもよいことを意味している。このように、本実施形態は、制御メッセージ中継装置２０ａを階層化した構成としても実現可能である。また、このように制御メッセージ中継装置２０ａを階層化することにより、管理の階層化を実現することも可能である。
【０２２８】
続いて、図４６〜図５６を参照して、上記した一連の動作を、制御メッセージ中継装置２０ａ及びスイッチ３０の制御情報記憶部の状態とともに説明する。
【０２２９】
また、以下の説明では、スイッチ３０−１（ＳＷ１）、スイッチ３０−２（ＳＷ２）が、図４３に示すように仮想的に結合されるものとする。また、各スイッチの制御情報記憶部が格納可能なエントリは２個でなく、１０２４個分あるとして説明する。図４６〜図５６においては、制御メッセージ中継装置２０ａの制御情報記憶部と、各スイッチの制御情報記憶部とを図示する。また、図４６〜図５６の上段に表した結合スイッチ構成テーブルの「ＩＤ」は、スイッチ管理用のスイッチの識別子を格納するフィールドである。また、「Ｃｏｎｎｅｃｔ」は、制御通信の接続状態を記録するフィールドである。また、「Ｖｉｒｕｔａｌ  ＩＤ」は、結合したときの対応結合スイッチＩＤを示し、「ｃｏｎｄｉｔｉｏｎ」は結合時の条件を格納するフィールドである。なお、制御通信の接続状態（Ｃｏｎｎｅｃｔ）は、互いの確立要求が成立するときにマークする。
【０２３０】
また、以下の説明においては、制御通信条件は、次のように表現する。結合されたスイッチＰＳが結合スイッチＶＳの論理ポートＰｖ宛に送るときにポートＰｐを使用するとき、Ｐｐ＝＞ＶＳ：Ｐｖと表現する。また、仮想スイッチＶＳのポートＰｖを結合されたスイッチＰＳのポートと対応付けるとき、Ｐｖ＝＞ＰＳ：Ｐｐと表現する。また、複数のポートが連番して条件を持つ場合、Ｐｉ〜Ｐｊのように表現して省略することとする。また、以下の説明では、該テーブル群の移り変わりのみを表現し、メッセージ表現は省略する。
【０２３１】
図４６は、スイッチ３０−１、３０−２が接続していない時の初期状態を示す図である。この時点では、スイッチ情報記憶部２４や制御情報記憶部２５には、何も情報が格納されていない。スイッチ３０−１が制御メッセージ中継装置２０ａに接続し、ネットワークコントローラ１０へ接続しようとする。このとき、スイッチ３０−１からネットワークコントローラ１０へ制御通信確立メッセージが送信される。
【０２３２】
制御メッセージ中継装置２０ａは、前記通信確立メッセージをインターセプトする。制御メッセージ中継装置２０ａの制御メッセージ変換部２２は、制御通信仲介部２１から、該通信確立メッセージを受け取る。制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、ネットワークコントローラ・スイッチ間対応関係ルールを取り出し、さらに、スイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチ３０−１間の通信が許可されているかをチェックする（図４４ステップＳ４１０１）。ここでは、スイッチ３０−１に制限がないため、通信確立が許可されているとする。これにより、スイッチ情報記憶部２４の結合スイッチ構成テーブルに、ＩＤ：ＳＷ１を持つエントリが登録される（図４４ステップＳ４１０２、図４７結合スイッチ構成テーブル参照）。
【０２３３】
制御メッセージ変換部２２は、結合スイッチ構成設定部２６を参照し、スイッチ３０-１が、結合スイッチＶＳＷの対応付けられていることを判定する（図４４ステップＳ４１０３ＹＥＳ）。また、制御メッセージ変換部２２は、スイッチ情報記憶部２４の結合スイッチ構成テーブルに、結合スイッチＶＳＷの情報と、その対応関係とを登録する。具体的には、制御メッセージ変換部２２は、スイッチ情報記憶部２４に、その時のポートの対応関係ＳＷ１：Ｐ１〜Ｐ６＝＞Ｐ１〜Ｐ６を登録する（図４４ステップＳ４１０４、図４８結合スイッチ構成テーブルの上から２番目のエントリ参照）。
【０２３４】
結合スイッチＶＳＷはまだ制御通信を確立させてないため、制御メッセージ変換部２２は、ネットワークコントローラ１０に対し、結合スイッチＶＳＷが制御通信を確立するための制御通信確立要求メッセージを作成し、制御通信仲介部２１を介して送信する（図４４ステップＳ４１０６）。
【０２３５】
前記制御通信確立要求メッセージを受信したネットワークコントローラ１０は、制御通信確立要求メッセージに対する応答（ネットワークコントローラ１０からの制御通信確立要求メッセージの送信）をする。前記制御通信確立要求メッセージをインターセプトすると、制御メッセージ中継装置２０ａの制御通信仲介部２１は、制御メッセージ変換部２２に該通信確立メッセージを送る。制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、ネットワークコントローラ・スイッチ間対応関係ルールを取り出し、スイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチＶＳＷ間の通信が許可されているかをチェックする（図４４ステップＳ４１０１）。ここでは、ネットワークコントローラ１０・スイッチＶＳＷ間の通信が許可されているため、制御メッセージ変換部２２は、スイッチ情報記憶部２４の結合スイッチ構成テーブルの該当エントリに結合スイッチＶＳＷの制御通信確立のマークを付ける（図４４ステップＳ４１０４、図４９の結合スイッチ構成テーブルの上から１番目のエントリのＣｏｎｎｅｃｔ欄参照）。
【０２３６】
制御メッセージ変換部２２は、結合スイッチＶＳＷとの制御通信を確立していなかったため、結合スイッチを形成するＳＷ１に対する制御通信確立メッセージへ変換し、制御通信仲介部２１を介してスイッチ３０−１へ送信する（図４４ステップＳ４１０６）。また、このときに、制御メッセージ変換部２２は、スイッチ情報記憶部２４の結合スイッチ構成テーブルの該当エントリにスイッチＳＷ１の制御通信確立のマークを付ける（図４９の結合スイッチ構成テーブルの上から２番目のエントリのＣｏｎｎｅｃｔ欄参照）。
【０２３７】
以上の処理により、スイッチ３０−１は、ネットワークコントローラ１０には、ポート６個をもつ結合スイッチＶＳＷとして認識される。
【０２３８】
次に、スイッチ３０−２が制御メッセージ中継装置２０ａに接続し、ネットワークコントローラ１０へ接続しようとした際の動作について説明する。まず、スイッチ３０−２がネットワークコントローラ１０へ制御通信確立メッセージを送信する。制御メッセージ中継装置２０ａは、前記通信確立メッセージをインターセプトする。制御メッセージ中継装置２０ａの制御メッセージ変換部２２は、制御通信仲介部２１から、該通信確立メッセージを受け取る。制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、ネットワークコントローラ・スイッチ間対応関係ルールを取り出し、スイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチ３０−２間の通信が許可されているかをチェックする（図４４ステップＳ４１０１）。ここでは、スイッチ３０−２に制限がないため、通信確立が許可されているとする。これにより、スイッチ情報記憶部２４の結合スイッチ構成テーブルに、ＩＤ：ＳＷ２を持つエントリが登録される（図４４ステップＳ４１０２、図５０結合スイッチ構成テーブル参照）。
【０２３９】
制御メッセージ変換部２２は、結合スイッチ構成設定部２６を参照し、スイッチ３０-２が、結合スイッチＶＳＷに対応付けられていることを判定する（図４４ステップＳ４１０３ＹＥＳ）。制御メッセージ変換部２２は、スイッチ情報記憶部２４に結合スイッチＶＳＷの登録は既に登録されているため、その対応関係のみをスイッチ情報記憶部２４へ更新する。具体的には、制御メッセージ変換部２２は、スイッチ情報記憶部２４に、その時のポートの対応関係ＳＷ２：Ｐ７〜Ｐ１２＝＞Ｐ７〜Ｐ１２を登録する（図４４ステップＳ４１０４、図５０結合スイッチ構成テーブルの上から２番目のエントリ参照）。
【０２４０】
その後、結合スイッチＶＳＷは、既に制御通信を確立させているため、制御メッセージ変換部２２は、スイッチ３０−２への制御通信の確立応答（制御通信確立メッセージ）を作成し、制御通信仲介部２１を介してスイッチ３０−２へ送信する（図４４ステップＳ４１０７）。また、このときに、制御メッセージ変換部２２は、スイッチ情報記憶部２４のスイッチＳＷ２のエントリに制御通信確立のマークを付ける（図５１の結合スイッチ構成テーブルのＳＷ２のＣｏｎｎｅｃｔ欄ＹＥＳ参照）。また、制御メッセージ変換部２２は、結合スイッチＶＳＷのポートＰ７〜１２が増えたため、ネットワークコントローラ１０へ向け、スイッチ状態変化メッセージを作成し、ネットワークコントローラ１０に対して制御通信仲介部２１を介して送信する（図４４ステップＳ４１０８）。これにより、ネットワークコントローラ１０にも、ポートが増えたように認識される。
【０２４１】
制御メッセージ変換部２２は、最後に、結合スイッチ構成設定部２６を参照し、結合スイッチ構成時に、恒久的に設定する制御情報が存在しないかをチェックする。今回は、図４３に図示したように、結合スイッチＶＳＷのポートＰ７〜Ｐ１２から出力したい場合、ＳＷ１に対して、ポートＰ７〜Ｐ１２を利用して転送させる、とのルールが設定されているので、制御メッセージ変換部２２は、スイッチ情報記憶部２４に、その内容を記憶する（図５２の結合スイッチ構成テーブルのＳＷ１のＣｏｎｄｉｔｏｎ欄参照）。そして、そのルールに対応する恒久的な制御情報を設定する。すなわち、ＳＷ１のポートＰ７〜Ｐ１２からＳＷ２側のポートＰ１〜Ｐ６に入ってきたものは、それぞれ、ＳＷ２のポートＰ７〜Ｐ１２へ出力するようにするための制御情報を設定するための、制御情報の設定用メッセージを作成し、送信する（図４４ステップＳ４１０９）。これにより、スイッチ３０−２に結合スイッチ構成のための制御情報が設定される（図５２のスイッチ３０−２の制御情報記憶部参照）。
【０２４２】
同様に、制御メッセージ変換部２２は、スイッチＳＷ２に対して、ＳＷ１側に出力するための設定を行う（図４４ステップＳ４１０９）。具体的には、スイッチ情報記憶部２４のＳＷ２に関するエントリの更新（図５３の結合スイッチ構成テーブルのＳＷ２のＣｏｎｄｉｔｏｎ欄参照）と、結合スイッチ構成のための制御情報のスイッチ３０−１への設定（図５３のスイッチ３０−１の制御情報記憶部参照）とが行われる。
【０２４３】
以上の処理により、スイッチ３０−２は、ネットワークコントローラ１０には、結合スイッチＶＳＷの追加ポート６個として認識される。また、結合スイッチＶＳＷを動作させるための準備が完了する。
【０２４４】
次に、実際に通信が発生した場合の結合スイッチＶＳＷの動作について説明する。以下の説明では、スイッチ３０−１のポートＰ１において１９２．１６８．０．１から１９２．１６８．０．１００宛ての通信が発生したとする。このとき、１９２．１６８．０．１００は、スイッチ３０−１のポートＰ２の先に存在するものとする。
【０２４５】
スイッチ３０−１は、ネットワークコントローラ１０に対して、１９２．１６８．０．１から１９２．１６８．０．１００宛てのパケットを処理するための制御情報の設定要求メッセージを送信する。
【０２４６】
制御メッセージ中継装置２０ａは、前記制御情報の設定要求メッセージをインターセプトする。制御メッセージ中継装置２０ａの制御通信仲介部２１は、制御メッセージ変換部２２に、前記制御情報の設定要求メッセージを送る。
【０２４７】
制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、図４５に示すフローに相当する変換ルールの適用を実施する。具体的には、制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチ３０−１間に制御用通信が確立されていることを確認する（図４５ステップＳ４２０１ＹＥＳ）。制御メッセージ変換部２２は、制御情報の設定情報に変化を生じさせない制御メッセージのため、制御情報記憶部２５の制御情報の更新は省略する（図４５ステップＳ４２０２）。
【０２４８】
制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し、スイッチ３０−１が結合スイッチＶＳＷに統合されていることを確認する（図４５ステップＳ４２０３ＹＥＳ）。制御メッセージ変換部２２は、結合スイッチからの制御情報の設定要求メッセージとなるようにインターセプトした制御情報の設定要求メッセージを変換する。具体的には、制御情報の設定要求メッセージのスイッチ３０−１のポートＰ１を、結合スイッチＶＳＷのポートＰ１に変換する。また、制御情報の設定要求メッセージの送信元を結合スイッチＶＳＷに変換する（図４５ステップＳ４２０４）。制御メッセージ変換部２２は、前記変換した制御情報の設定要求メッセージをネットワークコントローラ１０へ制御通信仲介部２１を介して送信する（図４５ステップＳ４２０６）。
【０２４９】
ネットワークコントローラ１０は、前記結合スイッチＶＳＷからの制御情報の設定要求メッセージの応答として、結合スイッチＶＳＷのポートＰ２へ出力させるための制御情報を作成し、当該制御情報の設定用制御メッセージを送信する。
【０２５０】
制御メッセージ中継装置２０ａは、前記制御情報の設定用制御メッセージをインターセプトする。制御メッセージ中継装置２０ａの制御通信仲介部２１は、制御メッセージ変換部２２に対し、前記インターセプトした制御情報設定メッセージを送る。
【０２５１】
制御メッセージ変換部２２は、制御ポリシー記憶部２３を参照し、図４５に示すフローに相当する変換ルールの適用を実施する。具体的には、制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し、ネットワークコントローラ１０・スイッチＶＳＷ間に制御用通信が確立されていることを確認する（図４５ステップＳ４２０１ＹＥＳ）。制御メッセージ変換部２２は、制御情報が設定されるため、制御情報記憶部２５に設定対象の制御情報を登録する（図４５ステップＳ４２０２、図５４の制御情報記憶部（中段）参照）。
【０２５２】
また、制御メッセージ変換部２２は、スイッチ情報記憶部２４を参照し、結合スイッチＶＳＷは統合されていることを確認する（図４５ステップＳ４２０３ＹＥＳ）。制御情報設定メッセージのスイッチＶＳＷのポートＰ２は、スイッチ３０−１のポートＰ２となる。また、入力元であるＶＳＷのポートＰ１もスイッチ３０−１のポートＰ１である。制御メッセージ変換部２２は、これらを変更する。また、該制御情報設定メッセージは、スイッチ３０−１で対応できるため、制御メッセージ変換部２２は、該制御情報設定メッセージの設定先をスイッチ３０−１とする（図４５ステップＳ４２０４）。制御メッセージ変換部２２は、変換した該制御情報の設定要求メッセージをスイッチ３０−１へ制御通信仲介部２１を介して送信する（図４５ステップＳ４２０６）。スイッチ３０−１は、受信した制御情報を設定し、パケット転送を開始する（図５４のスイッチ３０のスイッチ３０−１の制御情報記憶部参照）。
【０２５３】
以上の動作のように、制御メッセージ中継装置２０ａにより結合されたスイッチ環境においても、制御メッセージ中継装置２０ａが、通信制御メッセージを変換するための変換ルールを明確化し、通信変換のための管理情報を蓄えることで、正しく設定できることが分かる。
【０２５４】
次に、スイッチ３０−１のポートＰ１において１９２．１６８．０．１から１９２．１６８．１．１００宛ての通信が発生したとする。このとき、１９２．１６８．１．１００は、スイッチ３０−２のポートＰ８の先に存在するとする。このときも、上記と同様の動作をし、ネットワークコントローラ１０は、結合スイッチＶＳＷのポートＰ１から入力される１９２．１６８．０．１から１９２．１６８．１．１００宛てのパケットを、結合スイッチＶＳＷのポートＰ８から出力させる制御情報を作成、送信する。これにより、制御メッセージ中継装置２０ａの制御情報記憶部２５に該当する制御情報が登録される（図５５の制御情報記憶部（中段）の上から２番目のエントリ参照）。制御メッセージ中継装置２０ａからスイッチへの変換は、スイッチ３０−１のポートＰ１から入力された該当パケットを、スイッチ３０−２のポートＰ８から出力させる内容となる。前述した結合スイッチ構成時の恒久的制御情報により、スイッチ３０−１のポートＰ８に出力すれば、スイッチ３０−２のポートＰ８へ出力できる。このため、実際に設定する制御情報は、スイッチ３０−１のポートＰ１から入力された１９２．１６８．０．１から１９２．１６８．１．１００宛てのパケットを、ポートＰ８へ出力するという制御情報のみとなる。制御メッセージ中継装置２０ａは、スイッチ３０−１のポートＰ１から入力された１９２．１６８．０．１から１９２．１６８．１．１００宛てのパケットをポートＰ８へ出力するという制御情報のみをスイッチ３０−１へ設定させる制御情報設定メッセージをスイッチ３０−１へ送信すればよい。スイッチ３０−１は、制御情報記憶部に前記制御情報を格納し、該当パケットの転送を開始する（図５５のスイッチ３０−１の制御情報記憶部の一番下のエントリ参照）。
【０２５５】
同様に、スイッチ３０−２のポートＰ７において、１９２．１６８．１．１から１９２．１６８．０．１００宛て、１９２．１６８．１．１から１９２．１６８．１．１００宛ての通信が発生すると、上記と同様の処理により、スイッチ３０−２側にのみ制御情報が登録される（図５６のスイッチ３０−２の制御情報記憶部参照）。
【０２５６】
以上の例のように、制御メッセージ中継装置２０ａは、複数のスイッチを１つの結合スイッチとして見せることが可能であることが分かる。また、各スイッチの制御情報記憶部が負荷分散されて使用されていることが分かる。これにより、各スイッチの制御情報記憶部（ＣＡＭ）の限界量を改善することができる。例えば、上記の例では、各スイッチが、自スイッチから発信する通信数＋転送のために必要な制御情報のエントリ数が制御情報のエントリ数となる。このとき、結合されたスイッチＶＳＷは、最大（１０２４個（＝制御情報記憶部の最大格納可能エントリ数）−６個（結合スイッチ内の転送用制御情報のエントリ数））×２（スイッチ数）＝２０３６個の通信が扱えることになる。これは、１つのスイッチをそのまま使用した場合の１０２４個より大きいことが分かる。
【０２５７】
また、ネットワークコントローラ１０へは、結合スイッチＶＳＷとしてしか見せていないため、１つのスイッチを扱うかのように見せていることも分かる。これは、多くのスイッチを扱うネットワークコントローラに対して、スイッチ管理量を減らすことで情報量を抑制することにつながる。
【０２５８】
［第４の実施形態］
続いて、制御情報に有効期限を設定する本発明の第４の実施形態について説明する。図５７は、本発明の第４の実施形態の制御メッセージ中継装置の構成を示す図である。図５７を参照すると、第４の実施形態の制御メッセージ中継装置２０ｂは、本発明の第１の実施形態の制御メッセージ中継装置２０の構成に、制御情報タイマーカウント部２７を追加した構成となっている。以下、制御情報タイマーカウント部２７を中心に、第１の実施形態との相違点を説明する。
【０２５９】
制御情報タイマーカウント部２７は、制御情報記憶部２５に記憶している制御情報に対して、有効期限情報（タイマー値）を記憶する。具体的には、制御情報タイマーカウント部２７は、制御情報の新規設定時や付加情報が登録、更新されるとき、制御情報の情報を元に、制御情報に付された有効期限情報を所定値に戻す動作を行う。
【０２６０】
また、制御情報タイマーカウント部２７は、定期的に有効期限をチェックし、有効期限が切れたかどうかをチェックする。このとき、制御情報タイマーカウント部２７は、有効期限としてカウントアップ／カウントダウン方式を用いる場合、有効期限情報を更新（カウントアップ又はカウントダウン）する。
【０２６１】
また、制御情報タイマーカウント部２７は、有効期限が切れた制御情報が存在し、設定済みフラグを持たない場合、制御情報記憶部２５から制御情報を削除し、制御メッセージ変換部２２へ、スイッチ側の該当制御情報の削除を依頼する。
【０２６２】
制御メッセージ変換部２２は、制御情報タイマーカウント部２７から前記制御情報の削除を依頼されたとき、入替操作なしの動作で、該当制御情報を削除する処理を行う。
【０２６３】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図５８は、本発明の第４の実施形態の制御メッセージ中継装置の動作（タイマー設定）を示すフローチャートである。図５８を参照すると、まず、制御メッセージ変換部２２が、制御情報記憶部２５に制御情報を設定、更新する場合、制御情報タイマーカウント部２７が、該制御情報の入替削除中フラグがマークされているかと、その更新が削除要求に対する応答による制御情報の入替削除中フラグの解除であるかをチェックする（図５８ステップＳ５１０１）。
【０２６４】
制御情報タイマーカウント部２７は、制御情報が削除応答による入替削除中フラグの解除でない場合、通信制御メッセージに指定された有効期限情報に基づき、当該制御情報の有効期限を設定する（図５８ステップＳ５１０２）。
【０２６５】
一方、制御情報タイマーカウント部２７は、制御情報が削除応答による入替削除中フラグの解除である場合、制御情報の削除応答メッセージから、残りの有効期限を抽出する。抽出できない場合、当該制御情報の基本有効時間（初期値）とする。制御情報タイマーカウント部２７は、抽出した残有効期限を、該制御情報の有効期限として設定する（図５８ステップＳ５１０３）。
【０２６６】
以上の処理により、制御メッセージ中継装置２０ｂにおいて、実際にスイッチに設定されていない制御情報について、有効期限をシミュレートすることができる。
【０２６７】
図５９は、本発明の第４の実施形態の制御メッセージ中継装置の動作（有効期間判定）を示すフローチャートである。なお、図５９のフローチャートの後半分は、第１の実施形態で説明した、制御メッセージ変換部２２による入替操作なしの動作で制御情報の削除を行う処理を具体化して示している。
【０２６８】
図５９のタイマー処理は、定期的に呼び起される。また、定期的でなく、明確な有効期限情報が把握でき、該当時間にイベント機構などにより、本処理を呼び出すことが可能な場合、そのようなイベント機構の仕組みを利用してもよい。
【０２６９】
図５９を参照すると、制御情報タイマーカウント部２７は、タイマー値を更新する。例えば、有効期間を時刻などの形式で記憶している場合は、しきい値（タイムアウト値）と比較する時間値を更新する。また、別の例として、カウントアップ／カウントダウン方式で記憶している場合は、前記カウント値をアップ／ダウンする（図５９ステップＳ５２０１）。
【０２７０】
次に、制御情報タイマーカウント部２７は、タイマー値を更新した後、期限満了の制御情報が存在するかをチェックする（図５９ステップＳ５２０２）。
【０２７１】
期限満了の制御情報が存在した場合（図５９ステップＳ５２０２ＹＥＳ）、制御情報タイマーカウント部２７は、該制御情報が設定中でないかをチェックする（図５９ステップＳ５２０３）。設定中の場合や、設定中であるが削除依頼中の場合（図５９ステップＳ５２０３ＮＯ）、制御情報タイマーカウント部２７は、スイッチ３０からの制御情報削除応答メッセージを契機に、制御情報の削除と削除応答をすればよい。
【０２７２】
一方、前記制御情報が設定中でない場合（図５９ステップＳ５２０３ＹＥＳ）、制御情報タイマーカウント部２７は、制御メッセージ変換部２２へ、制御ルールの入れ替えを伴わない制御情報の削除を依頼する。これを受けて制御メッセージ変換部２２は、制御情報記憶部２５から制御情報の削除を行う（図５９ステップＳ５２０４）。このとき、制御情報タイマーカウント部２７は、該当制御情報の有効期限情報を削除する。
【０２７３】
制御メッセージ変換部２２は、削除した制御情報に対して、ネットワークコントローラ１０へ向け、通信設定ルール削除通知メッセージを作成し、制御通信仲介部２１を介して送信する（図５９ステップＳ５２０５）。
【０２７４】
以上の処理により、制御メッセージ中継装置２０ｂは、自装置の制御情報記憶部２５に存在するが、スイッチに設定していない制御情報に対する有効期限を用いた管理（エー時ジング）を実現する。
【０２７５】
続いて、図６０〜図６３を参照して、上記した一連の動作を、制御メッセージ中継装置２０ｂ及びスイッチ３０の制御情報記憶部の状態とともに説明する。
【０２７６】
また、以下の説明では、制御情報タイマーカウント部２７が記憶する有効期限情報を、制御情報記憶部の残有効期限情報フィールド（Ｅｘｐ）の値として記載する。また、説明を簡単にするため、各制御情報の有効期限の基本値は２５とし、カウントダウンしていくこととする。
【０２７７】
まず図１８のように、制御情報の設定がなされていたところ、新規に発生した１９２．１６８．０．１から１９２．１６８．０．１０２宛ての通信のために、１９２．１６８．０．１から１９２．１６８．０．１００への入替削除要求をしたところから説明する。
【０２７８】
制御メッセージ変換部２２は、制御情報の削除用の制御メッセージを元に、図９に示すフローに相当する変換ルールの適用を実施する。具体的には、削除制御情報は、入替削除中ルールであり、かつ、削除要求に対する応答による制御情報削除通知であるため、制御情報の設定フラグ、入替削除中フラグを解除する（図９ステップＳ２３０１ＹＥＳ〜ステップＳ２３０２）。このとき、制御情報タイマーカウント部２７は、制御情報の変更が、削除要求に対する応答であり、設定フラグの解除であるため、当該制御情報の削除用の制御メッセージから（図５８ステップＳ５１０１ＹＥＳ）、残りの有効期限値１５を抽出し、記憶する（図５８ステップＳ５１０３）。この状態が図６０である。
【０２７９】
制御メッセージ変換部２２は、入替待機中である１９２．１６８．０．１から１９２．１６８．０．１０２宛ての制御情報の設定を行う（図９ステップＳ２３０５ＹＥＳ〜ステップＳ２３０７）。この状態が図６１である。
【０２８０】
制御情報タイマーカウント部２７は、有効期限が切れる制御情報が現れるまで、各制御情報の値を定期的にカウントダウンしていく（図５９ステップＳ５２０１）。ここでは、最初に、１９２．１６８．０．１から１９２．１６８．０．１００宛ての制御情報の有効期限が満了となる（図５９ステップＳ５２０２ＹＥＳ）。また、１９２．１６８．０．１から１９２．１６８．０．１００宛ての制御情報は、設定済みフラグを持たない、すなわち、設定中でないため（図５９ステップＳ５２０３ＹＥＳ）、制御情報タイマーカウント部２７は、制御メッセージ変換部２２へ、制御ルールの入れ替えを伴わない通信設定ルールの削除を依頼する。
【０２８１】
制御メッセージ変換部２２は、制御情報の削除通知ルールに基づき、制御情報記憶部２５から１９２．１６８．０．１から１９２．１６８．０．１００への制御情報を削除する。このとき、制御情報タイマーカウント部２７は、該制御情報の有効期限情報を削除する（図５９ステップＳ５２０４、図６２（ｃ）の取り消し線）。
【０２８２】
制御メッセージ変換部２２は、１９２．１６８．０．１から１９２．１６８．０．１００宛てのパケットの制御情報を削除したことについて、ネットワークコントローラ１０へ向け、通信設定ルール削除通知メッセージを作成し、制御通信仲介部２１を介して送信する（図５９ステップＳ５２０５、図６２の制御メッセージ中継装置２０ｂとネットワークコントローラ１０間の矢印）。
【０２８３】
以上により、スイッチ３０へ再設定することなく、１９２．１６８．０．１から１９２．１６８．０．１００宛ての制御情報の有効期限の満了がなされる。このときの図が、図６３である。
【０２８４】
以上説明したように、制御メッセージ中継装置２０ｂは、実スイッチ３０への制御情報の再設定なしに、有効期限処理を実現する。
【０２８５】
以上のような構成による第４の実施形態によれば、第１の実施形態に比べ、実スイッチへ設定を行わなくとも、制御情報の有効期限処理を実現することができる。
【０２８６】
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示したネットワーク構成や要素の構成は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
【０２８７】
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点による制御メッセージ中継装置参照）
［第２の形態］
第１の形態の制御メッセージ中継装置において、
前記スイッチから制御装置に対する制御情報の送信要求メッセージを受信した場合、前記制御情報記憶部を参照して、前記制御装置に代わって前記制御情報を送信する制御メッセージ中継装置。
［第３の形態］
第１又は第２の形態の制御メッセージ中継装置において、
前記制御情報変換部は、前記制御装置から送信された制御情報に含まれる適用するパケットを特定するためのマッチ条件を変更する制御メッセージ中継装置。
［第４の形態］
第３の形態の制御メッセージ中継装置において、
前記制御情報変換部は、前記スイッチが保持する制御情報のエントリ数が減るよう、前記マッチ条件を、前記制御装置が設定した内容よりも適用対象の広い内容に変更する制御メッセージ中継装置。
［第５の形態］
第１から第４いずれか一の形態の制御メッセージ中継装置において、
さらに、
複数のスイッチを、１つのスイッチとして認識させるための対応付けを記憶する結合スイッチ構成設定部を備え、
前記制御情報変換部は、さらに、前記結合スイッチ構成設定部を参照して、前記制御装置に、前記複数のスイッチを前記１つのスイッチとして認識させるように前記制御装置と前記結合スイッチを構成するスイッチ間の制御メッセージを変換する制御メッセージ中継装置。
［第６の形態］
第１から第５いずれか一の形態の制御メッセージ中継装置において、
前記制御装置又はスイッチとしての機能を有し、他の制御メッセージ中継装置と階層的に接続されている制御メッセージ中継装置。
［第７の形態］
第１から第６いずれか一の形態の制御メッセージ中継装置において、
前記制御装置と前記スイッチのいずれか一方から他方に宛てられた制御メッセージの変換ルールを保持し、
前記変換ルールを参照して、前記制御装置と前記スイッチとの間の制御メッセージを変換する制御メッセージ中継装置。
［第８の形態］
第１から第７いずれか一の形態の制御メッセージ中継装置において、
さらに、前記制御情報記憶部に記憶されている制御情報の有効期限を管理する制御情報タイマーカウント部を備え、
スイッチに代わって、前記制御情報の有効期限を管理する制御メッセージ中継装置。
［第９の形態］
（上記第２の視点による制御メッセージ中継方法参照）
［第１０の形態］
（上記第３の視点によるプログラム参照）
なお、上記第９、第１０の形態は、第１の形態と同様に、第２〜第８の形態に展開することが可能である。
【０２８８】
なお、上記の非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【０２８９】
１０  ネットワークコントローラ
２０、２０ａ、２０ｂ、２００  制御メッセージ中継装置
２１  制御通信仲介部
２２  制御メッセージ変換部
２３  制御ポリシー記憶部
２４、２４ａ  スイッチ情報記憶部
２５  制御情報記憶部
２６  結合スイッチ構成設定部
２７  制御情報タイマーカウント部
３０、３０−１、３０−２、３００  スイッチ
１００  制御装置
２１０  制御情報記憶部
２２０  制御情報変換部
【図１】
0006036986.tif 000002
【図２】
0006036986.tif 000003
【図３】
0006036986.tif 000004
【図４】
0006036986.tif 000005
【図５】
0006036986.tif 000006
【図６】
0006036986.tif 000007
【図７】
0006036986.tif 000008
【図８】
0006036986.tif 000009
【図９】
0006036986.tif 000010
【図１０】
0006036986.tif 000011
【図１１】
0006036986.tif 000012
【図１２】
0006036986.tif 000013
【図１３】
0006036986.tif 000014
【図１４】
0006036986.tif 000015
【図１５】
0006036986.tif 000016
【図１６】
0006036986.tif 000017
【図１７】
0006036986.tif 000018
【図１８】
0006036986.tif 000019
【図１９】
0006036986.tif 000020
【図２０】
0006036986.tif 000021
【図２１】
0006036986.tif 000022
【図２２】
0006036986.tif 000023
【図２３】
0006036986.tif 000024
【図２４】
0006036986.tif 000025
【図２５】
0006036986.tif 000026
【図２６】
0006036986.tif 000027
【図２７】
0006036986.tif 000028
【図２８】
0006036986.tif 000029
【図２９】
0006036986.tif 000030
【図３０】
0006036986.tif 000031
【図３１】
0006036986.tif 000032
【図３２】
0006036986.tif 000033
【図３３】
0006036986.tif 000034
【図３４】
0006036986.tif 000035
【図３５】
0006036986.tif 000036
【図３６】
0006036986.tif 000037
【図３７】
0006036986.tif 000038
【図３８】
0006036986.tif 000039
【図３９】
0006036986.tif 000040
【図４０】
0006036986.tif 000041
【図４１】
0006036986.tif 000042
【図４２】
0006036986.tif 000043
【図４３】
0006036986.tif 000044
【図４４】
0006036986.tif 000045
【図４５】
0006036986.tif 000046
【図４６】
0006036986.tif 000047
【図４７】
0006036986.tif 000048
【図４８】
0006036986.tif 000049
【図４９】
0006036986.tif 000050
【図５０】
0006036986.tif 000051
【図５１】
0006036986.tif 000052
【図５２】
0006036986.tif 000053
【図５３】
0006036986.tif 000054
【図５４】
0006036986.tif 000055
【図５５】
0006036986.tif 000056
【図５６】
0006036986.tif 000057
【図５７】
0006036986.tif 000058
【図５８】
0006036986.tif 000059
【図５９】
0006036986.tif 000060
【図６０】
0006036986.tif 000061
【図６１】
0006036986.tif 000062
【図６２】
0006036986.tif 000063
【図６３】
0006036986.tif 000064