(57)【特許請求の範囲】
【請求項１】
物理ノード（２０４，２０６，２０８，２１０）を含み、そして、インフラストラクチャネットワークと呼ばれる物理ネットワーク（２００）上で、特定のサービスに適合した少なくとも１つの仮想通信ネットワーク（４０２，４０４，４０６）を、オンザフライかつオンデマンドで生成する方法であって、
ここで、前記特定サービスがリモートシステム間の通信であり、前記特定サービスがプロトコルスタックに関連づけられており、前記物理ノード（２０４，２０６，２０８，２１０）の各々は、前記物理ノード上で実行される少なくとも１つのネットワークオペレーティングシステムを作動させることができるハイパーバイザを含むものとする、前記方法であり、
以下の各段階：
−仮想ネットワークのサーバと呼ばれる少なくとも１つのコンピュータデバイス（２０２）上で、前記特定サービスに従って生成されるべき前記仮想通信ネットワーク（４０２）に関するデータを決定する段階（３０４，３０６）；
−前記データに従って、シグナリングネットワークを介して、前記仮想ネットワークのサーバから、前記インフラストラクチャネットワーク（２００）の、アクティブノードと呼ばれる前記物理ノード（２０４，２０６，２０８，２１０）の少なくとも一部へ、仮想ノードを作成するための要求を送信する段階（３０８）；及び
−前記アクティブノードの各々において仮想デバイス（１０４，１０６，１０８）をインストールすることによって、前記アクティブノードの各々に仮想ノードを作成する段階（３１０）であって、前記インストールが、前記アクティブノードの前記ハイパーバイザによってネットワークオペレーティングシステムインスタンスを生成する段階を含み、各アクティブノードの前記ネットワークオペレーティングシステムインスタンスが特定サービスのプロトコルスタックに関連づけられており、このようにして作成された前記仮想ノードのセットから前記仮想ネットワークが構成される前記段階（３１０）；
を含む前記方法。
【請求項２】
仮想ノードを作成（３１０）する要求に従って各仮想ノードをコンフィギュアする段階（３１０）を更に含むことを特徴とする、請求項１に記載の方法。
【請求項３】
仮想ネットワークのサーバ（２０２）とアクティブノード（２０４，２０６，２０８，２１０）の各々との間の要求の送信を、所定のプロトコルに従ってシグナリングネットワーク（２１２）を介して実行することを特徴とする、請求項１又は２に記載の方法。
【請求項４】
少なくとも１つのコンピュータデバイスから各アクティブノードへ仮想デバイスソフトウエアを送信する段階を更に含むことを特徴とする、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
仮想ネットワークサーバ（２０２）から各アクティブノード（２０４，２０６，２０８，２１０）へ仮想デバイスに対するコンフィギュレーションデータを送信する段階（３０８）を更に含むことを特徴とする、請求項１〜４のいずれか一項に記載の方法。
【請求項６】
生成されるべき仮想ネットワークに関するデータが、仮想ノードが作成されるべき物理ノードを記述する少なくとも１つの第一のテンプレート（Ｔ１）に関するデータを含むことを特徴とする、請求項１〜５のいずれか一項に記載の方法。
【請求項７】
前記第一のテンプレート（Ｔ１）に関するデータが、仮想ノードが作成されるべき物理ノードの名前を含むことを特徴とする、請求項６に記載の方法。
【請求項８】
サーバから少なくとも１つの物理ノードへ送信される仮想ノード作成の要求が、各アクティブノード上に作成されるべき前記仮想ノードに割り当てられる必要のある物理リソースを記述する少なくとも１つの第二のテンプレート（Ｔ２）に関するデータを含むことを特徴とする、請求項１〜７のいずれか一項に記載の方法。
【請求項９】
前記第二のテンプレート（Ｔ２）に関するデータが、アクティブノード上に作成されるべき各仮想ノードに対して、以下：
−中央処理装置；
−記憶手段；
−少なくとも１つのネットワークインターフェース；
−少なくとも１つのＭＡＣアドレス；及び／又は
−仮想ノードを少なくとも１つの物理リンクに接続するのに必要な、少なくとも１つのドライバ及び／又はブリッジ；
に関するデータを含むことを特徴とする、請求項８に記載の方法。
【請求項１０】
仮想ネットワークのサーバからアクティブノードに送信される仮想ノード作成の要求が、生成されるべき仮想ネットワークを記述する少なくとも１つの第三のテンプレート（Ｔ３）に関するデータを含むことを特徴とする、請求項１〜９のいずれか一項に記載の方法。
【請求項１１】
前記第三のテンプレート（Ｔ３）に関するデータが、アクティブノード上に作成されるべき各仮想ノードに対して、以下：
−仮想ネットワークの名前；
−ノードのタイプ；及び／又は
−インターネットプロトコルアドレス；及び／又は
−ＶＰＮトンネル、ＳＳＨトンネル、又は通信に必要な任意のトンネルの開設；
に関するデータを含むことを特徴とする、請求項１０に記載の方法。
【請求項１２】
サーバからアクティブノードに送信される仮想ノード作成の要求が、各アクティブノード上に作成されるべき仮想ノードに対するネットワークオペレーティングシステムに関する少なくとも１つの第四のテンプレート（Ｔ４）に関するデータを含むことを特徴とする、請求項１〜１１のいずれか一項に記載の方法。
【請求項１３】
前記第四のテンプレート（Ｔ４）に関するデータが、アクティブノード上に作成されるべき各仮想ノードに対して、以下：
−ネットワークオペレーティングシステムのタイプ；及び／又は
−前記オペレーティングシステムの名前；
に関するデータを含むことを特徴とする、請求項１２に記載の方法。
【請求項１４】
請求項１〜１３のいずれか一項に記載の方法によって得られる仮想通信ネットワーク（４０２、４０４、４０６）。
【請求項１５】
物理ノード（２０４，２０６，２０８，２１０）を含み、そして、インフラストラクチャネットワークと呼ばれる物理ネットワーク（２００）上で、特定のサービスに適合した少なくとも１つの仮想通信ネットワーク（４０２，４０４，４０６）を、オンザフライかつオンデマンドで生成するシステムであって、
ここで、前記特定サービスがリモートシステム間の通信であり、前記特定サービスがプロトコルスタックに関連づけられており、前記物理ノード（２０４，２０６，２０８，２１０）の各々が、前記物理ノード上で実行される少なくとも１つのネットワークオペレーティングシステム（ＮＯＳ）を作動させることができるハイパーバイザを含むものとする、前記システムであり、以下：
−前記特定サービスに従って生成されるべき前記仮想通信ネットワークに関するデータを生成するための、仮想ネットワークのサーバと呼ばれる、コンピュータデバイス（２０２）と；
−前記データに従って、シグナリングネットワークを介して、前記仮想ネットワークのサーバから、前記インフラストラクチャネットワーク（２００）の、アクティブノードと呼ばれる前記物理ノード（２０４，２０６，２０８，２１０）の少なくとも一部へ、仮想ノードを作成するための要求を送信する手段（２１２）と；
−前記アクティブノードの各々において仮想デバイス（１０４，１０６，１０８）をインストールすることによって、前記アクティブノードの各々に仮想ノードを作成する手段（１０２）であって、前記手段が前記物理ノードの前記ハイパーバイザを含み、各ハイパーバイザが、前記仮想ネットワークのサーバから受信した仮想ノード作成の要求に従って、仮想デバイスのインストールを行うようにコンフィギュアされており、前記インストールが、前記ハイパーバイザによってネットワークオペレーティングシステムインスタンスを生成する段階を含み、各ネットワークオペレーティングシステムインスタンスが特定サービスのプロトコルスタックに関連づけられており、このようにして作成された前記仮想ノードのセットから前記仮想ネットワークが構成される、前記手段（１０２）と；
を含む前記システム。
【請求項１６】
仮想ノードを作成する手段が、各アクティブノード上で実行される仮想マシンを含み、前記仮想マシンが、前記アクティブノードに１つ以上の仮想デバイスを起動するように配置されていることを特徴とする、請求項１５に記載のシステム。
【請求項１７】
前記仮想デバイスを、以下の仮想デバイス：
−仮想ルータ；
−仮想スイッチ；
−スイッチルータ又はラベルスイッチドルータ（ＬＳＲ）；
−ファイアウォール；及び
−仮想ボックス（ミドルボックス、ホームゲートウェイなど）；
から選択することを特徴とする、請求項１５又は１６に記載のシステム。
【発明の詳細な説明】
【発明の詳細な説明】
【０００１】
本発明は、仮想ネットワークをオンザフライかつオンデマンドで生成する方法に関する。本発明は、前記方法を実行するシステムにも関する。
【０００２】
本発明の分野は通信ネットワークの分野、そしてより詳細には仮想通信ネットワークの分野である。
【０００３】
コンピュータ技術において、仮想化とは、複数のオペレーティングシステム及び／又は複数のアプリケーションを、互いに他とは別に、単一のマシンで、それらが物理的に別個のマシンで動作しているかのように動作させることができるハードウエア及び／又はソフトウエア技術のセットであると一般的に定義されている。
【０００４】
このようにして、１つの物理ネットワークに複数の仮想ネットワークをインストールすることができ、仮想ネットワークの各々は物理マシンにインストールされた複数の仮想ノードから構成される。
【０００５】
現在、仮想ネットワークは、物理デバイスにネットワークの仮想ノードの各々を手動でインストールすることにより、手動でインストールされている。このことは、一方で仮想ノードの各々をインストール及びコンフィギュアするために、そして、他方で仮想ノードの各々を相互接続するために、大きな時間的支出を必要とする。
【０００６】
本発明の目的はこの欠点を克服することである。
【０００７】
本発明の別の目的は、完全に自動化された方法かつオンザフライで、１つ以上の仮想ネットワークをデプロイする方法及びシステムを提案することである。
【０００８】
完全に自動化された方法かつオンザフライで、特定のユーザに適合した、１つ以上の仮想ネットワークをデプロイする方法及びシステムを提案することも、本発明の目的である。
【０００９】
最後に、本発明の別の目的は、容易かつ迅速に１つ以上の仮想ネットワークをデプロイする方法及びシステムを提案することである。
【００１０】
本発明は、物理ノードを含み、そして、インフラストラクチャネットワークと呼ばれる物理ネットワーク上で、特定の用途に適合した少なくとも１つの仮想ネットワークを、オンザフライかつオンデマンドで生成する方法であって、
ここで、前記物理ノードの各々は少なくとも１つのネットワークオペレーティングシステムを実行するものとする、前記方法であり、
以下の各段階：
−仮想ネットワークサーバと呼ばれる少なくとも１つのコンピュータデバイス上で、前記特定の用途に従って生成されるべき前記仮想ネットワークに関するデータを決定する段階；
−前記データに従って、前記インフラストラクチャネットワークの、アクティブノードと呼ばれる前記物理ノードの少なくとも一部に仮想ノードを作成するための要求を送信する段階；及び
−前記アクティブノードの各々において仮想デバイスをインストールすることによって、前記アクティブノードの各々に仮想ノードを作成する段階であって、このようにして作成された前記仮想ノードのセットから前記仮想ネットワークが構成される前記段階；
を含む前記方法によって上記目的を達成することを提案する。
【００１１】
本発明に係る方法は、デプロイされるべき仮想ネットワークに関するデータに従って、仮想ネットワークサーバと呼ばれる物理コンピュータデバイスから、インフラストラクチャ物理ネットワークにおいて１つ以上の仮想ネットワークをデプロイすることを可能にする。
【００１２】
有利なことに、本発明の方法は、特定の用途又は特定の機能に適合した仮想ネットワークを作成することを可能にする。例えば、本発明に係る方法は、バンキング動作に適合しかつ高度のセキュリティを必要とする第１の仮想ネットワークをデプロイすることを可能にし、そして電気通信動作に適合しかつ高スループットを必要とする仮想ネットワークをデプロイすることを可能にする。
【００１３】
その上、本発明に係る方法を用いた仮想ネットワークのデプロイは、完全に自動化された方法でかつ人の介入なしに実施される。
【００１４】
更に、本発明に係る方法による仮想ネットワークのデプロイは容易かつ迅速に行われる。
【００１５】
本発明に係る方法は更に、仮想ノード作成の要求に応じて各仮想ノードをコンフィギュアする段階を含むことができる。従って、本発明に係る方法を用いて同じ仮想ネットワークの１つ以上のノードを別様にコンフィギュアすることができる。このことは、より柔軟な仮想ネットワークをオンザフライかつオンデマンドで作成することを可能にする。
【００１６】
仮想ネットワークサーバとアクティブ物理ノードの各々との間のデータ送信を、例えば、ＩＰ、ＵＤＰプロトコルのインターネットプロトコルを用いて仮想ネットワーク上で行うことができる。
【００１７】
本発明に係る方法の好ましいバージョンによれば、本発明に係る方法は、仮想ネットワークデバイスをコンフィギュアするためのデータを送信する段階を含むことができる。この好ましいバージョンにおいて、インフラストラクチャネットワークの各物理デバイスは、作成されるべき仮想ネットワークの仮想デバイスを作成するためにインストールされるべき１つ又は複数の仮想デバイスのコンフィギュアされていない１つ以上の「ブランク」のインスタンスを含む。受信したデータに従って仮想ネットワークデバイスのインスタンスがコンフィギュアされる。このバージョンにおいて、いかなるネットワークデバイスソフトウエアも送信されない。本発明に係る方法のこの好ましいバージョンは、ネットワークデバイスソフトウエアの各物理ノードへの送信を回避することを可能にして、送信すべきデータの容量を低減し、そして仮想ネットワークをより迅速にデプロイすることを可能にする。
【００１８】
本発明に係る方法の別のバージョンにおいて、本発明に係る方法は、少なくとも１つのコンピュータデバイスから各アクティブノードへ仮想デバイスソフトウエアを送信する段階を含むことができる。特定の実施態様において、対象としているコンピュータデバイスは、仮想ネットワークに関するデータが決定されるコンピュータデバイス、すなわち、仮想ネットワークサーバであることができる。仮想ネットワークの性質、及び／又は仮想ノードが作成されるべき物理ノードの性質、の必要に応じて、送信前に、インフラストラクチャネットワークの各物理ノードに送信される仮想デバイスをコンフィギュアすることができる。
【００１９】
特定の実施態様によれば、物理ノード上での仮想ノードの作成を、前記仮想ノードが作成される物理ノードにインストールされたハイパーバイザによって、行うことができる。
【００２０】
とりわけ有利な実施態様によれば、仮想ノードを作成するために物理ノードに仮想デバイスをインストールする段階は、ネットワークオペレーティングシステムインスタンスを生成する段階を含むことができる。仮想ノードが作成される物理ノードにおいて、前記オペレーティングシステムの生成を行うことができる。同じ仮想ネットワークの異なるノードに実行されたオペレーティングシステムは異なっていることができる。このように、第一のオペレーティングシステムの、例えば、Ｗｉｎｄｏｗｓ（商標）タイプの、インスタンスを用いて仮想ノードの一部を作成することができ、そして第二のオペレーティングシステムの、例えば、Ｌｉｎｕｘタイプの、インスタンスを用いて他の部分を作成することなどができる。
【００２１】
生成されるべき仮想ネットワークに関するデータは、仮想デバイスがインストールされる場所を記述する少なくとも１つの第一のテンプレートに関するデータを含むことができる。
【００２２】
前記第一のテンプレートに関するデータは、例えば、生成されるべき仮想ネットワークの仮想ノードが作成される物理ノードの名前を含むことができる。
【００２３】
有利には、サーバによって少なくとも１つの物理ノードに送信される仮想ノード作成の要求は、前記物理ノード上に作成されるべき前記仮想ノードに割り当てられるべき物理リソースを記述する少なくとも１つの第二のテンプレートに関するデータを含むことができ、これは作成されるべき仮想ノードごとに行われる。
【００２４】
前記第二のテンプレートに関するデータは、とりわけ、各仮想ノードに対して、以下：
−中央処理装置；
−記憶手段；
−少なくとも１つのネットワークインターフェース；
−少なくとも１つのＭＡＣアドレス；及び／又は
−少なくとも１つの物理リンクに仮想ノードを接続するのに必要な少なくとも１つのドライバ及び／又はブリッジ；
に関するデータを含むことができる。
【００２５】
更に、サーバによって少なくとも１つの物理ノードに送信される仮想ノード作成の要求は、生成されるべき仮想ネットワークを記述する少なくとも１つの第三のテンプレートに関するデータを含むことができる。
【００２６】
前記第三のテンプレートに関するデータは、作成されるべき各仮想ノードに対して、以下：
−仮想ネットワークの名前；
−ノードのタイプ；及び／又は
−インターネットプロトコルアドレス；及び／又は
−ＶＰＮトンネル、ＳＳＨトンネル、又は通信に必要な任意のトンネルの開設；
に関するデータを含むことができる。
【００２７】
有利には、サーバによって少なくとも１つの物理ノードに送信される仮想ノード作成の要求は、前記物理ノード上に作成されるべき仮想ノードに対するネットワークオペレーティングシステムに関する少なくとも第四のテンプレートに関するデータを含むことができる。
【００２８】
この第四のテンプレートは、作成されるべき各仮想ノードに対して、以下：
−ネットワークオペレーティングシステムのタイプ；及び／又は
−前記オペレーティングシステムの名前；
に関するデータを含むことができる。
【００２９】
本願において、用語「テンプレート」とは、データの表示モデルを意味する。
【００３０】
本発明は、本発明に係る方法により得られた仮想ネットワークにも関する。
【００３１】
本発明の別の観点によると、物理ノードを含み、そして、インフラストラクチャネットワークと呼ばれる物理ネットワーク上で、特定の用途に適合した少なくとも１つの仮想ネットワークを、オンザフライかつオンデマンドで生成するシステムであって、
ここで、前記物理ノードの各々が少なくとも１つのネットワークオペレーティングシステム（ＮＯＳ）を実行するものとする、前記システムであり、以下：
−生成されるべき前記仮想ネットワークに関するデータを生成するための、仮想ネットワークサーバと呼ばれる、コンピュータデバイスと；
−前記インフラストラクチャネットワークの、アクティブ物理ノードと呼ばれる前記物理ノードの少なくとも一部に仮想ノードを作成するための要求を送信する手段と；
−前記アクティブ物理ノードの各々において仮想デバイスをインストールすることによって、前記アクティブ物理ノードの各々に仮想ノードを作成する手段であって、このようにして作成された前記仮想ノードのセットから前記仮想ネットワークが構成される、前記手段と；
を含む前記システムを提案する。
【００３２】
有利には、仮想ノードを作成する手段は、ハイパーバイザと呼ばれるコンピュータプログラムを含むことができる。前記ハイパーバイザは、各物理ノード上で実行されるものであり、そして、仮想ネットワークサーバから受信した仮想ノード作成の要求に従って仮想コンピュータデバイスのインストレーションを行う。
【００３３】
以下の仮想コンピュータデバイス：
−仮想ルータと；
−仮想スイッチと；
−スイッチルータ又はラベルスイッチドルータ（ＬＳＲ；label-switched router）と；
−ファイアウォールと;
−仮想ボックス（ミドルボックス、ホームゲートウェイなど）と;
から仮想コンピュータデバイスを選択することができる。
【図面の簡単な説明】
【００３４】
本発明の他の利点及び特性は、全く限定的でない実施態様の詳細な説明及び添付の図面を検討することにより明らかとなるであろう：
−図１は、複数の仮想ノードがインストールされた物理ノードのアーキテクチャの模式図であり；
−図２は、４つの物理ノード及び仮想ネットワークサーバを含むインフラストラクチャネットワークの模式図であり；
−図３は、本発明に係る方法に従ってオンザフライかつオンデマンドで仮想ネットワークを作成する例の各段階の模式図であり；そして
−図４は、図３の方法に従って３つの仮想ネットワークが作成された、図２のインフラストラクチャネットワークの模式図である。
【００３５】
これらの図面中、複数の図面に共通するエレメントには同じ参照番号が付与されている。
【００３６】
図１は、物理ノードに複数の仮想ノードをインストールすることを可能にする物理ネットワークの物理ノード上の仮想化アーキテクチャの模式図である。
【００３７】
図１に示した物理ノード１００は仮想化ソフトウエア１０２を含み、前記仮想化ソフトウエアは、本例において、物理ノード１００のハードウエア上で直接に作動するＸＥＮソフトウエアであり、ハイパーバイザと呼ばれるものである。ＸＥＮソフトウエアは、あらゆるハイパーバイザソフトウエアと同様に、物理ノード１００上で複数のネットワークオペレーティングシステム（ＮＯＳ）を作動させることができ、これらのオペレーティングシステムの各々が仮想ノードを構成する。
【００３８】
図１に示した例において、物理ノード１００に３つの仮想ノード１０４、１０６、１０８がインストールされる。各オペレーティングシステムは、ＸＥＮ１０２ハイパーバイザソフトウエアとインターフェースすることを可能にするＸＥＮドライバを含んでいる。
【００３９】
仮想ノード１０４〜１０８をサポートするネットワークオペレーティングシステム（ＮＯＳ）は、同一であるか又は相異なっていることができ、例えば、Ｗｉｎｄｏｗｓ、Ｌｉｎｕｘ、ＮｅｔＢＳＤ、ＦｒｅｅＢＳＤ又は他のオペレーティングシステムであることができる。
【００４０】
本例において、仮想ルータ１０４〜１０８はＸＯＲＰルータプラットフォーム（Extensible Open Router Platform）である。
【００４１】
物理ノードは更に、物理周辺機器１１０並びに制御ソフトウエア及びドライバ１１２を含んでいる。
【００４２】
図２は、シグナリングネットワーク２１２の役割を果たす特定の仮想ネットワークによって相互接続された４つの物理ノード２０４〜２１０、仮想ネットワークサーバと呼ばれる物理コンピュータデバイス２０２を含む、インフラストラクチャネットワーク２００の模式図である。
【００４３】
図２に示した例において、物理ノード２０４〜２１０は、図１に示した物理ノード１００のような物理ノードである。
【００４４】
次に、図２〜４を参照して、完全に自動化された方式による、オンデマンドかつオンザフライでの、複数の仮想ネットワークの作成を説明する。明確にするため、作成されるべき仮想ネットワークは仮想ルータだけを含んでいると仮定する。
【００４５】
従って、各物理ノードは、前記物理ノードに複数の仮想ルータをインストールすることができるように配置される。このために、物理ノード２０４〜２１０は各々、仮想コンピュータデバイスの「保管タンク（reservoir）」、より詳細には、コンフィギュアされていない仮想ノードの保管タンク、すなわち、保管タンク２０４０、２０６０、２０８０及び２１００を含んでいる。これらの保管タンクは、１つ以上の特定の用途、すなわち、バンキング動作、電気通信動作、又はその他に従ってコンフィギュアされる準備のできた１つ以上のコンピュータデバイスのインスタンスを含んでいる。
【００４６】
各保管タンクは、多かれ少なかれセキュリティを、多かれ少なかれサービス品質を、多かれ少なかれモビリティ管理などを備えた種々のアプリケーションに対応するプロトコルスタックに関連づけられたネットワークオペレーティングシステムと共に必要な数量の仮想ルータを備えている。
【００４７】
特定のプロトコルスタックをサポートするネットワークオペレーティングシステム及び従って物理ノード２０４〜２１０の各々において利用可能な特定の仮想ルータインスタンスは、特定のクライアント又は特定の企業及びアプリケーションに対応している。
【００４８】
仮想ルータ２０４０、２０６０、２０８０及び２１００の種々の保管タンクの構成を以下のようにして行うことができる。それらの種々のアプリケーションに対応するプロトコルスタックに関連づけられたそれらのネットワークオペレーティングシステムと共にコンフィギュアされていないそれらの種々の仮想ルータを、仮想ルータネットワークサーバ２０２内に予めインプットしておくことができる。図２において中央に集めて示されているが分配されていることもできるサーバ２０２は、仮想ルータをそれらのインアクティブネットワークオペレーティングシステムと共に物理ネットワークの異なるノードに転送して、それらの種々のアプリケーションに関連づけられたプロトコルスタックを有さない仮想ルータ２０４０、２０６０、２０８０及び２１００の保管タンクを構成する。
【００４９】
種々のアプリケーションに関連づけられたプロトコルスタックを、仮想ネットワークサーバ２０２の階層で、プロトコルスタックの保管タンク２０２０に保存させる。様々の物理ノード２０４〜２１０のハイパーバイザと相互に接続することができるシグナリングネットワーク２１２を用いて、仮想ネットワークサーバ２０２から様々の物理ノード２０４〜２１０へ仮想ルータの転送を行う。
【００５０】
図３を参照するに、ユーザ又は企業が、シグナリングネットワーク２１２を介して、仮想ネットワークサーバ２０２に要求３０２を送信して、オンザフライで仮想ネットワークをインストールするように要求することにより仮想ネットワークサーバ２０２に特定のサービスに関連づけられたデータを送信させる場合に、以下の段階が自動的に実施される。
【００５１】
作成されるべき仮想ネットワークに関するデータを生成する段階３０４において：仮想ネットワークサーバは、特定のサービスに対応する仮想ルータ、前記仮想ルータをインフラストラクチャネットワーク２００にインストールする物理ルータ及びこの仮想ネットワークに割り当てられるべき物理リソースを選択し、そしてこれらの選択に関するデータを生成する。
【００５２】
仮想ルータを選択するためのアルゴリズム、それらのインストレーションのための物理ルータ及び物理リソースは、例えば、以下の通りであることができる：仮想ネットワークサーバは、例えば、提供されるべきサービスのタイプ、届けられるべきクライアントの数又は実施されるべきセキュリティの仮想ネットワークの作成に対してユーザによって与えられる情報を用いることによって仮想ルータの選択を決定する。次いで、仮想ネットワークサーバは、物理ネットワークの物理リンクの状態を考慮に入れるシグナリングネットワーク上で、例えば、ＯＳＰＦタイプの、ルーティングアルゴリズムを作動させる。仮想ネットワークサーバは、そこから、仮想ルータをインストールすべき物理ルータを演繹する。最後に、実行されるべきサービスについてユーザによって与えられる情報になお基づいて、仮想ネットワークサーバはそこから各仮想ルータに必要なリソースを演繹する。
【００５３】
次いで、仮想ネットワークサーバ２０２は、テンプレートを定義する段階３０６を実行する：行われた選択に関するデータに従って、仮想ネットワークサーバは次の４つのテンプレートを生成する：
○仮想ネットワークを提供するために種々の仮想デバイスがインストールされるカードを記述する第一のテンプレートＴ１：インストレーションのための物理ノードの名前、及び仮想ルータの名前；
○仮想ルータに割り当てられるべきハードウエアを記述する、第二の物理テンプレートＴ２：ＣＰＵ（中央処理装置）、メモリ、ネットワークインターフェース及びそれらのＭＡＣアドレス、物理リンク上で仮想ルータを接続するのに必要なブリッジ及びドライバ；
○種々の仮想デバイスと共にインストールされる仮想ネットワークを決定する第三のテンプレートＴ３：仮想ネットワークの名前、ノードのタイプ（本例ではルータである）、仮想ネットワークの動作に必要なリソースのコンフィギュレーション及び必要なＩＰアドレスの定義、実行すべきＶＰＮ又はＳＳＨトンネルの定義など；及び
○ネットワークオペレーティングシステムのための第四のテンプレートＴ４：ＮＯＳのタイプ、オペレーティングシステムに用いられる名前など。
【００５４】
仮想ネットワークサーバ２０２は、仮想ネットワークをインストールするために前記４つのテンプレートを用いる。第一のテンプレートＴ１は、仮想デバイスがインストールされるネットワークのノードを決定する。これは、サーバによって送信される要求のデスティネーションを定義して仮想ネットワークをインストールする。
【００５５】
他の３つのテンプレートＴ２〜Ｔ４は、ネットワークにインストールされるべき仮想デバイスを完全に決定する。
【００５６】
次いで、仮想ネットワークサーバ２０２は、特定のアプリケーションに関連づけられた仮想ネットワークのインストレーションに関与する種々の物理ノードのハイパーバイザに、シグナリングネットワーク２１２を介して要求を送信する段階３０８を実行する。この要求は、上記した最後の３つのテンプレートＴ２〜Ｔ４によって定義された、設定されるべき特定の仮想ルータを要求する。
【００５７】
仮想ルータをコンフィギュアする段階３１０は、仮想ネットワークサーバ２０２からの要求を受信した物理ノードの各々において実行される。コンフィギュアされていない仮想ルータインスタンスはインフラストラクチャネットワーク２００の各物理ノード２０４〜２１０において利用可能であるので、仮想ネットワークサーバ２０２上のプロトコルスタックの保管タンク２０２０内に位置する選択されたアプリケーションに関連づけられたプロトコルスタックに仮想ルータのインストレーションの要求を添えるだけで足りる。
【００５８】
典型的なコンフィギュレーションに必要なデータはたかだか数キロバイトであるので、転送コストはほとんどゼロである。必要に応じてこれらのデータを圧縮してなお更にそのサイズを小さくすることができる。
【００５９】
各仮想ルータのコンフィギュレーションが設定されると、その特定の仮想ネットワークは、特定された１つ又は複数の機能について１又は複数のクライアントに供給するために動作できる状態になる。このネットワークのインストレーション時間は無視できるものであり数百ミリ秒間又は数秒間を費やすだけである。
【００６０】
図示した例において、図４を参照するに、３つの仮想ネットワークが図２におけるインフラストラクチャネットワーク２００上に作成されている。２つの仮想ルータ２０４２及び２０４４が物理ノード２０４にインストールされ、２つの仮想ルータ２０６２及び２０６４が物理ノード２０６にインストールされ、３つの仮想ルータ２０８２、２０８４及び２０８６が物理ノード２０８にインストールされ、そして、３つの仮想ルータ２１０２、２１０４及び２１０６が物理ノード２１０にインストールされる。物理ノード２０２に仮想ルータはインストールされない。
【００６１】
仮想化によって、ノード２０２〜２１０から構成される物理ノードのネットワークは３つの仮想ネットワーク：４０２、４０４及び４０６がインストールされるのを可能にし、各仮想ネットワークは特定のサービスに適合する。
【００６２】
３つの仮想ネットワーク４０２、４０４及び４０６は、以下：
−物理ノード２０４上に２つの仮想ルータ；
−物理ノード２０６上に２つの仮想ルータ；
−物理ノード２０８上に３つの仮想ルータ；及び
−物理ノード２１０上に３つの仮想ルータ；
の作成を必要とした。
【００６３】
仮想ネットワーク４０２〜４０６の各々は他の仮想ネットワークに対して分離されている。更に、このようにして作成された仮想ネットワークを、既存の物理的又は物理的でないいずれのネットワークにも接続することができる。
【００６４】
仮想ネットワークサーバ２０２は従来型のコンピュータサーバであり、前記サーバでは、ネットワークインフラストラクチャオペレータが提供することのできる全てのサービスを満たすのに必要な全てのルータソフトウエアインスタンスをデータベースが含んでいる。サーバ２０２はオペレーティングシステムを備えており、前記オペレーティングシステムは、全く典型的なタイプであり、そして、上記した４つのテンプレートを満たすことができる全てのデータを決定するのに必要なアルゴリズムを実行することが必要とされている。
【００６５】
前記方法は、アプリケーションにそのパラメータを提供するために必要な特性と共に、仮想ネットワークをオンザフライでデプロイすることを可能にするが、それはデプロイされたプロトコルを適合させることができるからである。
【００６６】
仮想ネットワークを互いに他から分離することにより、それらのネットワークが相互に閉じられていると考えることができ、また、他の仮想ネットワーク上を通過する如何なるものも、対象とするネットワークに何ら影響を与えないと考えることができる。
【００６７】
とりわけ、仮想ネットワークが企業のネットワークに接続されている場合、前記仮想ネットワークは前記企業のネットワークと同じセキュリティ及び同じ特徴を有する前記企業のネットワークの延長であると考えられる。とりわけ、ネットワークの延長は、当前記企業のネットワークのノードと正確に同じ方法によって管理され及び制御される。仮想ネットワークに対応するプロトコルレイヤがいったんデプロイされれば、ユーザ末端はオンザフライでデプロイされたネットワーク上の通信を実行するのに必要な特性を保証することができる。
【００６８】
従って、本発明は、自動的に又はオンザフライでデプロイすることができるネットワークのインストレーションを可能にし、アドホック特性を伴ってデータを送信して、即時に特定のサービスのプロビジョニング（realisation）に適合した通信を実行することを可能にする。例えば、ユーザ自身の携帯型コンピュータ末端、スマートフォン又はＰＤＡから、接続性が得られる場所で、自分の銀行と通信したいユーザが、オンザフライで特定のネットワークを構築して、前記ネットワークに固有でありかつその通信に対して必要な特性（セキュリティ、サービス品質、関連づけられたリソースなど）に適合するプロトコルスタックによって全く安全にリモートシステムでバンキング通信を行えるようにすることができる。ユーザの要求の後、仮想ネットワークサーバはユーザの要求に適合するネットワーク（通信ソフトウエア、ネットワークオペレーティングシステム、固有のプロトコルレイヤ）をインストールする。この仮想ネットワーク及びそのプロトコルは、例えば、銀行によって推奨されたものであることができる。
【００６９】
別の例は、極めて高品質で安全な電話通信を行うことを希望するユーザに対応するものである。この目的に対して、ユーザはこの機能に適合した仮想ネットワークをデプロイする要求を発信する。仮想ネットワークサーバは即時に、ＴｏＩＰ（ＩＰ上のテレフォニ）パケット転送に適合したリソースを用いて特定のネットワークをインストールする。
【００７０】
第三の例は、ホテルでセミナーを開催する企業であって、ホテル内までその企業のネットワークを延長することを希望する企業が、当前記企業のシステムエンジニアによってこのネットワークの要素を管理及び制御することができるように本発明を用いることによってこの延長を即時にインストールすることができる例である。
【００７１】
最後に、最後の例は、即時にネットワークをインストールしてフットボールの試合の放送をライブで受信しようとするあらゆるユーザに対してその試合を放送したいと望むオーディオビジュアルオペレータの例である。
【００７２】
換言すれば、本発明は、標準又は私有のプロトコルスタックを有する全てのネットワークのセットであって、相互に独立しているが同じ物理インフラストラクチャを共有するユーザによって要求される特定のアプリケーションに適合した全ての前記ネットワークのセットを、オンザフライかつオンデマンドで、開くことを可能にする。
【００７３】
もちろん、本発明はここに説明してきた例に限定されるものではない。仮想ネットワークサーバを分散させることができる。仮想ノードは仮想ルータに限られるものではなく、あらゆる既知のノードタイプ、すなわち、ゲートウェイ、ファイアウォールなどであることができる。
【図１】
0005671022.tif 000002
【図２】
0005671022.tif 000003
【図３】
0005671022.tif 000004
【図４】
0005671022.tif 000005