(57)【要約】【課題】VNFのスケールアウトを行う際に、VNFのリソースの割当を自動で適切に行う。【解決手段】制御システム１０は、VNFの種別ごとに、当該種別のVNFが、同じコンピュータ内に他のVNFと共存可能なリソースの割当の条件を示したVNF相性条件と、コンピュータでVNFが使用中のリソースおよび未使用のリソースを示す使用リソース情報とを備える。そして、制御システム１０は、VNFの増設指示を受け付けた場合、増設対象のVNFの種類と、VNF相性条件と、使用リソース情報とを参照し、未使用のリソースの中から、増設対象のVNFに割り当てるリソースを判断するVNFデプロイ制御部１４と、判断されたリソースを、増設対象のVNFに割り当てるリソース割当処理部とを備える。【選択図】図１
2020021167.tif 000002
【特許請求の範囲】
【請求項１】
同じコンピュータ内にVNF（Virtual  Network  Function）を増設する際、前記増設の対象のVNFに前記コンピュータのリソースの割当を行う制御装置であって、
前記VNFの種別ごとに、当該種別のVNFが、同じコンピュータ内に他のVNFと共存可能なリソースの割当の条件を示したVNF相性条件と、前記コンピュータで前記VNFが使用中のリソースおよび未使用のリソースを示した使用リソース情報とを記憶する記憶部と、
前記VNFの増設に必要なリソース量を含む増設指示を受け付けた場合、前記増設の対象のVNFの種類と、前記VNF相性条件と、前記使用リソース情報とを参照し、前記未使用のリソースの中から、前記VNF相性条件を満たす、前記増設の対象のVNFへの割当リソースを判断するVNF制御部と、
前記判断されたリソースを、前記増設の対象のVNFに割り当てるリソース割当処理部と
を備えることを特徴とする制御装置。
【請求項２】
前記VNFに割り当てるリソースは、
前記コンピュータの備える、NIC（Network  Interface  Card）、コアおよびメモリの少なくともいずれかである
ことを特徴とする請求項１に記載の制御装置。
【請求項３】
前記VNF相性条件は、
前記VNFの種別ごとに、当該種別のVNFが、同じコンピュータ内の他のVNFとのNICの共有が許可されているか否かを示した情報
であることを特徴とする請求項２に記載の制御装置。
【請求項４】
前記VNF相性条件は、
前記VNFの種別ごとに、当該種別のVNFの用いるコアのNUMA（Non-Uniform  Memory  Access）またがりが許可されているか否かを示した情報
であることを特徴とする請求項２に記載の制御装置。
【請求項５】
前記記憶部は、さらに、
前記VNFの種別ごとに、当該種別のVNFの設定内容を示したVNF設定ファイルを記憶し、
前記VNF制御部は、さらに、
前記増設の対象のVNFへの割当リソースの判断結果に基づき、前記VNF設定ファイルにおける当該増設の対象のVNFの設定内容を修正し、
前記制御装置は、さらに、
当該増設の対象のVNFへのリソースの割当後に、前記修正後のVNF設定ファイルに基づき、当該増設の対象のVNFの設定を行う設定部を備える
ことを特徴とする請求項１に記載の制御装置。
【請求項６】
同じコンピュータ内にVNF（Virtual  Network  Function）を増設する際、前記増設の対象のVNFに前記コンピュータのリソースの割当を行う制御装置により実行される制御方法であって、
前記VNFの増設に必要なリソース量を含む増設指示を受け付けた場合、前記増設の対象のVNFの種類と、前記VNFの種別ごとに、当該種別のVNFが、同じコンピュータ内に他のVNFと共存可能なリソースの割当の条件を示したVNF相性条件と、前記コンピュータで前記VNFが使用中のリソースおよび未使用のリソースを示した使用リソース情報とを参照し、前記未使用のリソースの中から、前記VNF相性条件を満たす、前記増設の対象のVNFへの割当リソースを判断するステップと、
前記判断されたリソースを、前記増設の対象のVNFに割り当てるステップと
を含んだことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、および、制御方法に関する。
【背景技術】
【０００２】
トラフィックモニタリングやトラフィック分析の手法としてnetFlow等のフローコレクタを活用した手法がある。このフローコレクタは、宛先アドレス単位でトラフィックを監視する。そして、フローコレクタにおいて攻撃の疑いのあるトラフィックを検出すると、制御装置は、当該トラフィックを攻撃トラフィック用のVNF（Virtual  Network  Function）へ引き込み、詳細な解析を行う。なお、上記の攻撃トラフィック用のVNFとして、例えば、vRouterやvMitigationが用いられる。ここで、攻撃の疑いのあるトラフィックが検出されると、制御装置は、引込予定のトラフィックのトラフィック量に応じてVNFの増設（スケールアウト）を行う必要がある。
【０００３】
ここで、VNFのスケールアウトを行う際には、VNF同士の相性（VNF相性条件）を考慮し、VNFの性能を保持できるようなリソース（例えば、物理レイヤーにおけるCPU、メモリ、NIC等）の割当を行う必要がある。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】ニフクラ、［平成30年7月9日検索］、インターネット＜URL：https://cloud.nifty.com/service/autoscale.htm＞
【非特許文献２】ポータルでクラウドサービスの自動スケールを構成する方法、［平成30年7月9日検索］、インターネット＜URL：https://docs.microsoft.com/ja-jp/azure/cloud-services/cloud-services-how-to-scale-portal＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、VNFのスケールアウトを行う際に、VNF相性条件を考慮し、自動でVNFへのリソースの割当を行う技術はいままで提案されていなかった。そのため、VNFのスケールアウトを行う際には、システムの運用者等が、手動でVNFへのリソースの割当のためのチューニングを行う必要があった。そこで、本発明は、VNFのスケールアウトを行う際に、VNFへのリソースの割当を適切に自動で行うことを課題とする。
【課題を解決するための手段】
【０００６】
前記した課題を解決するため、本発明は、同じコンピュータ内にVNF（Virtual  Network  Function）を増設する際、前記増設の対象のVNFに前記コンピュータのリソースの割当を行う制御装置であって、前記VNFの種別ごとに、当該種別のVNFが、同じコンピュータ内に他のVNFと共存可能なリソースの割当の条件を示したVNF相性条件と、前記コンピュータで前記VNFが使用中のリソースおよび未使用のリソースを示した使用リソース情報とを記憶する記憶部と、前記VNFの増設に必要なリソース量を含む増設指示を受け付けた場合、前記増設の対象のVNFの種類と、前記VNF相性条件と、前記使用リソース情報とを参照し、前記未使用のリソースの中から、前記VNF相性条件を満たす、前記増設の対象のVNFへの割当リソースを判断するVNF制御部と、前記判断されたリソースを、前記増設の対象のVNFに割り当てるリソース割当処理部とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、VNFのスケールアウトを行う際に、VNFへのリソースの割当を自動で適切に行うことができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、制御システムの構成例および概要を説明するための図である。
【図２】図２は、図１のテンプレートの一例を説明するための図である。
【図３】図３は、図１のVNF設定ファイルの一例を説明するための図である。
【図４】図４は、図１のVNF相性条件の一例を示す図である。
【図５】図５は、図１のオーケストレータ部、VNFデプロイ制御部およびVIMを詳細に説明するための図である。
【図６】図６は、VNFが異なるベンダの仮想ルータである場合のスケールアウトの一例を示す図である。
【図７】図７は、図１の制御システムの変形例を説明するための図である。
【図８】図８は、VNF相性条件の他の例を示す図である。
【図９】図９は、制御プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照しながら、本発明を実施するための形態（実施形態）を説明する。本発明は、各実施形態に限定されない。
【００１０】
［概要］
まず、図１を用いて本実施形態の制御装置（制御システム）の概要を説明する。なお、以下に説明において、制御システムは、例えば、複数のVNFを制御する仮想化基盤により実現される。また、制御システムの各部は、１つの装置（例えば、サーバ）内に装備されてもよいし、それぞれ別個の装置に装備されてもよい。
【００１１】
本実施形態の制御システム１０は、VNFの管理および制御を行い、必要に応じてVNFの増設（スケールアウト）を行う。ここでは、制御システム１０がVNF2を増設する場合を例に説明する。
【００１２】
なお、以下の説明において、各VNF（VNF1、VNF2）は、同じコンピュータ（制御システム１０）内に構築される。つまり、増設の対象となるVNF2は同じコンピュータ内のVM（仮想マシン）により構築される。各VMは、制御システム１０のHV（ハイパーバイザ）、物理レイヤー（コア、メモリ、NIC（Network  Interface  Card）等）により実現される。
【００１３】
なお、VNFは、例えば、仮想ルータ等である。この仮想ルータは、外部から引き込まれたトラフィックの転送を行う。例えば、図１に示す制御システム１０のVM#1上のVNF1は、外部から引き込まれたトラフィックの転送処理を行う。
【００１４】
ここで制御システム１０は、例えば、VNF1（種別：VNF#1）に入力されるトラフィックを監視し、攻撃トラフィックを検知すると、当該攻撃トラフィックを処理するため、VM#2上にVNF#1のVNFを増設する。
【００１５】
例えば、制御システム１０内のフローコレクタ部１１は、VNF1のトラフィックの監視を行い（Ｓ１）、攻撃トラフィックを検知すると、リソース制御部１２にその旨を通知する（Ｓ２）。当該通知を受けたリソース制御部１２は、オーケストレータ部１３に対しリソースの増設を指示する（Ｓ３）。つまり、リソース制御部１２は、オーケストレータ部１３に対しVNF#1のVNFの増設を指示する。
【００１６】
Ｓ３の後、オーケストレータ部１３は、ＤＢ（データベース）内のテンプレートをもとに、VNFデプロイ制御部（VNF制御部）１４に対し、リソースの割当指示を行う（Ｓ４）。つまり、オーケストレータ部１３は、テンプレートをもとに増設対象のVNFで用いるリソース（例えば、コア、メモリ、NIC等）の割当指示をVNFデプロイ制御部１４に対し行う。なお、このテンプレートは、VNFの種別ごとに、当該種別のVNFに用いられるVMの領域（例えば、物理レイヤーにおけるコア、メモリ、NIC等）や、当該種別のVNFの起動に必要な設定情報等を示したものである。
【００１７】
その後、VNFデプロイ制御部１４は、ＤＢ内のVNF相性条件に基づき、増設対象のVNFに割り当てる最適な物理リソース条件を判断する。このVNF相性条件は、VNFの種別ごとに、当該種別のVNFが、同じコンピュータ内の他のVNFと共存可能なリソースの割当の条件を示した情報である。例えば、VNFが仮想ルータである場合、VNF相性条件は、「他のVNF（仮想ルータ）とNICを共有しない」といった条件である。このVNF相性条件の詳細については、具体例を用いて後記する。
【００１８】
例えば、VNFデプロイ制御部１４は、VNF相性条件に基づき、増設対象のVNF（VNF2）の最適な物理リソース条件を判断する。そして、VNFデプロイ制御部１４は、上記の判断結果に基づき、増設対象のVNFの最適な物理リソースの指示をVIM（Virtualized  Infrastructure  Manager）１５に対し行う（Ｓ５）。その後、VIM１５は、当該指示に基づき、VNF2のリソース（例えば、コア、メモリ、NIC等）の割当を行う（Ｓ６）。例えば、VNFデプロイ制御部１４は、VNF1で使用されていないNICをNF2に割り当てる旨の指示をVIM１５に対し行う。そして、VIM１５は、VNF1で使用されていないNICをVNF2に割り当てる。
【００１９】
Ｓ６の後、オーケストレータ部１３は、VNF設定ファイル（例えば、VNF#1のVNFの物理レイヤーの設定、各VNFにインストールするImageファイル等を示したファイル）をもとに各VNF（VNF1、VNF2）の設定を行う（Ｓ７）。
【００２０】
このようにすることで、制御システム１０は、VNF相性条件を満たすVNFのスケールアウトを実現することができる。
【００２１】
［構成］
引き続き、図１を用いて制御システム１０の構成を説明する。制御システム１０は、フローコレクタ部１１と、リソース制御部１２と、オーケストレータ部１３と、VNFデプロイ制御部１４と、VIM１５とを備える。
【００２２】
フローコレクタ部１１は、トラフィックの収集および監視を行う。このフローコレクタ部１１は、例えば、VNFから当該VNFに入力されるトラフィックを収集し、監視する。そして、フローコレクタ部１１は、攻撃トラフィックを検知すると、その旨をリソース制御部１２に通知する。
【００２３】
リソース制御部１２は、VNFの増設の判断等を行う。例えば、リソース制御部１２は、フローコレクタ部１１から攻撃トラフィックを検知した旨の通知を受け取り、既設のVNFだけでは処理しきれないと判断すると、オーケストレータ部１３にVNFの増設指示を行う。
【００２４】
オーケストレータ部１３は、VNFの起動、当該VNFへの設定、VNFの管理等を行う。このオーケストレータ部１３は、例えば、リソース制御部１２からVNFの増設指示を受け付けると、オーケストレータ部１３のＤＢ内のテンプレートに基づき、増設対象のVNFで用いるリソース（例えば、コア、メモリ、NIC等）の割当指示をVNFデプロイ制御部１４に対し行う。
【００２５】
上記のテンプレートは、前記したとおり、VNFに用いられるVMの領域や、当該VNFの起動に必要な設定情報を示したものである。例えば、VNFが仮想ルータである場合、テンプレートには、図２に示すように、仮想ルータに用いられるVM1の領域、仮想ルータの起動に必要な設定が記載される。上記のテンプレートを参照することで、例えば、オーケストレータ部１３は、VM1用にコア1，2、NIC1，2、メモリ1，2を割り当て、VM1上に仮想ルータを起動させるための設定を行うことができる。
【００２６】
また、図１のオーケストレータ部１３は、オーケストレータ部１３のＤＢ内のVNF設定ファイルに基づきVNFの設定を行う。例えば、オーケストレータ部１３は、リソースが割り当てられたVNFに対し、VNF設定ファイルに基づき、物理レイヤーの設定、Imageファイルのインストール等を行う。一例を挙げると、図３に示すように、オーケストレータ部１３は、VNF設定ファイルに基づき、図２で設定されたVM1に対し、仮想ルータ1の物理レイヤーの設定（コア1,2、NIC2の設定）と、Imageファイルのインストールとを行う。これにより仮想ルータ1を起動させることができる。
【００２７】
なお、上記のテンプレートおよびVNF設定ファイルは、オーケストレータ部１３の備え記憶部（図示省略）のＤＢ内に記憶されていてもよいし、オーケストレータ部１３外の記憶装置に記憶されていてもよい。
【００２８】
VNFデプロイ制御部１４は、リソースの増設指示を受け付けると、VNFデプロイ制御部のＤＢ内のVNF相性条件を参照して、増設対象のVNFの最適な物理リソース条件を判断する。そして、VNFデプロイ制御部１４は、増設対象のVNFの最適な物理リソース条件の判断の結果に基づき、増設対象のVNFに割り当てる物理リソースをVIM１５へ指示する。このVNFデプロイ制御部１４の詳細は、具体例を用いて後記する。
【００２９】
なお、VNF相性条件は、前記したとおり、VNFの種別ごとに、当該種別のVNFが、同じコンピュータ内の他のVNFと共存可能なリソース（例えば、コア、メモリ、NIC等）の割当の条件を示したものである。
【００３０】
例えば、VNF相性条件は、図４に示すようにVNFの種別ごとに、他のVNFとNIC共有が可能か否か、SR-IOV（Single  Root  I/O  Virtualization）に対応するNICが必要か否か、またSR-IOVに対応するNICが必要な場合、容量はどの程度必要か、NUMA（Non-Uniform  Memory  Access）またがりは許容されるか否か等を示した情報である。
【００３１】
例えば、図４に示すVNF相性条件は、VNF種別「VNF#1」のVNFは、他のVNFとのNIC共有が不可であり、SR-IOVに対応するNICが10G必要であり、NUMAまたがりは不可であることを示す。また、VNF種別「VNF#2」のVNFは、他のVNFとのNIC共有が可能であり、SR-IOVに対応するNICが1G必要であり、NUMAまたがりは許容されることを示す。
【００３２】
図２のVIM１５は、VNFへのリソースの割り当てを行う。例えば、VIM１５は、VNFデプロイ制御部１４からの指示に基づき、増設対象のVNFへのリソースの割当を行う。
【００３３】
次に、図５を用いて、オーケストレータ部１３、VNFデプロイ制御部１４およびVIM１５を詳細に説明する。ここでは、オーケストレータ部１３がリソース制御部１２から、VNF#1のVNFを１台分増設する旨の指示を受け取った場合を例に説明する。
【００３４】
オーケストレータ部１３は、リソース増減指示部１３１を備える。このリソース増減指示部１３１は、VNFの増減指示を行う。例えば、リソース増減指示部１３１は、リソース制御部１２からリソースの増設指示を受け取ると、テンプレート（図２参照）に基づき、増設対象のVNFで用いるリソースの割当指示をVNFデプロイ制御部１４へ行う。
【００３５】
このリソースの割当指示は、例えば、増設対象のVNFの種類（例えば、VNF#1）、増設するVNFの台数、VNFの増設に必要なリソースの種類、VNFの増設に必要なリソースの量を含む。例えば、リソース増減指示部１３１は、テンプレートに基づき、VNF#1を1台増設するために要求されるCPUがｘ個、NICがｙ個と判断すると、VNF#1を増設するため、CPUをｘ個、NICをｙ個割り当てる（確保する）旨のリソースの割当指示をVNFデプロイ制御部１４へ出力する。
【００３６】
VNFデプロイ制御部１４は、入力部（情報収集部）１４１と、リソース確保判断部１４２と、出力部１４３とを備える。
【００３７】
入力部１４１は、オーケストレータ部１３から出力されたリソースの割当指示をリソース確保判断部１４２へ入力する。リソース確保判断部１４２は、リソース割当指示を受け付けると、増設対象のVNFの種類と、VNF相性条件と、使用リソース情報とを参照し、未使用のリソースの中から、増設対象のVNFに割り当てるリソースを判断する。
【００３８】
なお、上記の使用リソース情報は、VNFにより使用中のリソースおよび未使用のリソースを示した情報である。この使用リソース情報は、例えば、VIM１５の記憶部（図示省略）に記憶される。
【００３９】
例えば、リソース確保判断部１４２は、VIM１５の使用リソース情報から使用リソースの情報（使用中のリソースの情報）を入手し、VNFデプロイ制御部１４のＤＢからVNF相性条件（使用中のリソースのVNF相性条件）を入手する。例えば、リソース確保判断部１４２は、使用中のリソースは「CPU  A個  1a,1c…、NIC  B個  2a,2c…」という使用リソースの情報を入手する。なお、上記の1a,1c…は、CPU（コア）の識別情報であり、2a,2c…は、NICの識別情報である。また、例えば、リソース確保判断部１４２は、「VNF#1で既に使用しているNICは使用不可」というVNF相性条件を入手する。
【００４０】
次に、リソース確保判断部１４２は、入手した使用リソースの情報とVNF相性条件とに基づき、リソースの判断を行う。例えば、リソース確保判断部１４２は、リソースの割当指示で指示されたNIC  y個に、2a,2c…を使用しないと判断する。次に、リソース確保判断部１４２は、使用リソース情報を参照し、未使用のリソースを確認する。また、リソース確保判断部１４２は、増設対象のVNFのVNF相性条件を確認する。そして、リソース確保判断部142は、上記の未使用のリソース（増設対象のVNFへの割当候補となるリソース）のうち、VNF#1および増設対象のVNFのVNF相性条件を満たすリソースを判断する。ここでは、増設対象のVNFもVNF#1であるので、リソース確保判断部１４２は、VNF#1のVNF相性条件に基づき、例えば、増設対象のVNFに割り当てるNIC  y個として、2b…を使用すると判断する。
【００４１】
出力部１４３は、リソース確保判断部１４２による判断結果を、VIM１５へ出力する。例えば、VIM１５は、増設対象のVNFに割り当てるNIC  y個として2b…を使用するという判断結果をVIM１５へ出力する。
【００４２】
VIM１５は、リソース割当処理部１５１を備える。また、VIM１５は、使用リソース情報を備える。リソース割当処理部１５１は、VNFデプロイ制御部１４から出力された判断結果に基づき、増設対象のVNFへのリソースの割当を行う。
【００４３】
例えば、VIM１５の備えるIF（インタフェース）は、VNFデプロイ制御部１４から出力された判断結果をVIM１５で認識できるよう変換する。そして、リソース割当処理部１５１は、IFにより変換された判断結果に基づき、増設対象のVNFにリソースを割り当てる。例えば、リソース割当処理部１５１は、増設対象のVNF（2台めのVNF#1）用のリソースとしてNIC  y個  2b…を割り当てる。これにより、制御システム１０は、増設対象のVNF（2台めのVNF#1）に適切なリソースを割り当てることができる。
【００４４】
なお、既設のVNF（仮想ルータ1（VNF#1））と、増設対象のVNF（仮想ルータN（VNF#N））とが異なるベンダの製品である場合、これらのVNFに関するVNF相性条件は、例えば、「他のVNFとNICを重複させない」というものである。よって、制御システム１０は、図６に示すように、仮想ルータ1（VM#1）に割り当てられたNICとは異なるNICを仮想ルータN（VM#N）に割り当てる。このようにすることで、制御システム１０は、VNFのVNF相性条件を満たすようなスケールアウトを実現することができる。
【００４５】
［その他の実施形態］
なお、制御システム１０は、VNFのスケールアウトを行う際、VNFデプロイ制御部１４がVNF相性条件に基づき、増設対象のVNFの最適な物理リソース条件を判断した後、その最適な物理リソース条件の判断結果を踏まえて、VNF設定ファイルを修正してもよい。この場合の実施形態を、図７を用いて説明する。前記した実施形態と同じ構成は同じ符号を用いて説明を省略する。
【００４６】
図７のＳ１１〜Ｓ１６の処理は、図１のＳ１〜Ｓ６の処理と同様なので説明を省略し、図７のＳ１７から説明する。VNFデプロイ制御部１４は、Ｓ１５でVNF相性条件に基づき、増設対象のVNFの最適な物理リソース条件を判断すると、その最適な物理リソース条件の判断結果を踏まえた、VNF設定ファイルの修正指示をオーケストレータ部１３へ出力する（Ｓ１７）。そして、オーケストレータ部１３は、当該指示に基づきVNF設定ファイルを修正する（Ｓ１８：指示をもとに修正）。その後、オーケストレータ部１３は、修正されたVNF設定ファイルをもとにVNF（VNF1,2）の設定を行う（Ｓ１９）。
【００４７】
例えば、制御システム１０が、vMXという仮想ルータが設置された後、vMXとは異なるベンダのvSRという仮想ルータを増設する場合を考える。
【００４８】
ここでのvMXのVNF相性条件は、例えば、図８に示すように、vmx.conf：Host-management-interfaceをvSRが使用する物理NICとは別のNICを指定する、vmx.sh：実行時にエラーが出ないように、保守網アドレスをvSR側とは別ドメインにするという条件であるものとする。また、vSRのVNF相性条件は、CP（コントロールプレーン）用XMLファイル:<seclabel  type=‘none’  model=‘none’/>を指定、DP（データプレーン）用XMLファイル：PCI  Passthroughコンフィグレーションで<driver  name='vfio'/>を削除、DPに割り当てるIF：プロミスキャスモードで動作させるという条件であるものとする。
【００４９】
このような場合、VNFデプロイ制御部１４は、オーケストレータ部１３に対し、vMXおよびvSRのVNF設定ファイルを「vMXの保守網アドレスをvSR側とは別ドメインにする」旨の修正指示を行う。また、VNFデプロイ制御部１４は、オーケストレータ部１３に対し、vSRのVNF設定ファイルを「CP用XMLファイルにおいて<seclabel  type=‘none’  model=‘none’/>を指定する」、「DP用XMLファイルにおけるPCI  Passthroughコンフィグレーションで<driver  name='vfio'/>を削除する」、「DPに割り当てるIFをプロミスキャスモードで動作させる」旨の修正指示を行う。
【００５０】
このようにすることで、制御システム１０は、VNFの増設に応じてVNF設定ファイルを修正し、その修正したVNF設定ファイルを基づくVNFの設定を行うことができる。
【００５１】
また、制御システム１０は、VNFの増設を行う際、VNFデプロイ制御部１４がVNF相性条件に基づき、増設対象のVNFの最適な物理リソース条件を判断した後、その最適な物理リソース条件の判断結果を踏まえて、テンプレートを修正してもよい。このようにすることで、制御システム１０は、VNF相性条件を考慮したテンプレートを蓄積することができる。
【００５２】
（プログラム）
また、上記の実施形態で述べた制御システム１０の機能を実現するプログラムを所望の情報処理装置（コンピュータ）にインストールすることによって実装できる。例えば、パッケージソフトウェアやオンラインソフトウェアとして提供される上記のプログラムを情報処理装置に実行させることにより、情報処理装置を制御システム１０として機能させることができる。ここで言う情報処理装置には、デスクトップ型またはノート型のパーソナルコンピュータ、ラック搭載型のサーバコンピュータ等が含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）等の移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistants）等がその範疇に含まれる。また、制御システム１０を、クラウドサーバに実装してもよい。
【００５３】
図９を用いて、上記のプログラム（制御プログラム）を実行するコンピュータの一例を説明する。図９に示すように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有する。これらの各部は、バス１０８０によって接続される。
【００５４】
メモリ１０１０は、ＲＯＭ（Read  Only  Memory）１０１１およびＲＡＭ（Random  Access  Memory）１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、ハードディスクドライブ１０９０に接続される。ディスクドライブインタフェース１０４０は、ディスクドライブ１１００に接続される。ディスクドライブ１１００には、例えば、磁気ディスクや光ディスク等の着脱可能な記憶媒体が挿入される。シリアルポートインタフェース１０５０には、例えば、マウス１１１０およびキーボード１１２０が接続される。ビデオアダプタ１０６０には、例えば、ディスプレイ１１３０が接続される。
【００５５】
ここで、図９に示すように、ハードディスクドライブ１０９０は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３およびプログラムデータ１０９４を記憶する。前記した実施形態で説明した各種データや情報は、例えばハードディスクドライブ１０９０やメモリ１０１０に記憶される。
【００５６】
そして、ＣＰＵ１０２０が、ハードディスクドライブ１０９０に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出して、上述した各手順を実行する。
【００５７】
なお、上記の制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０９０に記憶される場合に限られず、例えば、着脱可能な記憶媒体に記憶されて、ディスクドライブ１１００等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、上記のプログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ＬＡＮやＷＡＮ（Wide  Area  Network）等のネットワークを介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００５８】
１０  制御システム
１１  フローコレクタ部
１２  リソース制御部
１３  オーケストレータ部
１４  VNFデプロイ制御部
１５  VIM
１３１  リソース増減指示部
１４１  入力部
１４２  リソース確保判断部
１４３  出力部
１５１  リソース割当処理部
【図１】
2020021167.tif 000003
【図２】
2020021167.tif 000004
【図３】
2020021167.tif 000005
【図４】
2020021167.tif 000006
【図５】
2020021167.tif 000007
【図６】
2020021167.tif 000008
【図７】
2020021167.tif 000009
【図８】
2020021167.tif 000010
【図９】
2020021167.tif 000011