(57)【要約】  仮想ネットワークを提供する通信システムにおける取り扱い可能な仮想ネットワークの数を増大させ、その効率性向上に貢献する。仮想マシンサーバは、仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定する手段と、前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知する手段とを備える。前記仮想ネットワーク管理装置は、前記通知に基づいて、前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示する。
2014065315.tif 000002
【特許請求の範囲】
【請求項１】
仮想スイッチと、仮想マシンとが動作する仮想マシンサーバと、
前記仮想スイッチを制御するスイッチ制御装置と、
前記仮想マシンサーバ上で動作する仮想スイッチ及び仮想マシンを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置と、を含み、
前記仮想マシンサーバは、
前記仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定する手段と、
前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知する手段とを備え、
前記仮想ネットワーク管理装置は、前記通知に基づいて、前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示すること、
を特徴とする通信システム。
【請求項２】
前記スイッチ制御装置は、同一仮想ネットワークに割り当てられたローカル識別情報が異なる場合、前記仮想スイッチに対し、該当パケットのＶＬＡＮ  ＩＤの書き換えを指示する請求項１の通信システム。
【請求項３】
前記仮想マシンサーバは、
前記仮想スイッチ毎に、前記仮想ネットワークと前記ローカル識別情報とを対応付けたマッピング情報保持部を備え、
前記仮想スイッチに仮想マシンを配置した際に、前記マッピング保持部に、前記仮想マシンが属する仮想ネットワークに対応付けられたローカル識別情報の有無を検索し、
前記マッピング保持部に、前記仮想ネットワークに対応するローカル識別情報が保持されている場合、前記仮想ネットワーク管理装置に対し、ＶＬＡＮ  ＩＤとして、前記生成済みのローカル識別情報を通知する請求項１又は２の通信システム。
【請求項４】
前記仮想マシンサーバは、
所定の規則を用いて仮想ネットワークＩＤを変換することによりローカル識別情報を生成する請求項１から３いずれか一の通信システム。
【請求項５】
前記仮想マシンサーバは、
所定のハッシュ関数を用いて仮想ネットワークＩＤを変換することによりローカル識別情報を生成する請求項１から３いずれか一の通信システム。
【請求項６】
前記仮想ネットワークＩＤからローカル識別情報を生成するための規則又は関数が、複数の仮想スイッチ間で共通化されている請求項４又は５の通信システム。
【請求項７】
仮想マシンを制御するハイパーバイザと、
所定の仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定するローカル識別情報設定部と、
前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知するローカル識別情報通知部と、を備える仮想マシンサーバ。
【請求項８】
仮想スイッチと、仮想マシンとが動作する仮想マシンサーバと、
前記仮想スイッチを制御するスイッチ制御装置と、に接続され、
前記仮想マシン及び仮想スイッチとを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置であって、
前記仮想マシンサーバから、仮想スイッチ単位で一意性が保証されたローカル識別情報と、仮想マシンが接続する仮想ネットワークとの対応関係を含む通知を受信すると、前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示する手段を備えたこと、
を特徴とする仮想ネットワーク管理装置。
【請求項９】
仮想スイッチと、仮想マシンとが動作する仮想マシンサーバと、
前記仮想スイッチを制御するスイッチ制御装置と、
前記仮想マシンサーバ上で動作する仮想スイッチ及び仮想マシンを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置と、を含む通信システムにおいて、
前記仮想マシンサーバが、
前記仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定するステップと、
前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知するステップと、
前記仮想ネットワーク管理装置が、前記通知に基づいて、前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示するステップとを含むネットワーク制御方法。
【請求項１０】
仮想マシンの動作を制御するハイパーバイザを備えた仮想マシンサーバに搭載されたコンピュータに、
前記仮想マシン及び仮想マシンサーバ上で動作する仮想スイッチを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定する処理と、
前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知する処理と、
を実行させるプログラム。
【請求項１１】
仮想スイッチと、仮想マシンとが動作する仮想マシンサーバと、
前記仮想スイッチを制御するスイッチ制御装置と、に接続され、
前記仮想マシン及び仮想スイッチとを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置に搭載されたコンピュータに、
前記仮想マシンサーバから、仮想スイッチ単位で一意性が保証されたローカル識別情報と、前記仮想マシンが接続する仮想ネットワークとの対応関係を受信する処理と、
前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示する処理とを実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願についての記載］
本発明は、日本国特許出願：特願２０１２−２３４５５７号（２０１２年１０月２４日出願）に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、通信システム、仮想マシンサーバ、仮想ネットワーク管理装置、ネットワーク制御方法及びプログラムに関し、特に、仮想化技術を用いて仮想ネットワークを提供する通信システム、仮想マシンサーバ、仮想ネットワーク管理装置、ネットワーク制御方法及びプログラムに関する。
【背景技術】
【０００２】
マシン及びネットワーク等を仮想的な資源としてユーザに提供するクラウド基盤（「ＩａａＳ；Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ」とも呼ばれる）が整えられつつある。クラウド基盤における仮想ネットワークの実現には、非特許文献１に示されるＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を用いることが一般的である。【０００３】
ＶＬＡＮはパケットに仮想ネットワークの識別子を付けることでネットワークを仮想的に複数のネットワークとして利用できる。非特許文献１では、仮想ネットワークの識別子として、１２ビットのフィールドが割り当てられており、予約された０ｘ０と０ｘｆｆｆを除く４０９４の値を扱えると規定している。【０００４】
クラウド基盤ではこのＶＬＡＮを用いて次のように仮想ネットワークを構成することができる。まず、ユーザが仮想ネットワークを定義した際に、システム全体で一意となるＶＬＡＮ  ＩＤを割り当てる。そして、仮想マシン（以下、「ＶＭ」とも記載する。）起動時に、割り当てられたＶＬＡＮに属するようＶＭにつながるポートをスイッチあるいはハイパーバイザにて設定する。【０００５】
ＶＭから出されたパケットは前記ポートにてＶＬＡＮ  ＩＤが付加された後、同一仮想ネットワークに属するポートに転送され、出口ノードでＶＬＡＮ  ＩＤが削除され、宛先のＶＭへ渡される。システム全体で一意となるＶＬＡＮ ＩＤを割り当てるため、利用できる仮想ネットワークの数は４０９４に限られる。【０００６】
非特許文献２は、「Ｏｐｅｎ  Ｓｔａｃｋ」と呼ばれるクラウド基盤ソフトウェアの管理マニュアルである。同文献の１５１頁〜１５４頁に、クラウド基盤におけるＶＬＡＮモードの記述がある。具体的には、１５１頁“Ｃｏｎｆｉｇｕｒｉｎｇ  ＶＬＡＮ  Ｎｅｔｗｏｒｋｉｎｇ”の項には、サブネット（仮想ネットワーク）ごとに異なるＶＬＡＮタグ（ＶＬＡＮ  ＩＤ）を持つと記載されている。同１５２頁中段には、ＶＬＡＮ  ＩＤとして１６９を指定するサブネット（仮想ネットワーク）の生成コマンドの例が示されている。さらに同１５２頁最終パラグラフ以下には、ＶＬＡＮ  ＩＤやブリッジ、プロジェクトＩＤを手動で設定することに代えて、コマンドにて自動的に割り当てを選択することも可能であると記載されている。【０００７】
一方、オープンフロー（ＯｐｅｎＦｌｏｗ）という技術が提案されている（特許文献１、非特許文献３、４参照）。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献２に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合するマッチ条件（Ｍａｔｃｈ  Ｆｉｅｌｄｓ）と、フロー統計情報（Ｃｏｕｎｔｅｒｓ）と、処理内容を定義したインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎｓ）と、の組が定義される（非特許文献４の「４．１  Ｆｌｏｗ  Ｔａｂｌｅ」の項参照）。【０００８】
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチ条件（非特許文献４の「４．３  Ｍａｔｃｈ  Ｆｉｅｌｄｓ」参照）を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報（カウンタ）を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容（指定ポートからのパケット送信、フラッディング、廃棄等）を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットを処理するための制御情報の送信要求（Ｐａｃｋｅｔ−Ｉｎメッセージ）を送信する。オープンフロースイッチは、処理内容が定められたフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを制御情報として用いてパケット転送を行う。【０００９】
非特許文献３のＥｘａｍｐｌｅ２には、上記オープンフロースイッチとオープンフローコントローラとの組合せにて、ＶＬＡＮ同様に、ＶＬＡＮ  ＩＤを用いて仮想的なネットワークを構築できることが記載されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】国際公開第２００８／０９５０１０号
【非特許文献】
【００１１】
【非特許文献１】ＩＥＥＥ Ｓｔｄ． ８０２．１Ｑ−２００５，“Ｖｉｒｔｕａｌ  Ｂｒｉｄｇｅｄ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋｓ．”， ＩＳＢＮ ０−７３８１−３６６２−Ｘ．
【非特許文献２】“ＯｐｅｎＳｔａｃｋ  Ｃｏｍｐｕｔｅ  Ａｄｍｉｎｉｓｔｒａｔｉｏｎ  Ｍａｎｕａｌ”、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年１０月１８日検索］、インターネット〈URL: http://docs.openstack.org/trunk/openstack-compute/admin/bk-compute-adminguide-trunk.pdf〉
【非特許文献３】Ｎｉｃｋ  ＭｃＫｅｏｗｎほか７名、“ＯｐｅｎＦｌｏｗ：  Ｅｎａｂｌｉｎｇ  Ｉｎｎｏｖａｔｉｏｎ  ｉｎ  Ｃａｍｐｕｓ  Ｎｅｔｗｏｒｋｓ”、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年１０月１８日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉
【非特許文献４】“ＯｐｅｎＦｌｏｗ  Ｓｗｉｔｃｈ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ”  Ｖｅｒｓｉｏｎ  １．１．０  Ｉｍｐｌｅｍｅｎｔｅｄ  （Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ  ０ｘ０２）、［ｏｎｌｉｎｅ］、［平成２４（２０１２）年１０月１８日検索］、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉
【発明の概要】
【発明が解決しようとする課題】
【００１２】
以下の分析は、本発明によって与えられたものである。上記非特許文献１に記載されているように、ＶＬＡＮ  ＩＤフィールドは、１２ビットであるため、管理できる仮想ネットワークの数が４０９４に限られてしまうという問題点がある。この問題は、ＶＬＡＮの壁としても知られている。【００１３】
とりわけ、冒頭に述べたクラウド基盤においては、上記ＶＬＡＮの壁が、取り扱い可能な仮想ネットワーク数の上限として１つの制約となってしまっている。また、仮想ネットワークの数を４０９４以上とするためには、複数のクラウド基盤を接続する等の方法を採らざるを得ず、効率的な運用が妨げられることになる。【００１４】
本発明は、仮想ネットワークを提供する通信システムにおける取り扱い可能な仮想ネットワークの数を増大させることで、その効率性向上に貢献できる通信システム、仮想マシンサーバ、仮想ネットワーク管理装置、ネットワーク制御方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
第１の視点によれば、仮想スイッチと、仮想マシンとが動作する仮想マシンサーバと、前記仮想スイッチを制御するスイッチ制御装置と、前記仮想マシンサーバ上で動作する仮想スイッチ及び仮想マシンを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置と、を含む通信システムが提供される。前記仮想マシンサーバは、前記仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定する手段と、前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知する手段とを備える。前記仮想ネットワーク管理装置は、前記通知に基づいて、前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示する。【００１６】
第２の視点によれば、仮想マシンを制御するハイパーバイザと、所定の仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定するローカル識別情報設定部と、前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知するローカル識別情報通知部と、を備える仮想マシンサーバが提供される。【００１７】
第３の視点によれば、仮想スイッチと、仮想マシンとが動作する仮想マシンサーバと、
前記仮想スイッチを制御するスイッチ制御装置と、に接続され、前記仮想マシン及び仮想スイッチとを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置であって、前記仮想マシンサーバから、仮想スイッチ単位で一意性が保証されたローカル識別情報と、仮想マシンが接続する仮想ネットワークとの対応関係を含む通知を受信すると、前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示する手段を備えた仮想ネットワーク管理装置が提供される。【００１８】
第４の視点によれば、仮想スイッチと、仮想マシンとが動作する仮想マシンサーバと、
前記仮想スイッチを制御するスイッチ制御装置と、前記仮想マシンサーバ上で動作する仮想スイッチ及び仮想マシンを用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置と、を含む通信システムにおいて、前記仮想マシンサーバが、前記仮想ネットワーク管理装置を介して仮想マシンが仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定するステップと、前記仮想ネットワーク管理装置に対し、前記仮想マシンが接続する仮想ネットワークと、ローカル識別情報との対応関係を通知するステップと、前記仮想ネットワーク管理装置が、前記通知に基づいて、前記スイッチ制御装置に対し、前記仮想スイッチ毎のローカル識別情報をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示するステップとを含むネットワーク制御方法が提供される。本方法は、仮想マシンを提供する仮想マシンサーバという、特定の機械に結びつけられている。【００１９】
第５の視点によれば、上記した仮想マシンサーバの機能を実現するためのプログラムと、上記した仮想ネットワーク管理装置の機能を実現するためのプログラムと、がそれぞれ提供される。なお、このプログラムは、コンピュータが読み取り可能な（非トランジエントな）記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００２０】
本発明によれば、仮想ネットワークを提供する通信システムにおける取り扱い可能な仮想ネットワークの数を増大させ、その効率性向上に貢献することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態の構成を示す図である。
【図２】本発明の一実施形態の動作を説明するための図である。
【図３】本発明の一実施形態の動作を説明するための図である。
【図４】本発明の一実施形態の動作を説明するための図である。
【図５】本発明の一実施形態の動作を説明するための図である。
【図６】本発明の第１の実施形態の通信システムの構成を示す図である。
【図７】本発明の第１の実施形態の仮想マシンサーバ１０ａのＶＬＡＮマッピング保持部に保持されるエントリの例を示す図である。
【図８】本発明の第１の実施形態の仮想マシンサーバ１０ｂのＶＬＡＮマッピング保持部に保持されるエントリの例を示す図である。
【図９】本発明の第１の実施形態の通信システムの動作を表したフローチャートである。
【図１０】本発明の第２の実施形態の通信システムの構成を示す図である。
【図１１】本発明の第２の実施形態の仮想マシンサーバのＶＬＡＮマッピング保持部に保持されるエントリの例を示す図である。
【図１２】本発明の第２の実施形態の通信システムの動作を表したフローチャートである。
【図１３】本発明の第３の実施形態の仮想マシンサーバのＶＬＡＮマッピング保持部に保持されるエントリの例を示す図である。
【発明を実施するための形態】
【００２２】
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
【００２３】
本発明は、その一実施形態において、図１に示すように、仮想スイッチ１２と仮想マシン１１とが動作する仮想マシンサーバ１０Ａ、１０Ｂと、仮想マシンサーバ１０Ａ、１０Ｂ上で動作する仮想スイッチ１２及び仮想マシン１１を用いた仮想ネットワークの管理機能を提供する仮想ネットワーク管理装置２０と、仮想スイッチ１２を制御するスイッチ制御装置３０と、を接続した構成にて実現できる。
【００２４】
より具体的には、仮想マシンサーバ１０Ａ（１０Ｂ）は、仮想マシン１１を管理するハイパーバイザ１３と、仮想ネットワーク管理装置２０を介して仮想マシン１１が仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、前記仮想マシンが接続された仮想スイッチのポートのＶＬＡＮ  ＩＤとして設定する手段（図１のローカル識別情報設定部１４）と、仮想ネットワーク管理装置２０に対し、仮想マシン１１が接続する仮想ネットワークと、ローカル識別情報との対応関係を通知する手段（図１のローカル識別情報通知部１５）とを備える。
【００２５】
一方、仮想ネットワーク管理装置２０は、前記通知に基づいて、スイッチ制御装置３０に対し、前記仮想スイッチ毎のローカル識別情報を、パケットを識別するためのマッチ条件として用いて、仮想ネットワークの制御を行うよう指示する。なお、マッチ条件としては、ローカル識別情報だけでなく、当然に、送信元や宛先のアドレス、入力ポート等を指定することができる。
【００２６】
例えば、仮想マシンサーバ１０Ａ、１０Ｂにそれぞれ同一仮想ネットワークに属する仮想マシンが接続されたものとする。仮想マシンサーバ１０Ａは、図２に示すように、仮想ネットワーク管理装置２０を介して仮想マシン（ＶＭ−Ａ１）１１が仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報“１”を生成し、仮想マシン（ＶＭ−Ａ１）１１が接続された仮想スイッチ１２のポート＃１のＶＬＡＮ  ＩＤとして設定する。同様に、仮想マシンサーバ１０Ｂも、図２の下段に示すように、仮想ネットワーク管理装置２０を介して仮想マシン（ＶＭ−Ａ２）１１が仮想ネットワークに接続されると、仮想スイッチ単位で一意性が保証されたローカル識別情報“１”を生成し、仮想マシン（ＶＭ−Ａ２）１１が接続された仮想スイッチ１２のポート＃１のＶＬＡＮ  ＩＤとして設定する。
【００２７】
次に、仮想マシンサーバ１０Ａは、仮想ネットワーク管理装置２０に対し、仮想マシン１１が接続する仮想ネットワークに対し、ローカル識別情報“１”を割り当てたことを通知する。仮想ネットワーク管理装置２０は、前記通知に基づいて、スイッチ制御装置３０に対し、仮想スイッチＡにおいては、ローカル識別情報（＝ＶＬＡＮ  ＩＤ）“１”をマッチ条件として用いて、仮想ネットワークの制御を行うよう指示する。
【００２８】
スイッチ制御装置３０は、仮想ネットワーク管理装置２０からの指示に従い、図３に示すように、仮想スイッチＡに対し、ＶＬＡＮ  ＩＤ（＝ローカル識別情報）が“１”であるパケットを仮想スイッチＢに転送するよう指示する。スイッチ制御装置３０は、仮想スイッチＢに対しても、同様に、ＶＬＡＮ  ＩＤ（＝ローカル識別情報）が“１”であるパケットを仮想マシン（ＶＭ−Ａ２）１１に転送するよう指示する。以上により、仮想マシン（ＶＭ−Ａ１）１１からのパケットが仮想マシン（ＶＭ−Ａ２）１１に転送される。
【００２９】
その後も、仮想マシンが接続されると、仮想マシンサーバ１０Ａ、１０Ｂは、それぞれ仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、仮想スイッチの該当ポートのＶＬＡＮ  ＩＤとして設定する。また、仮想マシンサーバ１０Ａ、１０Ｂは、これら設定したローカル識別情報と、仮想ネットワークとの対応関係（マッピング）を仮想ネットワーク管理装置２０に通知する。
【００３０】
ローカル識別情報は、仮想スイッチ単位で一意性が保証されているだけなので、図４に示すように、ある仮想ネットワークに接続する仮想マシン（ＶＭ−Ｚ１）と、仮想マシン（ＶＭ−Ｚ２）とのローカル識別情報が一致しないということも起こりうる。しかしながら、仮想マシンサーバ１０Ａ、１０Ｂは、仮想ネットワーク管理装置２０に対し、仮想マシンが接続する仮想ネットワークとの対応関係（マッピング）も通知しているため、仮想ネットワーク管理装置２０は、仮想ネットワークを特定し、その仮想ネットワークに属する仮想スイッチに適切なマッチ条件を指示することができる。
【００３１】
例えば、図５に示すように、スイッチ制御装置３０は、仮想ネットワーク管理装置２０からの指示に基づき、仮想スイッチＡに対し、仮想マシン（ＶＭ−Ｚ１）からのパケットに対し、ローカル識別情報（＝ＶＬＡＮ  ＩＤ）“２６”をマッチ条件として用いて、パケットの転送等を行うよう指示する。このときに、スイッチ制御装置３０は、仮想ネットワーク管理装置２０からの指示に基づき、仮想マシンサーバ１０Ａ、１０Ｂ間で同一仮想ネットワークに属する仮想マシンに付与されたローカル識別情報（＝ＶＬＡＮ  ＩＤ）が同一でない場合、図５に示すように、仮想スイッチにＶＬＡＮ  ＩＤの書き換え（“２６”→“２４”）を実行させる。また、スイッチ制御装置３０は、仮想スイッチＢに対し、仮想マシン（ＶＭ−Ｚ１）からのパケットに対し、ローカル識別情報（＝ＶＬＡＮ  ＩＤ）“２４”をマッチ条件として用いて、パケットの転送等を行うよう指示する。
【００３２】
以上の構成によれば、ある仮想マシンサーバが識別可能な仮想ネットワークの数は、理論上、仮想スイッチの数×ローカル識別情報のパターン数（ＶＬＡＮ  ＩＤの数）に拡張される。また、このような拡張を行っても、ネットワーク管理装置２０にて、仮想ネットワークと、ローカル識別情報との対応関係を把握し、スイッチ制御装置３０にて、必要なヘッダ変換を行うため、仮想マシン１１間の通信を適切に制御できる。
【００３３】
［第１の実施形態］
続いて、本発明の第１の実施形態について図面を参照して詳細に説明する。図６は、本発明の第１の実施形態の通信システムの構成を示す図である。図６を参照すると、物理スイッチ２００を介して接続された仮想マシンサーバ１０ａ、１０ｂと、クラウド基盤管理装置１００とを接続した構成が示されている。なお、図６の例では、物理スイッチ２００を介して、仮想マシンサーバ１０ａ、１０ｂ間を接続しているが、図１〜図５に示すように、仮想マシンサーバ１０ａ、１０ｂを直接接続する構成も採用可能である。
【００３４】
クラウド基盤管理装置１００は、仮想ネットワーク管理部１２０と、上述したスイッチ制御装置３０に相当するスイッチ制御部１３０と、ＶＭ管理部１４０と、ユーザインターフェイス１５０と、を備えている。
【００３５】
ユーザインターフェイス１５０は、図示省略するユーザ端末から仮想ネットワークの構成に関する操作等を受け付ける。
【００３６】
仮想ネットワーク管理部１２０及びＶＭ管理部１４０は、上述した仮想ネットワーク管理装置２０に相当する。ＶＭ管理部１４０は、ユーザインターフェイス１５０を介して、仮想ネットワーク管理部１２０が仮想ネットワークの構成に関する操作内容に基づいて、仮想マシンサーバ１０ａ、１０ｂのハイパーバイザ１３ａ、１３ｂと通信し、仮想マシンの追加、変更削除等を行う。また、仮想ネットワーク管理部１２０は、仮想マシンサーバ１０ａ、１０ｂから、追加した仮想マシンが接続する仮想ネットワークと、ＶＬＡＮ  ＩＤとの対応関係（マッピング）を含んだ通知を受けると、スイッチ制御部１３０に対して、スイッチの制御を指示する。
【００３７】
スイッチ制御部１３０は、仮想ネットワーク管理部１２０からの指示に基づいて、仮想スイッチ１２ａ、１２ｂ及び物理スイッチ２００を制御し、同一仮想ネットワークに属する仮想マシン間の通信制御を行う。このようなスイッチ制御部１３０としては、非特許文献３、４のオープンフローコントローラと同等の処理を行う構成を用いることができる。
【００３８】
仮想マシンサーバ１０ａ（１０ｂ）では、ハイパーバイザ１３ａ（１３ｂ）の制御の下、仮想マシン（ＶＭ）１１ａ（１１ｂ）と、仮想スイッチ１２ａ（１２ｂ）とが動作している。ハイパーバイザ１３ａ（１３ｂ）は、クラウド基盤管理装置１００のＶＭ管理部１４０を介して、仮想ネットワークの構築や仮想マシンの接続操作等を受け付ける。仮想スイッチ１２ａ（１２ｂ）としては、非特許文献３、４のオープンフロースイッチと同等のパケット処理を行う仮想的なスイッチを用いることができる。
【００３９】
また、仮想マシンサーバ１０ａ（１０ｂ）は、それぞれローカル識別情報設定部１４ａ（１４ｂ）と、ローカル識別情報通知部１５ａ（１５ｂ）と、ＶＬＡＮマッピング保持部１６ａ（１６ｂ）と、を備える。
【００４０】
ローカル識別情報設定部１４ａ（１４ｂ）は、ハイパーバイザ１３ａ（１３ｂ）によって新規仮想マシン（ＶＭ）１１ａ（１１ｂ）が仮想スイッチ１２ａ（１２ｂ）に接続されると、ＶＬＡＮマッピング保持部１６ａ（１６ｂ）を参照して、ローカル識別情報を新規に生成する必要があるか否かを判定する。新規仮想マシンが接続された仮想ネットワークに対応するローカル識別情報が見つかった場合、新規仮想マシン（ＶＭ）１１ａ（１１ｂ）の接続された仮想スイッチ１２ａ（１２ｂ）のポートのＶＬＡＮ  ＩＤとして、そのローカル識別情報を設定する。一方、新規仮想マシンが接続された仮想ネットワークに対応するローカル識別情報が見つからなかった場合、ローカル識別情報設定部１４ａ（１４ｂ）は、仮想スイッチ単位で一意性が保証されたローカル識別情報を生成し、仮想マシン（ＶＭ）１１ａ（１１ｂ）が接続された仮想スイッチ１２ａ（１２ｂ）のポートのＶＬＡＮ  ＩＤとして設定する。ローカル識別情報設定部１４ａ（１４ｂ）は、新規に設定したローカル識別情報と仮想ネットワークとの対応関係をＶＬＡＮマッピング保持部１６ａ（１６ｂ）に登録する。
【００４１】
ローカル識別情報通知部１５ａ（１５ｂ）は、クラウド基盤管理装置１００に対し、仮想マシン１１ａ（１１ｂ）が接続する仮想ネットワークに対応するローカル識別情報とを通知する。
【００４２】
図７、図８は、ＶＬＡＮマッピング保持部１６ａ（１６ｂ）に保持される仮想スイッチ毎に、仮想ネットワークと前記ローカル識別情報とを対応付けたエントリの例である。図７は、仮想マシンサーバ１０ａのＶＬＡＮマッピング保持部１６ａに保持されるエントリの例を示している。図７では、仮想マシンサーバ１０ａ側で動作する仮想スイッチの識別情報１２ａと、仮想ネットワーク管理装置２０から通知された仮想ネットワークＩＤと、ローカル識別情報設定部１４ａが生成したローカル識別情報とが対応付けて格納されている。
【００４３】
図８は、仮想マシンサーバ１０ｂのＶＬＡＮマッピング保持部１６ｂに保持されるエントリの例を示している。図８では、仮想マシンサーバ１０ｂ側で動作する仮想スイッチの識別情報１２ｂと、仮想ネットワーク管理装置２０から通知された仮想ネットワークＩＤと、ローカル識別情報設定部１４ｂが生成したローカル識別情報（ＶＬＡＮ  ＩＤ）とが対応付けて格納されている。ここで、図７、図８を対比すると、仮想ネットワーク１、２については、ローカル識別情報（ＶＬＡＮ  ＩＤ）が同一である。このため、クラウド基盤管理装置１００側のネットワーク管理装置２０は、特段ＶＬＡＮ  ＩＤの変換を指示しなくともよい。
【００４４】
一方、図７のローカル識別情報（ＶＬＡＮ  ＩＤ）が３である仮想ネットワーク３と、図８のローカル識別情報（ＶＬＡＮ  ＩＤ）が３である仮想ネットワーク５とは、ローカル識別情報（ＶＬＡＮ  ＩＤ）が同一であるが、クラウド基盤管理装置１００側においては、仮想マシンが接続する仮想スイッチとそのポート情報により異なる仮想ネットワークと認識される。
【００４５】
さらに、図７のローカル識別情報（ＶＬＡＮ  ＩＤ）が３である仮想ネットワーク３と、図８のローカル識別情報（ＶＬＡＮ  ＩＤ）が４である仮想ネットワーク３とは、ローカル識別情報（ＶＬＡＮ  ＩＤ）が異なるが、クラウド基盤管理装置１００側においては、仮想マシンが接続する仮想スイッチとそのポート情報により同一の仮想ネットワークと認識される。この場合、クラウド基盤管理装置１００側の仮想ネットワーク管理部１２０が、経路の仮想スイッチにおいてＶＬＡＮ  ＩＤの変換を指示することになる。
【００４６】
このように、仮想スイッチ単位で一意なローカル識別情報（ＶＬＡＮ  ＩＤ）と、仮想スイッチとそのポート情報とを併用することで、図７の仮想スイッチ１２ａにおいてはローカル識別情報（ＶＬＡＮ  ＩＤ）のパターン数である最大４０９４種の仮想ネットワークを識別できる。同様に、図８の仮想スイッチ１２ｂにおいてもローカル識別情報（ＶＬＡＮ  ＩＤ）のパターン数である最大４０９４種の仮想ネットワークを識別できるが、同一の仮想ネットワークに対し、同一のローカル識別情報（ＶＬＡＮ  ＩＤ）を付与できるため、図８に示すように、システム全体で４０９４を超える仮想ネットワークを取り扱うことが可能となる。
【００４７】
なお、図７、図８の例では、仮想スイッチ１２ａ（１２ｂ）の仮想ネットワークとローカル識別情報（ＶＬＡＮ  ＩＤ）との対応関係を示しているが、仮想マシンサーバ１０ａ（１０ｂ）に複数の仮想スイッチ１２ａ（１２ｂ）が配置されている場合には、これらの仮想スイッチにポートに接続されているＶＭが属する仮想ネットワークとローカル識別情報（ＶＬＡＮ  ＩＤ）との対応関係を格納してもよい。
【００４８】
なお、図６に示した仮想マシンサーバ１０ａ、１０ｂの各部（処理手段）やクラウド基盤管理装置の各部は、これらの装置を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
【００４９】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図９は、本発明の第１の実施形態の通信システムの動作を表したフローチャートである。まず、クラウド基盤管理装置１００のユーザインターフェイス１５０が、ユーザからＶＭ生成要求を受けると、ＶＭ管理部１４０がハイパーバイザ１３ａ（１３ｂ）に対してＶＭ生成を指示する（ステップＳ００１）。
【００５０】
次に、ハイパーバイザ１３ａ（１３ｂ）が、ローカル識別情報設定部１４ａ（１４ｂ）に対し、生成したＶＭを仮想ネットワークへの接続を指示する（ステップＳ００２）。
【００５１】
ローカル識別情報設定部１４ａ（１４ｂ）は、ＶＬＡＮマッピング保持部１６ａ（１６ｂ）から当該仮想ネットワークのローカル識別情報（ＶＬＡＮ  ＩＤ）を検索する（ステップＳ００３）。
【００５２】
前記検索の結果、新規にＶＭを生成した仮想ネットワークのローカル識別情報（ＶＬＡＮ  ＩＤ）が見つかった場合（ステップＳ００４のＹＥＳ）、ローカル識別情報設定部１４ａ（１４ｂ）は、前記ＶＭが接続される仮想スイッチのポートのＶＬＡＮ  ＩＤとして、ローカル識別情報を設定する（ステップＳ００５）。
【００５３】
一方、前記検索の結果、新規にＶＭを生成した仮想ネットワークのローカル識別情報（ＶＬＡＮ  ＩＤ）が見つからなかった場合（ステップＳ００４のＮＯ）、ローカル識別情報設定部１４ａ（１４ｂ）は、未使用のローカル識別情報を生成する（ステップＳ００６）。未使用のローカル識別情報は、例えば、ＶＬＡＮマッピング保持部１６ａ（１６ｂ）のローカル識別情報フィールドをシーケンシャルに探索していくことで取得できる。なお、未使用のローカル識別情報が見つからなかった場合、不要となったローカル識別情報の掃き出し等、適切な例外処理を行うこととしてもよい。
【００５４】
次に、ローカル識別情報設定部１４ａ（１４ｂ）は、生成したローカル識別情報と仮想ネットワークの対応関係を示すエントリをＶＬＡＮマッピング保持部１６ａ（１６ｂ）に登録する（ステップＳ００７）。次に、ローカル識別情報設定部１４ａ（１４ｂ）は、当該ＶＭが接続される仮想スイッチの該当ポートのＶＬＡＮ  ＩＤとして、前記生成したローカル識別情報を設定する（ステップＳ００８）。
【００５５】
次に、ローカル識別情報通知部１５ａ（１５ｂ）が、クラウド基盤管理装置１００のネットワーク管理部１２０に対し、生成した仮想マシンが接続する仮想ネットワークに対応するローカル識別情報を通知する。クラウド基盤管理装置１００の仮想ネットワーク管理部１２０はスイッチ制御部１３０に対し、通知を受けた内容を転送する。スイッチ制御部１３０は通知に基づいて、仮想ネットワークを構成するよう各々の仮想スイッチおよび物理スイッチに対し転送設定を行う。具体的には、個々の仮想スイッチに、ＶＬＡＮ  ＩＤとして、前記ローカル識別情報が設定されているパケットを受信した場合に、同一仮想ネットワークのＶＭに転送する処理や、必要に応じてローカル識別情報（ＶＬＡＮ  ＩＤ）を書き換える処理を指示する転送設定が行われる（ステップＳ００９；図３、図５参照）。
【００５６】
以上のように、第１の実施形態によれば、仮想スイッチ毎に仮想ネットワークへローカル識別情報（ＶＬＡＮ  ＩＤ）を割り当て、スイッチ制御部１３０に、仮想スイッチ毎に割り当てたローカル識別情報（ＶＬＡＮ  ＩＤ）を用いたフロー制御を行わせる。この結果、クラウド基盤管理装置１００は、４０９４を超えた数の仮想ネットワークを取り扱うことが可能となる。
【００５７】
［第２の実施形態］
続いて、上記した第１の実施形態におけるローカル識別情報（ＶＬＡＮ  ＩＤ）の生成方法に変更を加えた第２の実施形態について説明する。図１０は、本発明の第２の実施形態の通信システムの構成を示す図である。図６に示した第１の実施形態との相違点は、ローカル識別情報設定部のローカル識別情報の生成方法が異なる点である。その他の構成は、第１の実施形態と同様であるので、以下、相違点を中心に説明する。
【００５８】
本発明の第２の実施形態の仮想マシンサーバ１０ｃ（１０ｄ）のローカル識別情報設定部１４ｃ（１４ｄ）は、ハイパーバイザ１３ａ（１３ｂ）によって新規仮想マシン（ＶＭ）１１ａ（１１ｂ）が仮想スイッチ１２ａ（１２ｂ）に接続されると、ＶＬＡＮマッピング保持部１６ａ（１６ｂ）を参照して、ローカル識別情報を新規に生成する必要があるか否かを判定する。そして、新規仮想マシンが接続された仮想ネットワークに対応するローカル識別情報が見つからなかった場合、ローカル識別情報設定部１４ａ（１４ｂ）は、所定の規則を用いて仮想ネットワークＩＤを変換することによりローカル識別情報を生成する。そして、生成したローカル識別情報が、既存のローカル識別情報と重複しないか（つまり、一意性が保証されるか否か）を確認した後で、仮想マシン（ＶＭ）１１ａ（１１ｂ）が接続された仮想スイッチ１２ａ（１２ｂ）のポートのＶＬＡＮ  ＩＤとして設定する。
【００５９】
図１１は、本発明の第２の実施形態の仮想マシンサーバのＶＬＡＮマッピング保持部１６ａ（１６ｂ）に保持されるエントリの例を示す図である。図１１の例では、１６進数で表された仮想ネットワークＩＤからローカル識別情報（ＶＬＡＮ  ＩＤ）として使用できる整数を一意となるように生成している。具体的には仮想ネットワークＩＤを整数化し、０ｘ１０００で割った剰余をＶＬＡＮ  ＩＤとして生成している。なお、仮想ネットワークＩＤ＝
０ｘ１００１のローカル識別情報（ＶＬＡＮ  ＩＤ）が“２”となっている理由については後に説明する。
【００６０】
また、このような仮想ネットワークＩＤからローカル識別情報を生成する方法（規則、関数）は、複数の仮想スイッチ間（仮想マシンサーバ）で共通化されていることが望ましい。このようにすることで、各仮想スイッチにおいて一意に生成されるローカル識別情報が一致する確率が高くなり、仮想スイッチ間でのＶＬＡＮ  ＩＤの書換え回数を減らすことができる。
【００６１】
続いて、本実施形態の動作について図面を参照して詳細に説明する。図１２は、本発明の第２の実施形態の通信システムの動作を表したフローチャートである。図１２のステップＳ１０１からＳ１０５までの動作は、図９のステップＳ００１〜Ｓ００５と同様であるので説明を省略する。
【００６２】
ステップＳ１０４における検索の結果、新規にＶＭを生成した仮想ネットワークのローカル識別情報（ＶＬＡＮ  ＩＤ）が見つからなかった場合、ローカル識別情報設定部１４ｃ（１４ｄ）は、仮想ネットワークＩＤからローカル識別情報を生成する（ステップＳ１０６）。次に、ローカル識別情報設定部１４ｃ（１４ｄ）は、ＶＬＡＮマッピング保持部１６ａ（１６ｂ）を参照して、前記生成したローカル識別情報と同一のローカル識別情報が使用中（生成済み）であるか否かを確認する（ステップＳ１０７）。ここで、新規に生成したローカル識別情報（ＶＬＡＮ  ＩＤ）が使用中（生成済み）であることが判明した場合（ステップＳ１０８のＹＥＳ）、ローカル識別情報設定部１４ｃ（１４ｄ）は、ステップＳ１０６におけるローカル識別情報の生成方法とは別の方法（第２の方法）を用いて、一意なローカル識別情報を生成する（ステップＳ１０９）。第２の方法としては、例えば、第１の実施形態で説明したようなシーケンシャルに未使用のローカル識別情報を探索する方法でもよいし、あるいは、別の算出式や関数を用いて仮想ネットワークＩＤからローカル識別情報を求めてもよい。
【００６３】
例えば、図１１に示すように、まず、ある仮想ネットワークＩＤ  ０ｘ１に属するＶＭが生成されると、ローカル識別情報設定部１４ｃ（１４ｄ）は、０ｘ１を０ｘ１０００で割った剰余によりＶＬＡＮ  ＩＤとして“１”を割り当てる。続いて、仮想ネットワークＩＤ  ０ｘ３に属するＶＭが生成されると、ローカル識別情報設定部１４ｃ（１４ｄ）は、０ｘ３を０ｘ１０００で割った剰余により、ＶＬＡＮ  ＩＤとして“３”を割り当てる。その後、さらに、仮想ネットワークＩＤ  ０ｘ１００１に属するＶＭが生成されると、ローカル識別情報設定部１４ｃ（１４ｄ）は、０ｘ１００１を０ｘ１０００で割った剰余によりＶＬＡＮ  ＩＤとして１を生成する。しかしながら、この場合、すでにＶＬＡＮ  ＩＤ＝１は、仮想ネットワークＩＤ  ０ｘ１に割り当て済みであるため、ローカル識別情報設定部１４ｃ（１４ｄ）は、例えば、未使用のＶＬＡＮ  ＩＤを１からシーケンシャルに検索する第２の方法を用いて、ＶＬＡＮ  ＩＤとして“２”を割り当てる。
【００６４】
前記の結果、新規に生成したローカル識別情報（ＶＬＡＮ  ＩＤ）が見つからなかった場合（ステップＳ１０８のＮＯ）、ローカル識別情報設定部１４ｃ（１４ｄ）は、生成したローカル識別情報と仮想ネットワークの対応関係を示すエントリをＶＬＡＮマッピング保持部１６ａ（１６ｂ）に登録する（ステップＳ１１０）。次に、ローカル識別情報設定部１４ｃ（１４ｄ）は、当該ＶＭが接続される仮想スイッチの該当ポートのＶＬＡＮ  ＩＤとして、前記生成したローカル識別情報を設定する（ステップＳ１１１）。
【００６５】
次に、ローカル識別情報通知部１５ａ（１５ｂ）が、クラウド基盤管理装置１００のネットワーク管理部１２０に対し、生成した仮想マシンが接続する仮想ネットワークに対応するローカル識別情報を通知する。クラウド基盤管理装置１００の仮想ネットワーク管理部１２０はスイッチ制御部１３０に対し、通知を受けた内容を転送する。スイッチ制御部１３０は通知に基づいて、仮想ネットワークを構成するよう各々の仮想スイッチおよび物理スイッチに対し転送設定を行う。具体的には、個々の仮想スイッチに、ＶＬＡＮ  ＩＤとして、前記ローカル識別情報が設定されているパケットを受信した場合に、同一仮想ネットワークのＶＭに転送する処理や、必要に応じてローカル識別情報（ＶＬＡＮ  ＩＤ）を書き換える処理を指示する転送設定が行われる（ステップＳ１１２；図３、図５参照）。
【００６６】
以上のように、本発明の第２の実施形態によれば、第１の実施形態と比較して、未使用のローカル識別情報（ＶＬＡＮ  ＩＤ）を検索する処理が効率化されるという利点がある。また、上記したように、仮想ネットワークＩＤを４０９６よりも大きな数で割った剰余を計算する方式を用いることにより、仮想ネットワークの数が４０９４になるまでは以前に割り当てたＶＬＡＮ  ＩＤと異なるＶＬＡＮ  ＩＤを得られるという利点も得られる。
【００６７】
さらに、上記のような仮想ネットワークＩＤからローカル識別情報を生成する方法（規則、関数）を予め決めておくことで、一つの仮想ネットワークに割り当てられるＶＬＡＮ  ＩＤのマッピングが一致する可能性が高まる。これによって、パケットの転送経路上の仮想スイッチ、物理スイッチにおけるＶＬＡＮ  ＩＤの書き換え回数が削減される。
【００６８】
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、各図面に示したネットワーク構成や要素の構成は、本発明の理解を助けるための一例であり、これらの図面に示した構成に限定されるものではない。
【００６９】
例えば、上記した実施形態では、クラウド基盤管理装置１００が、非特許文献３、４のオープンフローコントローラに相当するスイッチ制御を行うスイッチ制御部１３０を備えるものとして説明したが、その他クラウド基盤プラットフォームにも適用することが可能である。例えば、制御サーバ等がネットワークの集中管理を行うようなネットワークであれば、適用可能である。
【００７０】
また例えば、上記した第２の実施形態のローカル識別情報の生成方法に代えて、図１３に示すようも仮想ネットワークＩＤのハッシュ値（Ｈａｓｈ（ネットワークＩＤ））により、ローカル識別情報を求めることとしてもよい（第３の実施形態）。
【００７１】
最後に、本発明の好ましい形態を要約する。
［第１の形態］
（上記第１の視点による通信システム参照）
［第２の形態］
第１の形態の通信システムにおいて、
前記スイッチ制御装置は、同一仮想ネットワークに割り当てられたローカル識別情報が異なる場合、前記仮想スイッチに対し、該当パケットのＶＬＡＮ  ＩＤの書き換えを指示する通信システム。
［第３の形態］
第１又は第２の形態の通信システムにおいて、
前記仮想マシンサーバは、
前記仮想スイッチ毎に、前記仮想ネットワークと前記ローカル識別情報とを対応付けたマッピング情報保持部を備え、
前記仮想スイッチに仮想マシンを配置した際に、前記マッピング保持部に、前記仮想マシンが属する仮想ネットワークに対応付けられたローカル識別情報の有無を検索し、
前記マッピング保持部に、前記仮想ネットワークに対応するローカル識別情報が保持されている場合、前記仮想ネットワーク管理装置に対し、ＶＬＡＮ  ＩＤとして、前記生成済みのローカル識別情報を通知する通信システム。
［第４の形態］
第１から第３いずれか一の形態の通信システムにおいて、
前記仮想マシンサーバは、
所定の規則を用いて仮想ネットワークＩＤを変換することによりローカル識別情報を生成する通信システム。
［第５の形態］
第１から第３いずれか一の形態の通信システムにおいて、
前記仮想マシンサーバは、
所定のハッシュ関数を用いて仮想ネットワークＩＤを変換することによりローカル識別情報を生成する通信システム。
［第６の形態］
第４又は第５の形態の通信システムにおいて、
前記仮想ネットワークＩＤからローカル識別情報を生成するための規則又は関数が、複数の仮想スイッチ間で共通化されている通信システム。
［第７の形態］
（上記第２の視点による仮想マシンサーバ参照）
［第８の形態］
（上記第３の視点による仮想ネットワーク管理装置参照）
［第９の形態］
（上記第４の視点によるネットワーク制御方法参照）
［第１０、第１１の形態］
（上記第５の視点によるプログラム参照）
なお、上記第７〜第１１の形態は、第１の形態と同様に、第２〜第６の形態に展開することが可能である。
【００７２】
なお、上記の特許文献および非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００７３】
１０Ａ、１０Ｂ、１０ａ、１０ｂ、１０ｃ、１０ｄ  仮想マシンサーバ
１１、１１ａ、１１ｂ  仮想マシン
１２、１２ａ、１２ｂ  仮想スイッチ
１３、１３ａ、１３ｂ  ハイパーバイザ
１４、１４ａ、１４ｂ、１４ｃ、１４ｄ  ローカル識別情報設定部  
１５、１５ａ、１５ｂ  ローカル識別情報通知部
１６ａ、１６ｂ  ＶＬＡＮマッピング保持部
２０  仮想ネットワーク管理装置
３０  スイッチ制御装置
１００  クラウド基盤管理装置
１２０  仮想ネットワーク管理部
１３０  スイッチ制御部
１４０  ＶＭ管理部
１５０  ユーザインターフェイス
２００  物理スイッチ
【図１】
2014065315.tif 000003
【図２】
2014065315.tif 000004
【図３】
2014065315.tif 000005
【図４】
2014065315.tif 000006
【図５】
2014065315.tif 000007
【図６】
2014065315.tif 000008
【図７】
2014065315.tif 000009
【図８】
2014065315.tif 000010
【図９】
2014065315.tif 000011
【図１０】
2014065315.tif 000012
【図１１】
2014065315.tif 000013
【図１２】
2014065315.tif 000014
【図１３】
2014065315.tif 000015
【国際調査報告】
2014065315.tif 000016
2014065315.tif 000017