(57)【要約】本発明は、インフラストラクチャネットワーク（２００）を形成する物理ノードのセットの中から選択される物理ノード（２０２，２０４，２０６，２０８）にインストールされた複数の仮想ノードからなる少なくとも１つの仮想ネットワーク（２１４，２１６，２１８）の性能の自動化された管理方法に関する。前記方法は、各仮想ネットワーク（２１４）に対して以下の各段階：前記仮想ネットワーク（２１４）の少なくとも１つの仮想ノード（２０２２，２０４４，２０６２，２０８６）のロード状態に関するいわゆるロードデータを決定する段階；前記データ及び少なくとも１つの所定の規準に基づいて前記仮想ネットワーク（２１４）の少なくとも１つのオーバーロードされた仮想ノード（２０８６）を決定する段階；及び、前記オーバーロードされた仮想ノード（２１４）を再定義する段階であって、前記オーバーロードされたノードが前記再定義の後に追加のリソースから利益を得る前記段階；を含む。
2012533129.tif 000002
【特許請求の範囲】
【請求項１】
インフラストラクチャネットワーク（２００）を形成する物理ノードのセットから選択される物理ノード（２０２，２０４，２０６，２０８）にインストールされた複数の仮想ノードを含む少なくとも１つの仮想ネットワーク（２１４，２１６，２１８）の性能の自動化された管理方法であって、
ここで、前記物理ノードはシグナリングネットワーク（２１２）を通して相互接続されているものとする、前記方法であり、
各仮想ネットワーク（２１４）に対して、以下の各段階：
−前記仮想ネットワーク（２１４）の少なくとも１つの仮想ノード（２０２２，２０４４，２０６２，２０８６）のロード状態に関する、ロードデータと呼ばれるデータを決定する段階；
−前記データ及び少なくとも１つの所定の規準に従って、前記仮想ネットワーク（２１４）の少なくとも１つのオーバーロードされた仮想ノード（２０８６）を決定する段階；及び
−前記オーバーロードされた仮想ノード（２１４）を再定義する段階であって、前記オーバーロードされたノードは前記再定義の後に追加のリソースから利益を得る前記段階；
を含む、前記方法。
【請求項２】
オーバーロードされた仮想ノード（２０８６）がインストールされた物理ノード（２０８）の階層で追加のリソースが利用可能である場合に、前記オーバーロードされた仮想ノード（２０８６）を再定義する段階が、前記物理ノード（２０８）の階層での前記追加のリソースの割り当てを含むことを特徴とする、請求項１に記載の方法。
【請求項３】
再定義の段階の前に、オーバーロードされた仮想ノード（２０８６）がインストールされた物理ノード（２０８）において利用可能なリソースを決定する段階を含むことを特徴とする、請求項２に記載の方法。
【請求項４】
オーバーロードされた仮想ノード（２０８６）を再定義する段階が、前記オーバーロードされた仮想ノード（２０８６）を、前記インフラストラクチャネットワーク（２００）の一部を形成しかつ利用可能な追加のリソースを備えた別の物理ノード（２１０）へ転送する段階を含むことを特徴とする、請求項１に記載の方法。
【請求項５】
前記再定義の段階の前に、利用可能な追加のリソースを備えた少なくとも１つの物理ノード（２１０）を識別する段階を含むことを特徴とする、請求項４に記載の方法。
【請求項６】
オーバーロードされたノード（２０８６）の別のノード（２１０）への転送が、前記オーバーロードされたノード（２０８６）を構成する仮想デバイスの転送を含むことを特徴とする、請求項４又は５に記載の方法。
【請求項７】
オーバーロードされたノード（２０８６）の別の物理ノード（２１０）への転送が、前記オーバーロードされたノード（２０８６）を前記別の物理ノード（２１０）上でクローニングすること含み、前記クローニングが以下の各段階：
・コンフィギュレーションプロトコルに従って、前記オーバーロードされたノード（２０８６）のコンフィギュレーションに関するデータを前記別のノードに送信する段階；
・前記オーバーロードされたノード（２０８６）のコンフィギュレーションに関する前記データを用いて、前記別のノードにおいて、新たな仮想ノード（２０１２）をコンフィギュアする段階；及び
・先にインストールされた物理ノード（２０８）において、オーバーロードされたノード（２０８６）を削除する段階；
を含むことを特徴とする、請求項４又は５に記載の方法。
【請求項８】
仮想ノード（２０２２，２０４４，２０６２，２０８６）の状態に関するロードデータが、前記仮想ノード（２０２２，２０４４，２０６２，２０８６）に割り当てられたリソースに関するデータ及び／又は前記仮想ノード（２０２２，２０４４，２０６２，２０８６）のアクティビティに関するデータを含むことを特徴とする、請求項１〜７のいずれか一項に記載の方法。
【請求項９】
物理ノード（３００）にインストールされた仮想ノード（３０４，３０６，３０８）の各々のロード状態に関するロードデータの少なくとも一部を、可用性ファイルと呼ばれる少なくとも１つのファイル（３１０）に記憶する段階を含むことを特徴とする、請求項１〜８のいずれか一項に記載の方法。
【請求項１０】
利用可能な追加のリソースを備えた少なくとも１つの物理ノード（２１０）を識別する段階が、インフラストラクチャネットワーク（２００）の物理ノードの少なくとも一部の間で、前記物理ノード（２０２，２０４，２０６，２０８，２１０）の各々と関連づけられた可用性ファイルを共有することを含む、請求項５及び９に記載の方法。
【請求項１１】
仮想ノード（２０８２，２０８４，２０８６）のロード状態に関するロードデータを決定する段階が、各物理ノード（２０８）について：
−前記物理ノード（２０８）にインストールされた仮想ノード（２０８２，２０８４，２０８６）の各々による前記物理ノード（２０８）の物理周辺機器の使用に関する少なくとも１つのパラメータを決定する段階；及び／又は
−前記物理ノード（２０８）にインストールされた仮想ノード（２０８２，２０８４，２０８６）の各々の状態に関する少なくとも１つのパラメータを決定する段階；
を含むことを特徴とする、請求項１〜１０のいずれか一項に記載の方法。
【請求項１２】
請求項１〜１１のいずれか一項に記載の方法の段階を実施するための１つ以上のデータ処理デバイス上で実行されるインストラクションを含む、コンピュータプログラム。
【請求項１３】
その性能が請求項１〜１１のいずれか一項に記載の方法によって管理される仮想ネットワーク（２１４，２１６，２１８）。
【請求項１４】
インフラストラクチャネットワーク（２００）を形成する物理ノードのセットから選択される物理ノード（２０２，２０４，２０６，２０８）にインストールされた複数の仮想ノードを含む少なくとも１つの仮想ネットワーク（２１４，２１６，２１８）の性能の自動化された管理システムであって、
ここで、前記物理ノードがシグナリングネットワーク（２１２）を通して相互接続されているものとする前記システムであり、以下の各手段：
−少なくとも１つの仮想ノード（２０２２，２０４４，２０６２，２０８６）のロード状態に関する、ロードデータと呼ばれるデータを決定する手段と；
−前記データ及び少なくとも１つの所定の規準に従って、前記仮想ネットワーク（２１４）の少なくとも１つのオーバーロードされた仮想ノード（２０８６）を識別する手段と；
−前記オーバーロードされたノードが追加のリソースから利益を得るように前記オーバーロードされた仮想ノードを再定義する手段と；
を含む、前記システム。
【請求項１５】
少なくとも１つの仮想ノードのロード状態に関連するデータを決定する手段が、コンピュータプログラム（３０２）を含むこと、そして、前記コンピュータプログラム（３０２）が各物理ノード（３００）で実行され、そして、前記物理ノード（３００）にインストールされた各仮想ノード（３０４，３０６，３０８）のアクティビティを監視すること、を特徴とする、請求項１４に記載のシステム。
【請求項１６】
オーバーロードされた仮想ノードを再定義する手段が：
−物理ノードが利用可能な追加のリソースを備えている場合に、前記物理ノードにおいて新たなリソースを前記仮想ノードに割り当てるコンピュータプログラム（３０２）；及び／又は
−利用可能な追加のリソースを備えた別の物理ノード上へ前記オーバーロードされた仮想ノードを転送する手段；
を含むことを特徴とする、請求項１４又は１５に記載のシステム。
【請求項１７】
利用可能な追加のリソースを備えた少なくとも１つの物理ノードを識別する手段を更に含み、前記手段が、各物理ノード（３００）について、前記物理ノード（３００）にインストールされた各仮想ノード（３０４，３０６，３０８）に関するロードデータの少なくとも一部を含む、可用性ファイルと呼ばれる少なくとも１つのファイル（３１０）を含むことを特徴とする、請求項１４〜１６のいずれか一項に記載のシステム。
【請求項１８】
仮想ノードが、物理ノードにインストールされた仮想ルータを含むことを特徴とする、請求項１４〜１７のいずれか一項に記載のシステム。
【発明の詳細な説明】
【発明の詳細な説明】
【０００１】
本発明は、少なくとも１つの仮想ネットワークの高性能で自動化された管理方法に関する。本発明は、前記方法を実行するシステムにも関する。
【０００２】
物理ネットワークは、ネットワークの物理ノードとも呼ばれる複数の物理ネットワークデバイスを含むネットワークである。物理ネットワークデバイスは、ルータ、スイッチ、アクセスポイント、「ミドルボックス」、「ホームゲートウェイ」、ＩＰ末端などであることができる。
【０００３】
物理ネットワークの物理ノードの各々は、ますます、ネットワークオペレーティングシステム（ＮＯＳ）を有しかつ多かれ少なかれ専門化されたオンボードコンピュータの等価物を含むようになっている。更に、物理ネットワークデバイスは、ますます、仮想化によって複数のネットワークオペレーティングシステムを受信することができるようになっている。仮想化は、物理ネットワークデバイス上で実行される各ネットワークオペレーティングシステムが仮想ネットワークのデバイスのインスタンスを表すことを可能にする。
【０００４】
このように、今や、仮想ネットワークデバイスの複数のインスタンスがネットワークされ、ドメインを構成する複数の物理ネットワークデバイスの中から物理デバイスのネットワークの１つのデバイスに前記インスタンスの各々がインストールされた仮想ネットワークが見られる。
【０００５】
このように、今日では、単一の物理ネットワークデバイスに複数の仮想デバイスをインストールすることができ、これらの仮想デバイスは各々が１つ以上の仮想ネットワークの仮想ノードを構成する。
【０００６】
本発明の発明者らは、前記のように単一の物理ネットワークデバイスに複数の仮想デバイスをインストールすることができるというためには、仮想ネットワークの各々を高性能で自動化された方法で管理する必要を伴うことを見出した。
【０００７】
しかしながら、現在、１つ以上の仮想ネットワークの高性能で自動化された管理のための方法又はシステムは存在しない。
【０００８】
本発明の目的は前記欠点を克服することである。
【０００９】
本発明の別の目的は、仮想ネットワークの働きを監視及び改善することを可能にする、１つ以上の仮想ネットワークの高性能で自動化された管理方法及びシステムを提案することである。
【００１０】
本発明の別の目的は、１つ以上の仮想ネットワークの高性能で自動化された管理の実行容易な方法及びシステムを提案することである。
【００１１】
最後に、本発明の目的は、１つ又は複数の仮想ネットワークの高性能で自動化された管理のより柔軟性のある方法及びシステムを提案することである。
【００１２】
本発明は、インフラストラクチャネットワークを形成する物理ノードのセットから選択される物理ノードにインストールされた複数の仮想ノードから構成される少なくとも１つの仮想ネットワークの高性能で自動化された管理方法であって、
各仮想ネットワークに対して、以下の各段階：
−前記仮想ネットワークの少なくとも１つの仮想ノードのロード状態に関する、ロードデータと呼ばれるデータを決定する段階；
−前記データ及び少なくとも１つの所定の規準に従って、前記仮想ネットワークの少なくとも１つのオーバーロードされた仮想ノードを決定する段階；及び
−前記オーバーロードされた仮想ノードを再定義する段階であって、前記再定義の後に前記オーバーロードされたノードが追加のリソースから利益を得る前記段階；
を含む、前記管理方法により前記目的を達成することを提案する。
【００１３】
本発明に係る方法は、各仮想ノードのロード状態に関するデータを決定することによって仮想ネットワークの各仮想ノードを監視することを可能にする。
【００１４】
１つ以上の所定の規準に基づいて、１つ以上のオーバーロードされた仮想ノードを識別して再定義することにより、これらのオーバーロードされたノードはより多くのリソースから利益を得る。このように、オーバーロードされていると識別された仮想ノードはもはやオーバーロードされることがなくなり、仮想ノードは改善された性能を備える。
【００１５】
仮想ノードのオーバーロード状態の識別は、１つ以上の所定の規準に従って行われる。この又はこれらの規準は、仮想ネットワークの１つ以上の仮想ノードに共通とすることができるか、あるいは、例えば、仮想ノードの機能、ノードのタイプなどに応じて、仮想ネットワークの各仮想ノードに対して個別化されていることができる。
【００１６】
本発明に係る方法は、シンプルでありかつ実行容易な全自動化された方法で、仮想ネットワークの性能を管理し、そして、仮想ネットワークの性能を改善することを可能にする。更に、本発明に係る方法は、柔軟な仕方でかつデータロスなしにこの管理を行うことを可能にする。
【００１７】
本発明に係る方法は、物理ネットワークのリソースの性能及び使用を最適化するために仮想ネットワークの仮想デバイスに対する最良の可能な位置を識別することを可能にし、そして、新規かつ良好なコンフィギュレーションが決定された場合に仮想デバイスを移動させることを可能にする。有利には、トラフィックのいかなる中断もなくかつパケットロスなしに仮想デバイスを移動させる。
【００１８】
本発明に係る方法は、故障の場合の高い冗長性を許容し、そして、１つ以上のノードの故障の場合において有意に妨げられない仮想ネットワークを得ることを可能にする。
【００１９】
有利には、オーバーロードされた仮想ノードを再定義する段階は、物理ノードの階層において追加のリソースを利用することができる場合に、前記オーバーロードされた仮想ノードがインストールされた物理ノードの階層において前記追加のリソースを割り当てる段階を含むことができる。
【００２０】
この場合に、本発明に係る方法は、再定義の段階の前に、オーバーロードされた仮想ノードがインストールされた物理ノードにおいて利用することができるリソースを決定する段階を含むことができる。
【００２１】
オーバーロードされた仮想ノードを再定義する段階は、有利には、物理ノードの前記インフラストラクチャネットワークの一部を形成しかつ利用することのできる追加のリソースを備えた別の物理ノードへの前記オーバーロードされた仮想ノードの転送を含んでいる。実際に、オーバーロードされた仮想ノードがインストールされた物理ノードが利用可能な追加のリソースを備えていない場合には、前記オーバーロードされたノードを再定義する段階は別の物理ノードに前記オーバーロードされたノードをインストールすることを含むことができる。この別の物理ノードは、有利には、前記オーバーロードされた仮想ノードがインストールされた物理ノードの近くに位置する物理ノードである。
【００２２】
この場合に、そして、前記オーバーロードされた仮想ノードを再定義する段階の前に、本発明に係る方法は、利用可能な追加のリソースを備えた少なくとも１つの物理ノードを識別する段階を含むことができる。
【００２３】
本発明に係る方法の第一のバージョンによれば、オーバーロードされたノードの別のノードへの転送は、前記オーバーロードされたノードを構成する仮想デバイスの転送を含むことができる。この場合に、仮想ノードとして働く仮想デバイスを完全に別の物理ノード上へトランスポートする。
【００２４】
本発明に係る方法の好ましいバージョンによれば、オーバーロードされたノードの別のノードへの転送は、前記オーバーロードされたノードを前記別の物理ノード上でクローニングすることを含み、前記クローニングは以下の各段階：
・コンフィギュレーションプロトコルに従って、前記オーバーロードされたノードのコンフィギュレーションに関するデータを前記別のノードに送信する段階と；
・前記オーバーロードされたノードのコンフィギュレーションに関する前記データを用いて、前記の別のノードにおいて、新たな仮想ノードをコンフィギュアする段階と；
・先にインストールされた物理ノードにおいて前記オーバーロードされたノードを削除する段階と；
を含む。
【００２５】
この好ましいバージョンにおいては、或る物理ノードから別の物理ノードへ仮想デバイスをトランスポートせずに、仮想ノードのコンフィギュレーションデータだけを、前記オーバーロードされた仮想ノードがインストールされた物理ノードから別の物理ノードへ転送する。これらのコンフィギュレーションデータを新たな物理ノードにおいて用い、オーバーロードされたノードに代わって仮想ノードとして働く仮想デバイスの「ブランク」のインスタンスをコンフィギュアする。
【００２６】
このように、コンフィギュレーションデータの容量は極めて小さいので、或る物理ノードから別の物理ノードへの仮想ノードの転送は、単純であり、柔軟かつ迅速な方法で行われる。例えば、インフラストラクチャネットワークの物理ノードを接続するシグナリングネットワークを用いることによって、或る物理ノードから別の物理ノードへのコンフィギュレーションデータの転送を行うことができる。
【００２７】
仮想ノードの状態に関するロードデータは、前記仮想ノードに割り当てられたリソースに関するデータ及び／又は前記仮想ノードのアクティビティに関するデータを含むことができる。このように、仮想ノードのアクティビティの機能として仮想ノードに割り当てられたリソースを監視することによって、対象とする仮想ノードがオーバーロードの状態にあるか否かを決定することができる。特定の実施態様の例によれば、物理ノード上の仮想ノードの待ち時間をモニターして、対象とする仮想ノードがオーバーロードの状態にあるか否かを決定することができる。
【００２８】
特定の実施態様の例によれば、ネットワークオペレーティングシステム（ＮＯＳ）の枠内では、仮想ルータが潜在モード（mode latent）に入る時間を計算することが重要である。仮想ルータが待ち行列にある場合、仮想ルータに向けられたパケットは処理されずに失われる可能性が極めて大きい。ＵＤＰ通信の枠内では、このことはＴＣＰ通信の枠内の場合よりはるかに大きな制約となる。ＴＣＰ通信の時、データ転送に関与するルータのドライバは順応し、欠けているパケットを再送信する。一方、ＵＤＰ通信においては、この機構は存在せず単にパケットが認識されないだけである。
【００２９】
例えば、１秒間当たり２５，０００パケット（１，０００分の１秒〔１／１０００秒〕間ごとに２５パケット）が処理されそして仮想ルータが１，０００分の６０秒〔６０／１０００秒〕間待ちの状態にあると、１秒間ごとに１５００パケット（２５×６０）が失われる。この損失はどのような場合であってもネットワークの管理下に留まっていなければならずかつネットワークによって引き受けられなければならない。仮想ルータが待ち行列に留まっている時間の期間を制御するために、スケジューラを用いることが必要である。このスケジューラは使用率によってではなくタイムスロットによって動作しなければならない。仮想ルータの各々がルータのリソースへアクセスできる期間を定義することができる。このようにして、仮想ルータの各々がそのタイムスロットを受ける前の待ち時間の期間を制御することができる。
【００３０】
例えば、１つの物理ノードに３つの仮想ルータがインストールされておりかつ１，０００分の６０秒間の待ち時間が許され得ることが確立されている場合には、１，０００分の９０秒間のサイクル（期間）ごとに、各仮想ルータは１，０００分の３０秒間の利用可能なタイムスロットを有していなければならない。ここで、３つの仮想ルータ×１，０００分の３０秒間＝１，０００分の９０秒間であることが理解されよう。１つの仮想ルータが待ち状態にある場合、それ自体のタイムスロットを取り戻す前に、その仮想ルータは他の２つの仮想ルータがそれらの１，０００分の３０秒間のタイムスロット（２×１，０００分の３０秒間＝１，０００分の６０秒間）を費やすのを待つ。従って、６０ｍｓの待ち時間ルールが実施される。しかしながら、１つ以上のルータが１，０００分の６０秒間より長い待ち時間となる場合には、これらの仮想ルータの少なくとも１つがオーバーロード状態となることを意味するが、それは仮想ルータが実行すべきオペレーションについて待ち時間が長くなりすぎるからである。
【００３１】
有利には、本発明に係る方法は、物理ノードにインストールされた仮想ノードの各々のロード状態に関するロードデータの少なくとも一部を、可用性ファイルと呼ばれる、物理ノードごとに少なくとも１つのファイルに記憶させる段階を含むことができる。かかる可用性ファイルはロードデータを含むＸＭＬファイルであることができる。
【００３２】
従って、利用可能な追加のリソースを有する少なくとも１つの物理ノードを識別する段階は、前記物理ノードの各々と関連づけられた可用性ファイルを、インフラストラクチャネットワークの物理ノードの少なくとも一部の間で、共有することを含むことができる。
【００３３】
ファイルの共有化は、あらゆる公知の形態：物理ノードの各々へのファイルの送信、全ての物理ノードがそこにアクセスすることができるように各物理ノード上でファイルを共有すること、物理ノードによってアクセス可能な１つ以上のサーバにファイルを送信すること、及びこれらのサーバの階層においてファイルを共有すること、によって実施することができる。
【００３４】
有利には、仮想ノードのロード状態に関するロードデータを決定する段階は、各物理ノードについて：
−前記物理ノードにインストールされた仮想ノードの各々による前記物理ノードの物理周辺機器の使用に関する少なくとも１つのパラメータを決定する段階；及び／又は
−前記物理ノードにインストールされた仮想ノードの各々の状態に関する少なくとも１つのパラメータ、例えば、この物理ノードにインストールされた仮想ノードの各々による中央処理装置又はメモリの使用を決定する段階；
を含むことができる。
【００３５】
本発明の別の観点によると、本発明に係る方法の各段階を実施するための１つ以上のデータ処理デバイスにおいて実行されるインストラクションを含む、コンピュータプログラムが提案される。前記コンピュータプログラムは、物理ノードの各々において実行される、同一又は同一でない複数のデータ処理モジュールを含むことができる。前記コンピュータプログラムは中央モジュールを更に含むことができ、前記中央モジュールは、物理ノードにインストールされるモジュールのセットを生成することができ、そして、サーバ上で実行される。
【００３６】
本発明の別の観点によると、その性能が本発明に係る方法によって管理される仮想ネットワークが提案される。
【００３７】
本発明の別の観点によると、インフラストラクチャネットワークを形成する物理ノードのセットから選択された物理ノードにインストールされた複数の仮想ノードから構成される少なくとも１つの仮想ネットワークの性能の自動化された管理システムであって、以下の各手段：
−少なくとも１つの仮想ノードのロード状態に関する、ロードデータと呼ばれるデータを決定する手段と；
−前記データ及び少なくとも１つの所定の規準に従って、前記仮想ネットワークの少なくとも１つのオーバーロードされた仮想ノードを識別する手段と；
−前記オーバーロードされたノードが追加のリソースから利益を得るように、前記オーバーロードされた仮想ノードを再定義する手段と；
を含む、前記システムが提案される。
【００３８】
有利には、少なくとも１つの仮想ノードのロード状態に関するデータを決定する手段は、コンピュータプログラムを含むことができ、前記コンピュータプログラムは、前記物理ノードにインストールされた各仮想ノードのアクティビティを観察し、そして、各物理ノード上で実行される。
【００３９】
更に、オーバーロードされた仮想ノードを再定義する手段は、以下：
−物理ノードが利用可能な追加のリソースを有する場合に、前記物理ノード上の前記仮想ノードに新たなリソースを割り当てるコンピュータプログラム；及び
−前記オーバーロードされた仮想ノードを、利用可能な追加のリソースを備えた別の物理ノード上へ転送する手段；
を有していることができる。
【００４０】
本発明に係るシステムは更に、利用可能な追加のリソースを備えた少なくとも１つの物理ノードを識別する手段を含むことができ、前記手段は、各物理ノードについて、前記物理ノードにインストールされた各仮想ノードに関するロードデータの少なくとも一部を含む可用性ファイルと呼ばれる少なくとも１つのファイルを含んでいる。これらの識別手段は更に、インフラストラクチャネットワークの全ての物理ノードとこのファイルを共有する手段を含むことができる。
【００４１】
このように、各物理ノードの状態は他の物理ノードに知られ、このことは追加のリソースが利用可能である物理ノードを識別することを可能にする。
【００４２】
限定的でない実施態様の例によれば、物理ノードは物理ルータであることができる。
【００４３】
更に、限定的でない実施態様の例によれば、仮想ノードは、物理ノードにインストールされた仮想ルータとして働くデータ処理デバイスであることができる。
【００４４】
他の利点及び特徴は、限定的でない実施態様の詳細な説明及び添付の図面を検討することにより明らかとなるであろう：
−図１は、複数の仮想ノードがインストールされた物理ノードのアーキテクチャの模式図であり；そして
−図２は、複数の仮想ノードを有する５つの物理ノードを含むインフラストラクチャネットワークの模式図である。
【００４５】
図面中、複数の図面に共通する要素は同じ参照番号を保有する。
【００４６】
図１は、１つの物理ノードに複数の仮想ノードをインストールすることを可能にする物理ネットワークの物理ノード上での仮想化アーキテクチャの模式図である。
【００４７】
図１に示した物理ノード１００は、仮想インスタンス間で物理リソースを共有する機能を有する、ハイパーバイザと呼ばれる仮想化ソフトウエア及び／又はハードウエア１０２を含む。例としてＸＥＮソフトウエアを挙げることができる。このハイパーバイザは、物理ノード１００上で複数のネットワークオペレーティングシステム（ＮＯＳ）を働かせることができ、これらのオペレーティングシステムの各々が仮想ノードを構成する。
【００４８】
図１に示す例において、物理ノード１００に３つの仮想ノード１０４、１０６、１０８がインストールされる。各オペレーティングシステムはＸＥＮハイパーバイザソフトウエア１０２とインターフェースすることを可能にするＸＥＮドライバを含む。
【００４９】
仮想ノード１０４〜１０８を構成するオペレーティングシステムは、同一であるか又は相異なっていることができ、例えば、Ｗｉｎｄｏｗｓ、Ｌｉｎｕｘ、ＮｅｔＢＳＤ、ＦｒｅｅＢＳＤ又は他のオペレーティングシステムであることができる。
【００５０】
本例において、仮想ルータ１０４〜１０８は、ソフトウエア及び／又はハードウエアネットワークデバイスのインスタンス、例えば、ＸＯＲＰ（Extensible Open Router Platform）ソフトウエアルータである。
【００５１】
物理ノードは更に、物理周辺機器１１０並びに制御ソフトウエア及びドライバ１１２を含む。
【００５２】
図２は、シグナリングネットワーク２１２によって相互接続された物理ノード２０２〜２１０のセット２００の模式図である。セット２００はインフラストラクチャネットワークと呼ばれる。
【００５３】
図示の例において、２つの仮想ノード２０２２及び２０２４が物理ノード２０２にインストールされており、２つの仮想ノード２０４２及び２０４４が物理ノード２０４にインストールされており、３つの仮想ノード２０６２、２０６４及び２０６６が物理ノード２０６にインストールされており、そして３つの仮想ノード２０８２、２０８４及び２０８６が物理ノード２０８にインストールされている。物理ノード２１０に仮想ノードはインストールされていない。
【００５４】
仮想化によって、ノード２０２〜２１０を含む物理ノードのネットワークは、３つの仮想ネットワーク：２１４、２１６及び２１８の確立を可能にする。
【００５５】
各物理ノード２０２〜２１０は、コンフィギュアされていない「ブランク」仮想ノードのストック、すなわち、ノード２０２についてストック２０２０、ノード２０４についてストック２０４０、ノード２０６についてストック２０６０、ノード２０８についてストック２０８０、そしてノード２０１０についてストック２１００を含む。物理ノードの各々における仮想ノードの各々は、仮想ノードストックから選択される、ブランク仮想ノードの特定のコンフィギュレーションによって得られる。仮想ノードのコンフィギュレーションは、仮想ネットワークにおいて確立されるサービスに依存しており、これらのサービス、すなわち、例えば、バンキングトランザクション、電気通信などに適合される。
【００５６】
次に、本発明に係る仮想ネットワーク２１４の性能の管理を説明する。
【００５７】
物理ノード２０２〜２１０が物理ルータであり、仮想ノードが仮想ルータである場合を考える。
【００５８】
本発明に係る性能管理の第一の相は、物理ルータに対して利用可能なリソースの各物理ルータについての内部ナレッジ及び前記リソース使用のナレッジに対応する。
【００５９】
図３を参照するに、コンピュータプログラム３０２は各物理ノード３００上で実行される。このコンピュータプログラム３０２は物理ノード３００にインストールされた仮想ノード３０４〜３０６の各々のアクティビティを監視する。仮想ノード３０４〜３０６の各々のロード状態に関するデータは、データファイル３１０に、例えば、ＸＭＬフォーマットで統合される。
【００６０】
各物理ルータにインストールされるコンピュータプログラム３０２を、図１を参照するとハイパーバイザソフトウエア１０２に統合することができる。
【００６１】
次に、内部リソースを決定する例を説明する。ネットワークオペレーティングシステム（ＮＯＳ）の枠内では、仮想ルータが潜在モードに入っている間の時間を計算することが重要である。仮想ルータが待ち行列にある場合、その仮想ルータに向けられたパケットはそれらが迅速に処理されないと失われる危険にさらされる。ＵＤＰ通信の枠内では、このことはＴＣＰ通信の枠内の場合よりはるかに大きな制約となる。ＴＣＰ通信の時、データ転送に関与するルータのドライバは順応し、欠けているパケットを再送信する。一方、ＵＤＰ通信においては、この機構は存在せず単にパケットが認識されないだけである。例えば、１秒間当たり２５，０００パケット（１，０００分の１秒間ごとに２５パケット）が処理されそして仮想ルータが１，０００分の６０秒間待ち状態にあると、１秒間ごとに１５００パケット（２５×６０）が失われる。この損失はどのような場合であってもネットワークの管理下に留まっていなければならずかつネットワークによって引き受けられなければならない。各仮想ルータが待ち行列に留まっている時間の期間を制御するために、スケジューラを用いることが必要である。このスケジューラは使用率によってではなくタイムスロットによって動作しなければならない。仮想ルータの各々がルータのリソースへのアクセスできる期間を定義することができる。
【００６２】
このようにして、仮想ルータの各々がそのタイムスロットを受ける前の待ち時間の期間を制御することができる。
【００６３】
例えば、物理ルータ２０８上に３つの仮想ルータ、すなわち、図２に示した仮想ルータ２０８２、２０８４及び２０８６が存在する場合であって、かつ１，０００分の６０秒間の待ち時間が許容されることが確立されている場合に、１，０００分の９０秒間のサイクル（期間）ごとに、各仮想ルータ２０８２、２０８４及び２０８６は１，０００分の３０秒間の利用可能なタイムスロットを有しているはずである。ここで、３つの仮想ルータ×１，０００分の３０秒間＝１，０００分の９０秒間となることが理解されよう。仮想ルータ、例えば、仮想ルータ２０８６が待っている場合、前記仮想ルータはそれ自体のタイムスロットを取り戻す前に、他の２つの仮想ルータ、すなわち、仮想ルータ２０８２及び２０８４が、それらのタイムスロット１，０００分の３０秒間；２×１，０００分の３０秒間＝１，０００分の６０秒間を費やすのを待つ。このように、６０ｍｓの待ち時間ルールが実施される。しかしながら、ルータ２０８６が６０ｍｓより長い待ち時間を受けると、仮想ネットワーク２１４の性能が影響を受けそしてルータ２０８６がオーバーロードとなる。
【００６４】
物理リソースの内部管理のために、本発明は、特定の実施態様によれば、仮想ルータの種々の使用メータに依存する。観察されるパラメータは、仮想ルータの物理周辺機器の実際の使用並びに仮想ルータの各々の状態である。
【００６５】
対象となる物理ルータにインストールされた各仮想ルータのアクティビティとともに各物理ルータの内部リソースが認識されると、各物理ルータは近くの物理デバイス、すなわち、近くのルータを見つけ出して、次に、前記近くのデバイスとそのリソース上の情報を共有する必要がある。
【００６６】
データファイル、例えば、ＸＭＬファイルに予め集められ統合された情報は、この近くのルータと共有される。とりわけ、この共有を行う１つの可能性は、Ｐ２Ｐプロトコルを用いることにある。例えば、データモデルを、例えば、ＸＭＬフォーマットで用いて、Ｐ２Ｐプロトコル、例えば、グヌーテラの最小限の実行を選択することができる。この解決法は、方法の機能性を場合により拡張するための高いインターフェースフレキシビリティ及び高いファシリティを提供する。
【００６７】
Ｐ２Ｐモデルによって提案されるように、インフラストラクチャネットワーク２００は、「ピア」ルータとして働く物理ルータから形成される。これらのルータの中で、複数の物理ルータが「ウルトラピア」物理ルータとして働く。後者の機能はインフラストラクチャネットワーク２００上のエントリポイントとして働くことである。各「ピア」ルータは、「ピア」ルータ及びそれらの相互接続のセット並びに種々の「ピア」に結びつけられた仮想ルータのアベイラビリティを示す可用性ファイルを含むトポロジーファイルを管理する。これらのデータファイルはＸＭＬタイプのものであることができる。
【００６８】
用いたコンセプトを図４〜６を参照して説明する。より明確にするためにこのコンセプトをインフラストラクチャネットワーク２００から独立して説明するが、インフラストラクチャネットワーク２００にこのコンセプトを用いてインフラストラクチャネットワーク２００内の異なる物理ルータ間で可用性ファイルの共有ができるようにする。
【００６９】
図４を参照するに、新たな仮想ルータが接続されると、新たな仮想ルータはそれが作成された物理「ピア」ルータ４０２のトポロジーファイルに包含される。前記「ピア」ルータ４０２は、Ｐ２Ｐネットワーク４００を用いて「ウルトラピア」ルータ４０４とコンタクトする。
【００７０】
図５を参照するに、シグナリングネットワークとして見ることができるＰ２Ｐネットワークを通じて、「ピア」ルータ４０２を「ウルトラピア」ルータ４０４と接続する。「ウルトラピア」ルータ４０４は、新たな仮想ネットワークを引き続き確立するために、それ自体のトポロジーファイルに、「ピア」４０２のトポロジーファイルに示された仮想ルータを追加する。このようにして、認識された仮想ルータのリストを自動的に構成する。
【００７１】
図６を参照するに、「ウルトラピア」ルータは次に「ピア」ルータ、すなわち、ルータ４０４及び４０６の各々とコンタクトする。次いで、コンタクトされた「ピア」ルータはそれら自体のトポロジーファイルに新たな仮想ルータを追加する。このリストはネットワーク内での変化を迅速に伝播することを可能にする。
【００７２】
次いで、「ピア」ルータ４０２は、リソースの可用性データファイル、例えば、ＸＭＬ可用性ファイルを、コンタクトされた「ピア」ルータ４０４〜４０８の各々からダウンロードし、そして、利用可能なリソースのそれ自体の表示を構成する。
【００７３】
オーバーロードされたルータが発見された場合に、本発明に係る方法は、１つ又は複数の仮想ルータの最良の可能な位置を決定する段階からなる相を含むことができる。この決定は、所定のアルゴリズムに従って実施される。例えば、オーバーロードされた仮想ルータを有する物理ルータは、その可用性ファイルを参照して、その環境内で最もロードの少ない物理ルータを決定する。前記物理ルータは、例えば、トポロジーファイルによって指定された通りにそれ自体から１ホップの位置にある物理ルータであることができる。１ホップにおいて何も見出されない場合、アクセス可能な物理ルータを見出すまで２ホップなどの位置で探索する。次いで、インフラストラクチャネットワーク上でのリンク（例えば、ＯＳＰＦ）の状態を考慮し、修正プロセスにおいて仮想ネットワークの仮想ルータがインストールされる物理ルータだけを考慮し、移動された仮想ルータが消える物理ルータを除去し、そして、移動された仮想ルータが現れる物理ルータを加えることに留意しながら、ルーティングアルゴリズムのアップデートを開始する。ルーティングアルゴリズムに用いられるリンク状態は物理リンクのリンク状態であって、仮想ネットワークのリンク状態ではない。しかしながら、ルーティングの結果は修正プロセスにある仮想ネットワークのルーティングテーブルだけに適用される。
【００７４】
このアルゴリズムの目的は、インアクティブな仮想ルータが既に働いているオーバーロードされた仮想ルータを受け入れるにはどの物理ルータを標的にするかということを決定し、そして、仮想ルータが移動された仮想ネットワークの新たなルーティングテーブルを決定することである。
【００７５】
標的物理ルータが指定されると、前記物理ルータはまずそのインターフェーステーブルの構成を開始しそして「gratuitous ＡＲＰ」（アドレス解決プロトコルの「gratuitous」要求）を送信する。これは、新たなルータが接続されるセグメントにおいて新たなインターフェースをアクティブにする効果を有している。次いで、ルーティングプロセスはそのピアと接触してルーティングテーブルの交換が起こる。次いで、ルータはその新たなルーティングテーブルを再構成する。ネットワークの収束時間は、コンフィギュレーションをロードしてルーティングテーブルを転送する時間に等しい。
【００７６】
コンフィギュレーションプロトコル、例えば、Netconfタイプのコンフィギュレーションプロトコルは、ハイパーバイザとその仮想ルータとの間に交換インターフェースを確立させることができる。このコンフィギュレーションプロトコルは、とりわけ、以下のタイプ：
−ルータのコンフィギュレーションを充分にリターンするget-config；
−ルータのコンフィギュレーションを上書きするedit-config；
のプリミティブを用いてリモートホスト上で情報を読み書きすることを可能にする。
【００７７】
従って、これら２つのプリミティブは、仮想ルータを移動させること及び仮想ソースルータをインアクティブにすることを可能にする。次いで、トランザクションに関与する２つのルータを情報管理ソフトウエアによって再度インテロゲートする。その数秒以内に、前記情報管理ソフトウエアは、ネットワークの全てのホストに送信される新たなリソースの状態を発行する。
【００７８】
図２に示す例において、仮想ネットワーク２１４の仮想ルータ２０８６は６０ｍｓより長い待ち時間のためにオーバーロードされたと識別される。他の仮想ルータのリソースの参照は、利用可能なリソース、すなわち、６０ｍｓより少ない待ち時間を有する物理ルータ２１０上のインアクティブな仮想ルータ２１０２が識別されることを示す。シグナリングネットワーク２１４を用いたNetconfコンフィギュレーションプロトコルに従って、物理ルータ２１０のハイパーバイザに、オーバーロードされた仮想ルータ２０８６のコンフィギュレーションデータが送信される。オーバーロードされたルータ２０８６のコンフィギュレーションデータを用いてインアクティブな仮想ルータ２１０２がコンフィギュアされる。ひとたびコンフィギュレーションが行われると、ルーティングテーブルがアップデートされて交換され、そして、仮想ルータ２１０２がルータ２０８６に取って代わる。ルータコンフィギュレーション２０８６が上書きされ、そして、ルータ２０８６はインアクティブルータとなりルータストック２０８０に戻される。
【００７９】
図７は、ルータ２０８６をルータ２１０２に再定義した後のインフラストラクチャネットワーク２００の表示を与える。再定義前には、仮想ルータ２０２２、２０４４、２０６２及び２０８６によって仮想ネットワーク２１４が形成されていたところ、再定義後には、仮想ルータ２０２２、２０４４、２０６２及び２１０２から仮想ネットワーク２１４が構成される。
【００８０】
仮想ネットワーク２１６及び２１８の性能の監視及び管理は、前記した方法と同様の方法により実施される。
【００８１】
ルータ２１０２へのルータ２０８６の再定義は、データ損失なしに極めて短時間内で実施される。
【００８２】
もちろん、本発明は上記してきた限定的でない実施例に限定されるものではない。
【図１】
2012533129.tif 000003
【図２】
2012533129.tif 000004
【図３】
2012533129.tif 000005
【図４】
2012533129.tif 000006
【図５】
2012533129.tif 000007
【図６】
2012533129.tif 000008
【図７】
2012533129.tif 000009
【国際調査報告】
2012533129.tif 000010
2012533129.tif 000011
2012533129.tif 000012
2012533129.tif 000013
2012533129.tif 000014
2012533129.tif 000015