(57)【要約】【課題】ネットワーク上での仮想ネットワーク機能の配置を解決するネットワークシステム、ネットワーク制御方法および制御装置を提供する。【解決手段】複数のノードおよびサーバを有するネットワークを制御する装置（１０）は、ネットワーク（２０）のリンクおよびノードに関する第１情報と、仮想ネットワーク機能（ＶＮＦ）を配置可能なサーバ（ＳＶ）のコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能（ＶＮＦ）のサーバ（ＳＶ）への配置を決定し、第１情報と第２情報とに基づいて仮想ネットワーク機能を配置する配置先のサーバに接続するネットワークのパスを決定する。【選択図】図１
2018191349.tif 000002
【特許請求の範囲】
【請求項１】
複数のノードおよびサーバを有するネットワークを制御する装置であって、
前記ネットワークのリンクおよびノードに関する第１情報と、仮想ネットワーク機能を配置可能なサーバのコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能のサーバへの配置を決定する配置先決定手段と、
前記第１情報と前記第２情報とに基づいて、前記仮想ネットワーク機能を配置する配置先のサーバに接続する前記ネットワークのパスを決定するパス決定手段と、
を有することを特徴とするネットワーク制御装置。
【請求項２】
前記パス決定手段は、前記第１情報および前記第２情報に基づいて、少なくとも一つの仮想ネットワーク機能の要求条件を満たす前記パスを決定することを特徴とする請求項１に記載のネットワーク制御装置。
【請求項３】
前記パス決定手段は、
前記少なくとも一つの仮想ネットワーク機能のネットワークに関する第１要求条件と前記第１情報とを比較する第１比較手段と、
前記少なくとも一つの仮想ネットワーク機能のコンピューティングリソースに関する第２要求条件と前記第２情報とを比較する第２比較手段と、
を有し、前記第１比較手段の比較結果と前記第２比較手段の比較結果とに基づいて、前記第１要求条件および前記第２要求条件を共に満たす前記パスを決定することを特徴とする請求項２に記載のネットワーク制御装置。
【請求項４】
前記配置先決定手段は、前記第２比較手段の比較結果により前記第２要求条件を満たすサーバへの配置を決定し、
前記パス決定手段は、前記第１比較手段の比較結果により前記第１要求条件を満たすネットワークパス候補を選択し、前記サーバへの配置に従って前記ネットワークパス候補から前記パスを決定する、ことを特徴とする請求項３に記載のネットワーク制御装置。
（削除）
【請求項５】
前記配置先決定手段は、前記第１要求条件を満たすネットワークパス候補の中から前記第２要求条件を満たすサーバへの配置を決定することを特徴とする請求項４に記載のネットワーク制御装置。
【請求項６】
前記サーバには複数の同一あるいは異なる仮想ネットワーク機能が配置可能であることを特徴とする請求項１−５のいずれか１項に記載のネットワーク制御装置。
【請求項７】
前記ネットワークのノードと、前記サーバにおける前記仮想ネットワーク機能を実行する仮想マシンと、を制御する制御手段を更に有し、
前記制御手段が前記決定されたパスに沿って通信フローが転送されるように前記ネットワークのノードおよびサーバを制御する、ことを特徴とする請求項１−６のいずれか１項に記載のネットワーク制御装置。
【請求項８】
前記サーバは前記ネットワークの少なくとも１つの隣接ノードと接続し、複数の同一あるいは異なる仮想ネットワーク機能の間および／または前記隣接ノードとの間でデータ転送を行う仮想スイッチを有し、前記制御手段が前記ノードと同様に前記仮想スイッチを制御することを特徴とする請求項７に記載のネットワーク制御装置。
【請求項９】
複数のノードおよびサーバを有するネットワークを制御する方法であって、
配置先決定手段が、前記ネットワークのリンクおよびノードに関する第１情報と、仮想ネットワーク機能を配置可能なサーバのコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能のサーバへの配置を決定し、
パス決定手段が、前記第１情報と前記第２情報とに基づいて、前記仮想ネットワーク機能を配置する配置先のサーバに接続する前記ネットワークのパスを決定する、
ことを特徴とするネットワーク制御方法。
【請求項１０】
前記パス決定手段が、前記第１情報および前記第２情報に基づいて、少なくとも一つの仮想ネットワーク機能の要求条件を満たす前記パスを決定する、ことを特徴とする請求項９に記載のネットワーク制御方法。
【請求項１１】
第１比較手段が前記少なくとも一つの仮想ネットワーク機能のネットワークに関する第１要求条件と前記第１情報とを比較し、
第２比較手段が前記少なくとも一つの仮想ネットワーク機能のコンピューティングリソースに関する第２要求条件と前記第２情報とを比較し、
前記パス決定手段が、前記第１比較手段の比較結果と前記第２比較手段の比較結果とに基づいて、前記第１要求条件および前記第２要求条件を共に満たす前記パスを決定する、
ことを特徴とする請求項１０に記載のネットワーク制御方法。
【請求項１２】
前記配置先決定手段が、前記第２比較手段の比較結果により前記第２要求条件を満たすサーバへの配置を決定し、
前記パス決定手段が、
前記第１比較手段の比較結果により前記第１要求条件を満たすネットワークパス候補を選択し、
前記サーバへの配置に従って前記ネットワークパス候補から前記パスを決定する、
ことを特徴とする請求項１１に記載のネットワーク制御方法。
【請求項１３】
前記配置先決定手段が、前記第１要求条件を満たすネットワークパス候補の中から前記第２要求条件を満たすサーバへの配置を決定することを特徴とする請求項１２に記載のネットワーク制御方法。
【請求項１４】
前記サーバには複数の同一あるいは異なる仮想ネットワーク機能が配置可能であることを特徴とする請求項９−１３のいずれか１項に記載のネットワーク制御方法。
【請求項１５】
制御手段が、決定された前記パスに沿って通信フローが転送されるように前記ネットワークのノードと、前記サーバにおける前記仮想ネットワーク機能を実行する仮想マシンとを制御する、ことを特徴とする請求項９−１４のいずれか１項に記載のネットワーク制御方法。
【請求項１６】
前記サーバは前記ネットワークの少なくとも１つの隣接ノードと接続し、複数の同一あるいは異なる仮想ネットワーク機能の間および／または前記隣接ノードとの間でデータ転送を行う仮想スイッチを有し、
前記制御手段が、前記ノードと同様に前記仮想スイッチを制御することを特徴とする請求項１５に記載のネットワーク制御方法。
【請求項１７】
複数のノードおよびサーバを有するネットワークと前記ネットワークを制御する制御装置とを有するネットワークシステムであって、
前記制御装置が、
ネットワークのリンクおよびノードに関する第１情報と、仮想ネットワーク機能を配置可能なサーバのコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能のサーバへの配置を決定する配置先決定手段と、前記第１情報と前記第２情報とに基づいて前記仮想ネットワーク機能を配置する配置先のサーバに接続する前記ネットワークのパスを決定するパス決定手段と、
を有する、
ことを特徴とするネットワークシステム。
【請求項１８】
前記パス決定手段は、前記第１情報および前記第２情報に基づいて、少なくとも一つの仮想ネットワーク機能の要求条件を満たす前記パスを決定することを特徴とする請求項１７に記載のネットワークシステム。
【請求項１９】
前記パス決定手段は、
前記少なくとも一つの仮想ネットワーク機能のネットワークに関する第１要求条件と前記第１情報とを比較する第１比較手段と、
前記少なくとも一つの仮想ネットワーク機能のコンピューティングリソースに関する第２要求条件と前記第２情報とを比較する第２比較手段と、
を有し、前記第１比較手段の比較結果と前記第２比較手段の比較結果とに基づいて、前記第１要求条件および前記第２要求条件を共に満たす前記パスを決定することを特徴とする請求項１８に記載のネットワークシステム。
【請求項２０】
前記配置先決定手段は、前記第２比較手段の比較結果により前記第２要求条件を満たすサーバへの配置を決定し、
前記パス決定手段は、前記第１比較手段の比較結果により前記第１要求条件を満たすネットワークパス候補を選択し、前記サーバへの配置に従って前記ネットワークパス候補から前記パスを決定する、ことを特徴とする請求項１９に記載のネットワークシステム。
【請求項２１】
前記サーバには複数の同一あるいは異なる仮想ネットワーク機能が配置可能であることを特徴とする請求項１７−２０のいずれか１項に記載のネットワークシステム。
【請求項２２】
前記制御装置の運用管理を行う運用管理装置を更に有し、
前記運用管理装置が、
前記制御装置に対して少なくとも一つの仮想ネットワーク機能の要求条件を設定する要求条件設定手段と、
前記ネットワークのトポロジを前記決定されたパスと共に表示する表示手段と、
を有する
ことを特徴とする請求項１７−２１のいずれか１項に記載のネットワークシステム。
【請求項２３】
前記制御装置は、前記ネットワークのノードと、前記サーバにおける前記仮想ネットワーク機能を実行する仮想マシンと、を制御する制御手段を更に有し、
前記制御手段が前記決定された前記パスに沿って通信フローが転送されるように前記ネットワークのノードおよびサーバを制御する、ことを特徴とする請求項１７−２２のいずれか１項に記載のネットワークシステム。
【請求項２４】
前記サーバは前記ネットワークの少なくとも１つの隣接ノードと接続し、複数の同一あるいは異なる仮想ネットワーク機能の間および／または前記隣接ノードとの間でデータ転送を行う仮想スイッチを有し、前記制御手段が前記ノードと同様に前記仮想スイッチを制御することを特徴とする請求項２３に記載のネットワークシステム。
【請求項２５】
複数のノードおよびサーバを有するネットワーク制御装置としてコンピュータを機能させるプログラムであって、
配置先決定手段が、前記ネットワークのリンクおよびノードに関する第１情報と、仮想ネットワーク機能を配置可能なサーバのコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能のサーバへの配置を決定する機能と、
パス決定手段が、前記第１情報と前記第２情報とに基づいて、前記仮想ネットワーク機能を配置する配置先のサーバに接続する前記ネットワークのパスを決定する機能と、
を前記コンピュータに実現することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は仮想ネットワーク機能を含むネットワークシステムに係り、特にネットワークの制御方法および制御装置に関する。
【背景技術】
【０００２】
現在の通信システムでは、ＢＲＡＳ(Broadband Remote Access Server)、ＮＡＴ(Network Address Translation)、ルータ、ファイヤウォールなどの様々なネットワーク機能（Network Function：ＮＦ）を専用のハードウェア機器（アプライアンス）により実現している。このために、ネットワークオペレータは、新たな通信サービスを立ち上げる場合、新たな専用のハートウェア機器の導入を強いられ、機器の購入費用や設置スペース等の多大なコストを必要とする。このような状況に鑑み、近年、ハードウェア機器で実行されるネットワーク機能をソフトウェアにより仮想的に実行する技術（ネットワーク機能の仮想化：Network Function Virtualization）が検討されている（非特許文献１）。通信サービスの仮想化の一例として、特許文献１に、通信ノード装置上に複数の仮想ルータを構築し、これらの仮想ルータの資源を通信品質に応じて動的に配分する方法が開示されている。
【０００３】
また、複数の仮想ネットワーク機能(Virtual Network Function：ＶＮＦ)を組み合わせた通信経路に通信フローを伝送することにより種々の通信サービスを提供する技術（サービスチェイニング：Service Chaining）も検討されている（たとえば、非特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１７５４１８号公報
【非特許文献】
【０００５】
【非特許文献１】Network Functions Virtualization-Update White Paper, October 15-17, 2013 at the “SDN and OpenFlow World Congress”, Frankfurt-Germany (http://portal.etsi.org/NFV/NFV_White_Pater2.pdf)
【０００６】
【非特許文献２】“Interface to the Routing System (I2RS) for Service Chaining: Use Cases and Requirements”, Internet Engineering Task Force I2RS working group Internet Draft (July 15, 2013)
【発明の概要】
【発明が解決しようとする課題】
【０００７】
仮想化されたネットワーク機能の環境では、データプレーンのＶＮＦ間トラフィックが、今日のデータセンタに比べて、非常に大きくなることが予想される。特にサービスチェイニングのエッジに位置するノードのトラフィック負荷が非常に重くなると考えられる。したがって、サービスチェイニングでは、単に仮想マシンの配置を考慮するだけでは不十分であり、コンピューティングおよびネットワーキングの両方のリソースを考慮することが必要である。
【０００８】
しかしながら、上述した特許文献および非特許文献が開示しているのは、仮想マシンの配置先決定およびサービスチェインを構成するパスの決定だけである。言い換えれば、上述した背景技術は、ＶＮＦの配置を考慮するだけで、ネットワークパフォーマンス(end-to-end bandwidth, end-to-end delay, end-to-end reliability)を考慮していない。たとえば、特許文献１では、通信ノード装置内で仮想ルータのための資源を配分する技術を開示しているが、ネットワークパフォーマンスを考慮した仮想ルータの配置、すなわちネットワーク上での仮想ルータの配置、を決定するものではない。
【０００９】
そこで、本発明の目的は、ネットワーク上での仮想ネットワーク機能の配置を解決するネットワークシステム、ネットワーク制御方法および制御装置を提供することにある。
【課題を解決するための手段】
【００１０】
本発明によるネットワーク制御装置は、複数のノードおよびサーバを有するネットワークを制御する装置であって、前記ネットワークのリンクおよびノードに関する第１情報と、仮想ネットワーク機能を配置可能なサーバのコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能のサーバへの配置を決定する配置先決定手段と、前記第１情報と前記第２情報とに基づいて、前記仮想ネットワーク機能を配置する配置先のサーバに接続する前記ネットワークのパスを決定するパス決定手段と、を有することを特徴とする。
本発明によるネットワーク制御方法は、複数のノードおよびサーバを有するネットワークを制御する方法であって、配置先決定手段が、前記ネットワークのリンクおよびノードに関する第１情報と、仮想ネットワーク機能を配置可能なサーバのコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能のサーバへの配置を決定し、パス決定手段が、前記第１情報と前記第２情報とに基づいて、前記仮想ネットワーク機能を配置する配置先のサーバに接続する前記ネットワークのパスを決定する、ことを特徴とする。
本発明によるネットワークシステムは、複数のノードおよびサーバを有するネットワークと前記ネットワークを制御する制御装置とを有するネットワークシステムであって、前記制御装置が、ネットワークのリンクおよびノードに関する第１情報と、仮想ネットワーク機能を配置可能なサーバのコンピューティングリソースに関する第２情報とに基づいて、要求された仮想ネットワーク機能のサーバへの配置を決定する配置先決定手段と、前記第１情報と前記第２情報とに基づいて前記仮想ネットワーク機能を配置する配置先のサーバに接続する前記ネットワークのパスを決定するパス決定手段と、を有する、ことを特徴とする。
【発明の効果】
【００１１】
本発明によれば、仮想ネットワーク機能のサーバへの配置とネットワークのパス設定とを一括で実行することで、ネットワーク上での仮想ネットワーク機能の最適な配置を実現できる。
【図面の簡単な説明】
【００１２】
【図１】図１は本発明の実施形態を実装するネットワークの一例を示すシステム構成図である。
【図２】図２は本発明の実施形態によるネットワークシステムでのサービスチェインの一例を示す模式的なネットワーク図である。
【図３】図３は本発明の第１実施形態による制御装置の概略的構成を示すブロック図である。
【図４】図４は第１実施形態におけるサーバの概略的構成を示すブロック図である。
【図５】図５は第１実施形態による制御装置に設けられたデータベースのデータ構成例を示す図である。
【図６】図６は第１実施形態による制御装置の概略的な動作を示すフローチャートである。
【図７】図７は本発明の第２実施形態による制御装置の概略的構成を示すブロック図である。
【図８】図８は第２実施形態による制御装置の動作を説明するための仮想リンクを示す模式的なネットワーク構成図である。
【図９】図９は第２実施形態による制御装置のネットワークパスの決定動作を示すフローチャートである。
【図１０】図１０は図８における物理リンクの選択動作を説明するための模式的なネットワーク構成図である。
【図１１】図１１は第２実施形態による制御装置のサーバ選択動作およびサービスチェインパスの決定動作を示すフローチャートである。
【図１２】図１２は図１１におけるサーバ選択動作およびサービスチェインパスの決定動作を説明するための模式的なネットワーク構成図である。
【図１３】図１３は本発明の実施形態を実装するネットワークの他の例を示すシステム構成図である。
【図１４】図１４は本発明の第３実施形態による運用管理装置の概略的構成を示すブロック図である。
【図１５】図１５は第３実施形態における運用管理装置によるネットワーク可視化の一例である表示画面を模式的に示す図である。
【図１６】図１６は第３実施形態における運用管理装置によるサービスチェイン可視化の一例である表示画面を模式的に示す図である。
【図１７】図１７は本発明の第４実施形態による運用管理装置の概略的構成を示すブロック図である。
【図１８】図１８は本発明の第５実施形態による制御装置の概略的構成を示すブロック図である。
【図１９】図１９は第５実施形態におけるネットワークノードの概略的構成を示すブロック図である。
【図２０】図２０は第５実施形態におけるサーバの概略的構成を示すブロック図である。
【図２１】図２１は第５実施形態において採用されるオープンフロー技術について説明するための模式的なシステム構成図である。
【図２２】図２２は図２１におけるフローテーブルに格納されるエントリの構成を模式的に示すフォーマット図である。
【図２３】図２３は本発明の第６実施形態による仮想ネットワーク機能の配置決定方法を説明するためのネットワーク機能フォワーディンググラフを示す図である。
【図２４】図２４は第６実施形態におけるアンダーレイネットワークトポロジを示すネットワーク図である。
【図２５】図２５は第６実施形態における拡張ネットワークトポロジを示すネットワーク図である。
【図２６】図２６は第６実施形態における拡張ネットワークトポロジを用いたサービスチェインのＶＮＦ配置を示すネットワーク図である。
【図２７】図２７は図２６におけるＶＮＦ配置決定の際のフロー保存則を説明するための模式的なネットワーク図である。
【図２８】図２８は図２６におけるＶＮＦ配置決定の際の帯域制約条件を説明するための模式的なネットワーク図である。
【図２９】図２９は図２６におけるＶＮＦ配置決定の際のコンピューティング制約条件を説明するための模式的なネットワーク図である。
【図３０】図３０は図２６におけるＶＮＦ配置決定の際のＶＮＦリンク制約条件を説明するための模式的なネットワーク図である。
【発明を実施するための形態】
【００１３】
Ａ．本発明の実施形態の概要
本発明の実施形態によれば、仮想ネットワーク機能（ＶＮＦ）の配置とネットワークのパス設定とを一括で実行することにより、アンダーレイネットワークの通信特性および通信性能を考慮した最適なＶＮＦ配置を実現できる。以下、図１に示すネットワークシステムを参照しながら本発明の実施形態の概要を説明する。
【００１４】
図１に示すように、制御装置１０はネットワーク２０を制御し、後述するＶＮＦの配置とネットワークのパス設定とを一括で実行する。ネットワーク２０は複数のＮＷ（ネットワーク）ノードおよび複数のサーバＳＶ１〜ＳＶｎを含み、それらが隣接するノードあるいはサーバと物理リンクで接続されている。なお、制御装置１０はネットワークの運用管理装置内に設けられてもよい。
【００１５】
各サーバは、複数の仮想ネットワーク機能ＶＮＦ１〜ＶＮＦｎにそれぞれ実行する仮想マシン（ＶＭ：Virtual Machine）を構築することができる。ここでは、各ＶＮＦがサーバＳＶ１〜ＳＶｍに配置可能であるものとする。図１において、各サーバＳＶと各ＶＮＦとを相互に接続する破線はＶＮＦの配置可能性を表し、これらの相互接続の集合が「ＶＮＦの可能な配置」である。この「ＶＮＦの可能な配置」において、サーバとそこに配置される仮想マシンＶＭとをネットワークトポロジの構成要素とし、かつ、仮想マシンの配置の可否判断に必要な情報（サーバの空き容量および計算能力、仮想マシンの要求条件など）を各構成要素に関連づける。これにより「ＶＮＦの可能な配置」に示す相互接続をネットワーク２０のトポロジの拡張と考えることができる。この拡張されたネットワークトポロジを用いることで、ＶＮＦのサーバへの配置とネットワークパスの設定とを一括で実行することが可能となる。
【００１６】
たとえば、図１において、ネットワーク２０のＮＷノードＡと仮想ネットワーク機能ＶＮＦ１との間の仮想リンクをアンダーレイヤにマッピングしようとする場合を一例として考える。この例では、ＮＷノードＡから各サーバＳＶまでの可能なパス（ネットワークリソース情報）と、各サーバＳＶとＶＮＦ１との間の相互接続（各サーバへのＶＮＦ１配置のためのコンピューティングリソース情報）と用いて、ＶＮＦ１に要求されるリソースを満たす最適経路を一括して計算することができる。図１では、ＮＷノードＡとサーバＳＶ２との間のネットワークパスＰとＶＮＦ１の配置先としてのサーバＳＶ２とが最適解として例示されている。言うまでもなく、アンダーレイヤネットワークの状態およびサーバＳＶの計算能力の変化等により条件が変化すれば、仮想リンクおよびＶＮＦ１の要求に最も合致した別のネットワークパスおよび／または別のサーバが最適解となり得る。
【００１７】
なお、複数の連結されたＶＮＦを通して２つのＮＷノードの間に通信経路を設定する場合には、当該通信経路を分割して上述した手順を順次適用すればよい。たとえば、一方のＮＷノードから第１のＶＮＦの間で上述した手順を適用し、第１のＶＮＦから次のＶＮＦの間、更にその次のＶＮＦというように順次適用し、最後のＶＮＦから他方のＮＷノードの間に適用する。
【００１８】
Ｂ．サービスチェイン
以下、説明を簡略化するために、図２に示すネットワーク構成を参照しながら、本発明の実施形態におけるサービスチェインについて説明する。
【００１９】
図２において、ネットワークノードＮ１〜Ｎ４が相互に物理リンクで接続されており、ネットワークノードＮ２およびＮ４の各々がサーバＳＶ１〜ＳＶ４に物理リンクで接続されているものとする。各サーバは２つの仮想ネットワーク機能ＶＮＦ＿ＡとＶＮＦ＿Ｂを配置可能である。なお、ネットワークノードＮ１〜Ｎ４およびサーバＳＶ１〜ＳＶ４は、図示されていない制御装置１０の制御により上述した仮想リンクを設定する。以下、ノードＮ１〜Ｎ４の任意の１つを「ノードＮ」、サーバＳＶ１〜ＳＶ４の任意の１つを「サーバＳＶ」と適宜略記する。
【００２０】
図２に示すサービスチェインＰｓｃは、太線で示されるように、ネットワークノードＮ１から、ネットワークノードＮ２およびサーバＳＶ１を通して仮想ネットワーク機能ＶＮＦ＿Ａまでの仮想リンクと、ＶＮＦ＿ＡからサーバＶ１を通してＶＮＦ＿Ｂまでの仮想リンクと、ＶＮＦ＿ＢからサーバＳＶ１およびネットワークＮ２を通してネットワークノードＮ３までの仮想リンクと、からなる。ここでは、サーバＳＶ１にＶＮＦ＿ＡとＶＮＦ＿Ｂが配置されたものとする。
【００２１】
ネットワークのパスは、サービスチェインＰｓｃに対応する仮想リンクを構成する物理リンクの集合として定義される。すなわち、図２において、ネットワークノードＮ１−ネットワークノードＮ２−サーバＳＶ１と、サーバＳＶ１−ネットワークノードＮ２−ネットワークノードＮ３とを経由する物理パスの集合がネットワークのパスである。
【００２２】
以下、図２に示すＶＮＦ＿ＡおよびＶＮＦ＿Ｂのサービスチェインを一例として、本発明の実施形態について具体的に説明する。
【００２３】
１．第１実施形態
１．１）システム構成
図３において、本発明の第１実施形態による制御装置１０は、データベース１１１およびパス決定部１１２を有し、ネットワーク２０のノードＮ１〜Ｎ４およびサーバＳＶ１〜ＳＶ４を制御する。パス決定部１１２はＶＮＦのサーバへの配置とサービスチェインに対応するネットワークのパス設定とを一括で実行する。データベース１１１は、後述するように（図５参照）、パス決定部１１２が上記動作を実行するための情報を有する。なお、図示されていないが、制御装置１０は、ネットワーク２０内のノード、サーバ等から後述する情報を収集してデータベース１１１を構築する機能を有する。
【００２４】
図４において、各サーバＳＶは、複数のＶＮＦをそれぞれ実行する複数の仮想マシンＶＭ１、ＶＭ２、・・・を設定可能であり、本実施形態では二つの仮想マシンＶＭ１およびＶＭ２にＶＮＦ＿ＡおよびＶＮＦ＿Ｂを配置することができるものとする。仮想マシンＶＭおよびサーバとしての動作は制御部１１３により制御される。
【００２５】
図５に示すように、データベース１１１に格納される情報は、ネットワークトポロジの構成要素（リンク、スイッチ等）に関する情報と、ネットワークトポロジの構成要素に関するパラメータと、を含む。パラメータは、パス決定部１１２がサービスチェインに対応するネットワークのパス設定を実行するために用いられる。
【００２６】
本実施形態におけるデータベース１１１は、ネットワークトポロジの構成要素として、ネットワークに関する情報（リンク、スイッチに関する情報）に加えて、コンピューティングリソースに関する情報（サーバ、仮想マシンに関する情報）を保持している。上述したように、サーバとそこに配置されるＶＮＦを実行する仮想マシンＶＭとをネットワークトポロジの構成要素として表現することでネットワークトポロジを拡張し、さらに、仮想マシンＶＭの配置の判断に必要なパラメータ（ＣＰＵ使用率や、ＶＭの要求条件等）を構成要素に関連付けることで、仮想マシンＶＭの配置とネットワークパス設定とを一括で実行することが可能となる。
【００２７】
１．２）パス決定動作
図６に示すように、制御装置１０のパス決定部１１２は、ネットワークに関する第一の要求条件とコンピューティングリソースに関する第二の要求条件とを参照する（動作Ｓ２１１）。ここで、「第一の要求条件」は、サービスチェインを構成するネットワークに対する要求条件であり、例えば、要求される通信帯域等である。「第二の要求条件」は、仮想マシンＶＭ（ＶＮＦ）の実行基盤となるコンピューティングリソースに対する要求条件であり、例えばサーバに要求されるＣＰＵ／メモリリソース等である。
【００２８】
続いて、パス決定部１１２は、データベース１１１を参照して、ネットワークに関する第一のパラメータとコンピューティングリソースに関する第二のパラメータとを参照する（動作Ｓ２１２）。ここで、「第一のパラメータ」は、ネットワークトポロジの構成要素のうちリンク、スイッチ等の、本来的にネットワークを構成するエンティティに対応付けられたパラメータであり、具体的には使用可能な通信帯域等である。「第二のパラメータ」は、ネットワークトポロジの構成要素のうちサーバ、仮想マシン等の、本来的にコンピューティングに関するエンティティに対応付けられたパラメータであり、具体的にはＣＰＵ使用率、要求されるＣＰＵ能力等である。
【００２９】
続いて、パス決定部１１２は、上述した第一のパラメータおよび第二のパラメータに基づいて、上述した第一の要求条件および第二の要求条件を満たすネットワーク上でのサービスチェインのパス（ＶＭの配置を含む）を決定する（動作Ｓ２１３）。
【００３０】
１．３）効果
上述したように、本発明の第１実施形態によれば、ネットワークに関する第一のパラメータとコンピューティングに関する第二のパラメータとに基づいて、仮想ネットワーク機能（ＶＮＦ）の配置とネットワークのパス設定との両方を、すなわちネットワーク上の仮想ネットワーク機能（ＶＮＦ）の配置を、要求条件を満たすように一度で決定することができる。これにより、アンダーレイネットワークの通信特性および通信性能を考慮した最適なＶＮＦ配置が可能となる。
【００３１】
２．第２実施形態
本発明の第２実施形態による制御装置１０は、ネットワーク条件に関する比較結果とコンピューティング条件に関する比較結果とに基づいて、要求を満たすネットワーク上でのサービスチェインのパスを決定する。以下、図７〜図１２を参照しながら第２実施形態について詳述する。
【００３２】
２．１）システム構成
図７において、本発明の第２実施形態による制御装置１０はデータベース１１１およびパス決定部１２２を有し、さらに、第１実施形態と同様に、ネットワークのノード等から情報を収集してデータベース１１１を構築する機能を有する。データベース１１１は、第１実施形態と同様であり、図５に示すように、パス決定部１２２がパス決定動作を実行するための情報を格納する。なお。サーバＳＶについては、第１実施形態と同様に、図４に示す構成を有する。
【００３３】
パス決定部１２２は、ネットワーク条件比較部１２２ａとコンピューティング条件比較部１２２ｂとを有する。ネットワーク条件比較部１２２ａは、ネットワークに関する要求条件（第１実施形態の「第一の要求条件」）とネットワークに関する構成要素のパラメータとを比較し、要求条件を満たすパスを検索する。コンピューティング条件比較部１２２ｂは、コンピューティングに関する要求条件（第１実施形態の「第二の要求条件」）とコンピューティングに関する構成要素（サーバ）のパラメータとを比較し、要求条件を満たす構成要素（ＶＭの配置先）を検索する。
【００３４】
なお、制御装置１０のパス決定部１２２は、次に述べるパス決定制御プログラムを実行するプロセッサ（ＣＰＵ：Central Processing Unit）と、プログラムを保持するＲＯＭ(Read Only Memory)および情報を保持するＲＡＭ(Random Access Memory)等の記憶装置と、により実現することもできる。
【００３５】
２．２）パス決定動作
以下、ネットワーク条件比較部１２２ａおよびコンピューティング条件比較部１２２ｂを含むパス決定部１２２のパス決定動作について説明する。
【００３６】
図８に示すように、パス決定部１２２はサービスチェインを作成するにあたり、まず、始点(Source)と終点(Destination)のみを定めた仮想的なリンクを要求条件と共に設定する。すなわち、ネットワークノードＮ１を始点、仮想ネットワーク機能ＶＮＦ＿Ａを終点とする仮想リンクＶＬを設定し、始点と終点との間で実際に経由する物理リンクについてはDon’t Careとする。仮想リンクＶＬを設定するのは、ネットワークの管理者等が行ってもよいし、制御装置自身が設定してもよい。
【００３７】
＜ネットワーク条件比較＞
図９において、ネットワーク条件比較部１２２ａは、上述した仮想リンクＶＬをサービスチェインのパス設定の対象として参照し（動作Ｓ２２１）、この仮想リンクＶＬを構成するための物理リンクの候補を選択する（動作Ｓ２２２）。続いて、ネットワーク条件比較部１２２ａは、物理リンクの候補からネットワーク要求条件（要求される通信帯域等）を満たす物理リンクを選択する（動作Ｓ２２３）。
【００３８】
まず、図８に示すネットワークにおいて、始点のノードＮ１から終点のＶＮＦ＿Ａへ向かう可能な物理リンク（実線）が物理リンクの候補として選択される（動作Ｓ２２２）。
【００３９】
続いて、図１０に示すように、物理リンクの候補から、ネットワーク要求条件（要求される通信帯域等）を満たす物理リンクが選択される（動作Ｓ２２３）。たとえば、始点のノードＮ１から終点のＶＮＦ＿Ａへ向かう可能な通信経路のうち要求条件を満たすものが太線の矢印で表された物理リンクＰＨＹＬ１およびＰＨＹＬ２／ＰＨＹＬ３、またはＰＨＹＬ４およびＰＨＹＬ５であるとすれば、これらの物理リンクが仮想リンクＶＬを構成するための物理リンクとして選択される。なお、サーバＳＶとＶＮＦ間は実線ではなく破線で表されているが、これは、サーバＳＶとＶＮＦ間に実際には物理リンクが存在せず、既に述べたように、ＶＮＦの配置とパス設定とを一括で計算するために用いる便宜上のリンクであることを意味している。
【００４０】
なお、図５に示すデータベース１１１においては、図１０に示す実線あるいは太線矢印で示された物理リンクに通信帯域等の通信に関するパラメータが対応付けられ、ＶＮＦやサーバＳＶにＣＰＵ使用率、要求されるＣＰＵ／メモリ能力等のコンピューティングに関するパラメータが対応付けられている。
【００４１】
＜コンピューティング条件比較（１）＞
図１１において、コンピューティング条件比較部１２２ｂは、ＶＮＦを実行する仮想マシンＶＭに対するパラメータおよびコンピューティング要求条件を参照する（動作Ｓ２２４）。続いて、コンピューティング条件比較部１２２ｂは、パラメータとコンピューティング要求条件とを比較し、当該仮想マシンを配置する全てのサーバＳＶであるサーバ候補からコンピューティング要求条件を満たすサーバＳＶを選択する（動作Ｓ２２５）。こうして選択されたコンピューティング要求条件を満たすサーバＳＶと上述したネットワーク条件比較により選択された物理リンク（図１０の太線矢印）とに基づいて、ネットワーク上でのサービスチェインのパス（ＶＭの配置を含む）を決定する（動作Ｓ２２６）。
【００４２】
図１２に太い破線矢印で示すように、上述した動作２２５によってＶＮＦ＿Ａの配置先がサーバＳＶ１に決定されると、図１０の太線矢印のうち物理リンクＰＨＹＬ１およびＰＨＹＬ２からなるネットワークパスが決定される。
【００４３】
＜コンピューティング条件比較（２）＞
上述したコンピューティング条件比較（１）では、上記ネットワーク条件比較動作とは独立してＶＮＦ＿Ａを配置可能な全てのサーバ候補の中から条件を満たすサーバを選択するという総当たり方式を採用したが、これに限定されるものではない。たとえば、上述したネットワーク条件比較により選択された物理リンク（図１０の太線矢印）に接続したサーバＳＶをサーバ候補として限定しておき、限定されたサーバ候補からコンピューティング要求条件を満たすサーバＳＶを選択してもよい。この方式は、ネットワーク条件比較結果を利用することにより、総当たり方式の場合よりもコンピューティング要求条件を確認するサーバ数が減少するという利点がある。
【００４４】
２．３）効果
上述したように、本発明の第２実施形態においても、第１実施形態と同様に、アンダーレイネットワークの通信特性および通信性能を考慮した最適なＶＮＦ配置が可能となる。すなわち、ネットワークに関するパラメータとネットワーク要求条件との比較と、コンピューティングに関するパラメータとコンピューティング条件との比較とを実行することで、仮想ネットワーク機能（ＶＮＦ）の配置とネットワークのパス設定との両方を、すなわちネットワーク上の仮想ネットワーク機能（ＶＮＦ）の配置を、一度で決定することができる。さらに、第２実施形態によれば、ネットワーク条件比較の結果を利用することで、コンピューティング条件比較の計算負荷を軽減することも可能となる。
【００４５】
３．第３実施形態
図１３に示すように、本発明の第３実施形態によるネットワークシステムでは、運用管理装置３０が制御装置１０に対する各種設定および決定されたサービスチェインの通信経路の表示を行うことができる。その他の構成および機能は上述した第１実施形態あるいは第２実施形態と同様であるから、図１と同じ参照番号を使用して説明は省略する。なお、制御装置１０は運用管理装置３０内に設けられてもよい。
【００４６】
３．１）運用管理装置
図１４において、運用管理装置３０は、仮想リンク設定部３０１、要求条件設定部３０２、インターフェース３０３、およびユーザインターフェース３０４を有し、その他、図示しない制御部や記憶部を有する。ユーザインターフェース３０４はキーボード等の情報入力部とモニタ等の情報表示部とを含み、運用管理者による仮想リンク設定および要求条件設定、制御装置１０により決定されたネットワーク上のＶＮＦ配置および経路の可視化などを可能にする。
【００４７】
仮想リンク設定部３０１は、運用管理者がユーザインターフェース３０４を通して入力したサービスチェインから仮想リンクを生成する。要求条件設定部３０２は、ネットワーク条件設定部３０５およびコンピューティング条件設定部３０６を有し、運用管理者の入力に基づいてサービスチェインを構成する際の要求条件（ネットワーク要求条件およびコンピューティング要求条件）を生成する。第２実施形態で述べたように、ネットワーク要求条件はサービスチェインにおけるネットワーク面の要求条件（例えば、要求通信帯域）などであり、コンピューティング要求条件はサービスチェインにおけるコンピューティングリソースの要求条件（例えば、要求されるＣＰＵ／メモリ能力）などである。以下、本実施形態による運用管理装置の動作について図１５および図１６を参照しながら説明する。
【００４８】
３．２）ネットワーク上のＶＮＦ配置の可視化
図１５に例示するように、ユーザインターフェース３０４に表示された運用管理画面４００は、入力ウィンドウ４００ａとネットワーク表示ウィンドウ４００ｂとに分割されている。入力ウィンドウ４００ａにはサービスチェイン入力欄４０１と複数の要求条件入力欄４０２とが表示され、ネットワーク表示ウィンドウ４００ｂには運用管理対象であるネットワークの物理的なトポロジが表示される。たとえば、運用管理装置３０は、制御装置１０のデータベース１１１からトポロジ情報を取得し、取得したトポロジ情報に基づいてネットワークの構成を表示する。
【００４９】
図１５において、ネットワーク表示ウィンドウ４００ｂに例示されるネットワークトポロジでは、ネットワークノードＡ、Ｂ、Ｃ、Ｄが相互に物理リンクで接続されており、ネットワークノードＢおよびＤの各々がサーバＡ、Ｂ、Ｃに物理リンクで接続されている。また、各サーバは２つの仮想ネットワーク機能ＶＮＦ＿ＡとＶＮＦ＿Ｂを配置可能であるとする。
【００５０】
図１５に示すように、運用管理者がユーザインターフェース３０４を通してサービスチェイン入力欄４０１に次のようなサービスチェインを入力したとする：
Ａ  ⇔  ＶＮＦ＿Ａ  ⇔  ＶＮＦ＿Ｂ  ⇔  Ｂ。
【００５１】
このサービスチェインが入力されると、仮想リンク設定部３０１は、このサービスチェインを実現するための次のような仮想リンク情報ＶＬ１、ＶＬ２およびＶＬ３を生成する。
ＶＬ１：始点＝NWノード(A)；終点＝VNF_A
ＶＬ２：始点＝VNF_A      ；終点＝VNF_B
ＶＬ３：始点＝VNF_B      ；終点＝NWノード(C)
【００５２】
また、要求条件入力欄４０２に、ネットワークに要求される通信帯域とサーバに要求されるＣＰＵ／メモリ能力とが入力されると、要求条件設定部３０２は、ネットワーク要求条件とコンピューティング要求条件とをそれぞれ生成し、上記仮想リンク情報（ＶＬ１、ＶＬ２、ＶＬ３）と共に制御装置１０へ送信し設定する。
【００５３】
制御装置１０は、第１あるいは第２実施形態で説明したように、運用管理装置３０により設定された仮想リンク情報および要求条件情報に基づいて、仮想リンクＶＬ１、ＶＬ２およびＶＬ３のそれぞれについて最適パスを計算する。最適パスの計算結果はネットワーク２０のノードおよびサーバと運用管理装置３０へ送信される。
【００５４】
図１６に例示するように、最適パス情報を受信した運用管理装置３０のユーザインターフェース３０４では、運用管理画面４００のネットワーク表示ウィンドウ４００ｂに、仮想リンクＶＬ１、ＶＬ２およびＶＬ３にそれぞれ対応する最適パスＲＰ１、ＲＰ２およびＲＰ３が表示される。この例では、仮想リンクＶＬ１を構成するネットワークパスがNWノード(A)−NWノード(B)−サーバ(A)、仮想リンクＶＬ２を構成するネットワークパスがサーバ(A)−NWノード(B)−サーバ(B)、仮想リンクＶＬ３を構成するネットワークパスがサーバ(B)−NWノード(D)−NWノード(C)、仮想ネットワーク機能ＶＮＦ＿Ａの配置先がサーバＡ、仮想ネットワーク機能ＶＮＦ＿Ｂの配置先がサーバＢである。
【００５５】
なお、運用管理装置３０の仮想リンク設定部３０１および要求条件設定部３０２は、上述したような運用管理プログラムを実行するプロセッサ（ＣＰＵ：Central Processing Unit）と、プログラムを保持するＲＯＭ(Read Only Memory)および情報を保持するＲＡＭ(Random Access Memory)等の記憶装置と、により実現することもできる。
【００５６】
３．３）効果
上述したように、本発明の第３実施形態によれば、運用管理装置３０が制御装置１０に対して各種設定を行うことができ、運用管理者が設定したサービスチェインおよび要求条件に基づいて、第１および第２実施形態と同様に、アンダーレイネットワークの通信特性および通信性能を考慮した最適なＶＮＦ配置が可能となる。
【００５７】
特に、第３実施形態によれば、運用管理者がユーザインターフェースを通して制御装置１０により計算されたネットワーク上のＶＮＦ配置を視覚的に確認することができ、ネットワークの運用管理が容易になるという利点がある。
【００５８】
４．第４実施形態
図１７に示すように、本発明の第４実施形態による運用管理装置３１は、第３実施形態による運用管理装置３０の構成に加えてパス制御部３１１を設けた構成を有する。したがって、運用管理装置３０と同様のブロックには同じ参照番号を付して説明は省略する。
【００５９】
図１７において、パス制御部３１１は、仮想リンク設定部３０１および要求条件設定部３０２により設定された仮想リンク情報および要求条件情報を用いて、上述したように、アンダーレイネットワークの通信特性および通信性能を考慮した最適なＶＮＦ配置の計算（制御装置１０のパス決定）を行う。最適パスの計算結果は、インターフェース３０３を通して制御装置１１へ送信されると共に、ユーザインターフェース３０４へ転送される。したがって、本実施形態による運用管理装置３１は、第３実施形態と同様に、運用管理画面４００のネットワーク表示ウィンドウ４００ｂに最適パスを表示する（図１６参照）。パス決定がパス制御部３１１で行われるために、本実施形態における制御装置１１には、第１〜第３実施形態における制御装置１０のパス決定部１１２および１２２が不要となる。
【００６０】
上述したように、本発明の第４実施形態による運用管理装置３１においても、上述した第３実施形態による運用管理装置３０と同様の効果を有する。さらに、運用管理装置３１は、ネットワーク上の最適なＶＮＦ配置を内部で計算しているので、制御装置１１へ転送される前に、運用管理者がサービスチェインを構成する物理リンクおよびＶＮＦ配置をモニタで確認することができ、ネットワークの運用管理の信頼性を向上させることができる。また、制御装置１１は、パス決定動作が不要となるので、構成の簡略化および消費電力の削減も可能となる。
【００６１】
５．第５実施形態
本発明の第５実施形態による制御装置は、上述した各実施形態によりネットワークにおけるサービスチェインのパスを決定し、当該パスに沿って通信フローが転送されるようにネットワークノードおよびサーバを制御する。以下、図１８〜図２２を参照しながら第５実施形態について詳述する。
【００６２】
５．１）システム構成
図１８に示すように、本発明の第５実施形態による制御装置１２は、データベース１１１、パス決定部１１２および制御部１３１を有し、さらに、第１実施形態と同様に、ネットワークのノード等から情報を収集してデータベース１１１を構築する機能を有する。データベース１１１は、第１実施形態と同様であり、図５に示すように、パス決定部１１２がパス決定動作を実行するための情報を格納する。なお、パス決定部１１２の代わりに、第２実施形態におけるパス決定部１２２を用いることもできる。制御部１３１には、ネットワーク２０のノードを制御するネットワーク制御部１３２とサーバ内の仮想マシン（ＶＭ）間のデータ転送を制御するＶＭ制御部１３３とが機能的に設けられている。制御部１３１は、パス決定部１１２により決定されたパスに沿って通信フローが転送されるようにネットワークノードＮおよびサーバＳＶを制御する。
【００６３】
図１９に示すように、第５実施形態におけるネットワークノードＮは、データ転送部５０１、経路情報データベース５０２、および制御装置１２と通信を行うためのインターフェース５０３を有する。ネットワークノードＮは、サービスチェインに属するフローを識別するための条件と当該フローのパケットの転送先とを含むデータを制御装置１２から受信し、経路情報データベース５０２に格納する。データ転送部５０１は、経路情報データベース５０２に格納された条件および転送先情報に従って、サービスチェインに属するフローのパケットを識別し、対応する転送先（ノードあるいはサーバ）へ転送する。
【００６４】
図２０に示すように、第５実施形態におけるサーバＳＶは、複数のＶＮＦをそれぞれ実行するための複数の仮想マシンＶＭと、複数の仮想マシンＶＭおよび隣接するネットワークノードの間の通信フローの切り替えを行う仮想スイッチ６００とを有する。
【００６５】
仮想スイッチ６００は、本実施形態におけるネットワークトポロジの一つのネットワークノードと見なすことができ、データ転送部６０１、経路情報データベース６０２、および制御装置１２と通信を行うためのインターフェース６０３を有する。仮想スイッチ６００は、サービスチェインに属するフローを識別するための条件と当該フローのパケットの転送先とを含むデータを制御装置１２から受信し、経路情報データベース６０２に格納する。データ転送部６０１は、経路情報データベース６０２に格納された条件および転送先情報に従って、隣接するネットワークサーバＮあるいは一つの仮想マシンＶＭから受信したパケットがサービスチェインに属するフローであるか否かを識別し、対応する転送先（仮想マシンＶＭあるいはネットワークサーバＮ）へ転送する。したがって、一つのサーバＳＶ内にある仮想マシンＶＭ間のパケット転送であれば、外部のネットワークノードへ転送することなくサービスチェインを構成できる。
【００６６】
なお、制御装置１２、ネットワークノードＮおよびサーバＳＶは、既に述べたようにそれぞれの動作を制御するプログラムを実行するプロセッサ（ＣＰＵ：Central Processing Unit）と、プログラムを保持するＲＯＭ(Read Only Memory)および情報を保持するＲＡＭ(Random Access Memory)等の記憶装置と、により実現することもできる。
【００６７】
上述したように、サービスチェインに属するフローを識別するための条件と当該フローのパケットの転送先とを含む情報を制御装置１２が設定する集中制御型のネットワークアーキテクチャシステムは、たとえばオープンフロー（OpenFlow）、I2RS(Interface to the Routing System)、ForCES（Forwarding and Control Element Separation）等により実現することが可能である。以下、制御装置１２およびネットワークノードＮ／サーバＳＶの実装例としてオープンフローを用いたものを示す。
【００６８】
５．２）オープンフロー
オープンフローは、通信をエンドツーエンドのフローとして認識し、フロー単位で経路制御、障害回復、負荷分散等を実行する。ここで、フローとは、例えば所定の属性を有する一連の通信パケット群のことであり、本実施形態においては設定されたサービスチェインに属するフローをいう。以下、図２１に示すネットワークを一例としてオープンフローについて説明する。
【００６９】
図２１において、オープンフロースイッチ(OpenFlow Switch)７０１、７０２、７０３はオープンフロー技術を採用したネットワークスイッチであり、本実施形態ではネットワークノードＮあるいはサーバＳＶの仮想スイッチ６００に相当する。オープンフローコントローラ(OpenFlow Controller)７０４はオープンフロースイッチ７０１、７０２、７０３を制御する情報処理装置であり、本実施形態では制御装置１２に相当する。
【００７０】
各オープンフロースイッチ７０１、７０２、７０３は、オープンフローコントローラ７０４との間にセキュアチャネル(Secure Channel)７０５が設定されており、セキュアチャネル７０５を通してオープンフローコントローラ７０４と通信する。オープンフローコントローラ７０４は、セキュアチャネル７０５を介して、オープンフロースイッチ７０１、７０２、７０３のフローテーブル(Flow Table)７０６の設定を行う。なお、セキュアチャネル７０５は、各オープンフロースイッチ７０１、７０２、７０３とコントローラ７０４との間の通信経路であって、通信の盗聴や改ざん等を防止するための処置がなされたものである。
【００７１】
図２２は、各オープンフロースイッチ７０１、７０２、７０３に設けられたフローテーブル７０６の各エントリ（フローエントリ）の構成例を示す。フローエントリは、スイッチが受信したパケットのヘッダに含まれる情報（例えば、宛先ＩＰアドレスやＶＬＡＮ  ＩＤ等）と照合するためのマッチングルールを規定するマッチフィールド(Match Fields)と、パケットフロー毎の統計情報を示すフィールド（Counters）と、マッチングルールにマッチするパケットの処理方法を規定するアクションフィールド（Action）とで構成される。
【００７２】
オープンフロースイッチ７０１、７０２、７０３は、パケットを受信すると、フローテーブル７０６を参照する。オープンフロースイッチ７０１、７０２、７０３は、受信したパケットのヘッダ情報にマッチするフローエントリを検索する。受信パケットのヘッダ情報にマッチするエントリが検索された場合、オープンフロースイッチ７０１、７０２、７０３は、検索されたエントリのアクションフィールドに定義された処理方法に従って、受信パケットを処理する。処理方法は、例えば、「受信パケットを所定のポートから転送する」、「受信したパケットを廃棄する」、「受信パケットのヘッダの一部を書き換えて、所定のポートへ転送する」といったことが規定されている。
【００７３】
一方、受信パケットのヘッダ情報にマッチするエントリが見つからない場合、オープンフロースイッチ７０１、７０２、７０３は、例えば、セキュアチャネル７０５を通してオープンフローコントローラ７０４へ受信パケットを転送し、オープンフローコントローラ７０４に対して受信パケットの処理方法を規定したフローエントリの設定を要求する。
【００７４】
オープンフローコントローラ７０４は、受信パケットの処理方法を決定し、決定した処理方法を含むフローエントリをフローテーブル７０６に設定する。その後、オープンフロースイッチ７０１、７０２、７０３は、設定されたフローエントリにより、受信パケットと同一のフローに属する後続のパケットを処理する。
【００７５】
５．３）効果
本発明の第５実施形態によれば、第１〜第４実施形態と同様にサービスチェインのパスを決定し、当該パスに沿って通信フローが転送されるようにネットワークのノードあるいはサーバを制御するので、アンダーレイネットワークの通信特性および通信性能を考慮した最適なＶＮＦ配置が可能となる。
【００７６】
特に、サーバＳＶ内に複数のＶＮＦをそれぞれ実行する複数の仮想マシンを仮想スイッチにより切り替え可能に構成することで、ネットワークノードの経路切替とサーバ内での仮想マシンの切替とを同等に制御することができ、たとえばオープンフロー技術を用いた一括制御が可能となる。
【００７７】
６．第６実施形態
既に述べたように、サービスチェイニングでは、単に仮想マシンの配置を考慮するだけでは不十分であり、コンピューティングおよびネットワーキングの両方のリソースを考慮することが必要である。本発明の第６実施形態によれば、必要とされるＶＮＦとそれを配置可能なサーバとを含むようにネットワークトポロジを拡張し、この拡張トポロジに基づいてネットワーク上での仮想マシン（ＶＮＦ）の最適配置を決定する。このＶＮＦ配置の最適解は、たとえば整数計画法(Integer Programming)を用いて求めることができる。
【００７８】
まず、図２３に示すように、クラシファイアＡおよびＢの間に仮想ネットワーク機能ＶＮＦ＿ＡおよびＶＮＦ＿Ｂを組み合わせたサービスチェインを示すフォワーディンググラフを考える。組み合わせるＶＮＦには必要なＣＰＵ能力およびメモリサイズ（コンピューティング要求条件）が設定され、仮想リンクには始点および終点と必要な帯域幅（ネットワーク要求条件）とが設定されている。このフォワーディンググラフは、上述した図１５におけるサービスチェイン入力欄４０１および要求条件欄４０２の入力内容に対応する。
【００７９】
図２４に、上記フォワーディンググラフの仮想リンクを構成するためのアンダーレイネットワークトポロジを示す。クラシファイアとスイッチとの間、およびスイッチとサーバとの間は、それぞれ物理リンクにより相互接続され、各物理リンクは利用可能な帯域幅（ネットワークパラメータ）を有する。また、各サーバは利用可能なＣＰＵおよびメモリサイズ（コンピューティングパラメータ）を有する。
【００８０】
図２５に、上記アンダーレイネットワークトポロジにＶＮＦ＿ＡおよびＶＮＦ＿Ｂの可能な配置を付加した拡張トポロジを示す。サーバとＶＮＦとを相互接続する破線により当該サーバが当該ＶＮＦの配置先であることを示す。この拡張トポロジに基づいて整数計画法によりサービスチェインの配置を決定する。
【００８１】
図２６に、ＶＮＦ＿ＡおよびＶＮＦ＿ＢがサーバＡに配置される場合の最適解が例示されている。ここでは、図２３に示すＮＦフォワーディンググラフ：クラシファイアＡ  ⇔  ＶＮＦ＿Ａ  ⇔  ＶＮＦ＿Ｂ  ⇔  クラシファイアＢに対して、図２６に示す太線の矢印で示す仮想リンクＶＬ１、ＶＬ２、ＶＬ３が生成される：
ＶＬ１：始点＝クラシファイアＡ；終点＝ＶＮＦ＿Ａ
ＶＬ２：始点＝ＶＮＦ＿Ａ      ；終点＝ＶＮＦ＿Ｂ
ＶＬ３：始点＝ＶＮＦ＿Ｂ      ；終点＝クラシファイアＢ
【００８２】
６．１）最適ＶＮＦ配置の決定
以下、図２６に示すようなネットワーク上での最適ＶＮＦ配置を決定する整数計画法による計算過程を示す。変数の定義は次の通りである。
・ＶＮＦのコンピューティング要求条件：required_cpux  (x:vnf_id)
・仮想リンク(VL)のネットワーク要求条件：required_bwx (x:vl_id)
・ネットワークパス（アンダーレイパス）：
・upathxij ∈ {0,1} (x:vl_id, i,j:underlay_node_id)  ここで、仮想リンクｘが物理ノードｉとｊとの間のリンクijを使用していれば、upathxij＝１である。
・サーバのコンピューティングパラメータ(利用可能CPU)：
available_cpus (s:server_id)
・リンクのネットワークパラメータ（利用可能帯域幅）：
available_bwij (i:from_id, j:to_id)
・目的関数Ｃの最小化／最大化によりVNF配置の最適解を計算する。目的関数Ｃの一例を次式に示す：
【００８３】
【数１】
2018191349.tif 000003
この式の場合、目的関数Ｃが最小となるupathxij＝１の物理リンクの集合が本実施形態におけるＶＮＦ配置の最適解となる。その際、次の制約条件を考慮する：フロー保存則；帯域幅制約条件；コンピューティング制約条件；およびＶＮＦリンク制約条件。以下、それぞれの制約条件について図２７〜図３３を参照しながら説明する。
【００８４】
６．２）フロー保存則
フロー保存則は仮想リンクをパスとして成立させるための条件であり、各仮想リンクがアンダーレイにマッピングされるとき満たす必要がある。以下、図２７を参照しながら説明する。
【００８５】
・次式に示すように、始点（source）と終点（destination）以外のノードの送信量と受信量の差は０でなければならない。
【００８６】
【数２】
2018191349.tif 000004
図２７において、"srcx”は仮想リンクVLの始点（ここではクラシファイアＡ）であり、“dstx”は仮想リンクVLの終点（ここではＶＮＦ＿Ａ）である。
【００８７】
・始点の送信量と受信量の差は１でなければならない。
【００８８】
【数３】
2018191349.tif 000005
【００８９】
・終点の送信量と受信量の差は−１でなければならない。
【００９０】
【数４】
2018191349.tif 000006
【００９１】
６．３）帯域幅制約条件
帯域幅制約条件は要求帯域を収容するための条件であり、リンクｉｊに仮想リンクVLがマッピングされている場合、当該リンクｉｊを通る総トラフィック量が当該リンクｉｊの使用可能な帯域幅に収容可能でなければならない。したがって、次式を満たす必要がある。
【００９２】
【数５】
2018191349.tif 000007
たとえば、図２８を参照すると、スイッチＡとサーバＡとの間の物理リンクには仮想リンクＶＬ１およびＶＬ３がマッピングされている。したがって、仮想リンクＶＬ１の要求帯域幅と仮想リンクＶＬ３の要求帯域幅の和は、当該物理リンクの利用可能帯域幅以下であることが必要である。
【００９３】
６．４）コンピューティング制約条件
コンピューティング制約条件は、仮想マシン(VM)が要求するコンピューティングリソース（ＣＰＵ、メモリ容量など）を収容するための条件であり、あるサーバを使用する仮想マシン(VM)の要求リソースの総和が当該サーバの使用可能なリソースに収容可能でなければならない。図２９に示すような重複を考慮して、次式を満たす必要がある。
【００９４】
【数６】
2018191349.tif 000008
【００９５】
６．５）ＶＮＦリンク制約条件
ＶＮＦリンク制約条件は、ＶＮＦを実行する仮想マシン(VM)の配置先を決めるための条件であり、次に述べるように、仮想マシン(VM)とサーバのリンクは一本しか使ってはならない。図３０に示すように、ＶＮＦ＿Ａを例として説明する。
【００９６】
・図３０（Ａ）に示すように、サーバからＶＭ（ＶＮＦ＿Ａ）へのリンクの使用は、次式に示すように、宛先をＶＭとする全ての仮想リンクで等しくなければならない。
upathsvx = upathsvy (∀s,∀ν,∀x|dstx=ν, ∀y|dstx=ν)
【００９７】
・図３０（Ｂ）に示すように、ＶＭ（ＶＮＦ＿Ａ）からサーバへのリンクの使用は、次式に示すように、送信元をＶＭとする全ての仮想リンクで等しくなければならない。
upathvsx = upathvsy (∀s,∀ν,∀x|srcx=ν, ∀y|srcx=ν)
【００９８】
・図３０（Ｃ）に示すように、サーバからＶＭ（ＶＮＦ＿Ａ）へのリンクの使用とＶＭ（ＶＮＦ＿Ａ）からサーバへのリンクの使用は、次式に示すように、等しくなければならない。
upathsvx = upathvsy (∀s,∀ν,∀x|dstx=ν, ∀y|srcx=ν)
【００９９】
６．６）効果
以上述べたように、本実施形態によれば、上記制約条件の下で線形計画法により、目的関数Ｃが最小となるupathxij＝１の物理リンクの集合をＶＮＦ配置の最適解として求めることができる。この最適解はネットワークパスおよびＶＮＦ配置の両方を含む拡張トポロジでの最適解となり、コンピューティングおよびネットワーキングリソースの両方を考慮したサービスチェイニング配置を達成することができる。また、整数計画法を用いることでネットワーク上でのＶＮＦ配置を迅速に得ることができる。
【産業上の利用可能性】
【０１００】
本発明は、仮想ネットワーク機能（ＶＮＦ）をネットワーク上に配置するシステムで利用可能である。
【符号の説明】
【０１０１】
１０、１１、１２  制御装置
２０  ネットワーク
３０、３１  運用管理装置
１１１  データベース
１１２  パス決定部
１１３  制御部
１２２  パス決定部
１２２ａ  ネットワーク条件比較部
１２２ｂ  コンピューティング条件比較部
１３１  制御部
１３２    ネットワーク制御部
１３３  仮想マシン制御部
３０１  仮想リンク設定部
３０２  要求条件設定部
３０３  インターフェース
３０４  ユーザインターフェース
３０５  ネットワーク条件設定部
３０６  コンピューティング条件設定部
３１１  パス制御部
４００  運用管理画面
４００ａ  入力ウィンドウ
４００ｂ  ネットワーク表示ウィンドウ
４０１  サービスチェイン入力欄
４０２  要求条件入力欄
５０１  データ転送部
５０２  経路情報データベース
５０３  インターフェース
６００  仮想スイッチ
６０１  データ転送部
６０２  経路情報データベース
６０３  インターフェース
７０１、７０２、７０３  オープンフロースイッチ
７０４  オープンフローコントローラ
７０５  セキュリティチャネル
７０６  フローテーブル
【図１】
2018191349.tif 000009
【図２】
2018191349.tif 000010
【図３】
2018191349.tif 000011
【図４】
2018191349.tif 000012
【図５】
2018191349.tif 000013
【図６】
2018191349.tif 000014
【図７】
2018191349.tif 000015
【図８】
2018191349.tif 000016
【図９】
2018191349.tif 000017
【図１０】
2018191349.tif 000018
【図１１】
2018191349.tif 000019
【図１２】
2018191349.tif 000020
【図１３】
2018191349.tif 000021
【図１４】
2018191349.tif 000022
【図１５】
2018191349.tif 000023
【図１６】
2018191349.tif 000024
【図１７】
2018191349.tif 000025
【図１８】
2018191349.tif 000026
【図１９】
2018191349.tif 000027
【図２０】
2018191349.tif 000028
【図２１】
2018191349.tif 000029
【図２２】
2018191349.tif 000030
【図２３】
2018191349.tif 000031
【図２４】
2018191349.tif 000032
【図２５】
2018191349.tif 000033
【図２６】
2018191349.tif 000034
【図２７】
2018191349.tif 000035
【図２８】
2018191349.tif 000036
【図２９】
2018191349.tif 000037
【図３０】
2018191349.tif 000038