国際・国内特許データベース検索
このアプリケーションの一部のコンテンツは現在ご利用になれません。
この状況が続く場合は、次のお問い合わせ先までご連絡ください。フィードバック & お問い合わせ
1. (WO2015133327) ネットワークシステムと拠点間ネットワーク連携制御装置及びネットワーク制御方法並びにプログラム
Document

明 細 書

発明の名称 ネットワークシステムと拠点間ネットワーク連携制御装置及びネットワーク制御方法並びにプログラム

技術分野

0001  

背景技術

0002   0003   0004   0005   0006   0007   0008   0009  

先行技術文献

特許文献

0010  

非特許文献

0011  

発明の概要

発明が解決しようとする課題

0012   0013   0014   0015  

課題を解決するための手段

0016   0017   0018   0019   0020  

発明の効果

0021  

図面の簡単な説明

0022  

発明を実施するための形態

0023   0024   0025   0026   0027   0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104   0105   0106   0107   0108   0109   0110   0111   0112   0113   0114   0115   0116   0117   0118   0119   0120   0121   0122   0123   0124   0125   0126   0127   0128   0129   0130   0131   0132   0133   0134   0135   0136   0137   0138   0139   0140   0141   0142   0143   0144   0145   0146   0147   0148   0149   0150   0151   0152   0153   0154   0155   0156   0157   0158   0159   0160   0161   0162   0163   0164   0165   0166   0167   0168   0169   0170   0171   0172   0173   0174   0175   0176   0177   0178   0179   0180   0181   0182   0183   0184   0185   0186   0187  

符号の説明

0188  

請求の範囲

1   2   3   4   5   6   7   8   9   10  

図面

1   2   3   4A   4B   4C   5A   5B   5C   6A   6B   6C   7A   7B   7C   8   9A   9B   10   11A   11B   12   13  

明 細 書

発明の名称 : ネットワークシステムと拠点間ネットワーク連携制御装置及びネットワーク制御方法並びにプログラム

技術分野

[0001]
 [関連出願についての記載]
 本発明は、日本国特許出願:特願2014-045675号(2014年3月7日出願)に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
 本発明は、ネットワークシステムと拠点間ネットワーク連携制御装置とネットワーク制御方法並びにプログラムに関する。

背景技術

