【文献】
塩本 公平 他,パケットサービスの新たなパラダイムを目指して,NTT技術ジャーナル,2008年11月 1日,第20巻,第11号,p.60〜66
【文献】
久行 恵美 他,「ネットワークを渡り歩けるコンピュータ」を利用したネットワークトラヒック削減のための動的負荷分散手法,電子情報通信学会論文誌,2006年 4月 1日,第J89-B巻,第4号,p.443〜453
(58)【調査した分野】(Int.Cl.,DB名)
基盤ネットワーク上で、特に、基盤ネットワークのリソース消費を最適化する自己組織化モデルの範囲内で、少なくとも1つの仮想ネットワークを動作させる方法において、仮想ネットワークは複数の仮想ノードを有し、各仮想ノードは、基盤ネットワークのそれぞれの基盤ノードに割り当てられ、同じ仮想ネットワークの隣接する2つの仮想ノードは、それぞれ1つ以上の基盤ノードリンクに対応する仮想リンクによって接続され、該方法は、
仮想ネットワークによって個別に消費されるリソースに関して少なくとも2つの基盤ノード内のトラフィックパターンを識別するステップと、
基盤ノード内のリソース消費を最適化するため、識別されたトラフィックパターンの評価に応じてリソースを再割当するステップと
を備え、
識別ステップならびにリソースの再割当を実行するための評価および決定が、各基盤ノードでローカルに実行され、
識別ステップが、通過トラフィックに関連するトラフィックパターンを探索するために規定されたヒューリスティックによって実行され,このようなトラフィックパターンが転送トラフィックと呼ばれ、
ヒューリスティックが、受容候補ヒューリスティックおよび移動候補ヒューリスティックを含み、これによりそれぞれ受容候補および移動候補のリストが得られることを特徴とする、基盤ネットワーク上で少なくとも1つの仮想ネットワークを動作させる方法。
識別ステップならびにリソースの再割当を実行するための評価および決定が、自律的エンティティすなわち仮想マネージャによって実行されることを特徴とする請求項1に記載の方法。
過負荷の基盤ノードリンクを識別するため、基盤ノード上に配備される各仮想ノードのネットワークトラフィックおよび読み書きの量を含むリソース情報を監視する監視ループが設けられることを特徴とする請求項1ないし4のいずれか1項に記載の方法。
基盤ノードのネットワークトラフィックが、その基盤ノード上に配備される各仮想ノードのネットワークトラフィックと、前記基盤ノードに割り当てられていない仮想ノード間の通過トラフィックとを含むことを特徴とする請求項5に記載の方法。
再割当ステップが、ある基盤ノードから別の基盤ノードに少なくとも1つの仮想ノードを移動することを含むことを特徴とする請求項1ないし8のいずれか1項に記載の方法。
仮想リンクの流出トラフィックと、基盤ノード内の1つ以上の記憶装置での仮想ノードの読み出しおよび/または書き込みの量との間の関係が識別されることを特徴とする請求項12ないし15のいずれか1項に記載の方法。
リソースの再割当を実行するための決定および/または移動メカニズムの評価が、それぞれの基盤ノードおよび/または仮想ノードもしくはネットワークの自己組織化プロセスの履歴の考慮を含むことを特徴とする請求項1ないし19のいずれか1項に記載の方法。
【発明の概要】
【発明が解決しようとする課題】
【0010】
本発明の目的は、物理基盤ネットワークのリソースの効率的な消費を可能にするため、基盤ネットワーク上で少なくとも1つの仮想ネットワークを動作させる方法および対応する仮想ネットワーク環境を改良し、さらなる展開を行うことである。
【課題を解決するための手段】
【0011】
本発明によれば、上記の目的は、請求項1の構成を備えた方法および請求項23の構成を備えた仮想ネットワーク環境によって達成される。請求項1に記載の通り、本方法は、以下のステップ、すなわち、仮想ネットワークによって個別に消費されるリソースに関して少なくとも2つの基盤ノード内のトラフィックパターンを識別するステップと、基盤ノード内のリソース消費を最適化するため、識別されたトラフィックパターンの評価に応じてリソースを再割当するステップとを備え、識別ステップならびにリソースの再割当を実行するための評価および決定が、各基盤ノードでローカルに実行されることを特徴とする。
【0012】
請求項23に記載の通り、本仮想ネットワーク環境は、仮想ネットワークによって個別に消費されるリソースに関して少なくとも2つの基盤ノード内のトラフィックパターンを識別する手段と、基盤ノード内のリソース消費を最適化するため、識別されたトラフィックパターンの評価に応じてリソースを再割当する手段とを備え、識別手段ならびにリソースの再割当を実行するための評価および決定が、各基盤ノードでローカルに実行されることを特徴とする。
【0013】
本発明によって認識されたこととして、仮想ネットワークによって個別に消費されるリソースに関して少なくとも2つの基盤ノード内のトラフィックパターンを適切に識別すること、および、基盤ノード内のリソース消費を最適化するため、識別されたトラフィックパターンの評価に応じてリソースを再割当することによって、物理基盤ネットワークのリソースの効率的な消費が可能となる。本発明の方法によれば、識別ステップならびにリソースの再割当を実行するための評価および決定が、各基盤ノードでローカルに実行される。本発明の方法は、仮想ノード内で動作するアプリケーションとは完全に独立である。本発明によれば、既設の仮想ネットワークのリソース消費を管理するための新しいアプローチが提供される。このアプローチでは、物理リソースの消費を時間とともに最大化するために、リソースを仮想レイヤ内で動的に移転することができる。リソース再割当をトリガする原因となる条件の分析は、その分析が実行される物理あるいは基盤ノードのローカルな情報のみを使用する。ローカルな情報によってサポートされる完全に分散的な実行の採用により、管理モデルに属する各エンティティは、オンラインで自律的に決定をすることができ、これらのエンティティの共同の実行が、自己組織化基盤ネットワークを生成することができる。
【0014】
好ましくは、識別ステップならびにリソースの再割当を実行するための評価および決定は、仮想マネージャのような自律的エンティティによって実行可能である。このような自律的エンティティは、上記の機能の非常に有効な管理を提供することができる。このエンティティは、その基盤ノード上で監視される情報のみに基づいて動作することが可能である。
【0015】
本発明の好ましい実施形態において、自律的エンティティは、基盤ノード上、基盤ノード内、または基盤ノード外に、好ましくは集中型または分散型の管理システム内に、設けることができる。特に、基盤ノード上または基盤ノード内に設ける場合、非常に有効なデータ処理が実現可能である。
【0016】
無効なネットワーク配置を迅速に修正するため、識別ステップは、基盤ノードリンクが過負荷であると識別されるときに開始されることが可能である。この場合、上記のエンティティまたは仮想マネージャは、この基盤ノードのリソースを用いて各仮想ネットワークのトラフィックパターンを識別するためのプロセスをトリガすることができる。
【0017】
自己組織化方法の提供に関して、基盤ノード上に配備される各仮想ノードのネットワークトラフィックおよび読み書きの量を含むリソース情報を監視する監視ループを提供することが可能である。このような監視ループは、過負荷状況の発生後に、過負荷の基盤ノードリンクを非常に迅速に識別することができる。
【0018】
基盤ノードのネットワークトラフィックは、その基盤ノード上に配備される各仮想ノードのネットワークトラフィックと、当該基盤ノードに割り当てられていない仮想ノード間の通過トラフィックとを含み得る。このような通過トラフィックは、基盤ノードのネットワークリソースを使用するが、消費されるリソースには仮想ノードが割り当てられていない。基盤ネットワーク内の通過トラフィックの削減は、自己組織化モデルの重要な目標である。
【0019】
好ましくは、上記の監視ループは、自律的エンティティまたは仮想マネージャによって実行可能である。これにより、過負荷状況に関して、非常に有効な応答挙動が得られる。
【0020】
本発明の好ましい実施形態において、再割当を実行するための決定は、通過トラフィックの存在に依存することが可能である。このような通過トラフィックを避けることは、基盤ネットワークのリソースの効率的な消費のための非常に有効な手段である。
【0021】
本発明の具体的実施形態において、再割当ステップは、ある基盤ノードから別の基盤ノードに少なくとも1つの仮想ノードを移転することを含むことが可能である。このような移転により、特に通過トラフィックを削減することができる。
【0022】
本発明の特に簡単な実施形態を実現するため、識別ステップは、通過トラフィックに関連するトラフィックパターンを探索するために規定されたヒューリスティックによって実行可能である。ヒューリスティックを用いて、トラフィックパターンを識別し、移転メカニズムを起動することができる。このようなヒューリスティックは、基盤ノード内の情報を収集し評価する際のローカルな視点に基づく効率的なリソース消費に関する最適化フレームワークの一部とすることができる。通過トラフィックに関連するトラフィックパターンは、転送トラフィックと呼ぶことができる。
【0023】
非常に有効なヒューリスティックとして、受容候補ヒューリスティックおよび移転候補ヒューリスティックが可能であり、これによりそれぞれ受容候補および移転候補のリストが得られる。受容候補は、それぞれの仮想ネットワークの仮想ノードを受容するのに適しているとみなされる基盤ノードとすることが可能である。移転候補は、当該現在の基盤ノードから別の基盤ノードに移転されるのに適しているとみなされる仮想ノードとすることが可能である。
【0024】
リソースの適切な再割当を行うため、リソースを消費している仮想リンクは、過負荷基盤リンクを識別した後に、識別されることが可能である。これにより、大量のリソースを消費している仮想ネットワークを識別することが可能となる。
【0025】
基盤リンク内の過負荷仮想リンクを識別した後、仮想リンク内のフローが通過トラフィックの転送トラフィックパターンと一致するかどうかを判定するのが好ましい。
【0026】
本発明の非常に簡単な実施形態において、転送トラフィックパターンの識別は、分析される仮想リンクの流入トラフィックを流出トラフィックと比較すること、またはその逆を含むことが可能である。
【0027】
特に移転候補ヒューリスティックに関して、流出トラフィックが基盤ノードの仮想ノードによって生成されているかどうかを判定するとよい。この場合、仮想リンクの流入トラフィックと流出トラフィックとの比較のみが重要なわけではない。
【0028】
また、移転候補ヒューリスティックに関して、仮想リンクの流出トラフィックと、基盤ノード内の1つ以上の記憶装置での仮想ノードの読み出しおよび/または書き込みの量との間の関係を識別するとよい。
【0029】
好ましい実施形態において、本方法は、基盤ネットワークのリソース消費を最適化するための自己組織化モデルまたは自己組織化制御ループにおいて実現可能である。
【0030】
好適かつ有効な自己組織化モデルまたは制御ループは、下記を含む少なくとも5段階を有することが可能である。
1.少なくとも2つの、好ましくはそれぞれの基盤ノードが、移動する可能性のある候補のローカルな分析を行う。
2.基盤ノードが、受容したい仮想ノードに関する情報を送信する。
3.移転の必要性についてのローカルなマッチングおよび/またはネゴシエーション。ここで、好ましくは、移転される仮想ノードの基盤ノードまたは基盤ノード所有者が、どの基盤隣接ノードが仮想ノードを受容するかを決定する。
4.移転要求と移転される仮想ノードとの間の一致の公表。
5.仮想ノード移動メカニズム。
【0031】
上記の第1段階において、それぞれの物理あるいは基盤ノードが、移動する可能性のあるトラフィック候補のローカルな分析を行うことができる。このような分析は、非同期的に実行できる。第2段階において、物理隣接ノードが、受容したい仮想ノードに関する情報を交換することができる。第3段階は、移転の決定の結果として、評価段階と呼ぶことができる。第4段階において、決定の公表と、必要であれば、リソースに対する要求の確認を実行することができる。第5段階における仮想ノード移動は、ストレージおよびアプリケーション(APP)の移動を含むことができる。
【0032】
好ましい実施形態において、自己組織化モデルまたは制御ループは、第6段階として、移動または移転メカニズムのローカルな評価をさらに含むことができる。
【0033】
また、リソースの再割当を実行するための決定および/または移動もしくは移転メカニズムの評価は、好ましくは、それぞれの基盤ノードおよび/または仮想ノードもしくはネットワークの自己組織化プロセスの履歴の考慮を含むことができる。この場合、往復移転の繰り返しを避けることができる。
【0034】
本発明は、将来のインターネットの発展に重要な寄与をすることができる。この場合、ネットワークは、人手の介入なしに自動的に機能するのが好ましい。ネットワーク仮想化分野に対しては自己**機能が好ましい。
【0035】
インフラストラクチャネットワークの監視および仮想ノードの移転を開始する決定が、本発明において考慮されている。具体的には、本発明は、仮想ノード内で動作する機能に関する知識なしに実施されるが、決定は、ノードのリソース使用の透過的な監視および隣接ノードとの分散型インタラクションに基づいている。
【0036】
本発明によれば、物理インタフェースによって仮想ノードに出入りするパケットの監視が可能である。本発明の好ましい適用例において、仮想ネットワークの通過トラフィックが考慮される。これは、ルータまたはノードを通って流れるトラフィックであり、ある特定の仮想ネットワークに属するが、当該ルータまたは基盤ノード上に存在する仮想ノードを有しない。
【0037】
仮想ノードを隣接基盤ノードに移転する決定は、仮想ネットワークに属する仮想ノードの、ローカルに監視されたリソース使用パターンのみに基づくので、仮想ノード内で動作する機能とは独立である(透過性)。
【0038】
本発明は、自己最適化仮想ネットワークの基礎を提供する。現実の基盤ネットワーク上で、より高いスループットおよび最適化されたトラフィック負荷を達成することができる。保守のため、あるいは、ネットワーク全体のエネルギー消費を低減するために基盤ノードがシャットダウンする場合に、基盤ノード外への仮想ノードの移転が可能である。本発明は、仮想ネットワーク内で動作するネットワーク機能とは独立に実現可能である。というのは、本解決法は、仮想ノードのリソース消費、すなわち、出入りするパケットおよび記憶装置での読み書き、の観測に基づくからである。
【0039】
本発明によれば、物理インフラストラクチャ上で動作する仮想ネットワークリソースのリアルタイム再割当が可能である。このような再割当は、仮想ノード内で動作するアプリケーションとは完全に独立である。
【0040】
本発明は、既設の仮想ネットワークのリソース消費を管理する新しいアプローチを提供する。このアプローチでは、リソースは、物理リソースの消費を時間とともに最大化するために、リソースを仮想レイヤ内で動的に移転することができる。このような自己組織化モデルは、リソース消費のローカルな情報に基づいて、仮想ネットワークに対するリアルタイム再割当方式を実現する。
【0041】
本発明は、どの仮想ネットワークトラフィックが、ある特定の基盤ノードに対して過負荷となっているかを検出するためのヒューリスティックを提供する。リソースの再割当が必要かどうかを判定するための、ローカルな知識に基づく評価基準が確立される。トラフィックパターンの特徴づけは、ローカルな視点に基づく。リソースの再割当を実行するための評価および決定の実行は、ネットワーク内で完全に分散される。中央エンティティは使用されない。
【0042】
仮想リソースの再割当を担当する自己組織化管理モデルが規定される。自己組織化モデルの目標は、仮想リンクの再定義と、仮想ノード(ホスティングアプリケーション)をユーザの要求に近い物理ロケーションに移動することによって、基盤ネットワークの全体的トラフィックを低減することである。自己組織化モデルの背後にあるアルゴリズムは、インフラストラクチャネットワークの各物理ノードによって実行される。このようにして、中央エンティティは不要となる。
【0043】
本発明を好適な態様で実施するにはいくつもの可能性がある。このためには、一方で請求項1に従属する諸請求項を参照しつつ、他方で図面により例示された本発明の好ましい実施形態についての以下の説明を参照されたい。図面を用いて本発明の好ましい実施形態を説明する際には、本発明の教示による好ましい実施形態一般およびその変形例について説明する。
【発明を実施するための形態】
【0045】
図1は、本発明の方法とともに用いられるネットワーク仮想化環境の実施形態を模式的に例示している。基盤ネットワークは、インフラストラクチャプロバイダに属するすべての物理リソースを包含し、仮想ネットワーク(virtual network, VN)は、仮想プロバイダに帰属する基盤ネットワークリソースのスライスである。仮想リンクは、同じ仮想ネットワークの隣接する2つの仮想ノード間のコネクションである。
図1に例示したように、仮想リンクは、基盤リンクに直接マッピングされる(例えば、仮想ネットワーク#2)ことも可能であり、あるいは、同じ基盤ノード上の通過トラフィックとなることも可能である(例えば、仮想ネットワーク#1、ここで、A#1とE#1との間の仮想リンクは、「基盤ノードB」上の通過トラフィックを生成している)。
【0046】
仮想ノードは、基盤ノードリソースからのスライスの規定されたセットである。通常、このスライスのセットは、CPU部分、メモリ空間、アプリケーション、帯域幅、およびオプションとして記憶容量、から構成される。仮想ノードのアーキテクチャにおける重要な特徴は、透過性である。相異なる仮想ネットワークからの仮想ノードは、プロバイダ間の分離を保証するために、いかなる種類の情報も、見たり交換したりすることができない。さらに、顧客のプライバシーを保護するため、仮想ノードにおいて交換されるデータは、基盤ノードプロバイダにとって透過的である。それにもかかわらず、相異なるスライスのアクティビティを検査するためのいくつかの最小限のプリミティブが、通常は利用可能である。例として、基盤リソースのコントローラが、実際に使用されている計算リソース(例えば、CPU、メモリあるいはディスク)やトラフィック消費の量を知ることを可能にするプリミティブが挙げられる。
【0047】
図2は、好ましい基盤ノードアーキテクチャを模式的に例示している。要求される透過性および分離を提供するため、仮想マネージャの概念が用いられる。仮想マネージャは、自己組織化モデルに関連するリソース情報の監視と、自己組織化のアルゴリズムあるいは方法の実行とを担当する。
図2に示すように、監視ループが、自己組織化モデルの関連する測定ポイントから情報を収集する。本発明において、関連する情報は、基盤ノード上に配備される各仮想ノードのネットワークトラフィック(仮想マネージャモジュールの中央のボックス)および読み書き(仮想マネージャモジュールの右側のボックス)の量である。
【0048】
しかし、基盤ノードのリソース消費は、その内部に配備される仮想ノードに関連するとは限らない。
図1に例示したように、通過トラフィックが、基盤ノードのネットワークリソースを使用しているが、消費されるリソースには仮想ノードが関連づけられていない、という場合がある。基盤ノードのリソースの消費者を明示的に識別することは、基盤ネットワーク内の仮想ネットワーク要素をどのように組織するかを決定するために重要であると想定することができる。そこで、基盤ノード内の通過トラフィックをも識別し監視するために、仮想パイプの概念を定義する。仮想パイプは、次のような意味で仮想ノードとは異なる。すなわち、仮想パイプは、仮想ネットワークトポロジーおいて不可視であり、通過するネットワークトラフィック以外の基盤リソースは関連づけられていない。
【0049】
基盤ネットワーク内の通過トラフィックの削減は、本発明の自己組織化モデルの重要な特徴である。この特徴を実現するため、各基盤ノードによって並行して実行される、自己組織化制御ループ内で動作するアルゴリズムあるいは方法が規定される。このアルゴリズムは、通過トラフィックに関連する仮想ノードを、通過トラフィックが通過する基盤ノードに移転することによって、通過トラフィックの数を削減することができる。同じく自己組織化モデルに対して規定されるヒューリスティックを用いて、トラフィックパターンが識別され、移転メカニズムが起動される。リソース消費に関する本研究の大きな相違点は、トラフィックパターンを特徴づけるローカルな視点と、リソースの再割当を実行するための評価および決定の完全に分散された実行とである。
【0050】
以下、自己組織化モデルの好ましい実施形態についてさらに詳細に説明する。
【0051】
前セクションで簡単に説明したように、自己組織化モデルは、主として、ローカルな情報を用いたボトルネック状況の識別、および、仮想リソースを再割当するために完全に分散された決定プロセス、によって特徴づけられる。このセクションでは、仮想マネージャのいくつかの役割と、それらの役割が、トラフィックパターンを特徴づけるために規定されるヒューリスティックとどのように関連するかを示す。また、ヒューリスティックそのものと、自己組織化制御ループについても示す。
【0052】
仮想マネージャは、その基盤ノード上で監視される情報のみに基づいてリソース消費を低減するための決定を行う自律的エンティティとして設計される。このため、基盤ノードのリンクが過負荷と識別されると、仮想マネージャは、この基盤ノードのリソースを使用する各仮想ネットワークのトラフィックパターンを識別するプロセスをトリガする。目標は、いずれかの仮想ネットワークが通過トラフィックに関連するパターンを示しているかどうか識別することである。このようなパターンが過負荷リンクにおいて確認された場合、仮想マネージャは、このトラフィックをリンクから削除するための適用可能なアクションをとる(これらの決定については、本セクションで後述する)。
【0053】
通過トラフィックに関連するパターンを「転送トラフィック」(forward traffic)と称する。転送トラフィックの完全な記述は、仮想ノードから出発し、同じ仮想ネットワークの仮想パイプ(または仮想ノードでもよい)を通過し、やはり同じ仮想ネットワークに属する別の仮想ノードに到着するフローである。
図3は、仮想ネットワーク#1および#2(それぞれVN#1およびVN#2)上の転送トラフィックの例を示している。VN#1の場合、フローは、基盤ノードAから出発し、基盤ノードB上の仮想パイプを通り、宛先に到達するまで転送されている。VN#2の場合、フローは、基盤ノードCから出発し、基盤ノードA上の仮想パイプを通過し、基盤ノードB上の宛先に到達する。
【0054】
ここで、リンクl
1およびl
2(両方ともL
s(表1)に属する)が、それぞれ基盤ノードC/AおよびA/Bの仮想マネージャによって、過負荷とみなされているとする。リンクl
1はVN#2からのトラフィックフローのみを有するが、リンクl
2は両方の仮想ネットワークからのトラフィックフローを含む。仮想マネージャ内で動作する自己組織化アルゴリズムの課題は、仮想ネットワークによってローカルに使用されるリソース以外の情報を取得せずに、これらのリンク内のフローが転送トラフィックパターンと一致するかどうかを「推測」することである。
【0055】
ここで、われわれの識別プロセスの不確実性を特徴づけるために、「推測」という用語を明示的に用いている。この不確実性は、仮想ネットワーク内を流れるトラフィックの内容を検査せずに、このネットワークによって使用されるリソースの量だけを考えるために生じる。そこで、われわれの不正確な識別は、基盤ノード内の各仮想ネットワークによって消費されるリソースによって与えられる手がかりの中から転送パターンを探索するために規定されるヒューリスティックによって実現される。
【0056】
基盤ノードにおける仮想ネットワークの存在は、仮想パイプや仮想ノードのような仮想要素によって実現可能であり、これらの要素に関連する基盤リソースは相異なると考えられるかもしれない。確かに、推測プロセスは、仮想パイプと仮想ノードとでは異なる。このため、2つのヒューリスティックを考案した。第1のヒューリスティックは、受容候補ヒューリスティックと称し、仮想ネットワークに関連する仮想パイプによって使用されるリソースを検討する。第2のヒューリスティックは、移転候補ヒューリスティックと称し、仮想ネットワークの仮想ノードが基盤ノード上に配備されるときに、転送トラフィックパターンを識別しようとする。これらのヒューリスティックの詳細を以下で説明する。
【0057】
ヒューリスティックの出力は、受容または移転される仮想ノードのリストである。これらのリストをそれぞれ、受容候補および移転候補と称する。この出力の一例を
図3に示す。基盤ノードCで動作する自己組織化アルゴリズムは、VN#2の仮想ノードを移転候補と識別している。一方、基盤ノードAおよびBは、VN#1およびVN#2からの仮想ノードを移転候補と識別し、VN#2およびVN#1からの仮想パイプを受容候補と識別している。
【0058】
トラフィックパターンの特徴づけと、仮想リソースの再編成のコスト評価(コスト評価についての詳細は後述する)とに基づいて、各基盤ノードの仮想マネージャは、候補リスト内に識別された仮想ネットワークのリソースを再編成するためのアクションをとる(再編成メカニズムの詳細は、本セクションの最後に説明する)。以下、リソースを再編成するための決定の詳細を示す。以下のサブセクションで用いる記法を表1に記述する。上付き添字は、仮想要素または基盤要素のいずれを指定しているかを表すために用い、下付き添字は、これらの要素のインデックスを識別するために用いる。
【0059】
表1:自己組織化モデルの記法
【表1】
【0060】
A.過負荷基盤リンクの識別
仮想リソースの再編成は、過負荷リソースが基盤ノード内で検出される場合にのみ意味がある。われわれのモデルでは、過負荷リンクが、自己組織化アルゴリズムの出発点となる要素である。このため、各リンクl
sj∈L
s(ただし、iはL
sのインデックスである)に対し、(1)に示す条件は、基盤リンクl
sjが過負荷基盤リンクのリストOvLink
sに含まれるかどうかを確認する。
【数1】
【0061】
OvLink
sが空でない場合、次のステップは、各過負荷基盤リンク内のどの仮想リンクがリソースを消費しているかを識別することである。われわれは、過負荷仮想リンクを識別するための2つの異なる関数を定義した。第1に、基盤リンク帯域幅を、その基盤リンク内のすべての仮想リンク間で等分使用する場合を考える。(2)における関数EqualT( )は、各基盤リンクl
sj∈OvLink
s(ただし、jは、リストOvLink
s内の基盤リンクのインデックスである)に対して適用される。目標は、基盤リンクl
sjのどの仮想リンクl
vkが、他の仮想リンクよりも多くのリソースを使用しているかを確認することである。ただし、kは、仮想ネットワークのインデックスである。各基盤リンクl
sjに対し、仮想リンクl
vkjを有するリストOvVLink_l
sjが作成される。ただし、l
vkjは、基盤リンクl
sj内の仮想ネットワークkの仮想リンクである。
【数2】
【0062】
第2案を(3)に示す。関数MajorT( )は、基盤リンクl
sjのリソースの大部分を消費している仮想リンクを識別する。この代替案は、その出力が基盤リンク帯域幅を支配的に使用している唯一の仮想リンクl
vkjである点で、第1案とは異なる。
【数3】
【0063】
基盤リンク内の過負荷仮想リンクを識別した後は、仮想リンク内のフローが転送トラフィックパターンと一致するかどうかを判定する。
【0064】
B.受容候補ヒューリスティック
上記のように、受容候補ヒューリスティックは、仮想パイプ要素がリンクl
sjj内の過負荷仮想リンクに関連づけられるときに、転送トラフィックを識別するために適用される。
図3に示すような縮小した仮想ネットワークトポロジーでは、仮想パイプにおける転送トラフィックパターンの識別は自明である。というのは、一方の仮想/基盤リンクにおける入力が、他方の仮想/基盤リンクにおける出力となっているからである。しかし、仮想パイプが2つより多くの仮想リンクに接続される複雑なトポロジーでは、この仮想パイプの仮想リンクを通って流れるトラフィックの詳細な対応関係を必要とする。本研究で考案した受容候補ヒューリスティックは、このような複雑なトポロジーを考慮する。
【0065】
われわれは、仮想パイプを通るトラフィックに関連する条件として、この仮想パイプをホスティングする基盤ノードを、この仮想要素に関連する仮想ネットワークに対する受容候補として宣言する前に分析しなければならない条件のセットを規定した。仮想パイプトラフィックの分析は、分析される仮想リンクの流入トラフィックを流出トラフィックと比較すること、またはその逆によって行うことができる。受容候補ヒューリスティックに対し、われわれは、流入トラフィックを流出トラフィックと比較することを分析の基礎とした。以下に列挙する条件が、各OvVLink_l
sjリストに属する各仮想リンクl
vkjに対して適用される。
【0066】
・条件1:仮想ネットワークkに関連する読み書きがないことを保証する。
【数4】
【0067】
・条件2:l
vkjの主要なトラフィックが流入トラフィックであるかどうかを識別する。
【数5】
【0068】
・条件3:l
vkjの流入トラフィックの量を、VNETL
sに属する他の基盤リンクにおける同じ仮想ネットワークの単一の流出トラフィックと対応づける。この対応関係は、l
vkjに到着するすべてのトラフィックが完全に単一の仮想リンクに転送されている場合の識別を可能にする。
【数6】
【0069】
・条件4:l
vkjの流入トラフィックの量を、VNETL
sに属する他の基盤リンクにおける同じ仮想ネットワークのすべての流出トラフィックと対応づける。この条件の目的は、l
vkj上の流入トラフィックが、同じ仮想ネットワークの複数の相異なる仮想リンクに転送されているかどうかを検出することである。
【数7】
【0070】
(4)に示す最後の分析は、基盤リンクl
sjに対する分析のもとで仮想ネットワークに関連する仮想リンクが、基盤ノードのReceiving_Candidate_List(受容候補リスト)に挿入されることになるかどうかを判定することができる。このリストは、〈仮想ネットワーク,仮想リンク〉というタプルである。タプルの第1要素は複数の項を有し得るが、第2要素はユニークである。
【数8】
【0071】
基盤ノードの仮想マネージャは、ネゴシエーション期間中にReceiving_Candidate_Listを用いて、このリストに登録されている仮想ネットワークから仮想ノードを移転することになる。
【0072】
C.移転候補ヒューリスティック
移転候補ヒューリスティックは、仮想ノードの観点を考慮して、転送トラフィックの分析を補完する。受容候補ヒューリスティックに対するアプローチとは異なり、関心があるのは、各OvVLink_l
sjリストに属する各仮想リンクl
vkjの流入トラフィックを流出トラフィックと比較することだけではない。移転候補ヒューリスティックの場合、仮想ノードがl
vkj内の流出トラフィックを生成しているかどうかを識別しなければならない。本研究では、仮想ノードは、l
vkjにおけるトラフィックフローを発生するためには、仮想リンク以外のリソースを使用する必要があると仮定する。また、仮想ノードは、メモリやハードディスクのような記憶装置からのリソースも使用することを考慮する。例えば、仮想ストリーミングサーバは、要求されたメディアのデータを要求側に送信する前に、そのメディアをあるストレージから読み出す必要がある。このため、移転候補ヒューリスティックの場合、リンクl
vkjの流出トラフィックと仮想ネットワークkのread
vkの量との間の関係を識別したい。このような関係を確定するため、仮想ノード上の転送トラフィックパターンを識別するためのさまざまな条件のセットが必要である。この場合も、条件は、OvVLink_l
sjに属する各仮想リンクl
vkjに対して適用される。
【0073】
・条件1:仮想ネットワークkは、その仮想ストレージスライスからデータを読み出さなければならない。
【数9】
【0074】
・条件2:l
vkjの流出トラフィックは、同じ仮想リンクの流入トラフィックよりも高くなければならない。
【数10】
【0075】
・条件3:l
vkjの流出トラフィックは、read
vkから取得されるデータの量に関連づけられなければならない。ここでの問題は、仮想ネットワークのいかなる種類のデータパケットも検査していないので、仮想ストレージから読み出されるデータの量と、l
vkjを通じて転送されるデータの量とを直接に識別できないことである。このため、l
vkjの流出トラフィックとして流れる読み出しの量を識別する唯一の方法は、l
vkjの流出トラフィックと、仮想ネットワークkによって消費されるリソースとの間の類似関係を定義することである。そこで、与えられたread
vkの量がl
vkjの流出トラフィックの「類似区間」に属するかどうかを判定する類似関数Sim( )を定義する。
【数11】
ただし、
【数12】
【0076】
(5)に示す分析の後に、リストMoving_Candidate_List(移転候補リスト)が作成される。このリストも、タプル〈仮想ネットワーク,仮想リンク〉から構成される。
【数13】
【0077】
以下、上記の両方のヒューリスティックに従って基盤リンクのトラフィックを分析した後、必要であれば仮想リソースを再割当する移転メカニズムを適用する、自己組織化制御ループを示す。
【0078】
D.自己組織化制御ループ
自己組織化制御ループの全体図を
図4に示す。白丸はローカルな分析を表し、黒矢印は基盤隣接ノード間の通信を示す。制御ループの1サイクルは5段階からなり、それらをアルゴリズム1、2および3に詳細に示す。
【0079】
第1段階は、仮想リソースの再割当をトリガする条件の分析によって特徴づけられ、アルゴリズム1に示す通りである。この段階では、本セクションで前述した式を用いて、基盤ノードにおけるリソースの状態をローカルに識別する。受容候補リストおよび移転候補リストの作成(アルゴリズム1のステップ1から4まで)の後、アルゴリズム1の「ステップ6」に記述されているように、同じ基盤ノードで並行してアルゴリズム2および3が実行される。しかし、それらのアルゴリズムの実行の説明を単純にするため、
図4は、一方の基盤ノードはアルゴリズム2のみを実行し(
図4の左側の基盤ノード)、他方のノードはアルゴリズム3を実行する(
図4の右側のノード)様子を示している。
【0080】
アルゴリズム1:自己組織化制御ループ
ステップ1:L
sに基づいてOvLink
sリストを作成する(式(1)による)。
ステップ2:OvLink
s内の各l
sjごとにOvVLink_l
sjを作成する(式(2)または(3)による)。
ステップ3:OvLink
s内の各l
vkjがReceiving_Candidate_Listに属するかどうかを確認する(式(4)による)。
ステップ4:OvLink
s内の各l
vkjがMoving_Candidate_Listに属するかどうかを確認する(式(5)による)。
ステップ5:Receiving_Candidate_ListおよびMoving_Candidate_Listが空ならば、ステップ7に進む。
ステップ6:アルゴリズム2およびアルゴリズム3を実行する。
ステップ7:次の自己組織化制御ループサイクルを待機してからステップ1に進む。
【0081】
自己組織化制御ループ(
図4)の第2段階では、仮想ノードを「受容してもよい」基盤ノードが、仮想ネットワークvnet
kの仮想ノードをホスティングすると考えられる基盤隣接ノードと連絡をとる。しかし、基盤隣接ノードが、要求された仮想ノードをホスティングする保証はない。というのは、要求を送信する基盤ノードは、その隣接ノードの仮想要素について何も知らないからである。基盤ノードは、その隣接ノード上の仮想ネットワークvnet
kに関連する仮想要素が存在することを知っているだけである。われわれは、基盤ノード内だけでなく、基盤ノード間でも透過性を維持するために、この知識の欠如を仮定する。さらに、仮想リソースの移動を開始する要求は転送されてはならないこと、すなわち、これが転送不能メッセージであることも仮定する。
【0082】
アルゴリズム2:受容候補アルゴリズム
ステップ1:Receiving_Candidate_List内の各vnet
kについて、最も過負荷なリンクl
vkjを見出し、このリンクの基盤隣接ノードに対し、vnet
kの仮想ノードを移転する要求を送信する。
ステップ2:各要求について、時間tの間、基盤隣接ノードの応答を待機する。
ステップ3:vnet
kの仮想ノードを移転する要求に対する応答が時間tの間に受信された場合、その仮想ノードを受容する基盤ノードの観点で移動を実行する。
ステップ4:ステップ3が失敗した場合、またはvnet
kに対する時間tが経過した場合、vnet
kを有するすべてのタプルをReceiving_Candidate_Listから削除する。
【0083】
アルゴリズム3:移転候補アルゴリズム
ステップ1:Moving_Candidate_List内の各vnet
kについて、時間tの間、vnet
kに関連する仮想ノードを移転する要求を待機する。
ステップ2:時間t内に、vnet
kの仮想ノードを移転する要求が受信された場合、ステップ3に進み、そうでない場合、メッセージを破棄する。
ステップ3:Moving_Candidate_List上に、受信した要求に一致するvnet
kが存在する場合、ステップ4に進み、そうでない場合、受信した要求の基盤ノード所有者に否定応答を送信してからステップ5に進む。
ステップ4:vnet
kに対する費用効率関係が肯定である場合、基盤隣接ノードに肯定応答メッセージを送信し、vnet
kを有するすべてのタプルをMoving_Candidate_Listから削除し、仮想ノードを移転する基盤ノードの観点で移動を実行する。
ステップ5:時間tまで、vnet
kに対する要求の受信を待機し、受信したらステップ2に進む。
ステップ6:ステップ4が失敗した場合、またはvnet
kに対する時間tが経過した場合、vnet
kを有するすべてのタプルをMoving_Candidate_Listから削除する。
【0084】
以下、上記の自己組織化モデルの重要な特徴を、
図5による自己組織化モデルの高レベル説明図を参照して説明する。
【0085】
以下は、実行されるプロセスにおけるステップである。
○物理ノードにおける潜在的なボトルネック/不均衡を識別する
・物理ノード監視に基づく。仮想ノードとリソース使用との間の関係を考慮しなければならない。監視は、仮想ノードごとに情報を維持しなければならない。
・隣接ノードの情報により、ある特定のリソース使用パターンを見出す
○全ノードトラフィック、各仮想トラフィック、全ストレージ動作、各仮想ストレージ動作の間の関係
・移転に関する決定
○最適化における利得に対する移転のコストを計算する
○利用可能なリソース、仮想ノードおよび仮想トンネル
○移転による中断時間
○プロビジョニングプロセスからの制約を考慮する
・仮想ノードのロケーションを移転する
・物理ノード外にすべての仮想ノードを移転する
○計画的なノードのシャットオフによる(保守、省エネルギー)
○この場合、ノードがすべてのVノードを強制排除する。これは連鎖反応を生じる可能性がある。メカニズムは、シャットダウンしているノードにVNを戻さないことがさらに必要である
・移転後のネットワーク全体の品質を評価する
○ネットワーク全体のパフォーマンスにとって不良なパターンの学習を可能にする → これは、ネットワーク全体の知識により中央で行うことも可能であり、ローカルな知識のみによることも可能である
○移転履歴を追跡し、履歴を評価し、振動を検出し、場合によりその振動を停止する
【0086】
監視についての詳細
○監視対象:仮想ネットワークごとのリソース使用、例えばinおよびoutトラフィック、メモリやハードディスク上の読み書き、CPU使用
○当該リソース使用のリアルタイムで継続的な監視
○モニタに何らかのフィルタリングを適用する:
○例: 非透過的な場合:仮想ノードで動作するアプリケーションの制御・管理トラフィックではない重要部分のみを監視する。
【0087】
集中型アルゴリズム
・中央ロケーションにおいて、監視データを収集し、評価および決定をした後、設定コマンドにより移転メカニズムを開始する。
【0088】
申し出に応じた分散型アルゴリズム
・ノードは、仮想ネットワークのパイプ/通過トラフィックをホスティングする代わりに、その仮想ノードを引き受けることを申し出ることができるかどうか決定する。
・各物理ノードは、検出されたパターンに基づいて、引き受け可能な仮想ネットワークIDのリストを作成する。これは、可能性のある将来の仮想ノード移転に対する利用可能なリソースを含む。
・仮想ノードを受容して自己の通過トラフィックを消去したい物理ノードは、移転される予定の仮想ノードをホスティングしている隣接物理ノードに申し出を送信する。
・申し出を受信した物理ノードは、この申し出を分析し、相手ノードに送りたい仮想ノードのリスト内で一致を見出そうと試みる(このリストは、アルゴリズムを実行するすべての物理ノードによって並行して作成されたものである)。
−申し出を1つ以上受信したノードは、どの仮想ノードを提供するかを決定する。このノードは、候補リスト内になければならない。ある仮想ノードについて複数の申し出を受信した場合の決定もまた、受信した申し出のトラフィックパターンおよびリソース利用可能性に基づく。
−さらに、移転の決定は、プロビジョニング時に与えられる制約によって影響されることがある。あるいは、(物理ノードのシャットダウンにより)全ノードを外部へ移転しなければならないというコマンドの場合、移転は必須である。
【0089】
トラフィックパターンを判定するヒューリスティック
第1段階 − 転送トラフィックに対するヒューリスティック
自己組織化アルゴリズム − トラフィック識別
・分散方式で転送トラフィックを識別する2つの観点がある
・いずれの観点も常に各物理ノードで分析される(
図6を参照)
受容候補(ノードA)
トラフィックを受容し転送する物理ノードの観点で分析
移転候補(ノードB)
ストレージから情報を読み出しそれを他のノードに送信する物理ノードの観点で分析
【0090】
○受容候補あるいは移転候補の分析は、各物理ノードにおける各物理リンクに関連する流入または流出トラフィックを観測して行うことができる。
−例えば、例示したトラフィックフロー(物理ノードAの観点で)は、リンク1の流入トラフィックまたはリンク4上の流出トラフィックとして分析できる。
【0091】
○各リンクの分析は、まず流入トラフィックを参照してから、このトラフィックを読み書きおよび流出トラフィックと関連づける、という順序で行う。
−例えば、例示したトラフィックフロー(リンク1上)は、ノードB上で分析される。というのは、流入トラフィックが低く、読み出しが高く、流出が高いからである。これに対し、ノードA上では、流入トラフィックが高く、流出トラフィックが低い。
【0092】
第1段階 − 転送トラフィックに対するヒューリスティック
識別に対する一般的問題点
図7は以下のことを示している。
B − 共有リンクの公称容量
a − リンクにおいて再編成が必要な時を判定するためのしきい値(チャネル容量の比率で表す)
bw
j − 共有リンク内で使用される全帯域幅(ただし、jはリンクのID)
bw
ij − 共有リンク内の各vnetによって使用される帯域幅(ただし、iはvnetのID)
【0093】
識別すべき問題点:
1.共有リンクは過負荷か?
2.共有リンクの主要なリソースを使用しているトラフィックはあるか?
3.これは転送トラフィックか?(受容候補)
4.この転送トラフィックは主として流入トラフィックか?(受容候補)
5.この仮想ノードはトラフィックを生成しているソース要素か?(移転候補)
【0094】
第1段階 − 転送トラフィックに対するヒューリスティック
識別に対する一般的問題点
図8は以下のことを示している。
B − 共有リンクの公称容量
a − リンクにおいて再編成が必要な時を判定するためのしきい値(チャネル容量の比率で表す)
bw
j − 共有リンク内で使用される全帯域幅(ただし、jはリンクのID)
bw
ij − 共有リンク内の各vnetによって使用される帯域幅(ただし、iはvnetのID)
【0095】
1.共有リンクは過負荷か? → (bw>B×a)
2.共有リンクの主要なリソースを使用しているトラフィックはあるか?
(bw
i>(bw/(vpipe数+vnode数))) → チャネルのリソースが等分配されていないことを意味する
または
(bw
i≧bw−bw
i) → vnet i に関連するトラフィックが共有リンク内の支配的トラフィックであることを意味する
【0096】
第1段階 − 転送トラフィックに対するヒューリスティック
受容候補識別(パイプ)
図9は以下のことを示している。
B − 共有リンクの公称容量
a − リンクにおいて再編成が必要な時を判定するためのしきい値(チャネル容量の比率で表す)
bw
j − 共有リンク内で使用される全帯域幅(ただし、jはリンクのID)
bw
ij − 共有リンク内の各vnetによって使用される帯域幅(ただし、iはvnetのID)
【0097】
3.これは転送トラフィックか?
(readv
i=0)and(writev
i=0)and(in
ij>0)and(S(out
i)>0)
4.この転送トラフィックは主として流入トラフィックか?
(in
ij>bw
ij*s)or(((any k ? L : (in
ij≧out
ik))or(t ? L and t<>j : (in
ij≦S
t=0(out
it)))and(in
ij≧out
ij))、ただし、Lは物理リンクIDのセットである
【0098】
第1段階 − 転送トラフィックに対するヒューリスティック
移転候補識別(ノード)
図10は以下のことを示している。
B − 共有リンクの公称容量
a − リンクにおいて再編成が必要な時を判定するためのしきい値(チャネル容量の比率で表す)
bw
j − 共有リンク内で使用される全帯域幅(ただし、jはリンクのID)
bw
ij − 共有リンク内の各vnetによって使用される帯域幅(ただし、iはvnetのID)
s − out帯域幅がinよりも大きいかどうかを判定するためのしきい値
移転候補識別は、vnodeを移転すべき場所、すなわち、生成されるトラフィックが流れているのがどのリンクであるかを識別する必要はない。移転要求を待って、決定を行う。
【0099】
5.この仮想ノードはトラフィックを生成しているソース要素か?
(readv
i>0)and(out
ij>bw
ij×s)and
(any k ? L : out
ij≧in
ik)、ただし、kは{0...k}に属し、k<>jであり、nは物理隣接ノードの数である
【0100】
第1段階 − アプリケーショントラフィックに対するヒューリスティック
自己組織化アルゴリズム − トラフィック識別
・アプリケーショントラフィックパターンは、同じ2つの観点(受容および移転)を示すという意味で、転送トラフィックに類似する(
図11を参照)
・相違点は、アプリケーショントラフィックを識別するための分析の際に関わるリソースの種類である
・CPUおよびメモリ消費が、このパターンを認識するための主な要素である。その理由は、流入データが他のノードに転送されたりストレージに書き込まれたりしていないからである。
【0101】
アプリケーショントラフィックを認識するためのCPUおよびメモリの分析は、vnetに関連する仮想ノードを有する物理ノード上で、すなわち、移転候補上でのみ意味がある。
【0102】
第1段階 − アプリケーショントラフィックに対するヒューリスティック
移転候補識別(ノード)
図12は以下のことを示している。
B − 共有リンクの公称容量
a − リンクにおいて再編成が必要な時を判定するためのしきい値(チャネル容量の比率で表す)
bw
j − 共有リンク内で使用される全帯域幅(ただし、jはリンクのID)
bw
ij − 共有リンク内の各vnetによって使用される帯域幅(ただし、iはvnetのID)
s − in帯域幅がoutよりも大きいかどうかを判定するためのしきい値
移転候補識別は、vnodeを移転すべき場所、すなわち、生成されるトラフィックが流れているのがどのリンクであるかを識別する必要はない。移転要求を待って、決定を行う。
【0103】
6.仮想ノード内のアプリケーションは流入トラフィックを消費しているか?
(bwin
ij>bw
j×s)and
(current_cpuv
i>total_cpuv
i×f)and
(current_memv
i>total_memv
i×?)and
((sum(in
i)+readv
i)−(sum(out
i)+writev
i)>0)、
ただし、fはCPU過負荷を特徴づけるために用いられる比率であり、?はメモリ過負荷を特徴づけるために用いられる比率である。
【0104】
第2段階
リソース移転要求を送信する
・両方の観点(受容候補および移転候補)のローカルな分析の後、各物理ノードは、その物理ノードで受容されるべきvnet候補があるかどうかを確認する
−これは、物理ノードがvnet候補に関連する仮想パイプを有し、この仮想パイプがそのvnetのリソースを受容すること(によりvnodeとなること)を要求していることを意味する
・受容候補として識別された各vnetについて、このvnetのリソースを移転する要求が、分析されている物理リンクの相手側の物理ノードに送信される。
−この要求内には、移転を要求している物理ノード上の利用可能なリソースの公表もある
【0105】
第2段階
リソース移転要求を受信する
・物理ノードは、リソース移転要求を受信すると、自己の移転候補の内部リストで、この要求に対する一致があるかどうかをチェックする
−複数の要求が(相異なる物理隣接ノードから)到着した場合、物理ノードは、より多くのリソースおよびより低い移転コストを有する隣接ノードを選択する
【0106】
第3段階
評価段階
・移転されるストレージを有するノードは、(ストレージを受容したい隣接ノードのうちの)どのノードにストレージを移転するかを決定する(
図13を参照)
【0107】
第3段階
評価段階 − 判断基準
・隣接ノードで利用可能なストレージは、移転されるストレージと少なくとも同じサイズでなければならない。
stoneig
n≧stov
i
・中断時間は、SLAで規定されるものより大きくてはならない。
t
interr=stov
i/bw
i
・隣接ノードの物理リンクに関する制約を考慮する
−制約はストレージの移転を制限する
−仮想ネットワークの最初の設置時に規定される
【0108】
第3段階
評価段階 − 判断基準
・分析対象のノードにおけるviのトラフィックoutの量は、分析対象のリンク上の現在のbwout
iの比率未満でなければならない(
図14を参照)
−移転後、トラフィックout/inは、分析対象のリンク上のトラフィックout/inとなる。
future_out
i:sum(out
i)−out
ij
future_in
i:sum(in
i)−in
ij
future_out
i+future_in
i≦bw
ij*O(ただし、Oは比率)
【0109】
第4段階
評価の公表
・移転要求を受信し、実行可能性を評価した物理ノードは、一致があったか否かを示す応答を隣接ノードに対して送信する
【0110】
第5段階
移転メカニズム
・リソースを受容するノードの観点
−移転されることになるvnodeに転送されているすべてのパケットがキューイングされる
−物理ノードは、移転されるvnodeの基本情報を要求し、要求されたリソースを割り当てる
−すべての情報が移転される
−仮想リンクコネクションは再確立される
−vnodeのアプリケーションは再起動される
−パケットはキューから取り出され、ローカルに処理される
【0111】
第5段階
移転メカニズム
・リソースを移転するノードの観点
−到着するすべてのパケットがキューイングされる
−アプリケーションはサスペンドされる
−物理ノードは、移転されるvnodeの基本情報を応答する
−すべての情報が移転される
−必要であれば、vpipeが作成される
−仮想リンクコネクションは再確立される
−パケットはキューから取り出され、vnodeの新しいロケーションに送信される
【0112】
第6段階
移転メカニズムの評価
・この段階は、リソース使用だけではなく、物理ノードの自己組織化の履歴も考慮する点で、第1段階とは異なる。
・自己組織化はヒューリスティックに基づいており、最適解ではないため、移転の決定を評価しなければならない
・移転アクションに関連づけて、ある値を定義する
・評価は、物理ノード内のvnetの履歴に基づく。
−同じ物理ノードにおいて同じvnetが移転された回数に応じて、このvnetが再び移転されるのを避けるため、第3段階の評価基準に新しい制約を挿入する
−事例に基づく推論(case-based reasoning, CBR)および強化学習に基づく
【0113】
仮想ノード移転メカニズム
・データ移動/コード移動(これについては範囲外)
・往復移転をしないように、ある時間、移転について追跡する
・流入トラフィックがキューイングされる
・ストレージおよび動作中のVNがサスペンドされる
・ストレージが移転される
・キューが移転され、新しいロケーション上のvnodeで再生される
【0114】
本発明および好ましい実施形態の特徴は以下の通りである。
1)ローカルなストレージ読み書きとトラフィックin/outとの関係を作成する
2)起きていることを(仮想ノード内のアプリケーション/サービスの知識なしに)透過的に検出するための、ローカルな視点およびパターンに基づくアルゴリズム
3)長い中断時間がなく、データ損失のない、ノード移転メカニズム
4)関連するデータのみに対する、より高度な監視(サービスが既知の場合)。
5)トラフィックエンジニアリング/トラフィックおよびストレージリソース使用の負荷分散を可能にする
6)仮想ネットワークを制御する自動的方法(VNETに対するSON(Self-Organizing Network, 自己組織化ネットワーク))
7)ゆるやかな計画およびプロビジョニングアルゴリズムのみを行い、オンデマンドかつリアルタイムで最適化する能力
【0115】
発明の効果
サービス/アプリケーションに対して透過的。
ITシステムの好適な仮想化概念をネットワーキングに適用。
与えられた負荷のダイナミクスを処理可能。
考慮されるリソースの種類により、IPTV配備に容易に適用可能。
仮想ネットワークのトポロジーを保つ(仮想ネットワーク内の再ルーティングが不要)。
【0116】
上記の説明および添付図面の記載に基づいて、当業者は本発明の多くの変形例および他の実施形態に想到し得るであろう。したがって、本発明は、開示した具体的実施形態に限定されるものではなく、変形例および他の実施形態も、添付の特許請求の範囲内に含まれるものと解すべきである。本明細書では特定の用語を用いているが、それらは総称的・説明的意味でのみ用いられており、限定を目的としたものではない。