(57)【特許請求の範囲】
【請求項１】
プライベート企業ネットワーク内のソースから受信されたパケットを、プライベート企業ネットワークに割り当てられたクラウドネットワーク内の宛先に送信する方法であって、
クラウドネットワーク内のクラウドデータセンタ内の論理顧客エッジルータによって、プライベート企業ネットワーク内のソースからのレイヤ２パケットを受信するステップであって、論理顧客エッジルータが、プライベート企業ネットワークに割り当てられた資源を備えるクラウドネットワーク内の論理ネットワーク内に位置する、ステップと、
論理顧客エッジルータによって、ディレクトリサーバに宛先のＭＡＣアドレスおよびロケーションＩＰアドレスを問い合わせるステップと、
論理顧客エッジルータが、その宛先が論理ネットワーク内にあると判定するときに、その論理顧客エッジルータによって、受信レイヤ２パケットをカプセル化するステップであって、受信レイヤ２パケットが宛先の対応するＭＡＣアドレスヘッダとカプセル化される、ステップと、
論理顧客エッジルータによって、その宛先の対応するロケーションＩＰヘッダと受信レイヤ２パケットをさらにカプセル化するステップと、
受信レイヤ２パケットを宛先ロケーションＩＰアドレスを介して宛先ＭＡＣアドレスに転送する論理顧客エッジルータによって、受信レイヤ２パケットをその宛先に転送するステップと
を備える、方法。
【請求項２】
宛先のロケーションＩＰアドレスにあるスイッチによって、受信レイヤ２パケットのロケーションＩＰヘッダをカプセル開放するステップと、
宛先スイッチによって、受信レイヤ２パケットを宛先のＭＡＣアドレスに転送するステップと、
宛先のＭＡＣアドレスにある宛先サーバによって、受信レイヤ２パケットのＭＡＣヘッダをカプセル開放するステップと、
宛先サーバによって、宛先サーバ内の宛先にレイヤ２パケットを転送するステップと
をさらに備える、請求項１に記載の方法。
【請求項３】
宛先サーバ内のハイパーバイザによって、受信レイヤ２パケットが同じ企業からであることを確認するステップであって、ハイパーバイザが受信レイヤ２パケットのヘッダ内のセキュリティトークンを検査する、ステップと、
ハイパーバイザによって、レイヤ２パケットのセキュリティトークンが確認されないときに、そのレイヤ２パケットを捨てるステップであって、セキュリティトークンが少なくとも企業特有の鍵、企業ＩＤ、および宛先ＩＰアドレスを備える、ステップと
をさらに備える、請求項２に記載の方法。
【請求項４】
宛先サーバ内のハイパーバイザによって、受信レイヤ２パケットが同じＶＬＡＮからであることを確認するステップであって、レイヤ２パケットのＭＡＣアドレスヘッダ内のＶＬＡＮタグを分析するハイパーバイザによって実行される、ステップと、
その宛先が同じＶＬＡＮに属しないときに、ハイパーバイザによって、そのレイヤ２パケットを捨てるステップと、
その宛先が同じＶＬＡＮに属するときに、ハイパーバイザによって、レイヤ２パケットからＭＡＣアドレスヘッダを取り除くステップと、
ハイパーバイザによって、その宛先にレイヤ２パケットを転送するステップと
をさらに備える、請求項２に記載の方法。
【請求項５】
プライベート企業ネットワーク内のソースから受信されたパケットを、プライベート企業ネットワークに割り当てられたクラウドネットワーク内の宛先に送信する方法であって、
クラウドネットワーク内のクラウドデータセンタ内の論理顧客エッジルータによって、プライベート企業ネットワーク内のソースからのレイヤ２パケットを受信するステップであって、論理顧客エッジルータが、プライベート企業ネットワークに割り当てられた資源を備えるクラウドネットワーク内の論理ネットワーク内に位置する、ステップと、
論理顧客エッジルータによって、ディレクトリサーバに宛先のＭＡＣアドレスと、ロケーションＩＰアドレスおよび、クラウドＩＰアドレスを問い合わせるステップと、
論理顧客エッジルータが、その宛先が論理ネットワーク内にあると判定するときに、その論理顧客エッジルータによって、受信レイヤ２パケットをカプセル化するステップであって、受信レイヤ２パケットが宛先の対応するＭＡＣアドレスヘッダ、宛先のクラウドＩＰヘッダ及び、宛先のロケーションＩＰヘッダとカプセル化される、ステップと、
論理顧客エッジルータにより、レイヤ２パケットを宛先ロケーションＩＰアドレスを介して宛先クラウドＩＰアドレスに転送するステップと、
宛先のロケーションＩＰアドレスにあるスイッチによって、受信レイヤ２パケットのロケーションＩＰヘッダをカプセル開放するステップと、
宛先スイッチによって、受信レイヤ２パケットを宛先のクラウドＩＰアドレスに転送するステップと、
宛先のクラウドＩＰアドレスにある宛先サーバによって、受信レイヤ２パケットのクラウドＩＰヘッダをカプセル開放するステップと、
宛先サーバによって、宛先サーバ内の宛先にレイヤ２パケットを転送するステップと
を備える、方法。
【請求項６】
プライベート企業ネットワークに割り当てられたクラウドネットワーク内のソースに由来するパケットを転送する方法であって、
プライベート企業ネットワークに割り当てられた資源を備えるクラウドネットワーク内の論理ネットワーク内に置かれたソース仮想機械をホスティングするサーバ内のハイパーバイザによって、レイヤ２パケットを受信するステップと、
そのサーバにある仮想経路指定および転送テーブル内にレイヤ２パケットの宛先アドレスがないときに、ハイパーバイザによって、論理ネットワーク内のディレクトリサーバに宛先アドレスを問い合わせるステップと、
ディレクトリサーバから受信されたＭＡＣアドレスエントリに対応するＭＡＣヘッダとレイヤ２パケットを、ハイパーバイザによって、カプセル化するステップと、
ディレクトリサーバから受信された宛先のクラウドＩＰアドレスに対応するロケーションＩＰヘッダとレイヤ２パケットを、ハイパーバイザによって、さらにカプセル化するステップと、
ハイパーバイザによって、レイヤ２パケットを宛先ロケーションＩＰアドレスを介して宛先ＭＡＣアドレスに転送するステップと
を備える、方法。
【請求項７】
クラウドネットワーク内のクラウドデータセンタ内の論理顧客エッジルータによって、パケットのロケーションＩＰヘッダをカプセル開放するステップと、
ディレクトリサーバ内に宛先についてのエントリが存在するときに、論理顧客エッジルータによって、第１のＭＡＣヘッダを宛先ＭＡＣアドレスに対応する第２のＭＡＣヘッダで置換するステップと、
ディレクトリサーバ内に宛先についてのエントリが存在するときに、論理顧客エッジルータによって、第２のＭＡＣヘッダをもつレイヤ２パケットを宛先ＭＡＣアドレスにトンネリングするステップと、
仮想経路指定および転送テーブル内に宛先についてのエントリが存在しないときに、論理顧客エッジルータによって、第１のＭＡＣアドレスをＭＡＣブロードキャストヘッダで置換するステップと、
仮想経路指定および転送テーブル内の宛先についてのエントリが存在しないときに、論理顧客エッジルータによって、ＭＡＣブロードキャストヘッダをもつレイヤ２パケットをプライベート企業ネットワーク内の各顧客エッジルータにトンネリングするステップと
をさらに備える、請求項６に記載の方法。
【請求項８】
ハイパーバイザによって、企業特有の鍵、企業ＩＤ、および宛先ＩＰアドレスの組合せを備えるセキュリティトークンを計算するステップと、
ハイパーバイザによって、パケットをセキュリティトークンとカプセル化するステップと
をさらに備える、請求項６に記載の方法。
【請求項９】
プライベート企業ネットワーク内の宛先にある顧客エッジルータによって、ＭＡＣヘッダをカプセル開放するステップと、
宛先にある顧客エッジルータによって、受信パケットのヘッダ内のセキュリティトークンを確認して捨てるステップと、
セキュリティトークンが確認されないときに、宛先にある顧客エッジルータによって、受信パケットを捨てるステップと
をさらに備える、請求項８に記載の方法。
【請求項１０】
ディレクトリサーバから受信された宛先のクラウドＩＰアドレスに対応するクラウドＩＰヘッダとレイヤ２パケットを、ハイパーバイザによって、さらにカプセル化するステップと、
クラウドデータセンタ内の論理顧客エッジルータによって、パケットのクラウドＩＰヘッダをカプセル開放するステップと
をさらに備える、請求項８に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書で開示される実施形態は、概してネットワーク基盤およびインターネット通信に関する。
【背景技術】
【０００２】
クラウドコンピューティングネットワークは、クラウドコンピューティングプロバイダがインターネットを介して顧客に資源を提供することを可能にする、高度にスケーラブルな、動的サービスである。クラウド基盤は、要求される資源を提供するクラウド内の特定の基盤の知識を顧客が必要としないような、抽象化レイヤを提供する。かかるサービスは、顧客が、日常使用のためのプライベート企業ネットワーク内に既に配置された基盤を使用しながら、重い負荷にクラウドでの余剰資源を使用することができるため、最大使用のための余剰ハードウェアへの資本的支出を消費者が回避するのを助ける。
【０００３】
たとえば、ＩａａＳ（ｉｎｆｒａｓｔｒｕｃｔｕｒｅ  ａｓ  ａ  ｓｅｒｖｉｃｅ）などのシステムは、顧客が彼ら自身のコンピュータアプリケーションを走らせるためのコンピュータを賃借することを可能にする。かかるシステムは、顧客が仮想機械、即ち彼らの選択したソフトウェアを走らせるためのサーバインスタンス、を作成する、資源のスケーラブルな配備を可能にする。顧客は必要に応じこれらの仮想機械を作成、使用、および壊すことができ、プロバイダは通常は使用されるアクティブなサーバについて課金する。
【０００４】
しかし、既存のサービスは、プライベート企業ネットワーク内の資源のような割り当てられた資源を扱わない。これは、たとえば、アプリケーションがネットワーク内の特定の場所にデータを送信するとき、または内部ネットワークおよびクラウドネットワークが異なるアドレス空間またはアドレス指定方式を使用するときに、問題を引き起こすことがある。悪意ある攻撃からクラウド資源を隔離すること、および、クラウドネットワーク資源への接続が内部ネットワーク基盤を危険にさらさないことを確実にすることに関連する問題も存在する。加えて、顧客は、内部およびクラウドの両方の場所からの資源を同等に扱う代わりに、内部およびクラウド資源の別個のセットを扱う際にさらなる複雑性に直面することがある。
【０００５】
したがって、クラウドネットワーク内の顧客に割り当てられた資源を顧客の既存のプライベート企業ネットワークにシームレスに組み込むためのＩａａＳを越えるニーズが存在する。かかる拡張は、すべての割り当てられたクラウド資源をプライベート企業ネットワーク内に置かれた資源と同様に見るおよび動作させることになろう。かかる実装は、企業の作業負荷を専用のプライベート企業ネットワークの資源およびクラウドトポロジの割り当てられた資源の動的混合を介してシームレスに広がることを可能にすることになる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述に関して、クラウドネットワークの資源を含むプライベート企業ネットワークをシームレスに拡張することが望ましくなろう。さらに具体的には、顧客がプライベートネットワーク上の資源と同じ形でクラウド資源を取り扱うことができるように、プライベート企業ネットワーク内の資源とクラウドネットワーク内の割り当てられた資源の間の通信を可能にすることが望ましくなろう。その他の望ましい態様は、本明細書を読んで理解すれば、当業者には明らかであろう。
【課題を解決するための手段】
【０００７】
クラウドネットワークへのプライベート企業ネットワークのシームレスな拡張への現在のニーズを踏まえて、さまざまな例示的実施形態の簡単な概要が提示される。いくらかの単純化および省略が以下の概要で行われることがあるが、これは、さまざまな例示的実施形態のいくつかの態様を強調し、紹介するためのものであり、本発明の範囲を限定するものではない。当業者が本発明の概念を行い、使用できるようにするのに適した好ましい例示的実施形態の詳細な説明が以下の項で続くことになる。
【０００８】
さまざまな実施形態は、プライベート企業ネットワーク内のソースから受信されたパケットを、そのプライベート企業ネットワークに割り当てられたクラウドネットワーク内の宛先に送信する方法に関する。本方法は、クラウドネットワーク内のクラウドデータセンタ内の論理顧客エッジルータで、プライベート企業ネットワーク内のソースからのレイヤ２パケットを受信するステップを含むことがあり、クラウドデータセンタは、プライベート企業ネットワークに割り当てられた資源を備えるクラウドネットワーク内の論理ネットワークである。本方法はさらに、クラウドデータセンタ内の論理顧客エッジルータによって、ディレクトリサーバに宛先のＭＡＣアドレスおよびロケーションＩＰアドレスを問い合わせるステップと、クラウドデータセンタ内の論理顧客エッジルータが、その宛先が論理ネットワーク内にあると判定するときに受信レイヤ２パケットをカプセル化するステップであって、受信されたレイヤ２パケットが宛先の対応するＭＡＣアドレスヘッダとカプセル化される、ステップと、宛先の対応するロケーションＩＰヘッダと受信レイヤ２パケットをさらにカプセル化するステップと、受信レイヤ２パケットを宛先ロケーションＩＰアドレスを介して宛先ＭＡＣアドレスに転送する論理顧客エッジルータによって、受信レイヤ２パケットを宛先に転送するステップとを含み得る。
【０００９】
さまざまな実施形態はまた、プライベート企業ネットワークに割り当てられたクラウドネットワーク内のソースに由来するパケットを転送する方法に関し得る。本方法は、プライベート企業ネットワークに割り当てられた資源を備えるクラウドネットワーク内の論理ネットワーク内に置かれた仮想機械をホスティングするサーバ内のハイパーバイザが、レイヤ２パケットを受信するステップと、サーバにある仮想経路指定および転送テーブル内にそのレイヤ２パケットの宛先アドレスがないときに論理ネットワーク内のディレクトリサーバに宛先アドレスを問い合わせるステップと、そのディレクトリサーバから受信されたＭＡＣアドレスエントリに対応するＭＡＣヘッダとレイヤ２パケットをカプセル化するステップと、ディレクトリサーバから受信されたその宛先のクラウドＩＰアドレスに対応するロケーションＩＰヘッダとレイヤ２パケットをさらにカプセル化するステップと、そのレイヤ２パケットをその宛先ロケーションＩＰアドレスを介して宛先ＭＡＣアドレスに転送するステップとを含み得る。
【００１０】
さまざまな実施形態はまた、プライベート企業ネットワーク内の少なくとも１つの顧客エッジルータに接続する論理顧客エッジルータと、プライベート企業ネットワークに割り当てられた仮想機械をホスティングし、プライベート企業ネットワーク内のロケーションおよびクラウドネットワーク内のロケーションの間でレイヤ２パケットを送信するサーバとに関することがあり、その論理顧客エッジルータ、仮想機械、およびプライベート企業ネットワーク内の顧客エッジルータは、共通ＩＰアドレス空間とプライベート企業ネットワークに割り当てられたＶＬＡＮとを共用する。
【００１１】
前述によれば、さまざまな例示的実施形態は、クラウド資源を企業の私用アドレス空間内に置き、それによってシームレスにクラウド資源を企業の既存のトポロジに統合する。さまざまな実施形態はまた、ネットワークの外の資源とは分離された、企業ネットワークのセキュリティ境界の内側にクラウド資源を置くことによって、セキュリティを確保する。顧客はそれによって、彼または彼女が企業ネットワークの内部資源を構成および管理するのと同じ方式で、クラウド資源を構成することができる。これらの利益に加えて、さまざまな実施形態はまた、クラウドコンピューティングパラダイムの利点、即ち、クラウド資源の高度に動的なスケーラビリティを維持する。
【００１２】
実施形態による装置および／または方法のいくつかの実施形態がここで、以下の添付の図面を参照して、例としてのみ、記載される。
【図面の簡単な説明】
【００１３】
【図１】プライベート企業ネットワークをクラウドネットワークに拡張する例示的ネットワークの概略図である。
【図２】Ｌ２プロトコルを使用する二重カプセル化されたパケットの転送の概略図である。
【図３】ｅｔｈｅｒＩＰおよびＶＬＡＮ変換を使用するパケットの転送の概略図である。
【図４】拡張された企業ネットワーク内に見られるネットワークデバイスの例示的な仮想経路指定および転送テーブルの概略図である。
【図５】クラウドネットワークで見られるネットワークデバイスのロケーションエントリの例示的ディレクトリテーブルの概略図である。
【図６】拡張された企業ネットワークを介して送信される例示的データグラムの内容を示す概略図である。
【図７】プライベート企業ネットワーク内のロケーションからクラウドネットワーク内の宛先にパケットを送信する方法の例示的一実施形態の流れ図である。
【図８】クラウドネットワーク内部のロケーションからパケットを送信する方法の例示的一実施形態の流れ図である。
【発明を実施するための形態】
【００１４】
ここで図面を参照すると、同様の数字は同様の構成要素またはステップを参照し、さまざまな例示的実施形態の開示される幅広い態様がある。
【００１５】
図１は、プライベート企業ネットワークをクラウドトポロジに拡張するための例示的なネットワーク１００の概略図である。さまざまな例示的実施形態で、ネットワーク１００は、プライベート企業ネットワーク１０１と、サービスプロバイダネットワーク１０２と、クラウドネットワーク１０３と、顧客エッジ（ＣＥ）デバイス１１０ａ−ｈと、プロバイダエッジデバイス１１１ａ−ｈと、クラウドデータセンタＣＥ１１２と、データセンタ相互接続１１３と、それぞれがハイパーバイザ１１５ａ−ｄおよび仮想機械１１６ａ−ｄを収容するサーバ１１４ａ−ｄとを含む。
【００１６】
プライベート企業ネットワーク１０１、サービスプロバイダネットワーク１０２、およびクラウドネットワーク１０３は、それぞれパケット交換ネットワークでもよい。かかるパケット交換ネットワークは、パケットベースのプロトコルにしたがって動作する任意のネットワークでもよい。したがって、ネットワーク１０１、１０２、１０３はそれぞれ、たとえば、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）、マルチプロトコルラベルスイッチング（ＭＰＬＳ）、非同期転送モード（ＡＴＭ）、フレームリレー、イーサネット（登録商標）、プロバイダバックボーントランスポート（ＰＢＴ）、または、当業者には明らかとなろう任意の他の適切なパケットベースのプロトコルにしたがって、動作することができる。さらに具体的には、パケット交換ネットワーク１０１、１０２、１０３は、ＭＰＬＳなどのレイヤ３プロトコルを使用して仮想プライベートネットワーク（ＶＰＮ）として通信することができる。
【００１７】
プライベート企業ネットワーク１０１は、顧客エンティティの専用のハードウェアを組み込むネットワークでもよく、その企業内のデバイスが同じアドレス空間を占有するように、構成され得る。プライベート企業ネットワーク１０１内のデバイスは、共通仮想ローカルエリアネットワーク（ＶＬＡＮ）を共用することができる。例示的一実施形態で、プライベート企業ネットワーク１０１は、一連の顧客エッジ（ＣＥ）デバイス１１０ａ−ｅを含む。
【００１８】
図１に示す実施形態で、プライベート企業ネットワークＡ（ＥｎｔＡ）は、サービスプロバイダネットワーク１０２を介して互いに通信する２つの異なるサイトに置かれた顧客エッジデバイス１１０ａ−ｅを含む。いくつかの実施形態で、プライベート企業ネットワーク１０１は、同じ物理サイトで互いに直接接続するデバイスを含み得る。
【００１９】
プライベート企業ネットワーク１０１内のデバイスは、たとえば、ＶＬＡＮを共用し、同じアドレス空間を共用することができる。プライベート企業ネットワーク１０１内のすべてのデバイスは、ネットワークセキュリティがセキュリティ境界外部のデバイスからセキュリティ境界内部のデバイスを隔離し、セキュリティ境界線でいくつかの許可された通信を制御することができるように、同じセキュリティ境界の後ろに位置し得る。これは、顧客エッジデバイス１１０ａ−ｆのようなデバイスが、セキュリティ境界を横切ることに関連する予防措置を実装する必要なしに、自由にトラフィックを渡すことを可能にする。
【００２０】
サービスプロバイダネットワーク１０２は、プライベート企業ネットワーク１０１へのホストとして動作することができる。サービスプロバイダネットワーク１０２は、一連のプロバイダエッジ（ＰＥ）デバイス１１１ａ−ｈを含み得る。サービスプロバイダネットワーク１０２は、とりわけ、クラウドネットワーク１０３、他のプライベート企業ネットワーク、またはインターネットなどの他のネットワークとプライベート企業ネットワーク１０１を接続することができる。いくつかの実施形態で、これらの全く異なる部分は同じアドレス空間を共用することができるが、サービスプロバイダネットワーク１０２はプライベート企業ネットワーク１０１の全く異なる部分を接続することができる。
【００２１】
クラウドネットワーク１０３は、クラウドサービスプロバイダによって所有され得る、インターネットを介してネットワーク内で接続され得る１つまたは複数のサーバ１１４ａ−ｄを含み得る。一基盤サービスモデルで、たとえば、クラウドサービスプロバイダは、クラウドネットワーク１０３内に置かれた特定の資源をそのクラウドネットワーク１０３の顧客に割り当てることができる。かかる特定の資源は、仮想機械１１６ａ−ｄとしてグループ化され得る。
【００２２】
仮想機械１１６ａは、プライベート企業ネットワーク１０１内にある顧客によって制御されるクラウドネットワーク１０３内のサーバ１１４ａ上のサーバインスタンスでもよい。顧客は、自由に任意の数の仮想機械１１６ａ−ｄを作成、使用、および破壊する能力をもち得る。この能力は、たとえば、帯域幅、記憶容量、および処理要求など、ユーザ定義の基準に基づき得る。
【００２３】
顧客に割り当てられた仮想機械１１６ａ−ｄは、クラウド内部で互いに論理的に接続され得る。さまざまな実施形態で、顧客に割り当てられたすべての仮想機械１１６ａ−ｄは、同じＶＬＡＮ内に現れる。仮想機械１１６ａ−ｄは、同じサーバ１１４ａ上または異なるサーバ１１４ａ−ｄ上に物理的に置かれ得るが、ＶＬＡＮ内で互いに論理接続を保持することができる。いくつかの実施形態で、仮想機械１１６ａは、クラウドネットワーク内の異なるサーバ１１４ａなどの異なる物理ロケーションに移行することができるが、同じＶＬＡＮと関連付けられたままでもよい。
【００２４】
仮想スタブ（ｖスタブ）１０４は、特定の顧客に割り当てられたクラウドネットワーク１０３内のすべての資源を含む論理ネットワークでもよい。したがって、仮想スタブ１０４は、その顧客に割り当てられたクラウドネットワーク１０３内のすべてのアクティブな仮想機械１１６ａ−ｄと、割り当てられた仮想機械１１６ａ−ｄをホスティングおよび制御することができる一連のハイパーバイザ１１５ａ−ｄと、割り当てられた仮想機械１１６ａ−ｄを含むサーバ１１４ａ−ｄのそれぞれに物理的に接続され得るデータセンタ相互接続１１３と、クラウドネットワーク１０３内のすべての割り当てられた仮想機械１１６ａ−ｄのハブとして動作し得るクラウドデータセンタＣＥ１１２とを含み得る。図１に示すように、仮想スタブ１０４は、プライベート企業ネットワーク１０１内のデバイスによって使用されるＶＬＡＮに含まれることがあり、その論理ネットワークが物理的に隣接することを必要とせず、データセンタ相互接続１１３など、異なる物理サーバ１１４ａ−ｄを接続するネットワーク構成要素を含み得る。仮想スタブは、プライベート企業ネットワーク１０１に割り当てられたサーバ１１４ａ−ｄをクラウドネットワーク１０３内にあるがプライベート企業ネットワークに割り当てられていない一連のサーバ１１９ａ、１１９ｂと分けることができる。したがって、これらの一連のサーバ１１９ａ、１１９ｂは、プライベート企業ネットワーク１０１に接続するまたは同じアドレス空間もしくはＶＬＡＮを共用することはできない。
【００２５】
顧客エッジ（ＣＥ）デバイス１１０ａは、プライベート企業ネットワーク１０１内のノードでもよい。ＣＥデバイス１１０ａは、プライベート企業ネットワーク１０１内の他の顧客エッジルータ、サービスプロバイダネットワーク１０２内のプロバイダエッジデバイス１１１ａ−ｈ、またはクラウドネットワーク１０３内のクラウドデータセンタＣＥ１１２などの他のノードにパケットを送信するように構成された、ルータまたはスイッチなどのネットワークノードでもよい。ＣＥデバイス１１０ａは、ＭＰＬＳ（Ｌ３  ＭＰＬＳ）を使用するレイヤ３通信と、イーサネットおよび仮想プライベートＬＡＮサービス（ＶＰＬＳ）を使用するレイヤ２通信となどのＯＳＩ参照モデルの複数レイヤを使用するプライベート企業ネットワーク１０１の内側および外側の両方の他のデバイスとの通信の能力をもち得る。いくつかの実施形態で、ＣＥデバイス１１０ａは、物理デバイスに存在する仮想ルータでもよい。
【００２６】
それぞれのプロバイダエッジ（ＰＥ）デバイス１１１ａ−ｈは、サービスプロバイダネットワーク１０２内のノードでもよく、ルータ、スイッチ、または同様のハードウェアデバイスでもよい。ＰＥデバイス１１１ａ−ｈは、ＣＥデバイス１１０ａからパケットを受信し、かかるパケットをサービスプロバイダネットワーク１０２を介して送信するように構成され得る。これらのパケットは、プライベート企業ネットワーク１０１内の他の宛先に、クラウドネットワーク１０３内の宛先に、または図１に示されない他のネットワーク内の宛先に送信され得る。
【００２７】
クラウドデータセンタＣＥ１１２は、顧客エッジルータでもよく、クラウドサービスプロバイダの顧客によって操作される機器によって実装され得る。「顧客」エッジデバイスとして参照されているが、クラウドデータセンタＣＥ１１２は、クラウドサービスプロバイダまたは何らかの他のエンティティによって所有および／または操作され得ることが明らかであろう。いくつかの実施形態で、クラウドデータセンタＣＥ１１２は、クラウドネットワーク１０３内部の仮想スタブ１０４のハブを表す。いくつかの実施形態で、クラウドデータセンタＣＥ１１２は、複数の企業ネットワークによって共用され得る。
【００２８】
いくつかの実施形態で、クラウドネットワーク１０３はまた、クラウドデータセンタＣＥ１１２と関連付けられたディレクトリサーバを含み得る。ディレクトリサーバは、マッピングエントリのディレクトリを保持することができる。以下にさらに詳細に論じるように、これらのマッピングエントリは、企業ネットワーク内のロケーション企業ＩＰを企業の拡張されたネットワーク１００内の宛先のアドレスに相互に関連付けることができる。これは、ロケーションのＭＡＣアドレス、クラウドＩＰアドレス（ｃｌｏｕｄＩＰ）、およびロケーションＩＰアドレス（ｌｏｃＩＰ）のエントリを含み得る。
【００２９】
ＭＡＣアドレスは、ネットワークアダプタまたはネットワークインターフェースカード（ＮＩＣ）など、ネットワーク内のデバイスに割り当てられた固有識別子でもよい。ＭＡＣアドレスは、デバイスの製造会社によって提供され得る。ＭＡＣアドレスは、インターネットプロトコルバージョン４（ＩＰｖ４）のアドレス解決プロトコル（ＡＲＰ）、またはインターネットプロトコルバージョン６（ＩＰｖ６）の近隣探索プロトコル（ＮＤＰ）を使用してＩＰアドレスの問合せに基づいて決定され得る。ＭＡＣヘッダはまた、ソースおよび宛先ＶＬＡＮのＶＬＡＮタグを含み得る。いくつかの実施形態で、ＶＬＡＮタグが宛先のＶＬＡＮと一致しない場合、その宛先はそのパケットをドロップする。ロケーションＩＰアドレス（ｌｏｃＩＰ）は、仮想スタブ１０４内で特定のスイッチ、スイッチ１１７ａなど、のロケーションを識別することができる。仮想機械１１６ａは、そこにそれが存在するＩＰスイッチ１１７ａを参照するｌｏｃＩＰアドレスをもち得る。加えて、クラウドＩＰアドレス（ｃｌｏｕｄＩＰ）は、仮想スタブ１０４内のそれぞれの仮想機械１１６ａ−ｄを明確に参照することができる。
【００３０】
したがって、デバイスはディレクトリサーバを参照して、割り当てられたＩＰアドレスの代わりにそのｌｏｃＩＰおよびｃｌｏｕｄＩＰアドレスによって仮想機械を捜し出すため、仮想機械１１６ａは、そのロケーションとは論理的に別の別個のアドレスを所有し得る。一実施形態で、プライベート企業ネットワーク１０１内のソースは、企業ネットワーク内の割り当てられたＩＰアドレスを使用して、パケットの形態で情報をクラウドネットワーク１０３内の仮想機械１１６ａに送信することができる。この場合、クラウドデータセンタＣＥ１１２は、ＩＰヘッダを組み込まれたイーサネットフレームを使用してアドレス指定されたかかるパケットを受信することができ、クラウドネットワーク１０３内の宛先仮想機械１１６ａに対応するｃｌｏｕｄＩＰアドレスヘッダおよびｌｏｃＩＰアドレスヘッダの両方と宛先仮想機械１１６ａに送信される受信パケットをカプセル化することができる。クラウドデータセンタＣＥ１１２は、ディレクトリサーバに置かれたディレクトリを介して仮想機械１１６ａのｌｏｃＩＰおよびｃｌｏｕｄＩＰアドレスと企業ＩＤを相互に関連付けることができる。
【００３１】
以下にさらに詳細に論じるように、ディレクトリサーバ内のディレクトリは、プライベート企業ネットワーク１０１およびクラウドネットワーク１０３内のアクティブなサーバおよび仮想機械のアドレスエントリを含み得る。１つのネットワークから他方のネットワークに送信されるパケットは、ディレクトリを使用して他方のネットワーク内の必要なヘッダに受信パケットのヘッダを相互に関連付けることができるクラウドデータセンタＣＥ１１２を通過することができる。たとえば、クラウドデータセンタＣＥ１１２は、クラウドネットワーク内でパケットを適切に送信するために、ＭＡＣ、ｃｌｏｕｄＩＰ、およびｌｏｃＩＰアドレスヘッダを取り出して、ディレクトリを使用する。クラウドデータセンタＣＥ１１２はまた、ディレクトリを使用して、クラウドネットワーク１０３に由来するｃｌｏｕｄＩＰ、およびｌｏｃＩＰアドレスヘッダをカプセル開放し、ＭＡＣアドレスヘッダを第２のＭＡＣアドレスヘッダで置き換えてサービスプロバイダネットワーク１０２およびプライベート企業ネットワーク１０１内でパケットを送信することができる。
【００３２】
論理ＣＥ１１２は１つのみ図示されているが、代替実施形態は、クラウドネットワークまたはクラウドデータセンタ内に複数の論理ＣＥを含み得る。かかる実施形態では、各論理ＣＥが別個のＶＬＡＮの独立したハブとして動作しつつ、企業アドレス空間内の仮想機械１１６ａ−ｄがクラウドデータセンタ内の異なる論理ＣＥに割り当てられ得る。かかる実施形態はまた、以下に論じるように、ディレクトリ探索がハイパーバイザ１１５ａ−ｄの代わりに各論理ＣＥ１１２によって行われることを可能にし得る。複数の論理ＣＥデバイス１１２はまた、データパケットが代わりに適切なハブ論理ＣＥ１１２にトンネリングされ得るため、仮想スタブ１０４内のクラウド宛先へのｌｏｃＩＰおよびｃｌｏｕｄＩＰヘッダの必要性を取り除くことができる。
【００３３】
データセンタ相互接続１１３は、一連のサーバ１１４ａ−ｄに接続する１つのスイッチまたは一連のスイッチでもよい。データセンタ相互接続１１３は、クラウドデータセンタＣＥ１１２を割り当てられた一連のサーバ１１４ａ−ｄに直接接続することができる。別法として、データセンタ相互接続１１３は、一連の中間スイッチ１１７ａ−ｃを介してそれらの一連のサーバ１１４ａ−ｄに接続することができる。かかる場合に、各中間スイッチ１１７ａ−ｃは、複数のサーバ１１４ａ−ｄに同時に接続することができる。中間スイッチ１１７ａは、仮想スタブ１０４内の固有のロケーションＩＰ（ｌｏｃＩＰ）アドレスをもち得る。その接続されたサーバ１１４ａのうちの１つの仮想機械１１６ａにアドレス指定されたパケットを受信するとき、中間スイッチ１１７ａは、そのパケットからｌｏｃＩＰヘッダをカプセル開放し、次に、対応するｃｌｏｕｄＩＰアドレスをもつサーバ１１４ａにパケットを転送することができる。
【００３４】
サーバ１１４ａは、クライアントにコンピューティングサービスを提供するデバイスでもよい。さらに具体的には、サーバは、たとえばアプリケーションを実行するまたはメモリにファイルを保存するためにクライアントが使用する、記憶および処理能力などのコンピューティング資源をホスティングするネットワーキングデバイスでもよい。したがって、サーバ１１４ａ−ｄは、たとえば、それぞれが物理サーバブレードを保持する能力のある、複数のスロットを含むシャーシベースのサーバ（即ちブレードサーバ）でもよい。各物理サーバ１１４ａ−ｄは、ハイパーバイザ１１５ａ−ｄおよび少なくとも１つの仮想機械１１６ａ−ｄを含み得る。
【００３５】
１つまたは複数のハイパーバイザ１１５ａ−ｄは、各物理サーバ１１４ａ−ｄ上に位置し得る。一実施形態で、ハイパーバイザ１１５ａ−ｄは、それらが存在する物理サーバに物理的に置かれた割り当てられた仮想機械１１６ａ−ｄのそれぞれをホスティングする。それによって、各ハイパーバイザ１１５ａ−ｄは、１つまたは複数の仮想機械１１６ａ−ｄを同時に制御することができる。
【００３６】
ハイパーバイザ１１５ａ−ｄは、たとえば、それがホスティングする各仮想機械のｃｌｏｕｄＩＰアドレスとハイパーバイザ１１５ａ−ｄをホスティングする中間スイッチ１１７ａ−ｃのｌｏｃＩＰアドレスとを含み得る企業情報を認識することができる。したがって、ハイパーバイザ１１５ａ−ｄは、ホスティングされる仮想機械１１６ａ−ｄの企業の会員資格（即ち企業ＩＤ）を認識することができる。ハイパーバイザ１１５ａ−ｄはまた、そのホスティングされる仮想機械１１６ａ−ｄに関連するトラフィックを遮ることができる。仮想機械１１６ａ−ｄが仮想スタブ１０４の外側の宛先にパケットを送信しているとき、ハイパーバイザ１１５ａ−ｄは、そのホスティングされる仮想機械１１６ａ−ｄのうちの１つから送信されるパケットをクラウドデータセンタＣＥ１１２に関連付けられたＭＡＣアドレスヘッダ、ｃｌｏｕｄＩＰヘッダ、およびｌｏｃＩＰヘッダとカプセル化することができる。ハイパーバイザ１１５ａ−ｄはまた、ハイパーバイザ１１５ａ−ｄによってホスティングされる仮想機械１１６ａ−ｄに送信されるパケットのｃｌｏｕｄＩＰヘッダをカプセル開放することができる。
【００３７】
いくつかの実施形態で、ハイパーバイザ１１５ａ−ｄは、それがホスティングする各仮想機械１１６ａ−ｄへのセキュリティパラメータを認識する。これらのセキュリティパラメータは、仮想スタブ１０４がサイズを変更するときに情報の意図的でない漏えいを防ぐために、たとえば、組込み型の顧客ＩＤを含み得る。ハイパーバイザ１１５ａ−ｄは、悪意あるハイパーバイザなどのエンティティによる意図的攻撃および他のテルネット攻撃を防ぐことができる、以下に論じるような、セキュリティトークン（またはペアワイズセキュリティトークン）などの他のセキュリティ機能を認識することができる。ハイパーバイザ１１５ａ−ｄはまた、そのパケットが同じＶＬＡＮからであることを確実にするために、ＭＡＣアドレスヘッダ内のＶＬＡＮタグをチェックすることができる。
【００３８】
図２は、Ｌ２プロトコルを使用する二重カプセル化されたパケット転送の概略図である。図２に示すように、各エンドポイントにあるデバイスは、ＩＰアドレスを使用して宛先をアドレス指定することができ、各ＩＰアドレスはその企業のＩＰアドレス空間の内部にある。クラウドネットワーク１０３内の仮想スタブ１０４は、私的企業１０１と共通ＶＬＡＮを共用することができる。したがって、仮想スタブ１０４内部の各仮想機械１１６ａ−ｄはまた、ＩＰサブネット内の対応するアドレスを割り当てられる。
【００３９】
クラウドネットワーク１０３の性質が、仮想機械１１６ａ−ｄの位置を判定するためのクラウドネットワーク１０３内部の特定の、静的ＩＰアドレスの使用を排除し得ることが明らかとなろう。たとえば、仮想機械１１６ａは、異なる物理サーバ１１４ｄに動的に移行することができ、所与の時間に特定の仮想機械１１６ａをアドレス指定するときに使用する適切なＩＰアドレスを決定することを困難にする。したがって、クラウドネットワーク１０３内で、仮想機械１１６ａは、同じＶＬＡＮ内に留まり、その企業ＩＤ、ロケーションＩＰアドレス、およびクラウドＩＰアドレスによって識別される。このアドレス指定情報は、ディレクトリサーバ内のディレクトリに保存され得る。
【００４０】
したがって、ＭＡＣアドレスヘッダを加えることに加えて、それが内部のクラウドＩＰヘッダおよび外部のロケーションＩＰヘッダと各パケットをカプセル化することを含み得る場合、クラウドネットワーク１０３内の宛先へのパケットの送信は、パケットを二重カプセル化することを含み得る。パケットが、たとえばクラウドネットワーク１０３内の仮想機械１１６ａから、プライベート企業ネットワーク１０１内の宛先に送信されている場合、パケットをカプセル化する第１のＭＡＣアドレスヘッダ、ｃｌｏｕｄＩＰ、およびｌｏｃＩＰヘッダは、クラウドデータセンタＣＥ１１２のアドレスに対応する。クラウドデータセンタＣＥ１１２は、仮想スタブ１０４のハブとして動作し、別個のＭＡＣアドレスおよびクラウドＩＰアドレスを含む。クラウドデータセンタＣＥ１１２は、たとえばプライベート企業ネットワーク１０１内の宛先に対応する第２のＭＡＣアドレスを使用し、プライベート企業ネットワーク１０１内部の適切なＩＰアドレスにパケットを転送する。
【００４１】
図２に示す例で、ＩＰアドレス１０．１．２．２にあるプライベート企業ネットワーク１０１内のソース２０１（ロケーション「Ａ」）は、パケット２０３をクラウドネットワーク１０３内のＩＰアドレス１０．１．８．８にある宛先仮想機械１１６ａ（ロケーション「Ｂ」）に送信する。ＩＰアドレスおよびペイロードのこの組合せは、例示的実施形態においてＩＰパケットと見なすことができる。
【００４２】
例示的実施形態で、ソース「Ａ」２０１は、レイヤ２ネットワークを介して宛先「Ｂ」１１６ａのＭＡＣアドレスを取得しようと第１に試みることができる。したがって、ソース「Ａ」２０１は、顧客エッジルータＣＥＡ１１０ａに到達し得るＡＲＰ要求を生成することができる。ＣＥＡ１１０ａがそのＶＲＦテーブルを介する宛先「Ｂ」１１６ａのＩＰ対ＭＡＣアドレスマッピングを知らない場合、ＣＥＡ１１０ａは次に、サービスプロバイダネットワーク１０２内に位置し得る接続されたプロバイダエッジルータＰＥ１１１ａにＡＲＰ要求をブロードキャストすることができる。ＰＥ１１１ａは順に、プライベートネットワーク１０２内のすべての他のプロバイダエッジルータ１１１ａ−ｆにＡＲＰ要求をブロードキャストすることができる。これは、ＡＲＰ要求を受信するクラウドネットワーク１０３内のクラウドデータセンタＣＥ１１２をもたらし得る。クラウドデータセンタＣＥ１１２がＡＲＰ要求を受信するとき、それは次に、宛先「Ｂ」１１６ａのＭＡＣアドレスを取得するために、ディレクトリサーバに問い合わせることができる。取得された後は、ＭＡＣアドレスは、逆の経路を介してソース「Ａ」２０１に送り返すことができる。
【００４３】
獲得されたＭＡＣアドレスを使用し、ソース「Ａ」２０１は、そのレイヤ２ネットワークを介してパケット２０５を送信することになる。パケット２０５は、修正されたＭＡＣアドレスをもつＩＰパケット２０３を含む。このＭＡＣアドレスはまた、そのソースのＶＬＡＮを指示するＶＬＡＮタグを含み得る。その例示的実施形態で、パケットがクラウドデータセンタＣＥ１１２にトンネリングされ得るように、宛先「Ｂ」１１６ａはクラウドネットワーク１０３内にある。クラウドデータセンタＣＥ１１２は、宛先「Ｂ」１１６ａのクラウドＩＰアドレスおよびロケーションＩＰアドレスをディレクトリサーバに問い合わせる。クラウドデータセンタＣＥ１１２は続いて、まずクラウドＩＰアドレスヘッダと、次にｌｏｃＩＰアドレスヘッダと、パケット２０５をカプセル化する。クラウドデータセンタＣＥ１１２は次に、クラウドネットワーク１０３内のデータセンタ相互接続１１３および他のデバイスを介して二重カプセル化されたパケット２０６を対応する宛先ｌｏｃＩＰアドレスをもつ中間スイッチ１１７ａに送信することができる。
【００４４】
中間スイッチ１１７ａは次に、パケット２０６からｌｏｃＩＰヘッダをカプセル開放し、修正されたパケット２０９を対応する宛先ｃｌｏｕｄＩＰアドレスに送信することができる。宛先ｃｌｏｕｄＩＰアドレスに対応するサーバ１１４ａで、サーバ１１４ａ上のハイパーバイザ１１５ａは、修正されたパケット２０９からＭＡＣアドレスヘッダおよびｃｌｏｕｄＩＰヘッダをカプセル開放し、そのＩＰパケット２１０をサーバ１１４ａ上の宛先仮想機械「Ｂ」１１６ａに送信する。いくつかの実施形態で、ハイパーバイザ１１５ａはまた、パケット２１０内のセキュリティトークンを確認して、そのパケットが同じ企業ネットワークからであることを確認することができる。いくつかの実施形態で、ハイパーバイザ１１５ａは、ＭＡＣアドレスヘッダ内のＶＬＡＮタグをチェックして、宛先「Ｂ」１１６ａがそのＶＬＡＮに属するかどうかを確認することができる。宛先「Ｂ」１１６ａが属しないとき、ハイパーバイザ１１５ａは修正されたパケット２０９をドロップすることができる。
【００４５】
図３は、ｅｔｈｅｒＩＰおよびＶＬＡＮ変換を使用するパケット転送の概略図である。図示された実施形態は、図２の例示的実施形態と同じシステム構成要素を共用することができる。図２にあるように、ＩＰアドレス１０．１．２．２にあるプライベート企業ネットワーク１０１内のソース「Ａ」２０１は、パケット２０３をクラウドネットワーク１０３内のアドレス１０．１．８．８にある宛先仮想機械「Ｂ」１１６ａに送信する。ソース「Ａ」２０１は、その宛先の適切なＭＡＣアドレスを問い合わせ、修正されたパケット２０５をクラウドデータセンタＣＥ１１２に送信する。
【００４６】
いくつかの実施形態で、クラウドデータセンタＣＥ１１２は、ＶＬＡＮを局所的に固有のものに変換することができる。その例示的実施形態で、クラウドデータセンタＣＥ１１２は、ソースＶＬＡＮ６を局所的に固有のＶＬＡＮ１０に変換する。この実施形態で、各デバイスはスイッチに局所的なＭＡＣアドレスを割り当てられ、クラウドネットワーク１０３内の中間スイッチ１１７ａに到達した後は固有である各ＭＡＣアドレスをもたらす。したがって、クラウドデータセンタＣＥ１１２は、修正されたパケット２０５を受信したときに、そのパケットを１つのＩＰヘッダとカプセル化のみする。クラウドデータセンタは、パケット２０５を宛先スイッチ１１７ａのｌｏｃＩＰヘッダとカプセル化する。クラウドデータセンタＣＥ１１２は、単カプセル化されたパケット３０６をデータセンタ相互接続１１３を介してスイッチ１１７ａに転送する。スイッチ１１７ａは、単カプセル化されたパケット３０６をカプセル開放する。この実施形態で、ＭＡＣアドレスは局所的に固有であるため、そのスイッチは、修正されたパケット３０９を宛先「Ｂ」１１６ａに転送することができ、各ＶＭ１１６ａ−ｄの固有のｃｌｏｕｄＩＰアドレスは不必要である。
【００４７】
図４は、論理ＣＥルータ１１２の例示的な仮想経路指定および転送（ＶＲＦ）テーブル４００である。プライベート企業ネットワーク１０１内の顧客エッジデバイス１１０ａ−ｅおよびサービスプロバイダネットワーク１０２内のプロバイダエッジデバイス１１１ａ−ｈなどの他のデバイスもまた、同様のＶＲＦテーブル４００を保持することができる。
【００４８】
ｅｎｔＩＰフィールド４０１は、一ロケーションの企業ＩＤに対応し得る。例示的一実施形態で、仮想スタブ１０４内の資源は、同じＶＬＡＮを共用し、結果として、同じアドレス空間を共用することができる。図示された実施形態で、各ｅｎｔＩＰは、局所的に固有のＩＰアドレスである。ＭＡＣフィールド４０２は、一ロケーションのＭＡＣアドレスに対応し得る。ＭＡＣフィールドは、プライベート企業ネットワーク１０１内のデバイスのロケーションを識別するために、レイヤ２プロトコルによって使用されることがあり、クラウドネットワーク１０３内のデバイスを識別するために、ｌｏｃＩＰフィールド４０３およびｃｌｏｕｄＩＰフィールド４０４と使用されることがある。
【００４９】
ｌｏｃＩＰフィールド４０３は、クラウドネットワーク１０３のデバイスのロケーションＩＰアドレスに対応する。ｌｏｃＩＰは、エントリの仮想機械１１６ａをホスティングするクラウドネットワーク１０３内の中間スイッチ１１７ａのアドレスに対応し得る。図４の例示的実施形態で、仮想機械エントリ４１１は、対応する仮想機械１１６ａをホスティングする中間スイッチ１１７ａに対応する２０．２．２．８のロケーションＩＰアドレスをもつ。
【００５０】
ｃｌｏｕｄＩＰフィールド４０４は、クラウドネットワーク１０３内の仮想機械１１６ａのｃｌｏｕｄＩＰアドレスに対応し得る。ｌｏｃＩＰアドレス４０３にある中間スイッチ１１７ａは、それがホスティングする各仮想機械１１６ａについて別個の、重複しないｃｌｏｕｄＩＰアドレス４０４をもつ。クラウドデータセンタは、クラウドネットワーク１０３内の仮想機械１１６ａ−ｄの間でｃｌｏｕｄＩＰアドレスを割り当てることができる。その例示的実施形態で、仮想機械エントリ４１１は２０．２．２．１のｃｌｏｕｄＩＰをもち、そうして、中間スイッチ１１７ａが仮想機械１１６ａのためのパケットを受信するときに、そのスイッチはそのパケットをハイパーバイザ１１５ａを介して特定の仮想機械２０．２．２．１に転送することができる。
【００５１】
ｎｅｘｔＨｏｐフィールド４０５は、デバイスがパケットを送信すべき先の企業ネットワーク１００内の次のロケーションを参照する。その例示的実施形態で、エントリ４１３は、プライベート企業ネットワーク１０１内の一ロケーションに対応する、４９−ＢＤ−Ｄ２−Ｃ７−５６−２ＡのＭＡＣアドレスをもつｅｎｔＩＰアドレス４０１をもつ。したがって、そのロケーションは、それらがクラウドネットワーク１０３内のアドレスによってのみ使用され得るため、適用可能なｌｏｃＩＰ４０３またはｃｌｏｕｄＩＰ４０４アドレスをもたない。したがって、クラウドデータセンタＣＥ１１２からの対応するｎｅｘｔＨｏｐ４０５エントリは、ＭＡＣアドレス４９−ＢＤ−Ｄ２−Ｃ７−５６−２Ａをもつ宛先向けのパケットを受信したときに、それ自体のＶＲＦテーブルを参照し、それをエントリの対応するｎｅｘｔＨｏｐ４０５アドレスに転送することになる、接続されたプロバイダエッジデバイス１１１ａを目的とする。このプロセスは、パケットが最終的にプライベート企業ネットワーク１０１内のＭＡＣアドレス４９−ＢＤ−Ｄ２−Ｃ７−５６−２Ａをもつ宛先に到達するまで、順々に各デバイスで継続することになる。
【００５２】
図５は、ディレクトリサーバ内の例示的なディレクトリテーブルである。ディレクトリテーブル５００は、ディレクトリテーブル５００がｎｅｘｔＨｏｐフィールド４０５を保持しないことを除いて、クラウドデータセンタＶＲＦテーブル４００と相似し、ｅｎｔＩＰフィールド、ＭＡＣフィールド、ｌｏｃＩＰフィールド、およびｃｌｏｕｄＩＰフィールドを保持する。これは、ディレクトリテーブル５００が情報を転送することを持続せず、そうではなくて、ディレクトリテーブル５００がプライベート企業ネットワーク１０１内およびクラウドネットワーク１０３内の両方のロケーションのＭＡＣ４０２、ｌｏｃＩＰ４０３、およびｃｌｏｕｄＩＰ４０４アドレスの包括的リストを単に保持するからである。
【００５３】
本例示的実施形態で、「デフォルト」エントリ５１１は、そのｌｏｃＩＰ４０３アドレスとしての唯一のＩＰＣＡ、５Ｃ−６６−ＡＢ−９０−７５−Ｂ１のＭＡＣアドレスをもち、適用可能なｃｌｏｕｄＩＰ４０４アドレスをもたない。デフォルトエントリ５１１は、明示的ｌｏｃＩＰ４０３またはｃｌｏｕｄＩＰ４０４アドレスをもたない、プライベート企業ネットワーク１０１内のデバイスを参照する。ＩＰＣＡエントリは、ディレクトリ５００内の有効なｌｏｃＩＰ４０３およびｃｌｏｕｄＩＰ４０４アドレスをもつエントリ４１２として具体的にリストに記載されない宛先をもつパケットが、次にそのＶＲＦテーブル４００を使用してプライベート企業ネットワーク１０１内の適切な宛先にそのパケットを転送することになるクラウドデータセンタＣＥ１１２へと向けられるべきであることを意味する。
【００５４】
例示的一実施形態で、仮想機械１１６はシャットダウンすることができる。仮想機械がシャットダウンするとき、ディレクトリにあるディレクトリ５００内のＶＭのエントリが削除され得る。他の例示的一実施形態で、ＶＭは、異なるサーバに、たとえば１１４ａから１１４ｃに、移行することができる。ＶＭが別のサーバ１１４ｃに移行するとき、そのｌｏｃＩＰアドレスがディレクトリ５００で更新されて、ＶＭ１１６ａが現在置かれている新しいサーバ１１４ｃを反映することになる。仮想機械１１６ａはまた、新しいＶＬＡＮまたはクラウドデータセンタＣＥ１１２に移行することができる。古いエントリ（失効したＶＲＦテーブルをもつデバイス）の場合、前のｌｏｃＩＰアドレスにあるスイッチ１１７ａは、誤ってアドレス指定されたパケットを新しいクラウドデータセンタＣＥにあるディレクトリサーバに転送することになる。古いクラウドデータセンタＣＥ１１２にあるディレクトリサーバは次に、ユニキャストを介して古いスイッチのＶＲＦテーブルを修正することになる。
【００５５】
図６は、本システムで使用されるイーサネットフレームの例示的な説明図である。イーサネットフレーム６００は、長さは様々であり得るＩＰデータグラムを運ぶ。図６は、データグラム６１０を含む二重カプセル化されたパケットの例示的なイーサネットフレームを示す。データグラム６１０は、いくつかある情報の中でも特に、内部のｃｌｏｕｄＩＰヘッダおよび外部のｌｏｃＩＰヘッダと、宛先ｃｌｏｕｄＩＰアドレス６０３と、ペイロード６０１とを含む。ソースおよび宛先アドレス６０５、６０６はまた、フレーム６００内に含まれる。
【００５６】
データグラム６１０はまた、セキュリティトークン６０２を含み得る。セキュリティトークンは、たとえば企業特有の鍵、企業ＩＤ、および宛先ＩＰアドレスの組合せを備え得る。ハイパーバイザ１１５ａは、セキュリティトークン６０２を確認しようと試みることがあり、パケットが誤ったセキュリティトークン６０２を含む場合、そのパケットをドロップする。一実施形態で、パケットは、ペアワイズセキュリティトークン６０２によって符号化され得る。ペアワイズセキュリティトークンは、１人のみのユーザについて使用される個々の鍵である、ペアワイズ鍵に由来し得る。これは、悪意あるハイパーバイザ１１５ａとセキュリティ連想をもつ仮想機械１１６ａ−ｄへの攻撃を局部に留めることによって悪意あるハイパーバイザ１１５ａからの攻撃を防ぐのを助けることができる。
【００５７】
加えて、顧客ＩＤ６０４は仮想スタブ１０４内にない仮想機械１１６ａ−ｄにパケットを送信するのを防ぐため、データグラム６１０は、セキュリティ上の理由で、顧客ＩＤ６０４を含み得る。この状況は、たとえば、仮想機械１１６ａ−ｄが移行する、またはシャットダウンする場合、およびデバイスがその仮想機械１１６にトラフィックを送信し続ける場合に、生じうる。一実施形態で、ペイロード６０１は、共有グループ鍵で暗号化され得る。共有グループ鍵は、所与の顧客グループのメンバの間で共用され得る。
【００５８】
図７は、二重カプセル化およびレイヤ２プロトコルを使用し、プライベート企業ネットワーク１０１内のソース「Ａ」２０１からクラウドネットワーク１０３内の宛先「Ｂ」１１６ａにパケット２０３を送信する方法７００の例示的一実施形態の流れ図である。ステップ７０１で、ソース「Ａ」２０１が、プライベート企業ネットワーク１０１内の顧客エッジルータ１１０ａに宛先「Ｂ」１１６ａのＭＡＣアドレスを問い合わせる。ステップ７０２で、顧客エッジルータ１１０ａが、そのＶＲＦテーブルに宛先「Ｂ」２０１のＩＰ対ＭＡＣマッピングを問い合わせる。ステップ７０３で、顧客エッジルータ１１０ａのＶＲＦテーブル内にマッピングが存在しない場合、顧客エッジルータ１１０ａは、システムを介してＡＲＰ要求の形式で問合せをブロードキャストする。ステップ７０４で、ＩＰ対ＭＡＣアドレスマッピングがデバイスのＶＲＦテーブル内にあるときに、顧客エッジルータ１１０ａが宛先「Ｂ」１１６ａのＭＡＣアドレスを返す。
【００５９】
ステップ７０２−７０４のループが、各デバイスがＭＡＣアドレスを返すまで、各転送デバイスについて繰り返される。これは、デバイスを介して、それがクラウドデータセンタＣＥ１１２に到達するまで、継続し得る。別法として、ステップ７０２で、クラウドデータセンタがそのディレクトリを参照して、宛先「Ｂ」１１６ａのＩＰ対ＭＡＣアドレスマッピングを取得する。ステップ７０４で、クラウドデータセンタＣＥ１１２が、ＭＡＣアドレスをソース「Ａ」２０１に返す。
【００６０】
ステップ７０５で、プライベート企業ネットワーク１０１内のソース「Ａ」２０１からのパケット２０５は、クラウドネットワーク１０３内のクラウドデータセンタＣＥ１１２にサービスプロバイダネットワーク１０２内のＰＥデバイス１１１ａを少なくとも介してパケット２０５を転送することができる、プライベート企業ネットワーク１０１内の論理ＣＥデバイス１１０ａに送信され得る。ステップ７０６で、クラウドデータセンタＣＥ１１２は再び、ディレクトリサーバに問い合わせることができる。第２の問合せは、宛先「Ｂ」のロケーションＩＰ（ｌｏｃＩＰ）およびクラウドＩＰ（ｃｌｏｕｄＩＰ）についてのディレクトリ５００の探索を、そのロケーションがクラウドネットワーク１０３内部である場合に、引き起こし得る。宛先「Ｂ」がクラウドネットワーク１０３内にある場合、ステップ７０７で、クラウドデータセンタＣＥ１１２は、対応する宛先クラウドＩＰアドレスおよびロケーションＩＰアドレスを取り出すことができる。
【００６１】
ステップ７０８で、クラウドデータセンタＣＥ１１２は、ＭＡＣヘッダおよび取り出されるｃｌｏｕｄＩＰアドレスに対応するヘッダとパケットをカプセル化することができる。ステップ７０９で、クラウドデータセンタＣＥ１１２は、取り出されるｌｏｃＩＰアドレスに対応するヘッダと修正されたパケットをカプセル化することができる。ステップ７１０で、クラウドデータセンタＣＥ１１２は、クラウドネットワーク１０３を介して対応するｌｏｃＩＰアドレスに二重カプセル化されたパケット２０６を送信することができる。
【００６２】
ステップ７１１で、そのｌｏｃＩＰアドレスにある中間スイッチ１１７ａが、ｌｏｃＩＰヘッダを二重カプセル化されたパケット２０６からカプセル開放し、修正されたパケット２０９を対応するｃｌｏｕｄＩＰアドレスに送信することができる。ステップ７１２で、対応するｃｌｏｕｄＩＰアドレスにあるサーバ１１４ａのハイパーバイザ１１５ａが、ｃｌｏｕｄＩＰヘッダおよびＭＡＣアドレスヘッダの両方を取り除いて修正されたパケット２０９をカプセル開放し、パケット２１０を宛先「Ｂ」にある対応する仮想機械１１６ａに送信することができる。一代替実施形態で、ハイパーバイザ１１５ａは、パケット２１０を仮想機械１１６ａに送信する前に、含まれるセキュリティトークン５０２を確認することによって、受信パケット２１０をまず検査することができる。いくつかの実施形態で、ハイパーバイザ１１５ａは、そのパケットが同じＶＬＡＮから届いていることを確認することによって、ＶＬＡＮタグをまず検査することができる。
【００６３】
一代替実施形態では、ステップ７１０で、クラウドデータセンタＣＥ１１２が、単カプセル化されたパケット３０６を仮想スタブ１０４を介して宛先「Ｂ」１１６ａに送信する。この代替実施形態で、各ＶＬＡＮ  ＩＤは固有である。そのようなものとして、ステップ７０８で、クラウドデータセンタＣＥ１１２は、ＶＬＡＮ  ＩＤを局所的に固有のものに変換することができ、ＭＡＣアドレスを所与のスイッチについて局所的に固有にする。したがって、ステップ７１１で、中間スイッチ１１７ａは、ＭＡＣアドレスのみを使用するハイパーバイザ１１５ａに修正されたパケット３０９を送信することができる。ステップ７１２で、ハイパーバイザ１１５ａは、ＩＰパケット２１０を宛先「Ｂ」１１６ａに送信する前に、ＭＡＣアドレスヘッダをカプセル開放する。
【００６４】
図８は、クラウドネットワーク１０３内のソースからパケットを送信する例示的な方法８００を説明する。ステップ８０１で、ソース「Ｂ」のサーバ１１４ａ上のハイパーバイザ１１５ａが、ソース「Ｂ」仮想機械１１６ａからパケット２１０を受信する。ステップ８０２で、ハイパーバイザ１１５ａは、その宛先アドレスがそのＶＲＦテーブル内にあるかどうかをチェックする。宛先「Ａ」２０１についての転送エントリが存在する場合にはステップ８０４が続くが、一方で、宛先アドレス「Ａ」２０１がリストに記載されていない場合にはステップ８０３が続く。
【００６５】
ステップ８０４で、ハイパーバイザ１１５ａは、パケット２１０を対応するｃｌｏｕｄＩＰヘッダとカプセル化する。ステップ８０５で、ハイパーバイザ１１５ａは次に、修正されたパケット２０９を対応するｌｏｃＩＰおよびＭＡＣアドレスヘッダとカプセル化する。ＭＡＣアドレスヘッダはまた、ＶＬＡＮタグを含むことができる。ステップ８０６で、ハイパーバイザ１１５ａは、二重カプセル化されたパケット２０６を対応するｌｏｃＩＰアドレスに送信する。
【００６６】
ステップ８０７で、宛先「Ａ」がクラウドネットワーク１０３内にある場合、対応するｌｏｃＩＰアドレスにある中間スイッチ１１７ｂが、二重カプセル化されたパケット２０６からｌｏｃＩＰヘッダをカプセル開放し、修正されたパケット２０９を対応するｃｌｏｕｄＩＰアドレスに送信する。ステップ８０８で、対応するｃｌｏｕｄＩＰアドレスにあるハイパーバイザ１１５ｃが、ｃｌｏｕｄＩＰおよびＭＡＣアドレスヘッダの両方の修正されたパケット２０９をカプセル開放する。ステップ８０９で、ハイパーバイザ１１５ｃが、パケット２１０を宛先「Ａ」ＶＭ１１６ｃに送信する。いくつかの実施形態で、ハイパーバイザ１１５ｃは、パケット２０３を宛先「Ａ」ＶＭに送信する前に、検査のために修正されたパケットのセキュリティトークン６０２をまずチェックする。いくつかの実施形態で、ハイパーバイザ１１５ａは、ＶＬＡＮタグをチェックして、パケット２０９が同じＶＬＡＮから届いていることを確認することができる。
【００６７】
別法として、ステップ８０２で、宛先がプライベート企業ネットワーク１０１内にあると判定されるとき、方法８００は、ステップ８０３に進む。ステップ８０３で、ハイパーバイザ１１５ａは、ディレクトリサーバに宛先「Ａ」ＭＡＣアドレス、ｃｌｏｕｄＩＰアドレス、およびｌｏｃＩＰアドレスを問い合わせる。宛先がプライベート企業ネットワーク１０１内にあるとき、対応する宛先ｌｏｃＩＰは、クラウドデータセンタＣＥ１１２に接続された中間スイッチＩＰ１１７ａのＩＰアドレスと、クラウドデータセンタＣＥ１１２に対応する対応するＭＡＣおよびｃｌｏｕｄＩＰアドレスとである。
【００６８】
方法８００は、前記で詳述されたステップ８０４に対応する、８１０に進む。方法８００は次に、前記で詳述されたステップ８０５および８０６に対応する、ステップ８１１および８１２に進む。これは、クラウドデータセンタＣＥ１１２に対応する二重カプセル化されたパケット２０９のｃｌｏｕｄＩＰおよびＭＡＣアドレスをもたらす。
【００６９】
したがって、ステップ８１２ａで、クラウドデータセンタＣＥ１１２が、そのパケットがクラウドデータセンタＣＥ１１２と同じＩＰアドレス空間内にあるかどうかを判定する。それがそこにない場合、本方法８００はステップ８０７に進む。パケットが同じＩＰアドレス空間内にある場合、本方法８００はステップ８１３に進み、そこでクラウドデータセンタＣＥ１１２は、そのｌｏｃＩＰ、ＭＡＣ、およびｃｌｏｕｄＩＰヘッダの両方から二重カプセル化されたパケット２０６をカプセル開放する。ステップ８１４で、クラウドデータセンタＣＥ１１２が、ディレクトリ４００を使用して、プライベート企業ネットワーク１０１内の宛先アドレス「Ａ」の対応するエントリを見つける。
【００７０】
ステップ８１５で、クラウドデータセンタＣＥ１１２は、そのＭＡＣアドレスをプライベート企業ネットワーク１０１内の宛先「Ａ」アドレスに対応するＭＡＣアドレスで置換する。ステップ８１６で、クラウドデータセンタＣＥ１１２が、パケット２０６をプライベート企業ネットワーク１０１を介して宛先「Ａ」２０１に送信する。いくつかの実施形態で、ディレクトリ内にエントリがないとき、クラウドデータセンタＣＥ１１２は、ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦ−ＦＦなどのＭＡＣブロードキャストアドレスを使用し、プライベート企業ネットワーク１０１内の各デバイスにパケット２０６をブロードキャストすることができる。ステップ８１７で、プライベート企業ネットワーク１０１内の宛先「Ａ」アドレスにある顧客エッジデバイス１１１ａは、パケット２０５のＭＡＣヘッダをカプセル開放し、ステップ７１８で、顧客エッジデバイス１１１ａがパケット２０３を対応する宛先アドレス「Ａ」２０１に送信する。一代替実施形態で、顧客エッジルータ１１０ａは、ＶＬＡＮタグをチェックして、パケット２０５が同じＶＬＡＮからであることを確認することができる。
【００７１】
いくつかの実施形態で、各ＶＬＡＮは固有のものであり、ｃｌｏｕｄＩＰアドレスを不必要にする。したがって、ハイパーバイザ１１５ａは、ＩＰパケット２１０をｃｌｏｕｄＩＰヘッダとカプセル化しない。その代わりに、ハイパーバイザ１１５ａは、単カプセル化されたパケット３０９を宛先「Ａ」２０１に送信する。
【００７２】
本発明のさまざまな例示的実施形態はハードウェアおよび／またはファームウェアに実装され得ることが前述の説明から明らかであろう。さらに、さまざまな例示的実施形態は、本明細書に詳述された動作を実行するために、少なくとも１つのプロセッサによって読み取られ、実行され得る、機械可読の記憶媒体に保存された命令として実装され得る。機械可読の記憶媒体は、ネットワークノード（ルータまたはスイッチなど）などの機械によって読取り可能な形態で情報を保存する任意の機構を含み得る。したがって、機械可読の記憶媒体は、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリデバイス、および同様の記憶媒体を含み得る。
【００７３】
さまざまな例示的実施形態がそれらのある特定の例示的な態様を具体的に参照して詳述されてあるが、本発明は他の実施形態が可能であり、その詳細はさまざまな明白な点で修正が可能であることを理解されたい。当業者には容易に明らかなように、本発明の趣旨および範囲内に留まりつつ変更形態および修正形態が実装され得る。したがって、前述の開示、説明、および図面は、例示のみを目的とし、本特許請求の範囲によってのみ定義される本発明を決して限定しない。
【図１】
0005410614.tif 000002
【図２】
0005410614.tif 000003
【図３】
0005410614.tif 000004
【図４】
0005410614.tif 000005
【図５】
0005410614.tif 000006
【図６】
0005410614.tif 000007
【図７】
0005410614.tif 000008
【図８】
0005410614.tif 000009