[0002]
 近時、コンピューティング・リソース(例えばストレージ、計算機等)やネットワーク・リソース等を仮想的な資源として、例えばインターネット経由でユーザに提供するクラウド基盤(IaaS(Infrastructure as a Service)とも呼ばれる)が整えられつつある。よく知られているように、クラウド基盤では、仮想マシン(VM:Virtual Machine)の増減設や仮想ネットワークの構成を柔軟に行うことができる。このため、ユーザは、例えば当該ユーザ側のシステムの要求仕様や負荷等に合わせて、仮想マシン及び仮想ネットワークを動的に構成することが可能である。その結果、当該ユーザ側の負荷等に対応した、必要且つ十分な処理性能を有するシステムの実現・運用を可能としている。なお、仮想マシン(VM)は、例えばサーバにおいて仮想化(仮想マシンサーバ)を実現する仮想化機構(ハイパーバイザあるいは仮想マシンモニタ(Virtual Machine Monitor: VMM)上に実装される。また、仮想ネットワークは、ネットワーク仮想化(例えば、NVF(Network Function Virtualization))により、例えば仮想マシンと外部ノードとの通信接続や仮想マシンサーバ上の仮想マシン間での通信、仮想マシンと管理OS(Operating System)の通信接続等に使用される。
[0003]
 仮想マシン及び仮想ネットワーク、各仮想マシン上のサービスコンポーネントを制御し、ユーザに対して、所望のサービスを実現するサービス制御システムが知られている。ここで、仮想マシン上のサービスコンポーネントは、仮想マシンに実装され仮想マシン上で機能するサービスコンポーネント(例えばアプリケーションに必要となる機能に対応したソフトウェア部品等のコンポーネント)である。特許文献1には、ユーザによって入力されたリソース要求に対して、該要求を満たす技術階層(物理マシン、仮想マシン、OS等の組み合わせ)を自動的に構築できるようにしたシステムが開示されている。
[0004]
 関連技術の典型的なサービス制御システムでは、例えば、仮想マシンの追加・削除、及び仮想ネットワークの構成の設定等を、クラウド基盤のAPI(Application Programming Interface)を用いて操作する。このサービス制御システムにおいては、ユーザは、仮想ポートを指定することで仮想マシンを、作成した仮想ネットワークに接続し、自由にネットワークを構成することができる(非特許文献1の「2.1.2.3.Server Networks」を参照)。このサービスは、仮想ネットワークサービスによって実現されている。特に制限されないが、仮想ネットワークサービスが提供するサービスとして、例えば、ネットワーク機器(例えばルータ、ファイアウォール、ロードバランサ等)のネットワークインフラサービスをオンデマンドサービスとしてユーザに提供する。
[0005]
 仮想ネットワークサービスが提供するサービスとして、例えば、ユーザ、サービス制御システム、及び、仮想マシンサービスに対して、基本的に、仮想ネットワーク及びポートの操作のみで、ネットワーク機器、及び、仮想マシンが動作するマシン(サーバ)を設定する。例えば同じ仮想ネットワークに属する仮想ポート間でのみ通信できるように、ネットワークを構成することができる。なお、仮想マシンサービスは、例えば、クラウドリソース又はデータセンタ等の仮想マシンを、ユーザに利用可能としたものであり、仮想マシンの仕様は変更自在とされる。仮想マシンは、仮想ネットワークのポートに論理的に接続される。
[0006]
 仮想ネットワークサービスを実現するための技術として、オープンフローによるネットワーク仮想化技術がある。例えば特許文献3には、制御装置がオープンフロースイッチを仮想ノードとして動作させることで、仮想ネットワークを提供する構成が開示されている。また非特許文献2には、上記オープンフロースイッチと、スライサブルスイッチ(Sliceable Switch)と呼ばれるオープンフローコントローラとの組合せにて仮想的なネットワークを構築できること、及び、「Port-based Binding」と呼ばれる仮想ネットワークとポートの関連付けによる設定等が記載されている。非特許文献2において、前記ポートは、スイッチID、スイッチにおけるポート番号、VLAN ID(Virtual Local Area Network ID)で指定される。スライサブルスイッチ(Sliceable Switch)は、オープンフロースイッチで構成されたネットワークを、複数のL2(Layer 2)ドメイン(スライス)に分けて使用する際に用いるコントローラである。オープンフロースイッチは、受信パケットのヘッダの所定情報をフローエントリの照合パタンと照合し、マッチすると、当該フローエントリの対応するアクションに規定される動作(処理)を行い、マッチしない場合、パケットイン(Packet In)メッセージを用いて、受信パケットをコントローラであるスライサブルスイッチ(Sliceable Switch)へと送る。Packet Inメッセージを受け取ったスライサブルスイッチは、例えば、以下の処理を行う。
・パケットの宛先MACアドレスを基に出口スイッチとポートを決定する。
・該ポートと、スイッチがパケットを受信したポートの所属スライスが同一スライスに所属している場合に、パケットを受信したスイッチから出口スイッチまでの最短パスを計算してフロー修正メッセージ(Flow Modメッセージ)を用いてパス上の各スイッチに対してフローを設定する。
・受信パケットを、決定したポートから出力させるためにパケットアウト(Packet Out)メッセージ(転送指示メッセージ)を用いて、出口スイッチに送る。なお、Port-based Bindingでは、Slice単位に、ホストID、データパスID、ポート番号、VLAN IDを含む。
[0007]
 仮想ネットワークは、例えばサービスコンポーネント間の通信用として利用される。セキュリティの観点から、仮想ネットワークは、一般に、外部のネットワークあるいはインターネットへの接続は行われない。
[0008]
 クラウド基盤における仮想ネットワークサービスは、拠点(あるいはサイト)単位で提供されることが、一般的である。このため、ユーザが拠点を跨いでシステムを構築する場合には、VPN(Virtual Private Network:仮想プライベートネットワーク)等を用いて異なる拠点間の仮想ネットワーク接続が行われる。拠点(サイト)間VPNは、インターネット等のパブリックネットワークを介して拠点間のプライベートネットワークのルーティング接続を、セキュリティを確保して実現する。インターネットを経由するVPN接続は、拠点のルータ(「VPNデバイス」ともいう)が、VPN接続を介して、パケットを別の拠点のルータ(VPNデバイス)に転送する。なお、拠点間VPNでは、拠点内の端末間の複数の通信を束ねて、ルータ(VPNデバイス)間の通信に見せかけるトンネリングを用いることで、ルータ(VPNデバイス)で集約して送信側での暗号化処理、受信側での復号処理が行われる。
[0009]
 特許文献2には、第1のクライアントの1つまたは複数のリモートコンピューティングシステムから第1のプライベートコンピュータネットワークへのアクセス利用可能状態を開始することを含む方法が記載されている。特許文献2においては、設定可能ネットワークサービスが、そのサービスのクライアントであるユーザに、クライアントの1つまたは複数のリモートコンピューティングシステムとその提供されるコンピュータネットワークとの間にVPN(Virtual Private Network)接続または別の安全な接続を可能にすることなどにより、そのクライアント用に提供されるコンピュータネットワークへの安全なプライベートアクセスを提供し、または、別のセキュリティおよび/または認証技術を使用して、クライアントが非公開かつ安全な方法でその提供されるコンピュータネットワークとリモートでやりとりできるようにする。特許文献4には、拠点間を接続する広域ネットワークにおいて、1つの物理回線に対して接続先の拠点に応じた複数の論理チャネルのそれぞれに対して仮想的なポートを定義しておき、他の拠点側へデータ送信する際には、定義しておいた仮想ポートに対して送信データを振り分けるようルーチングを行う構成が開示されている。この特許文献4では、ネットワーク側の論理チャネルの設定または削除を契機として、仮想ポートを生成または削除し、ネットワーク側の論理チャネルを仮想的なルータのポートとしてルーティングを行う。

先行技術文献

特許文献

[0010]
特許文献1 : 特開2009-245409号公報
特許文献2 : 特表2012-511878号公報
特許文献3 : 国際公開第2012/090996号
特許文献4 : 特開2008-187236号公報

非特許文献

[0011]
非特許文献1 : 「Openstack Compute API v2 and Extensions Reference」
非特許文献2 : “Sliceable Switch Tutorial”、[online]、[平成25(2013)年9月6日検索]、インターネット〈URL: https://github.com/trema/apps/wiki/sliceable_switch_tutorial〉

発明の概要

発明が解決しようとする課題

[0012]
 以下に関連技術の分析を記載する。
[0013]
 上記したように、拠点を跨いでサービスコンポーネントを配置する場合、必要に応じて、異なる拠点間の仮想ネットワークをVPN等で接続する操作が行われる。この類の操作は、拠点の物理構成(仮想ネットワークにより制御される物理資源等の構成)を考慮して行われる。このため、仮想ネットワークサービスの機能(例えば自動設定機能等)、したがってその利便性を、損なう場合がある。
[0014]
 また、仮想ネットワークサービスが例えば拠点毎に存在しており、第1の拠点において仮想的に定義されたネットワーク及びポート等が、前記第1の拠点とは別の第2の拠点に配置されているシステム(参考例)について検討する。このシステムでは、仮想ネットワークによって制御される物理資源が第2の拠点にあることから、拠点を跨いだ情報の関連付け(拠点を跨いで、例えば仮想ネットワークと物理資源等とを関連付けるための設定)を、システム管理者等が行った上で、第1、第2の拠点の仮想ネットワークを相互に接続する必要がある。
[0015]
 本発明は、上記課題に鑑みて創案されたものであって、その目的は、仮想ネットワークが拠点間を跨る場合の設定等の操作の簡易化、省力化を可能とするシステム、装置、方法、及び、プログラムを提供することにある。

課題を解決するための手段

[0016]
 本発明の第1の視点によれば、各拠点が、仮想ネットワークサービスを提供するネットワーク制御装置と、他拠点の対応するトンネル装置との間で、拠点間のトンネリングを行うトンネル装置と、を含み、
 少なくとも仮想ネットワークの張出元の拠点と張出先の拠点の前記ネットワーク制御装置と接続する拠点間ネットワーク連携制御装置を備え、仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つの構成の操作に応じて、前記張出元の拠点又は前記張出先の拠点の前記ネットワーク制御装置が、拠点間を跨ぐ仮想ネットワークの張り出しを検知すると、張出要求を、前記拠点間ネットワーク連携制御装置に通知し、前記拠点間ネットワーク連携制御装置は、前記張出要求を受け、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要な、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、さらに、前記拠点間ネットワーク連携制御装置は、拠点間のトンネル用の仮想ポートの作成指示を前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知し、張出元の拠点と張出先の拠点の仮想ネットワークは、それぞれの拠点の前記トンネル装置に作成された前記拠点間のトンネル用の仮想ポート、及び、前記拠点間のトンネルを介して通信接続する、ネットワークシステム(拠点間ネットワーク連携制御システム)が提供される。
[0017]
 本発明の第2の視点によれば、各々が、仮想ネットワークサービスを提供するネットワーク制御装置と、他拠点の対応するトンネル装置との間で拠点間のトンネリングを行うトンネル装置と、を少なくとも含む拠点に関して、少なくとも仮想ネットワークの張出元の拠点と張出先の拠点の前記ネットワーク制御装置と接続する拠点間ネットワーク連携制御装置を設け、
 仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つを含むネットワーク構成の操作に応じて、前記張出元の拠点の前記ネットワーク制御装置にて、拠点間を跨ぐ仮想ネットワークの張り出しを検知すると、張出要求を、前記拠点間ネットワーク連携制御装置に通知し、
 前記拠点間ネットワーク連携制御装置では、前記張出元の拠点の前記ネットワーク制御装置からの前記張出要求に基づき、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要な、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、及び、拠点間のトンネル用の仮想ポートの作成指示を前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知し、
 張出元の拠点と張出先の拠点の仮想ネットワークを、それぞれの拠点の前記トンネル装置に作成された前記拠点間のトンネル用の仮想ポート、及び、前記拠点間のトンネルを介して通信接続する、ネットワーク制御方法が提供される。
[0018]
 本発明の第3の視点によれば、少なくとも仮想ネットワークの張出元の拠点と張出先の拠点のネットワーク制御装置と接続し、
 仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つを含むネットワーク構成の操作に応じて、拠点間を跨ぐ仮想ネットワークの張り出しを検知した前記張出元の拠点又は前記張出先の拠点の前記ネットワーク制御装置からの張出要求に基づき、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要と判断された、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、及び、拠点間のトンネル用の仮想ポートの作成指示を前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知する手段を備えた拠点間ネットワーク連携制御装置が提供される。
[0019]
 本発明の第4の視点によれば、複数の拠点の各々に設けられ、仮想ネットワークサービスを提供するネットワーク制御装置であって、他の拠点の前記ネットワーク制御装置とは拠点間ネットワーク連携制御装置を介して接続され、仮想ネットワークと仮想ポートの所属に関する情報を保持する論理構成保持部と、
 他の拠点に関する構成情報を、前記拠点間ネットワーク連携制御装置へ通知する構成検知部と、
 拠点内のネットワーク機器を設定するネットワーク機器設定部と、を備えているネットワーク制御装置が提供される。
[0020]
 本発明の第5の視点によれば、拠点間に接続され、前記各拠点のネットワーク制御装置と接続する拠点間ネットワーク連携制御装置を構成するコンピュータに、
 仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つを含むネットワーク構成の操作に応じて、拠点間を跨ぐ仮想ネットワークの張り出しを検出した張出元の拠点又は前記張出先の拠点の前記ネットワーク制御装置からの張出要求を受け、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要と判断された、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、及び、拠点間のトンネル用の仮想ポートの作成指示を前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知する処理を実行させるプログラムが提供される。このプログラムは、例えばコンピュータが読み取り可能な、半導体メモリや磁気/光ストレージ等の記憶媒体(non-transitory computer readable recording medium)に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。

発明の効果

[0021]
 本発明によれば、仮想ネットワークが拠点を跨る場合の設定操作の簡易化、省力化を可能としている。

図面の簡単な説明

[0022]
[図1] 本発明の一実施形態の構成を例示する図である。
[図2] 本発明の一実施形態の仮想ネットワークの論理構成を例示する図である。
[図3] 本発明の第1の実施形態の構成を例示する図である。
[図4A] 本発明の第1の実施形態の拠点Aにおける仮想ネットワーク情報を例示する図である。
[図4B] 本発明の第1の実施形態の拠点Aにおける仮想ポート情報を例示する図である。
[図4C] 本発明の第1の実施形態の拠点Aにおけるポート情報を例示する図である。
[図5A] 本発明の第1の実施形態の拠点Bにおける仮想ネットワーク情報を例示する図である。
[図5B] 本発明の第1の実施形態の拠点Bにおける仮想ポート情報を例示する図である。
[図5C] 本発明の第1の実施形態の拠点Bにおけるポート情報を例示する図である。
[図6A] 本発明の第1の実施形態の張出仮想ネットワーク情報を例示する図である。
[図6B] 本発明の第1の実施形態の張出仮想ポート情報を例示する図である。
[図6C] 本発明の第1の実施形態のトンネル用仮想ポート情報を例示する図である。
[図7A] 本発明の第1の実施形態のネットワーク制御装置と拠点情報を例示する図である。
[図7B] 本発明の第1の実施形態の張出要求を例示する図である。
[図7C] 本発明の第1の実施形態の張出解除要求を例示する図である。
[図8] 本発明の第2の実施形態の構成を例示する図である。
[図9A] 本発明の第2の実施形態の張出要求を例示する図である。
[図9B] 本発明の第2の実施形態の張出解除要求を例示する図である。
[図10] 本発明の第3の実施形態の構成を例示する図である。
[図11A] 本発明の第3の実施形態の拠点A、Bにおける仮想ネットワーク情報を例示する図である。
[図11B] 本発明の第3の実施形態の張出要求を例示する図である。
[図12] 仮想マシン、仮想スイッチ、NIC,物理スイッチを模式的に例示する図である。
[図13] 本願の開示の基本概念を模式的に例示する図である。

発明を実施するための形態

[0023]
 本発明の実施形態の概要(基本概念)について図面を参照して説明する。なお、この概要に付記した図面の参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を、図示の態様に限定することを意図するものではない。いくつかの好ましい視点(側面)によれば、図13を参照すると、各拠点(拠点A/B)は、仮想ネットワークサービスを提供するネットワーク制御装置(1A/1B)と、他拠点の対応するトンネル装置(2B/2A)との間で、拠点間のトンネリングを行うトンネル装置(2A/2B)とを含む。少なくとも仮想ネットワークの張出元の拠点(A、Bの一方)の前記ネットワーク制御装置(1A、1Bの一方)と、張出先の拠点(A、Bの他方)の前記ネットワーク制御装置(1A、1Bの他方)と接続する拠点間ネットワーク連携制御装置(4)を備えている。
[0024]
 仮想ネットワーク、及び/又は、仮想ネットワークの論理構成上のポートである仮想ポートの構成に関する操作に応じて、張出元の拠点の前記ネットワーク制御装置(例えば1A)又は張出先の拠点の前記ネットワーク制御装置(例えば1B)は、拠点間を跨ぐ仮想ネットワークの張り出しを検知する。
 張出元の拠点の前記ネットワーク制御装置(例えば1A)又は張出先の拠点の前記ネットワーク制御装置(例えば1B)は、張出要求を前記拠点間ネットワーク連携制御装置(4)に送信する。
 当該張出要求を受けると、前記拠点間ネットワーク連携制御装置(4)は、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要な、前記張出先の拠点における仮想ネットワーク(例えば5B)の作成指示を、前記張出先の拠点の前記ネットワーク制御装置(例えば1B)に通知する。
 また、前記拠点間ネットワーク連携制御装置(4)は、拠点間のトンネル用の仮想ポート(51B、53A)の作成指示を、前記張出先の拠点の前記ネットワーク制御装置(例えば1B)と前記張出元の拠点の前記ネットワーク制御装置(例えば1A)に通知する。張出元の拠点の仮想ネットワーク(例えば5A)と張出先の拠点の仮想ネットワーク(例えば5B)は、それぞれの拠点の前記トンネル装置(2A、2B)に作成された前記拠点間のトンネル用の仮想ポート(53A、51B)、及び、前記拠点間のトンネル(7)を介して通信接続する。
[0025]
 いくつかの好ましい視点(側面)によれば、前記拠点間ネットワーク連携制御装置(4)は、張出要求処理部(図3の42)、トンネル制御部(図3の44)、張出情報保持部(図3の41)、論理ネットワーク拡張部(図3の43)と、を備えた構成としてもよい。張出要求処理部(図3の42)は、前記ネットワーク制御装置(例えば1A)から、前記張出要求(図7B)、又は、前記拠点間を跨ぐ仮想ネットワークの張り出しに関する張出解除要求(図7C)を受けると、前記拠点間を跨ぐ仮想ネットワークの張り出しの処理又は張出解除の処理を行う構成としてもよい。
 トンネル制御部(図3の44)は、各拠点における前記仮想ネットワークに接続するポートであって前記ポート間でトンネルを接続させる前記ポートを、前記トンネル装置上に作成又は削除する制御を行う構成としてもよい。
 張出情報保持部(図3の41)は、他の拠点に前記張り出した仮想ネットワークと前記他の拠点に張り出した仮想ポートの情報を少なくとも保持する構成としてもよい。
 論理ネットワーク拡張部(図3の43)は、前記張出先の拠点の前記ネットワーク制御装置に対して、仮想ネットワークの作成、及び、トンネル用の仮想ポートの作成又は削除を指示し、前記張出情報保持部(41)における前記張り出した仮想ネットワークと仮想ポートの情報の登録又は削除を行う構成としてもよい。
[0026]
 いくつかの好ましい視点(側面)によれば、前記ネットワーク制御装置(1A/1B)は、論理構成保持部(図3の11A/11B)、構成検知部(図3の物理構成検知部12A/12B)、ネットワーク機器設定部(図3の13A/13B)を備えた構成としてもよい。
 論理構成保持部(図3の11A/11B)は、前記仮想ネットワークと前記仮想ポートの所属に関する情報を少なくとも保持する。
 構成検知部(図3の物理構成検知部12A/12B)は、前記論理構成保持部(図3の11A/11B)を参照し、前記ネットワーク構成に関する操作が、自拠点内での処理であるか否か判別し、他拠点への仮想ネットワークの張出処理である場合、前記張出要求を、前記拠点間ネットワーク連携制御装置(図3の4)に通知する構成としてもよい。 
 ネットワーク機器設定部(図3の13A/13B)は、拠点内のネットワーク機器の設定を行う構成としてもよい。
[0027]
 いくつかの好ましい視点(側面)によれば、前記ネットワーク制御装置(図3の1A/1B)は、他拠点で設定された仮想ポート又は他拠点で制御されるポートに関する構成情報を、前記構成検知部(図3の物理構成検知部12A/12B)で検知すると、前記拠点間ネットワーク連携制御装置(4)に対して張出要求を通知する。
 前記拠点間ネットワーク連携制御装置(4)において、前記ネットワーク制御装置からの前記張出要求を受けた前記張出要求処理部(図3の42)は、張出先の拠点を特定し、前記張出情報保持部に、前記張出先の拠点の前記ネットワーク制御装置において対応する仮想ネットワークが作成されているか問い合わせる。
 前記拠点間ネットワーク連携制御装置(4)において、前記仮想ネットワークが作成されていない場合には、前記論理ネットワーク拡張部(図3の43)は、張出先の拠点の前記ネットワーク制御装置に対して、仮想ネットワークの作成、仮想ネットワークを接続するためのトンネル用の仮想ポートの作成を指示する。
 前記拠点間ネットワーク連携制御装置(4)は、さらに、前記仮想ネットワークの張出後に、前記張出要求に含まれる張出元拠点の仮想ポートに対応する前記張出先の拠点の仮想ポートの作成を、前記張出先の前記ネットワーク制御装置に要求し、前記張出元の拠点の仮想ポートのポート情報を、前記張出先の拠点で作成した前記仮想ポートに関連付ける構成としてもよい。
[0028]
 あるいは、別の視点(側面)によれば、拠点で作成された仮想ネットワーク、及び/又は仮想ポートの情報を取得して対応するネットワーク制御装置に通知するネットワーク制御エージェント(図8の32A/32B)を備えた構成としてもよい。
[0029]
 あるいは、さらに別の視点(側面)によれば、前記ネットワーク制御装置は、仮想ネットワークと仮想ポートの所属に関する情報を保持する論理構成保持部(図10の11A/11B)を備えた構成としてもよい。ネットワーク制御エージェント(図10の32A/32B)は、他の拠点に関する構成情報を、前記拠点間ネットワーク連携制御装置へ通知する処理、及び、拠点内のネットワーク機器を設定する処理を行う構成としてもよい。
[0030]
 いくつかの実施形態の一つによれば、仮想ネットワークが拠点を跨る場合であっても、一つの拠点(例えば張出元の拠点)のネットワーク制御装置への論理的な操作のみで、拠点及び拠点間のネットワークを、自動的に構成し、定義された接続性を実現することができる。
 また、拠点間の張出において、各拠点における、ネットワーク制御装置に関わる仮想ネットワーク技術、及び、ID空間の制限を、回避することができる。例えば拠点毎に、トンネル装置において、仮想ネットワークの端点を設けるために接続する2つの拠点の仮想ネットワーク技術が同一でなければならないといった制限を回避することができる。
[0031]
 なお、本明細書において、仮想ポートは、仮想化されたネットワークの論理構成におけるポートのことをいう。
 本明細書において、ポートは、仮想マシンの例えばNIC(Network Interface Controller)と接続されたポート、すなわち、物理スイッチの物理ポート又は物理スイッチのポートにソフトウェアで接続される仮想マシンサーバ上の仮想スイッチのポートを指す。
[0032]
 実施形態によれば、異なる拠点に仮想マシンを配置した場合にも、拠点内の仮想マシンを配置した場合と同様に、拠点間での接続を行うことができる。このため、仮想マシン制御サービスは、他の拠点のサーバに仮想マシンを配置することが可能となる。このため、より多くのクラウド(IaaS)基盤のユーザからの仮想マシンの生成要求等に対応可能とされる。
[0033]
(構成)
 本発明の一実施形態において、図1に示すように、拠点A、Bにそれぞれ配置されたネットワーク制御装置1A、1Bと、トンネル装置2A、2Bと、仮想マシン31A、31Bが動作する仮想マシンサーバ3A、3Bと、拠点A、Bの外部に配置された拠点間ネットワーク連携制御装置4を備えている。拠点A内では、装置同志(ネットワーク制御装置1A、トンネル装置2A、仮想マシンサーバ3A)は相互に接続され、拠点B内では、装置同志(ネットワーク制御装置1B、トンネル装置2B、仮想マシンサーバ3)は相互に接続される。拠点A、Bのネットワーク制御装置1A、1Bはそれぞれ拠点間ネットワーク連携制御装置4に接続される。拠点A、Bは、それぞれ他の拠点B、Aを跨いで仮想ネットワークを自動的に拡張する仮想ネットワークサービスを実現することができる。
[0034]
 本実施形態において、拠点内の接続については、ネットワーク接続された上でネットワーク仮想化技術により、仮想ネットワーク毎に通信を分離できる、ことを想定している。特に制限されないが、ネットワーク仮想化技術として、例えばVLANやオープンフロー等を用いてもよい。仮想ネットワーク毎のネットワークの分離は、特に制限されないが、例えばVLAN ID等により行うようにしてもよい(例えばポートベースVLAN)。本実施形態において、拠点A、B毎に異なるネットワーク仮想化技術を使用することができる(但し、拠点A、Bにおけるネットワーク仮想化技術が同一であってもよいことは勿論である)。
[0035]
 拠点A/Bのネットワーク制御装置1A/1Bは、
・仮想ネットワーク(例えば図2の5A/5B)と仮想ポート(図2の51A/52B、53A/51B)の所属を保持する手段(図3の論理構成保持部11A/11Bに対応する)と、
・他の拠点B/Aに関する情報(構成情報等)を、拠点間ネットワーク連携制御装置4へ通知する機能を備えたネットワーク物理構成情報の検知手段(図3の物理構成検知部12A/12Bに対応する)と、
・拠点A/B内のスイッチ等のネットワーク機器(不図示)を設定する手段(図3のネットワーク機器設定部13A/13Bに対応する)と、
を備えている。
[0036]
 本実施形態において、拠点A、Bにかかわらず、仮想ネットワーク(例えば図2の5A/5B)と仮想ポート(図2の51A/52B、53A/51B)により、ネットワークを構成する操作を受け付ける。また、拠点A、B間において、同一の仮想ネットワークに属する仮想ポート間の接続性と同等の接続性を提供する。
[0037]
 拠点A/Bのトンネル装置2A/2Bは、各々、同時に、複数のポートを保持することができる構成とされている。拠点A/Bのトンネル装置2A/2Bは、拠点間ネットワーク連携制御装置4の制御のもと、他方の拠点B/Aのトンネル装置2B/2Aに接続する。
[0038]
 特に制限されないが、本実施形態において、拠点内での仮想ネットワークへの接続については、仮想マシンと仮想ネットワークとの接続に関する通常の接続方法が用いられる。なお、仮想マシンは、例えば仮想マシンサーバ(3A/3B)上の仮想ネットワークアダプタ(不図示)を用いて仮想ネットワークに接続される。
[0039]
 トンネリングでは、あるプロトコルで記述されたパケットを、別のプロトコルのパケットにカプセル化して通信を行う。パケットのカプセル化(encapsulation)とその解除(decapsulation)はトンネルの両端のトンネル装置で行う。例えば拠点間のVPNデバイスを接続する拠点間VPNでは、トンネル装置2A、2Bは、VPNトンネルの両端に置かれ、トンネリングや暗号化、復号処理等を行うVPNデバイス(ゲートウェイ)として構成される。VPNデバイスは、例えばレイヤ3(ネットワーク層)のトンネル・プロトコルIPSec(Security Architecture for Internet Protocol)等に対応したルータ等が用いられる。なお、本発明において、トンネル・プロトコルは特に制限されない。VPNのトンネル・プロトコルとして、レイヤ3のIPSecのほかにも、レイヤ2(データリンク層)のPPTP(Point to Point Tunneling Protocol)やL2TP(Layer 2 Tunneling Protocol)や、IPSec+L2TP等を用いてもよい。VPNデバイスは、例えば固定のグローバルIP(Internet Protocol)アドレスが割り当てられており、拠点内のホスト(例えば仮想マシン等)に割り当てられたプライベートIPアドレスを持つIPパケットをカプセル化し、トンネルモード専用の新たなIPヘッダにグローバルIPアドレスを付与し、元のIPヘッダを暗号化する構成としてもよい。
[0040]
 仮想マシンサーバ3A/3Bは、サーバ仮想化技術により、ハードウェアリソース等を仮想化したものであり、ハイパーバイザ等の仮想マシンモニタ(Virtual Machine Monitor、あるいは仮想化レイヤ(Virtualization Layer))上で仮想マシン31A/31Bが動作する。特に制限されないが、仮想マシン31A/31Bは、仮想マシン制御装置(図3のVM制御装置6)によって仮想マシンサーバ3A/3B上に作成され起動される構成を想定する。
[0041]
 仮想マシン制御装置(図3のVM制御装置6)は、仮想マシンサーバ3A/3B上に、仮想ポート(図2の51A/52B)を作成する。仮想マシンサーバ3A/3B上に作成される仮想マシン31A/31Bのネットワークインタフェースコントローラ(Virtual Network Interface Controller)が接続されるポート情報と、仮想ポートIDとを関連付けるマッピング情報を、ネットワーク制御装置1A/1B、又は、仮想マシンサーバ3A/3Bに通知する。
[0042]
 例えば図12に模式的に例示したように、仮想マシンサーバ3上の仮想マシン31(OS312とアプリケーション311)は仮想ネットワークインタフェースコントローラ(vNIC)301を介して仮想スイッチ302のポート305に接続し、仮想スイッチ302のポート306から物理NIC(pNIC)303を介して物理スイッチ(Physical Switch)304の物理ポート307に接続され、物理スイッチ(Physical Switch)304のポート308を介してネットワーク309(仮想ネットワーク)に接続される。仮想NIC301、仮想スイッチ302は、仮想マシンサーバ3上で物理スイッチを仮想化したものであり、仮想マシン31と同様、仮想マシンサーバ3上の仮想マシンモニタ(不図示)によって提供される。なお、仮想マシン制御装置(図3のVM制御装置6)が行う処理は、ユーザが手動で行うようにしてもよい。
[0043]
 拠点間ネットワーク連携制御装置4は、
・ネットワーク制御装置1A/1Bから受けた通知に基づき、拠点間を跨ぐ仮想ネットワークの張り出しを処理する手段(図3の張出要求処理部42)と、
・各拠点A/Bにおける仮想ネットワークを接続するためのトンネルをトンネル装置2A/2Bで生成・削除する制御を行う手段(図3のトンネル制御部44)と、
・張出に必要となる、仮想ネットワークや仮想ポートの複製又はトンネル用の仮想ポートの作成を、ネットワーク制御装置1A/1Bに指示する手段(図3の論理ネットワーク拡張部43)と、
・張り出した仮想ネットワークと仮想ポート情報を保持する手段(図3の張出情報保持部41)を備えている。
[0044]
 拠点間ネットワーク連携制御装置4は、ネットワーク制御装置1A/1Bからの通知に基づいた論理構成の拡張と、トンネル作成の制御を行うことにより、他拠点へ接続された物理ポートであっても、元の拠点で定義された仮想ネットワークに属する仮想ポートと通信可能とする。
[0045]
(動作)
 次に、本実施形態の動作を説明する。以下では、図1及び図2を参照して、拠点Aから拠点Bへの仮想ネットワークの張出を例に説明する。
[0046]
 まず、不図示のユーザから要求により、拠点Aのネットワーク制御装置1A(図1の1A)上で仮想ネットワーク5Aと、仮想マシンサーバ3A上の仮想マシン31Aに対して、仮想ポート51Aを作成する。
[0047]
 ネットワーク制御装置(図1の1A)は、仮想ポート51Aとして、仮想マシン31Aのポートが接続されたことを検知し、仮想ポート51Aが仮想ネットワーク5Aに属するポート間とのみ接続できるように、仮想ネットワーク5Aを構成するネットワーク機器を設定する。但し、この時点では、他のポートが存在しないため、仮想ポート51Aからは、どのポートにも接続できない。
[0048]
 その後、ユーザからの要求により、ネットワーク制御装置(図1の1A)は、該ネットワーク制御装置1Aが提供する仮想ネットワーク5Aに属する仮想ポート52Aを作成する。なお、仮想ポート52Aは、ネットワーク制御装置1Aで提供される仮想ネットワーク5Aの論理構成における所定のポートとして、例えば仮想ネットワーク5Aを構成するネットワーク機器(例えばオープンフロースイッチ)のポートであってもよい。
[0049]
 ネットワーク制御装置1A(図1)は、仮想ポート51Aとして、仮想マシン31Aのポートが接続されたことを検知し、拠点間ネットワーク連携制御装置(図1の4)に通知する。
[0050]
 拠点間ネットワーク連携制御装置(図1の4)は、仮想ネットワーク5Aを、拠点Bへ張り出す。具体的には、拠点Bのネットワーク制御装置1Bで、仮想ネットワーク5B、トンネルポート用の仮想ポート51B(53A)を作成し、トンネル装置2A、2B間で通信できるように設定する。
[0051]
 拠点間ネットワーク連携制御装置(図1の4)は、ネットワーク制御装置1Bに指示して、仮想ポート51Aに対応する仮想ポート52Bを作成させる。
[0052]
 ネットワーク制御装置(図1の1B)は、仮想ポート52Bとして、仮想マシン31Bのポートが接続されたことを検知する。ネットワーク制御装置(図1の1B)は、仮想ポート52Bが仮想ネットワーク5Bに属するポート間とのみ接続できるように、仮想ネットワーク5Bを構成するネットワーク機器(不図示)を設定する。これによって仮想マシン31A、31Bは、仮想ポート51A、仮想ネットワーク5A、仮想ポート53A、トンネル装置2A、トンネル装置2B、仮想ポート51B、仮想ネットワーク5B、仮想ポート52Bを介して通信接続可能となる。
[0053]
(作用効果)
 本実施形態においては、上記構成及び動作により、仮想ネットワークが拠点を跨る場合であっても、張出元の前記ネットワーク制御装置への論理的な操作のみで(操作の簡易化、省力化)、それぞれの拠点及び拠点間のネットワークを自動的に構成し、定義された接続性を実現できる。このため、特に制限されないが、例えばネットワーク・リソース等を仮想的な資源として提供するクラウド基盤(IaaS)等で提供される拠点内の仮想ネットワークを他の拠点への張り出し等に適用して好適とされる。
[0054]
 本実施形態では、仮想ポート(例えば仮想スイッチの仮想ポート)とポート(例えば物理スイッチのポート等)のマッピングがどこで得られるか、さらに、このマッピング情報を用いて、どこでネットワークを設定するか、により、動作シーケンスが異なる。
[0055]
 まず、第1の実施形態では、マッピングを仮想ポートの付属情報として、VM制御装置(図3の6)からネットワーク制御装置(図1の1A/1B)へ渡し、ネットワークを集中制御するオープンフローコントローラへ設定する場合を説明する。
[0056]
 後述される第2の実施形態では、マッピングを物理ポートの付加情報として、ユーザから仮想マシンサーバ上に登録し、ネットワーク制御装置がエージェントにより情報を収集し、オープンフローコントローラへ設定する場合を説明する。
[0057]
 また、後述される第3の実施形態では、エージェントがマッピング情報を収集し、さらにVLANによる仮想ネットワーク設定する場合を説明する。以下、これらの実施形態について説明する。
[0058]
[第1の実施形態]
(構成)
 本発明の第1の実施形態について図面を参照して詳細に説明する。図3は、本発明の第1の実施形態の構成を例示する図である。図3を参照すると、拠点A、拠点Bに配置された、ネットワーク制御装置1A、1Bと、トンネル装置2A、2Bと、仮想マシンサーバ3A、3B、拠点A、Bの外部に配置された、拠点間ネットワーク連携制御装置4と、仮想マシン制御装置(VM制御装置)6と、を含む。拠点間においてネットワーク制御装置1A、1Bがそれぞれ拠点間ネットワーク連携制御装置4に接続され、トンネル装置2A、2Bが接続されている。なお、仮想マシンサーバ3A、3B上には、単に、図面の簡単のため、1台の仮想マシン31A、31Bが図示されているが、複数台あってもよいことは勿論である。また、各拠点には、仮想マシンサーバ3A、3Bをそれぞれ複数台備え、共通のトンネル装置2A、2Bを介して接続する構成としてもよいことは勿論である。他の実施形態についても同様ある。
[0059]
 ネットワーク制御装置1A/1Bは、論理構成保持部11A/11B、物理構成検知部12A/12B、ネットワーク機器設定部13A/13Bを備えている。なお、ネットワーク制御装置1A/1Bにおける論理構成保持部11A/11B、物理構成検知部12A/12B、ネットワーク機器設定部13A/13Bの1部又は全ては、コンピュータで動作するプログラムによりその処理、機能を実現するようにしてもよい。
[0060]
 拠点間ネットワーク連携制御装置4は、張出情報保持部41、張出要求処理部42、論理ネットワーク拡張部43、トンネル制御部44を備えている。なお、拠点間ネットワーク連携制御装置4における張出情報保持部41、張出要求処理部42、論理ネットワーク拡張部43、トンネル制御部44の1部又は全ては、コンピュータで動作するプログラムによりその処理、機能を実現するようにしてもよい。
[0061]
(データ構造)
 ネットワーク制御装置1A/1Bの論理構成保持部11A/11Bは、書き込み読み出し可能な記憶装置(不図示)を備え、
・仮想ネットワーク、
・仮想ポート、
・仮想ネットワークと仮想ポートの所属関係の情報、
を記憶保持する。
[0062]
 図4Aは、拠点Aの論理構成保持部11Aが保持する仮想ネットワーク情報の一例を例示する図である。図4Aを参照すると、論理構成保持部11が保持される仮想ネットワークの情報として、仮想ネットワークID及び名称を含む。
[0063]
 図4Bは、論理構成保持部11で保持する仮想ポートの情報の一例を例示する図である。図4Bを参照すると、仮想ポートの情報は、
・仮想ポートID、
・名称、
・当該仮想ポートが所属する仮想ネットワークのID情報、
を含む。なお、仮想ネットワーク情報、及び仮想ポート情報における名称欄は必ずしも設ける必要はない(設けなくてもよい)。
[0064]
 ネットワーク制御装置1A/1Bの論理構成保持部11A/11Bでは、仮想ポートに付属する情報として、ネットワーク機器の設定に必要なポート情報が保持される。
[0065]
 図4Cは、拠点Aのポート情報の一例を例示する図である。図4Cを参照すると、ポート情報は、
・仮想ポートID、
・スイッチ識別情報(DPID:Data Path ID)、
・当該スイッチにおけるポート番号、
を含む。
[0066]
 拠点間ネットワーク連携制御装置4の張出情報保持部41では、
・他の拠点に張り出した仮想ネットワーク、
・他の拠点に張り出した仮想ポートの情報と、
・トンネル用の仮想ポートの情報を保持する。
[0067]
 図6Aは、拠点Bに張り出した仮想ネットワーク情報の一例を示す図である。図6Bは、拠点Bに張り出した仮想ポートの情報の一例を示す図である。図6Cは、トンネル用の仮想ポートの情報の一例を示す図である。
[0068]
 図6Aを参照すると、拠点Bに張り出した仮想ネットワーク情報は、
・張出ID(A1B1)、
・張出元拠点ID(この例ではA)、
・張出元仮想ネットワークID(0x1)、
・張出先拠点ID(B)、
・張出先仮想ネットワークID(0x1)、
を含む。
注記:0x1の0xはヘキサデシマル表示であることを表している。
[0069]
 図6Bを参照すると、拠点Bに張り出した仮想ポート情報は、
・張出ID(A1B1)、
・張出元拠点ID(A)、
・張出元仮想ポートID(0x2:図2の仮想ポート52A)、
・張出先拠点ID(B)、
・張出先仮想ポートID(0x2:図2の仮想ポート52B)、
を組として含む。
[0070]
 図6Cを参照すると、トンネル用仮想ポート情報は、トンネルポート用に作成した仮想ポート情報として、
・張出ID、
・拠点ID、
・トンネル用仮想ポートID、
を含む。
[0071]
 トンネル用仮想ポート情報は、
 拠点Aに関して、
・張出ID(A1B1)、
・拠点ID(拠点A)、
・トンネル用仮想ポートID(0x3:図2の仮想ポート53A)、
を含み、
 拠点Bに関して、
・張出ID(A1B1)、
・拠点ID(拠点B)、
・トンネル用仮想ポートID(0x1:図2の仮想ポート51B)、
を含む。なお、張出仮想ポート情報及びトンネル用仮想ポート情報に記載される張出IDは、張出仮想ネットワーク情報の張出IDが使用される。
[0072]
 さらに、拠点間ネットワーク連携制御装置4の張出情報保持部41は、書き込み読み出し可能な記憶装置(不図示)を備え、
・拠点A、Bのネットワーク制御装置1A、1Bと、
・拠点の情報と、
を記憶保持する。
[0073]
 図7Aは、拠点間ネットワーク連携制御装置4の張出情報保持部41が保持する情報を例示した図である。図7Aを参照すると、張出情報保持部41は、ネットワーク制御装置の識別子と拠点ID(A/B)の組を保持する。図7Aの例では、ネットワーク制御装置の識別子として、ネットワーク制御装置のIPアドレスを用いている。この情報は、拠点間ネットワーク連携制御装置の管理者が設定する。なお、IPアドレスとして、IPv4(Internet Protocol version 4:32ビット)が用いられているが、IPv6(Internet Protocol version 6)等であってもよいことは勿論である。
[0074]
(動作1-1: 拠点内での接続)
 第1の実施形態における拠点間ネットワーク張出動作で行われる各拠点での基本動作である拠点内でのネットワーク接続設定を説明する。なお、特に制限されないが、この動作は、例えば既存技術を主に用いており、拠点内外の判断に関する部分について、第1の実施形態に固有の動作が付加される。
[0075]
(処理1-1―1) 
 まず、ユーザ(不図示)からの要求により、拠点Aのネットワーク制御装置1A(図1)にて仮想ネットワーク5A及び仮想ポート51A(図2)を作成し、ネットワーク制御装置1A(図1)の論理構成保持部11Aに、作成した仮想ネットワーク5A及び仮想ポート51Aの情報を登録する。登録された値は、それぞれ、図4Aの仮想ネットワーク(ID:0x1)と、図4Bの仮想ポート(仮想ポートID:0x1、名称:Port 51A、仮想ネットワークID:1)のエントリとなる。
[0076]
(処理1-1―2)
 続いて、ユーザ(不図示)は、仮想マシン制御装置(図3のVM制御装置6)に対して、拠点Aにおける仮想マシン31A(図1、図2、図3の31A)の作成を要求する。このとき、仮想マシン31AのNIC(vNIC)として、仮想ポート51A(ID:0x1)を指定する。
[0077]
(処理1-1―3)
 仮想マシン制御装置(図3のVM制御装置6)は、仮想マシン31A(図3)のNIC(不図示)が接続されるポート情報として、接続先のスイッチ(図1-図3等では不図示)の識別情報(図4Cのスイッチ識別情報DPID)と、当該スイッチ(不図示)におけるポート番号を収集する。
[0078]
(処理1-1―4)
 仮想マシン制御装置(図3のVM制御装置6)は、仮想ポート(図3の仮想ポート51A、ID=0x1)のポート情報(図4C参照)として、当該スイッチ(不図示)の識別情報と、当該スイッチ(不図示)におけるポート番号を、ネットワーク制御装置1Aに通知する。 
[0079]
 仮想ポート(図3の仮想ポート51A、ID=0x1)のポート情報は、図4Cに示すように、
・スイッチ識別情報:0xa001(16ビット)、
・ポート番号:1
となる。
[0080]
 なお、拠点毎に異なる仮想ネットワーク技術を使用する場合、仮想ネットワーク技術で使用する情報のやり取り、あるいは、以下の第2及び第3の実施形態で説明するように、仮想マシンサーバ(図3の3A等)への情報登録といった処理が必要になる。
[0081]
(処理1-1―5)
 ネットワーク制御装置1A(図3)は、仮想マシン制御装置6(図3)からの通知を物理構成検知部12A(図3)で処理する。物理構成検知部12Aは、仮想マシン制御装置6(図3)から通知されたポート情報から、対象のポートが、自拠点のものであるか否かを判定する。その判定には、いくつかの手法が用いられる。
[0082]
 例えば、
(I)スイッチ識別情報(DPID)に、拠点ID(例えばA又はB)を挿入しておき、拠点Aのネットワーク制御装置1Aの物理構成検知部12Aでは、スイッチ識別情報(DPID)に挿入された拠点IDを、自拠点のIDと比較する。あるいは、
(II)仮想マシンサーバ3Aに制御下となるネットワーク制御装置1Aの識別子を設定しておき、仮想マシン制御装置6(図3)からの通知情報にネットワーク制御装置1Aの識別子を付加し、物理構成検知部12Aが自身(ネットワーク制御装置1A)の識別子と比較する。
 特に制限されないが、以下では、対象のポートが自拠点のものである他拠点のものであるの判定に、上記(I)を用いた例に即して説明する。
[0083]
(処理1-1―6)
 ネットワーク制御装置1A(図3)の物理構成検知部12Aでの上記判定の結果、自拠点(拠点A)と判定され、ネットワーク制御装置1Aにおいて、物理構成検知部12Aからネットワーク機器設定部13Aへ処理が移る。
[0084]
(処理1-1―7)
 ネットワーク機器設定部13Aは、上記ポートを同じ仮想ネットワーク5Aに属するポート間とのみ接続できるように、不図示のネットワーク機器を設定する。設定の仕方は、拠点内で利用しているネットワーク仮想化技術によって異なる。さらに、個々のネットワーク機器に設定する場合、あるいは、ネットワークを集中制御するネットワークコントローラを備え、該ネットワークコントローラに設定する場合もある。特に制限されないが、本実施形態では、オープンフロー(Open Flow)によるネットワーク仮想化技術を想定している。拠点内のネットワークノードを構成するオープンフロースイッチ(ネットワーク機器)を集中制御するオープンフローコントローラへ設定するものとする。なお、ネットワーク制御装置1A、1Bにオープンフローコントローラの機能を実装してもよいことは勿論である。
[0085]
(動作1-2: 張出)
 次に、図2乃至図7B等を参照して、拠点Aから拠点Bへの仮想ネットワークの張出の動作例を詳細に説明する。
[0086]
(処理1-2―1)
 拠点Bに配置される仮想マシン31B(図3参照)を接続するため、ユーザがネットワーク制御装置1Aに対し、仮想ネットワーク5A(図2)に属する仮想ポート52A(図2参照)を作成する。この時点では、前記と同様、ネットワーク制御装置1A(図3)の論理構成保持部11Aには、仮想ポート(ID:0x2)のエントリ(図4Bの仮想ポート情報のID:0x2、名称:Port 52A、仮想ネットワークID:0x1)が作成される。
[0087]
(処理1-2―2)
 続いて、ユーザが仮想マシン制御装置(図3のVM制御装置6)に対して、仮想マシン31A(図3)の作成を要求する。このとき、ユーザは、仮想マシン制御装置(VM制御装置6)に対して、仮想マシン31A(図2、3)のNICとして、仮想ポート51A(図2)を指定する。
[0088]
(処理1-2―3)
 仮想マシン31B(図2、3)を作成する仮想マシン制御装置6(図3)は、仮想マシン作成処理の中で、仮想マシン31B(図2、図3)に対応するポート情報として、接続先のスイッチの識別情報(スイッチ識別情報)と、当該スイッチにおけるポート情報(例えば物理ポート情報)を収集し、収集した情報を、ネットワーク制御装置1A(図3)に通知する。仮想ポート52A(図2)に対応するポート情報(拠点B)は、例えば図5Cに示すように、
・仮想ポートID:0x2、
・スイッチ識別情報:0xb002、
・ポート番号:2
となる。特に制限されないが、上記スイッチ識別子は、例えば図12の物理スイッチ304の識別子に対応し、ポート番号は、例えば図12の仮想マシン31がNIC303を介して接続する物理スイッチ304のポート308に付与されたポート番号に対応する。
[0089]
(処理1-2―4)
 ネットワーク制御装置1A(図3)において、物理構成検知部12Aは、仮想マシン制御装置(図3のVM制御装置6)から通知されたポート情報から対象のポートが自拠点(拠点A)のものであるか否かを判定する。判定の結果、自拠点でないため、張出要求を拠点間ネットワーク連携制御装置(図1、図3の4)に通知する。通知内容は、例えば図7Bに示す通り、
・張出元ネットワーク制御装置1Aの識別子:10.10.0.2、
・張出元仮想ネットワークID:0x1、
・張出元仮想ポートID:0x2、
・ポート情報(スイッチ識別子):0xb002、
・ポート情報(ポート番号):2、
である。但し、前記した(II)の場合、ポート情報(ネットワーク制御装置1Bの識別子)が付加される。
[0090]
(処理1-2―5)
 拠点間ネットワーク連携制御装置4の張出要求処理部42(図3)は、前記張出要求を受け、張出先の拠点(ID:B)を特定する。
 前記(I)の場合、スイッチ識別子から張出先の拠点IDを得る。
 前記(II)の場合、ポート情報(ネットワーク制御装置識別子)、及び、図7Aに示すネットワーク制御装置(ネットワーク制御装置識別子)と拠点情報(拠点ID)から、張出先の拠点IDを得る。
[0091]
(処理1-2―6)
 続いて、拠点間ネットワーク連携制御装置4において、張出要求処理部42(図3)は、張出情報保持部41に対して、すでにこの仮想ネットワークが対象の拠点に張り出されているか否かを問い合わせる。
 具体的には、図6Aに示す張出仮想ネットワーク情報を参照し、張出元拠点、張出先拠点、張出元の仮想ネットワーク、張出先の仮想ネットワークを組とするエントリが存在するか否かを検索する。
[0092]
(処理1-2―7)
 張出情報保持部41の張出仮想ネットワーク情報を検索した結果、張出仮想ネットワークが登録されていない(仮想ネットワークが張り出されていない)場合には、拠点間ネットワーク連携制御装置4では、論理ネットワーク拡張部43(図3)が、仮想ネットワークの拠点Bへの張り出し処理を行う。
 そして、当該処理の結果得られた張出先仮想ネットワークIDを用いて、以下の処理(処理1-2-8)を実行する。
 一方、張出情報保持部41の張出仮想ネットワーク情報を検索した結果、すでに張り出されていた場合、該当エントリの張出先仮想ネットワークIDをもとに、次の処理を進める(例えば以下の(処理1-2―16)に移行する)。
[0093]
(処理1-2―8)
 張出仮想ネットワークが張り出されていない場合、拠点間ネットワーク連携制御装置4において、論理ネットワーク拡張部43(図3)は、拠点Bのネットワーク制御装置1Bに対して、仮想ネットワークの作成を要求する。
[0094]
(処理1-2―9)
 ネットワーク制御装置1Bは、図5Aに示す仮想ネットワーク(ID:0x1、名称Network1 (Net A:0x1))を作成し、作成した仮想ネットワークのIDを、拠点間ネットワーク連携制御装置4の論理ネットワーク拡張部43(図3)に返す。
 論理ネットワーク拡張部43は、ネットワーク制御装置1Bが作成した仮想ネットワークのIDを、張出先仮想ネットワークIDとし、図6Aに示す張出仮想ネットワーク情報(張出ID、張出元拠点ID、張出元仮想ネットワークID、張出先拠点ID、張出先仮想ネットワークIDのエントリ)を、張出情報保持部41に登録する。
[0095]
(処理1-2―10)
 続いて、拠点間ネットワーク連携制御装置4の論理ネットワーク拡張部43は、トンネルを用いて、これらの仮想ネットワーク5A、5Bを接続させるために、トンネル用の仮想ポートの作成を、ネットワーク制御装置1A及びネットワーク制御装置1Bに対して要求する。
[0096]
(処理1-2―11)
 拠点間ネットワーク連携制御装置4の論理ネットワーク拡張部43からのトンネル用の仮想ポートの作成要求(指示)に応答して、ネットワーク制御装置1A、1Bでは、それぞれ、
・図4Bに示す仮想ポート情報(拠点A)において、仮想ポートID:0x3の仮想ポートと、
・図5Bに示す仮想ポート情報(拠点B)において、仮想ポートID:0x1の仮想ポートと、
を作成する。
[0097]
(処理1-2―12)
 拠点間ネットワーク連携制御装置4の論理ネットワーク拡張部43は、ネットワーク制御装置1A、1Bで作成された仮想ポートの情報を、張出情報保持部41で保持するトンネル用仮想ポート情報(図6C)に登録する。図6Cを参照すると、トンネル用仮想ポート情報は、
・張出ID、
・拠点ID、
・トンネル用仮想ポートID、
を一エントリとして有する。
[0098]
(処理1-2―13)
 その後、拠点間ネットワーク連携制御装置4のトンネル制御部44(図3)は、拠点A、Bのトンネル装置2A、2B上で、それぞれの仮想ネットワーク5A、5Bに接続するポート(例えばトンネル装置2A、2Bを構成するルータ(スイッチ)等の物理ポート又は、ルータ等をサーバ上に仮想化した場合の仮想ポート)を作成し、これらのポート間をトンネル接続させる。
 その結果、図2の仮想ネットワーク5A、5Bは、トンネル用の仮想ポート53A、51B、トンネル7を介して通信接続される。
[0099]
(処理1-2―14)
 拠点A、Bのトンネル装置2A、2B上に作成したポートの情報は、仮想マシンの場合と同様に、トンネル装置2A、2Bあるいは、拠点間ネットワーク連携制御装置4のトンネル制御部44から、それぞれの拠点A、Bのネットワーク制御装置1A、1Bに通知される。
 ネットワーク制御装置1A、1Bに対する通知の内容は、
・図4Cのポート情報(拠点A)の仮想ポートID:0x3のエントリの情報(スイッチ識別情報とポート番号)と、
・図5Cのポート情報(拠点B)の仮想ポートID:0x1のエントリの情報(スイッチ識別情報とポート番号)と、
する。
[0100]
(処理1-2―15)
 ネットワーク制御装置1A、1Bは、上記(処理1-1―7)の処理(それぞれ上記ポートを同じ仮想ネットワークに属するポート間と接続できるように、不図示のネットワーク機器を設定する処理)を実行する。
 これにより、各拠点A、Bの同じ仮想ネットワーク5A、5Bに属するポート間で接続可能とする。ここまでの処理によって、拠点A、B間で仮想ネットワークが張出される(拠点Aから拠点Bへの張出:仮想ネットワーク5は張出元仮想ネットワーク、仮想ネットワーク5Bは張出先仮想ネットワーク)。
[0101]
(処理1-2―16)
 拠点間ネットワーク連携制御装置4は、仮想ネットワークの張出処理を行った後に、仮想ポートの張出処理を行う。
[0102]
 まず、張出要求に含まれる拠点Aの仮想ポートに対応する拠点Bの仮想ポートの作成をネットワーク制御装置1Bに要求する。このとき、拠点Bの仮想ポートは、張出先仮想ネットワーク5Bに所属させる。ネットワーク制御装置1Bの論理構成保持部11Bは、例えば図5Bに示す仮想ポート情報において、ID=0x2の仮想ポート情報を生成・保持し、作成した仮想ポートのIDを、拠点間ネットワーク連携制御装置4に返す。
[0103]
 この応答を受けて、拠点間ネットワーク連携制御装置4では、張出情報保持部41に、図6Bに示すような張出仮想ポート情報を保持する(
・張出ID:A1B1、
・張出元拠点ID:A、
・張出元仮想ポートID:0x2、
・張出先拠点ID:B、
・張出先仮想ポートID:0x2)。
[0104]
(処理1-2―17)
 その後、拠点間ネットワーク連携制御装置4の張出要求処理部42は、張出要求に含まれているポート情報を、張出先の仮想ポート、すなわち図5Bに示すポート情報(ID=0x2)と関連付けて、ネットワーク制御装置1Bの物理構成検知部12Bへ通知する。物理構成検知部12B、及びネットワーク機器設定部13Aは、上記(1-1―7)の処理(不図示のネットワーク機器を設定する処理)を実行する。
[0105]
(処理1-2―18)
 これによって、張出要求処理が完了し、例えば図2において、拠点Aの仮想マシン31Aと拠点Bの仮想マシン31Bとが、仮想ポート51A、仮想ネットワーク5A、トンネル装置2Aの仮想ポート53A、拠点Bのトンネル装置2Bの仮想ポート51B、仮想ネットワーク5A、仮想ポート52Bを介して通信可能となる。
[0106]
(動作1-3:張出解除)
 次に、仮想マシン31B(図2、図3参照)の削除に伴う仮想ネットワークの張出解除処理について説明する。
[0107]
(処理1-3―1)
 仮想マシン31B及びそのポートが削除されると、図3のVM制御装置6から仮想マシン31Bのポート情報の削除通知が、ネットワーク制御装置1Aへ送られる。ネットワーク制御装置1Aでは、仮想ポートID=0x2のポート情報が、図6Bに示す張出仮想ポート情報にないことから、他拠点であると判定し、拠点間ネットワーク連携制御装置4に対して図7Cに示す張出解除要求を送出する。
 張出解除要求は、
・張出元ネットワーク制御装置識別子、
・張出元仮想ネットワークID、
・張出元仮想ポートID、
を含む。
[0108]
(処理1-3―2)
 拠点間ネットワーク連携制御装置4において、張出要求処理部42は、張出解除要求(図7C)を受け、張出情報保持部41を参照し、ネットワーク制御装置と拠点情報から張出元の拠点IDを取得し、さらに、図6Bの張出仮想ポート情報から、張出先拠点ID及び張出先仮想ポートIDを取得する。これらの情報に基づき、張出要求処理部42は、ネットワーク制御装置1Bへ、張出先仮想ポートについてポート情報の削除通知を出力する。
[0109]
(処理1-3―3)
 拠点Bのネットワーク制御装置1Bの物理構成検知部12B(図3)では、この仮想ポートIDから、論理構成保持部11Bに格納されたポート情報(図5Cの仮想ポートID:0x2のエントリ)を取得し、ネットワーク機器設定部13Bから、ネットワーク機器に対して接続設定を解除する。論理構成保持部11Bに格納されていた当該ポート情報(図5Cの仮想ポートID:0x2のエントリ)が削除される。
[0110]
(処理1-3―4)
 続いて、拠点間ネットワーク連携制御装置4の論理ネットワーク拡張部43(図3)は、ネットワーク制御装置1Bに対して拠点Bへ張り出した仮想ポート(ID=0x2)の削除要求を送出する。ネットワーク制御装置1Bにおいて、論理構成保持部11Bから、仮想ポート(仮想ポートID:0x2)のエントリが削除される。
[0111]
(処理1-3―5)
 その後、拠点間ネットワーク連携制御装置4の張出要求処理部42(図3)は、拠点Aの仮想ネットワーク5A(ID:0x1)から拠点Bの仮想ネットワーク5B(ID:0x1)へ張り出している仮想ポートがないことを判定し、仮想ネットワークの張出解除を行う。具体的には、張出情報保持部41で保持されている張出仮想ポート情報(図6B)に、張出IDがA1B1となるエントリがあるか否かで判定することができる。
[0112]
(処理1-3―6)
 まず、拠点間ネットワーク連携制御装置4のトンネル制御部44は、トンネル接続を解除し、トンネル用の仮想ポート(図2の53A、51B)を削除する。
[0113]
(処理1-3―7)
 さらに、トンネル制御部44は、張出情報保持部41で保持されるトンネル用仮想ポート情報(図6C)から、各拠点におけるトンネル用の仮想ポートIDを取得し、ネットワーク制御装置1A、1Bに対して、トンネル用仮想ポートのポート情報の削除通知を送出する。
[0114]
(処理1-3―8)
 ネットワーク制御装置1A、1Bでは、それぞれのトンネルポート用の仮想ポートIDについて、上記(処理1-2 張出)の16)と同様の処理(論理構成保持部11A、11Bへの仮想ポート情報の登録、仮想ポートIDの返却)が行われる。
