(57)【要約】【課題】物理ネットワークのリソースを共用する複数の仮想ネットワークに対するリソース割当の公平性及び効率性を向上させること。【解決手段】リソース割当計算装置は、物理ネットワークを共用する複数の仮想ネットワークのそれぞれについて、発着ノードが共通する通信単位での需要を予測する需要予測部と、前記需要予測部により予測された需要と、過去において観測された前記通信単位での需要と、過去における前記通信単位での割当帯域とに基づいて、前記各通信単位に対する現在時刻の割当帯域及び割当経路を、前記各仮想ネットワークの効用の公平性を最大化するように計算する割当計算部と、を有する。【選択図】図３
2020048150.tif 000002
【特許請求の範囲】
【請求項１】
物理ネットワークを共用する複数の仮想ネットワークのそれぞれについて、発着ノードが共通する通信単位での需要を予測する需要予測部と、
前記需要予測部により予測された需要と、過去において観測された前記通信単位での需要と、過去における前記通信単位での割当帯域とに基づいて、前記各通信単位に対する現在時刻の割当帯域及び割当経路を、前記各仮想ネットワークの効用の公平性を最大化するように計算する割当計算部と、
を有することを特徴とするリソース割当計算装置。
【請求項２】
前記割当計算部は、前記各仮想ネットワークの効用に対する重みを付与して現在時刻の割当帯域及び割当経路を計算する、
ことを特徴とする請求項１記載のリソース割当計算装置。
【請求項３】
前記割当計算部は、現在時刻との時間差に応じて、各時刻の前記各仮想ネットワークの効用を指数減衰させる、
ことを特徴とする請求項１又は２記載のリソース割当計算装置。
【請求項４】
物理ネットワークを共用する複数の仮想ネットワークのそれぞれについて、発着ノードが共通する通信単位での需要を予測する需要予測手順と、
前記需要予測手順により予測された需要と、過去において観測された前記通信単位での需要と、過去における前記通信単位での割当帯域とに基づいて、前記各通信単位に対する現在時刻の割当帯域及び割当経路を、前記各仮想ネットワークの効用の公平性を最大化するように計算する割当計算手順と、
をコンピュータが実行することを特徴とするリソース割当計算方法。
【請求項５】
前記割当計算手順は、前記各仮想ネットワークの効用に対する重みを付与して現在時刻の割当帯域及び割当経路を計算する、
ことを特徴とする請求項４記載のリソース割当計算方法。
【請求項６】
前記割当計算手順は、現在時刻との時間差に応じて、各時刻の前記各仮想ネットワークの効用を指数減衰させる、
ことを特徴とする請求項４又は５記載のリソース割当計算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リソース割当計算装置及びリソース割当計算方法に関する。
【背景技術】
【０００２】
近年、単一物理ネットワーク上で、複数の仮想ネットワークが物理ネットワークのリソースを共用することで、リソースを効率的に利用することが一般的となっている。この際、複数の仮想ネットワークへの物理リソースの割当量によっては、仮想ネットワーク間で不公平性が発生するため、公平な割当量計算方法が課題となる。特に、複数の仮想ネットワークの或るリソースへの需要合計が当該リソースの容量を超過する場合、割当量は需要未満にならざるを得ないため、需要に鑑みて適切にリソースを割り当てる必要がある。一方で、公平性を重んじるあまり、或るリソースに余剰が発生すると効率性が低下するため、効率性も同時に考慮する必要がある。
【０００３】
公平かつ効率的なリソース量分配の手法としては種々の手法が知られている。例えば、代表的な公平性指標としてはＭａｘ−ｍｉｎ公平性、Ｐｒｏｐｏｒｔｉｏｎａｌ公平性などがあり、これらの公平性を満たすリソース割当手法も知られている（例えば、非特許文献１）。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Michal Pioro et al., "On Efficient Max-Min Fair Routing Algorithms," IEEE ISCC'03
【非特許文献２】L. Popa, et al., "FairCloud: Sharing the Network in Cloud Computing," ACM SIGCOMM2012.
【非特許文献３】R. Atawia, et al., "Fair Robust Predictive Resource Allocation for Video Streaming Under Rate Uncertainties," IEEE GLOBECOM2016.
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、非特許文献１の手法は、主に、或るネットワークのリンク帯域を対象とし、同リンクを経由する発着ノードを同じくする通信（以下、発着ノードを同じくする通信を「ＯＤフロー」という。）を単位として、リンク帯域のＯＤフロー間での公平な割当量計算を対象としている。複数のＯＤフローから構成される仮想ネットワーク間の公平性を考えた場合、個別ＯＤフロー間で公平性を達成したとしても、全ＯＤフローに鑑みたときに仮想ネットワーク間で公平性が達成されない可能性がある。
【０００６】
非特許文献２は、与えられたＯＤフロー需要に対して、複数の仮想ネットワークの需要合計が物理リンク帯域を超過する輻輳回線群全体に着目し、輻輳回線群のリンク帯域の割当量合計を公平にする手法を提案している。
【０００７】
しかしながら、非特許文献２は、ＯＤフロー毎の割当帯域は考慮していないため、一部のＯＤフローの割当帯域が著しく少なくなってしまう可能性がある。また、非特許文献２の手法は、需要の時間的変動を想定していない。したがって、或る時間に仮想ネットワーク間の公平性が達成されたとしても、全サービス時間を通して公平性が達成されない可能性がある。
【０００８】
非特許文献３は、動画通信に対して必要帯域（需要）を予測し、帯域を割り当てる手法を提案しているが、複数通信間の公平性は考慮していない。更に、非特許文献３の手法は、需要のリソースへの割当が固定されていることを想定している。
【０００９】
しかしながら、ＯＤフローについて、その発着ノードは固定されているが、発着ノード間の経路は可変であり、したがって経由するリンクも可変である。経路を需要に応じて動的に変更することにより、より公平性と効率性を向上できる可能性がある。需要に応じて経路を動的に変更する技術はトラヒックエンジニアリング技術として知られているが、一般的なトラヒックエンジニアリング技術は、リンク負荷を軽減させることが目的であり、仮想ネットワーク間の公平性向上させることを目的としているものはない。
【００１０】
本発明は、上記の点に鑑みてなされたものであって、物理ネットワークのリソースを共用する複数の仮想ネットワークに対するリソース割当の公平性及び効率性を向上させることを目的とする。
【課題を解決するための手段】
【００１１】
そこで上記課題を解決するため、リソース割当計算装置は、物理ネットワークを共用する複数の仮想ネットワークのそれぞれについて、発着ノードが共通する通信単位での需要を予測する需要予測部と、前記需要予測部により予測された需要と、過去において観測された前記通信単位での需要と、過去における前記通信単位での割当帯域とに基づいて、前記各通信単位に対する現在時刻の割当帯域及び割当経路を、前記各仮想ネットワークの効用の公平性を最大化するように計算する割当計算部と、を有する。
【発明の効果】
【００１２】
物理ネットワークのリソースを共用する複数の仮想ネットワークに対するリソース割当の公平性及び効率性を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態におけるシステム構成例を示す図である。
【図２】第１の実施の形態におけるリソース割当計算装置１０のハードウェア構成例を示す図である。
【図３】第１の実施の形態におけるリソース割当計算装置１０の機能構成例を示す図である。
【図４】リソース割当計算装置１０が実行する処理手順の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、第１の実施の形態におけるシステム構成例を示す図である。図１において、需要観測装置２０とリソース割当計算装置１０、及びリソース割当計算装置１０と制御装置３０のそれぞれは、ネットワークを介して接続され、物理ネットワークＮ１における各仮想ネットワークの観測及び制御のために機能する。又は、需要観測装置２０、リソース割当計算装置１０及び制御装置３０は、共通のコンピュータを用いて実現されてもよい。
【００１５】
仮想ネットワークとは、物理ネットワークＮ１のリソースを利用することで提供されるサービス等に対して割り当てられた帯域及び経路をいう。
【００１６】
物理ネットワークＮ１は、一般的なネットワークの構成を有し、複数のノードｎ１〜ｎ４（以下、それぞれを区別しない場合「ノードｎ」という。）及び各ノードｎを接続するリンクを含む。各ノードｎはＯＤフローの発着地点にも経由ノードにもなり得る。
【００１７】
図１には、複数の（２つの）仮想ネットワークｋ１及びｋ２（以下、それぞれを区別しない場合「仮想ネットワークｋ」という。）によって物理ネットワークＮ１のリソースが共用される例が示されている。仮想ネットワークｋ１は、ＯＤフローｆ１１、ｆ１２及びｆ１３から構成される。仮想ネットワークｋ２は、ＯＤフローｆ２１、ｆ２２及びｆ２３から構成される。ＯＤフローｆとは、１つの仮想ネットワークｋの通信において発着ノードが共通する通信単位をいう。図１からも明らかなように、本実施の形態において、ＯＤフローｆは、仮想ネットワークｋごとに区別される。したがって、ＯＤフローｆ１２及びＯＤフローｆ２１のように発着ノードが共通であっても、属する仮想ネットワークｋが相互に異なれば、異なるＯＤフローｆとして区別される。なお、発着ノードが共通するとは、始点ノード同士と終点ノード同士とが共通することをいう。始点ノード同士及び終点ノード同士が共通していればよく、始点ノードと終点ノードとの間の経路は異なっていてもよい。また、物理ネットワークＮ１には、通信の起点又は終点となる端末やサーバ等は含まれていなくてもよい。すなわち、ＯＤフローｆは、物理ネットワークＮ１内において、発着ノードが共通する通信であればよい。
【００１８】
需要観測装置２０は、全仮想ネットワークｋの全利用時間をΔＴ［秒］とし、物理ネットワークＮ１上の各仮想ネットワークｋをΔ［秒］毎に観測する１以上のコンピュータである。したがって、各観測時刻ｔは、離散時間（ｔ＝１，…，Ｔ）となる。全仮想ネットワークｋの全利用時間とは、少なくとも１つの仮想ネットワークｋに対して物理ネットワークＮ１のリソースが割り当てられている期間をいう。例えば、時刻ｔ＝１は、最も利用開始時刻が早い仮想ネットワークｋの利用開始時刻であり、時刻Ｔは、最も利用終了時刻が遅い仮想ネットワークｋの利用終了時刻である。需要観測装置２０は、一定周期Δ秒ごとに各仮想ネットワークｋの各ＯＤフローｆの必要帯域（通信帯域に対する需要量）を観測、蓄積しており、リソース割当計算装置１０へΔ秒ごとに観測した需要量（以下、「観測需要」という。）を通知、又はリソース割当計算装置１０からのΔ秒ごとの観測需要の要求に対して観測需要を応答する。なお、一般的なトラヒック観測装置が需要観測装置２０として用いられてもよい。
【００１９】
リソース割当計算装置１０は、需要観測装置２０による観測結果に基づいて、各仮想ネットワークｋの各ＯＤフローｆの割当帯域及び割当経路を計算する１以上のコンピュータである。割当帯域とは、各ＯＤフローｆに対する割当経路に係るリンクごとに当該ＯＤフローｆに割り当てられる帯域をいう。割当経路とは、各ＯＤフローｆに対して物理ネットワークＮ１上で割り当てられる経路（リンクの組み合わせ）をいう。
【００２０】
制御装置３０は、リソース割当計算装置１０による計算結果に基づく制御（各ＯＤフローｆへのリソースの割当）を物理ネットワークＮ１に対して実行する１以上のコンピュータである。例えば、ＳＤＮ（Software Defined Network）コントローラ等の一般的なネットワーク制御装置が、制御装置３０として利用されてもよい。
【００２１】
図２は、第１の実施の形態におけるリソース割当計算装置１０のハードウェア構成例を示す図である。図２のリソース割当計算装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００２２】
リソース割当計算装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２３】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムにしたがってリソース割当計算装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００２４】
図３は、第１の実施の形態におけるリソース割当計算装置１０の機能構成例を示す図である。図３において、リソース割当計算装置１０は、需要予測部１１、割当計算部１２及び計算結果通知部１３等を含む。これら各部は、リソース割当計算装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。リソース割当計算装置１０は、また、計算結果記憶部１４を利用する。計算結果記憶部１４は、例えば、補助記憶装置１０２、又はリソース割当計算装置１０にネットワークを介して接続可能な記憶装置等を用いて実現可能である。
【００２５】
計算結果記憶部１４には、リソース割当計算装置１０（割当計算部１２）による過去の計算結果（各仮想ネットワークｋの各ＯＤフローｆへの割当帯域及び割当経路）が、過去の時刻ｔごとに記憶されている。
【００２６】
以下、リソース割当計算装置１０が実行する処理手順について説明する。図４は、リソース割当計算装置１０が実行する処理手順の一例を説明するためのフローチャートである。なお、図４の処理手順は、Δ［秒］ごと（すなわち、需要観測装置２０の観測周期ごと）に実行される。
【００２７】
ステップＳ１０１において、需要予測部１１は、時刻｛１…ｔｎｏｗ−１｝での各仮想ネットワークｋの各ＯＤフローｆの観測需要を需要観測装置２０から取得する。ここで、ｔｎｏｗは、現在時刻である。したがって、現在時刻のΔ［秒］前までの過去の各時刻ｔにおける観測需要が取得される。観測需要の取得は、需要予測部１１から需要観測装置２０への要求に応じて行われてもよいし、需要観測装置２０からの通知に応じて行われてもよい。
【００２８】
続いて、需要予測部１１は、取得した観測需要から、仮想ネットワークｋの現在及び将来の各時刻ｔ＝ｔｎｏｗ，…，Ｔでの各ＯＤフローｆの需要ｄ（ｋ，ｔ，ｆ）の予測値（将来需要）を、例えば、ＡＲＩＭＡモデル、カルマンフィルタ等の適切な時系列予測手法によって予測（計算）する（Ｓ１０２）。又は、需要予測部１１は、観測需要以外の外部情報、例えば、各仮想ネットワークｋのユーザ数を用いて、将来需要を予測してもよい。
【００２９】
続いて、割当計算部１２は、各仮想ネットワークｋの各ＯＤフローｆについて、ＯＤフローｆ間の公平性と効率性とを達成する割当帯域及び割当経路を計算する（Ｓ１０３）。ここで、仮想ネットワークｋの時刻ｔでのＯＤフローｆに対する割当帯域をｘ（ｋ，ｔ，ｆ）と表記する。また、仮想ネットワークｋの時刻ｔでの各ＯＤフローｆの割当経路を示す行列をＡ（ｋ，ｔ）と表記する。すなわち、Ｒを、ネットワークＮ１の全リンク集合、＃ＲをＲの要素数、Ｆを全てのＯＤフローｆの集合（図１におけるＯＤフローｆ１１〜ｆ１３及びＯＤフローｆ２１〜ｆ２３）、＃ＦをＦの要素数としたときに、Ａ（ｋ，ｔ）＝｛ａ（ｋ，ｔ）ｒｆ｝を＃Ｒｘ＃Ｆの行列として、その要素ａ（ｋ，ｔ）ｒｆを、仮想ネットワークｋの時刻ｔのＯＤフローｆのうちリンクｒを経由する割合とする。なお、各仮想ネットワークｋ及び各ＯＤフローｆの過去の各時刻ｔのｘ（ｋ，ｔ，ｆ）及び過去の各時刻ｔのＡ（ｋ，ｔ）は、計算結果記憶部１４に記憶されている。
【００３０】
割当計算部１２は、需要観測装置２０から取得した過去の観測需要ｄ（ｋ，ｔ，ｆ），ｔ＝１…ｔｎｏｗ−１、計算結果記憶部１４に記憶されている過去の割当帯域ｘ（ｋ，ｔ，ｆ），ｔ＝１…ｔｎｏｗ−１、及び需要予測部１１によって予測された将来需要ｄ（ｋ，ｔ，ｆ），ｔ＝ｔｎｏｗ…Ｔに基づき、公平性及び効率性を達成するようにｘ（ｋ，ｔｎｏｗ，ｆ）及びＡ（ｋ，ｔｎｏｗ）を計算する。計算方法の一例としては、下記の最適化問題の解として、ｘ（ｋ，ｔ，ｆ）及びＡ（ｋ，ｔ）を計算する方法が挙げられる。
【００３１】
【数１】
2020048150.tif 000003
ここで、Ｋは、仮想ネットワークｋの集合、Ｃｒは、リンクｒの容量である。また、Ｕｋは、仮想ネットワークｋの効用であり、各時刻ｔ∈｛１，…Ｔ｝、各ＯＤフローｆ∈Ｆの需要ｄ（ｋ，ｔ，ｆ）と割当帯域ｘ（ｋ，ｔ，ｆ）とに基づいて計算される。すなわち、仮想ネットワークｋの効用は、需要ｄ（ｋ，ｔ，ｆ）に対して割当帯域ｘ（ｋ，ｔ，ｆ）が大きくなる程、大きくなる指標である。
【００３２】
Ｕｋの計算方法の一例としては、各時刻ｔ、各ＯＤフローｆで計算した効用の和として下記式によって求める方法が挙げられる。
【００３３】
【数２】
2020048150.tif 000004
ここで、Ｕｋ（ｘ，ｄ）は、需要ｄに対して割当帯域をｘとしたときの仮想ネットワークｋの効用を示す関数である。効用関数には種々の関数が想定されるが、一例としてはロジスティック関数形状の下記の関数が挙げられる。
【００３４】
【数３】
2020048150.tif 000005
ここで、ａは、ロジスティック曲線の形状を計算するパラメータである。また、ＦＩ（Ｕｋ）は、各仮想ネットワークｋの効用がＵｋであるときの公平性を示す関数である。公平性関数も種々のものが知られているが、一例として効用の積を最大化する下記の関数が挙げられる。
【００３５】
【数４】
2020048150.tif 000006
これは、複数変数の和が一定のもとでは、変数間の差が小さいほど積が増大することを利用している公平性関数となる。
【００３６】
なお、割当計算部１２は、計算結果である、現在時刻における各仮想ネットワークｋの各ＯＤフローに対する割当帯域ｘ（ｋ，ｔｎｏｗ，ｆ）及び割当経路Ａ（ｋ，ｔｎｏｗ）を、計算結果記憶部１４に記憶する。
【００３７】
続いて、計算結果通知部１３は、割当計算部１２による計算結果である、現在時刻における各仮想ネットワークｋの各ＯＤフローに対する割当帯域ｘ（ｋ，ｔｎｏｗ，ｆ）及び割当経路Ａ（ｋ，ｔｎｏｗ）を制御装置３０に通知する（Ｓ１０４）。当該計算結果を通知された制御装置３０は、各仮想ネットワークに対して、割当帯域ｘ（ｋ，ｔｎｏｗ，ｆ）及び割当経路Ａ（ｋ，ｔｎｏｗ）が割り当てられるようにネットワークＮ１を制御する。
【００３８】
上述したように、第１の実施の形態によれば、複数の仮想ネットワークが同一の物理ネットワークのリソースを共用する場合に、各仮想ネットワークの需要を構成する全ＯＤフロー、及び各仮想ネットワークの全利用時間に鑑みて、リソース割当量（割当帯域）のみならずＯＤフローごとの経路も同時に計算することができる。また、当該計算では、各仮想ネットワークの効用の公平性が考慮される。したがって、物理ネットワークのリソースを共用する複数の仮想ネットワークに対するリソース割当の公平性及び効率性を向上させることができる。
【００３９】
次に、第２の実施の形態について説明する。第２の実施の形態では第１の実施の形態と異なる点について説明する。第２の実施の形態において特に言及されない点については、第１の実施の形態と同様でもよい。
【００４０】
第１の実施の形態では、各仮想ネットワークｋの効用を公平に取り合っていたのに対し、第２の実施形態では、各仮想ネットワークｋの重要度又は課金額等に鑑みて、各仮想ネットワークｋの効用に重みが設けられる。重みの設け方としては、公平性関数ＦＩにおいて、下記の式の通り、仮想ネットワークｋの効用Ｕｋに対して重みｗｋを付与する（仮想ネットワークｋごとに効用Ｕｋに対する重みを変える）方法等が考えられる。すなわち、割当計算部１２は、以下の式に基づいて公平性ＦＩを計算し、当該公平性ＦＩに基づいて、ｘ（ｋ，ｔ，ｆ）及びＡ（ｋ，ｔ）を計算する。
【００４１】
【数５】
2020048150.tif 000007
ここで、Ｕｋの最小値で正規化しているのは、全ての仮想ネットワークｋの効用を１以上にするためであり、正規化した効用に１／ｗｋを乗ずることによって、重みｗｋが大きい仮想ネットワークｋほど、公平性を向上するためには、効用Ｕｋをより大きくする必要が有る。
【００４２】
次に、第３の実施の形態について説明する。第３の実施の形態では第１又は第２の実施の形態と異なる点について説明する。第３の実施の形態において特に言及されない点については、第１又は第２の実施の形態と同様でもよい。
【００４３】
第１の実施形態では、全仮想ネットワークｋの利用時間を有限（時刻Ｔまで）として考え、その有限の時間をすべて同等に扱っていたのに対し、第３の実施形態では無限の利用時間を対象とする。このとき全ての時間における仮想ネットワークｋの効用の和をとると発散するため、下記の式の通り、現在時刻から離れた各時刻の仮想ネットワークｋの効用に対しては、現在時刻との時間差に応じて指数減衰する変換を作用させる。
【００４４】
【数６】
2020048150.tif 000008
すなわち、割当計算部１２は、上記の式に基づいてＵｋを計算し、当該Ｕｋに基づいて、ｘ（ｋ，ｔ，ｆ）及びＡ（ｋ，ｔ）を計算する。
【００４５】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００４６】
１０          リソース割当計算装置
１１          需要予測部
１２          割当計算部
１３          計算結果通知部
１４          計算結果記憶部
２０          需要観測装置
３０          制御装置
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
Ｂ            バス
【図１】
2020048150.tif 000009
【図２】
2020048150.tif 000010
【図３】
2020048150.tif 000011
【図４】
2020048150.tif 000012