(57)【要約】  オーバーレイネットワークシステムのトンネルエンドポイントとして機能するスイッチのトンネル設定情報の変更機能を向上させる。オーバーレイネットワークシステムのトンネルエンドポイントとして機能するスイッチは、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部と、カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示した後に、送信フレームに設定するフロー識別情報の変更を指示するコマンド処理部と、を備える。
2016017737.tif 000002
【特許請求の範囲】
【請求項１】
オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部と、
カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示した後に、送信フレームに設定するフロー識別情報の変更を指示するコマンド処理部と、
を備えたことを特徴とするスイッチ。
【請求項２】
前記コマンド処理部は、
第１の指示の受信を契機に、変更前後のフロー識別情報でのフレーム受信を開始するよう前記トンネル処理部に指示し、
第２の指示の受信を契機に、送信フレームへの変更後のフロー識別の格納を開始するよう前記トンネル処理部に指示する請求項１のスイッチ。
【請求項３】
前記コマンド処理部は、
第３の指示の受信を契機に、変更前のフロー識別情報でのフレーム受信を終了するよう前記トンネル処理部に指示する請求項１又は２のスイッチ。
【請求項４】
前記フロー識別情報は、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）ポート番号である請求項１から３いずれか一のスイッチ。
【請求項５】
さらに、デカプセル化後の受信フレーム及びカプセル化前の送信フレームの処理を行うオープンフロースイッチ機能部を備える請求項１から４いずれか一のスイッチ。
【請求項６】
前記デカプセル化後の受信フレーム及びカプセル化前の送信フレームの処理に関する指示を受け取る制御装置から、前記フロー識別情報の変更指示を受信する請求項５のスイッチ。
【請求項７】
オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部と、
カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示した後に、送信フレームに設定するフロー識別情報の変更を指示するコマンド処理部と、
を備えたスイッチを用いて構成されたオーバーレイネットワークシステム。
【請求項８】
オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部を備えたスイッチにおいて、
カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示するステップと、
前記指示の後に、所定の契機で、送信フレームに設定するフロー識別情報の変更を指示するステップと、
を含む通信方法。
【請求項９】
オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部を備えたスイッチに搭載されたコンピュータに、
カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示する処理と、
前記指示の後に、所定の契機で、送信フレームに設定するフロー識別情報の変更を指示する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１４−１５６５６２号（２０１４年  ７月３１日出願）に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、スイッチ、オーバーレイネットワークシステム、通信方法及びプログラムに関し、特に、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネルエンドポイントとして機能するスイッチ、オーバーレイネットワークシステム、通信方法及びプログラムに関する。
【背景技術】
【０００２】
レイヤ３ネットワーク上に、仮想的なレイヤ２ネットワークを構築するタイプのオーバーレイネットワークシステムが知られている。このうちのＶＸＬＡＮ（Ｖｉｒｔｕａｌ  ｅＸｔｅｎｓｉｂｌｅ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）は、ＵＤＰポート情報を追加ヘッダに埋め込み、これを用いて経路制御とロードバランシング機能を備えている。非特許文献１は、ＶＸＬＡＮのドラフトである（Ｐａｇｅ  １０、Ｏｕｔｅｒ  ＵＤＰ  Ｈｅａｄｅｒの項参照）。【０００３】
特許文献１に、上記ＶＸＬＡＮ等の大規模ネットワーク論理分割技術を用いて多数の論理的なネットワークを構築した構成におけるマルチキャストツリーの管理技術が開示されている。【０００４】
非特許文献２、３は、本発明の関連技術であるオープンフローのホワイトペーパーとオープンフローのスペックである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−７６８１号公報
【非特許文献】
【０００６】
【非特許文献１】Ｍ．Ｍａｈａｌｉｎｇａｍほか７名、“ＶＸＬＡＮ：  Ａ  Ｆｒａｍｅｗｏｒｋ  ｆｏｒ  Ｏｖｅｒｌａｙｉｎｇ  Ｖｉｒｔｕａｌｉｚｅｄ  Ｌａｙｅｒ  ２  Ｎｅｔｗｏｒｋｓ  ｏｖｅｒ  Ｌａｙｅｒ  ３  Ｎｅｔｗｏｒｋ”、［ｏｎｌｉｎｅ］、［平成２６（２０１４）年７月１７日検索］、インターネット〈URL:http://tools.ietf.org/pdf/draft-mahalingam-dutt-dcops-vxlan-02.pdf〉
【非特許文献２】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  Ｉｎｎｏｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２６（２０１４）年７月１７日検索］、インターネット〈URL: http://archive.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献３】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．１．０  Ｉｍｐｌｅｍｅｎｔｅｄ  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０２）、［ｏｎｌｉｎｅ］、［平成２６（２０１４）年７月１７日検索］、インターネット〈URL:http://archive.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【０００７】
以下の分析は、本発明によって与えられたものである。上記オーバーレイネットワークシステムにおいて、物理ネットワークがフローを識別するためのフロー識別情報（ＶＸＬＡＮの場合、ＵＤＰポート番号）を動的に変更したいという要望がある。【０００８】
しかしながら、それを実現するためには、オーバーレイネットワークシステムのトンネルエンドポイントとして機能する複数のスイッチに対して、トンネル設定として、フロー識別情報の変更設定を行う必要がある。その際に、設定のタイミングがずれてしまうとその間はネットワークの通信断が発生してしまうという問題点がある。【０００９】
本発明は、オーバーレイネットワークシステムのトンネルエンドポイントとして機能するスイッチのトンネル設定の変更機能の向上に貢献できるスイッチ、オーバーレイネットワークシステム、通信方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
第１の視点によれば、オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部を備えるスイッチが提供される。このスイッチは、さらに、カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示した後に、送信フレームに設定するフロー識別情報の変更を指示するコマンド処理部と、を備える。【００１１】
第２の視点によれば、上記したスイッチを用いて構成されたオーバーレイネットワークシステムが提供される。【００１２】
第３の視点によれば、オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部を備えたスイッチにおいて、カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示するステップと、前記指示の後に、所定の契機で、送信フレームに設定するフロー識別情報の変更を指示するステップと、を含む通信方法が提供される。本方法は、オーバーレイネットワークのトンネルエンドポイントとして機能するスイッチという特定の機械に結びつけられている。【００１３】
第４の視点によれば、オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部を備えたスイッチに搭載されたコンピュータに、カプセル化されたフレームを識別するためのフロー識別情報の変更指示の受信を契機に、前記トンネル処理部に対し、変更前後のフロー識別情報を持つフレームの受信を指示する処理と、前記指示の後に、所定の契機で、送信フレームに設定するフロー識別情報の変更を指示する処理と、を実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な（非トランジエントな）記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１４】
本発明によれば、オーバーレイネットワークシステムのトンネルエンドポイントとして機能するスイッチのトンネル設定情報の変更機能の向上に貢献することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施形態のスイッチの構成を示す図である。
【図２】本発明の第１の実施形態のオーバーレイネットワークシステムの構成を示す図である。
【図３】本発明の第１の実施形態の仮想スイッチの構成を示す図である。
【図４】本発明の第１の実施形態の仮想スイッチによりカプセル化後のフレームの構成を示す図である。
【図５】本発明の第１の実施形態の仮想スイッチ内のトンネル処理部の構成を示す図である。
【図６】本発明の第１の実施形態の動作を表したシーケンス図である。
【図７】本発明の第１の実施形態の仮想スイッチのＵＤＰポート番号情報（初期状態）を示す図である。
【図８】本発明の第１の実施形態の仮想スイッチのＵＤＰポート番号情報（ＵＤＰポート番号変更通知受信後）を示す図である。
【図９】本発明の第１の実施形態の仮想スイッチのＵＤＰポート番号情報（送信ＵＤＰポート番号の変更通知受信後）を示す図である。
【図１０】本発明の第１の実施形態の仮想スイッチのＵＤＰポート番号情報（変更前ＵＤＰポート番号の解放通知受信後）を示す図である。
【発明を実施するための形態】
【００１６】
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００１７】
本発明は、その一実施形態において、図１に示すように、オーバーレイネットワークのトンネルエンドポイントとして、対向するトンネルエンドポイントと送受信するフレームのカプセル化とデカプセル化とを行うトンネル処理部２６０ａと、コマンド処理部２５１ａとを備えたスイッチ２００ａにて実現できる。
【００１８】
より具体的には、コマンド処理部２５１ａは、カプセル化されたフレームを識別するためのフロー識別情報の変更指示（例：ＡＡＡ→ＢＢＢ）の受信を契機に、前記トンネル処理部２６０ａに対し、変更前後のフロー識別情報を持つフレームの受信（フロー識別情報＝ＡＡＡ及びＢＢＢのフレームの受信）を指示する。そして、その後、所定の契機で、前記トンネル処理部２６０ａに対し、送信フレームに設定するフロー識別情報の変更指示が行われる。なお、所定の契機としては、フロー識別情報の変更指示の受信から一定の期間の経過を条件としてもよいし、ユーザからの明示的な指示（送信フレームに設定するフロー識別情報の変更指示）がなされることを条件としてもよい。
【００１９】
以上のように構成することにより、トンネル通信に使用するフロー識別情報の変更による通信断の発生を抑止することができる。その理由は、フロー識別情報の変更指示の受信を契機に、直ちに受信対象フレームのフロー識別情報を変更せず、まず、変更前後のフロー識別情報での受信を行わせ、その後で、送信時に使用するフロー識別情報を変更することで、設定タイミングのずれを吸収するように構成したことにある。
【００２０】
［第１の実施形態］
続いて本発明の第１の実施形態について図面を参照して詳細に説明する。図２は、本発明の第１の実施形態のオーバーレイネットワークシステムの構成を示す図である。図２を参照すると、オーバーレイネットワークシステムのトンネルエンドポイントとして配置された複数の仮想スイッチ２００Ａ〜２００Ｃと、これら仮想スイッチ２００を制御するフロー制御装置１００と、これら仮想スイッチ２００を利用して互いに通信する仮想マシン３００Ａ〜３００Ｅとを含む構成が示されている。仮想スイッチ２００間は、後述するＶＸＬＡＮトンネル４００ＡＢ−１〜４００ＢＣ−２が構築されている。以下、仮想スイッチ２００Ａ〜２００Ｃ、仮想マシン３００Ａ〜３００Ｅ、及びＶＸＬＡＮトンネル４００ＡＢ−１〜４００ＢＣ−２を特に区別しない場合、それぞれ「仮想スイッチ２００」、「仮想マシン３００」、「ＶＸＬＡＮトンネル４００」と記す。
【００２１】
フロー制御装置１００は、仮想スイッチ２００間に、ＶＸＬＡＮトンネル４００をメッシュ状に構築するためのフロー管理をしており、１以上の仮想スイッチ２００に対してフロー設定の指示を行う。これにより、フロー制御装置１００は、仮想マシン３００間の通信用ネットワークを実現する。なお、このようなフロー制御装置１００は、非特許文献２、３のオープンフローコントローラにトンネル管理機能を追加することで実現できる。
【００２２】
仮想スイッチ２００は、仮想マシン３００もしくは他の仮想スイッチからの入力フレームに対してフロー制御装置１００の指示によって設定されたフローエントリの中から、入力フレームに適合するマッチ条件を持つフローエントリを選択して入力フレームの処理を行う。仮想スイッチ２００は、選択したフローエントリによって入力フレームを他の仮想マシン３００との接続用のＶＸＬＡＮトンネル４００に出力し、基盤ネットワーク５００を越えて他の仮想スイッチ２００に出力したり、フロー制御装置１００に出力したり、ドロップしたりする。
【００２３】
仮想マシン３００は、他の仮想マシン３００宛てのフレームを仮想スイッチ２００に送信したり、他の仮想マシン３００を送信元とするフレームを仮想スイッチ２００から受信したりする。また、仮想マシン３００は、仮想スイッチ２００と直接接続している必要はなくレイヤ２スイッチ（Ｌ２ＳＷ）を介して接続していてもよいし、仮想マシン３００がレイヤ３スイッチ（Ｌ３ＳＷ）やルータであり、その先に別の仮想マシン３００が接続されている場合もある。
【００２４】
また、接続状態にある仮想スイッチ２００と仮想マシン３００は、サーバ仮想化技術を利用して、同一の仮想化サーバ上で動作する仮想エンティティであってもよい。
【００２５】
ＶＸＬＡＮトンネル４００は、仮想スイッチ２００間で基盤ネットワーク５００を介して通信を行うためのオーバーレイトンネルである。仮想ネットワーク識別子ＶＮＩ（ＶＸＬＡＮ  Ｎｅｔｗｏｒｋ  Ｉｄｅｎｔｉｆｉｅｒ）と通信を行う２台の仮想スイッチ２００の組み合わせにつき１個存在する。図２の例では、３台の仮想スイッチ間にそれぞれ２つのＶＮＩのＶＸＬＡＮトンネル４００が構築されている。なお以下の説明において、仮想スイッチ２００Ａと仮想スイッチ２００Ｂとの間のＶＮＩ＝１のＶＸＬＡＮトンネル４００を、ＶＸＬＡＮトンネル４００ＡＢ−１という形で表す。
【００２６】
基盤ネットワーク５００は、仮想スイッチ２００間のフレーム転送を行うためのレイヤ３ネットワーク等である。本実施形態では、基盤ネットワーク５００は、ＶＸＬＡＮにてカプセル化された際に付与される宛先ＩＰアドレスへの通信が可能であり、宛先にマルチキャストアドレスが設定されている場合には、全仮想スイッチ２００への配信が可能であるものとする。
【００２７】
図３は、第１の実施形態の仮想スイッチの構成を示す図である。図３を参照すると、フローエントリ検索部２０１と、フローエントリ記憶部２０２と、フローエントリ処理部２０３と、フロー処理部２０４と、フロー制御装置通信部２０５と、ＶＸＬＡＮ処理部２５０とを備えた構成が示されている。このうち、フローエントリ検索部２０１、フローエントリ記憶部２０２、フローエントリ処理部２０３、フロー処理部２０４、及びフロー制御装置通信部２０５が、オープンフロースイッチ機能部に相当する。
される。
【００２８】
ＶＸＬＡＮ処理部２５０は、コマンド処理部２５１とトンネル処理部２６０−１、２６０−２（以降、トンネル処理部２６０−１、２６０−２を特に区別しない場合、「トンネル処理部２６０」と記す。）とを備えている。トンネル処理部２６０は、ＶＸＬＡＮトンネル４００から入力されたＶＸＬＡＮカプセル化されたフレームをフローエントリ検索部２０１に渡し、フロー処理部２０４の指示に従い、必要に応じＶＸＬＡＮデカプセル化して仮想マシン３００に出力する。また、トンネル処理部２６０は、仮想マシン３００から入力されたフレームをフローエントリ検索部２０１に渡して、フロー処理部２０４の指示に従い、必要に応じＶＸＬＡＮカプセル化し、ＶＸＬＡＮトンネル４００を介して対向する仮想スイッチ２００へと転送する処理を行う。
【００２９】
コマンド処理部２５１はユーザからの操作を受け付け、トンネル処理部２６０に対して、ＵＤＰポート番号情報の変更コマンド等を出力する。
【００３０】
フローエントリ検索部２０１は、入力されたフレームからフローエントリを検索するためのフローエントリ検索条件情報を抽出し、フローエントリ検索条件情報を用いてフローエントリ記憶部２０３を検索する。フローエントリ検索部２０１は、前記検索の結果、マッチしたフローエントリのアクションと入力フレームをフロー処理部２０４に渡す。また、フローエントリ検索部２０１は、その際にマッチしたフローエントリのタイムアウト時間や統計情報などがあればこれらを更新する。
【００３１】
フローエントリ記憶部２０２は、フロー制御装置１００より設定されたフローエントリテーブル等を用いて保持する。なお、フローエントリ記憶部２０２におけるフローエントリの異動は、フロー制御装置１００に報告され、把握されている。従って、フロー制御装置１００は、仮想スイッチ２００のふるまいを把握し、制御可能となっている。
【００３２】
フローエントリ処理部２０３は、フロー制御装置通信部２０５を介してフロー制御装置１００から来るフローエントリに関する追加・削除などの操作指示や参照指示に従い、フローエントリ記憶部２０２の更新等を行う。また、フローエントリ処理部２０３は、フローエントリ記憶部２０２を参照し、フローエントリでタイムアウトしたものに関しては削除し、フロー制御装置通信部２０５を介してフロー制御装置１００に対して、該フローエントリが削除されたことを報告する。
【００３３】
フロー処理部２０４は、フローエントリ検索部２０１から、又は、フロー制御装置通信部２０５を介して、フロー制御装置１００から渡される入力フレームとそのアクションに従ってフレームの値を変更したり、仮想マシン３００にフレームを出力したり、他の仮想スイッチ２００にフレームを出力する。また、必要に応じて、フロー処理部２０４は、ＶＸＬＡＮ処理部２５０にＶＸＬＡＮカプセル化を指示し、ＶＸＬＡＮトンネル４００に出力したり、ＶＸＬＡＮトンネル４００から入力されたフレームのＶＸＬＡＮデカプセル化をしたり、フロー制御装置通信部２０５を介してフロー制御装置１００にフレームを出力したり、ドロップしたりする。
【００３４】
図４は、本発明の第１の実施形態の仮想スイッチによりＶＸＬＡＮカプセル化されたフレームの構成を示す図である。ＶＸＬＡＮ処理部２５０のトンネル処理部２６０は、ＶＸＬＡＮカプセル化する場合、オリジナルフレームに、Ｏｕｔｅｒ  ＭＡＣ、Ｏｕｔｅｒ  ＩＰ、Ｏｕｔｅｒ  ＵＤＰ、ＶＸＬＡＮ  ＩＤといった追加ヘッダにてカプセル化を行う。このうちのＯｕｔｅｒ  ＵＤＰヘッダに後記するＵＤＰポート情報番号６０１、６０２が設定され、フロー識別やこれを利用した負荷分散（ロードバランシング）に利用可能となっている。デカプセル化の場合には、上記カプセル化されたフレームから追加ヘッダを取り外す処理が行われる。
【００３５】
図５は、第１の実施形態の仮想スイッチ２００内のトンネル処理部２６０の構成を示す図である。図５を参照すると、ＶＮＩ情報記憶部２６４と、トンネル解除部（デカプセル化部）２６５と、ＵＤＰポート情報記憶部２６６と、トンネル化部（カプセル化部）２６７とを備えた構成が示されている。
【００３６】
ＶＮＩ情報記憶部２６４はトンネル処理部２６０が持つＶＸＬＡＮの仮想ネットワーク識別子（ＶＮＩ）を保持する。この仮想ネットワーク識別子（ＶＮＩ）は、図４のＶＸＬＡＮヘッダに格納される。
【００３７】
トンネル解除部（デカプセル化部）２６５は、ＶＸＬＡＮトンネル４００から入力されたフレームのＶＸＬＡＮフレームから追加ヘッダの除去等を行い、デカプセル化する。
【００３８】
ＵＤＰポート情報記憶部２６６は、トンネル処理部２６０がＶＸＬＡＮトンネル４００を介して送受信を行うためのＵＤＰポート情報を保持する。ＵＤＰポート情報記憶部２６６に保持されるＵＤＰポート番号は、コマンド処理部２５１から発行される変更コマンドにより変更される。なお、ＵＤＰポート情報記憶部２６６は、複数のトンネル処理部２６０で共有することが可能である。すなわち、複数のＶＮＩに対して１個のＵＤＰポート番号を使用することが可能である。
【００３９】
トンネル化部（カプセル化部）２６７はＶＸＬＡＮトンネル４００へ出力する際に、図４に示すようにオリジナルフレームに追加ヘッダを付加してＶＸＬＡＮカプセル化処理を行う。
【００４０】
コマンド処理部２５１はユーザからの操作を受け付け、トンネル処理部２６０に対して、ＵＤＰポート番号情報の変更コマンド（ＵＤＰポート番号変更通知）等を出力し、ＵＤＰポート情報記憶部２６６の内容等を書き換える動作を行う。
【００４１】
なお、本実施形態では、コマンド処理部２５１を設けて、ＵＤＰポート情報記憶部２６６を変更する構成を採用しているが、ＵＤＰポート番号変更のための特殊なフレーム／パケットを送受信することにより変更を行う方法も考えられる。
【００４２】
なお、図３、図５に示した仮想スイッチ２００の各部（処理手段）は、仮想スイッチ２００に搭載されるコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
【００４３】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図６は、本発明の第１の実施形態の動作を表したシーケンス図である。
【００４４】
初期状態として、図７に示すように、ＵＤＰポート情報記憶部２６６に、ＶＸＬＡＮ通信に用いるＵＤＰポート番号として、＃１が設定されているものとする。具体的には、図７で示すように、この時点では、ＵＤＰポート番号＃１のみがフレーム受信可能、かつ、フレーム送信時の宛先ＵＤＰポート番号としてＵＤＰポート番号＃１が設定されている。
【００４５】
この状態で、図６に示すように、ユーザは、すべての仮想スイッチ２００Ａ〜２００Ｃの設定を切り替えるため、各仮想スイッチ２００に対してＵＤＰポート番号の変更を指示したものとする。前記指示を受けたコマンド処理部２５１は、トンネル処理部２６０に対して、ＵＤＰポート番号を＃１から＃２へ変更することを指示するＵＤＰポート番号変更コマンド（第１の指示）を送信する（図６のＳ００１）。
【００４６】
前記ＵＤＰポート番号の変更コマンド（第１の指示）を受信したトンネル処理部２６０のＵＤＰポート情報記憶部２６６の内容は、図８に示すとおり書き換えられる（図６のＳ００２）。図８の例では、図７のエントリに、受信可能ポートとしてＵＤＰポート番号＃２を指定したエントリが追加されている。なお、この時点では、ＵＤＰポート番号＃２は、送信時宛先に使用するＵＤＰポート情報とはなっていない（送信時宛先使用フィールドがＮＯ）。
【００４７】
次に、ユーザは、仮想スイッチ２００に対して送信時宛先ポートを新ＵＤＰポート番号＃２に切替えるコマンドを入力する。前記指示を受けたコマンド処理部２５１は、トンネル処理部２６０に対して、送信時宛先に使用するＵＤＰポート番号を＃１から＃２へ変更することを指示するＵＤＰポート番号切替コマンド（第２の指示）を送信する（図６のＳ００３）。
【００４８】
前記ＵＤＰポート番号の切替コマンド（第２の指示）を受信したトンネル処理部２６０のＵＤＰポート情報記憶部２６６の送信時宛先使用フィールドが、図９に示すとおり書き換えられる（図６のＳ００４）。図９の例では、図８の１番目のエントリの送信時宛先使用フィールドがＹＥＳからＮＯに書き換えられ、図８の２番目のエントリの送信時宛先使用フィールドがＮＯからＹＥＳに書き換えられている。この処理は、送信時宛先使用のＵＤＰポート番号＃１から＃２に切り替える処理に相当する。なお、この時点においては、受信可能ＵＤＰポートとして、ＵＤＰポート番号＃１、＃２の双方が設定された状態が維持されている（受信可能ポートフィールドが共にＹＥＳ）。
【００４９】
次に、ユーザは、仮想スイッチ２００に対して変更前ＵＤＰポート番号＃１の開放を指示するコマンドを入力する。前記指示を受けたコマンド処理部２５１は、トンネル処理部２６０に対して、変更前ＵＤＰポート番号解放コマンド（第３の指示）を送信する（図６のＳ００５）。
【００５０】
前記変更前ＵＤＰポート番号解放コマンド（第３の指示）を受信したトンネル処理部２６０のＵＤＰポート情報記憶部２６６の内容は、図１０に示すとおり書き換えられる（図６のＳ００６）。図１０の例では、図９の１番目のエントリの受信可能ＵＤＰポートから、ＵＤＰポート番号＃１が外されている（ＹＥＳ→ＮＯに変更。）。これにより、ＵＤＰポート番号＃１が解放されたことになる。なお、図１０の例では、各フィールドにＮＯを設定した状態で１番目のエントリを残しているが、このエントリは、再度、ＵＤＰポート＃２から＃１への変更時に再使用される。もちろん、その必要性が無い場合は、１番目のエントリ自体を削除してしまってもよい。
【００５１】
以上説明したように、本実施形態によれば、システムを構成する各仮想スイッチに対してＵＤＰポート番号の変更設定タイミングがずれてしまった場合でも、ネットワークの通信断の発生を抑止することができる。
【００５２】
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示したネットワーク構成、各要素の構成、メッセージの表現形態は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
【００５３】
例えば、上記した第１の実施形態では、ユーザからＵＤＰポート番号の変更コマンド（第１の指示）、前記ＵＤＰポート番号の切替コマンド（第２の指示）、変更前ＵＤＰポート番号解放コマンド（第３の指示）の発行指示がなされるものとして説明したが、前記ＵＤＰポート番号の切替と、変更前ＵＤＰポート番号解放は、所定期間の経過後に実行される自動処理とすることができる。また、変更前ＵＤＰポート番号解放が必要ない場合は、変更前ＵＤＰポート番号解放を省略することもできる。
【００５４】
また、ユーザに代わってフロー制御装置１００が、ＵＤＰポート番号の変更コマンド（第１の指示）、前記ＵＤＰポート番号の切替コマンド（第２の指示）、変更前ＵＤＰポート番号解放コマンド（第３の指示）の発行指示をコマンド処理部２５１に送るようにしてもよい。この場合、フロー制御装置１００が、仮想マシンに適用される通信ポリシー等を参照して、ＵＤＰポート番号の変更することが可能となる。
【００５５】
また例えば、上記した第１の実施形態では、ＶＸＬＡＮで接続されることを想定して、仮想スイッチ２００を例示して説明したが、本発明が適用されるスイッチは、仮想スイッチに限定されない。例えば、一部のスイッチ又は全部が物理スイッチであってもよい。
【００５６】
また例えば、上記した第１の実施形態では、トンネル処理部２６０は、ＶＸＬＡＮトンネル４００から入力されたＶＸＬＡＮカプセル化されたフレームをフローエントリ検索部２０１に渡し、フロー処理部２０４の指示に従い、必要に応じＶＸＬＡＮデカプセル化するものとして説明したが、トンネル処理部２６０が、ＶＸＬＡＮデカプセル化してから、フレームをフローエントリ検索部２０１に渡す構成とすることもできる。同様に、仮想マシンから受信したフレームを送信する際も、入力されたフレームをＶＸＬＡＮカプセル化してから、フローエントリ検索部２０１に渡す構成とすることもできる。
【００５７】
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点によるスイッチ参照）
［第２の形態］
第１の形態のスイッチにおいて、
前記コマンド処理部は、
第１の指示の受信を契機に、変更前後のフロー識別情報でのフレーム受信を開始するよう前記トンネル処理部に指示し、
第２の指示の受信を契機に、送信フレームへの変更後のフロー識別の格納を開始するよう前記トンネル処理部に指示するスイッチ。
［第３の形態］
第１又は第２の形態のスイッチにおいて、
前記コマンド処理部は、
第３の指示の受信を契機に、変更前のフロー識別情報でのフレーム受信を終了するよう前記トンネル処理部に指示するスイッチ。
［第４の形態］
第１から第３いずれか一の形態のスイッチにおいて、
前記フロー識別情報は、ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）ポート番号であるスイッチ。
［第５の形態］
第１から第４いずれか一の形態のスイッチにおいて、
さらに、デカプセル化後の受信フレーム及びカプセル化前の送信フレームの処理を行うオープンフロースイッチ機能部を備えるスイッチ。
［第６の形態］
第５の形態のスイッチにおいて、
前記デカプセル化後の受信フレーム及びカプセル化前の送信フレームの処理に関する指示を受け取る制御装置から、前記フロー識別情報の変更指示を受信するスイッチ。
［第７の形態］
（上記第２の視点によるオーバーレイネットワークシステム参照）
［第８の形態］
（上記第３の視点による通信方法参照）
［第９の形態］
（上記第４の視点によるプログラム参照）
なお、上記第７〜第９の形態は、第１の形態と同様に、第２〜第６の形態に展開することが可能である。
【００５８】
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の開示の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００５９】
１００  フロー制御装置
２００、２００Ａ〜２００Ｃ  仮想スイッチ
２００ａ  スイッチ
２０１  フローエントリ検索部
２０２  フローエントリ記憶部
２０３  フローエントリ処理部
２０４  フロー処理部
２０５  フロー制御装置通信部
２５０  ＶＸＬＡＮ処理部
２５１、２５１ａ  コマンド処理部
２６０、２６０ａ、２６０−１、２６０−２  トンネル処理部
２６４  ＶＮＩ情報記憶部
２６５  トンネル解除部（デカプセル化部）
２６６  ＵＤＰポート情報記憶部
２６７  トンネル化部（カプセル化部）
３００、３００Ａ〜３００Ｅ  仮想マシン
４００、４００ＡＢ−１〜４００ＢＣ−２  ＶＸＬＡＮトンネル
５００  基盤ネットワーク
６０１、６０２  ＵＤＰポート番号情報
【図１】
2016017737.tif 000003
【図２】
2016017737.tif 000004
【図３】
2016017737.tif 000005
【図４】
2016017737.tif 000006
【図５】
2016017737.tif 000007
【図６】
2016017737.tif 000008
【図７】
2016017737.tif 000009
【図８】
2016017737.tif 000010
【図９】
2016017737.tif 000011
【図１０】
2016017737.tif 000012
【国際調査報告】
2016017737.tif 000013
2016017737.tif 000014