[0115]
(処理1-3―9)
 続いて、拠点間ネットワーク連携制御装置4の論理ネットワーク拡張部43(図3)から、トンネルポート用の仮想ポートの削除要求を、ネットワーク制御装置1A、1Bに出力する。それぞれの仮想ポートIDについて、上記4)と同様、論理構成保持部11A、11Bから、仮想ポート(仮想ポートID:0x2)のエントリが削除される。
[0116]
(処理1-3―10)
 その後、拠点間ネットワーク連携制御装置4において、張出情報保持部41から、
図6Cのトンネル用仮想ポート情報、及び、
図6Aの張出仮想ネットワーク情報、が削除される。
[0117]
(処理1-3―11)
 仮想マシン制御装置6(図3)がネットワーク制御装置1Aへ仮想ポートの削除要求を送出する。ネットワーク制御装置1Aの論理構成保持部11Aから、図4Bの仮想ポート情報(拠点)から、仮想ポートID:0x2のエントリ(仮想ポート情報)が削除される。
[0118]
(作用効果)
 以上のように、第1の実施形態によれば、仮想ネットワークが拠点を跨る場合であっても、張出元の前記ネットワーク制御装置(例えば1A)に対して行われる論理的な操作のみで、それぞれの拠点及び拠点間のネットワークを自動的に構成し、定義された接続性を実現できる。
