(57)【要約】  仮想ネットワークを構築するために、パケットのカプセル化等の通信処理が要求される場合がある。仮想ネットワークを利用する場合、仮想ネットワーク構築のための追加的な通信処理のため、物理ネットワークを直接利用する場合と比較して、通信性能や通信品質が劣る可能性がある。本発明による通信システムは、ユーザに割り当てられる計算資源と、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段と、を含むことを特徴とする。
2014112585.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに割り当てられる計算資源と、
前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段と、
を備える、通信システム。
【請求項２】
前記割当手段は、前記複数の通信方式のうちの前記要求条件を満たす通信方式を前記計算資源に割り当てる、
請求項１に記載の通信システム。
【請求項３】
前記複数の通信方式に対応するネットワークは、第１のネットワークと、前記第１のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第２のネットワークを含み、
前記割当手段は、前記第２のネットワークに対応する通信方式が前記要求条件を満たさない場合、前記第１のネットワークに対応する通信方式を前記計算資源に割り当てる、
請求項１または２に記載の通信システム。
【請求項４】
前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
前記割当手段は、前記物理ネットワークに対応する通信方式が前記要求条件を満たさない場合、前記仮想ネットワークに対応する通信方式を前記計算資源に割り当てる、
請求項１乃至３のいずれか１項に記載の通信システム。
【請求項５】
前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項１乃至４のいずれか１項に記載の通信システム。
【請求項６】
前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項１乃至５のいずれか１項に記載の通信システム。
【請求項７】
前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項１乃至６のいずれか１項に記載の通信システム。
【請求項８】
前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する、
請求項１乃至７のいずれか１項に記載の通信システム。
【請求項９】
前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する、
請求項１乃至８のいずれか１項に記載の通信システム。
【請求項１０】
前記通信システムは、
前記計算資源に割り当てる通信方式を決定し、決定した通信方式を前記割当手段に通知する制御装置を備え、
前記割当手段は、前記通知に従って、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項１乃至９のいずれか１項に記載の通信システム。
【請求項１１】
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する識別手段と、
前記要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる制御手段と、
を備える、ノード。
【請求項１２】
前記制御手段は、前記複数の通信方式のうちの前記要求条件を満たす通信方式を前記計算資源に割り当てる、
請求項１１に記載のノード。
【請求項１３】
前記複数の通信方式に対応するネットワークは、第１のネットワークと、前記第１のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第２のネットワークを含み、
前記制御手段は、前記第２のネットワークに対応する通信方式が前記要求条件を満たさない場合、前記第１のネットワークに対応する通信方式を前記計算資源に割り当てる、
請求項１１または１２に記載のノード。
【請求項１４】
前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
前記制御手段は、前記仮想ネットワークに対応する通信方式が前記要求条件を満たさない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てる、
請求項１１乃至１３のいずれか１項に記載のノード。
【請求項１５】
前記制御手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項１１乃至１４のいずれか１項に記載のノード。
【請求項１６】
前記制御手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項１１乃至１５のいずれか１項に記載のノード。
【請求項１７】
前記制御手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項１１乃至１６のいずれか１項に記載のノード。
【請求項１８】
前記制御手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する、
請求項１１乃至１７のいずれか１項に記載のノード。
【請求項１９】
前記制御手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する、
請求項１１乃至１８のいずれか１項に記載のノード。
【請求項２０】
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段と、
前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する通知手段と、
を備える、制御装置。
【請求項２１】
前記割当手段は、前記複数の通信方式のうちの前記要求条件を満たす通信方式を前記計算資源に割り当てる、
請求項２０に記載の制御装置。
【請求項２２】
前記複数の通信方式に対応するネットワークは、第１のネットワークと、前記第１のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第２のネットワークを含み、
前記割当手段は、前記第２のネットワークに対応する通信方式が前記要求条件を満たさない場合、前記第１のネットワークに対応する通信方式を前記計算資源に割り当てる、
請求項２０または２１に記載の制御装置。
【請求項２３】
前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
前記割当手段は、前記仮想ネットワークに対応する通信方式が前記要求条件を満たさない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てる、
請求項２０乃至２２のいずれか１項に記載の制御装置。
【請求項２４】
前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項２０乃至２３のいずれか１項に記載の制御装置。
【請求項２５】
前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項２０乃至２４のいずれか１項に記載の制御装置。
【請求項２６】
前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる、
請求項２０乃至２５のいずれか１項に記載の制御装置。
【請求項２７】
前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する、
請求項２０乃至２６のいずれか１項に記載の制御装置。
【請求項２８】
前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する、
請求項２０乃至２７のいずれか１項に記載の制御装置。
【請求項２９】
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別するステップと、
前記要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てるステップと、
を含む、通信方法。
【請求項３０】
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てるステップと、
前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知するステップと、
を含む、通信方法。
【請求項３１】
ユーザに割り当てられる計算資源に接続するノードに対して、
前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する処理と、
前記要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる処理と、
を実行させる、プログラム。
【請求項３２】
ノードの制御を行う制御装置に対して、
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる処理と、
前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する処理と、
を実行させる、プログラム。
【請求項３３】
ユーザに割り当てられる計算資源に接続するノードと、
前記ノードによる通信を制御する制御装置と、を備え、
前記制御装置は、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段と、
前記割り当てた通信方式を前記ノードに通知する通知手段と、
を有する、通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願についての記載）
本発明は、日本国特許出願：特願２０１３−００７２３８（２０１３年１月１８日出願）の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、通信システム、ノード、制御装置、通信方法およびプログラムに関し、受信するパケットの処理を行う通信システム、ノード、制御装置、通信方法およびプログラムに関する。
【背景技術】
【０００２】
近年、物理ネットワーク上に互いに隔離された複数のネットワークを論理的に構成する技術が提案されている。以下では、論理的に構成されたネットワークのことを、仮想ネットワーク（virtual network）と呼称する。また、あるネットワークＡ上に仮想ネットワークＢを構築する場合、ネットワークＡはアンダーレイネットワーク（Underlay Network）、仮想ネットワークＢはオーバレイネットワーク（Overlay Network）と呼称されることもある。【０００３】
特許文献１には、ＶＬＡＮ（Virtual Local Area Network）により、データセンタ（ＤＣ：Data Center）に仮想ネットワークを構築する技術が記載されている。例えば、特許文献１では、データセンタ（ＤＣ）に顧客毎の仮想テナントを構築するために、ＶＬＡＮを用いて仮想テナント毎のネットワークセグメントが作成される。【０００４】
特許文献２には、コンピュータシステムにおいて、サービス提供サーバの負荷分散を行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】ＷＯ２０１２／０３５８６１  Ａ１
【特許文献２】特開２０１１−１７０７１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
仮想ネットワークを構築するために、パケットのカプセル化等の通信処理が要求される場合がある。仮想ネットワークを利用する場合、仮想ネットワーク構築のための追加的な通信処理のため、物理ネットワークを直接利用する場合と比較して、通信性能や通信品質が劣る可能性がある。【０００７】
特許文献１では、仮想ネットワークを構築するためにＶＬＡＮを用いることが開示されているが、仮想ネットワークの構築による通信性能や通信品質低下を抑止する技術は開示がない。【０００８】
特許文献２には、サービス提供サーバの負荷分散を行う技術が開示されているが、仮想ネットワークの構築による通信性能や通信品質低下を抑止する技術は開示がない。【０００９】
本発明の目的は、上述した課題を解決することが可能な、通信システム、ノード、制御装置、通信方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
本発明による通信システムは、ユーザに割り当てられる計算資源と、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段とを備える。【００１１】
本発明によるノードは、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する識別手段と、前記要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段とを備える。【００１２】
本発明による制御装置は、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段と、前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する通知手段とを備える。【００１３】
本発明による通信方法は、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別するステップと、前記要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てるステップとを含む。【００１４】
本発明による通信方法は、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てるステップと、前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知するステップとを含む。【００１５】
本発明によるプログラムは、ユーザに割り当てられる計算資源に接続するノードに対して、前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件を識別する処理と、前記要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる処理とを実行させる。【００１６】
本発明によるプログラムは、ノードの制御を行う制御装置に対して、ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる処理と、前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する処理とを実行させる。
【発明の効果】
【００１７】
本発明によれば、ユーザに対して、ユーザの要求条件を満足する性能の通信環境を提供することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】第１の実施形態による通信システムの構成例を示した図である。
【図２】第１の実施形態による通信システムの構成例を示した図である。
【図３】第１の実施形態による割り当て部１が保持する情報の例を示した図である。
【図４】第１の実施形態による計算資源と通信方式の割り当て方の例を示した図である。
【図５】第２の実施形態による通信システムの構成例を示した図である。
【図６】第２の実施形態におけるネットワークと通信方式の対応関係の例を示した図である。
【図７】第２の実施形態による割り当て部１の構成例を示した図である。
【図８】第２の実施形態によるユーザＤＢ１４の例を示した図である。
【図９】第２の実施形態によるポリシＤＢ１３の例を示した図である。
【図１０】第２の実施形態による動作の流れを示すフローチャートである。
【図１１】第３の実施形態による動作の流れを示すフローチャートである。
【図１２】第３の実施形態による動作の流れを示すフローチャートである。
【図１３】第３の実施形態による計算資源と通信方式の割り当て方の例を示した図である。
【図１４】第３の実施形態による動作の流れを示すフローチャートである。
【図１５】第３の実施形態によるユーザＤＢ１４の更新の様子を示した図である。
【図１６】第３の実施形態による計算資源と通信方式の割り当て方の例を示した図である。
【図１７】第３の実施形態による計算資源と通信方式の割り当て方の例を示した図である。
【図１８】第３の実施形態による動作の流れを示すフローチャートである。
【図１９】第４の実施形態による通信システムの構成例を示した図である。
【図２０】第４の実施形態による制御装置４の構成例を示した図である。
【図２１】第４の実施形態によるポリシＤＢ４３の例を示した図である。
【図２２】第４の実施形態によるユーザＤＢ４４の例を示した図である。
【図２３】第４の実施形態によるパケット処理装置５の構成例を示した図である。
【図２４】第４の実施形態によるパケット転送テーブル５３の例を示した図である。
【図２５】第４の実施形態による動作の流れを示すフローチャートである。
【図２６】第５の実施形態による通信システムの構成例を示した図である。
【図２７】第５の実施形態によるＯＦＣ４００の構成例を示した図である。
【図２８】第５の実施形態によるＯＦＳ５００の構成例を示した図である。
【図２９】第５の実施形態によるフローテーブル５０３の例を示した図である。
【図３０】第５の実施形態による動作の流れを示すシーケンスチャートである。
【図３１】第６の実施形態による通信システムの構成例を示した図である。
【図３２】第６の実施形態による通信システムの構成例を示した図である。
【発明を実施するための形態】
【００１９】
以下、図面を参照して本発明の実施形態について詳細に説明する。
【００２０】
［第１の実施形態］
（概要）
本発明の第１の実施形態の概要について説明する。第１の実施形態では、計算資源を介してユーザに提供されるサービスに関する要求条件に基づいて、計算資源に対して、複数の通信方式から少なくとも１つの通信方式を割り当てる。このような処理により、サービスに関する要求条件に応じた通信方式で通信を行うことが可能となる。
【００２１】
（詳細）
以下、本発明の第１の実施形態について説明する。第１の実施形態による通信システムの構成は、例えば、図１に示す通りである。図１によれば、通信システムは、割り当て部１、計算資源２、ネットワーク３を含む。図１の例では、計算資源２は、計算資源２−１、計算資源２−２、計算資源２−３を含む。また、ネットワーク３は、ネットワーク３−１、ネットワーク３−２、ネットワーク３−３を含む。以降、個別の計算資源を区別しない場合には、計算資源２−１、２−２、２−３を計算資源２と総称する。同様に、個別のネットワークを区別しない場合には、ネットワーク３−１、３−２、３−３をネットワーク３と総称する。また、通信システムは、例えば、データセンタ（Data Center）である。
【００２２】
ネットワーク３は、通信方式が異なるネットワークを含む。例えば、ネットワーク３−１とネットワーク３−２とは、それぞれ異なる通信方式のネットワークであってもよい。ここで、通信方式とは、例えば、Ethernet（登録商標）などを始めとする通信プロトコルであってもよい。また、ＶＬＡＮ（Virtual Local Area Network）や、Ｌ２ＴＰ（Layer 2 Tunneling Protocol）、Ethernet IP等の仮想ネットワークを構築する通信プロトコルであってもよい。つまり、通信システムは、複数の通信方式によってネットワーク３を構築可能である。通信システムは、例えば、上述の複数の通信方式によって仮想ネットワーク環境を構築することが可能である。
【００２３】
計算資源２は、例えばサーバやコンピュータ上で行われる処理を行うためのリソースであり、あるユーザに割り当てられているものとする。ユーザは、割り当てられた計算資源２を介してサービスを利用する。図１の例では、ユーザＡは計算資源２−１を、ユーザＢは計算資源２−２を、ユーザＣは計算資源２−３を、それぞれ利用しているものとする。例えば、ユーザは、割り当てられた計算資源２を用いて、あるサービスに対応するアプリケーションを実行することで、サービスを利用することができる。図１の例では、ユーザが計算資源２を用いて利用するサービスに関する通信が、ネットワーク３に対して発生している。
【００２４】
割り当て部１は、計算資源２を介して提供されるサービスに関する要求条件に応じて、複数の通信方式から少なくとも１つの通信方式を計算資源に割り当てる。つまり、割り当て部１は、要求条件に基づいて、通信方式が異なる複数のネットワーク３の少なくとも１つを計算資源に割り当てる。割り当て部１は、例えば、通信システム上に設けられたノードに備えられる。
【００２５】
図２に、割り当て部１の動作の概要を示す。図２の例では、計算資源２−１から通信Ａ、計算資源２−２から通信Ｂ、計算資源２−３から通信Ｃが、それぞれ発生している。図２の例では、割り当て部１は、ユーザＡに対応する計算資源２−１に、ネットワーク３−１に対応する通信方式を割り当てている。計算資源２−１は、割り当てに従い、ネットワーク３−１に対応する通信方式により通信（図２の通信Ａ）を行う。
【００２６】
割り当て部１は、例えば、図３に示すような情報を保持している。図３（Ａ）は、各ユーザに割り当てられた計算資源と、要求条件との対応関係を示している。例えば、ユーザＡに割り当てられた計算資源２−１は、要求条件「Ａ」に対応する。
【００２７】
図３（Ｂ）は、要求条件に応じて割り当てる通信方式を示している。例えば、要求条件「Ａ」に対しては、ネットワーク３−１に対応する通信方式（１）が割り当てられる。
【００２８】
ここで、要求条件とは、例えば、ＳＬＡ（Service Level Agreement）であり、ユーザごとに定められている。ユーザは、例えば、要求条件に対応した料金を通信システムのオペレータに支払うことにより、料金に応じた条件でサービスを受けることができる。具体的には、ユーザに対して保証されている通信帯域やスループット、回線速度、ネットワーク内の平均遅延時間、通信量の上限、ネットワーク内の平均遅延時間、稼働率、パケットロス率などがＳＬＡの例として挙げられる。
【００２９】
なお、割り当て部１は、図３（Ｂ）の例示のように要求条件と通信方式との対応関係に関する情報を保持しなくてもよい。例えば、割り当て部１は、要求条件で要求される性能値（例えば、スループット）と、複数の通信方式の各々に対応する性能値とを比較し、複数の通信方式のうち、要求条件を満たす通信方式を計算資源に割り当てる。例えば、割り当て部１は、要求条件を満たす通信方式のうち、最も良い性能値を達成できる通信方式を計算資源に割り当てる。割り当て部１は、例えば、通信方式毎に、通信帯域やスループット等の性能値を保持しているものとする。
【００３０】
割り当て部１により、例えば、図４に例示したように、計算資源とネットワークとが対応付けられる。例えば、割り当て部１は、計算資源２−１にネットワーク３−１に対応する通信方式（１）を、計算資源２−２にネットワーク３−３に対応する通信方式（３）を、計算資源２−３にネットワーク３−２に対応する通信方式（２）、それぞれ割り当てる。各計算資源は、割り当てられた通信方式に従って通信（図中の通信Ａ、Ｂ、Ｃ）を行う。
【００３１】
以上により、第１の実施形態によれば、サービスの要求条件に応じて適切な通信方式が計算資源に割り当てられるので、ユーザに対して、ユーザの要求条件を満足する性能の通信環境を提供することが可能となる。例えば、本発明は、適切な通信方式が計算資源に割り当てられるので、仮想ネットワークにより通信を行う場合であっても、ユーザの要求条件を満足する仮想ネットワーク環境をユーザに対して提供できる。
【００３２】
［第２の実施形態］
以下、本発明の第２の実施形態について、図面を用いて説明する。第２の実施形態は、割り当て部１が、ネットワーク３の割り当て方に関するポリシを保持している場合の実施形態である。割り当て部１は、ポリシに従って、計算資源に割り当てる通信方式を決定する。
【００３３】
図５は、第２の実施形態の構成例を示した図である。なお、基本的な構成は、実施形態１と同様であるので、同じ符号を付したものについては詳細な説明を省略する。
【００３４】
図５は、割り当て部１、計算資源２、ネットワーク３を含む。計算資源２は、例えば、あるサーバ上で実行されているＶＭ（Virtual Machine）である。図５の例では、計算資源２のそれぞれを用いて、ユーザがアプリケーションを利用しているとする。具体的には、ユーザＡは計算資源２−１を用いて、アプリケーションＡを利用している。同様に、ユーザＢは計算資源２−２を用いてアプリケーションＢを、計算資源２−３を用いてアプリケーションＣを、それぞれ利用している。また、各アプリケーションの利用によって、各計算資源２から、それぞれ通信が発生している。また、第１の実施形態と同様に、ユーザごとに要求条件が定められているものとする。要求条件は、例えば、第１の実施形態で説明されたＳＬＡである。
【００３５】
図６は、ネットワーク３の通信方式の例を示している。図６の例では、ネットワーク３−１の通信方式は、ＶＬＡＮである。同様に、ネットワーク３−２の通信方式はＬ２ＴＰ、ネットワーク３−３の通信方式はEthernet IPである。ネットワーク３は、図６の例に示されるように、それぞれ、ある物理ネットワーク上で仮想的なネットワークを構築する通信方式を採用するものであっても良い。また、ネットワーク３の通信方式としては、様々なトンネリングプロトコルを用いることも可能である。例えば、ＧＲＥ（Generic Routing Encapsulation）や、ＮＶＧＲＥ（Network Virtualization using GRE）、ＩＰｓｅｃ（Security Architecture for Internet Protocol）などを用いても良い。
【００３６】
ネットワーク３の通信方式は、上述した仮想ネットワーク（オーバレイネットワーク）を構築するものに限らず、物理ネットワーク（アンダーレイネットワーク）を構築するものであっても良い。仮想ネットワークでは、物理ネットワークを利用する場合に加えて、上述したような仮想ネットワークを構築する通信方式に従ったパケット処理が必要となる。例えば、ＶＬＡＮでは、パケットに対してＶＬＡＮタグを付与する処理が必要となる。また、ＧＲＥでは、パケットに対してカプセル化を行う必要がある。一方、物理ネットワークでは、仮想ネットワークを構築するために要求されるパケット処理が不要となるため、計算資源による通信に対するオーバヘッドがない。このように、仮想ネットワークを用いる場合には、上述したような追加的な処理によるオーバヘッドが発生するために、仮想ネットワークに対応する通信方式では、要求条件を満たせない可能性があり得る。割り当て部１は、例えば、仮想ネットワークに対応する通信方式では要求条件が満たせない場合、計算資源に対して物理ネットワークに対応する通信方式を割り当てる。
【００３７】
図７は、第２の実施形態における割り当て部１の構成を示した図である。図７を参照すると、割り当て部１は、識別部１１、制御部１２、ポリシＤＢ（Data Base）１３、ユーザＤＢ１４を含む。図７の割り当て部１は、第１の実施形態における割り当て部１（図５）と比較すると、ポリシＤＢ１３およびユーザＤＢ１４が含まれている点で異なる。
【００３８】
ユーザＤＢ１４は、例えば、図８に示すように、ユーザに割り当てられた計算資源に対応する要求条件と、各計算資源２の通信アドレスを記憶している。図８では、要求条件が「帯域保証」である場合のユーザＤＢ１４を示している。図８の例では、ユーザＤＢ１４には、例えば、ユーザＡに対応する計算資源２−１の通信アドレスはＡであり、ユーザＡの要求条件は、１０Ｇｂｐｓの帯域保証であることが記憶されている。ここで、通信アドレスとは、例えば、送信元ＭＡＣ（Media Access Control）アドレスや、送信元ＩＰアドレスである。計算資源は、例えばサーバ上で稼動しているが、通信アドレスは、例えば、そのサーバに対応するＭＡＣアドレスやＩＰアドレスである。
【００３９】
ポリシＤＢ１３は、例えば、図９に例示されるポリシを保持している。図９は、要求条件が「帯域保証」である場合に、割り当てる通信方式を定めたポリシである。例えば、１０Ｇｂｐｓの帯域が保証されたユーザに対応する計算資源に対して、制御部１２は、１０Ｇｂｐｓの帯域が保証可能な通信方式を割り当てる。
【００４０】
また、要求条件は１つの種類に限られるものではなく、複数種類の要求条件を組み合わせても良い。例えば、帯域保証が１０Ｇｂｐｓかつ、通信量の上限が１日あたり５００ＧＢという要求条件も考えられる。さらに、ポリシＤＢ１３に設定するポリシは、上述の２つに限られるものではない。例えば、ユーザに対して保証されているネットワーク内の平均遅延時間、稼働率、パケットロス率などに応じて、割り当てる通信方式を決定するようなポリシでも良い。
【００４１】
続いて、割り当て部１の動作を、図１０のフローチャートを用いて説明する。まず、識別部１１は、ユーザに対応する計算資源と要求条件を識別する（ステップＳ１１）。例えば、識別部１１は、受信パケットに含まれる通信アドレスに対応する通信アドレスを有する計算資源を、図８に例示されたユーザＤＢ１４から検索する。また、識別部１１は、図８に例示されたユーザＤＢ１４から、検索されたユーザに対応する要求条件を特定する。例えば、受信パケットに通信アドレス「Ａ」が含まれている場合、識別部１１は、受信パケットはユーザＡに対応する計算資源２−１からのパケットであることを識別する。この場合、識別部１１は、ユーザＡに対応する要求条件が、１０Ｇｂｐｓの帯域を保証するものであることを特定する。
【００４２】
次に、制御部１２は、ポリシＤＢ１３を参照して、識別部１１が特定した要求条件に対応する通信方式を決定する（ステップＳ１２）。例えば、識別部１１は、図８に例示されたユーザＤＢ１４から、ユーザＡに対応する要求条件（「帯域保証：１０Ｇｂｐｓ」）を識別したものとする。この場合、制御部１２は、図９に示すポリシＤＢ１３を参照して、ユーザＡに対応する要求条件（「帯域保証：１０Ｇｂｐｓ」）に従って、１０Ｇｂｐｓの帯域が保証可能な通信方式（１）を計算資源２−１に割り当てることを決定する。
【００４３】
続いて、制御部１２は、ステップＳ１２で決定した通信方式を、計算資源に割り当てる（ステップＳ１３）。
【００４４】
計算資源に対して通信方式が割り当てられた後は、各々の通信方式に準じた動作により、通信が行われる。制御部１２は、例えば、割り当てられた通信方式が、仮想ネットワークを構築するものである場合には、仮想ネットワークを介した通信を行うために必要な、カプセル化やタグの付与といった処理を行う。より具体的には、制御部１２は、通信方式がＶＬＡＮであるネットワーク３−１に割り当てられた計算資源２−１からのパケット（通信Ａ）に対しては、ＶＬＡＮタグを付与して、ネットワーク３−１に転送する。また、割り当てられた通信方式がEthernetである場合には、制御部１２は、ＦＣＳ（Frame Check Sequence）フィールドに、宛先アドレス、送信元アドレス、長さ／タイプ、データの各フィールドから計算したＣＲＣ（Cyclic Redundancy Check）値を設定する。なお、このようなEthernetを用いる場合の処理は、割り当てられた通信方式がEthernetの場合だけでなく、Ethernet上に別の通信方式を用いて仮想ネットワークを構築した場合であっても必要となる。
【００４５】
以上、各計算資源２を利用して１つずつのアプリケーションが実行されている例を示したが、各計算資源２において、複数のアプリケーションが同時に実行されて、それぞれが別々の通信を発生させても良い。この場合、割り当て部１は、計算資源２を利用して起動する複数のアプリケーションに対して、同一の通信方式、もしくは、個別に通信方式を割り当てても良い。
【００４６】
また、制御部１２は、ポリシＤＢ１３のポリシに加えて、ネットワーク３のそれぞれの通信状況を考慮して、ネットワークの割り当てを行っても良い。例えば、１０Ｇｂｐｓの帯域が保証可能な通信方式（１）が割り当てられているユーザＡであっても、通信方式（１）に対応するネットワーク３−１が輻輳している場合には、他の要求条件（例えば「帯域保証：５Ｇｂｐｓ」）に対応する通信方式（例えば、ネットワーク３−３に対応する通信方式）をユーザＡに対応する計算資源２−１に割り当てても良い。
【００４７】
以上により、第２の実施形態によれば、ユーザの要求条件に応じて適切な通信方式のネットワークを用いた通信が可能となる。
【００４８】
［第３の実施形態］
次に、本発明の第３の実施形態について、図面を参照して説明する。第３の実施形態による割り当て部１は、様々なタイミングで、計算資源に対して割り当てる通信方式を決定することが可能である。また、割り当て部１は、様々なタイミングで、計算資源に対して割り当てる通信方式を変更することも可能である。以下では、割り当て部１が通信方式を決定するタイミングと、通信方式を変更するタイミングについて例を挙げて説明する。
【００４９】
（通信方式の割り当てを開始する際の動作）
図１１は、計算資源２を利用した通信が発生した場合に、その計算資源２に対して、割り当て部１が通信方式の割り当てを行う際の動作を示したフローチャートである。この場合、割り当て部１は、計算資源２を利用した通信が発生したかどうかを判定する（ステップＳ２０）。なお、ステップＳ２１以降の動作は、図１０のステップＳ１１からＳ１３と同様であるので、ここでは説明を省略する。
【００５０】
図１２は、計算資源２を利用したサービスが開始した場合に、そのサービスを利用するユーザに対応する計算資源に対して、通信方式を割り当てる際の動作を示したフローチャートである。この場合、割り当て部１は、計算資源２を利用したサービスが開始したかどうかを判定する（ステップＳ３０）。なお、ステップＳ３１以降の動作は、図１０のステップＳ１１からＳ１３と同様であるので、ここでは説明を省略する。
【００５１】
（通信方式の割り当てを変更する場合）
次に、計算資源に割り当てられている通信方式を変更する場合の例について、説明する。
【００５２】
図１３は、ユーザの要求条件が変更された場合に、割り当て部１が、変更後の要求条件に応じて、割り当てる通信方式を変更する例を示している。図１３の例では、ネットワーク３−３に対応する通信方式が割り当てられているユーザＢが、サービスのアップグレードを行って、保証可能な通信帯域が上がったとする。
【００５３】
図１４を参照して、この場合の動作について説明する。
【００５４】
識別部１１は、計算資源２を利用するユーザの要求条件が変更されたか否かをモニタする（ステップＳ４０）。例えば、識別部１１は、ユーザＤＢ１４を所定の周期でモニタする。
【００５５】
例えば、ユーザが追加の料金を支払うことによりＳＬＡが変更された場合、通信システムのオペレータによりユーザＤＢ１４が更新される。例えば、図１５に例示されるように、ユーザＢが追加の料金を支払うことにより、要求条件である帯域保証が「５Ｇｂｐｓ」から「１０Ｇｂｐｓ」に上がった場合、通信システムのオペレータによりユーザＤＢ１４が更新される。識別部１１は、例えば、ユーザＤＢ１４を定期的にモニタすることで、ユーザＤＢ１４における要求条件の更新を認識する。また、例えば、識別部１１は、計算資源２から割り当て部１に対して通知されるメッセージにより、要求条件の更新を認識してもよい。
【００５６】
その後、制御部１２は、ポリシＤＢ１３を参照して、変更後の要求条件に対応する通信方式を決定する（ステップＳ４１）。制御部１２は、決定された通信方式を計算資源に割り当てる（ステップＳ４２）。
【００５７】
以上のように、ユーザＢに対応する計算資源２−２に割り当てる通信方式を変更した結果を、図１６に示す。図１６では、ユーザＢに対応する計算資源２−２に割り当てられる通信方式は、変更後の要求条件（帯域保証：１０Ｇｂｐｓ）に対応する通信方式（ネットワーク３−１に対応する通信方式）に変更される。
【００５８】
（変更要求に応じて、割り当てる通信方式を変更する）
次に、システム管理者やユーザからの通信方式の変更要求に応じて、割り当て部１が、計算資源に対する通信方式の割り当てを変更する例について、説明する。
【００５９】
図１７は、ユーザＢに対応する計算資源２−２に割り当てる通信方式を、ネットワーク３−３に対応する通信方式から他の通信方式に変更する要求が発生した場合の例を示している。例えば、システムを管理する管理者やオペレータ等が、メンテナンスや工事等の事情により、ネットワーク３−３を停止する必要がある場合に、システム管理者から割り当て部１に対して、ユーザＢに対応する計算資源２−２に割り当てる通信方式を変更する要求を出すことが考えられる。また、ユーザＢに現在割り当てられている通信方式よりも、さらに高速なネットワーク３−１に対応する通信方式への変更を希望する場合に、ユーザＢが通信方式の変更要求を出すことも考えられる。
【００６０】
図１８を参照して、この場合の動作について説明する。まず、識別部１１は、ある通信に関して、変更要求が発生したかどうかを識別する（ステップＳ５０）。変更要求は、例えば、計算資源２から割り当て部１に対するパケットやメッセージにより通知される。また、システムを管理する管理者やオペレータ等が、割り当て部１に対して、変更要求を通知することも可能である。
【００６１】
次に、変更要求が発生している場合、制御部１２は、変更要求を許可するかどうかを決定する（ステップＳ５１）。制御部１２が変更要求を許可しない場合には、動作を終了する（ステップＳ５１：Ｙｅｓ）。なお、変更要求の可否を決定するにあたっては、例えば、制御部１２が何らかのポリシに従って決めても良いし、ネットワークのオペレータが決定しても良い。また、システム管理者やオペレータが、変更を要求する場合には、ステップＳ５１は省略してもよい。
【００６２】
ここでは、図１７に示すように、ユーザＢに割り当てる通信方式を、ネットワーク３−３に対応する通信方式からネットワーク３−１に対応する通信方式に変更する要求が発生したものとする。この場合、制御部１２は、ユーザＢに対して、割り当てを要求された通信方式を割り当てる（ステップＳ５２）。
【００６３】
なお、図１８には記載していないが、変更要求が許可された場合、制御部１２は、変更要求の内容に従い、ポリシＤＢ１３のポリシを変更することも可能である。
【００６４】
以上説明した通り、第３の実施形態によれば、様々なタイミングで、ネットワークの割り当てを開始したり、割り当てられているネットワークを動的に変更したりすることが可能となる。これにより、システムの運用をさらに柔軟に行うことができるようになる。
【００６５】
［第４の実施形態］
第４の実施形態では、第１、第２、第３の実施形態を集中制御型のシステムに適用する場合について説明する。
【００６６】
図１９は、第４の実施形態の構成例を示している。図１９を参照すると、第４の実施形態のシステムは、計算資源２、ネットワーク３、制御装置４、パケット処理装置５を含む。計算資源２とネットワーク３は、第１、第２、第３の実施形態と同様であるので、詳細な説明は省略する。パケット処理装置５は、第１、第２、第３の実施形態における割り当て部１と同様に、各ユーザに対応する計算資源に対して、各ネットワーク３に対応する通信方式を割り当てる。パケット処理装置５と割り当て部１との違いは、パケット処理装置５は制御装置４によって制御されることである。
【００６７】
制御装置４は、第１、第２、第３の実施形態における割り当て部１のように、各計算資源に対して割り当てる通信方式を、ポリシＤＢとユーザＤＢとを参照して決定し、パケット処理装置に通知する。
【００６８】
図２０に、制御装置４の構成例を示す。制御装置４は、制御部４１、通信部４２、ポリシＤＢ４３、ユーザＤＢ４４を含む。通信部４２は、パケット処理装置５との間での通信を行うインタフェースである。制御部４１は、上述の実施形態における割り当て部１の制御部１２とほぼ同様の機能を有する。つまり、制御部４２は、パケット処理装置５を介する通信に対応する計算資源に対して、ポリシＤＢ４３およびユーザＤＢ４４を参照して、どのネットワークに対応する通信方式を割り当てるかを決定する。
【００６９】
図２１に、ポリシＤＢ４３が記憶する情報の例を示す。ポリシＤＢ４３は、例えば、図２１（Ａ）に示すように、要求条件に応じて割り当てる通信方式を記憶しておく。制御部４２は、図２１（Ａ）および後述する図２２のユーザＤＢ４４を参照することにより、ユーザの要求条件に応じた通信方式を割り当てることができる。また、ポリシＤＢ４３は、例えば、図２１（Ｂ）に示すように、各パケット処理装置のポートごとに、どの通信方式が対応しているかを記憶しておいても良い。各パケット処理装置のポートは、それぞれネットワーク３と接続している。つまり、各パケット処理装置のそれぞれのポートは、接続しているネットワーク３の通信方式に対応し、図２１（Ｂ）に例示されたユーザＤＢ４４は、各ポートと通信方式との対応関係を管理する。より具体的には、パケット処理装置のＩＤごとに、当該ＩＤに対応するパケット処理装置が有するポートと、そのポートに対応する通信方式とが対応づけられている。制御部４２は、図２１（Ｂ）の情報を参照することにより、割り当てた通信方式に対応するポートがどれであるかを特定することができる。そして、制御部４２は、図２２に例示されるユーザＤＢ４４を参照して、通信アドレスに対応するポートがどれであるかを、パケット処理装置５に通知することができる。
【００７０】
図２２は、ユーザＤＢ４４が記憶する情報の例を示している。なお、ユーザＤＢ４４に関しては、上述の第１〜第３の実施形態と同様であるので、詳細な説明は省略する。
【００７１】
図２３は、パケット処理装置５の構成例を示している。パケット処理装置５は、ネットワーク通信部５１、制御装置通信部５２、パケット転送テーブル５３を含む。
【００７２】
ネットワーク通信部５１は、後述するパケット転送テーブル５３を参照して、計算資源２およびネットワーク３と通信を行う。
【００７３】
制御装置通信部５２は、制御装置４からの通知に従って、パケット転送テーブル５３に情報を格納する。制御装置４は、制御装置通信部５２に対して、決定した計算資源と通信方式との割り当てに従い、計算資源に対応する通信アドレスに対応するパケット転送ポートを通知する。制御装置通信部５２は、パケット転送テーブル５３に、例えば、図２４で例示された情報を格納する。パケット転送テーブル５３は、パケットに含まれる通信アドレスと、当該パケットを転送するポート（パケット転送ポート）とを対応付けて記憶する。
【００７４】
ネットワーク通信部５１は、図２４で例示されるパケット転送テーブル５３に従って、各計算資源から受信したパケットを、各計算資源に割り当てられた通信方式に対応するポートから転送する。
【００７５】
パケット転送テーブル５３は、各計算資源に対応する通信アドレスと、各計算資源に割り当てられた通信方式に対応するポート番号とを記憶する。例えば、通信アドレスが「Ａ」である計算資源２−１に割り当てられた通信方式は、パケット処理装置５のポート番号「１」に対応するものとする。この場合、ネットワーク通信部５１は、図２４に例示されたテーブルに従って、送信元アドレスが「Ａ」の受信パケットを、ポート「１」から転送する。このネットワーク通信部５１の動作により、各計算資源から送信されたパケットが、各計算資源に割り当てられた通信方式に対応するネットワークへ転送される。
【００７６】
図２５のシーケンスチャートを参照して、第４の実施形態の動作について説明する。
【００７７】
ユーザは、計算資源２を利用して、通信を開始する（ステップＳ６１）。ここでは、ユーザＡが、計算資源２−１を利用して、通信Ａが発生した場合を例に挙げて説明する。なお、他の実施形態と同様、計算資源２−１の通信アドレスは「Ａ」であるものとする。
【００７８】
パケット処理装置５のネットワーク通信部５１は、受信した通信Ａのパケットに含まれる通信アドレスを識別する。上述の例では、ネットワーク通信部５１は、受信した通信Ａのパケットに含まれる通信アドレスがＡであることを識別する。
【００７９】
ネットワーク通信部５１は、パケット転送テーブル５３を参照し、通信アドレスＡに対してパケット転送ポートが割り当てられているかどうかを判定する（ステップＳ６２）。ネットワーク通信部５１は、例えば、通信アドレスＡに対応するエントリがパケット転送テーブル５３に存在するか否かにより、通信アドレスＡに対してパケット転送ポートが割り当てられているかを判定する。
【００８０】
ステップＳ６２で、通信アドレスＡに対するパケット転送ポートの割り当てが行われていない場合には、制御装置通信部５２が、制御装置４に対して、通信アドレス「Ａ」に対してパケット転送ポートの割り当て要求を送信する（ステップＳ６３）。
【００８１】
制御装置４の制御部４１は、この割り当て要求を受信すると、ポリシＤＢ４３およびユーザＤＢ４４を参照して、通信アドレスＡに対応する計算資源２−１に対してネットワーク３−１に対応する通信方式を割り当てることを決定する（ステップＳ６４）。制御部４１の割り当てに関する動作は、上述の割り当て部１の制御部１２とほぼ同様に行われるので、詳細な説明は省略する。制御部４１は、計算資源２−１に対してネットワーク３−１に対応する通信方式を割り当てることを決定すると、パケット処理装置５に対して、通信アドレスＡに対応するパケット転送ポートは「１」であることを通知する。
【００８２】
パケット処理装置５は、制御部４１からの通知に従って、パケット転送テーブル５３を更新する。ネットワーク通信部５１は、パケット転送テーブル５３を参照し、計算資源２−１から送信されたパケットを、ネットワーク３−１に対応するポート１から転送する（ステップＳ６５）。
【００８３】
また、ステップＳ６２で、既に通信アドレスＡに対してパケット転送ポートが割り当てられている場合には、ネットワーク通信部５１は、パケット転送テーブル５３を参照してパケットを転送する（ステップＳ６２：Ｎｏ）。
【００８４】
また、上述の例では、ユーザが通信を開始した場合の動作について説明したが、第３の実施形態で説明したように、通信方式の割り当てを適宜変更することも可能である。
【００８５】
さらに、パケット処理装置５からの要求がない場合でも、制御装置４が計算資源に対する通信方式の割り当てを決定して、パケット処理装置５に対して、対応する通信アドレスＡとパケット転送ポートを設定しても良い。この場合、例えば、上述のステップＳ６１からステップＳ６３を行わずに、制御装置４が計算資源に対する通信方式の割り当てを決定して、パケット処理装置５に設定する。また、この場合、制御装置４を管理する管理者やオペレータ等が、ユーザの状態やネットワークの状況等を考慮して、適宜通信方式の割り当てをパケット処理装置５に設定することができる。
【００８６】
（効果）
以上説明したように、第４の実施形態では、パケット処理装置５を制御装置４によって制御する場合の例を示した。集中制御型のアーキテクチャを採用することで、パケット処理装置５が多数ある場合であっても、制御装置４を用いることで、柔軟な制御を行うことが可能となる。
【００８７】
［第５の実施形態］
次に、本発明の第５の実施形態について説明する。第５の実施形態は、第４の実施形態を、集中制御型のアーキテクチャを有するオープンフロー（OpenFlow）という技術を用いて実施する形態である。なお、基本的な構成は、第４の実施形態とほぼ同様であるため、同様の構成または動作については、適宜説明を省略する。
【００８８】
OpenFlowは、通信をエンドツーエンドのフローとして認識し、フロー単位での経路制御、障害回復、負荷分散等を実行する。なお、フローとは、例えば、所定の属性を有する一連の通信パケット群である。
【００８９】
図２６は、第５の実施形態による通信システムの構成例を示している。OpenFlowを適用する場合、制御装置４は、OpenFlow Controller４００（以下、ＯＦＣ４００）、パケット処理装置５は、OpenFlow Switch５００（以下、ＯＦＳ５００）として動作する。ここで、ＯＦＳ５００は、例えば、OpenFlow技術を採用したネットワークスイッチである。また、ＯＦＣ４００は、ＯＦＳ５００を制御する情報処理装置である。ユーザＡが利用する計算資源２−１からはフローＡに属する通信が行われているとする。同様に、ユーザＢが利用する計算資源２−２からはフローＢ、ユーザＣが利用する計算資源２−３からはフローＣに属する通信が行われている。
【００９０】
図２７は、ＯＦＣ４００の構成例を示している。ＯＦＣ４００は、制御部４０１、通信部４０２、ポリシＤＢ４０３、ユーザＤＢ４０４を含む。以上の構成は、第４の実施形態における制御装置４とほぼ同様であるので、詳細な説明は省略する。
【００９１】
図２８は、ＯＦＳ５００の構成例を示している。ＯＦＳ５００は、ネットワーク通信部５０１、ＯＦＣ通信部５０２、フローテーブル５０３を含む。
【００９２】
ネットワーク通信部５０１は、計算資源２およびネットワーク３と接続し、後述するフローテーブル５０３を参照して、受信するパケットに関する処理を行う。
【００９３】
ＯＦＣ通信部５０２は、ＯＦＣ４００からの通知に従って、フローテーブル５０３に情報を格納する。ＯＦＣ４００は、ＯＦＣ通信部５０２に対して、決定した計算資源と通信方式との割り当てに従い、図２９に例示するような情報を通知する。なお、図２９については、後に詳しく説明する。ＯＦＣ通信部５０２は、フローテーブル５０３に、例えば、図２９で例示された情報を格納する。
【００９４】
図２９は、フローテーブル５０３の各エントリ（フローエントリ）の構成例を示している。フローエントリは、ＯＦＳ５００が受信したパケットの情報（例えば、宛先ＩＰアドレスやＶＬＡＮ  ＩＤ等）と照合するためのフィールド（Match Fields）と、マッチングルールにマッチするパケットの処理方法（Action）を含むフィールド（Instruction）を含む。また、フローエントリは、フローエントリの優先度を示すフィールド（Priority）や、パケットフロー毎の統計情報を示すフィールド（Counters）を有していても良い。さらに、フローエントリは、フローエントリの有効期限（時間）や失効までの時間を示すフィールド（Timeouts）や、ＯＦＣ４００によって任意に設定されるフィールド（Ｃｏｏｋｉｅ）を有していても良い。典型的には、１つのフローエントリは、１つのフローに対応するが、マッチフィールドの一部（例えば、宛先ＩＰアドレス）にワイルドカードを設定することで、複数のフローを１つのフローエントリで扱うことも可能である。
【００９５】
このフローテーブル５０３の内容について、より具体的に説明する。図２９の例では、フローテーブル５０３のマッチフィールドが「Ａ」のエントリは、ユーザＡ（即ち、計算資源２−１）から送信されたフローに対応しているとする。図２９の例では簡単化のためにマッチフィールドを「Ａ」と記載しているが、このフローは、例えば、送信元ＩＰアドレス、宛先ＩＰアドレス、送信元ＭＡＣアドレス、宛先ＭＡＣアドレス、ＶＬＡＮ  ＩＤ等、様々なヘッダ情報の組によって規定される。例えば、マッチフィールド「Ａ」は、パケットの送信元アドレスが、ユーザＡに対応する計算資源の通信アドレスであることを表すものとする。同様に、マッチフィールドが「Ｂ」のエントリは、ユーザＢからのフローに、マッチフィールドが「Ｃ」のエントリは、ユーザＣからのフローに対応しているとする。ここで、ユーザＡからのフローのInstructionsには、「ポート１から転送」という処理方法が記載されている。これは、ＯＦＳ５００は、マッチフィールドが「Ａ」のパケットに関しては、ポート１から転送する、という処理内容を示している。例えば、ユーザＡに対応する計算資源に割り当てられた通信方式がポート１に対応するものとする場合、ＯＦＳ５００は、「ポート１から転送」という処理方法により、ユーザＡに対応する計算資源に割り当てられた通信方式のネットワークにパケットを転送できる。「Instructions」に記載される処理内容としては、他には、処理方法は、例えば、「受信パケットを所定のポートから転送する」、「受信したパケットを廃棄する」、「受信パケットのヘッダの一部を書き換えて、所定のポートから転送する」といったことが規定されている。
【００９６】
次に、図３０のシーケンスチャートを参照して、第５の実施形態の動作について説明する。まず、ユーザは、計算資源２を利用して、通信を開始する（ステップＳ７１）。ここでは、ユーザＡが、計算資源２−１を利用して、フローＡによる通信を開始した場合を例に挙げて説明する。
【００９７】
次に、ＯＦＳ５００のネットワーク通信部５０１は、受信したフローＡのパケットについて、フローテーブル５０３を参照し、受信したパケットのヘッダ情報にマッチするフローエントリを検索する（ステップＳ７２）。例えば、フローＡに対応するマッチフィールドが「Ａ」であるとすると、ネットワーク通信部５０１は、フローテーブル５０３に、マッチフィールドがＡであるエントリがあるかどうかを検索する。
【００９８】
ステップＳ７２で、フローＡにマッチするフローエントリがない場合には、ＯＦＣ通信部５０２が、ＯＦＣ４００に対して、フローＡに対して行う処理について問い合わせる（ステップＳ７３）。
【００９９】
ＯＦＣ４００の制御部４０１は、この問い合わせを受信すると、ポリシＤＢ４０３およびユーザＤＢ４０４を参照して、ユーザＡ（フローＡ）の計算資源に対してネットワーク３−１に対応する通信方式を割り当てることを決定する（ステップＳ７４）。制御部４０１の割り当てに関する動作は、第４の実施形態の制御部４１とほぼ同様に行われるので、詳細な説明は省略する。次に、制御部４０１は、決定した通信方式の割り当てに対応するフローエントリを設定する。つまり、制御部４０１は、フローＡのパケットは、ネットワーク３−１に対応するポートから転送するための設定を、ＯＦＳ５００に対して行う。このようにして、ＯＦＣ４００は、ユーザＡに対してネットワーク３−１を割り当てることを、ＯＦＳ５００に対して設定することができる。
【０１００】
ＯＦＳ５００は、ＯＦＣ４００からの設定に従って、フローテーブル５０３を更新する。上述の例では、図２９に示すように、フローＡに対応するマッチフィールドがＡであるフローエントリには、ネットワーク３−１に対応するポート１からパケットを転送することを規定した処理方法が設定される。ＯＦＳ５００は、更新したフローテーブル５０３に従い、受信パケットをポート１から転送する（ステップＳ７５）。
【０１０１】
また、ステップＳ７２で、フローＡに対するフローエントリが見つかった場合には、ＯＦＳ５００は、ＯＦＣ４００に処理内容を問い合わせることなく、受信パケットをポート１から転送する（ステップＳ７２：Ｎｏ）。
【０１０２】
また、上述の例では、ユーザが通信を開始した場合の動作について説明したが、第３の実施形態で説明したように、通信方式の割り当てを適宜変更することも可能である。
【０１０３】
さらに、ＯＦＳ５００からの要求がない場合でも、ＯＦＣ４００が計算資源に対する通信方式の割り当てを決定して、ＯＦＳ５００に対して、対応するフローエントリを設定しても良い。この場合、例えば、上述のステップＳ７１からステップＳ７３を行わずに、ＯＦＣ４００が計算資源に対する通信方式の割り当てを決定して、ＯＦＳ５００に、決定した通信方式の割り当てに対応するフローエントリを設定するようにしても良い。また、この場合、ＯＦＣ４００を管理する管理者やオペレータ等が、ユーザの状態やネットワークの状況等を考慮して、適宜ネットワークの割り当てに対応するフローエントリをＯＦＳ５００に設定することができる。
【０１０４】
以上、OpenFlowを用いた場合の適用例について説明したが、集中制御型のアーキテクチャを有するシステムであれば、OpenFlow以外の技術も適用することが可能である。
【０１０５】
（効果）
以上説明したように、第５の実施形態では、第４の実施形態にOpenFlowを適用して、ＯＦＳ５００をＯＦＣ４００によって制御する場合の例を示した。第４の実施形態と同様に、集中制御型のアーキテクチャを採用することで、ＯＦＳ５００が多数ある場合であっても、ＯＦＣ４００を用いることで、柔軟な制御を行うことが可能となる。
【０１０６】
［第６の実施形態］
次に、図３１および図３２を用いて、第６の実施形態について説明する。
【０１０７】
第６の実施形態のシステムは、図３１に示すように、制御装置４、仮想スイッチ（ｖＳｗｉｔｃｈ）１０１、サーバ１００、物理スイッチ１１０、仮想マシン（ＶＭ）１０２を含む。
【０１０８】
仮想スイッチ１０１は、サーバ１００で動作するソフトウェアで構成されたネットワークスイッチである。仮想スイッチ１０１は、第４の実施形態のパケット処理装置５、または第５の実施形態のＯＦＳ５００に対応する機能を有する。つまり、仮想スイッチ１０１は、制御装置４による制御に基づいて、パケットを処理する。なお、仮想スイッチ１０１は、例えば、物理スイッチ１１０で構成されるネットワークの端点（エッジ）に位置する。
【０１０９】
サーバ１００では、ソフトウェアにより構成されたコンピュータである仮想マシン（ＶＭ）１０２が動作している。ＶＭ１０２は、仮想スイッチ１０１を介して、他のＶＭ１０２と通信する。
【０１１０】
ＶＭ１０２は、他の実施形態の計算資源２に対応する機能を有する。ＶＭ１０２は、物理スイッチ１１０を介するネットワーク（アンダーレイネットワーク）、または、物理スイッチ１１０上に構築された仮想ネットワーク（オーバレイネットワーク）を介して、他のＶＭ１０２と通信する。ネットワーク（アンダーレイネットワーク）は、例えば、上述したように、ＩＰｖ４、ＩＰｖ６等の通信方式に基づいて構築される。仮想ネットワークは、例えば、上述したように、ＶＬＡＮ、Ｌ２ＴＰ、Ethernet IP、ＧＲＥ、ＮＶＧＲＥ、ＩＰｓｅｃ等の通信方式に基づいて構築される。これらのネットワークは、他の実施形態のネットワーク３に対応する。
【０１１１】
制御装置４は、第４の実施形態の制御装置４、または第５の実施形態のＯＦＣ４００に対応する機能を有する。すなわち、制御装置４は、ＶＭ１０２からの通信に対して、どの通信方式を割り当てるかを決定する。
【０１１２】
仮想スイッチ１０１は、制御装置４から通知された処理規則に従って、パケットを処理する。
【０１１３】
サーバ１００は、例えば、物理スイッチ１１０で構成されたネットワークの端部（エッジ）に位置する。この場合、制御装置４は、ネットワークのエッジに存在する仮想スイッチ１０１の動作を制御する。
【０１１４】
図３２を参照し、ＶＭ１０２間の通信動作の例を説明する。図３２の例では、ＶＭ１０２ＡとＶＭ１０２Ｂが、仮想スイッチ１０１Ａを介して、ＶＭ１０２Ｃ、ＶＭ１０２Ｄに対する通信を行う例を示している。
【０１１５】
仮想スイッチ１０１Ａは、ポート１０１１Ａ、ポート１０１１Ｂ、ポート１０１１Ｃを有する。同様に、仮想スイッチ１０１Ｂは、ポート１０２１Ａ、ポート１０２１Ｂ、ポート１０２１Ｃを有する。図３２の例では、それぞれのポートは、異なる通信方式のネットワークに接続している。具体的には、ポート１０１１Ａは、ネットワーク１２１に接続している。ポート１０１１Ｂは、ネットワーク１２２に接続している。ポート１０１１Ｃは、ネットワーク１２３に接続している。上述したように、ネットワーク１２１、ネットワーク１２２、ネットワーク１２３は、それぞれが異なる通信方式に基づいて構築されるものであっても良い。
【０１１６】
仮想スイッチ１０１Ａは、第４の実施形態のパケット処理装置５、または第５の実施形態のＯＦＳ５００と同様の動作を行い、ＶＭ１０２Ａ、ＶＭ１０２Ｂの要求条件に対応する通信方式をＶＭ１０２Ａ、ＶＭ１０２Ｂに割り当てる。例えば、ＶＭ１０２Ａに対応する要求条件が、１０Ｇｂｐｓの帯域を保証するものである場合を考える。また、ネットワーク１２１が、１０Ｇｂｐｓの帯域保証を満たす通信方式に基づいて構築されるネットワークであるとする。この場合、ＶＭ１０２Ａに対しては、１０Ｇｂｐｓの帯域保証を満たす通信方式が割り当てられる。上述の例においては、１０Ｇｂｐｓの帯域保証を満たす通信方式に対応するネットワークはネットワーク１２１であるので、ＶＭ１０２Ａからの通信は、ネットワーク１２１に接続するポート１０１６Ａを介して行われる。
【０１１７】
ＶＭ１０２に対して通信方式が割り当てられた後は、各々の通信方式に準じた動作により、通信が行われる。例えば、ネットワーク１２１の通信方式がＶＬＡＮである場合、ネットワーク１２１に割り当てられたＶＭ１０２Ａからのパケットに対しては、仮想スイッチ１０１ＡがＶＬＡＮタグを付与して、ネットワーク１２１に転送する。
【０１１８】
制御装置４は、例えば、ＶＭ１０２Ａからのパケットに、ネットワーク１２１に対応するＶＬＡＮタグを付与することを規定した処理規則を、仮想スイッチ１０１Ａに通知する。仮想スイッチ１０１Ａは、例えば、ＶＭ１０２Ａからのパケットを受信すると、制御装置４の指示に従い、パケットに対してネットワーク１２１に対応するＶＬＡＮタグを付与してパケットを転送する。
【０１１９】
（効果）
第６の実施形態のように、制御装置４が仮想スイッチ１０１Ａのみを制御する構成により、制御装置４の負荷を抑止できる。また、通信システムの既存設備（例えば、物理スイッチ１１０）を置き換えることなく、制御装置４による集中制御型のネットワークを導入できる。
【０１２０】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１２１】
［形態１］
ユーザに割り当てられる計算資源と、
前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段と
を含む通信システム。
【０１２２】
［形態２］
前記割当手段は、前記複数の通信方式のうち、前記要求条件を満たす通信方式を前記計算資源に割り当てる
形態１に記載の通信システム。
【０１２３】
［形態３］
前記複数の通信方式に対応するネットワークは、第１のネットワークと、第１のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第２のネットワークを含み、
前記割当手段は、前記第２のネットワークに対応する通信方式が前記要求条件に満たない場合、前記第１のネットワークに対応する通信方式を前記計算資源に割り当てる
形態１または２に記載の通信システム。
【０１２４】
［形態４］
前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
前記割当手段は、前記物理ネットワークに対応する通信方式が前記要求条件に満たない場合、前記仮想ネットワークに対応する通信方式を前記計算資源に割り当てることが可能である
形態１乃至３のいずれか一に記載の通信システム。
【０１２５】
［形態５］
前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態１乃至４のいずれか一に記載の通信システム。
【０１２６】
［形態６］
前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態１乃至５のいずれか一に記載の通信システム。
【０１２７】
［形態７］
前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態１乃至６のいずれか一に記載の通信システム。
【０１２８】
［形態８］
前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する
形態１乃至７のいずれか一に記載の通信システム。
【０１２９】
［形態９］
前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する
形態１乃至８のいずれか一に記載の通信システム。
【０１３０】
［形態１０］
前記通信システムは、
前記計算資源に割り当てる通信方式を決定し、決定した通信方式を前記割当手段に通知する制御装置を備え、
前記割当手段は、前記通知に従って、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態１乃至９のいずれか一に記載の通信システム。
【０１３１】
［形態１１］
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段
を含むノード。
【０１３２】
［形態１２］
前記割当手段は、前記複数の通信方式のうち、前記要求条件を満たす通信方式を前記計算資源に割り当てる
形態１１に記載のノード。
【０１３３】
［形態１３］
前記複数の通信方式に対応するネットワークは、第１のネットワークと、第１のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第２のネットワークを含み、
前記割当手段は、前記第２のネットワークに対応する通信方式が前記要求条件に満たない場合、前記第１のネットワークに対応する通信方式を前記計算資源に割り当てる
形態１１または１２に記載のノード。
【０１３４】
［形態１４］
前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
前記割当手段は、前記仮想ネットワークに対応する通信方式が前記要求条件に満たない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てることが可能である
形態１１乃至１３のいずれか一に記載のノード。
【０１３５】
［形態１５］
前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態１１乃至１４のいずれか一に記載のノード。
【０１３６】
［形態１６］
前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態１１乃至１５のいずれか一に記載のノード。
【０１３７】
［形態１７］
前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態１１乃至１６のいずれか一に記載のノード。
【０１３８】
［形態１８］
前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する
形態１１乃至１７のいずれか一に記載のノード。
【０１３９】
［形態１９］
前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する
形態１１乃至１８のいずれか一に記載のノード。
【０１４０】
［形態２０］
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる割当手段と、
前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する通知手段と、
を含む制御装置。
【０１４１】
［形態２１］
前記割当手段は、前記複数の通信方式のうち、前記要求条件を満たす通信方式を前記計算資源に割り当てる
形態２０に記載の制御装置。
【０１４２】
［形態２２］
前記複数の通信方式に対応するネットワークは、第１のネットワークと、第１のネットワークを用いた通信に要する処理に加えて、通信方式に応じたパケット処理を要する第２のネットワークを含み、
前記割当手段は、前記第２のネットワークに対応する通信方式が前記要求条件に満たない場合、前記第１のネットワークに対応する通信方式を前記計算資源に割り当てる
形態２０または２１に記載の制御装置。
【０１４３】
［形態２３］
前記複数の通信方式に対応するネットワークは、物理ネットワークと、前記物理ネットワーク上に構築される仮想ネットワークと、を含み、
前記割当手段は、前記仮想ネットワークに対応する通信方式が前記要求条件に満たない場合、前記物理ネットワークに対応する通信方式を前記計算資源に割り当てることが可能である
形態２０乃至２２のいずれか一に記載の制御装置。
【０１４４】
［形態２４］
通信状況も考慮したＮＷ割り当て
前記割当手段は、前記要求条件と、前記複数の通信方式に対応するネットワークの通信状況とに応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態２０乃至２３のいずれか一に記載の制御装置。
【０１４５】
［形態２５］
前記割当手段は、前記計算資源に関する通信の発生に応じて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態２０乃至２４のいずれか一に記載の制御装置。
【０１４６】
［形態２６］
前記割当手段は、前記サービスの開始に応じて、前記複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる
形態２０乃至２５のいずれか一に記載の制御装置。
【０１４７】
［形態２７］
前記割当手段は、前記ユーザに対応する前記要求条件の変更に応じて、通信方式の割当てを変更する
形態２０乃至２６のいずれか一に記載の制御装置。
【０１４８】
［形態２８］
前記割当手段は、前記通信方式の変更要求に応じて、通信方式の割当てを変更する
形態２０乃至２７のいずれか一に記載の制御装置。
【０１４９】
［形態２９］
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てるステップ
を含む通信方法。
【０１５０】
［形態３０］
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てるステップと、
前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知するステップと、
を含む通信方法。
【０１５１】
［形態３１］
ユーザに割り当てられる計算資源に接続するノードに対して、
前記計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる処理
を実行させるプログラム。
【０１５２】
［形態３２］
ノードの制御を行う制御装置に対して、
ユーザに割り当てられる計算資源を介して前記ユーザに提供されるサービスに関する要求条件に基づいて、複数の通信方式から少なくとも１つの通信方式を前記計算資源に割り当てる処理と、
前記計算資源に接続するノードに対して、前記割り当てた通信方式を通知する処理と、
を実行させるプログラム。
【０１５３】
なお、引用した上記の特許文献の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【０１５４】
１    割り当て部
２    計算資源
３    ネットワーク
４    制御装置
５    パケット処理装置
１１    識別部
１２、４１、４０１    制御部
１３、４３、４０３    ポリシＤＢ
１４、４４、４０４    ユーザＤＢ
４２、５４、４０２    通信部
５１、５０１    ネットワーク通信部
５２    制御装置通信部
５３    パケット転送テーブル
１００    サーバ
１０１    仮想スイッチ
１０２    ＶＭ
１１０    物理スイッチ
１２１、１２２    ネットワーク
４００    ＯＦＣ
５００    ＯＦＳ
５０２    ＯＦＣ通信部
５０３    フローテーブル
１０１１、１０２１    ポート
【図１】
2014112585.tif 000003
【図２】
2014112585.tif 000004
【図３】
2014112585.tif 000005
【図４】
2014112585.tif 000006
【図５】
2014112585.tif 000007
【図６】
2014112585.tif 000008
【図７】
2014112585.tif 000009
【図８】
2014112585.tif 000010
【図９】
2014112585.tif 000011
【図１０】
2014112585.tif 000012
【図１１】
2014112585.tif 000013
【図１２】
2014112585.tif 000014
【図１３】
2014112585.tif 000015
【図１４】
2014112585.tif 000016
【図１５】
2014112585.tif 000017
【図１６】
2014112585.tif 000018
【図１７】
2014112585.tif 000019
【図１８】
2014112585.tif 000020
【図１９】
2014112585.tif 000021
【図２０】
2014112585.tif 000022
【図２１】
2014112585.tif 000023
【図２２】
2014112585.tif 000024
【図２３】
2014112585.tif 000025
【図２４】
2014112585.tif 000026
【図２５】
2014112585.tif 000027
【図２６】
2014112585.tif 000028
【図２７】
2014112585.tif 000029
【図２８】
2014112585.tif 000030
【図２９】
2014112585.tif 000031
【図３０】
2014112585.tif 000032
【図３１】
2014112585.tif 000033
【図３２】
2014112585.tif 000034
【国際調査報告】
2014112585.tif 000035
2014112585.tif 000036
2014112585.tif 000037
2014112585.tif 000038