(57)【特許請求の範囲】
【請求項１】
リソースの割当に関して区間ごとに異なるポリシが適用される物理ネットワークを構成する複数のノードのうち、前記物理ネットワークのリソースの使用要求において指定された始点ノードが含まれる前記区間に対応するポリシに基づいて、前記始点ノードから、前記使用要求に指定された終点ノードまでの経路を計算する計算部と、
前記計算部によって計算された経路を構成するノードのうち、前記始点ノードと異なる前記区間に含まれる最初のノードによって前記始点ノードを置き換えて、前記終点ノードまでの経路を前記計算部に計算させる制御部と、
を有することを特徴とする経路計算制御装置。
【請求項２】
前記計算部は、使用要求に含まれている、前記物理ネットワークのリソースの使用に関する第１の条件を満たす経路を計算し、
前記制御部は、前記計算部によって計算された経路のうち、前記始点ノードと同じ前記区間に含まれる経路によって満たされる第２の条件を前記第１の条件から除いた条件を満たす経路を、前記計算部に計算させる、
ことを特徴とする請求項１記載の経路計算制御装置。
【請求項３】
リソースの割当に関して区間ごとに異なるポリシが適用される物理ネットワークを構成する複数のノードのうち、前記物理ネットワークのリソースの使用要求において指定された始点ノードが含まれる前記区間に対応するポリシに基づいて、前記始点ノードから、前記使用要求に指定された終点ノードまでの経路を計算する計算手順と、
前記計算手順によって計算された経路を構成するノードのうち、前記始点ノードと異なる前記区間に含まれる最初のノードによって前記始点ノードを置き換えて、前記終点ノードまでの経路を前記計算手順に計算させる制御手順と、
をコンピュータが実行することを特徴とする経路計算制御方法。
【請求項４】
前記計算手順は、使用要求に含まれている、前記物理ネットワークのリソースの使用に関する第１の条件を満たす経路を計算し、
前記制御手順は、前記計算手順によって計算された経路のうち、前記始点ノードと同じ前記区間に含まれる経路によって満たされる第２の条件を前記第１の条件から除いた条件を満たす経路を、前記計算手順に計算させる、
ことを特徴とする請求項３記載の経路計算制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、経路計算制御装置及び経路計算制御方法に関する。
【背景技術】
【０００２】
仮想化技術の進展に伴い、仮想化技術の適用は、クラウドコンピューティングの分野のみならず、通信ネットワークの分野にも及んでいる。例えば、第５世代移動体通信網では、仮想化技術の適用による柔軟なネットワーク制御がコンセプトとして盛り込まれている。【０００３】
通信ネットワークにおける仮想化では、サービス提供事業者は、通信ネットワーク上で予め用意されたネットワークリソースとサービス機能を自由に活用することで、柔軟なサービス提供を行うことができる（図１）。これらを実現する技術がＮＦＶ（Network Functions Virtualization）とＳＦＣ（Service Function Chaining）である。ＮＦＶ技術により、従来はルータやゲートウェイなど専用ハードウェアで実現されていた通信事業者のサービス機能を、汎用サーバ上でソフトウェアとして提供することで、ネットワーク上にあるどのサーバにおいてもサービス機能の実行が可能となる。ＳＦＣ技術により、ユーザのパケットフローを指定されたサービス機能に指定された順序で転送することで、自由にサービス機能を組み合わせることが可能となる。【０００４】
仮想ネットワークにおけるサービスを提供するにあたり、ネットワーク事業者にとっては、各サービスで要求される条件を満足するように、物理ネットワークのリソースを効率的に割当てることが重要となる。このリソース割当問題は、ＶＮＥ（Virtual Network Embedding）問題と呼ばれ、多くの技術が提案されている。既存技術では、与えられた物理ネットワークを重み付き無向グラフとしてモデル化し、各サービスの要求を満たすように、あるポリシに基づいて物理ネットワークリソースを割当てる。リソース割当ポリシとしては様々なものが提案されており、リソースの使用率の最小化（非特許文献１、非特許文献２）、収容サービス数の最大化（非特許文献３）、ユーザ品質の最大化（非特許文献４）、耐障害性の最大化（非特許文献５）、消費電力の最小化（非特許文献６）、などがある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】M. Yu et al., "Rethinking Virtual Network Embedding: Substrate Support for path Splitting and Migration", ACM SIGCOMM Computer Communication Review, Vol. 38, No. 2, pp. 17-29, 2008.
【非特許文献２】M. Chowdhury et al., "Vineyard: Virtual network embedding algorithms with coordinated node and link mapping," IEEE/ACM Trans. Networking, vol. 20, no. 1, pp. 206-219, 2012.
【非特許文献３】小林，松村，木村，土屋，則武，"サービス収容度を用いた効率的な仮想ネットワークのリソース割り当て手法の検討"，信学技法 NS2015-151.
【非特許文献４】T. Trinh et al., "Quality of service using careful overbooking for optimal virtual network resource allocation," in Proc. ECTI-CON, 2011.
【非特許文献５】M. R. Rahman et al, "SVNE: Survivable Virtual Network Embedding Algorithms for Network Virtualization," IEEE Trans. Network and Service Management, Vol. 10, No. 2, pp. 105-118, 2013.
【非特許文献６】S. Su et al., "Energy-Aware Virtual Network Embedding," IEEE Trans. Networking, Vol. 22, No. 5, pp. 1607-1620, 2014.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来のリソース割当技術は、ネットワーク上で統一されたポリシに基づくリソース割当が実行されることを前提としており、複数のポリシが適用された場合を考慮していない。実際のネットワーク運用では、常にネットワーク全体で１つのポリシに基づいたリソース割当が行われる場合ばかりでなく、一部のサブネットワークだけ異なるポリシのリソース割当を適用したい場合が存在する。例えば、図２に示すように、大雨が続き被災が起きる確率の高いサブネットワークでは耐障害性を最大化するような割当を行い、リソース量に十分な余裕があるサブネットワークではユーザ品質が最大化するような割当を行い、その他のネットワークでは収容サービス数が最大化するような割当を行う場合もある。【０００７】
従来技術では、同一のポリシが適用されるサブネットワーク内でのリソース割当は可能である（図２のリソース割当（１）、（２））。しかし、複数のポリシが適用さているサブネットワーク間を跨ったリソース割当（図２のリソース割当（３））については、複数のポリシの制御が競合するため、全体としてどのように制御すればよいかは明確でない。【０００８】
本発明は、上記の点に鑑みてなされたものであって、それぞれ異なるポリシが適用される複数の区間を含むネットワークに対するリソース割当を可能とすることを目的とする。
【課題を解決するための手段】
【０００９】
そこで上記課題を解決するため、リソースの割当に関して区間ごとに異なるポリシが適用される物理ネットワークを構成する複数のノードのうち、前記物理ネットワークのリソースの使用要求において指定された始点ノードが含まれる前記区間に対応するポリシに基づいて、前記始点ノードから、前記使用要求に指定された終点ノードまでの経路を計算する計算部と、前記計算部によって計算された経路を構成するノードのうち、前記始点ノードと異なる前記区間に含まれる最初のノードによって前記始点ノードを置き換えて、前記終点ノードまでの経路を前記計算部に計算させる制御部と、を有する。
【発明の効果】
【００１０】
それぞれ異なるポリシが適用される複数の区間を含むネットワークに対するリソース割当を可能とすることができる。
【図面の簡単な説明】
【００１１】
【図１】サービス要求への物理リソースの割当の一例を示す図である。
【図２】１つのネットワーク上で割当ポリシの異なる複数のリソース割当が動作する例を示す図である。
【図３】本発明の実施の形態におけるオーケストレータのハードウェア構成例を示す図である。
【図４】本発明の実施の形態におけるオーケストレータの機能構成例を示す図である。
【図５】オーケストレータが実行する処理手順の一例を説明するためのシーケンス図である。
【図６】統合制御部が実行する処理手順の一例を説明するためのフローチャートである。
【図７】実行例で用いられるネットワーク及び割当ポリシを示す図である。
【図８】実行例１のリソース割当の計算経緯を示す図である。
【図９】実行例２のリソース割当の計算経緯を示す第１の図である。
【図１０】実行例２のリソース割当の計算経緯を示す第２の図である。
【図１１】実行例２のリソース割当の計算経緯を示す第３の図である。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて本発明の実施の形態を説明する。本実施の形態では、相互にリソースの割当に関する目的が異なる各ポリシ（以下、「割当ポリシ」という。）に基づくリソース割当計算ロジックに変更を加えず、複数の割当ポリシのリソース割当を統合制御するようなシステム（以下、「統合制御部１３」という。）をオーケストレータ１０内に導入する。オーケストレータ１０とは、ネットワーク全体のリソースの割当て状況を管理及び制御するコンピュータである。
【００１３】
このような構成を導入する理由としては、新たな割当ポリシのリソース割当を追加しようとした場合、既存の割当ポリシのリソース割当に変更を加える必要がないため、システムの拡張が容易になるからである。統合制御部１３は、あるサービスに対するリソース割当要求の内容を分析して要求を再構成し、各割当ポリシのリソース割当を動作させ、割当結果を統合し、全体として矛盾のない割当結果を得るための処理を実行する。以降、本システムの詳細を、動作環境、システム構成、動作シーケンス、統合制御部１３のアルゴリズム例、動作例、の順番で説明する。
【００１４】
本システムを動作させるにあたり前提となる動作環境は、図１に示す通りの仮想化されたネットワークである。単一の物理ネットワーク上で複数のサービスを提供するサービス提供形態において、各サービスに対して、各サブネットワークに指定された割当ポリシに基づきリソースが割当てられる。なお、サブネットワークとは、単一の物理ネットワークにおける一部の区間（部分ネットワーク）をいう。
【００１５】
物理ネットワークは、ルータに代表される転送ノードＮｒと、サービス機能を実行するサービスノードＮｓ、それらをつなぐリンクから構成される。サービスに対して割当てる物理ネットワークのリソースは、転送系リソースとサーバ系リソースの２つに分類される。
【００１６】
転送系リソースは、主に、転送ノードＮｒ間のリンクのリソースを指し、具体的にはリンク毎に設定されている転送帯域などである。各リンクには、転送帯域の他に転送遅延が設定されているものとする。サーバ系リソースは、サービスノードＮｓのリソースを指し、具体的にはＣＰＵ、メモリ、ストレージなどである。
【００１７】
転送ノードＮｒには、ＳＤＮ（Software Defined Network）などのソフトウェア的にネットワークの経路を制御できる機能が具備されており、経路はオーケストレータ１０によって集中的に制御される。
【００１８】
サービスノードＮｓには、ソフトウェア化されたサービス機能を共通で実行可能であり、各サービス機能は、いずれのサービスノードＮｓでも実行可能である。各サービス機能をいずれのサービスノードＮｓで実行するかについての管理は、経路管理と同様に、オーケストレータ１０が行う。この管理は、一般的なＮＦＶ（Network Functions Virtualization）やＳＦＣ（Service Function Chaining）等を利用して実現可能である。
【００１９】
各サービスには、要求条件として、サービスの提供に必要な転送帯域ｂ、転送遅延（の上限）ｄ、経由するサービス機能ｆ＝［ｆ１，ｆ２，…，ｆｎ］（ｆｘは、サービス機能を示し、ｎは経由するサービス機能数を示す）、サービスの始点ｓ、終点ｅなどが設定されている。
【００２０】
図１のユーザＢの場合であれば、ｂ＝５０Ｍｂｐｓ、ｄ＝２０ｍｓ、ｆ＝［ＣＰＥ（Customer Premises Equipment）、ＦＷ（FireWall）］、ｓ＝１、ｅ＝６である。また、図２に示す通り、ネットワーク上に、異なる割当ポリシのリソース割当が動作しており、各割当ポリシが適用されるサブネットワークを示す情報は、オーケストレータ１０内に格納されている。本実施の形態では、オーケストレータ１０が、上記のサービスの要求条件を満たしつつ、複数の割当ポリシに跨ったリソース割当の統合制御を実現する。
【００２１】
図３は、本発明の実施の形態におけるオーケストレータのハードウェア構成例を示す図である。図３のオーケストレータ１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、インタフェース装置１０５、表示装置１０６、及び入力装置１０７等を有する。
【００２２】
オーケストレータ１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２３】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従ってオーケストレータ１０に係る機能を実現する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。表示装置１０６はプログラムによるＧＵＩ（Graphical User Interface）等を表示する。入力装置１０７はキーボード及びマウス等で構成され、様々な操作指示を入力させるために用いられる。
【００２４】
図４は、本発明の実施の形態におけるオーケストレータの機能構成例を示す図である。図４において、オーケストレータ１０は、サービス入力部１１、複数のリソース割当計算部１２、統合制御部１３、ネットワーク経路制御部１４、及びサービス機能制御部１５等を有する。これら各部は、オーケストレータ１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。オーケストレータ１０は、また、ポリシＤＢ１６、サービス機能ＤＢ１７、設備情報ＤＢ１８、及びリソース割当ＤＢ１９等のデータベースを利用する。これら各データベース（記憶部）は、例えば、補助記憶装置１０２、又はオーケストレータ１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００２５】
サービス入力部１１は、新規にリソースを割当てるサービスの要求の入力を、サービス事業者のオペレータから受け付ける。
【００２６】
統合制御部１３は、前述の通り、リソース割当全体を制御する。統合制御部１３は、あるサービスのリソース割当要求の内容を分析して、要求を再構成し、各割当ポリシのリソース割当計算部１２を動作させ、割当結果を統合し、全体として矛盾のない割当結果を得る。統合制御部１３は、得られたリソース割当結果に基づき、ネットワーク経路制御部１４とサービス機能制御部１５へリソース割当の指示を出す。統合制御部１３は、リソース割当要求を分析及び再構成する際に、ポリシＤＢ１６、サービス機能ＤＢ１７、設備情報ＤＢ１８、及びリソース割当ＤＢ１９に記憶されている情報を参照する。
【００２７】
ポリシＤＢ１６には、割当ポリシの種類（割当ポリシの集合Ｐ）と、各割当ポリシが適用されるサブネットワーク（割当ポリシｘ∈Ｐが適用されるサブネットワークＧｘ）を示す情報が記憶されている。各割当ポリシが適用されるサブネットワークは重複しないものとする。すなわち、一つのサブネットワークに複数の割当ポリシは適用されないこととする。
【００２８】
リソース割当ＤＢ１９には、既存のサービスに対して割当済みのリソース情報が記憶されている。既存のサービスとは、既にリソースが割当てられたサービスをいう。
【００２９】
サービス機能ＤＢ１７には、サービス機能ごとに、当該サービス機能の実行に必要なリソース量（例えば、機能Ａ：ＣＰＵ２コア、メモリ１ＧＢ、ストレージ１０ＧＢ等）が記憶されている。
【００３０】
設備情報ＤＢ１８には、物理ネットワークの情報（転送ノードＮｒ／サービスノードＮｓ間の接続情報、各リンクの転送帯域／転送遅延、サーバ容量など）が記憶されている。
【００３１】
リソース割当計算部１２は、割当ポリシごとに存在する。各リソース割当計算部１２は、当該リソース割当計算部１２に対して指定された割当ポリシに基づいたリソース割当を計算する。リソース割当計算部１２へは、新規サービスの要求条件と、ネットワーク情報とが入力され、リソース割当結果が出力される。
【００３２】
リソース割当結果は、経路割当ｒ＝［ｎ１，ｎ２，…，ｎｍ］（ｍは経路長）と、サーバ割当ｓ＝［ｓ１，ｓ２，…，ｓｎ］（ｎは経由サービス機能数、ｓｘはｘ番目に経由するサービス機能ｆｘが実行されるノードである。）で示される。図１のユーザＢの例であれば、リソース割当結果は、経路割当ｒ＝［１，２，７，２，４，８，４，６］、サーバ割当ｓ＝［７，８］となる。すなわち、経路割当ｒには、転送ノードＮｒのみならず、サービスノードＮｓも含まれる。
【００３３】
ネットワーク経路制御部１４は、リソース割当結果に基づいて転送ノードＮｒを制御する。サービス機能制御部１５は、リソース割当結果に基づいてサービスノードＮｓを制御する。
【００３４】
以下、オーケストレータ１０が実行する処理手順について説明する。図５は、オーケストレータが実行する処理手順の一例を説明するためのシーケンス図である。
【００３５】
サービス入力部１１は、新規サービスへの要求条件の入力をサービス提供事業者のオペレータから受け付けると（Ｓ１０１）、当該サービスに対するリソース割当要求を統合制御部１３に送信する（Ｓ１０２）。
【００３６】
続いて、統合制御部１３は、ポリシＤＢ１６から、割当ポリシの種類と各割当ポリシが適用されるサブネットワークを示す情報（以下、「割当ポリシ適用情報」という。）を取得する（Ｓ１０３、Ｓ１０４）。続いて、統合制御部１３は、サービス機能ＤＢ１７、設備情報ＤＢ１８、及びリソース割当ＤＢ１９から、物理ネットワーク情報、割当済みリソース情報、及びサービス機能の情報等、リソース割当計算に必要な情報を取得する（Ｓ１０５、Ｓ１０６）。
【００３７】
続いて、統合制御部１３は、各ＤＢから取得した情報に基づいて、リソース割当要求の分析及び要求条件の再構成を実行し（Ｓ１０７）、各割当ポリシに対応するリソース割当計算部１２を呼び出す（Ｓ１０８）。この際、割当ポリシ適用情報に基づいて、各リソース割当計算部１２に対して指定される割当ポリシが判定される。
【００３８】
各リソース割当計算部１２は、それぞれに対して指定された割当ポリシに基づいてリソース割当経路を計算し（Ｓ１０９）、リソース割当結果を統合制御部１３に出力する（Ｓ１１０）。
【００３９】
続いて、統合制御部１３は、各割当ポリシのリソース割当結果を統合して、全体のリソース割当経路を得る（Ｓ１１１）。
【００４０】
続いて、統合制御部１３は、得られたリソース割当経路に基づいて、ネットワーク経路制御部１４及びサーバ機能制御部のそれぞれに対してリソースの割当てを命令する（Ｓ１１２、Ｓ１１３）。ネットワーク経路制御部１４は、命令に応じ、サービスに対してリソースを割当てるための設定を転送ノードＮｒに対して行う（Ｓ１１４）。サービス機能制御部１５は、命令に応じ、サービスに対してリソースを割当てるための設定をサービスノードＮｓに対して行う（Ｓ１１５）。
【００４１】
続いて、統合制御部１３は、リソースの割当て結果をリソース割当ＤＢ１９に反映する（Ｓ１１６）。
【００４２】
続いて、統合制御部１３における、リソース割当要求の再構成とリソース割当結果の統合についての、具体的な処理手順（アルゴリズム）の一例について説明する。処理手順の方針として、サービスの始点から終点にかけて経由する各サブネットワークに対する割当ポリシに従ったリソース割当計算を、サービスの要求条件に変更を加えながら順次実施し、割当結果を確定させていく。
【００４３】
具体的には、ネットワーク全域で、要求されたサービスに対して、始点ｓに適用される割当ポリシＰｏｌｉｃｙ（ｓ）に基づいたリソース割当を行い、仮割当結果を得る。ここで、Ｐｏｌｉｃｙ（ｘ）は、ノードｘに適用される割当ポリシを示す関数である。なお、ノードｘに適用される割当ポリシは、当該ノードｘが属するサブネットワークに適用される割当ポリシである。
【００４４】
仮割当結果のうち、Ｐｏｌｉｃｙ（ｓ）が適用されるサブネットワークＧＰｏｌｉｃｙ（ｓ）内のリソース割当を確定させる。続いて、仮割当結果のうち、Ｐｏｌｉｃｙ（ｓ）以外の割当ポリシが適用されるサブネットワークとの境界ノードを、新たにｓとして設定する。その他の要求条件についても、確定した割当結果を考慮し、更新を行う。更新した要求条件で、上記のリソース計算を順次繰り返していくことで、ネットワーク全体として、割当ポリシに反しないリソース割当が可能となる。
【００４５】
上記の処理手順について更に詳細に説明する。図６は、統合制御部が実行する処理手順の一例を説明するためのフローチャートである。新規サービスへのリソース割当要求の到着（Ｓ１０２）を契機に処理がスタートする。なお、ステップＳ２０１の開始時には、図５のステップＳ１０３〜Ｓ１０６は実行済みであるとする。
【００４６】
ステップＳ２０１において、統合制御部１３は、リソース割当要求から新規サービスの要求条件を取得する。
【００４７】
続いて、統合制御部１３は、設備情報ＤＢ１８から取得された物理ネットワーク情報に含まれている、物理ネットワークのトポロジ情報に基づいて、当該物理ネットワークを表現する重み付き無向グラフＧを生成する（Ｓ２０２）。無向グラフＧにおける各リンクには、重みとして転送遅延が与えられており、また容量制約（転送帯域）も設定されている。
【００４８】
続いて、統合制御部１３は、リソース割当ＤＢ１９から取得された割当済みのリソース情報に基づいて、既存サービスに割当てられているリソース容量を無向グラフＧから差し引いた仮想的なネットワーク（以下、「残余ネットワークＧ−」という。）を生成する（Ｓ２０３）。
【００４９】
続いて、統合制御部１３は、ステップＳ２０１において取得された要求条件の各パラメータを帯域ｂ、要求遅延ｄ、経由機能ｆ＝［ｆ１，ｆ２，・・・，ｆｎ］、サービスの始点ｓ、終点ｅ）とし、確定済みの経路割当ｒｒｅｓｕｌｔとサーバ割当ｓｒｅｓｕｌｔとを初期化（ｒｒｅｓｕｌｔ←［］、ｓｒｅｓｕｌｔ←［］）する（Ｓ２０４）。
【００５０】
続いて、統合制御部１３は、リソース割当要求の要求条件を満たす、残余ネットワークＧ−における仮経路割当ｒｔｅｍｐ＝［ｎ１＝ｓ，ｎ２，…，ｎｍ＝ｅ］、仮サーバ割当ｓｔｅｍｐ＝［ｓ１，ｓ２，…，ｓｎ］の計算を、割当ポリシＰｏｌｉｃｙ（ｓ）に対応するリソース割当計算部１２に実行させる（Ｓ２０５）。ここで、ｍは経路長である。
【００５１】
リソース割当計算が失敗した場合（Ｓ２０６でＮｏ）、リソース不足で該当する要求へのリソース割当ができないため、図６の処理は終了する。
【００５２】
リソース割当計算が成功した場合（Ｓ２０６でＹｅｓ）、統合制御部１３は、仮割当結果（ｒｔｅｍｐ，ｓｔｅｍｐ）の内、Ｐｏｌｉｃｙ（ｓ）が適用されるサブネットワークＧＰｏｌｉｃｙ（ｓ）内にあるリソース割当を確定させる。具体的には、統合制御部１３は、Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｎｘ）となる最小のｘ（すなわち、異なる割当ポリシが適用される最初の転送ノードＮｒ）と、Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｓｙ）となる最小のｙを探索する（Ｓ２０７）。
【００５３】
ｘ及びｙの両方が存在しない場合（Ｓ２０８でＹｅｓ）、仮割当結果の全てのノードはサブネットワークＧＰｏｌｉｃｙ（ｓ）に有るので、統合制御部１３は、仮割当結果を確定済み割当結果に追加し（ｒｒｅｓｕｌｔ←ｒｒｅｓｕｌｔ＋ｒｔｅｍｐ、ｓｒｅｓｕｌｔ←ｓｒｅｓｕｌｔ＋ｓｔｅｍｐ）（Ｓ２０９）、割当成功として処理を終了する。
【００５４】
ｘが見つかった、又はｘとｙが見つかった場合（Ｓ２０８でＮｏ）、仮割当結果は、異なる割当ポリシが適用されるサブネットワークを跨ることになる。なお、ｙが見つかって、かつ、ｘが見つからない場合は無い。何故ならばｎ１は、必ずＰｏｌｉｃｙ（ｎ１）となるためである。
【００５５】
そこで、統合制御部１３は、Ｐｏｌｉｃｙ（ｎ１）が適用されるサブネットワーク内の経路割当ｒｐ＝［ｎ１，ｎ２，…，ｎｘ］と、サーバ割当ｓｐ＝［ｓ１，ｓ２，…，ｓｙ−１］とを確定させる（ｒｒｅｓｕｌｔ←ｒｒｅｓｕｌｔ＋ｒｐ、ｓｒｅｓｕｌｔ←ｓｒｅｓｕｌｔ＋ｓｐ）（Ｓ２１０）。ここで、ｙ＝１の場合は、ｓｐ＝［］、ｙが存在しない場合は、ｓｐ＝ｓｔｅｍｐとする。
【００５６】
続いて、統合制御部１３は、要求条件を変更し（Ｓ２１１）、次の割当ポリシに基づいたリソース割当計算に戻る。
【００５７】
要求条件の更新では、残余ネットワークＧ−、要求遅延、サービスの始点、及び経由サービス機能が更新される。残余ネットワークＧ−の更新では、現状の残余ネットワークＧ−から、確定済みリソース割当で消費されるリソース（以下、「Ｒｅｓｏｕｒｃｅ（ｒｐ，ｓｐ）」という。）が差し引かれる（Ｇ−←Ｇ−−Ｒｅｓｏｕｒｃｅ（ｒｐ，ｓｐ））。
【００５８】
要求遅延の更新では、現状の要求遅延からｒｐに沿って転送する場合の転送遅延（以下、「Ｄｅｌａｙ（ｒｐ）」という。）が差し引かれる（ｄ←ｄ−Ｄｅｌａｙ（［ｒｐ］））。
【００５９】
サービスの始点は、ｎｘに更新される（ｓ←ｎｘ）。
【００６０】
経由サービス機能の更新では、ｆから実行済みのサービス機能ｆｐ＝［ｆ１，ｆ２，…，ｆｙ−１］が除外される（ｆ←ｆ−ｆｐ）。ここで、ｙ＝１の場合は、ｆｐ＝［］、ｙが存在しない場合は、ｆｐ＝ｆとされる。
【００６１】
すなわち、経路割当ｒｒｅｓｕｌｔ、サーバ割当ｓｒｅｓｕｌｔによって満たされた要求条件が除外された要求条件が生成される。換言すれば、要求条件の分割が行われる。
【００６２】
図６の処理手順について、以下に２つの実行例（実行例１及び実行例２）を示す。図７は、実行例で用いられるネットワークと割当ポリシとを示す図である。
【００６３】
図７に示されているリンクの帯域、及びサービスノードの容量は、物理リソース量から割当済みのリソース容量が差し引かれた残余リソース量とする。
【００６４】
割当ポリシは３つ（Ｐ＝［Ａ，Ｂ，Ｃ］）が適用されるものとする。
【００６５】
各割当ポリシが適用されるサブネットワークは、ＧＡ＝（ＶＡ，ＥＡ）、ＧＢ＝（ＶＢ，ＥＢ）、ＧＣ＝（ＶＣ，ＥＣ）とする。ここで、Ｖｘ、Ｅｘは、それぞれ割当ポリシｘ∈Ｐが適用されるノードとリンクの集合であり、それぞれ、ＶＡ＝［１，２，３，４，７，１１］、ＥＡ＝［（１，２），（１，３），（２，４），（２，１１），（４，７）］、ＶＢ＝［５，６，８，１２］、ＥＢ＝［（５，６），（５，８），（６，８），（６，１２）］、ＶＣ＝［９，１０，１１，１３］、ＥＣ＝［（９，１０），（９，１１），（１０，１１），（１１，１３）］となる。
【００６６】
サブネットワーク間を跨ぐリンク［（１，５），（３，６），（５，７），（７，９），（８，１１）］については、いずれの割当ポリシが適用されてもよいものとする。サービス機能としては、ａとｂが用意されており、ａの実行にはＣＰＵ：１ｃｏｒｅ、メモリ：５ＧＢ、ストレージ：５０ＴＢ、ｂの実行にはＣＰＵ：２ｃｏｒｅ、メモリ：１０ＧＢ、ストレージ：１００ＴＢが消費されるとする。
【００６７】
［実行例１］
新規サービスへの要求条件（帯域ｂ＝５Ｍｂｐｓ，要求遅延ｄ＝４ｍｓ，経由サービス機能ｆ＝［ａ］，始点ｓ＝ノード１，終点ｅ＝ノード４）に対するリソース割当を考える。
【００６８】
リソース割当の計算経緯を、図８に示す。１回のリソース割当計算は、以下の条件で行われる。
【００６９】
＜１回目のリソース割当計算の条件＞
・割当ポリシ：Ｐｏｌｉｃｙ（ｓ）＝Ｐｏｌｉｃｙ（１）＝割当ポリシＡ
・残余ネットワーク：図８のネットワーク
・新規サービスの要求条件：帯域ｂ＝５Ｍｂｐｓ、要求遅延ｄ＝４ｍｓ、経由サービス機能ｆ＝［ｂ］、始点ｓ＝ノード１、終点ｅ＝ノード４
計算の結果、仮割当結果として経路割当ｒｔｅｍｐ＝［１，２，１１，２，４］、サーバ割当ｓｔｅｍｐ＝［１１］が得られたとする。次に、Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｎｘ）となる最小のｘと、Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｓｙ）となる最小のｙが探索されるが、仮割当結果の全てのノードがサブネットワークＧＰｏｌｉｃｙ（ｓ）である。したがって、ｘ及びｙは見つからない。そこで、仮割当経路が確定され（ｒｒｅｓｕｌｔ←ｒｒｅｓｕｌｔ＋ｒｔｅｍｐ＝［］＋［１，２，４］＝［１，２，４］、ｓｒｅｓｕｌｔ←ｓｒｅｓｕｌｔ＋ｓｔｅｍｐ＝［］＋［１１］＝［１１］）、割当成功で処理が終了する。
【００７０】
［実行例２］
新規サービスへの要求条件（帯域ｂ＝１０Ｍｂｐｓ，要求遅延ｄ＝１０ｍｓ，経由サービス機能ｆ＝［ｂ］，始点ｓ＝１，終点ｅ＝９）に対するリソース割当を考える。リソース割当の計算経緯を、図９〜図１１示す。１回目のリソース割当計算は、以下の条件で行われる。
【００７１】
＜１回目のリソース割当計算の条件＞
・割当ポリシ：Ｐｏｌｉｃｙ（ｓ）＝Ｐｏｌｉｃｙ（１）＝割当ポリシＡ
・残余ネットワーク：図９のネットワーク
・新規サービスの要求条件：帯域ｂ＝１０Ｍｂｐｓ、要求遅延ｄ＝１０ｍｓ、経由サービス機能ｆ＝［ｂ］、始点ｓ＝１、終点ｅ＝９
計算の結果、仮割当結果として割当経路ｒｔｅｍｐ＝［１，３，６，１２，６，５，７，９］、ｓｔｅｍｐ＝［１２］が得られたとする。Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｎｘ）となる最小のｘと、Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｓｙ）となる最小のｙは、ｘ＝３、ｙ＝１となる。そこで、Ｐｏｌｉｃｙ（ｎ１）が適用されるサブネットワーク内の経路割当ｒｐ＝［ｎ１，ｎ２，ｎ３］＝［１，３，６］とサーバ割当ｓｐ＝［］が確定される（ｒｒｅｓｕｌｔ←ｒｒｅｓｕｌｔ＋ｒｔｅｍｐ＝［］＋［１，３，６］＝［１，３，６］、ｓｒｅｓｕｌｔ←ｓｒｅｓｕｌｔ＋ｓｔｅｍｐ＝［］＋［］＝［］）。続いて、要求条件が以下の通り更新される。
【００７２】
＜要求条件の更新（１回目）＞
・残余ネットワーク：図１０のネットワーク（リソースの減算箇所には下線を付与）
・始点：ｓ＝ｎ３＝６
・要求遅延：ｄ＝１０−Ｄｅｌａｙ（［１，３，６］）＝１０−２＝８［ｍｓ］
・経由サービス機能：ｆ＝ｆ−ｆｐ＝［ｂ］−［］＝［ｂ］
２回のリソース割当計算は、以下の条件で行われる。
【００７３】
＜２回目のリソース割当計算の条件＞
・割当ポリシ：Ｐｏｌｉｃｙ（ｓ）＝Ｐｏｌｉｃｙ（３）＝割当ポリシＢ
・残余ネットワーク：図１０のネットワーク
・新規サービスの要求条件：帯域ｂ＝１０Ｍｂｐｓ、要求遅延ｄ＝８ｍｓ、経由サービス機能ｆ＝［ｂ］、始点ｓ＝３、終点ｅ＝９
計算の結果、仮割当結果として経路割当ｒｔｅｍｐ＝［６，１２，６，８，１１，１０，９］、サーバ割当ｓｔｅｍｐ＝［１２］が得られたとする。Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｎｘ）となる最小のｘと、Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｓｙ）となる最小のｙは、ｘ＝５、ｙ＝なし、となる。そこで、Ｐｏｌｉｃｙ（ｎ１）が適用されるサブネットワーク内の経路割当ｒｐ＝［ｎ１，…，ｎ５］＝［６，１２，６，８，１１］とサーバ割当ｓｐ＝ｓｔｅｍｐ＝［１２］が確定される（ｒｒｅｓｕｌｔ←ｒｒｅｓｕｌｔ＋ｒｔｅｍｐ＝［１，３，６］＋［６，１２，６，８，１１］＝［１，３，６，１２，６，８，１１］、ｓｒｅｓｕｌｔ←ｓｒｅｓｕｌｔ＋ｓｔｅｍｐ＝［］＋［１２］＝［１２］）。続いて、要求条件が以下の通り更新される。
【００７４】
＜要求条件の更新（２回目）＞
・残余ネットワーク：図１１のネットワーク（リソースの減算箇所は下線を付与）
・始点：ｓ＝ｎ５＝１１
・要求遅延：ｄ＝１０−Ｄｅｌａｙ（［６，１２，６，８，１１］）＝８−４＝４［ｍｓ］
・経由サービス機能：ｆ＝ｆ−ｆｐ＝［ｂ］−［ｂ］＝［］
３回のリソース割当計算は、以下の条件で行われる。
【００７５】
＜３回目のリソース割当計算の条件＞
・割当ポリシ：Ｐｏｌｉｃｙ（ｓ）＝Ｐｏｌｉｃｙ（１１）＝割当ポリシＣ
・残余ネットワーク：図１１のネットワーク
・新規サービスの要求条件：帯域ｂ＝１０Ｍｂｐｓ、要求遅延ｄ＝４ｍｓ、経由サービス機能ｆ＝［］、始点ｓ＝１１、終点ｅ＝９
計算の結果、仮割当結果として割当経路ｒｔｅｍｐ＝［１１，９］、ｓｔｅｍｐ＝［］が得られたとする。Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｎｘ）となる最小のｘと、Ｐｏｌｉｃｙ（ｎ１）≠Ｐｏｌｉｃｙ（ｓｙ）となる最小のｙが探索されるが、仮割当結果の全てのノードはサブネットワークＧＰｏｌｉｃｙ（ｓ）に有るので、ｘとｙは見つからない。そこで、仮割当経路が確定され（ｒｒｅｓｕｌｔ←ｒｒｅｓｕｌｔ＋ｒｔｅｍｐ＝［１，３，６，１２，６，８，１１］＋［１１，９］＝［１，３，６，１２，６，８，１１，９］、ｓｒｅｓｕｌｔ←ｓｒｅｓｕｌｔ＋ｓｔｅｍｐ＝［１１］＋［］＝［１１］）、割当成功で処理が終了する。
【００７６】
なお、本実施の形態では、全てのサービスに対して、同一の割当ポリシの組み合わせの割当を適用しているが、ポリシＤＢ１６の登録情報にサービス別に適応する割当ポリシを登録すれば、サービス毎に異なる組み合わせの割当ポリシを適用することも可能である。また、本実施の形態では、全ての割当ポリシの優先度を同一に扱っているが、割当ポリシ間の優先度を考慮することも可能である。例えば、実行例２において、割当ポリシ２を耐障害性最大化、割当ポリシ２の適用するサブネットワーク２を被災エリアとすると、新規サービスにはなるべくサブネットワーク２のリソースを割当てたくない。このような場合、１回目のリソース割当計算において、残余ネットワーク全体ではなく、残余ネットワークからサブネットワーク２を除いたネットワークに対して、リソース割当計算を行うなど、要求条件を加工することによって、割当優先度の低いサブネットワークへのリソース割当を避けることが可能である。
【００７７】
上述したように、本実施の形態によれば、それぞれ異なる割当ポリシが適用される複数の区間を含むネットワークに対するリソース割当を可能とすることができる。その結果、より柔軟なネットワークのオペレーションが可能となる。
【００７８】
なお、本実施の形態において、オーケストレータ１０は、経路計算制御装置の一例である。リソース割当計算部は、計算部の一例である。統合制御部１３は、制御部の一例である。新規サービスは、使用要求の一例である。
【００７９】
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００８０】
本出願は、２０１６年５月１７日に出願された日本国特許出願第２０１６−０９８８０７号に基づきその優先権を主張するものであり、同日本国特許出願の全内容を参照することにより本願に援用する。
【符号の説明】
【００８１】
１０          オーケストレータ
１１          サービス入力部
１２          リソース割当計算部
１３          統合制御部
１４          ネットワーク経路制御部
１５          及びサービス機能制御部
１６          ポリシＤＢ
１７          サービス機能ＤＢ
１８          設備情報ＤＢ
１９          リソース割当ＤＢ
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
Ｂ            バス
【図１】
0006586228.tif 000002
【図２】
0006586228.tif 000003
【図３】
0006586228.tif 000004
【図４】
0006586228.tif 000005
【図５】
0006586228.tif 000006
【図６】
0006586228.tif 000007
【図７】
0006586228.tif 000008
【図８】
0006586228.tif 000009
【図９】
0006586228.tif 000010
【図１０】
0006586228.tif 000011
【図１１】
0006586228.tif 000012