[0119]
 さらに、第1の実施形態によれば、張出先における仮想ネットワーク及び仮想ポートは、拠点間ネットワーク連携制御装置4によって新たに定義され、その対応関係を拠点間ネットワーク連携制御装置4で保持している。このため、拠点毎の仮想ネットワーク技術やID空間を分けることができる。したがって、ネットワーク制御装置1A/1Bは既存の構成から大幅に変更する必要がない。
[0120]
[第2の実施形態]
 次に、本発明の第2の実施形態について説明する。第2の実施形態では、仮想ポートとポートのマッピングを、物理ポートの付加情報としてユーザから仮想マシンサーバ上に登録し、ネットワーク制御装置がエージェントにより情報を収集する。このため、拠点を跨いだ仮想マシンの配置の際に、ポート情報を受け取る拠点が前記第1の実施形態とは異なる。例えば、前記第1の実施形態では、拠点Aで受け取っていたポート情報を、第2の実施形態では、拠点Bで受け取る。
[0121]
(構成)
 図8は、第2の実施形態の構成を例示する図である。図8を参照すると、第2の実施形態は、図3に示した前記第1の実施形態の構成に対して、仮想マシンサーバ3A、3B上で動作するネットワーク制御エージェント32A、32Bを加えた構成とされる。また、仮想マシン31A、31Bでは、仮想ポートとポートのマッピングを保持する。
