JP2013501270A - 信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル - Google Patents

信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル Download PDF

Info

Publication number
JP2013501270A
JP2013501270A JP2012523039A JP2012523039A JP2013501270A JP 2013501270 A JP2013501270 A JP 2013501270A JP 2012523039 A JP2012523039 A JP 2012523039A JP 2012523039 A JP2012523039 A JP 2012523039A JP 2013501270 A JP2013501270 A JP 2013501270A
Authority
JP
Japan
Prior art keywords
node
nodes
virtual
resources
redundant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012523039A
Other languages
English (en)
Other versions
JP5744023B2 (ja
Inventor
ワイーレオン ヤオ,
セドリック ウェストファル,
ウラス コザット,
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Docomo Inc filed Critical NTT Docomo Inc
Publication of JP2013501270A publication Critical patent/JP2013501270A/ja
Application granted granted Critical
Publication of JP5744023B2 publication Critical patent/JP5744023B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/101Server selection for load balancing based on network conditions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2097Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Hardware Redundancy (AREA)

Abstract

本明細書においてリソース割振りプロトコルのための方法及び装置が開示される。一実施形態において、装置は、物理リソースをプライマリ及び冗長仮想インフラストラクチャに割り振るためのリソース割振りエンジンを備え、リソース割振りエンジンが仮想インフラストラクチャを割り振るとき、冗長な仮想インフラストラクチャの物理リソースが複数のプライマリ仮想インフラストラクチャにわたって共有される。
【選択図】 図1

Description

優先権
[0001]本特許出願は、2009年7月31日に出願された「信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル(A Resource Allocation Protocol for Virtualized Infrastructure with Reliability Guarantees)」という名称の対応する特許仮出願第61/230,226号の優先権を主張し、参照によって組み込む。
発明の分野
[0002]本発明は、信頼性、仮想化インフラストラクチャ、及びリソース割振りの分野に関し、より詳細には、本発明は、信頼性保証のある仮想インフラストラクチャにおけるリソースの割振りに関する。
発明の背景
[0003]通信ネットワークは、物理から仮想へとシフトしつつある。従来、通信ネットワークは、所与のネットワークをサポートするために物理的なインフラストラクチャを使用して構築されている。インフラストラクチャは、ますます仮想になっている。すなわち、専用の物理ネットワークを構築する代わりに、又は、特定の意図によって設計されていないネットワークを他者と共有する代わりに、共有の物理的な基体の上に構築された、特定のカスタマイズされたプロトコルを備える専用ネットワークの外観をそのユーザに提供するカスタマイズされたネットワークの仮想ネットワークが使用されている。仮想ネットワークは、その(仮想の)オペレータにとってのプライベートネットワークであり、アンダーレイは、様々なオペレータの間で共有される。
[0004]仮想化は、物理リソースが現在使用されている方法を急速に変えている。元々、サーバを切り離し、物理サーバにわたってリソースを共有するために設計されており、仮想化は、サーバをソフトウェアによって完全に定義できるようにすることによって、高速で素早い配置及びマイグレーションを提供する。これは、演算処理を弾性のあるリソースに変え、他の商業的なエンティティの間でも急速に人気が出つつある。仮想化のパラダイムは、ネットワーキングに及んでいる。例えば、仮想化のパラダイムによって、複数の研究グループは、惑星規模のネットワークの異なる仮想スライスにわたって複数のオーバーレイの叩き台を稼働させることができる。事実、仮想化インフラストラクチャがサービスとして提供される場合、仮想化によってもたらされる機敏さ及び柔軟性によって、インフラストラクチャプロバイダとサービスプロバイダとの間の効率の良い分離によって、次世代のインターネットを融通が利くものにすることができることを研究者は確信している。
[0005]こうした仮想化されたアーキテクチャの1つの鍵となる側面は、アンダーレイのリソースを上部の仮想ネットワークに適切に割り当てることである。使用するリソースは、仮想化されるので、物理的なアンダーレイにおける異なるスポットに配置することができ、ネットワークの最高のパフォーマンスのために、物理に対する仮想リソースの慎重な割振りが重要である。適切になされると、各仮想ネットワークはよりよく機能し、物理的なアンダーレイの使用率が増加する(及びしたがって、経費を低減する)。
[0006]インフラストラクチャが急速に仮想化され、共有され、動的に変化している状態で、強い信頼性を物理的なインフラストラクチャに提供することが重要である。その理由は、単一の物理サーバ又はリンクの故障がいくつかの共有される仮想化されたエンティティに影響を及ぼすからである。信頼性は、冗長性を使用することによって提供される。現在では、信頼性は、リソースを複製することによって提供される。この理由は、信頼性が物理層に設けられているからである。したがって、物理コンポーネントの故障は、別の物理的な要素を持ち出すことによって処理される。仮想化インフラストラクチャにおいて、物理コンポーネントや物理的な要素はバックアップすることを必要とする仮想要素であり、物理コンポーネントの故障は、何らかの仮想コンポーネントの消失を意味し、これらの仮想コンポーネントを他の物理コンポーネント上に配置し直さなければならない。
[0007]信頼性を提供することは、多くの場合、計算、ネットワーク、及びストレージの能力を過度に供給し、付加的な堅牢性のために負荷バランシングを使用することにつながる。こうした高可用性システムは、例えば、リンク又はノードの故障をルート変更する間のネットワークフローの再起動、又は、部分的なジョブがノード故障時に再開するなど、大きい不連続性が許容され得る用途に適している。高レベルのフォールトトレランスは、何らかの故障がシステムの現在の状態にかなりの影響を及ぼす用途で必要とされる。例えば、アドミッションコントロール、スケジューリング、負荷バランシング、帯域幅ブローキング(bandwidth broking)、AAA、又はネットワーク状態のスナップショットを維持する他のNOC動作を実行するサーバを有する仮想ネットワークは、全体的な故障を許容することができない。例えばMapReduce、PVMなど、マスター−スレーブ/ワーカーアーキテクチャ(master−slave/worker architecture)では、マスターノードでの故障は、スレーブ/ワーカーにおいてリソースを浪費する。
[0008]ネットワークの仮想化は、ネットワークの運転費及び管理の複雑さを低減する有望な技術であり、研究対象の増加を受けている。インフラストラクチャのプロバイダがより単純な、より安価なコモディティハードウェア(commodity hardware)上に各自のネットワークを仮想化する方向に進むにつれて、信頼性はますます重要な問題にならざるを得ない。
[0009]ネットワークの信頼性を研究するために、「shadow VNet」、すなわち、パラレルの仮想化スライスの使用を考慮に入れているものもある。しかし、こうしたスライスは、バックアップとして使用されるのではなく、監視ツールとして使用され、故障時にはネットワークをデバッグする方法として使用される。
[0010]一方、サーバ仮想化レベルでのノードのフォールトトレランスに目標が定められる研究がいくつかある。少なくとも1つは、ハイパーバイザにおけるフォールトトレランスを導入した。同じ物理ノードにある2枚の仮想スライスがハイパーバイザを介して同期して動作するようにできる。しかし、これは、せいぜいソフトウェアの故障に対する信頼性を提供するだけである。その理由は、スライスが同じノードにあるからである。
[0011]仮想スライスがネットワークにわたって複製され、遷移されるようにするために発達したものもある。異なるタイプの用途(ウェブサーバ、ゲームサーバ、及びベンチマークの用途)のために、様々な複製技術及びマイグレーションプロトコルが提案された。別のシステムは、ある期間にわたる2つの仮想ノードの間の状態の同期を可能にする。したがって、信頼性のためにネットワークにわたって分散される冗長な仮想ノードを有することは実際に可能である。しかし、これらのソリューションは、ネットワークのどこかに冗長ノードが存在するのに、(計算能力における)リソース割振り問題に対処していない。
[0012]基本的なレベルで、ノード及びリンクの信頼性に対処する冗長ノードのトポロジを構成するための方法がある。一部の入力グラフに基づいて、追加のリンク(又は帯域幅予約)は、最小数だけで良いように、最適に導かれる。しかし、これは、大部分はステートレスであるマルチプロセッサシステムのフォールトトレランスを設計することに基づく。この場合、ノードの故障は、最初のトポロジを保護するために、残りのノードの中のマイグレーション又は回転を伴う。これは、マイグレーションが故障によって影響を受けないネットワークの一部分に中断を引き起こす場合がある仮想化ネットワークのシナリオにおいて適切でない場合がある。
[0013]フォールトトレランスは、データセンターにおいても設けられる。冗長性は、過剰な大量のノード及びリンクに関する。故障の回復のために、いくつかのプロトコルが定義されるが、信頼性保証はほとんどない。
[0014]本明細書において、リソース割振りプロトコルのための方法及び装置が開示される。一実施形態において、この装置は、物理リソースをプライマリ及び冗長仮想インフラストラクチャに割り振るためのリソース割振りエンジンを備え、リソース割振りエンジンが仮想インフラストラクチャを割り振るとき、冗長な仮想インフラストラクチャの物理リソースが複数のプライマリ仮想インフラストラクチャにわたって共有される。
[0015]本発明は、以下の詳細な説明から、及び本発明の様々な実施形態の添付の図面から、より完全に理解されるが、こうした図面及び実施形態は、本発明を特定の実施形態に制限するものと見なされないものとし、説明及び理解のためのものである。
フォールトトレラントアーキテクチャの比較を示す図である。 99.999%のノードの信頼性のために必要とされる冗長ノードの数を示す図である。 n:kの複製がサポートできるノードの数を示す図である。 1つのバックアップノード及びそれぞれ割り振られたフェールオーバ帯域幅を備えるVIの一例を示す図である。 冗長性をプールし、仮想ノードを拡散させる一例を、仮想化データセンターにある4つのVIを示すことによって示す図である。 2つのVIのバックアップノードをプールするときのこのトレードオフを示す図である。 管理アーキテクチャの一実施形態を示す図である。 入ってくる各要求にサービスを提供するプロセスの一実施形態のフロー図である。 重複する帯域幅予約の一例を示す図である。 冗長ノードの位置が固定された拡張グラフの一例を示す図である。 コンピュータシステムを示すブロック図である。
本発明の詳細な説明
[0016]以下、n:kの冗長アーキテクチャが開示され、この場合、k個の冗長リソースは、n個のプライマリリソースのうちの任意のものについてのバックアップであり、複数の仮想インフラストラクチャ(VI)にわたってバックアップを共有することができる。例えば、n及びnのコンピューティングノードを有する2つのVIは、k及びkの冗長性がそれぞれr及びrの保証された信頼性となることを要求する。バックアップを共有することは、同じレベルの信頼性を有するk<k+kの冗長性を達成し、フォールトトレランスのために供給されるリソースを低減する。さらに、冗長ノードが、保証された接続性、帯域幅で、ほとんど中断なく、故障したノードを引き継ぐことができるように、ジョイントノード及びリンク冗長性がある。リンクの故障は、同じ機構を介して回復することができる。
[0017]物理リソース(例えば、計算容量、ストレージ、及び帯域幅)を同時にプライマリ及び冗長VIに静的に割り振る方法も本明細書に開示される。この方法は、既存の冗長ノードを使用して、冗長仮想リンクの帯域幅をできるだけ多く重複させることによって冗長性に割り振られるリソースを低減することを試みる。
[0018]さらに、物理リソースの使用を最低限に抑える、又は大幅に低減し、対応することができる仮想リソースの数を最大にすることを試みる方法で信頼性保証を提供する、物理的な基体上に仮想インフラストラクチャのリソースを割り振る機構が開示される。
[0019]信頼性を物理リソースの割振りに組み込み、冗長ノードをいくつかの仮想ネットワーク中で共有することは、信頼性のためのリソースの量を大幅に低減する。
[0020]以下の説明では、本発明のより完全な説明を提供するために、多数の詳細が記載される。しかし、これらの具体的な詳細なしに本発明を実践できることは、当業者であれば明らかである。他の例において、周知の構造及びデバイスは、本発明を不明瞭にすることを回避するために、詳細にではなく、ブロック図の形式で示される。
[0021]以下の詳細な説明の一部は、コンピュータメモリ内のデータビット上の動作のアルゴリズム及び記号表現の形で示される。これらのアルゴリズムの説明及び表現は、他の当業者に最も効果的にその作業の要旨を伝えるために、データ処理技術に熟練した人々によって使用される手段である。アルゴリズムは、ここでは、また一般的に、所望の結果をもたらす自己矛盾のない一連のステップであると考えられる。こうしたステップは、物理量の物理的操作を必要とするものである。必須ではないが、通常、これらの量は、格納され、移動され、結合され、比較され、そうでなければ操作され得る電気又は磁気の信号の形をとる。主に一般的な使用の理由で、これらの信号をビット、値、要素、シンボル、文字、項、数字等と呼ぶことが時として便利であることがわかっている。
[0022]しかし、これらの及び類似の用語はすべて、適切な物理量に関連付けられたものであり、こうした物理量に適用される便宜上のラベルに過ぎないことを理解されたい。特に明記しない限り、以下の説明からわかるように、説明の全体にわたって、「処理する」、「計算する」、「算出する」、「決定する」、又は「表示する」等の用語を使用している議論は、コンピュータシステムのレジスタ及びメモリ内の物理(電子)量として表されるデータを操作し、コンピュータシステムメモリ若しくはレジスタ、又は他のこうした情報ストレージ、送信又は表示デバイス内で物理量として同じように表される他のデータに変換する、コンピュータシステム又は類似の電子コンピューティング装置の動作及びプロセスを指すことを理解されたい。
[0023]本発明は、本明細書において動作を実行するための装置にも関する。この装置は、要求される目的のために特別に構成することができ、又は、コンピュータに格納されたコンピュータプログラムによって選択的に稼働される、又は再構成される汎用コンピュータを備えることができる。こうしたコンピュータプログラムは、例えば、それだけには限定されないが、コンピュータシステムバスにそれぞれ結合される、フロッピーディスク、光ディスク、CD―ROM、及び光磁気ディスクを含む任意のタイプのディスク、読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気又は光学カード、又は電子命令の格納に適した任意のタイプの媒体など、コンピュータ可読記憶媒体に格納することができる。
[0024]本明細書において提示されるアルゴリズム及び表示は、任意の特定のコンピュータ又は他の装置に本質的に関連がない。様々な汎用システムは、本明細書における教示によるプログラムによって使用することができ、又は、必要な方法ステップを実行するためにより専門の装置を構成することは便利であることがわかり得る。様々なこれらのシステムに必要な構造が下記の説明から明らかになる。さらに、本発明は、任意の特定のプログラミング言語を参照して記載されていない。本明細書において記載されている本発明の教示を実施するために、様々なプログラミング言語を使用することができることを理解されたい。
[0025]機械可読媒体は、マシン(例えば、コンピュータ)によって可読の形式で情報を格納又は送信するための任意の機構を含む。例えば、機械可読媒体は、読み取り専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリ記憶デバイスなどを含む。
概要
[0026]一実施形態において、リソースは、仮想インフラストラクチャ要求の信頼性要件を考慮する割振り方法を使用して割り振られる。物理リソースを仮想リソース要求に割り振るための方法が存在するのに対して、本明細書に記載される割振り方法は、まず、明確な信頼性保証を提供する。
[0027]一実施形態において、割振り機構は、1組のリソース(例えば、サーバリソース)又はその一部、これらのリソースを接続しているリンクについての要求、及び信頼性要件、例えば99.999%の動作可能時間を受信する。一実施形態において、要求は、(G=(V,E),r)として表され、この場合、Vはノード、Eはノードを接続しているリンク、rは信頼性である。次いで割振り機構は、要求された信頼性を提供するために要求に追加する冗長ノードの数を計算する。この要求を別のものと結合することができ、そうすることからの利点がある場合、割振り機構は2つの要求を結合する。一実施形態において、割振り機構は、割振り要求を結合することが有益かどうかを決定する。したがって、一実施形態において、割振り機構は、要求を集約し、冗長性のために取っておかれる物理リソースの量を低減し、場合によっては最低限に抑えることを試みる方法で物理的な冗長リソースを割り振る。
[0028]一実施形態において、要求に追加する冗長ノードの量、及びエッジの間に挿入するリンクを決定した後、割振り機構は、新しい要求G’=(V’,E’)を計算し、従来のマルチフローコモディティ問題(traditional multi−flow commodity problem)を使用して、この要求を割り振る。マルチフローコモディティ問題は、公知技術である。
[ネットワークモデル]
[0029]本明細書のために、コンピューティング及びネットワークのリソースを仮想化し、分離し、いくつかのエンティティにわたって共有することができる物理的なネットワークインフラストラクチャが使用される。物理的なインフラストラクチャからのリソースについての要求が、計算ノードの容量及び好ましい場所、ノード間の帯域幅、及び要求されたノード(及びそれらのリンク)のサブセットにおけるあるレベルの信頼性に関して定義される。入ってくる各リソース要求は、冗長なインフラストラクチャと共に静的に割り振られる。
[0030]一実施形態において、物理ネットワークは、無向グラフG=(N,E)としてモデル化され、この場合、Nは物理ノードの組であり、Eはリンクの組である。各ノードu∈Nは、Mの使用可能な計算容量を有する。各無向リンク(u,v)∈E、u,v∈Nは、Huvの使用可能な帯域幅容量を有する。マルチフローコモディティ問題を単純化するために、物理ノードにおける故障は、確率pで、独立しており一様であると見なされる。
[0031]リソース要求は、追加の特性を有する無向グラフG=(N,E)としてモデル化される。Nは、1組の計算ノードであり、Eは1組のエッジである。μは、ノードごとの計算能力要件、x∈Nであり、ノードの間の帯域幅要件はηxy、(x,y)∈E及びx,y∈Nである。さらに、Φ[x]⊆Nは、仮想ノードxをマップすることができる追加の制約である。すなわち、仮想ノードを物理ノード上に何らかの特定のマッピングを課すために、xを物理ノードのサブセットにしかマップできないように、制約Φ[x]として指定される。このことは物理的位置の選好(本文で述べるように)又は物理ノードタイプ(CPUノード、ストレージノード、ルータノード)に起因し得ることに留意されたい。これは、任意の物理的位置の選好、例えば、入口及び出口の仮想ルータ、他のノードとの近さなどを表す。後述するように、この組は、すでに設けられている別のVIから冗長ノードを再利用する/共有するためにも利用される。各要求も1組のクリティカル仮想ノードC⊆N及びその関連のリンク{(c,x)|(c,x)∈E,c∈C,x∈N}から成り、信頼性rで保護される。本明細書のために、冗長ノードの組は、Nと示される。
[0032]整合性のために、i,jを使用して任意のタイプのノードを表し、x,y,z∈Nを使用して仮想ノードを表し、u,v,w∈Nを使用して物理ノードを表し、c,d∈Cを使用してクリティカルノードを表し、a,b∈Nを使用して冗長ノードを表す。
[冗長性のための仮想アーキテクチャ]
[0033]一実施形態において、冗長性のためのアーキテクチャは、以下の特性を有する。
n:kの冗長性。最高で
Figure 2013501270
の使用率をもたらす1:kレベルの冗長性を有することに対して、n個のプライマリリソースの任意のものについて、k個の冗長ノードをバックアップすることができるとき、より良い粒度及び使用率を達成することができる。
ジョイントノード及びリンク冗長性。ノードが故障すると、冗長ノードが保証された接続性、帯域幅で、ほとんど中断なく引き継ぐように、冗長ノード及びリンクが一緒に供給される。
交わらない位置。同じ物理ノードにおいてホストすることができる仮想又は冗長ノードは1つ以下である。
[0034]このように、|N|+k個から、物理ノードの故障の数がk個を上回る確率が1−rを下回らないように、k個の冗長仮想ノードが供給される。言い換えれば、信頼性は、
Figure 2013501270
として得られ、この場合、
Figure 2013501270
である。右辺の和は、公知技術である、規則化された不完全なベータ関数I(・,・)に相当する。
[0035]一実施形態において、故障時にk個の冗長ノードすべてに対して、十分な量の計算能力及び帯域幅が使用可能である。したがって、リンク及びノードの故障について、回復手順は、k個の冗長ノードのうちの1つ又は複数を持ち出し、確保された冗長リソースを使用するように動作する。一実施形態において、これによってさらに中断が生じる場合があるため、仮想ノードのマイグレーション又はスワッピングは回復を援助することができない。さらに、冗長ノードも故障する場合があるため、冗長ノードは、式(1)において述べられる信頼性を達成するために、任意のノードc∈Cの代わりとなることができなければいけない。上述したように、帯域幅予約においてパス分割が使用され、リンクについての別の層の保護及びグレースフルデグラデーションが提供される。
[0036]冗長性のための帯域幅予約は、Nのノードから発せられる1組の重み付けされた無向仮想リンクLとしてモデル化される。
L⊆N×(N∪N)=(N×N)∪(N×N)(2)
すなわち、Lは、Nの頂点を有する、それ自体の間の冗長ノードからのリンクを含む、2つの2部グラフの結合である。これらのリンクは、仮想ネットワークの埋め込みのためにGに追加される。より形式的に、Lは、下の2つの定理によって定義される。
定理1。a∈N及びx∈Nが与えられる。その場合、
Figure 2013501270
である。これは、クリティカルリンク(c,x)をLにおけるリンク(a,x)によってバックアップする必要があり、したがって、故障のためにcがaに遷移された場合、xは、リソースの新しい位置にまだ接続されていることを示す。
証明:
Figure 2013501270
及び仮想リンク(c,x)∈Eが存在し、c∈Cであると仮定する。
その時、アーキテクチャは、n:kの冗長性を有していない。その理由は、cが故障した場合、aは、xに供給される帯域幅を有していないからである。同様に、
Figure 2013501270
であり、(a,x)∈Lである場合、cが故障した場合、(a,x)のために供給される帯域幅は決して使用されない。
推論1。
Figure 2013501270
であり、この場合、a∈N及びc,d∈Cである。
証明:これは、xの領域をCに限定することによる定理1からの直接的な結果である。
[0037]上記は、Lが2部グラフLから成ることを明示する。
={(a,x)|∀a∈N,∀c∈C,∃(c,x)∈E,x∈N}(3)
定理2。a,b<∈Nが与えられた場合、
Figure 2013501270
∀c,d∈Cである。これは、クリティカルノードの間にリンクがある場合、各冗長ノード間のリンクが存在しなければならないことを示す。
証明:Lにおいてa及びbが接続されておらず、しかし、リンク(c,d)∈Eが存在すると仮定する。その時、c及びdが故障し、a及びbに遷移される場合、帯域幅保証はない。逆に、(a,b)∈Lであり、
Figure 2013501270
である場合、(a,b)のために供給される帯域幅は決して使用されない。
[0038]これによって、任意の2つのクリティカルノードの間にリンクがある限り、Nの冗長ノード間に完全グラフを含むLが得られる。冗長ノード間の完全グラフをLによって示す。
={(a,b)|a≠b,∀a,b∈N}(4)
[0039]L=⊆(N×N)∪(N×N)であるため、冗長リンクの最小の組は、
Figure 2013501270
によって与えられる。この結果は、他の提案されたアーキテクチャより多くのリンクを必要とする。しかし、後者の結果は、故障後の回復されたグラフがGを含むという仮定に基づく。このことは、故障によって影響を受けないノードをGの最初のトポロジの回復のために遷移する必要がないことを確実にしない。この追加の制約は、Lを構成する際、考慮に入れられる。それにもかかわらず、この制約が必要ない場合、Lを他のソリューションと置き換えることができる。
[0040]マルチコモディティフロー(MCF)によって帯域幅が供給されている下記の場合、冗長フローを可能な限り重複させることによって、帯域幅が低減され、又は最低限に抑えられる。これらの重複は、MCFモデルへの制約とし捕捉される。
[冗長性の共有]
[0041]以下、n:kのフォールトトレラントアーキテクチャの利点、及び冗長ノードの共有が使用率をどれだけ増加させ得るかの表示が開示される。説明を簡単にするために、本明細書ではC=Nと仮定する。
[0042]図1Aの小さい3ノードの仮想ネットワークについて考慮する。図1Bに示されるように、1ノードの故障を許容する簡単で端的な方法は、1:kの許容値を使用することであり、すなわちあらゆる仮想マシンをいったん複製し、複製及びプライマリノードへの論理リンクを作成することである。kノードの故障のフォールトトレランスは、k層の複製によって達成することができる。各物理ノードの故障の確率がpであると仮定すると、n個のノード及びe個のリンクのネットワークについて、ノードの信頼性rを達成するために必要な冗長性の層の数は、
Figure 2013501270
となる。残念なことに、簡単な複製は、システムにあまりに多くの冗長ノード及び論理リンクを追加し、それぞれkn及びkn+3keとなる。
[0043]この方法と、冗長ノードが、すなわちn:kである、図1Cにおけるの3つのノードのいずれかについてのバックアップである他の手法とを比較する。ノード信頼性rは、より細かい粒度、及びより少ない数の冗長ノード及びリンクによって提供することができ、(1)によって得られる。冗長ノードの数及びリンク(最大)は、k及び
Figure 2013501270
である。図2は、99.999%のノードの信頼性に必要とされる冗長ノードの数について、2つの手法の間の比較を示す。
[0044]予想されるように、冗長ノードの数は、同じレベルの信頼性について、n:kの複製より1:kの複製でかなり速く増える。実際に、図3でわかるように、n:kの手法では、十分に拡縮される。1つの興味深い傾向は、kの値が小さい場合、nが超線形であるということである。例えば、故障の確率p=0.01の曲線について、95ノードのVIは、99.999%の信頼性のためにk=7を必要とし、190ノードのVIは、k=10を必要とする。一見したところ、2つの95ノードVIを割り振るときに、7つずつの冗長ノードを供給するよりも、k=10の冗長ノードを共有することに価値がある。
[0045]大きいkでは、nが直線的に増えることに留意されたい。共有はもはや、冗長ノードの数を減らさない。n対kの線形の挙動は、結合も有害でないことを意味することにも留意されたい。冗長リンクの数が少なくともnkであると想定すれば、冗長ノードを共有するときに、より多くの帯域幅が確保される。一方で、小さいkでは、より多くの冗長リンクについて、冗長ノードの数の減少がトレードオフされる。
[0046]冗長ノードを共有するのに価値がある方法が2つある。
1)kにおける離散型のジャンプ(discrete jump)の使用。例えば、12ノードのVIは、99.999%の信頼性のために4つの冗長ノードを使用する。同じ4つのノードは、同じレベルの信頼性のために、別の13個のプライマリノードをサポートすることができる。
2)異なるレベルの信頼性を必要とするVI間での非対称の共有。例えば、21ノードのVIは、99.999%の信頼性のために、4つの冗長ノードを使用する。4つの冗長ノードのうちの1つを、99.9%の信頼性のために、別の5ノードのVIと共有することができる。(m個の他のVIと共有するとき)より大きいVIの信頼性は、下記のように計算することができる。
Figure 2013501270
[0047]第1の方法と比較すると、共有後、kは不変のままであるため、共有のこれら2つの方法はより良好である。このことは、VIが順次割り振られる場合、稼働しているVIが再構成を必要としないことを確実にする。
[想データセンターに対するリソース割振りの管理及び適用]
[0048]一実施形態では、最初の管理アーキテクチャは、仮想化データセンターにおいて、仮想エンティティ(例えば、ホストされたサービス)の信頼性保証及びリソースを自律的に管理する。このアーキテクチャにおいて、追加の仮想バックアップノード及びその関連のリンクは、任意のレベルの信頼性保証のために適切に調整される。アイドルの冗長ノードを有するにもかかわらず、より多くの物理リソースを入ってくる新しいサービスが利用できるように、データセンター全体への冗長性のプールは集合的に管理される。さらに、一実施形態において、いくつかのコンポーネントの故障がデータセンター全体を低下させないように、アーキテクチャは、故障に対して障害許容力があるように設計される。
[0049]一実施形態において、冗長機構は、仮想化データセンターにおいて、顧客当たりのレベルで、フォールトトレランスをサポートする。以下は、主要な要求に使用されるリソースの管理の概要、及び仮想化データセンターに適用するための追加の冗長性を提供する。しかし、これらの技術を他の仮想化された環境に適用することができること、及びこうしたことは当業者にとって明らかであることに留意されたい。
仮想化データセンターのためのリソース要求モデルの一例
[0050]リソース要求モデルは、例えばアマゾンEC2クラウドサービス及び他のクラウドサービスプロバイダなど、その物理リソースをリースする仮想化データセンターのものなど、リソースを要求するためのものである。独立サーバインスタンスをリースするより、一実施形態において、リソース要求のモデルは、
1)最低限のCPU容量の要件を有するワーカー及びマスターノード、並びに
2)これらのノード間の帯域幅保証
を含む全仮想インフラストラクチャ(VI)に対応する。
[0051]一実施形態において、ワーカーノードは基本的にデータプロセッサ/ナンバークランチャであり、マスターノードはワーカーノードの機能を調整するサーバである。複数のサーバを有するVIは、複数のマスターノードを有する。さらに、マスターノードが故障のクリティカルポイントであるため、各VI要求がマスターノードに関する信頼性保証を要求する。これは、帯域幅保証を加重されたノード間のエッジとする加重グラフとしてモデル化することができ、マスターノードはサブグラフを形成する。このモデルは、様々なニーズを表すのに十分包括的である。
[0052]データセンターのオペレータは、すべての現在のリース及び入ってくる新しいVI要求を管理することを必要とする。
信頼性のための仮想バックアップノード
[0053]一実施形態において、クリティカルなマスターノードに関する信頼性を保証するために、管理アーキテクチャは、空きのあるCPU及び帯域幅の容量を有する追加のバックアップノードを確保する。すべてのクリティカルなマスターノードの状態を複製し、周知の最適化された同期技術を使用してすべてのバックアップノードに同期することができる。ノードの故障の場合、どのバックアップノードも、故障したノードを置き換えるために「ホットスワップ」の用意ができている。
[0054]図4は、1つのバックアップノード及びそれぞれ割り振られたフェールオーバ帯域幅を備える4ノードのVIの一例を示す。図4を参照すると、クリティカルノードA及びBに関して、バックアップノード(黒)及び信頼性のために確保されている帯域幅(点線)が示されている。リンク上の数字は、確保されている帯域幅を表す。このようにして、バックアップノードeは、クリティカルノードが故障した場合、クリティカルノードに取って代わることができる。
[0055]これは、任意のk個のバックアップノードがn個のクリティカルノードをカバーするように、容易に拡張することができる。例えば、pによって物理ノードの故障の確率を定義する。pが物理ノードごとに独立同分布であると推定する。この場合、n個のクリティカルノードに関する信頼性rは、以下のように計算される。
Figure 2013501270
n+k個のノードのうちの1つ以下が同じ物理ノード上にホストされると仮定される。下記の表Iは、2%の物理ノードの故障率の場合に様々な信頼性保証の下でバックアップノードの数によってサポートすることができるクリティカルノードの最大数を示す。
Figure 2013501270
バックアップノードの数は、バックアップノードの増加が準直線であるため、表Iに示される範囲について十分拡縮する。したがって、冗長性を低減することができるように、いくつかのVIにわたってバックアップノードを一緒にプールすることは有益であり、このことは、より良いリソースの使用率につながる。
分散された割振り、冗長マッピング、及び同期
[0056]一実施形態において、効果的に信頼性を管理するために、同じVIのすべての仮想ノード、及びそれぞれのバックアップノードは、同じ物理ノード上にホストされない、すなわち、可能な限りデータセンターにわたって分散される。図5は、冗長性をプールし、仮想ノードを分散させる一例を、仮想化データセンターにある4つのVIを示すことによって示す。仮想ノードは、同じ物理ノードにスタックされない。クリティカルノードは、その状態をバックアップノードに同期させる。一実施形態において、仮想ノードでのほぼシームレスな動作のために、同期機構がハイパーバイザ層に設けられる。信頼度のレベルに応じて、あるクリティカルノードは、図5のVI―4の場合と同様に、1を超える仮想バックアップノードを必要とする、又はVI―3のようにまったく必要としない場合がある。時として、逆もあり得る。仮想バックアップノード1は、複数のVIからの複数のノードをカバーし、CPUリソースを保護する。このことは、本明細書において、冗長性のプールと呼び、後述する。
仮想データセンターの冗長性のプール
[0057]冗長ノードを一緒にプールし、それらをいくつかのVIにわたって共有することによって、バックアップノードの総量及びしたがってアイドルのCPU容量を低減するために、表Iのnとkの間の準線形の関係が利用される。例示のために、99.999%の信頼性保証のある5つのクリティカルノードを有するVIは、4つのバックアップノードが確保されていることを必要とする。同じレベルの信頼性のために、同じ4つのノードが最高11個のクリティカルノードをサポートすることができるため、最高6つのクリティカルノードを有する別のVIは、追加のバックアップを確保することなく、同じ4つのノードを使用することができる。
[0058]しかし、冗長性のプールは、必ずしも「無料」ではない。無計画なプールは、バックアップノードに関係するフェールオーバ帯域幅を確保する際、かなりのコストをもたらす。n個のクリティカルノード及びk個のバックアップノードを含む新しいVI要求に追加される追加のリンクの数は、少なくとも
Figure 2013501270
であり、第1の項は、バックアップノードとクリティカルノードとの間に確保されるすべての帯域幅を表し、後者は、バックアップノードを相互接続している帯域幅を表す。したがって、冗長性をプールしながらバックアップノードの数を増加させることは、フェールオーバ帯域幅も増加させるため、逆効果である。
[0059]図6は、2つのVIのバックアップノードをプールするときのこのトレードオフを示す。これらの領域の境界は、表Iのすべてのnについて、式x+y≦n及びx,y>nである。見やすいように、これらの線は、境界点がどの線上にもないように、定数によってシフトされる。領域601は、VI−1及びVI−2のバックアップノードをプールすることが完全に価値があるケースを示す。例えば、(5,6)では、5ノードのVI及び6ノードのVIがいずれもそれぞれ4つのバックアップノードを必要とする。両方のVIに同じ4つのバックアップノードを割り当てることによって、99.999%の同じ信頼性を保証する。これは、領域602における場合では、両方のVIに対するバックアップノードの数を増やすことなしに行うことができず、例えば、(3,2)では、各VIは、個々に3つのバックアップノードのみを必要とする。しかし、2つを結合すると、5つのノードが追加のバックアップノードを必要とすることになるため、より多くのフェールオーバ帯域幅を必要とする。領域603は、1つのVIだけが必要より多くのバックアップノードを必要とするケースを表す。
[0060]異なる信頼性保証をサポートしているバックアップノードは、一緒にプールすることもでき、類似のトレードオフ領域を有する。それはすべて、表Iに示されるバックアップノードの残りの「サポート容量」に依存する。
仮想化データセンターのための障害許容力のあるアーキテクチャ
[0061]図7は、仮想化データセンターの物理リソースの上にある管理アーキテクチャの一実施形態を示しており、リソース要求を管理する集中化したコントローラとして作用する。各コンポーネントは、個々に機能しているエンティティとなるように設計されており、故障に対して障害許容力を確実にするための方策を有する。
[0062]物理リソースアカウンティングコンポーネント(physical resource accounting component)706は、入ってくる新しい要求に対するリソースの割振り時に必要な、仮想化データセンターにおいて割り振られていない残りのリソースを追跡する。価格付けポリシー(pricing policy)705は、動的な価格付けを容易にするために、物理リソースアカウンティングコンポーネント706からのその入力を引き出す。リソース割振りエンジン700及びリソース解放モジュール709のみが、物理リソースアカウンティングコンポーネント706を更新することができる。一実施形態において、更新は、要求及びリーブイベントに応答して起きる。
[0063]一実施形態において、物理リソースアカウンティングコンポーネント706のための障害許容力を確実にする方法が2つある。(i)周知の障害許容力のあるデータベースが使用される、又は(ii)データの複数のコピーは、データに対する書き込み及び読み取りをそれぞれマルチキャスト及びエニーキャストとして、別々に格納される。一実施形態において、データは、(PhyNode,rCPU)及び(PhyLink,rBW)の形の鍵−値の組として格納され、この場合、PhyNode及びPhyLinkは、物理ノード及びリンクをそれぞれ一意に識別し、rCPU及びrBWは、使用可能なCPU及び帯域幅リソースの量をそれぞれ提供する。
[0064]上述したように、時として、VIにわたってバックアップノードをプールするとき、CPU及び帯域幅を保護する際のトレードオフが存在する。一実施形態において、信頼性ポリシー705は、入ってくる新しいVIのバックアップノードをデータセンターにおける別の既存のVIと共にプールするべきかどうかを指定する決定ルールのリストを備える。図では、これらのルールは、トレードオフ領域の境界を表す(一例として図6を参照)。故障に対する障害許容力を確実にするための戦略は、物理リソースアカウンティングコンポーネント706と同様である。
[0065]リソース割振りエンジン700は、入ってくる要求に対するリソースをマップし、確保する役割を果たす。図8は、入ってくる各要求にサービスを提供するプロセスの一実施形態のフロー図である。プロセスは、ハードウェア(例えば、論理回路、回路など)、ソフトウェア(汎用コンピュータシステム又は専用マシン上で稼働されるものなど)、又は両方の組み合わせを備えることができるリソース割振りエンジンにおいて処理論理回路によって実行される。図8を参照すると、プロセスは、処理論理回路が入ってくる要求を受信することによって開始する(処理ブロック801)。入ってくる要求を受信することに応答して、処理論理回路は、入ってくる要求に対応するために必要なバックアップノードの数を計算する(処理ブロック802)。その後、処理論理回路は、バックアップノードを既存のVIと共にプールするかどうか検査する(処理ブロック803)。処理論理回路がバックアップノードを既存のVIと共にプールすると決定する場合、処理論理回路は現在のバックアップに新しい制約及び帯域幅を追加し(処理ブロック804)、プロセスは処理ブロック807に移行する。そうでない場合、処理論理回路は、新しいバックアップノード及び帯域幅を作り(処理ブロック805)、これらの新しいリソースを、リソース割振りのための最初のリソース要求に追加し、プロセスは、処理ブロック807に移行する。処理ブロック807で、処理論理回路は、外部ツールを介して線形最適化を解決する。こうしたツールの例には、それだけには限定されないが、COIN CBC、iLog CPLEX、及びMOSEKなどがある。
[0066]次に、処理論理回路は、外部ツールの出力を介した使用可能なリソースに基づいてソリューションが実行可能かどうかを決定する(処理ブロック808)。より詳細には、ソルバー(solver)が稼働され、ソルバーが所与の制約を有するソリューションを探し出すことができない場合、ソリューションは実行可能ではない。ソルバーがソリューションを戻す場合、ソリューションは実行可能である。そうである場合、処理論理回路は、他のコンポーネントを更新し(処理ブロック809)、プロセスが終了する。そうでない場合、処理論理回路は、リソース要求を拒否し(処理ブロック810)、プロセスが終了する。
[0067]一実施形態において、仮想ノードから物理ノード、及び仮想リンクから物理パスへのマッピングの問題は、仮想ノード間の帯域幅予約が物理ノード間のフローであり、仮想ノードと物理ノードとの間のフローの存在がマッピングを示すというマルチコモディティフロー問題として、当分野で周知の方法で定式化される。これは、以下の目的に関する線形最適化問題である。
Figure 2013501270
式中、ρ及びf uvは変数、ρはブール変数であり、仮想ノードxが物理ノードuにマップされる場合、真である。f uvは、物理リンク(u,v)上に「流れている」仮想リンク1の帯域幅の量であり、負ではない。f uvについての従来のフロー保護制約が適用され、従来のフロー保護制約(flow conservation constraints)は、当業者によって十分理解されている。さらに、制約
Figure 2013501270
は、仮想ノードと物理ノードと間の1対1のマッピングを確実にし、仮想ノードは、上述したように分散される。CPU及び帯域幅に関して新しいVIによって消費される全リソースは、残っている物理リソースの量に供され、すなわち、
Figure 2013501270
であり、μは、仮想ノードxによって必要とされるCPU容量である。入力αμx及びβ uvはそれぞれ、リソースがリースされるとき、データセンターのオペレータに対して、CPU及び帯域幅当たりの純コスト(マイナス収入)を表す。これらは、後述する価格付けポリシーから導出される。
[0068]バックアップノード及びフェールオーバ帯域幅の追加は、信頼性ポリシー、すなわちバックアップノードがプールされるかどうかに依存する。そうでない場合、問題は、新しいバックアップノード及び帯域幅を含んでP1を解くほど単純である。そうでなければ、マッピング変数ρμxへの追加の制約は、新しいVIの仮想ノードと現在の仮想ノードとの間の重複がないことを確実にするために、P1に追加され、すなわち、すべての占有されたuについて、ρux=0である。
[0069]P1に対する実行可能なソリューションがある場合、新しい要求にのみ対応することができる。次いで、細い両方向矢印を介してリソース割振りエンジン700にリンクされているコンポーネント、すなわちVIマップ707、ホットスワップマップ708、及びアカウンティングコンポーネント706がP1からのソリューションによって更新される。そうでなければ、単に不十分な物理リソースのために、更新が拒絶される。
[0070]このメイン制御コンポーネントが障害許容力を有するようになる簡単な戦略は、複数のインスタンスにわたって同じ要求を実行することである。より効果的な方法は、いくつかの要求を処理しているが、低いrCPUu及びrBWuvの値を使用して競合状態を防止するインスタンスを複数有することである。しかし、過度の拒否のリスクがある。
価格付けポリシー
[0071]価格付けポリシーは、P1の入力αux及びβ uvに影響するリソースの価格を指定する。ここで使用する価格付け戦略に固定する必要はなく、むしろ、価格付けモジュール705が設けられ、できる限り一般的である。特に、動的な価格付けがサポートされ、この価格付けは、需要を抑えることができ、リソースのより効率的な使用率をもたらすことができる。ある期間にわたる物理リソースアカウンティングモジュール706からの入力及びリソース割振りエンジン705からのフィードバックにより、価格付けモジュール705は、信頼性保証、物理リソースのタイプ(リンク、ノード)、受容率、及びリース期間の面において仮想CPU及び帯域幅の価格を動的に設定することができる。
仮想インフラストラクチャマップ及びホットスワップマップ
[0072]VIマップ707は、認められるすべてのVI、及び仮想エンティティのその物理リソースに対するマッピング、すなわち、その物理サーバ及び確保されたCPUの量に対する仮想ノードのマップ、及び物理パス及びそのパスに沿って確保された帯域幅の量に対する仮想リンクのマップを記録する。さらに、VIが使用するバックアップノードのプールも格納される。
[0073]ホットスワップマップ708は、バックアップノードのすべての現在のプール及びそれぞれの残りのサポート容量を記録する。この情報は、VIマップと共に、入ってくる新しいVIがバックアップノードの既存のプールを使用することができるか、又は新しいVIのための別の新しいプールを作ることができるかどうかをリソース割振りエンジン700が決定するのを助ける。一実施形態において、新しいVIのためのマッピングのソリューションがいったん取得されると、リソース割振りエンジン700はこれらの2つのマップに書き込む。
[0074]一実施形態において、これら2つのコンポーネントに対する障害許容力のある戦略は、物理リソースアカウンティングモジュール706のものと同じである。その理由は、これらのコンポーネントがデータベースのようなコンポーネントだからである。
リソースの解放
[0075]VIによって使用されるリソースは、リースの終了時に解放されなければならない。競合状態を防止するために、リソース割振りエンジン700による同期ロックが解除されるまで、リソース解放モジュール709は、一時的にこれらのリソースを保持するガベージコレクタとして働く。このコンポーネントが故障する場合、2つのマップに関する簡単なチェック、及び物理リソースのアカウンティング検証がこのコンポーネントを回復する。
同期及び回復機構
[0076]これら2つの機構は、分散された方法で機能しているあらゆる物理ノードにおけるローカルなサービスである。一実施形態において、ノード間の同期は、物理ノードのハイパーバイザで管理され、物理ノード間の監視は、ハートビート、同期信号、又は当業者に周知である他の分散監視方法を介することができる。故障が検出されると、回復手順が開始し、コントロールアーキテクチャで進行中の動作すべての代わりをする。ホットスワップノードは、均一のランダム化によって分散された方法で、各VIの仮想の隣接者によって選択され、結合は任意に中断される。
[0077]したがって、データセンターにおいてホストされる仮想インフラストラクチャにおける信頼性保証を自律的に管理することができるフォールトトレラントアーキテクチャが開示される。ここで、信頼性は、仮想バックアップノードのプール及び確保されたフェールオーバ帯域幅によって保証される。アイドルのCPU容量を保護するために、バックアップがプールされ、帯域幅に対するトレードオフが定義される。バックアップを含めて、すべての仮想エンティティの物理リソースは、線形最適化フレームワークを介して割り振られる。データセンターのリソース使用率を追跡し、考慮に入れる他のコンポーネントも定義される。個々のコンポーネントは、個々に動作するように設計されており、障害に対する許容力を確実にするための方策を有する。
[リソースの割振り:混合整数計画問題(MIXED INTEGER PROGRAMMING PROBLEM)]
[0078]VIリソース割振り問題は、マルチコモディティフロー問題(MCF)に類似する混合整数計画問題として定式化することができる。ノード間の帯域幅の要求は、フローとしてモデル化される。物理ノードと仮想ノードとの間のマッピングは、余分な「マッピング」エッジを追加し、当分野で周知の方法で、フロー問題を解決する際に、仮想ノード当たりこうした1つのエッジだけが使用されることを確実にすることによって構築される。
[0079]一実施形態において、MCFは、VIノード及びリンクを物理的なインフラストラクチャにマップするために使用される。しかし、MCFは、(i)バックアップリンクLが可能な限り重複することができ、(ii)バックアップノードのマッピングは、好適な1組の物理ノードΦに限定されるように制約する。アルゴリズム1は、Φを取得し、VI、及びそのバックアップノード、並びにリンクを物理的なインフラストラクチャにマップして、信頼性rを保証するための手順を列挙する。
[0080]図9は、帯域幅予約がどのように重複し得るかの一例を示す。図9を参照すると、左は、2つの冗長ノード(黒)を有する2ノード仮想トポロジである。ノードcは、クリティカルノードである。したがって、ノードxを冗長ノードにリンクしている1単位の帯域幅が確保されていなければならず、それは結果としてリンクDE上の2単位の予約となり得る。しかし、冗長ノードは常にノードcの1つのインスタンスしか引き継ぐことができないので、過度の予約が生じる。本明細書において使用されるMCFの制約形式において、任意のトポロジ上のこれらの重複を最大にする試みがある。
[0081]上記のように、既存のVIのバックアップノードを、入ってくる新しいVIと共有しながら、確実に不変にすることは価値がある。リソース割振り手順が以下に提供される。行6〜14は、そのバックアップノードを共有する適切なVIを貪欲に探す。これらのVI候補を、「サポート容量」に関して配列することができる。例えば、k=3のバックアップノードは、r=99.99%のために、8〜21の仮想ノードの間をサポートすることができる。8ノードのVIは、20ノードのVIより多くのサポート容量を有しており、したがって好ましい。この配列は、すでに共有されているVIを考慮に入れなければならない。行11は、そのバックアップノードが好適な物理的位置Φに限定されるVIを埋め込むことを試みる。共有が可能でない場合、バックアップノードは行15のようにNにおけるどこからでも選択される。
Figure 2013501270
[0082]MCF問題は、以下の通りに定義される。マッピングのための拡張エッジの組をRによって示し、
={(u,x),(x,u)|∀x∈N∪N,u∈Φ[x]} (7)
となり、この場合、各エッジは無限の帯域幅を有する。Φ[x]⊆Nは、仮想ノードxをホストすることができる物理ノードの組である。xがバックアップノードであり、別のVIのバックアップと共有されることになっている場合、Φ[x]はアルゴリズム1で定義されたΦに等しい。図10は、この拡張構造の一例を示す。ノードa及びbは、別のVIの冗長ノードである。これらのノードは、物理ノードのC及びDにあり、ノードx及びyを有する新しいVIの冗長ノードであり得る。同じVIのノードが同じ物理ノードにホストされない場合があるので、Φ[a]={C},Φ[b]={D}、及びΦ[x]=Φ[y]={A,B,E}である。
[0083]3つの組は、以下の通りに定義される。
=N∪N∪N(8)
=E∪R(9)
=C∪{x|x∈N,∃(c,x)∈E,∀c∈C}(10)
この場合、Nは、すべての仮想、物理、及び冗長ノードの組であり、Eは物理及びマッピングエッジの組であり、Cは、冗長ノードがLにおいてリンクされるノードの組である。
[0084]一実施形態において、仮想ノードとバックアップノードとの間の帯域幅予約は、フローとしてモデル化される。これらのフローによって使用される帯域幅の量は、MCF問題に対する変数である。一実施形態において、4種類のフローがある。
2つの仮想ノードの間のフロー。x,y∈N。リンク(i,j)∈Eにおいて使用する帯域幅の量は、fxy[ij]によって示される。
:冗長ノードa∈Nと仮想ノードy∈Cとの間のフロー。冗長ノードaが何らかの仮想ノードxを引き継ぐ場合を除いて、これらのフローのいずれかにおける実際の帯域幅は、ゼロである。こうした回復が生じるときに、リンク(i,j)∈Eにおいて使用される帯域幅の量は、
Figure 2013501270
によって示される。これによって、冗長なフロー間の重複のモデル化が可能になる。
冗長ノードNと仮想ノードx∈Cとの間のリンクにおける集計フロー。これは、リンク(i,j)上での重複後確保された帯域幅の実際の量を反映する。これは、f [ij]で示される。
:2つの冗長ノードa,b∈N間のフロー。リンク(i,j)∈Eにおいて使用される帯域幅の量は、
Figure 2013501270
によって示される。
Figure 2013501270
のフローとは異なり、これらのフローは、重複しない。これは、Lリンクに対する追加の信頼性を提供しない、仮想ノードxを介してノードaとbとをリンクするパス(a,x,b)を有することの取るに足らないソリューションを回避するためである。
[0085]一実施形態において、物理ノードと、仮想又は冗長ノードとの間の双方向のマッピングは、二値変数pij,(i,j)∈Rによってモデル化される。リンク(i、j)及び(j,i)の間を流れているフローの総量が正である場合、ρij=1、そうでない場合、0である。したがって、MCFに対するソリューションがρxu=1を提供する場合、仮想ノードxは、物理ノードu上にホストされる。
[0086]MCFの目的関数は、
Figure 2013501270
として定義され、この場合、α及びβuvはそれぞれ、ノード及びリンクの重みである。これによって、割り振られる計算及び帯域幅の加重和が最低限に抑えられる。負荷バランシングを達成するために、重みはそれぞれ、
Figure 2013501270
及び
Figure 2013501270
と設定することができる。MCFに対する制約は、以下の通りである。
マッピング制約:
Figure 2013501270
Figure 2013501270
ρij≦Hji,∀(i,j)∈R(14)
ρij=ρji,∀(i,j)∈R(15)
制約(12)及び(13)は、各仮想ノードが単一の物理ノードのみにマップされ、1つの物理ノードに1つ以下の仮想ノードしかマップできないようにすることを確実にする。制約(14)及び(15)は、実行可能なフローがリンク(i,j)上にマップされるとき、二値変数ρijを強制的に1にし、そうでなければ0にする。
(共有を条件とした)計算容量の制約:
iuμ≦M,∀u∈N,∀i∈N∪N (16)
これは、マップされた仮想及び冗長ノードが物理ノードu上の使用可能な容量Mを超えないことを確実にする。冗長ノード、a∈Nについて、供給される最大能力は、
Figure 2013501270
である。さらに、この容量が共有の冗長ノードのものを超える場合、バランスが供給されるだけで良い。
2つの仮想ノード間の帯域幅予約のためのフロー保護制約:
Figure 2013501270
Figure 2013501270
Figure 2013501270
[0087]制約(17)及び(18)は、仮想ノードxから仮想ノードyに発せられる仮想リンク(x,y)の総帯域幅ηxyを定義する。制約(19)は、フローが中間の物理ノードで保護されることを確実にする。すなわち、ノードuから流れている総帯域幅がそのノード内に流れ込む総帯域幅に等しい。
リンク上の帯域幅を確保するためのフロー保護及び重複制約:
Figure 2013501270
Figure 2013501270
Figure 2013501270
Figure 2013501270
冗長ノードaがクリティカルノードxの代わりをする仮想ノードyへの各フローについて、制約(20)〜(22)は、(17)〜(18)における仮想フローのものと似たフロー保護モデルを定義する。制約(23)は、すべてのaにわたって合計される代わりに、重複し得る冗長なフローを処理する。1つの冗長ノードaのみが、いつでもクリティカルノードcの代わりとなり得る。次いで、フロー
Figure 2013501270
及び
Figure 2013501270
は、重複する可能性があり、すなわち、リンク(i,j)について、
Figure 2013501270
である。しかし、重複は、フロー
Figure 2013501270
及び
Figure 2013501270
では起こらない可能性があり、この場合、冗長ノードaは、クリティカルノードcの代わりとなり、別のノードbは、クリティカルノードdの代わりとなる。これは、最大k個の置き換えまで生じる。制約(23)は、これらの関係を捕捉する。
(共有及びCを条件とした)Lリンク上の帯域幅予約のためのフロー保護制約:
Figure 2013501270
Figure 2013501270
Figure 2013501270
2つの冗長ノードaとbとの間のフロー保護制約は、(17)〜(19)における仮想フローのものと変わらない。供給される帯域幅は、Cのノードを相互接続する仮想リンクの最大数である。しかし、これらの制約は、2つのケースにおいてのみ必要である。
1)
Figure 2013501270
定理2から、クリティカルノードを相互接続している仮想リンクがある場合、Lについての帯域幅を供給するだけで良い。
2)共有。帯域幅は、共有されることになっているVIにおいて、すでに供給されている。帯域幅の供給が十分でない場合、これらの制約は、バランスを供給するために存在する。
物理リンクにおけるリンク容量制約:
Figure 2013501270
制約(27)は、両方向の物理リンク(u、v)上のすべてのフローを考慮に入れる。これは、物理的に残っている帯域幅Huv未満でなければならない。
拡張マッピングリンクにおけるリンク容量制約:
Figure 2013501270
厳密に言えば、帯域幅Hijが無限であるため、マッピングリンクにおける制約はないはずである。しかし、この制約は、マッピング制約(14)及び(15)と連動して、いずれかの方向のそのリンクにおける任意の正のフローがある場合、マッピング二値変数ρijを強制的に1にし、そうでない場合0にする。
領域制約:
xy[ij]≧0,∀i,j∈N,∀(x,y)∈E(29)
Figure 2013501270
[ij]≧0,∀i,j∈N,∀x∈C(32)
ρij∈{0,l},∀(i,j)∈R(33)
これらは、この変更されたMCF問題のすべての変数における領域制約であり、すべてのフローは、非ゼロでなければならず、マッピング変数はバイナリである。
[0088]インフラストラクチャが急速に仮想化されるにつれて、信頼性保証を仮想化インフラストラクチャに提供する必要性が増加している。上記には、仮想化層自体における信頼性保証について記載されている。冗長ノードは、ネットワークにわたって分散される仮想ノードとすることができる。このために、供給された帯域幅を完備したn:kの冗長アーキテクチャ、及び物理ネットワークにわたって仮想化されたネットワークを割り振る方法が提案される。冗長ノード及びリンクによって使用されるリソースを保護するために、これらの冗長ノードをVIにわたって共有することができ、供給の間、それらの帯域幅が重複する。
コンピュータシステムの一例
[0089]図11は、本明細書において記載されている1つ又は複数の動作を実行することができるコンピュータシステム例のブロック図である。図11を参照すると、コンピュータシステム1100は、典型的なクライアント又はサーバコンピュータシステムを備えることができる。コンピュータシステム1100は、情報を伝えるための通信機構又はバス1111、及びバス1111に結合されて情報を処理するためのプロセッサ1112を備える。プロセッサ1112は、それだけには限定されないが、ペンティアム(Pentium)(商標)、パワーPC(PowerPC)(商標)、アルファ(Alpha)(商標)など、マイクロプロセッサを含む。
[0090]システム1100は、ランダムアクセスメモリ(RAM)、又はバス1111に結合されてプロセッサ1112によって実行される命令及び情報を格納するための他の動的な記憶デバイス1104(メインメモリと呼ばれる)をさらに備える。プロセッサ1112による命令の実行中に一時的数値変数又は他の中間情報を格納するために、メインメモリ1104を使用することもできる。
[0091]コンピュータシステム1100は、読み取り専用メモリ(ROM)及び/又はバス1111に結合されてプロセッサ1112のための静的情報及び命令を格納するための他の静的記憶デバイス1106、並びに磁気ディスク又は光ディスクなどのデータ記憶デバイス1107及びその対応するディスクドライブも備える。データ記憶デバイス1107は、バス1111に結合されて情報及び命令を格納するためのものである。
[0092]コンピュータシステム1100は、バス1111に結合されて、コンピュータユーザに対して情報を表示するために、例えばブラウン管(CRT)又は液晶式ディスプレイ(LCD)などのディスプレイデバイス1121にさらに結合することができる。英数字及び他のキーを含む英数字入力デバイス1122も、バス1111に結合されてプロセッサ1112に情報及びコマンドの選択を伝えるようにすることができる。追加のユーザ入力デバイスは、バス1111に結合されて、プロセッサ1112に指示情報及びコマンドの選択を伝える、及びディスプレイ1121上のカーソルの動きを制御するための、例えばマウス、トラックボール、トラックパッド、スタイラス、又はカーソル方向キーなどのカーソル制御1123である。
[0093]バス1111に結合することができる他のデバイスは、ハードコピーデバイス1124であり、このデバイスを使用して、例えば紙、フィルム、又は類似のタイプの媒体に情報を表すことができる。バス1111に結合することができる他のデバイスは、電話又はハンドヘルドパームデバイスに対して通信を行うための有線/無線通信機能1125である。
[0094]システム1100及び付随するハードウェアのコンポーネントの任意のもの又は全部を本発明において使うことができることに留意されたい。しかし、コンピュータシステムの他の構成がデバイスの一部又は全部を含むことができることを理解されよう。
[0095]本発明の多くの変更及び修正は、間違いなく前述の説明を読んだ後に当業者にとって明らかになるが、例として示され、記載されるいかなる特定の実施形態も決して制限と見なされないことを理解されたい。したがって、様々な実施形態の詳細への言及は、本発明にとって重要であると見なされる特徴だけを詳述する請求項の範囲を制限することを目的としない。

