(57)【特許請求の範囲】
【請求項１】
複数のポートと、
前記複数のポートの各ポートにＶＬＡＮ情報を設定するとともに、前記各ポートに設定されているＶＬＡＮ情報を管理するＶＬＡＮ設定管理部と、
所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が、該出力パケットの出力ポートに設定されていない場合、前記ＶＬＡＮ設定管理部に対し、前記制御情報にて指定されたＶＬＡＮ情報を該当出力ポートに設定するよう指示するＶＬＡＮ設定部と、を備えることを特徴とするスイッチ装置。
【請求項２】
さらに、前記ＶＬＡＮ設定部は、前記所定の制御装置に対して、前記ＶＬＡＮ設定管理部のエントリの追加内容又は更新内容を通知する請求項１のスイッチ装置。
【請求項３】
前記ＶＬＡＮ設定管理部は、ＶＬＡＮ  ＩＤと各ポートとの対応関係を保持するエントリを保持し、
前記ＶＬＡＮ設定部は、
前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報と同一のＶＬＡＮ情報を持つエントリが存在し、かつ、当該エントリに前記パケットの送信ポートが対応付けられていない場合、当該エントリに前記送信ポートの追加を行い、
前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報と同一のＶＬＡＮ情報を持つエントリが存在しない場合、前記パケットの送信ポートと、前記パケットに含まれるＶＬＡＮ情報と、を対応付けたエントリを追加することで、
前記ＶＬＡＮ設定管理部に対し、前記制御情報にて指定されたＶＬＡＮ情報を該当出力ポートに設定するよう指示する請求項１又は２のスイッチ装置。
【請求項４】
さらに、前記ＶＬＡＮ設定部は、
前記所定の制御装置から受信した制御情報を格納するテーブルを保持し、前記所定の制御装置から指示に従い、前記テーブルを更新する請求項２又は３のスイッチ装置。
【請求項５】
複数のポートを備えたスイッチ装置において、
所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が、前記制御情報にて指定された出力ポートに設定されているか否かを確認するステップと、
前記出力ポートに、前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が設定されていない場合、前記出力ポートに、前記所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報を設定するステップとを含むＶＬＡＮ設定方法。
【請求項６】
複数のポートを備えたスイッチ装置に登載されたコンピュータに、
所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が、前記制御情報にて指定された出力ポートに設定されているか否かを確認する処理と、
前記出力ポートに、前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が設定されていない場合、前記出力ポートに、前記所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報を設定する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１２−２６００５１号（２０１２年１１月２８日出願）に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、スイッチ装置、ＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）設定管理方法及びプログラムに関し、特に、制御装置から集中制御されるスイッチ装置、ＶＬＡＮ設定管理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、オープンフロー（ＯｐｅｎＦｌｏｗ）という技術が提案されている（非特許文献１、２参照）。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献２に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件（Ｍａｔｃｈ  Ｆｉｅｌｄｓ）と、フロー統計情報（Ｃｏｕｎｔｅｒｓ）と、処理内容を定義したインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎｓ）と、の組が定義される（非特許文献２の「４．１  Ｆｌｏｗ  Ｔａｂｌｅ」の項参照）。【０００３】
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件（非特許文献２の「４．３  Ｍａｔｃｈ  Ｆｉｅｌｄｓ」参照）を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報（カウンタ）を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容（指定ポートからのパケット送信、フラッディング、廃棄等）を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットの処理内容の決定の要求（Ｐａｃｋｅｔ−Ｉｎメッセージ）を送信する。オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを処理規則として用いてパケット転送を行う。【０００４】
特許文献１には、ポートベースのＶＬＡＮにおいて設定を自動化する技術が開示されている。より具体的には、このネットワーク管理装置は、スイッチングハブから、端末情報を通知されたとき、その応答として端末情報に応じたＶＬＡＮ  ＩＤをスイッチングハブへ返信する。そして、スイッチングハブは、当該端末の接続を検出したポートにＶＬＡＮ  ＩＤで指定された仮想ＬＡＮ設定を行う、と記載されている。【０００５】
特許文献２には、ＶＬＡＮ間でのパケットのルーティングを行うためのルータポートという仮想的なポートを備える中継装置におけるルータポートへのＶＬＡＮ番号の割当てを自動化する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−６４５２５号公報
【特許文献２】国際公開第２００８／１１４４２４号
【非特許文献】
【０００７】
【非特許文献１】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  Ｉｎｎｏｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年５月３１日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献２】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．１．０  Ｉｍｐｌｅｍｅｎｔｅｄ  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０２）、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年５月３１日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００８】
以下の分析は、本発明によって与えられたものである。上記したオープンフロースイッチに代表されるスイッチ装置の各ポートにＶＬＡＮ  ＩＤを割り当てることがある。これにより、パケット出力時に、出力ポートのＶＬＡＮ  ＩＤと一致しないＶＬＡＮ  ＩＤが付されたパケットを破棄するといった機能を有効に機能させることができる。【０００９】
しかしながら、上記ＶＬＡＮの割り当てを行うには、ネットワーク管理者がコマンドラインインタフェース（ＣＬＩ）を介して手動でＶＬＡＮ  ＩＤを作成し、インタフェースに割当てなければならないという問題点がある。【００１０】
とりわけ、非特許文献１、２のような集中制御型のネットワークでは、制御装置から設定される制御情報（フローエントリ）により、当該スイッチに設定されていないＶＬＡＮの付加等が指示されることがある。このため、該当ポートへのＶＬＡＮ  ＩＤの設定作業が発生し、また、適切なＶＬＡＮ  ＩＤの設定が遅れれば、その間、パケットが破棄され続けてしまうといった問題が生じうる。【００１１】
本発明は、集中制御型のネットワークにおけるＶＬＡＮ  ＩＤの設定作業の省力化乃至設定の遅れによるパケットロス期間の短縮に貢献できるスイッチ装置、ＶＬＡＮ設定管理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
第１の視点によれば、複数のポートと、前記複数のポートの各ポートにＶＬＡＮ情報を設定するとともに、前記各ポートに設定されているＶＬＡＮ情報を管理するＶＬＡＮ設定管理部と、所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が、該出力パケットの出力ポートに設定されていない場合、前記ＶＬＡＮ設定管理部に対し、前記制御情報にて指定されたＶＬＡＮ情報を該当出力ポートに設定するよう指示するＶＬＡＮ設定部と、を備えるスイッチ装置が提供される。即ち、このスイッチ装置は、制御装置から送信された制御情報に基づいたＶＬＡＮ設定の学習機能を備えている。【００１３】
第２の視点によれば、複数のポートを備えたスイッチ装置において、所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が、前記制御情報にて指定された出力ポートに設定されているか否かを確認するステップと、前記出力ポートに、前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が設定されていない場合、前記出力ポートに、前記所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報を設定するステップとを含むＶＬＡＮ設定方法が提供される。本方法は、制御装置から受信した制御情報に基づいてパケットを処理するスイッチ装置という、特定の機械に結びつけられている。【００１４】
第３の視点によれば、複数のポートを備えたスイッチ装置に登載されたコンピュータに、所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が、前記制御情報にて指定された出力ポートに設定されているか否かを確認する処理と、前記出力ポートに、前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が設定されていない場合、前記出力ポートに、前記所定の制御装置から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報を設定する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な（非トランジエントな）記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１５】
本発明によれば、集中制御型のネットワークにおけるＶＬＡＮ  ＩＤの設定作業の省力化に貢献することができる。また、ＶＬＡＮ  ＩＤの設定の遅れによるパケットロス時間の短縮にも貢献することが可能となる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態の構成を示す図である。
【図２】本発明の第１の実施形態のスイッチ装置の構成を示す図である。
【図３】本発明の第１の実施形態のスイッチ装置のＶＬＡＮ設定管理部に保持されるテーブルの一例を示す図である。
【図４】本発明の第１の実施形態のスイッチ装置の動作を表したフローチャートである。
【図５】本発明の第１の実施形態のスイッチ装置の動作を説明するための図（ＦｌｏｗＭｏｄメッセージ受信時）である。
【図６】本発明の第１の実施形態のスイッチ装置の動作を説明するための図（テーブル更新及び更新内容報告）である。
【図７】本発明の第１の実施形態のスイッチ装置の動作を説明するための図（ＦｌｏｗＭｏｄメッセージ受信時）である。
【図８】本発明の第１の実施形態のスイッチ装置の動作を説明するための図（テーブル更新及び更新内容報告）である。
【発明を実施するための形態】
【００１７】
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１８】
本発明は、その一実施形態において、図１に示すように制御装置２０によって制御されるスイッチ装置１０にて実現できる。このスイッチ装置１０は、複数（Ｎ個）のポート１０４と、各ポート１０４にそれぞれＶＬＡＮ情報を設定するとともに、前記各ポートに設定されているＶＬＡＮ情報を管理するＶＬＡＮ設定管理部１０７と、制御装置２０から受信した制御情報にて指定された出力パケットに付加するＶＬＡＮ情報が、該出力パケットの出力ポートに設定されていない場合、ＶＬＡＮ設定管理部１０７に対し、前記制御情報にて指定されたＶＬＡＮ情報を該当出力ポートに設定するよう指示するＶＬＡＮ設定部１０５と、を備える。
【００１９】
前記ＶＬＡＮ設定部１０５は、例えば、制御装置２０から、ポート０／Ｎから受信したパケットを、ＶＬＡＮ  ＩＤとして３０を付加してポート０／３から出力する、との制御情報を受け取った場合、ＶＬＡＮ設定管理部１０７に管理されている内容（例えば、図１の吹出し内のテーブル）を参照して、ポート０／３に、ＶＬＡＮ  ＩＤ＝３０が設定されているか否かを確認する。例えば、ポート０／１に、ＶＬＡＮ  ＩＤ＝１０、ポート０／２にＶＬＡＮ  ＩＤ＝２０が設定されているという情報しか得られなかった場合、前記ＶＬＡＮ設定部１０５は、ＶＬＡＮ設定管理部１０７に対し、ポート０／３に、ＶＬＡＮ  ＩＤ＝３０を設定するよう指示する。ＶＬＡＮ設定管理部１０７は、前記指示に従って該当ポートにＶＬＡＮ情報を設定する（例えば、図１のポート０／３にＶＬＡＮ  ＩＤ＝３０）。
【００２０】
以上のようなスイッチ装置１０を用いることで、手動による設定を行わなくとも、出力ポートに、出力パケットに付加されるＶＬＡＮ  ＩＤと同一のＶＬＡＮ  ＩＤを自動的に設定することが可能となる。なお、図１の例では、受信パケットにＶＬＡＮ  ＩＤを付加してから出力することを指示する制御情報を用いてＶＬＡＮ  ＩＤの自動登録を行う例を挙げて説明したが、ある制御情報のマッチ条件中にＶＬＡＮ  ＩＤがあり、そのマッチ条件に適合するパケットを指定ポートから出力するよう指示する制御情報を受信した場合や、ＶＬＡＮ  ＩＤを設定したパケットの出力指示を受けた場合等にも、同様に、前記制御情報にて指定されたＶＬＡＮ  ＩＤを、該当出力ポートに自動設定するようにしてもよい。
【００２１】
［第１の実施形態］
続いて、本発明の第１の実施形態について図面を参照して詳細に説明する。図２は、本発明の第１の実施形態のスイッチ装置の構成を示す図である。図２を参照すると、オープンフローコントローラ（以下、「ＯＦＣ」）１０２と接続されたオープンフロースイッチ（以下、「ＯＦＳ」）１００が示されている。なお、図２においてＯＦＳ１００と、ＯＦＣ１０２との間は、セキュアチャネル１０３を介して接続されている。
【００２２】
図２の例では、ＯＦＳ１００は、３つのポート１０４ａ〜１０４ｃと、ＶＬＡＮ設定部１０５と、コマンドラインインタフェース（以下、「ＣＬＩ」）１０６１を備えたプラットフォーム機能部１０６と、ＶＬＡＮ設定管理部１０７とを備えている。
【００２３】
ポート１０４ａ〜１０４ｃは、それぞれ他のＯＦＳやホスト装置と接続され、ＯＦＳ１００が、これらの装置と授受するパケットが入出力される。なお、図２中に示した「０／１」、「０／２」、「０／３」は、スロット番号とポート番号とを表している。例えば、ポート１０４ａは、スロット＃０／ポート＃１を意味する（０／１）とも表記する。
【００２４】
ＶＬＡＮ設定部１０５は、非特許文献１、２のオープンフロースイッチと同様に、内部に保持するフローテーブルを参照して、ＶＬＡＮ設定管理部１０７から転送されてきたパケットを処理するオープンフロースイッチ機能部として機能する。
【００２５】
また、ＶＬＡＮ設定部１０５は、ＯＦＣ１０２から制御メッセージ（例えば、非特許文献２のＦｌｏｗＭｏｄメッセージやＰａｃｋｅｔＯｕｔメッセージ）を受信した場合、その内容中にＶＬＡＮ  ＩＤと出力ポートとの対応関係が含まれているか否かを確認する。そして、前記制御メッセージ中に、ＶＬＡＮ  ＩＤと出力ポートとの対応関係が含まれている場合、ＶＬＡＮ設定部１０５は、ＶＬＡＮ設定管理部１０７が保持しているテーブルへの前記ＶＬＡＮ  ＩＤと出力ポートとを対応付けたエントリの追加、又は、既存エントリのうちの該当するＶＬＡＮ  ＩＤのエントリに出力ポートを追加する処理を行う。
【００２６】
プラットフォーム機能部１０６は、ＣＬＩ１０６１を介してＶＬＡＮ設定管理部１０７でテーブルを更新する際に使用される。
【００２７】
ＶＬＡＮ設定管理部１０７は、ＶＬＡＮ  ＩＤと各ポートとの対応関係を管理するテーブル等を含んで構成され、前記テーブルのエントリに従って各ポートにＶＬＡＮ  ＩＤを設定する。図３は、ＶＬＡＮ設定管理部１０７がＶＬＡＮ  ＩＤとポートとの対応関係を管理するために用いるテーブルの一例である。図３の例では、ＶＬＡＮ  ＩＤ＝１０には、図２のポート１０４ａ（０／１）、ポート１０４ｂ（０／２）が割り当てられ、ＶＬＡＮ  ＩＤ＝２０には、図２のポート１０４ｃ（０／３）が割り当てられている。なお、図３に示したＶＬＡＮ  ＩＤと各ポートとの対応関係は、プラットフォーム機能部１０６のＣＬＩ１０６１を介してオペレータにより入力されたものでもよいし、後記する手順にて自動設定されたものであっても構わない。
【００２８】
なお、図１、２に示したスイッチ装置乃至ＯＦＳの各部（処理手段）は、これらの装置を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
【００２９】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図４は、本実施形態のＯＦＳ１００が、ＯＦＣ１０２から制御メッセージとして、フローテーブルへのエントリの追加又は更新を指示するＦｌｏｗＭｏｄメッセージを受信した際の動作を表したフローチャートである。図４を参照すると、まず、ＯＦＳ１００は、ＦｌｏｗＭｏｄメッセージにより追加又は更新対象のエントリのインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎｓ）フィールドを参照して、ＶＬＡＮ  ＩＤの付加を指示するアクションが設定されているか否かを確認する（ステップＳ００１）。
【００３０】
前記確認の結果、ＶＬＡＮ  ＩＤの付加を指示するアクションが設定されている場合（ステップＳ００１のＹｅｓ）、ＯＦＳ１００は、該当アクションにて付加を指示されているＶＬＡＮ  ＩＤを自動設定ＶＬＡＮ  ＩＤ候補とする（ステップＳ００２）。
【００３１】
一方、ステップＳ００１の確認の結果、ＶＬＡＮ  ＩＤの付加を指示するアクションが設定されていない場合（ステップＳ００１のＮｏ）、ＯＦＳ１００は、ＦｌｏｗＭｏｄメッセージにより追加又は更新対象のエントリのマッチ条件フィールドを参照して、ＶＬＡＮ  ＩＤが指定されているか否かを確認する（ステップＳ００５）。
【００３２】
前記確認の結果、マッチ条件にＶＬＡＮ  ＩＤが指定されている場合（ステップＳ００５のＹｅｓ）、ＯＦＳ１００は、マッチ条件に指定されているＶＬＡＮ  ＩＤを自動設定ＶＬＡＮ  ＩＤ候補とする（ステップＳ００６）。
【００３３】
前記自動設定ＶＬＡＮ  ＩＤ候補が確定すると、ＯＦＳ１００は、自動設定ＶＬＡＮ  ＩＤ候補と、ＦｌｏｗＭｏｄメッセージにより追加又は更新対象のエントリにて指定されている出力ポートとの組に対応するエントリがＶＬＡＮ設定管理部１０７に保持されているか否かを確認する（ステップＳ００３）。ここで、該当するエントリが存在する場合（ステップＳ００３のＹｅｓ）、既に該当出力ポートに適切なＶＬＡＮ  ＩＤが設定されていることになるので、ＶＬＡＮ自動設定は省略される（ステップＳ００７）。
【００３４】
一方、前記確認の結果、該当するエントリが存在しない場合（ステップＳ００３のＮｏ）、ＯＦＳ１００は、ＶＬＡＮ設定管理部１０７に、前記自動設定ＶＬＡＮ  ＩＤ候補と、ＦｌｏｗＭｏｄメッセージにより追加又は更新対象のエントリにて指定されている出力ポートとの組を新規エントリとして追加する。なお、本実施形態のＶＬＡＮ設定管理部１０７が管理するテーブルは、図３に示したように、一のＶＬＡＮ  ＩＤに対して、複数のポートを対応付けることが可能であるので、前記自動設定ＶＬＡＮ  ＩＤ候補と同一のＶＬＡＮ  ＩＤが設定されているエントリが既に存在する場合、当該エントリに出力ポートを追加するだけでよい。前記新規エントリの追加又は該当エントリへの出力ポートの追加が完了すると、ＯＦＳ１００は、前記テーブルと一致するように、該当出力ポートにＶＬＡＮ  ＩＤを設定する。
【００３５】
なお、ＦｌｏｗＭｏｄメッセージにより追加又は更新対象のエントリに、ＶＬＡＮ  ＩＤの付加を指示するアクションが設定されておらず（ステップＳ００１のＮｏ）、また、マッチ条件にＶＬＡＮ  ＩＤが指定されていない場合（ステップＳ００５のＮｏ）、ＶＬＡＮ自動設定は行われない（ステップＳ００７）。
【００３６】
また、図４のステップＳ００４で、ＶＬＡＮ設定管理部１０７のテーブルへのエントリ追加又は更新を行った場合、ＶＬＡＮ設定部１０５が、ＯＦＣ１０２に対し、ＶＬＡＮ設定管理部１０７のテーブルの更新内容を通知するようにすることも好ましい。この通知には、例えば、オープンフロープロトコルにおいてベンダが独自に設定できるメッセージを用いることができる。以下、本実施形態では、このテーブルの更新内容を通知するメッセージをＶＬＡＮ  ＳＴＡＴＵＳメッセージと記す。
【００３７】
前記ＶＬＡＮ  ＳＴＡＴＵＳメッセージを受信したＯＦＣ１０２は、ＦｌｏｗＭｏｄメッセージと連動して適正なＶＬＡＮ設定が行われたことを認識し、自装置側で管理している仮想ネットワークの構成情報の更新等を行う。
【００３８】
またここで、ＯＦＣ１０２に、受信したＶＬＡＮ  ＳＴＡＴＵＳメッセージに示されたＶＬＡＮ  ＩＤと出力ポートとの組み合わせが仮想ネットワークの構成等に照らして適正なものであるか否か検査させるようにしてもよい。そして、前記検査の結果、ＶＬＡＮ  ＩＤと出力ポートとの組み合わせが適正なものではないと判断した場合、ＯＦＣ１０２が、ＯＦＳ１００に対して、ＶＬＡＮ設定管理部１０７のテーブルの復元を指示するようにしてもよい。
【００３９】
続いて、本実施形態のＯＦＳ１００の動作を具体的な事例を示して詳細に説明する。
［アクションにＶＬＡＮ  ＩＤの付加が含まれているケース］
図５は、ＯＦＣ１０２から、「あるマッチ条件に適合するパケットを受信した場合（ｍａｔｃｈ  ｋｅｙ：＊＊＊）、ＶＬＡＮ  ＩＤとして“１０”を付加した後、ポート“０／３”からのパケットの出力（ａｃｔｉｏｎ：ＳＥＴ＿ＶＬＡＮ＿ＶＩＤ＝１０，ＯＵＴＰＵＴ  ｐｏｒｔ＝０／３）を指示するエントリの追加又は更新を指示受けたケースを示している。この場合、アクションとして、ＶＬＡＮ  ＩＤ“１０”の付加とポート“０／３”からの出力が指示されているので、ＶＬＡＮ設定部１０５は、ＶＬＡＮ  ＩＤ“１０”を自動設定ＶＬＡＮ候補とする（図４のステップＳ００２）。そして、ＶＬＡＮ設定部１０５は、図３に示したテーブルを参照し、ＶＬＡＮ  ＩＤ“１０”と出力ポート“０／３”との組みが既登録であるか否かを確認する（図４のステップＳ００３）。図３のＶＬＡＮ  ＩＤ＝１０のエントリには、ポート“０／１”、ポート“０／２”のみが登録されているので、未登録の組み合わせであると判断される。この場合、ＶＬＡＮ設定部１０５は、ポート“０／３”にＶＬＡＮ  ＩＤ＝１０を設定するとともに、図６に示すように、ＶＬＡＮ設定管理部１０７のテーブルのＶＬＡＮ  ＩＤ＝１０のエントリに、ポート“０／３”を追加する（図４のステップＳ００４）。
【００４０】
また、図６の例では、ＶＬＡＮ設定部１０５は、ＯＦＣ１０２に対し、ＶＬＡＮ＿ＳＴＡＴＵＳメッセージを用いて、ＶＬＡＮ  ＩＤ＝１０のエントリに、ポート“０／３”を追加したことを通知している。
【００４１】
［マッチ条件にＶＬＡＮ  ＩＤが指定されているケース］
図７は、ＯＦＣ１０２から、マッチ条件：ＶＬＡＮ  ＩＤ＝３０に適合するパケットを受信した場合（ｍａｔｃｈ  ｋｅｙ：ＶＬＡＮ  ＩＤ＝３０）、ポート“０／３”からのパケットの出力（ａｃｔｉｏｎ：ＯＵＴＰＵＴ  ｐｏｒｔ＝０／３）を指示するエントリの追加又は更新を指示受けたケースを示している。この場合、マッチ条件として、ＶＬＡＮ  ＩＤ＝３０が指定され、ポート“０／３”からの出力が指示されているので、ＶＬＡＮ設定部１０５は、ＶＬＡＮ  ＩＤ“３０”を自動設定ＶＬＡＮ候補とする（図４のステップＳ００６）。そして、ＶＬＡＮ設定部１０５は、図３に示したテーブルを参照し、ＶＬＡＮ  ＩＤ“３０”と出力ポート“０／３”との組みが既登録であるか否かを確認する（図４のステップＳ００３）。図３には、ＶＬＡＮ  ＩＤ＝“３０”のエントリは存在しないので、未登録の組み合わせであると判断される。この場合、ＶＬＡＮ設定部１０５は、ポート“０／３”にＶＬＡＮ  ＩＤ＝３０を設定するとともに、図８に示すように、ＶＬＡＮ設定管理部１０７のテーブルに、ＶＬＡＮ  ＩＤ＝３０、ポート“０／３”を対応付けたエントリを追加する（図４のステップＳ００４）。
【００４２】
また、図８の例では、ＶＬＡＮ設定部１０５は、ＯＦＣ１０２に対し、ＶＬＡＮ＿ＳＴＡＴＵＳメッセージを用いて、ＶＬＡＮ  ＩＤ＝３０と、ポート“０／３”とを対応付けたエントリを追加したことを通知している。
【００４３】
以上のように、本実施形態によれば、ＯＦＳ１００が、ＯＦＣ１０２から指示された制御メッセージから、ＶＬＡＮ  ＩＤと出力ポートの関係を抽出し、ＶＬＡＮ設定管理部１０７に未登録であれば、自動的に該当ポートにＶＬＡＮ  ＩＤを設定する処理が行われる。
【００４４】
以上、本発明の実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した実施形態で用いたポートの数や、ＶＬＡＮ情報はあくまで一例であり、その数に制約は無い。
【００４５】
また、上記した実施形態では、ＶＬＡＮ  ＩＤとポートとの組合せをＯＦＣ１０２に送信するものとして説明したが、ＯＦＣ１０２と連携動作するその他の制御装置に、ＶＬＡＮ  ＩＤとポートとの組合せを送信するようにしてもよい。
【００４６】
また、上記した実施形態では、ＦｌｏｗＭｏｄメッセージからＶＬＡＮ  ＩＤと出力ポートとの組合せを抽出する例を挙げて説明したが、その他の制御メッセージを対象に加えてもよい。
【００４７】
また、上記した実施形態では、ＶＬＡＮ設定部１０５がオープンフロースイッチ機能部としても機能するものとして説明したが、両者を分離した構成も採用可能である。また、例えば、ＶＬＡＮ設定部１０５とＶＬＡＮ設定管理部とを統合させた構成も採用可能である。
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点によるスイッチ装置参照）
［第２の形態］
第１の形態において、
さらに、前記ＶＬＡＮ設定部は、前記所定の制御装置に対して、前記ＶＬＡＮ設定管理部のエントリの追加内容又は更新内容を通知することが好ましい。
［第３の形態］
第１又は第２の形態において、
前記ＶＬＡＮ設定管理部は、ＶＬＡＮ  ＩＤと各ポートとの対応関係を保持するエントリを保持し、
前記ＶＬＡＮ設定部は、
前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報と同一のＶＬＡＮ情報を持つエントリが存在し、かつ、当該エントリに前記パケットの送信ポートが対応付けられていない場合、当該エントリに前記送信ポートの追加を行い、
前記制御情報にて指定された出力パケットに付加するＶＬＡＮ情報と同一のＶＬＡＮ情報を持つエントリが存在しない場合、前記パケットの送信ポートと、前記パケットに含まれるＶＬＡＮ情報と、を対応付けたエントリを追加することで、
前記ＶＬＡＮ設定管理部に対し、前記制御情報にて指定されたＶＬＡＮ情報を該当出力ポートに設定するよう指示することができる。
［第４の形態］
第２又は第３の形態において、
さらに、前記ＶＬＡＮ設定部は、
前記所定の制御装置から受信した制御情報を格納するテーブルを保持し、前記所定の制御装置から指示に従い、前記テーブルを更新することができる。
［第５の形態］
（上記第２の視点によるＶＬＡＮ設定方法参照）
［第６の形態］
（上記第３の視点によるプログラム参照）
なお、上記第５及び第６の形態は、第１の形態と同様に、第２〜第４の形態に展開することが可能である。
【００４８】
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
【符号の説明】
【００４９】
１０  スイッチ装置
２０  制御装置
１００  オープンフロースイッチ（ＯＦＳ）
１０２  オープンフローコントローラ（ＯＦＣ）
１０３  セキュアチャネル
１０４、１０４ａ〜１０４ｃ  ポート
１０５  ＶＬＡＮ設定部（オープンフロースイッチ機能部）
１０６  プラットフォーム機能部
１０７  ＶＬＡＮ設定管理部
１０６１  コマンドラインインタフェース（ＣＬＩ）
【図１】
0005900652.tif 000002
【図２】
0005900652.tif 000003
【図３】
0005900652.tif 000004
【図４】
0005900652.tif 000005
【図５】
0005900652.tif 000006
【図６】
0005900652.tif 000007
【図７】
0005900652.tif 000008
【図８】
0005900652.tif 000009