[0122]
(データ構造)
 第2の実施形態におけるデータ構造は、図4A乃至図7Cに示した前記第1の実施形態と同じである。このため説明は省略する。
[0123]
(動作2-1: 拠点内での接続)
 次に、図8と、図2、図4A乃至図7Cを参照して、拠点Aから拠点Bへの仮想ネットワークの張出を例に、第2の実施形態の動作の一例を詳細に説明する。
[0124]
(処理2-1―1)
 まず、ユーザからの要求により、拠点Aのネットワーク制御装置1A(図8)にて仮想ネットワーク5A及び仮想ポート51A(図2)を作成し、ネットワーク制御装置1Aの論理構成保持部11Aに、作成した仮想ネットワーク5A及び仮想ポート51Aの情報を登録する。登録された値は、それぞれ、図4Aの仮想ネットワーク(ID:0x1)と、図4Bの仮想ポート(仮想ポートID:0x1、名称:Port 51A、仮想ネットワークID:1)のエントリとなる。
[0125]
 続いて、ユーザ(不図示)は、仮想マシン制御装置6(VM制御装置)に対して、拠点Aにおける仮想マシン31Aの作成を要求する。このとき、仮想マシン31AのNICとして仮想ポート51A(ID:0x1)を指定する。
[0126]
(処理2-1―2)
 続いて、仮想マシン31Aを作成するVM制御装置6、仮想マシンサーバ3Aに、仮想マシン31Aのポート情報(図4C)、仮想ネットワークID(図4A)、仮想ポートID(図4B)、ネットワーク制御装置の識別子(図7A)を保持させる。