Claims (3)

  1. 物理リソースをプライマリ及び冗長仮想インフラストラクチャに割り振るためのリソース割振りエンジンを備え、前記リソース割振りエンジンが仮想インフラストラクチャを割り振るとき、冗長な仮想インフラストラクチャの物理リソースが複数のプライマリ仮想インフラストラクチャにわたって共有される、ネットワークで使用するための装置。
  2. 物理リソースをプライマリ及び冗長仮想インフラストラクチャに割り振るためのリソース割振り方法であって、
    1組のリソース、前記リソースを接続しているリンク、及び要求された信頼性要件についての第1の要求を受信するステップと、
    前記要求された信頼性を提供するための冗長ノードの数を計算するステップであって、nがプライマリリソースの数、kが冗長仮想リソースの数である場合、n個のプライマリリソースについてk個の冗長仮想リソースを供給して、n:kの複製を達成するステップを含む、ステップと
    を含むリソース割振り方法。
  3. システムによって実行されると、前記システムが物理リソースをプライマリ及び冗長仮想インフラストラクチャに割り振る方法を実行する命令を格納する1つ又は複数の記録可能な記憶媒体を有する製品であって、前記方法が、
    1組のリソース、前記リソースを接続しているリンク、及び要求された信頼性要件についての第1の要求を受信するステップと、
    前記要求された信頼性を提供するための冗長ノードの数を計算するステップであって、n個のプライマリリソースについてk個の冗長仮想リソースを供給して、nがプライマリリソースの数、kが冗長仮想リソースの数である場合、n:kの複製を達成するステップを含む、ステップと
    を含む製品。