[0127]
 これらの情報を、ネットワーク制御エージェント32Aが検知し、ネットワーク制御装置1Aの物理情報検知部12Aへ通知する。仮想ポート(ID:0x1)のポート情報は、図4Cに示すように、スイッチ識別情報が0xa001、ポート番号が1とする。
[0128]
(処理2-1―3)
 ネットワーク制御装置1Aでは、ネットワーク制御エージェント32Aからの通知を物理構成検知部12A(図8)が処理する。物理構成検知部12Aは、ネットワーク制御エージェント32Aからの当該通知から、対象の仮想ポートが自拠点のものであるか否かを判定する。具体的には、ネットワーク制御装置識別子(図7A)を取り出し、ネットワーク制御装置1Aの識別子と比較する。
[0129]
(処理2-1―4) 
 上記判定の結果、自拠点と判定され、物理構成検知部12Aからネットワーク機器設定部13Aへ処理が移る。
[0130]
(処理2-1―5)
 前記第1の実施形態の(前記した(動作1-1:拠点内の接続)の1-1-7)と同様に、ネットワーク機器設定部13Aは、上記ポートを同じ仮想ネットワーク5Aに属するポート間とのみ接続できるようにネットワーク機器(スイッチ等)を設定する。
[0131]
(動作2-2: 張出)
(処理2-2―1)
 その後、拠点Bに配置される仮想マシン31Bを接続するため、ユーザがネットワーク制御装置1Aに対し、仮想ネットワーク5Aに属する仮想ポート52A(図2)を作成する。
[0132]
(処理2-2―2)
 続いて、仮想マシン31Bを作成するVM制御装置6が仮想マシンサーバ3Bに仮想マシン31Bのポート情報及び仮想ネットワークID、仮想ポートID、ネットワーク制御装置識別子を保持させる。
[0133]
(処理2-2―3)
 これらの情報を、ネットワーク制御エージェント32Bが検知し、ネットワーク制御装置1Bの物理情報検知部12B(図8)へ通知する。仮想ポート(ID=0x1)のポート情報は、図7Bに示す通り、スイッチ識別情報(スイッチ識別子)が0xb002、ポート番号(ポート情報)が2、ネットワーク制御装置識別子が10.10.0.2とする。
[0134]
(処理2-2―4) 
 ネットワーク制御装置1Bの物理構成検知部12B(図8)は、ネットワーク制御エージェント32Bから通知された情報のネットワーク制御装置識別子から、対象の仮想ポートが自拠点か否かを判定する。
 判定の結果、自拠点でないため、物理構成検知部12Bは、張出要求を、拠点間ネットワーク連携制御装置4に通知する。
 張出要求として拠点間ネットワーク連携制御装置4に通知される内容は、図9Aに示す通り、
・張出元のネットワーク制御装置識別子、
・張出先のネットワーク制御装置識別子、
・張出元仮想ネットワークID、
・張出元仮想ポートID、
・ポート情報(スイッチ識別子、ポート番号)、
を含む。
[0135]
(処理2-2―5)
 拠点間ネットワーク連携制御装置4の張出要求処理部42は、物理構成検知部12Bからの張出要求を受け、まず、張出情報保持部41に保持される、ネットワーク制御装置と拠点情報(図7A)、及び、張出要求の張出元及び張出先のネットワーク制御装置識別子から、張出元及び張出先のそれぞれの拠点IDを取得する。
[0136]
(処理2-2―6)
 続く仮想ネットワークの張出処理は、ポート情報の通知と拠点の判定を、上記 (処理2-1 :拠点内での接続の(処理2-1-2)と(処理2-1-3))と同様に行う。その他は、前記第1の実施形態と同じである。