JP2012523039A 2009-07-31 2010-07-29 信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル Active JP5744023B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US23022609P 2009-07-31 2009-07-31
US61/230,226 2009-07-31
US12/831,119 2010-07-06
US12/831,119 US8990397B2 (en) 2009-07-31 2010-07-06 Resource allocation protocol for a virtualized infrastructure with reliability guarantees
PCT/US2010/043702 WO2011014650A1 (en) 2009-07-31 2010-07-29 A resource allocation protocol for a virtualized infrastructure with reliability guarantees

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014168666A Division JP5868466B2 (ja) 2009-07-31 2014-08-21 信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル

Publications (2)

Publication Number Publication Date
JP2013501270A true JP2013501270A (ja) 2013-01-10
JP5744023B2 JP5744023B2 (ja) 2015-07-01

Family

ID=43528044

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2012523039A Active JP5744023B2 (ja) 2009-07-31 2010-07-29 信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル
JP2014168666A Active JP5868466B2 (ja) 2009-07-31 2014-08-21 信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2014168666A Active JP5868466B2 (ja) 2009-07-31 2014-08-21 信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル

Country Status (3)

Country Link
US (2) US8990397B2 (ja)
JP (2) JP5744023B2 (ja)
WO (1) WO2011014650A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016512001A (ja) * 2013-06-24 2016-04-21 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. ソフトウェア・デファインド・フレキシブル・グリッド光伝達網における、クラウドサービスの組込みためのコンピュート後ネットワーク負荷分散手順
JP2020120269A (ja) * 2019-01-23 2020-08-06 Kddi株式会社 連携型仮想ネットワーク割当方法および装置
JP2021019338A (ja) * 2019-07-24 2021-02-15 Kddi株式会社 連携型仮想ネットワーク割当方法および装置

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8339994B2 (en) * 2009-08-27 2012-12-25 Brocade Communications Systems, Inc. Defining an optimal topology for a group of logical switches
US8429449B2 (en) * 2010-03-01 2013-04-23 International Business Machines Corporation Optimized placement of virtual machines in a network environment
US8627322B2 (en) * 2010-10-29 2014-01-07 Google Inc. System and method of active risk management to reduce job de-scheduling probability in computer clusters
US9674111B2 (en) * 2010-10-29 2017-06-06 Nokia Solutions And Networks Gmbh & Co. Kg Control mechanism for reliability and availability setting in virtual networks
US8533724B1 (en) 2010-12-20 2013-09-10 Amazon Technologies, Inc. Virtual resource provisioning by assigning colors to virtual resources in multi-tenant resource pool
US8582462B2 (en) * 2011-01-14 2013-11-12 International Business Machines Corporation Network communications over shared links in a virtualized environment
US8621057B2 (en) * 2011-03-07 2013-12-31 International Business Machines Corporation Establishing relationships among elements in a computing system
US8868766B1 (en) * 2011-03-29 2014-10-21 Amazon Technologies, Inc. Optimizing communication among collections of computing resources
US8706869B2 (en) * 2011-06-14 2014-04-22 International Business Machines Corporation Distributed cloud placement software
US8842520B2 (en) * 2011-09-12 2014-09-23 Honeywell International Inc. Apparatus and method for identifying optimal node placement to form redundant paths around critical nodes and critical links in a multi-hop network
US8948053B2 (en) 2011-09-12 2015-02-03 Honeywell International Inc. Apparatus and method for detecting critical nodes and critical links in a multi-hop network
US8775438B1 (en) 2011-09-22 2014-07-08 Amazon Technologies, Inc. Inferring resource allocation decisions from descriptive information
US8694995B2 (en) 2011-12-14 2014-04-08 International Business Machines Corporation Application initiated negotiations for resources meeting a performance parameter in a virtualized computing environment
US8863141B2 (en) 2011-12-14 2014-10-14 International Business Machines Corporation Estimating migration costs for migrating logical partitions within a virtualized computing environment based on a migration cost history
KR20130089779A (ko) * 2011-12-30 2013-08-13 경희대학교 산학협력단 클라우드 컴퓨팅 기반의 혼합형 콘텐츠 제공 방법 및 그 장치
US9106576B2 (en) * 2012-01-13 2015-08-11 Nec Laboratories America, Inc. Policy-aware based method for deployment of enterprise virtual tenant networks
US8972983B2 (en) * 2012-04-26 2015-03-03 International Business Machines Corporation Efficient execution of jobs in a shared pool of resources
US10963420B2 (en) * 2012-08-10 2021-03-30 Adobe Inc. Systems and methods for providing hot spare nodes
US9292352B2 (en) 2012-08-10 2016-03-22 Adobe Systems Incorporated Systems and methods for cloud management
US20140089510A1 (en) * 2012-09-27 2014-03-27 Fang Hao Joint allocation of cloud and network resources in a distributed cloud system
US9552372B2 (en) 2012-10-08 2017-01-24 International Business Machines Corporation Mapping infrastructure layout between non-corresponding datasets
EP2939131A4 (en) * 2012-12-27 2016-08-17 Intel Corp RESERVATION AND EXECUTION RECORDING OF SYSTEM OWN COMPUTER DEVICES
CN103051550B (zh) * 2013-01-11 2015-06-17 浙江工商大学 基于业务合并的虚拟网络映射方法
US9438670B2 (en) * 2013-03-13 2016-09-06 International Business Machines Corporation Data replication for a virtual networking system
US9208032B1 (en) * 2013-05-15 2015-12-08 Amazon Technologies, Inc. Managing contingency capacity of pooled resources in multiple availability zones
US9473573B2 (en) * 2013-08-07 2016-10-18 Nec Corporation Network followed by compute load balancing procedure for embedding cloud services in software-defined flexible-grid optical transport networks
WO2015052722A1 (en) * 2013-10-09 2015-04-16 Hewlett-Packard Development Company, L.P. Information technology resource planning
EP3090591A4 (en) 2013-12-31 2017-11-29 Bandwidthx Inc. Systems and methods for managing offload from one radio access network to another
US9602427B2 (en) * 2014-02-06 2017-03-21 Nec Corporation Cloud service embedding with shared protection in software-defined flexible-grid optical transport networks
US9495211B1 (en) 2014-03-04 2016-11-15 Google Inc. Allocating computing resources based on user intent
WO2016003708A1 (en) * 2014-07-01 2016-01-07 Sas Institute Inc. Systems and methods for fault tolerant communications
US20160182320A1 (en) * 2014-12-23 2016-06-23 Intel Corporation Techniques to generate a graph model for cloud infrastructure elements
US20160204916A1 (en) * 2015-01-08 2016-07-14 Ngoc-Dung DAO System and method for joint optimization of source selection and traffic engineering
WO2016165142A1 (zh) * 2015-04-17 2016-10-20 华为技术有限公司 一种虚拟网络的保护方法和装置
WO2017059064A1 (en) 2015-09-29 2017-04-06 Bandwidthx Inc. Authentication and authorization of mobile devices for usage of access points in an alternative network
US10305974B2 (en) 2015-12-23 2019-05-28 Intel Corporation Ranking system
US10223147B2 (en) 2016-08-19 2019-03-05 International Business Machines Corporation Resource allocation in high availability (HA) systems
US10552272B2 (en) * 2016-12-14 2020-02-04 Nutanix, Inc. Maintaining high availability during N-node failover
WO2018134911A1 (en) * 2017-01-18 2018-07-26 Nec Corporation Resource allocation system, method, and program
JP6399127B2 (ja) * 2017-03-08 2018-10-03 日本電気株式会社 システム管理装置、システム管理方法、プログラム、情報処理システム
CN109525407B (zh) 2017-09-18 2020-05-26 中国科学院声学研究所 一种同层无交集全覆盖嵌套容器生成方法及可读存储介质
US11330087B2 (en) 2017-11-16 2022-05-10 Intel Corporation Distributed software-defined industrial systems
US10963375B1 (en) * 2018-03-23 2021-03-30 Amazon Technologies, Inc. Managing maintenance operations for a distributed system
WO2019227401A1 (zh) * 2018-05-31 2019-12-05 西门子股份公司 冗余热备控制***、方法、控制设备及计算机可读存储介质
US10656990B2 (en) 2018-06-13 2020-05-19 Nutanix, Inc. Dynamically adjusting reserve portion and allocation portions of disaster recovery site in a virtual computing system
US11290375B2 (en) 2019-01-18 2022-03-29 Rise Research Institutes of Sweden AB Dynamic deployment of network applications having performance and reliability guarantees in large computing networks
CN111756655B (zh) * 2020-06-05 2023-09-15 深圳供电局有限公司 一种基于资源预留的虚拟网资源迁移方法
CN111756654B (zh) * 2020-06-05 2023-08-22 深圳供电局有限公司 一种基于可靠性的大规模虚拟网资源分配方法
US20210397599A1 (en) * 2020-06-18 2021-12-23 Netflix, Inc. Techniques for generating a consistent view of an eventually consistent database
CN112636961B (zh) * 2020-12-15 2022-11-08 国网河南省电力公司信息通信公司 网络切片下基于可靠性和分流策略的虚拟网资源分配方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001306349A (ja) * 2000-04-27 2001-11-02 Mitsubishi Electric Corp バックアップ装置及びバックアップ方法
JP2003330740A (ja) * 2002-05-15 2003-11-21 Hitachi Ltd 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
JP2007207219A (ja) * 2006-01-06 2007-08-16 Hitachi Ltd 計算機システムの管理方法、管理サーバ、計算機システム及びプログラム
JP2008052407A (ja) * 2006-08-23 2008-03-06 Mitsubishi Electric Corp クラスタシステム
JP2008097276A (ja) * 2006-10-11 2008-04-24 Hitachi Ltd 障害回復方法、計算機システム及び管理サーバ
US20080189468A1 (en) * 2007-02-02 2008-08-07 Vmware, Inc. High Availability Virtual Machine Cluster
JP2008217285A (ja) * 2007-03-02 2008-09-18 Hitachi Ltd 情報処理システムの運用管理装置および運用管理方法
JP2008305070A (ja) * 2007-06-06 2008-12-18 Hitachi Communication Technologies Ltd 情報処理装置および情報処理装置システム
US20090138752A1 (en) * 2007-11-26 2009-05-28 Stratus Technologies Bermuda Ltd. Systems and methods of high availability cluster environment failover protection
US20090300605A1 (en) * 2004-10-29 2009-12-03 Hewlett-Packard Development Company, L.P. Virtual computing infrastructure
US20100293409A1 (en) * 2007-12-26 2010-11-18 Nec Corporation Redundant configuration management system and method

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5271014A (en) * 1992-05-04 1993-12-14 International Business Machines Corporation Method and apparatus for a fault-tolerant mesh with spare nodes
US5787271A (en) * 1996-06-26 1998-07-28 Mci Corporation Spare capacity allocation tool
AU2001281240A1 (en) * 2000-08-10 2002-02-25 University Of Pittsburgh Apparatus and method for spare capacity allocation
US7032119B2 (en) * 2000-09-27 2006-04-18 Amphus, Inc. Dynamic power and workload management for multi-server system
US7075892B2 (en) * 2000-11-03 2006-07-11 Telecommunications Research Laboratories Topological design of survivable mesh-based transport networks
US6639976B1 (en) * 2001-01-09 2003-10-28 Bellsouth Intellectual Property Corporation Method for parity analysis and remedy calculation
US7280526B2 (en) * 2001-01-18 2007-10-09 Lucent Technologies Inc. Fast and scalable approximation methods for finding minimum cost flows with shared recovery strategies, and system using same
US7263100B2 (en) * 2002-06-10 2007-08-28 Lucent Technologies Inc. Capacity allocation for fast path restoration
US7397761B2 (en) * 2002-06-10 2008-07-08 Lucent Technologies Inc. Routing restorable service-level-guaranteed connections using maximum 2-route flows
CA2434115A1 (en) * 2002-12-05 2004-06-05 Telecommunications Research Laboratories Method for design of networks based on p-cycles
GB2418800B (en) * 2003-04-02 2006-06-21 Cisco Tech Inc Path optimization in communications and data networks
JP4293011B2 (ja) * 2004-02-20 2009-07-08 株式会社日立製作所 障害時のサーバ決定方法
US8949395B2 (en) * 2004-06-01 2015-02-03 Inmage Systems, Inc. Systems and methods of event driven recovery management
US7475274B2 (en) * 2004-11-17 2009-01-06 Raytheon Company Fault tolerance and recovery in a high-performance computing (HPC) system
US7898957B2 (en) * 2005-10-03 2011-03-01 The Hong Kong University Of Science And Technology Non-blocking destination-based routing networks
GB2435980A (en) * 2006-03-09 2007-09-12 Agilent Technologies Inc Optimizing routing of demands in a network
US7878594B2 (en) * 2006-03-10 2011-02-01 Ntn Corporation Seat reclining device
US7778183B2 (en) * 2006-03-31 2010-08-17 International Business Machines Corporation Data replica selector
WO2008041302A1 (en) * 2006-09-29 2008-04-10 Fujitsu Limited Server disposing program and server disposing method
US8219848B2 (en) * 2007-04-10 2012-07-10 International Business Machines Corporation Mechanism for recovery from site failure in a stream processing system
US20080263388A1 (en) * 2007-04-18 2008-10-23 James Robert Allen Method and apparatus for managing customer topologies
US8341623B2 (en) * 2007-05-22 2012-12-25 International Business Machines Corporation Integrated placement planning for heterogenous storage area network data centers
US20090185496A1 (en) * 2008-01-22 2009-07-23 Robert Duncan Doverspike Network performance and reliability evaluation taking into account attributes other than only the capacities of edges
US8160063B2 (en) * 2008-06-09 2012-04-17 Microsoft Corporation Data center interconnect and traffic engineering
US8996683B2 (en) * 2008-06-09 2015-03-31 Microsoft Technology Licensing, Llc Data center without structural bottlenecks
US8103842B2 (en) * 2008-11-17 2012-01-24 Hitachi, Ltd Data backup system and method for virtual infrastructure
US7877627B1 (en) * 2008-12-18 2011-01-25 Supercon, L.L.C. Multiple redundant computer system combining fault diagnostics and majority voting with dissimilar redundancy technology
US8321362B2 (en) * 2009-12-22 2012-11-27 Intel Corporation Methods and apparatus to dynamically optimize platforms
US8473557B2 (en) * 2010-08-24 2013-06-25 At&T Intellectual Property I, L.P. Methods and apparatus to migrate virtual machines between distributive computing networks across a wide area network
US8627322B2 (en) * 2010-10-29 2014-01-07 Google Inc. System and method of active risk management to reduce job de-scheduling probability in computer clusters
JP5620792B2 (ja) * 2010-11-08 2014-11-05 株式会社デジタル・メディア総合研究所 分散アーカイブシステム並びにデータアーカイブ装置及びデータ復元装置
JP6079226B2 (ja) * 2012-12-27 2017-02-15 富士通株式会社 情報処理装置、サーバ管理方法およびサーバ管理プログラム
JP6126891B2 (ja) * 2013-03-29 2017-05-10 富士通株式会社 検出方法、検出プログラム、および検出装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001306349A (ja) * 2000-04-27 2001-11-02 Mitsubishi Electric Corp バックアップ装置及びバックアップ方法
JP2003330740A (ja) * 2002-05-15 2003-11-21 Hitachi Ltd 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
US20090300605A1 (en) * 2004-10-29 2009-12-03 Hewlett-Packard Development Company, L.P. Virtual computing infrastructure
JP2007207219A (ja) * 2006-01-06 2007-08-16 Hitachi Ltd 計算機システムの管理方法、管理サーバ、計算機システム及びプログラム
JP2008052407A (ja) * 2006-08-23 2008-03-06 Mitsubishi Electric Corp クラスタシステム
JP2008097276A (ja) * 2006-10-11 2008-04-24 Hitachi Ltd 障害回復方法、計算機システム及び管理サーバ
US20080189468A1 (en) * 2007-02-02 2008-08-07 Vmware, Inc. High Availability Virtual Machine Cluster
JP2008217285A (ja) * 2007-03-02 2008-09-18 Hitachi Ltd 情報処理システムの運用管理装置および運用管理方法
JP2008305070A (ja) * 2007-06-06 2008-12-18 Hitachi Communication Technologies Ltd 情報処理装置および情報処理装置システム
US20090138752A1 (en) * 2007-11-26 2009-05-28 Stratus Technologies Bermuda Ltd. Systems and methods of high availability cluster environment failover protection
US20100293409A1 (en) * 2007-12-26 2010-11-18 Nec Corporation Redundant configuration management system and method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016512001A (ja) * 2013-06-24 2016-04-21 エヌイーシー ラボラトリーズ アメリカ インクNEC Laboratories America, Inc. ソフトウェア・デファインド・フレキシブル・グリッド光伝達網における、クラウドサービスの組込みためのコンピュート後ネットワーク負荷分散手順
JP2020120269A (ja) * 2019-01-23 2020-08-06 Kddi株式会社 連携型仮想ネットワーク割当方法および装置
JP7063829B2 (ja) 2019-01-23 2022-05-09 Kddi株式会社 連携型仮想ネットワーク割当方法および装置
JP2021019338A (ja) * 2019-07-24 2021-02-15 Kddi株式会社 連携型仮想ネットワーク割当方法および装置