[0137]
(処理2-2―7)
 その後の仮想ポートの張出処理は、ポート情報の通知・格納方法以外は、前記第1の実施形態と同じである。
[0138]
 第2の実施形態では、拠点間ネットワーク連携制御装置4の張出要求処理部42からネットワーク制御装置1Bの物理構成検知部12Bへのポート情報の通知を行わない。ネットワーク制御装置1Bが張出要求の応答に含まれた拠点Bにおける仮想ポートIDを用いて、ポート情報を論理構成保持部11Bに格納する。
[0139]
 以上により張出要求処理が完了し、仮想マシン31Aと仮想マシン31Bが通信可能となる。
[0140]
(動作2-3: 張出解除)
 次に、第2の実施形態における、仮想マシン31Bの削除に伴う仮想ネットワークの張出解除処理について、図8、図9A、図9Bを参照して説明する。
[0141]
(処理2-3―1) 
 仮想マシン31Bと、仮想マシン31Bが接続するポートが削除されると、仮想マシン制御装置(VM制御装置)6から仮想マシン31Bのポート情報を、仮想マシンサーバ3B上から削除する。
[0142]
(処理2-3―2) 
 ネットワーク制御エージェント32Bは、仮想マシン31Bのポート情報を検知し、ポートの削除通知を、ネットワーク制御装置1Bへ送る。この削除通知には、仮想マシン31Bのポート情報(図4Cのスイッチ識別情報、ポート番号)、張出元仮想ポートID、張出元ネットワーク制御装置識別子(図7B)が含まれる。
[0143]
(処理2-3―3) 
 ネットワーク制御装置1Bは、この削除通知から他拠点であることを判定し、拠点間ネットワーク連携制御装置4に対して、図9Bに示す張出解除要求を送出する。
[0144]
(処理2-3―4)
 拠点間ネットワーク連携制御装置4の張出要求処理部42は、ネットワーク制御エージェント32Bから送信された張出解除要求を受け、張出情報保持部41を参照し、張出先と張出元のネットワーク制御装置識別子と拠点情報から、張出元及び張出先の拠点IDを取得し、さらに、張出仮想ポート情報(図6B)から張出元と張出先の仮想ポートIDを取得する。
[0145]
(処理2-3―5)
 拠点間ネットワーク連携制御装置4の張出要求処理部42は、まず、拠点Bで定義されている張出先仮想ポートID(図6B)をネットワーク制御装置1Bに返す。
[0146]
(処理2-3―6) 
 ネットワーク制御装置1Bは、ネットワーク制御エージェント32Bからのポートの削除通知を、拠点Bで定義されている前記張出先仮想ポートIDに変更し、処理を続ける。
[0147]
(処理2-3―7)
 ネットワーク制御装置1Bのネットワーク機器設定部13Bが、仮想ネットワーク5Bを構成する不図示のネットワーク機器に対して接続設定を解除し、ネットワーク制御装置1Bの論理構成保持部11Bに格納されているポート情報(図5Cの仮想ポートIDが0x2のエントリ)を削除する。
[0148]
(処理2-3―8)
 続いて、拠点間ネットワーク連携制御装置4の張出要求処理部42は、仮想ポートの張出解除処理を行う。
[0149]
(処理2-3―9)
 拠点間ネットワーク連携制御装置4の張出要求処理部42は、ネットワーク制御装置1Bに、仮想ポート(ID=0x2)の削除要求を送出する。
[0150]
(処理2-3―10)
 ネットワーク制御装置1Bでは、論理構成保持部11Bに登録されている仮想ポート情報(図5B)から、仮想ポートID=0x2のエントリが削除される。
[0151]
(処理2-3―11)
 ネットワーク制御装置1Bから応答を受け取った拠点間ネットワーク連携制御装置4の張出要求処理部42は、張出情報保持部41に保持されている張出仮想ポート情報(図6B:張出ID:A1B1、張出先仮想ポートID=0x2のエントリ)を削除する。
[0152]
(処理2-3―12)
 次に、拠点間ネットワーク連携制御装置4の張出要求処理部42は、仮想ネットワークの張出解除処理が必要であるか否かを判定する。
 これは、張出仮想ポート情報(図6B)に、張出IDが“A1B1”であるエントリの有無によって判定することができる。
 この動作例では、張出情報保持部41には、張出仮想ポート情報(張出ID:A1B1、張出先仮想ポートID:0x2のエントリ)は削除済みである。
 すなわち、拠点Aの仮想ネットワーク5A(ID=0x1)から拠点Bの仮想ネットワーク5B(ID=0x1)へ張り出している仮想ポートがないため、張出要求処理部42では、仮想ネットワークの張出解除が必要であると判定される。
[0153]
(処理2-3―13)
 まず、拠点間ネットワーク連携制御装置4のトンネル制御部44が、トンネル装置2A、2B間のトンネル接続を解除し、トンネル用のポートを削除する(例えばトンネル装置を構成するルータ等のトンネル用に開放されていたポートを閉じる)。
[0154]
(処理2-3―14)
 さらに、トンネル制御部44は、張出情報保持部41のトンネル用仮想ポート情報(図6C)から、各拠点A、Bにおけるトンネル用の仮想ポートIDを取得し、ネットワーク制御装置1A、1Bに対して、トンネル用仮想ポート(図2の53A、51B、図6C)について、ポートの削除通知を送出する。
[0155]
(処理2-3―15)
 ネットワーク制御装置1A、1Bでは、ネットワーク機器設定部13A、13Bが、仮想ネットワーク5A、5Bを構成する不図示のネットワーク機器に対して接続設定を解除し、論理構成保持部11A、11Bに格納されたポート情報:
・図4Cのポート情報(拠点A)において、仮想ポートID=0x3のエントリ、及び、
・図5Cのポート情報(拠点B)において、仮想ポートID=0x1のエントリ、
を削除する。
[0156]
(処理2-3―16)
 続いて、拠点間ネットワーク連携制御装置4の論理ネットワーク拡張部43から、トンネルポート用の仮想ポートの削除要求を、ネットワーク制御装置1A、1Bに対して送出する。
[0157]
(処理2-3―17)
 ネットワーク制御装置1A、1Bの論理構成保持部11A、11Bから仮想ポートのエントリ:
・図4Bの仮想ポート情報(拠点A)において、仮想ポートID=0x3のエントリ、及び、
・図5Bの仮想ポート情報(拠点B)において、仮想ポートID=0x1のエントリ、
を削除する。
[0158]
(処理2-3―18)
 その後、拠点間ネットワーク連携制御装置4の張出情報保持部41に保持されている、
・トンネル用仮想ポート情報(図6C)、及び、
・張出仮想ネットワーク情報(図6A)、
が削除される。
[0159]
(処理2-3―19)
 仮想マシン制御装置6は、ネットワーク制御装置1Aに対して仮想ポートの削除要求を送出する。
[0160]
(処理2-3―20)
 ネットワーク制御装置1Aの論理構成保持部11Aに保持されている、仮想ポート情報(拠点A)(図4B)から、
・仮想ポートID=0x2の仮想ポート情報
が削除される。
[0161]
(作用効果)
 以上のように、第2の実施形態によれば、仮想ポートとポートのマッピングを物理ポートの付加情報として、VM制御装置から仮想マシンサーバ上に登録する場合であっても、仮想マシンサーバ上のネットワーク制御エージェントがこれを検知し、ネットワーク制御装置に通知することで、前記第1の実施形態と同様の作用効果を奏する。
[0162]
[第3の実施形態]
 次に、本発明の第3の実施形態について説明する。第3の実施形態では、各拠点の仮想ネットワーク技術にVLANを使用する。VLANの設定は、前記第2の実施形態で説明したネットワーク制御エージェント32によって行われる。
[0163]
(構成)
 図10は、第3の実施形態の構成を例示する図である。図10を参照すると、第3の実施形態では、図8の第2の実施形態の構成から、ネットワーク制御装置において、物理構成検知部12及びNW機器設定部13が削除されており、削除した要素と同様の検知・設定機能が、ネットワーク制御エージェント及びトンネル装置で提供される。
[0164]
(データ構造)
 第3の実施形態におけるデータ構造は、論理構成保持部11Aにおいて、第2の実施形態におけるポート情報がなく、代わりに、図10に示す仮想ネットワーク情報に付属するネットワーク情報を保持する。なお、この例では、他の仮想ネットワークがないため、拠点A及び拠点BにおけるVLAN番号:10がたまたま一致している。但し、拠点A及び拠点BにおけるVLAN番号は必ずしも一致している必要はない。
[0165]
(動作3-1:拠点内での接続)
 次に、第3の実施形態における拠点Aから拠点Bへの仮想ネットワークの張出を例に、動作を詳細に説明する。
[0166]
(処理3-1―1)
 まず、ユーザの要求によりネットワーク制御装置1Aにおいて、仮想ネットワーク5Aが作成される。このとき、論理構成保持部11Aでは、仮想ネットワーク情報の生成と保持に加え、拠点A内でのVLAN番号を生成し、図11Aで示すネットワーク情報(仮想ネットワークIDとVLAN番号)を保持する。
[0167]
(処理3-1―2)
 続いて、ユーザの要求により、ネットワーク制御装置1Aにおいて、仮想ポート51Aが作成される。ユーザは、VM制御装置6に対し、仮想マシン31AのNICとして仮想ポート51Aを指定し、仮想マシン31Aの作成を要求する。
[0168]
(処理3-1―3)
 仮想マシン31Aを作成するVM制御装置6は、仮想マシンサーバ3Aに、仮想マシン31Aのポート情報(図4C参照)及び仮想ネットワークID、仮想ポートID(図4B)、ネットワーク制御装置の識別子(図7A参照)を記憶部に保持させる。
[0169]
(処理3-1―4)
 これらの情報を、ネットワーク制御エージェント32Aが検知し、自拠点Aのネットワーク制御装置1Aに対し、仮想ネットワーク5Aが使用するVLAN番号を問い合わせる。
[0170]
(処理3-1―5)
 ネットワーク制御装置1Aでは、ネットワーク制御装置の識別子が自装置のIDと一致するため、自拠点Aで定義された仮想ネットワークと判断した上で、図11Aに示したネットワーク情報(仮想ネットワークID、VLAN番号)を参照し、この仮想ネットワークに割り当てた、
VLAN番号:10
をネットワーク制御エージェント32Aへ回答する。
[0171]
(処理3-1―6)
 ネットワーク制御エージェント32Aは、この情報をもとに、ポートがVLAN=10に参加するように、仮想マシンサーバ又は仮想マシンサーバ上の仮想スイッチを設定する。これによって、このポートはVLAN=10に属する他のポートとのみ接続できるようになる。
[0172]
(動作3-2: 張出)
(処理3-2―1)
 その後、拠点Bに配置される仮想マシン31Bを接続するため、ユーザがネットワーク制御装置1Aに対し、仮想ネットワーク5Aに属する仮想ポート52A(ID=0x2)を作成する。
[0173]
(処理3-2―2)
 続いて、仮想マシン31Bを作成するVM制御装置が仮想マシンサーバ3Bに、仮想マシン31Bのポートに関連付ける形で、
・仮想ネットワークID、
・仮想ポートID、
・ネットワーク制御装置1Aの識別子(10.10.0.2)、
を保持させる。
[0174]
(処理3-2―3)
 これらの情報をネットワーク制御エージェント32Aが検知し、自拠点のネットワーク制御装置1Bに対し、この仮想ネットワークが使用するVLAN番号を問い合わせる。
[0175]
(処理3-2―4)
 ネットワーク制御エージェント32Aからの問い合わせに対して、ネットワーク制御装置1Bでは、ネットワーク制御装置の識別子(10.10.0.2)が、自身の識別子(10.11.0.2)と一致しないため、他拠点で定義された仮想ネットワークと判断する。ネットワーク制御装置1Bは、拠点間ネットワーク連携制御装置4に、図11Bで示す張出要求を通知する。
[0176]
(処理3-2―5)
 拠点間ネットワーク連携制御装置4の張出要求処理部42は、ネットワーク制御装置1Bからの張出要求(図11B)を受け、まず、張出情報保持部41のネットワーク制御装置と拠点情報(図7A)と、張出要求(図11B)の張出元及び張出先のネットワーク制御装置識別子から、それぞれの拠点IDを取得する。
[0177]
(処理3-2―6)
 続く仮想ネットワークの張出処理では、前記第1の実施形態の(動作1-2:張出の1-2-12)の処理の後、拠点間ネットワーク連携制御装置4のトンネル制御部44が、各拠点のトンネル装置2A、2B上でそれぞれの仮想ネットワーク5A、5Bに接続するポートを作成し、このポート間をトンネル接続させる。
[0178]
 ネットワークの設定方法として、例えば次のA)、B)の2つがある。
[0179]
 A)作成したポートをそれぞれの属する仮想ネットワークに合わせ、VLAN=10の設定を行う。
[0180]
 B)仮想マシン制御装置6と同様に作成したポートに関する情報を、トンネル装置2A、2Bに保持させ、ネットワーク制御エージェント32A、32Bにより検知・設定させる。
[0181]
(処理3-2―7)
 その後の仮想ポートの張出処理では、前記第1の実施形態の(動作1-2: 張出の1-2-16)の処理を実行する。この結果得られた拠点Bにおける仮想ポートID(0x2)を張出要求の応答として、ネットワーク制御装置1Bへ返す。
[0182]
(処理3-2―8)
 ネットワーク制御装置1Bは、この仮想ポートIDから仮想ネットワークID及びVLAN番号を得て、ネットワーク制御エージェント32Aからの問い合わせ(動作3-1 :拠点内での接続の(処理3-1-3)に回答する。
[0183]
(処理3-2―9)
 ネットワーク制御エージェント32Aでは、(動作3-1:拠点内での接続の(処理3-1-3)と同様に、仮想マシンサーバ又は仮想マシンサーバ上の仮想スイッチを設定する処理を行う。
[0184]
(処理3-2―10)
 これによって張出要求処理が完了し、仮想マシン31Aと仮想マシン31Bが通信可能となる。
[0185]
(動作3-3: 張出解除)
 仮想マシン31Bの削除に伴う仮想ネットワークの張出解除の処理は、前記第2の実施形態の(動作2-3: 張出解除)と同じである。このため説明は省略する。
[0186]
(作用効果)
 以上のように、第3の実施形態によれば、VLANによるネットワーク仮想化技術を使用した場合においても本特許を適応し、前記した第1及び第2の実施形態と同じ効果が得られる。
[0187]
 なお、上記の特許文献及び非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。

符号の説明

[0188]
1、1A、1B ネットワーク制御装置
11、11A、11B 論理構成保持部
12、12A、12B 物理構成検知部
13、12A、13B ネットワーク機器設定部
2、2A、2B トンネル装置
3、3A、3B 仮想マシンサーバ
31、31A、31B 仮想マシン
32、32A、32B ネットワーク制御エージェント
4 拠点間ネットワーク連携制御部
41 張出情報保持部
42 張出要求処理部
43 論理ネットワーク拡張部
44 トンネル制御部
5、5A、5B 仮想ネットワーク
51、51A、51B、52、52A、52B、53、53A、53B、 仮想ポート
6 仮想マシン制御装置(VM制御装置)
7 トンネル

請求の範囲

[請求項1]
 各拠点が、
 仮想ネットワークサービスを提供するネットワーク制御装置と、
 他拠点の対応するトンネル装置との間で、拠点間のトンネリングを行うトンネル装置と、
 を含み、
 少なくとも仮想ネットワークの張出元の拠点の前記ネットワーク制御装置と張出先の拠点の前記ネットワーク制御装置に接続する拠点間ネットワーク連携制御装置を備え、
 仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つを含むネットワーク構成の操作に応じて、前記張出元の拠点又は前記張出先の拠点の前記ネットワーク制御装置が、拠点間を跨ぐ仮想ネットワークの張り出しを検知すると、張出要求を、前記拠点間ネットワーク連携制御装置に通知し、
 前記拠点間ネットワーク連携制御装置は、前記張出要求を受け、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要な、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、さらに、前記拠点間ネットワーク連携制御装置は、拠点間のトンネル用の仮想ポートの作成指示を、前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知し、
 前記張出元の拠点と前記張出先の拠点の仮想ネットワークは、それぞれの拠点の前記トンネル装置に作成された前記拠点間のトンネル用の仮想ポート、及び、前記拠点間のトンネルを介して通信接続する、ことを特徴とするネットワークシステム。
[請求項2]
 前記拠点間ネットワーク連携制御装置は、
 前記ネットワーク制御装置から、前記張出要求、又は、前記拠点間を跨ぐ仮想ネットワークの張り出しに関する張出解除要求を受け、前記拠点間を跨ぐ仮想ネットワークの張り出しの処理又は張出解除の処理を行う張出要求処理部と、
 各拠点における前記仮想ネットワークに接続するポートであって、前記ポート間でトンネルを接続させる前記ポートを、前記トンネル装置上に作成又は削除する制御を行うトンネル制御部と、
 前記張り出した仮想ネットワークと仮想ポートを少なくとも含む張出情報を保持する張出情報保持部と、
 前記張出先の拠点の前記ネットワーク制御装置に対して、仮想ネットワークの作成、及び、トンネル用の仮想ポートの作成又は削除を指示し、前記張出情報保持部において前記張り出した仮想ネットワークと仮想ポートの情報の登録又は削除を行う論理ネットワーク拡張部と、
 を備えている、ことを特徴とする請求項1記載のネットワークシステム。
[請求項3]
 前記ネットワーク制御装置は、
 前記仮想ネットワークと前記仮想ポートの所属に関する情報を保持する論理構成保持部と、
 前記ネットワーク構成に関する操作が、自拠点内での処理であるか否かを、前記論理構成保持部に保持される情報を参照して、判別し、他拠点への仮想ネットワークの張出処理である場合、前記張出要求を、前記拠点間ネットワーク連携制御装置に通知する構成検知部と、
 拠点内のネットワーク機器を設定するネットワーク機器設定部と、
 を備えている、ことを特徴とする請求項2記載のネットワークシステム。
[請求項4]
 前記ネットワーク制御装置は、他拠点で設定された仮想ポート又は他拠点で制御されるポートに関する構成情報を、前記構成検知部で検知すると、前記拠点間ネットワーク連携制御装置に対して張出要求を通知し、
 前記拠点間ネットワーク連携制御装置において、前記ネットワーク制御装置からの前記張出要求を受けた前記張出要求処理部は、張出先の拠点を特定し、前記張出情報保持部に、前記張出先の拠点の前記ネットワーク制御装置において対応する仮想ネットワークが作成されているか問い合わせ、前記仮想ネットワークが作成されていない場合には、前記論理ネットワーク拡張部は、張出先の拠点の前記ネットワーク制御装置に対して仮想ネットワークの作成、仮想ネットワークを接続するためのトンネル用の仮想ポートの作成を指示し、
 前記拠点間ネットワーク連携制御装置は、さらに、前記仮想ネットワークの張出後に、前記張出要求に含まれる張出元拠点の仮想ポートに対応する前記張出先の拠点の仮想ポートの作成を前記張出先のネットワーク制御装置に要求し、前記張出元拠点の仮想ポートのポート情報を、前記張出先の拠点で作成した前記仮想ポートに関連付ける、ことを特徴とする請求項3記載のネットワークシステム。
[請求項5]
 拠点で作成された仮想ネットワーク、及び/又は仮想ポートの情報を取得して対応するネットワーク制御装置に通知するネットワーク制御エージェントをさらに備えている、ことを特徴とする請求項3又は4記載のネットワークシステム。
[請求項6]
 拠点で作成された仮想ネットワーク、及び/又は仮想ポートの情報を取得して対応するネットワーク制御装置に通知するネットワーク制御エージェントを備え、
 前記ネットワーク制御装置は、仮想ネットワークと仮想ポートの所属に関する情報を保持する論理構成保持部を備え、
 前記ネットワーク制御エージェントは、他の拠点に関する構成情報を、前記拠点間ネットワーク連携制御装置へ通知する処理、及び、拠点内のネットワーク機器を設定する処理を行う、ことを特徴とする請求項2記載のネットワークシステム。
[請求項7]
 各々が、仮想ネットワークサービスを提供するネットワーク制御装置と、他拠点の対応するトンネル装置との間で拠点間のトンネリングを行うトンネル装置と、を少なくとも含む拠点に関して、少なくとも仮想ネットワークの張出元の拠点と張出先の拠点の前記ネットワーク制御装置と接続する拠点間ネットワーク連携制御装置を設け、
 仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つを含むネットワーク構成の操作に応じて、前記張出元の拠点の前記ネットワーク制御装置にて、拠点間を跨ぐ仮想ネットワークの張り出しを検知すると、張出要求を、前記拠点間ネットワーク連携制御装置に通知し、
 前記拠点間ネットワーク連携制御装置では、前記張出要求に基づき、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要な、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、拠点間のトンネル用の仮想ポートの作成指示を前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知し、
 張出元の拠点と張出先の拠点の仮想ネットワークを、それぞれの拠点の前記トンネル装置に作成された前記拠点間のトンネル用の仮想ポート、及び、前記拠点間のトンネルを介して通信接続する、ことを特徴とするネットワーク制御方法。
[請求項8]
 少なくとも仮想ネットワークの張出元と張出先の各拠点のネットワーク制御装置と接続し、
 仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つを含むネットワーク構成の操作に応じて、拠点間を跨ぐ仮想ネットワークの張り出しを検知した前記張出元の拠点又は前記張出先の拠点の前記ネットワーク制御装置からの張出要求に基づき、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要と判断された、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、拠点間のトンネル用の仮想ポートの作成指示を前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知する手段を備えている、ことを特徴とする拠点間ネットワーク連携制御装置。
[請求項9]
 複数の拠点の各々に設けられ、仮想ネットワークサービスを提供するネットワーク制御装置であって、他の拠点の前記ネットワーク制御装置とは拠点間ネットワーク連携制御装置を介して接続され、
 仮想ネットワークと仮想ポートの所属に関する情報を保持する論理構成保持部と、
 他の拠点に関する構成情報を、前記拠点間ネットワーク連携制御装置へ通知する構成検知部と、
 拠点内のネットワーク機器を設定するネットワーク機器設定部と、
 を備えている、ことを特徴とするネットワーク制御装置。
[請求項10]
 拠点間に接続され、前記各拠点のネットワーク制御装置と接続する拠点間ネットワーク連携制御装置を構成するコンピュータに、
 仮想ネットワークと、仮想ネットワークの論理構成上のポートである仮想ポートの少なくとも一つを含むネットワーク構成の操作に応じて、拠点間を跨ぐ仮想ネットワークの張り出しを検出した張出元の拠点の前記ネットワーク制御装置からの張出要求を受け、拠点間を跨ぐ仮想ネットワークの張り出しの設定に必要と判断された、前記張出先の拠点における仮想ネットワークの作成指示を、前記張出先の拠点の前記ネットワーク制御装置に通知し、拠点間のトンネル用の仮想ポートの作成指示を前記張出先の拠点と前記張出元の拠点の前記ネットワーク制御装置に通知する処理を実行させるプログラム。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4A]

[ 図 4B]

[ 図 4C]

[ 図 5A]

[ 図 5B]

[ 図 5C]

[ 図 6A]

[ 図 6B]

[ 図 6C]

[ 図 7A]

[ 図 7B]

[ 図 7C]

[ 図 8]

[ 図 9A]

[ 図 9B]

[ 図 10]

[ 図 11A]

[ 図 11B]

[ 図 12]

[ 図 13]