Also Published As

Publication number Publication date
JP5744023B2 (ja) 2015-07-01
WO2011014650A1 (en) 2011-02-03
US10057339B2 (en) 2018-08-21
JP2014238885A (ja) 2014-12-18
JP5868466B2 (ja) 2016-02-24
US8990397B2 (en) 2015-03-24
US20140365664A1 (en) 2014-12-11
US20110029675A1 (en) 2011-02-03

Similar Documents

Publication Publication Date Title
JP5868466B2 (ja) 信頼性保証のある仮想化インフラストラクチャのためのリソース割振りプロトコル
Yeow et al. Designing and embedding reliable virtual infrastructures
Koslovski et al. Reliability support in virtual infrastructures
Moreno-Vozmediano et al. Orchestrating the deployment of high availability services on multi-zone and multi-cloud scenarios
Endo et al. High availability in clouds: systematic review and research challenges
Yu et al. Survivable virtual infrastructure mapping in a federated computing and networking system under single regional failures
US8769132B2 (en) Flexible failover policies in high availability computing systems
EP2532145B1 (en) Load and backup assignment balancing in high availability systems
US9483258B1 (en) Multi-site provisioning of resources to software offerings using infrastructure slices
Xu et al. Enhancing survivability in virtualized data centers: A service-aware approach
CN102346460A (zh) 一种基于事务的服务控制***及其控制方法
US11263037B2 (en) Virtual machine deployment
US11210150B1 (en) Cloud infrastructure backup system
CN113872997B (zh) 基于容器集群服务的容器组pod重建方法及相关设备
Houidi et al. Exact multi-objective virtual network embedding in cloud environments
Gonzalez et al. FT-VMP: fault-Tolerant virtual machine placement in cloud data centers
Lakhani et al. Fault administration by load balancing in distributed SDN controller: A review
Gómez et al. Fault-tolerant virtual cluster experiments on federated sites using BonFIRE
Mathews et al. Service resilience framework for enhanced end-to-end service quality
Fan et al. Guaranteeing availability for network function virtualization with geographic redundancy deployment
Martinez et al. Robust and fault-tolerant fog design and dimensioning for reliable operation
Engelmann et al. Concepts for high availability in scientific high-end computing
Alameddine et al. Protection plan design for cloud tenants with bandwidth guarantees
Rangarajan et al. Managing the availability of VNFs with the availability management framework
Yang et al. Resilient virtual communication networks using multi-commodity flow based local optimal mapping

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150127

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150305

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150331

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150428

R150 Certificate of patent or registration of utility model

Ref document number: 5744023

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250