JP2014526216A - データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法、オーバーレイ仮想ネットワークで通信するための方法、ネットワーク仮想化環境のためのシステム、データセンタおよびコンピュータ・プログラム - Google Patents

データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法、オーバーレイ仮想ネットワークで通信するための方法、ネットワーク仮想化環境のためのシステム、データセンタおよびコンピュータ・プログラム Download PDF

Info

Publication number
JP2014526216A
JP2014526216A JP2014525520A JP2014525520A JP2014526216A JP 2014526216 A JP2014526216 A JP 2014526216A JP 2014525520 A JP2014525520 A JP 2014525520A JP 2014525520 A JP2014525520 A JP 2014525520A JP 2014526216 A JP2014526216 A JP 2014526216A
Authority
JP
Japan
Prior art keywords
overlay
end station
helper
agent
network
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
JP2014525520A
Other languages
English (en)
Other versions
JP5946532B2 (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2014526216A publication Critical patent/JP2014526216A/ja
Application granted granted Critical
Publication of JP5946532B2 publication Critical patent/JP5946532B2/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4675Dynamic sharing of VLAN information amongst network nodes
    • H04L12/4679Arrangements for the registration or de-registration of VLAN attribute values, e.g. VLAN identifiers, port VLAN membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/356Switches specially adapted for specific applications for storage area networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/561Adding application-functional data or data for application control, e.g. adding metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Abstract

【課題】データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするためのシステムおよび方法を提供すること。
【解決手段】オーバーレイ・システムは、オーバーレイ・エージェントおよびオーバーレイ・ヘルパーを含むように、オーバーレイ仮想ネットワークに配置される。オーバーレイ・エージェントは、アクセス・スイッチで実施される。オーバーレイ・ヘルパーは、アクセス・スイッチと通信するエンドステーションで実施される。オーバーレイ・パラメータは、インバンド・プロトコルに従って、オーバーレイ・エージェントとオーバーレイ・ヘルパーとの間で送信される。
【選択図】図5

Description

本発明は一般にネットワーク仮想化に関し、より詳細には、物理ネットワークに仮想ネットワークをオーバーレイするためのシステムおよび方法に関する。
データセンタまたは関連する環境におけるサーバ仮想化は、クラウド・コンピューティングの主要な実現技術である。一般に、サーバ仮想化は、物理リソースおよびその使用を基礎となる物理マシンから切り離すソフトウェア抽象化を表すものである。大半の物理リソースを仮想化エンティティとして抽象化し、供給することができる。したがって、単一の物理マシンは、それぞれがゲスト・オペレーティング・システム(OS)と呼ばれる独自のオペレーティング・システムを有する複数の仮想マシンをホストすることができ、それによって、複数のユーザが物理マシンを共有することを可能にする。
データセンタ環境内で物理ネットワークに仮想ネットワークをオーバーレイしたいという要望は、いくつかの利点をもたらす。
1つのよく知られている利点は、仮想ネットワークがパブリック、プライベート、またはマルチテナント型クラウド環境におけるデータセンタ・クライアントに対するネットワーク・プロビジョニングを簡易化することができるということである。
一態様では、本発明は、データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法を特徴とする。方法は、オーバーレイ・エージェントおよびオーバーレイ・ヘルパーを含むように、オーバーレイ仮想ネットワークにオーバーレイ・システムを配置するステップを備える。オーバーレイ・エージェントは、アクセス・スイッチで実施される。オーバーレイ・ヘルパーは、アクセス・スイッチと通信するエンドステーションで実施される。オーバーレイ・パラメータは、インバンド・プロトコルに従って、オーバーレイ・エージェントとオーバーレイ・ヘルパーとの間で送信される。
別の態様では、本発明は、オーバーレイ仮想ネットワークで通信するための方法を特徴とする。第1のオーバーレイ・システムは、第1のアクセス・スイッチで実施されるオーバーレイ・エージェントと、第1のアクセス・スイッチと通信する第1のエンドステーションで実施されるオーバーレイ・ヘルパーとを含むように配置される。第2のオーバーレイ・システムは、第2のアクセス・スイッチで実施されるオーバーレイ・エージェントと、第2のアクセス・スイッチと通信する第2のエンドステーションで実施されるオーバーレイ・ヘルパーとを含むように配置される。オーバーレイ・パラメータは、第1のオーバーレイ・システムのオーバーレイ・エージェントから第1のオーバーレイ・システムのオーバーレイ・ヘルパーに送信される。オーバーレイ・パラメータは、第1のエンドステーションから第2のエンドステーションにデータ・パケットを送信するためのデータを含む。
別の態様では、本発明は、ネットワーク仮想化環境のためのオーバーレイ・システムを特徴とする。オーバーレイ・システムは、ネットワークのエッジにあるアクセス・スイッチにおけるオーバーレイ・エージェントを含む。オーバーレイ・エージェントは、宛先エンドステーションに関連するオーバーレイ・パラメータを含むオーバーレイ・カプセル化フィールドを生成するように構成される。また、オーバーレイ・システムは、アクセス・スイッチと通信するホストコンピュータにおけるオーバーレイ・ヘルパーを含む。オーバーレイ・ヘルパーは、オーバーレイ・カプセル化フィールドを第1のパケットに付加し、オーバーレイ・カプセル化フィールドを含む第1のパケットを宛先エンドステーションに送信するように構成される。
別の態様では、本発明は、データセンタ環境を特徴とする。データセンタ環境は、ネットワーク・エッジ・スイッチと、ホストコンピュータと、オーバーレイ・システムとを備える。ホストコンピュータは、ローカル・エリア・ネットワーク接続を介してアクセス・スイッチと通信する。オーバーレイ・システムは、アクセス・スイッチにおけるオーバーレイ・エージェントおよびホストコンピュータにおけるオーバーレイ・ヘルパーを備える。オーバーレイ・エージェントは、宛先エンドステーションに関連するオーバーレイ・パラメータを含むオーバーレイ・カプセル化フィールドを生成するように構成される。オーバーレイ・ヘルパーは、オーバーレイ・カプセル化フィールドをパケットに付加し、オーバーレイ・カプセル化フィールドを含むパケットを宛先エンドステーションに送信するように構成される。
別の態様では、本発明は、データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするためのコンピュータ・プログラム製品を特徴とする。コンピュータ・プログラム製品は、それによって具体化されるコンピュータ可読プログラム・コードを有するコンピュータ可読記憶媒体を備える。コンピュータ可読プログラム・コードは、オーバーレイ・エージェントおよびオーバーレイ・ヘルパーを含むように、オーバーレイ仮想ネットワークにオーバーレイ・システムを配置するように構成されるコンピュータ可読プログラム・コードを備える。コンピュータ可読プログラム・コードは、オーバーレイ・エージェントをアクセス・スイッチで実施するように構成されるコンピュータ可読プログラム・コードをさらに備える。コンピュータ可読プログラム・コードは、オーバーレイ・ヘルパーをアクセス・スイッチと通信するエンドステーションで実施するように構成されるコンピュータ可読プログラム・コードを備える。コンピュータ可読プログラム・コードは、インバンド・プロトコルに従って、オーバーレイ・エージェントとオーバーレイ・ヘルパーとの間でオーバーレイ・パラメータを送信するように構成されるコンピュータ可読プログラム・コードを備える。
次に、添付の図面を参照しながら、例のみとして、本発明の(1つまたは複数の)実施形態について説明する。
本発明の実施形態を用いることができるデータセンタ環境のブロック図である。 一実施形態による、2つのエンドステーションが同じオーバーレイ仮想ネットワークにある環境のブロック図である。 一実施形態による、オーバーレイ・システムのハイレベル・アーキテクチャを示すブロック図である。 一実施形態による、図2のエンドステーションとオーバーレイ・システムとの間で通信するためのプロセスフローを示す概略ブロック図である。 一実施形態による、仮想ネットワーク・オーバーレイ動作を行うためのプロセスの流れ図である。 一実施形態による、仮想ネットワーク・オーバーレイを用いて構成された、ホストコンピュータおよびアクセス・スイッチを含む環境のブロック図である。 別の実施形態による、仮想ネットワーク・オーバーレイを用いて構成された、ホストコンピュータおよびアクセス・スイッチを含む環境のブロック図である。 別の実施形態による、仮想ネットワーク・オーバーレイを用いて構成された、ホストコンピュータおよびアクセス・スイッチを含む環境のブロック図である。 一実施形態による、送信元オーバーレイ・システムを初期化するためのプロセスフローを示す概略ブロック図である。 一実施形態による、宛先オーバーレイ・システムを初期化するためのプロセスフローを示す概略ブロック図である。 一実施形態による、送信元オーバーレイ・システムと通信するためのプロセスフローを示す概略ブロック図である。 一実施形態による、宛先オーバーレイ・システムと通信するためのプロセスフローを示す概略ブロック図である。
以下の説明では、具体的な詳細が記載されているが、その詳細の少なくともいくつかがなくてもシステムおよび方法を実施することができることが当業者によって諒解されるはずである。場合によっては、知られている特徴またはプロセスは、本発明を不明瞭にしないために、詳細には説明されない。
オーバーレイ・ネットワークは通常、物理ネットワークのエッジに設置された複数のオーバーレイ・エージェントを含む。それぞれのオーバーレイ・エージェントは、例えば、所与のエンドステーションから仮想ネットワークにパケットをマップすること、また、仮想ネットワークから所与のエンドステーションにパケットをマップすることによって、対応するエンドステーションによって送信されたパケットを分類するように構成される。また、オーバーレイ・エージェントは、宛先エンドステーションに向けて送られるパケットにオーバーレイ・ヘッダを付加することができ、宛先エンドステーションは、ネットワーク管理ステーションまたはポリシー・サーバによって提供される仮想ネットワーク・オーバーレイ・パラメータでポピュレートされる。パラメータは、送信されたパケットの仮想ネットワークを特定し、送信元エンドステーションと通信するオーバーレイ・エージェントから、物理ネットワークを介して、好ましくは送信元エンドステーションと同じ仮想ネットワークに設置された宛先エンドステーションと通信する別のオーバーレイ・エージェントにパケットを送信することを可能にするための情報を含むことができる。受信側オーバーレイ・エージェントは、オーバーレイ・ヘッダから、例えば、オーバーレイ・ヘッダに提供された仮想ネットワーク識別子から、正しい宛先エンドステーションを判別することができる。
従来のオーバーレイ構成に関連付けられた制限は、例えば、従来のイーサネット(R)・スイッチは、送信元オーバーレイ・エージェントによってパケットに付加されたオーバーレイ・ヘッダを認識することができず、したがって、パケットの正しい宛先を判別するのに必要な仮想ネットワーク識別子などのオーバーレイ・ヘッダのコンテンツを処理することができないので、イーサネット(R)・スイッチなどのレガシー・ネットワーク・デバイスはオーバーレイ動作に関与することができないということである。
1つの従来の手法は、イーサネット(R)または関連する切替サービスを仮想マシンに追加する、仮想スイッチ、すなわちvswitchを含むサーバ仮想化環境を提供することである。仮想スイッチはホストサーバ・ソフトウェアで実施され、十分な量のメモリおよびCPUにアクセスするので、仮想スイッチをオーバーレイ・エージェントとして動作するように修正することができる。仮想化を意識したネットワーク・スイッチとともに使用することができる仮想化ソフトウェア製品の例としては、Citrix Systems, Inc.によって製作されたXenSource(商標)、Microsoft Corp.によって製作されたHyper−V(商標)、VMware(R)、またはカーネルベース仮想マシン(KVM)などのオープンソース・ソフトウェアを挙げることができる。
従来のサーバ仮想化環境では、非仮想化エンドステーションはオーバーレイ・ネットワークの一部とすることができない。また、仮想化ベースのソリューションは、物理ホストサーバで仮想マシンを実施するためのベンダ固有の仮想化ソフトウェアに依存し、したがって、独自開発の仮想スイッチ拡張機能の利用可能性およびそれぞれの仮想スイッチ・プラットフォームでのその受容性に依存する。そのような環境を実施し、維持するためには、環境およびサポート用の相当なリソースが必要である。
概略すると、本発明の概念の態様は、ネットワーク・アクセス・スイッチとホストサーバの両方で実施されるオーバーレイ・システムを含み、仮想化ネットワーク・エンティティおよび非仮想化ネットワーク・エンティティが同様に、同じオーバーレイ仮想ネットワークの一部となることができる。オーバーレイ・システムは、オーバーレイ・エージェントおよび対応するオーバーレイ・ヘルパーを含む。オーバーレイ・エージェントは、1つまたは複数の仮想エンドステーションまたは物理エンドステーションあるいはその両方が接続される、アクセス・スイッチまたは他のネットワーク・エッジ・デバイス上で動作する。オーバーレイ・ヘルパーは、ホストコンピュータ上で、例えば、従来の非仮想化サーバ内のネットワーク・インターフェース・コントローラ(NIC)デバイス・ドライバ、ファームウェア、またはハードウェアのイーサネット(R)・レイヤで、または仮想化サーバのハイパーバイザにおけるデバイス・ドライバで動作する。オーバーレイ・エージェントおよびオーバーレイ・ヘルパーは、インバンド・プロトコル、例えば、ホップ・バイ・ホップ・レイヤ2プロトコルを介して仮想化パラメータなどを交換することによって、互いに通信する。
このようにして、アクセス・スイッチおよびエンドステーションNICにおいて、例えば、ファームウェアに代わるものとしてソフトウェアでオーバーレイ・ネットワーク特性を定義することができる、エンドステーションのオペレーティング・システムの下で、プログラム・コード、またはソフトウェアの形でオーバーレイ・システムを実施することによって、非常にスケーラブルな仮想ネットワーク環境を提供することができる。したがって、オーバーレイ構成は物理ネットワークのエッジで完全に常駐するまたは仮想化サーバで完全に常駐する必要がない。したがって、エンドステーションがアクセス・スイッチにおけるオーバーレイ・エージェントと通信するオーバーレイ・ヘルパーを用いて構成される限り、仮想化エンドステーションと非仮想化エンドステーションの両方を仮想ネットワーク・ドメインの一部とすることができる。このようにしてオーバーレイ・システムを実施することは、アクセス・スイッチおよびネットワーク・アダプタのリソースをプールすることによって、スケーリングを改善することができる。そうでなければ、アクセス・スイッチのみがオーバーレイ構成に含まれる場合、アクセス・スイッチは複数のポートに対するオーバーレイ関連の通信を処理する必要があり、その結果としてハードウェアの複雑性およびリソースが増大する。サーバ常駐ネットワーク・アダプタはその近くにあるエンドステーションのサブセットを処理するので、アダプタに関する要件はあまり厳しくなく、したがって、アクセス・スイッチは一定のデータ・プレーン・オーバーレイ機能の処理をサーバ常駐アダプタにオフロードすることができる。
図1は、本発明の概念の実施形態を用いることができるデータセンタ環境100のブロック図である。一般に、データセンタ環境100は、組織の計算、記憶、およびネットワーキングの中心として働く1つまたは複数の場所を含むことができる。データセンタ環境100の機器は一緒に局所的に単一の拠点で常駐することができ、または2つ以上の別個の拠点に分散させることができる。
データセンタ環境100は、アクセス・スイッチ16を介してネットワーク14と通信する1つまたは複数のホストコンピュータ12を含むことができる。図示されていないが、データセンタ環境100は、アクセス・スイッチ16とネットワーク14との間、または他のよく知られているデータセンタ機器の間、あるいはこれら両方の間に置かれた1つまたは複数のアグリゲータ/ゲートウェイ・スイッチを含むことができる。アクセス・スイッチ16または関連するデータセンタ機器あるいはその両方を、ネットワーク14の一部とみなすことができる。ネットワーク14は、例えば、イントラネット、エクストラネット、インターネット、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、もしくはメトロポリタン・エリア・ネットワーク(MAN)、またはこれらの任意の組合せとすることができる。ホストコンピュータ12は、別のネットワーク30、例えば、イーサネット(R)LANを介して、または直接接続を介してアクセス・スイッチ16と通信することができる。あるいは、ホストコンピュータ12がネットワーク14と直接通信するように、ネットワーク30をネットワーク14の一部とすることができる。
ホストコンピュータ12は、サーバまたはブレードなどの物理コンピューティング・デバイスの一実施形態とすることができる。ホストコンピュータ12は、単独で常駐することができ、または他のホストコンピュータとともにシャーシに、例えば、ラック・サーバにまたはブレード・サーバにインストールすることができる。アクセス・スイッチ16は、単独で常駐することができ、またはホストコンピュータ12と同じ機器シャーシ内にインストールすることができる。
ホストコンピュータ12は、CPUなどの1つまたは複数の処理デバイス20を含むことができ、メモリ・デバイス22と、少なくとも1つの物理ネットワーク・インターフェース(NIC)を有する物理ネットワーク入力/出力(I/O)アダプタ24とをさらに含むことができる。ホストコンピュータ12の物理構成要素、例えば、CPU20、メモリ・デバイス22、およびI/Oアダプタ24は、当業者に知られている1つまたは複数のバス、コネクタ、アダプタなどを介して、互いに通信することができる。ホストコンピュータ12は仮想化システム18を実行することができ、仮想化システム18は任意選択でハイパーバイザまたは仮想マシン・マネージャ(VMM)を含むことができる。他の実施形態では、ホストコンピュータ12は非仮想化サーバまたはサーバ・ブレードとすることができる。
メモリ22は、揮発性メモリ、例えば、RAMなど、または不揮発性メモリ、例えば、ROM、フラッシュメモリなど、あるいはその両方を含むことができる。メモリは、データを記憶するための当業者に知られている方法および技術に従って実施される取外し可能記憶媒体または取外し不能記憶媒体あるいはその両方を含むことができる。メモリに記憶されるものとしては、プロセッサ20によって実行されるオペレーティング・システム34のプログラム・コードまたは仮想化システム18に対応するプログラム・コードあるいはその両方などのプログラム・コードを挙げることができる。
NIC24は、任意の形態のI/O仮想化にハードウェア、ソフトウェア、またはこれらの組合せにおけるサポートを提供する。例としては、SR−IOV NICおよび非SR−IOV NIC、マルチキューNIC、ネットワーク・インターフェース・コントローラ、I/Oアダプタ、ならびにコンバージド・ネットワーク・アダプタが挙げられるが、これらに限定されない。以下で詳細に説明するようにNIC24がネットワーク30とデータを送受信することができるように、サーバ・オペレーティング・システム34、NICドライバなどによってNIC24を管理することができる。アクセス・スイッチ16とのネットワークI/Oを処理することに加えて、NIC24は、仮想マシン(図示せず)間で、例えば、仮想マシンの仮想NIC(vNIC)とパケットを交換する通信経路を提供する。
アクセス・スイッチ16は、NIC24と通信する、より具体的には、NIC24の物理ポート(図示せず)と通信する複数の物理アップリンク/ダウンリンク・ポート26を含む。一般に、アクセス・スイッチ16は、例えば、アップリンク/ダウンリンク・ポート26間で、および同じホストコンピュータ12上で実行している仮想マシン間でコンピュータを切り替えるための、イーサネット(R)・スイッチとして実施されるネットワーク要素である。ホストコンピュータ12とアクセス・スイッチ16との間の物理リンクの例示的な実施態様は、10Gbイーサネット(R)・リンクである。アクセス・スイッチ16の例示的な実施態様は、イーサネット(R)・スイッチ、例えば、カリフォルニア州サンタクララのBlade Network Technologies, Inc.によって製造された24ポート10Gbイーサネット(R)・スイッチ・モジュールである。他の実施形態では、切替はオーバーレイ・システムの要素を用いて構成されたネットワーク・アダプタで行うことができる。ここで、切替は、ネットワーク・アダプタと通信する仮想マシン間、またはアクセス・スイッチと通信する仮想マシン間、あるいはネットワーク・アダプタと通信する仮想マシンと、アクセス・スイッチと通信する仮想マシンとの間で行うことができる。
アクセス・スイッチ16は、ハイパーバイザ内VM間切替などを行うための管理モジュール28を用いて構成することができる。リモート管理ステーション32は、管理モジュール28を介して、アクセス・スイッチ16またはホストコンピュータ12あるいはその両方を制御および管理することができる。アクセス・スイッチ16は、ネットワーク・トポロジ情報を提供する、パケットを分類するなどのために、管理モジュール28を介して外部ポリシー・サーバまたは管理ステーション32あるいはその両方と通信するオーバーレイ・エージェント36を含むことができる。オーバーレイ・エージェント36は、仮想ネットワーク・オーバーレイ動作を行う、例えば、2つ以上のエンドステーションがオーバーレイ仮想ネットワークで通信するのを可能にするように構成される。
図2は、一実施形態による、2つのエンドステーション202、206が同じオーバーレイ仮想ネットワークにある環境200のブロック図である。エンドステーション202、206は、ルータ212を介してデータ・パケットを互いに交換することができる。1つまたは複数のアクセス・スイッチ(図示せず)を、エンドステーション202、206とルータ210との間に位置付けることができる。一実施形態では、エンドステーション202、206は異なる物理サブネットに対して構成され、共通仮想ネットワークのメンバーとすることができる。したがって、ルータ212は、エンドステーション202がメンバーである第1のサブネットにサービス提供するための第1のサブネット・インターフェースR1と、エンドステーション206がメンバーである第2のサブネットにサービス提供するための第2のサブネット・インターフェースR2とを含む。他の実施形態では、エンドステーション202、206は同じ物理ネットワーク、例えば、物理レイヤ2ネットワークの一部として、または同じサブネット、例えば、同じレイヤ3(例えば、IP)サブネット上で構成される。環境200で行われる動作について説明する目的で、図2のオーバーレイ・システム204を送信元オーバーレイ・システムと呼ぶことができ、図2のオーバーレイ・システム208を宛先オーバーレイ・システムと呼ぶことができる。図2に示すような一実施形態では、環境200はIPネットワークを含む。他の実施形態では、環境200はレイヤ2ネットワークを含む。
エンドステーション202はオーバーレイ・システムA 204と通信し、エンドステーション206はオーバーレイ・システムB 208と通信する。オーバーレイ・システムA 204またはオーバーレイ・システムB 206あるいはその両方は、複数のエンドステーションにサービス提供することができる。オーバーレイ・システム204、206は、例えば、以下で説明されるオーバーレイ動作を行うときに、互いに通信することができる。エンドステーション202またはエンドステーション206あるいはその両方は、仮想化エンドステーションとすることができる。あるいは、エンドステーション202またはエンドステーション206あるいはその両方は、非仮想化エンドステーションとすることができる。したがって、環境200は仮想化エンドステーションと非仮想化エンドステーションの組合せを含むことができる。
図3は、一実施形態による、オーバーレイ・システム300のハイレベル・アーキテクチャを示すブロック図である。図3に関して説明されるオーバーレイ・システム・アーキテクチャは、図2を参照して説明されるオーバーレイ・システムA 204またはオーバーレイ・システムB 208あるいはその両方に適用することができる。したがって、オーバーレイ・システムA 204およびオーバーレイ・システムB 208はそれぞれ、オーバーレイ・システム300の要素のいくつかまたはすべてを含む。図3について説明する際、図1または図2あるいはその両方の他の要素を参照する場合がある。IPネットワーク、レイヤ2ネットワーク、または当業者に知られている他のネットワーク用にオーバーレイ・システム300を構成することができる。
オーバーレイ・システム300は、オーバーレイ・エージェント302およびオーバーレイ・ヘルパー304を含む。オーバーレイ・エージェント302を、図1のアクセス・スイッチ16または図2のルータ210もしくはエッジ・スイッチ(図示せず)に設置することができる。オーバーレイ・ヘルパー304を、図1のホストコンピュータ12か、図2のエンドステーション202またはエンドステーション206あるいはその両方、例えば、イーサネット(R)・デバイス・ドライバに設置することができる。
オーバーレイ・エージェント302は、管理インターフェース306、ポリシー・エージェント308、アドレス・ハンドラ310、および分類器312Aを含む。管理インターフェース306は、オーバーレイ・パラメータを構成し、オーバーレイ・システム300が実施されるオーバーレイ仮想ネットワークに様々な制御機能および管理機能を提供するために、管理ステーション32へのインターフェースを提供する。例えば、管理インターフェース306を介した管理ステーション32は、仮想ネットワークおよびそのメンバーを定義することができる。また、管理ステーション32は、トポロジ・マップを構築する、配置基準を決定するなどの、オーバーレイ仮想ネットワークの管理に関連するタスクを行うために、ネットワーク・スイッチ、仮想化マネージャ、サーバマネージャなどの、データセンタ内のデバイスおよび他の専用管理ステーションとやり取りすることができる。一実施形態では、管理インターフェース306は、物理ネットワークまたは仮想ネットワークあるいはその両方の全体像(global view)を管理ステーション32に提供するために構成される。管理インターフェース306は、ローカルパラメータ、例えば、パケット分類基準をオーバーレイ・システム300の他の構成要素に伝えることができる。例えば、管理ステーション32は、仮想ネットワークに関連付けられた識別子を構成することができる。次いで、オーバーレイ・エージェント302は、物理または仮想ポート番号、MACアドレスなどに基づいて、所定のトラフィック分類について分類器312Aを構成することができる。
ポリシー・エージェント308は、ポリシー・エンジンとも呼ばれるポリシー・サーバ212と通信して、所与の仮想ネットワーク内の宛先エンドステーションに対応する宛先オーバーレイ・エージェントのIPアドレスまたは関連するデータを含むポリシー・キャッシュを構築することができる。ポリシー・キャッシュは、ローカル・エンドステーションが通信したいと望む宛先エンドステーションのマッピングを含む。ポリシー・サーバ212は、図2のエンドステーション202、206、オーバーレイ・システム204、208、またはエッジ・スイッチ(図示せず)あるいはそれらすべてなどの、データセンタ環境の様々な構成要素とやり取りすることによって、オーバーレイ・ネットワーク内の1つまたは複数のエンドステーションの場所を判別し、そのIPアドレスを取得することができる。別の実施形態では、管理ステーション32は、管理インターフェース306を介してポリシー・サーバ212と通信して、通信経路を確立するためのマッピング関連の情報をエンドステーション202、206に提供する。
アドレス・ハンドラ310は、アドレス解決プロトコル(ARP)要求またはレイヤ2関連の通信をエンドステーション202、206から受信し、処理する。ARPはIPアドレスをMACアドレスまたは他のレイヤ2アドレスに関連付けるために使用される、よく知られているプロトコルであるので、簡潔にするために、ARPの詳細は本明細書では開示されない。アドレス・ハンドラ310は、送信元エンドステーションの仮想ネットワークにあるターゲット・エンドステーションと通信するための宛先オーバーレイ・エージェントのIPアドレスについて、ポリシー・エージェント308に照会し、例えば、ARPに従って、宛先オーバーレイ・エージェントのIPアドレスのネクスト・ホップMACアドレスを決定することができる。ネクスト・ホップの決定は、例えば、物理ネットワークで、通常のARP機構を介して行うことができる。レイヤ2ネットワークおよび対応するレイヤ2仮想ネットワーク・サービスが提供される実施形態では、アドレス・ハンドラ310はオーバーレイ・システム300の一部ではない。ここでは、宛先IPアドレスの代わりに宛先MACアドレスに基づいて、パケットを分類することができる。したがって、仮想ネットワーク識別子は代替的に、IPアドレスの代わりにMACアドレスを適格とすることができる。
オーバーレイ・システム300のオーバーレイ・ヘルパー304は、IPハンドラ314および分類器312Bを含み、分類器312Bはオーバーレイ・エージェント302の分類器312Aの一部である。オーバーレイ・エージェント302における分類器312Aは、受信されたデータトラフィック、特に、オーバーレイ・システムによってサービス提供されるローカル・エンドステーションのうちの1つに向けたトラフィックを処理する。一方、オーバーレイ・ヘルパー304における分類器312Bは、送信用のパケットを処理する。例えば、分類器312Bは、エンドステーション、例えば、エンドステーション202からIPパケットまたはレイヤ2データなどを受信し、パケットを仮想ネットワークにマップする。管理インターフェース306を介して、このマッピングを構成することができる。本明細書で使用される場合、オーバーレイ・エージェント302の分類器312Aおよびオーバーレイ・ヘルパー304の分類器312Bを全体として分類器312と呼ぶことができる。要するに、分類器312は、例えば、管理ステーション32によって構成された、事前構成された仮想ポートまたはMACベースの分類に基づいて、ローカル・エンドステーションから来るすべてのパケットを仮想ネットワークにマップする。したがって、エンドステーションによって送信されたすべてのパケットは、分類器312を介して送信され、分類器312は、受信されたパケットを仮想ネットワークにマップする。
IPハンドラ314は、エンドステーションから分類器312を介してIPパケットを受信し、それぞれの受信されたIPパケットにオーバーレイ・カプセル化を付加する。オーバーレイ・カプセル化は、外側オーバーレイMACヘッダ、外側オーバーレイIPヘッダ、およびオーバーレイ固有ヘッダを含むことができる。外側オーバーレイMACヘッダは、オーバーレイ・システムA 204に対応する送信元MACアドレスおよびターゲット・オーバーレイIPアドレスのネクスト・ホップIPアドレスに対応する宛先MACアドレスを含むことができる。外側オーバーレイIPヘッダは、送信元オーバーレイ・システム204のIPアドレスおよびオーバーレイ・システムB 208のIPアドレスを含むことができる。オーバーレイ固有ヘッダは、仮想ネットワークを識別する一意の識別子を含むことができる。
宛先オーバーレイ・システム208のIPハンドラ314は、送信元オーバーレイ・システム204から送られたカプセル化されたIPパケットを受信することができ、宛先エンドステーション206の内側IP宛先、すなわち、IPアドレスおよび仮想ネットワーク識別子に基づいて、パケットの宛先である宛先エンドステーション206の場所を特定することができる。宛先オーバーレイ・システム208のIPハンドラ314は、ポリシー・エージェント308と通信して、宛先エンドステーション206のマッピング情報を取り出すことができる。ローカル宛先はパケットのコンテンツから引き出すことができ、ターゲット・ポートはその設定から識別することができる。ここで、ルックアップは必要でない場合がある。とは言うものの、一方では、ターゲットが場所を変更した場合、ルックアップが必要となる場合がある。IPハンドラ314はローカル・ポリシー・エージェント308に照会することができ、ローカル・キャッシュにマッピングが見つからない場合、今度は、ローカル・ポリシー・エージェント308がグローバル・ポリシー・サーバ212に照会する。エンドステーションが識別されると、IPハンドラ314は、パケット・フレームを宛先エンドステーション206に転送する前に、オーバーレイ・ヘッダを剥ぎ取る。
図4は、一実施形態による、図2のエンドステーション202、206とオーバーレイ・システム204、208との間で通信するためのプロセスフロー400を示す概略ブロック図である。プロセスフロー400について説明する際、図1〜図3も参照する。メモリ・デバイスに記憶され、エンドステーション202、エンドステーション206、ルータ210、ポリシー・サーバ212、またはエンドステーション202、206とルータ210との間の1つもしくは複数の介在スイッチ(図示せず)あるいはそれらすべてのうちの少なくとも1つのプロセッサによって実行される命令によって、プロセスフロー400を統制することができる。図4では、エンドステーション202を送信元エンドステーションと呼ぶことができ、エンドステーション206を宛先エンドステーションと呼ぶことができる。また、図4では、オーバーレイ・システムA 204を送信元オーバーレイ・システムと呼ぶことができ、オーバーレイ・システムB 208を宛先オーバーレイ・システムと呼ぶことができる。本明細書ではオーバーレイ・システム204、208が参照されているが、図3に記載されたオーバーレイ・システム300が同様に適用される。
宛先要求メッセージは、エンドステーション202からオーバーレイ・システムA 204に出力され(402)、例えば、ブロードキャスト・メッセージとして出力される。ブロードキャスト・メッセージを、よく知られているやり方で出力する、例えば、アドレス解決のためのARPに従って出すことができる。あるいは、レイヤ2フォーマットで宛先要求メッセージを出力することができる。ここで、宛先エンドポイントへのユニキャスト・メッセージがオーバーレイ・システム300によって受信されたときに、ポリシー・キャッシュを更新することができる。
送信元オーバーレイ・システム204は宛先要求メッセージを受信することができ、それによって、送信元オーバーレイ・システム204のオーバーレイ・エージェント302のアドレス・ハンドラ310は、あらかじめ定義された仮想ネットワーク内の宛先エンドステーション206に関連する宛先オーバーレイ・システム208のIPアドレスについて、ポリシー・エージェント308に照会することができる。送信元オーバーレイ・システム204のポリシー・エージェント308は最初にそのポリシー・キャッシュ(図示せず)にアクセスすることができ、ポリシー・キャッシュは、送信元エンドステーション202が通信したいと望む宛先エンドステーション206の宛先オーバーレイ・システム208に関連するマッピング情報を記憶することができる。ポリシー・キャッシュにそのようなマッピング情報が見つからない場合、アドレス・ハンドラ310はメッセージ、例えば、ユニキャスト・メッセージをポリシー・サーバ212に出力して、マッピング情報を取得する(404)ことができる。特に、オーバーレイ・システム300は、宛先エンドポイント206が送信元エンドポイント202と同じ仮想ネットワーク内で接続されるターゲット・オーバーレイ・システムの場所をポリシー・サーバ212に要求する。ポリシー・サーバ212は、データセンタの要素および送信元オーバーレイ・システム204とやり取りすることによって、宛先エンドステーション206の物理的な場所を判別することができる。
ポリシー・サーバ212が宛先エンドステーション206の場所を判別し、要求されたマッピング情報を提供することができると仮定すると、ポリシー・サーバ212は、要求されたマッピング情報、具体的には、宛先エンドステーション206のIPアドレスのマッピングを宛先オーバーレイ・システム208に出力する(406)ことができる。例えば、アドレス・ハンドラ310はポリシー・キャッシュに照会することができ、そこで見つからない場合、ポリシー・エージェント308はポリシー・サーバ212にコンタクトして、マッピング情報を取り出し、マッピング情報をアドレス・ハンドラ310に返す。次いで、アドレス・ハンドラ310は、ローカル・エンドステーション、すなわち、送信元エンドポイント202から送出されたARP要求を満たすことができる。加えて、ポリシー・エージェント308は、ポリシー・サーバ212と通信して、宛先エンドステーション206の場所を判別し、マッピング情報を用いてポリシー・キャッシュを更新することができる。
送信元オーバーレイ・システム204のアドレス・ハンドラ310は、宛先エンドステーション206のIPアドレスおよびエンドステーション202への最初のARP要求に応答して生成された対応するネクスト・ホップMACアドレスを出力する(408)ことができる。アドレス解決の後、送信元エンドステーション202は、レイヤ2(例えば、イーサネット(R))ヘッダ411、IPヘッダ412、およびペイロード(PL)413を含むパケットを出力する(410)ことができる。レイヤ2ヘッダ411は、ポリシー・サーバ212またはポリシー・エージェント308あるいはその両方から受信されたネクスト・ホップMACアドレス(R1 MACアドレス)および宛先IPアドレス(ES2 IPアドレス)を含むことができる。
オーバーレイ・システムA 204、特に、IPハンドラ314は、エンドステーション202からパケットを受信する。IPハンドラ314は、オーバーレイ・カプセル化418をパケットに付加し、カプセル化されたパケットを出力する(414)。オーバーレイ・カプセル化418は、外側オーバーレイMACヘッダ415、外側オーバーレイIPヘッダ416、およびオーバーレイ・ヘッダ417を含む。任意選択のレイヤ4ヘッダ(図示せず)、例えば、UDPヘッダを、IPヘッダ416とオーバーレイ・ヘッダ417との間に位置付けることができる。外側オーバーレイMACヘッダ413は、送信元オーバーレイ・システム204に対応する送信元MACアドレス(omac1)および宛先MACアドレス、例えば、ネクスト・ホップMACアドレス(rmac1)を含む。一実施形態では、ターゲットが送信元と同じサブネットにある場合、宛先MACアドレスは宛先オーバーレイ・システム208の宛先MACアドレスである。別の実施形態では、図2に示すように、宛先MACアドレスは、エンドステーション202、206それぞれのサブネット間でパケットをルーティングするゲートウェイ・インターフェース(R1)の宛先MACアドレスである。
外側オーバーレイIPヘッダ416は、送信元オーバーレイ・システム204のIPアドレスおよび宛先オーバーレイ・システム208のIPアドレスを含むことができる。オーバーレイ・ヘッダ417は、仮想ネットワークを識別する一意の識別子を含むことができる。送信元エンドステーション202から受信されたパケットにオーバーレイ・カプセル化418が付加されると、元のパケット411、412、413のコンテンツが組み合わされて、新しいペイロードPL1 419を形成し、新しいペイロードPL1 419はオーバーレイ・カプセル化418とともに、ルータ210に、または代替的にはエッジ・スイッチもしくは関連するネットワーク・スイッチに出力される(414)。
ルータ210、具体的には、ネクスト・ホップMACアドレスから識別されたルータ210の第1のサブネット・インターフェースR1は、ペイロードPL1 419を有するパケットを受信し、ペイロードPL1 419ならびにオーバーレイ・ヘッダ417および外側オーバーレイIPヘッダ416のコンテンツを宛先エンドステーション206または宛先オーバーレイ・システム208あるいはその両方がメンバーである第2のサブネットにサービス提供する第2のインターフェースR2から出力(420)する。送信元MACアドレス、すなわち、第2のルータ・インターフェースR2のMACアドレスと、宛先オーバーレイ・システム208のIPアドレスに対応する宛先オーバーレイ・エージェント208のMACアドレスとを含むMACアドレスヘッダ421が外側オーバーレイIPヘッダ416において付加される。
オーバーレイ・システムB 208は、ルータ210から受信されたパケットからオーバーレイ・ヘッダ417を取り除き、元のペイロード413を宛先エンドステーション206に出力することができる。宛先オーバーレイ・システム208のIPハンドラ314は、宛先IPアドレス・フィールド412で提供される内側IP宛先(esip2)およびオーバーレイ・ヘッダ417内の仮想ネットワーク情報、例えば、一意の仮想ネットワーク識別子に基づいて、パケットを受信するための意図された宛先エンドステーションを判別することができる。オーバーレイ・システムB 208は、この情報を使用して、宛先エンドステーション206を判別し、元のペイロード413を含むデータ・パケットを宛先エンドステーション206に出力する(422)ことができる。
図5は、一実施形態による、オーバーレイ動作を行うための方法500の流れ図である。方法500について説明する際、図1〜図4の要素も参照する。
ブロック502で、オーバーレイ・システム300のオーバーレイ・エージェント302をアクセス・スイッチ16または関連するネットワーク・エッジ・デバイスで実施することができる。上述したように、オーバーレイ・エージェント302は、管理インターフェース306、ポリシー・エージェント308、アドレス・ハンドラ310、および分類器312Aを含むことができる。
ブロック504で、オーバーレイ・ヘルパー304は、ホストコンピュータ12で実施される。上述したように、オーバーレイ・ヘルパー304は、IPハンドラ314および分類器312を含むことができる。一実施形態では、オーバーレイ・ヘルパー304は、ハイパーバイザNICドライバで実施される。別の環境では、オーバーレイ・ヘルパー304は、SR IOV NICで実施される。別の環境では、オーバーレイ・ヘルパー304は、レガシーNIC、OS NICドライバ、またはNICファームウェアもしくはハードウェアあるいはそれらすべてで実施される。
ブロック506で、インバンド・プロトコルを介してオーバーレイ・エージェント302からオーバーレイ・ヘルパー304にオーバーレイ・パラメータを送信することができる。2つのエンドステーション間でトラフィック・フローを開始する前に、物理または仮想ポート番号、MACアドレスなどに基づいた分類基準を交換することができる。トラフィック・フローの開始時に、ポリシー・キャッシュ・エントリなどを交換することができる。受信されたパケットにオーバーレイ・ヘッダを付加することによってカプセル化を行うことができ、受信されたパケットは、IPアドレス情報もしくはMACアドレス情報またはその両方、仮想ネットワーク情報、またはオーバーレイ仮想ネットワーク内でパケットの宛先エンドステーションを判別するための関連する情報あるいはそれらすべてを含む。したがって、アクセス・スイッチとエンドステーションの両方でオーバーレイ・システム300を実施することによって、仮想化デバイスに加えてレガシー・デバイスを含むように仮想ネットワークを拡大することができ、それによって、ハイパーバイザ・プラットフォームなどへのいかなる依存も低減する。そうする際に、オーバーレイ仮想ネットワーク機能をオペレーティング・システムまたはハイパーバイザから切り離すことができる。さらに、オーバーレイ・ヘルパーによって行われるオーバーレイ・ヘッダの付加、削除、または修正をホストコンピュータ・オペレーティング・システム下のハードウェア、ファームウェア、またはソフトウェア・レイヤで行うことができる。したがって、オペレーティング・システムを修正する必要なしに、オーバーレイ機能を行うことができる。
図6は、一実施形態による、仮想ネットワーク・オーバーレイ・システム300を用いて構成された、ホストコンピュータ612およびアクセス・スイッチ616を含む環境600のブロック図である。
ホストコンピュータ612は、ホストコンピュータ12のハードウェアを仮想マシン602−1から602−N(全体として、602)に抽象化するためのハイパーバイザ606を含む。仮想マシン602は、外部ネットワークI/O動作を行うための物理ネットワーク・インターフェース・コントローラ(NIC)614を共有する。ハイパーバイザ606は、仮想マシン602間の相互接続を提供するソフトウェアベースの仮想スイッチ608、すなわちvswitchを含むことができる。仮想スイッチ608は、仮想マシン602と、物理NIC614との間でパケットを転送するために、物理NIC614と、仮想マシン602の複数の仮想NIC604、すなわちvNICとの間をインターフェースする。それぞれの仮想マシン602は、1つまたは複数の関連付けられたvNIC604を有することができる。また、それぞれの仮想マシン602は、VMネットワーク・スタック620と、対応するvNIC604を駆動するVM vNICドライバ622とを含むことができる。一般に、それぞれのvNIC604は、物理ネットワーク・インターフェースのように動作する。例えば、それぞれのvNIC604を一意のMAC(媒体アクセス制御)アドレスに割り当てることができる。
vNIC604は、ハイパーバイザNICドライバ610および仮想スイッチ608を介して物理NIC614に論理的に接続される。一実施形態では、オーバーレイ・システム300のオーバーレイ・ヘルパー304は、ハイパーバイザNICドライバ610で、または代替的にはNICファームウェアもしくはハードウェアで実施される。オーバーレイ・システム300のオーバーレイ・エージェント302をアクセス・スイッチ616で実施することができる。別の実施形態では、オーバーレイ・ヘルパー304は、VMネットワーク・スタック620で実施される。別の実施形態では、オーバーレイ・ヘルパー304は、VM vNICドライバ622で実施される。別の実施形態では、オーバーレイ・ヘルパー304は、VMネットワーク・スタック620、vNICドライバ622、およびハイパーバイザNICドライバ610の組合せで実施される。オーバーレイ・エージェント302およびオーバーレイ・ヘルパー304は、オーバーレイ・エージェント302とオーバーレイ・ヘルパー304との間で、オーバーレイ・パラメータ、例えば、分類基準および、仮想ネットワーク・マッピング情報などのポリシー・キャッシュ・データを送信するために、インバンド・プロトコルを介して、互いに通信する。
図7は、別の実施形態による、仮想ネットワーク・オーバーレイ・システム300を用いて構成された、ホストコンピュータ712およびアクセス・スイッチ716を含む環境700のブロック図である。環境700は、環境700がSR−IOV NIC714を含むことを除けば、図6に記載された環境600に類似している。ここで、仮想機能(VF)エンジン730を介して、vNIC704を物理NIC714に論理的に接続することができ、仮想機能(VF)エンジン730は、NIC714の仮想化インスタンスを含むことができる。ハイパーバイザNICドライバ710は、図6の構成に類似した物理機能(PF)エンジンを駆動することができ、その結果、ハイパーバイザ706は、物理カードへのインターフェースであるPF732にアクセスすることができる。VFエンジン730は、vswitch708を迂回することによって仮想マシン702間でトラフィックを切り替えることによって、トラフィック切替性能を改善することを可能にする。したがって、VM702A、702Dは、制御操作またはデータ操作のためにハイパーバイザ706に依存する必要なしに、仮想機能によって物理NIC714に直接アクセスすることができる。
一実施形態では、オーバーレイ・システム300のオーバーレイ・ヘルパー304は、PF732を駆動するNICドライバ710で、またはNICファームウェアもしくはハードウェアで実施される。オーバーレイ・システム300のオーバーレイ・エージェント302をアクセス・スイッチ616で実施することができる。別の実施形態では、オーバーレイ・ヘルパー304は、VMネットワーク・スタック720で実施される。別の実施形態では、オーバーレイ・ヘルパー304は、VM vNICドライバ722で実施される。別の実施形態では、オーバーレイ・ヘルパー304は、VMネットワーク・スタック720、vNICドライバ722、およびNICドライバ710の組合せで実施される。
図8は、別の実施形態による、仮想ネットワーク・オーバーレイ・システム300を用いて構成された、ホストコンピュータ812およびアクセス・スイッチ816を含む環境800のブロック図である。ホストコンピュータ812は、従来のオペレーティング・システムを含むことができ、ハイパーバイザまたはVMMを必要としない。
ホストコンピュータ812は、例えば、物理ホストコンピュータ12上で仮想化エンティティまたは非仮想化エンティティのそれぞれに専用のキューを含む、ネットワーク仮想化用に構成されたNIC804を含むことができる。ここで、一意のMACアドレスをそれぞれのキューに割り当てて、エンティティを互いに区別することができる。オーバーレイ・システム300のオーバーレイ・ヘルパー304を、NIC804を駆動するOS NICドライバ806で、またはNIC804のファームウェアもしくはハードウェアで実施することができる。オーバーレイ・システム300のオーバーレイ・エージェント302を、アクセス・スイッチ816で実施することができる。オーバーレイ・エージェント302およびオーバーレイ・ヘルパー304は、オーバーレイ・パラメータなどを交換するように構成することができるインバンド・プロトコルを介して、互いに通信する。したがって、仮想化エンドステーションまたは非仮想化エンドステーションあるいはその両方は、スケーラブルなオーバーレイ仮想ネットワークの一部とすることができる。
図9は、一実施形態による、送信元オーバーレイ・システムを初期化するためのプロセスフロー900を示す概略ブロック図である。図10は、一実施形態による、宛先オーバーレイ・システムを初期化するためのプロセスフロー920を示す概略ブロック図である。プロセスフロー900および920について説明する際、図1〜図8も参照する。図9および図10では、送信元エンドステーション(ES1)および宛先エンドステーションにそれぞれ対応する2つのオーバーレイ・システムは、同じオーバーレイ仮想ネットワーク内の2つのエンドステーション間で通信を行うことを可能にするために初期化される。2つのオーバーレイ・システムのそれぞれは、図3のオーバーレイ・システム300、または図2のオーバーレイ・システム204、208のそれぞれあるいはその両方を指すことができる。
図9では、プロセスフロー900は、送信元エンドステーション202で実施される送信元オーバーレイ・ヘルパー304(一般に、902)、送信元アクセス・スイッチで実施される送信元オーバーレイ・エージェント302(一般に、904)、送信元アクセス・スイッチと通信する管理ステーション(一般に、906)、およびポリシー・サーバ212用に構成されたトポロジ・マッパ(一般に、908)の間で行われる。
管理ステーション906は、オーバーレイ有効化(enable overlay)要求を送信元アクセス・スイッチ904に出力する(910)ことができる。管理ステーション906は、送信元オーバーレイ・エージェント904の管理インターフェース306と通信して、送信元オーバーレイ・システム300が、パケットを分類すること、受信されたパケットにオーバーレイ・ヘッダを付加すること、インバンド・プロトコルを介して送信元オーバーレイ・ヘルパー902と通信すること、または本明細書に記載したものなどのオーバーレイ・システム300の他の機能を行うこと、あるいはそれらすべてを行うことを可能にすることができる。管理ステーション906は、送信元エンドステーション202が属するオーバーレイ仮想ネットワークに関連するパケットを処理するために送信元アクセス・スイッチの所定のポートを有効にする要求を構成することができる。ポートは、ユーザ定義の仮想ネットワーク内にあるように指定することができる。したがって、そのポートから出力されたパケットは、指定された仮想ネットワークに属するように自動的に分類される。送信元オーバーレイ・システム300は、本明細書に記載したような要求されるカプセル化を行って、物理ネットワークを介して宛先オーバーレイ・システムにパケットを送信することができる。
仮想オーバーレイ動作のためにアクティブ化されたことに応答して、オーバーレイ・エージェント904は、アドレス情報、例えば、送信元オーバーレイ・エージェント904のMACアドレスまたはIPアドレスあるいはその両方を送信元オーバーレイ・ヘルパー902に出力する(912)ことができる。
管理ステーション906は、管理インターフェース306を介して、エンドステーションの物理的な場所に関する要求をトポロジ・マッパ908に送って、トポロジ・マップを構築する、または、送信元エンドステーション202が関連する、すなわち、送信元エンドステーション902がオーバーレイ仮想ネットワーク(OVNX)のメンバーとなることができる、OVNXに関連する配置基準を決定する(914)ことができる。
管理ステーション906は、トポロジ・マッパ908から受信されたトポロジ・マッピング情報を送信元オーバーレイ・エージェント904に、具体的には、ポリシー・エージェント308に出力する(916)ことができる。仮想ネットワーク動作において、他のオーバーレイ・エージェントがこの情報を使用することができ、それによって、例えば、エンドステーション902が別のエンドステーションからパケットを受信する、すなわち、エンドステーション902が宛先エンドステーションであるときに、通信が行われる。トポロジ・マッピング情報は、送信元エンドステーションMACアドレス、アクセス・スイッチ・ポート情報、仮想ネットワーク識別子などを含むことができる。
送信元エンドステーション202の場所を確かめるために、トポロジ・マッピング・データのいくつかまたはすべての要素、例えば、送信元エンドステーションMACアドレスおよび仮想ネットワーク識別子をオーバーレイ・ヘルパー902に出力する(918)ことができる。
図10では、プロセスフロー920は、宛先エンドステーション206で実施されるオーバーレイ・ヘルパー304(一般に、922)、宛先アクセス・スイッチで実施されるオーバーレイ・エージェント302(一般に、924)、宛先アクセス・スイッチと通信する管理ステーション(一般に、926)、およびポリシー・サーバ212用に構成されたトポロジ・マッパ(一般に、928)の間で行われる。宛先アクセス・スイッチ924は、図9の送信元アクセス・スイッチ904と同じスイッチまたはそれに類似したスイッチとすることができる。管理ステーション926は、図9の管理ステーション906と同じまたはそれに類似したものとすることができる。トポロジ・マッパ928は、図9のトポロジ・マッパ908と同じものとすることができる。
管理ステーション926は、オーバーレイ有効化要求を宛先アクセス・スイッチ924に出力する(930)ことができる。管理ステーション926は、宛先オーバーレイ・エージェント924の管理インターフェース306と通信して、オーバーレイ・システム300が、パケットを分類すること、受信されたパケットにオーバーレイ・ヘッダを付加すること、インバンド・プロトコルを介して宛先オーバーレイ・ヘルパー922と通信すること、または本明細書に記載したものなどのオーバーレイ・システム300の他の機能を行うこと、あるいはそれらすべてを行うことを可能にすることができる。管理ステーション926は、宛先エンドステーション222が属するオーバーレイ仮想ネットワークに関連するパケットを処理するために宛先アクセス・スイッチの所定のポートQを有効にする要求を構成することができる。
仮想オーバーレイ動作のためにアクティブ化されたことに応答して、オーバーレイ・エージェント924は、アドレス情報、例えば、宛先オーバーレイ・エージェント924のMACアドレスまたはIPアドレスあるいはその両方を宛先オーバーレイ・ヘルパー922に出力する(932)ことができる。
管理ステーション926は、管理インターフェース306を介して、エンドステーションの場所情報に関する要求をトポロジ・マッパ928に送って、トポロジ・マップを構築し、宛先エンドステーション206が関連する、すなわち、宛先エンドステーション922がオーバーレイ仮想ネットワーク(OVNX)のメンバーとなることができる、OVNXに関連する配置基準を決定する(934)ことなどができる。管理ステーション926は、送信経路を確立するために、トポロジ・マッピング情報をオーバーレイ・エージェント924によって照会されたポリシー・サーバ928に出力する(936)ことができる。仮想ネットワーク動作において、例えば、エンドステーションが宛先エンドステーションであるときに、他のオーバーレイ・エージェントがこの情報を使用することができる。トポロジ・マッピング情報は、宛先エンドステーションMACアドレス、アクセス・スイッチ・ポート情報、仮想ネットワーク識別子などを含むことができる。
宛先エンドステーション206の場所を確かめるために、トポロジ・マッピング・データのいくつかまたはすべての要素、例えば、宛先エンドステーションMACアドレスおよび仮想ネットワーク識別子をオーバーレイ・ヘルパー922に出力する(938)ことができる。
図11は、一実施形態による、送信元オーバーレイ・システムと通信するためのプロセスフロー1000を示す概略ブロック図である。プロセスフロー1000について説明する際、図1〜図9の要素も参照する。特に、プロセスフロー1000は、図2の第1のエンドステーション202、ルータ210、およびポリシー・サーバ212、ならびに図9の送信元エンドステーション202で実施される送信元オーバーレイ・ヘルパー304(一般に、902)および送信元アクセス・スイッチで実施される送信元オーバーレイ・エージェント302(一般に、904)の間で行われるものとして説明される。しかし、プロセスフロー1000は、図6〜図8でまたは本明細書に記載される他の図で参照されるエンドステーションとアクセス・スイッチとの間で、同様に適用することができる。
宛先要求メッセージは、エンドステーション202から送信元オーバーレイ・エージェント904に出力され(1002)、例えば、ブロードキャスト・メッセージとして出力される。ブロードキャスト・メッセージを、よく知られているやり方で出力する、例えば、アドレス解決のためのARPに従って出すことができる。
送信元オーバーレイ・エージェント904のアドレス・ハンドラ310は、分類器312を介して要求を受信し、例えば、送信元エンドステーション202の仮想ネットワーク(OVNX)内の宛先エンドステーション206のIPアドレスについてポリシー・エージェント308に照会することができる。送信元オーバーレイ・エージェント904のポリシー・エージェント308は最初にそのポリシー・キャッシュ(図示せず)アクセスすることができ、ポリシー・キャッシュは、送信元エンドステーション202が通信したいと望む宛先エンドステーション206に関連するマッピング情報を記憶することができる。アドレス・ハンドラ310はポリシー・エージェント308と通信することができ、ポリシー・エージェント308はローカル・キャッシュをチェックすることができる。マッピング情報が見つからない場合、ポリシー・サーバ212はマッピング情報を提供することができる。ユニキャスト・メッセージをポリシー・サーバ212に出力して、マッピング情報を取得する(1004)ことができる。
ポリシー・サーバ212は、図4に関して上述したものに類似した手法に従って、宛先エンドステーション206の物理的な場所を判別することができる。簡潔さに関連する理由により、そのような手法については繰り返さない。ポリシー・サーバ212は、要求されたマッピング情報、具体的には、宛先エンドステーション206のIPアドレスのマッピングを宛先オーバーレイ・システムに出力する(1006)ことができる。加えて、ポリシー・エージェント308は、ポリシー・サーバ212と通信して、宛先エンドステーション206の場所を判別し、マッピング情報を用いてポリシー・キャッシュを更新することができる。送信元オーバーレイ・エージェント904は、分類基準およびポリシー・キャッシュ・データなどのオーバーレイ・パラメータを送信元オーバーレイ・ヘルパー902に送る(1008)ことができる。例えば、送信元オーバーレイ・エージェント904は、ネクスト・ホップMACおよびIPアドレス・データならびに、例えば、本明細書に記載された関連するオーバーレイ・カプセル化情報を送ることができる。送信元オーバーレイ・エージェント904は、インバンド・プロトコルを介して送信元オーバーレイ・ヘルパー902と通信することができる。送信元オーバーレイ・エージェント904は、宛先エンドステーション206のIPアドレスおよび対応するネクスト・ホップMACアドレスをエンドステーション202に出力する(1010)ことができる。
エンドステーション202は、パケットを出力する(1012)ことができる。パケットは、ネットワーク・パケット、例えば、フレームまたはIPパケットを含むことができる。パケットは、送信元オーバーレイ・ヘルパー902から受信された宛先MACアドレス1013および宛先IPアドレス1014を含むことができる。また、パケットは、ペイロード(PL)1015または当業者に知られているコンテンツを有する他のフィールドあるいはその両方を含むことができる。
送信元オーバーレイ・ヘルパー902のIPハンドラ314は、エンドステーション202からパケットを受信する。IPハンドラ314は、オーバーレイ・カプセル化1020をパケットに付加し、カプセル化されたパケットを送信元アクセス・スイッチに出力する(904)。オーバーレイ・カプセル化1020は、外側オーバーレイMACヘッダ1017、外側オーバーレイIPヘッダ1018、およびオーバーレイ・ヘッダ1019を含む。外側オーバーレイMACヘッダ1017は、送信元アクセス・スイッチ・ポートに対応する送信元MACアドレス(omac1)およびネクスト・ホップMACアドレス(rmac1)を含む。一実施形態では、ターゲットが送信元と同じサブネットにある場合、宛先MACアドレスは宛先オーバーレイ・システム208の宛先MACアドレスである。別の実施形態では、図2に示すように、宛先MACアドレスは、エンドステーション202、206それぞれのサブネット間でパケットをルーティングするルータまたはゲートウェイ・インターフェース(R1)の宛先MACアドレスである。外側オーバーレイIPヘッダ1018は、送信元オーバーレイ・エージェント904のIPアドレスおよび宛先オーバーレイ・エージェントのIPアドレスを含むことができる。オーバーレイ・ヘッダ1019は、仮想ネットワークを識別する一意の識別子を含むことができる。送信元エンドステーション202から受信されたパケットにオーバーレイ・カプセル化1020が付加されると、元のパケット1013、1014、1015のコンテンツが組み合わされて、新しいペイロードPL1 1021を形成し、新しいペイロードPL1 1021はオーバーレイ・カプセル化1020とともに、オーバーレイ・ヘルパー902から送信元オーバーレイ・エージェント904を有する送信元アクセス・スイッチに出力され(1016)、今度は、送信元アクセス・スイッチがパケット1020、1021をルータ210に、またはネットワーク・スイッチもしくは関連するネットワーク・デバイスに出力する(1022)。
図12は、一実施形態による、宛先オーバーレイ・システムと通信するためのプロセスフロー1100を示す概略ブロック図である。プロセスフロー1100について説明する際、図1〜図11の要素も参照する。特に、プロセスフロー1100は、図2の第2のエンドステーション206、ルータ210、およびポリシー・サーバ、ならびに図10の宛先エンドステーション206で実施される宛先オーバーレイ・ヘルパー304(一般に、922)および宛先アクセス・スイッチで実施される宛先オーバーレイ・エージェント302(一般に、924)の間で行われるものとして説明される。しかし、プロセスフロー1100は、図6〜図8でまたは本明細書に記載される他の図で参照されるエンドステーションとアクセス・スイッチとの間で、同様に適用することができる。
プロセスフロー1100は、ルータ210が、プロセスフロー1000で提供されたパケット・ペイロードPL1 1021、オーバーレイ・ヘッダ1019、および外側オーバーレイIPヘッダ1018を、オーバーレイ・エージェント924を有する宛先アクセス・スイッチに出力する(1102)ことで始まり、今度は、宛先アクセス・スイッチがこのパケットデータを宛先オーバーレイ・ヘッダ922に出力する(1104)。送信元MACアドレス、すなわち、パケット・ペイロードPL1 1021を出力する(1102)ルータ・インターフェースまたはアクセス・スイッチ・ポートのMACアドレスを含むことができるMACアドレスヘッダ1103が付加される。また、MACアドレスヘッダ1103は、宛先オーバーレイ・エージェント924のMACアドレスを含む。
宛先オーバーレイ・ヘルパー304は、受信されたフレームからオーバーレイ・ヘッダ1019を取り除くことができ、パケット・ペイロードPL1 1021内の内側IP宛先、すなわち、ES2 IPアドレス1014またはヘッダ1019内の仮想ネットワーク識別子あるいはその両方から宛先エンドステーション206を判別する。図10に記載された初期化プロセス中にオーバーレイ・ヘルパー302に提供することができる宛先エンドステーションMACアドレスを含むMACヘッダ1107が付加される。したがって、元のペイロードPL 1015を意図された先エンドステーション206に向けて送ることができる。
当業者によって諒解されるように、本発明の態様は、システム、方法またはコンピュータ・プログラム製品として具体化され得る。したがって、本発明の態様は、すべてが本明細書において一般に「回路」、「モジュール」または「システム」と呼ばれ得る、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)またはソフトウェア態様およびハードウェア態様を組み合わせる実施形態の形を取り得る。さらに、本発明の態様は、具体化されるコンピュータ可読プログラム・コードを有する1つまたは複数のコンピュータ可読媒体で具体化されるコンピュータ・プログラム製品の形を取り得る。
1つまたは複数のコンピュータ可読媒体の任意の組合せが利用され得る。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であってもよい。コンピュータ可読記憶媒体は、例えば、電子、磁気、光学、電磁、赤外線、または半導体システム、装置、またはデバイス、あるいは上記の任意の適切な組合せであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例(非網羅的なリスト)としては、1つまたは複数のワイヤを有する電気接続、携帯型コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、読取り専用メモリ(ROM)、消去可能プログラマブル読取り専用メモリ(EPROMまたはフラッシュメモリ)、光ファイバ、携帯型コンパクト・ディスク読取り専用メモリ(CD−ROM)、光記憶デバイス、磁気記憶デバイス、または上記の任意の適切な組合せが挙げられよう。この文書の文脈では、コンピュータ可読記憶媒体は、命令実行システム、装置もしくはデバイスによって、または命令実行システム、装置もしくはデバイスに関連して使用するためのプログラムを含む、または記憶することができる任意の有形媒体であってもよい。
コンピュータ可読信号媒体は、例えば、ベースバンドにおいてまたは搬送波の一部として、その中で具体化されるコンピュータ可読プログラム・コードを有する伝搬データ信号を含み得る。そのような伝搬信号は、電磁、光学、またはこれらの任意の適切な組合せを含むがこれらに限定されない、様々な形のいずれかを取り得る。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではなく、かつ命令実行システム、装置もしくはデバイスによってまたは命令実行システム、装置もしくはデバイスに関連して使用するためのプログラムを通信、伝搬、または伝送することができる、任意のコンピュータ可読媒体であってもよい。コンピュータ可読媒体で具体化されるプログラム・コードは、無線、有線、光ファイバケーブル、RFなど、または上記の任意の適切な組合せを含むがこれらに限定されない、任意の適切な媒体を使用して送信され得る。
本発明の態様に関する操作を実行するためのコンピュータ・プログラム・コードを、Java(R)、Smalltalk、C++などのオブジェクト指向プログラミング言語および「C」プログラミング言語または類似のプログラミング言語などの従来の手続きプログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書くことができる。プログラム・コードは、ユーザのコンピュータで全体的に、ユーザのコンピュータで部分的に、スタンドアロン・ソフトウェア・パッケージとして、ユーザのコンピュータで部分的にかつリモートのコンピュータで部分的に、またはリモートのコンピュータもしくはサーバで全体的に実行することができる。後者のシナリオでは、リモートのコンピュータは、ローカル・エリア・ネットワーク(LAN)またはワイド・エリア・ネットワーク(WAN)を含む任意のタイプのネットワークを介して、ユーザのコンピュータに接続され得るか、外部のコンピュータへの接続が(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)行われ得る。
本発明の実施形態による方法、装置(システム)およびコンピュータ・プログラム製品のフローチャートの説明図またはブロック図あるいはその両方を参照しながら、本発明の態様が本明細書で説明される。フローチャートの説明図またはブロック図あるいはその両方のそれぞれのブロック、およびフローチャートの説明図またはブロック図あるいはその両方におけるブロックの組合せを、コンピュータ・プログラム命令によって実施することができることを理解されたい。これらのコンピュータ・プログラム命令は、コンピュータまたは他のプログラマブル・データ処理装置のプロセッサを介して実行する命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定された機能/行為を実施するための手段を作成するように、汎用コンピュータ、専用コンピュータ、または機械を作製するための他のプログラマブル・データ処理装置のプロセッサに提供され得る。
また、これらのコンピュータ・プログラム命令は、コンピュータ可読媒体に記憶された命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定された機能/行為を実施する命令を含む製造品を作製するように、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスに特定の方法で機能するよう命令することができるコンピュータ可読媒体に記憶され得る。また、コンピュータ・プログラム命令は、コンピュータまたは他のプログラマブル装置で実行する命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックにおいて指定された機能/行為を実施するためのプロセスを提供するように、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスに読み込まれて、コンピュータによって実施されるプロセスを作製するためにコンピュータ、他のプログラマブル装置または他のデバイスで一連の操作ステップを実行させ得る。
図におけるフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法およびコンピュータ・プログラム製品の考えられる実施態様のアーキテクチャ、機能および動作を示す。この点において、フローチャートまたはブロック図におけるそれぞれのブロックは、(1つまたは複数の)指定された論理機能を実施するための1つまたは複数の実行可能な命令を備えるモジュール、セグメントまたはコードの部分を表し得る。いくつかの代替実施態様では、ブロックに記載された機能は、図に記載された順序ではない順序で行われ得ることにも留意されたい。例えば、連続して示されている2つのブロックは、実際には、実質的に同時に実行されることがあり、またはこれらのブロックは、時として、関与する機能に応じて、逆の順序で実行されることがある。ブロック図またはフローチャートの説明図あるいはその両方のそれぞれのブロック、およびブロック図またはフローチャートの説明図あるいはその両方におけるブロックの組合せを、指定された機能または行為を実行する専用ハードウェアベース・システム、または専用ハードウェアおよびコンピュータ命令の組合せによって実施することができることにも留意されたい。
特定の実施形態を参照しながら本発明を示し、説明してきたが、本発明の範囲から逸脱することなく、実施形態において形態および詳細の様々な変更を行うことができることが当業者によって理解されるべきである。

Claims (25)

  1. データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法であって、
    オーバーレイ・エージェントおよびオーバーレイ・ヘルパーを含むように、オーバーレイ仮想ネットワークにオーバーレイ・システムを配置するステップと、
    前記オーバーレイ・エージェントをアクセス・スイッチで実施するステップと、
    前記オーバーレイ・ヘルパーを前記アクセス・スイッチと通信するエンドステーションで実施するステップと、
    インバンド・プロトコルに従って、前記オーバーレイ・エージェントと前記オーバーレイ・ヘルパーとの間でオーバーレイ・パラメータを送信するステップと
    を備える、方法。
  2. 前記エンドステーションからデータ・パケットを出力するステップと、
    前記エンドステーションから前記オーバーレイ・ヘルパーによって受信されたデータ・パケットにオーバーレイ・カプセル化フィールドを付加するよう、前記オーバーレイ・ヘルパーに命令するステップと
    をさらに備える、請求項1に記載の方法。
  3. 前記オーバーレイ・カプセル化フィールドが、前記インバンド・プロトコルに従って、前記オーバーレイ・ヘルパーから前記オーバーレイ・エージェントに送信される、請求項2に記載の方法。
  4. 前記オーバーレイ・カプセル化フィールドが、パケット分類基準および仮想ネットワーク・トポロジ・データに関連するオーバーレイ・パラメータを含む、請求項2に記載の方法。
  5. 前記オーバーレイ・エージェントによって、オーバーレイ・カプセル化フィールドを含むデータ・パケットを受信するステップと、
    前記オーバーレイ・エージェントから前記オーバーレイ・ヘルパーに前記データ・パケットを出力するステップと、
    前記オーバーレイ・ヘルパーによって、前記オーバーレイ・カプセル化フィールド内の仮想ネットワーク識別子および宛先アドレス・データのうちの少なくとも1つから宛先エンドステーションを判別するステップと
    をさらに備える、請求項1に記載の方法。
  6. 前記宛先エンドステーションが、物理エンドステーションおよび仮想エンドステーションのうちの少なくとも1つである、請求項5に記載の方法。
  7. 前記エンドステーションが、ハイパーバイザを含み、前記オーバーレイ・ヘルパーが、前記エンドステーションのハイパーバイザ・ネットワーク・インターフェース(NIC)ドライバまたはファームウェアで実施される、請求項1に記載の方法。
  8. 前記オーバーレイ・ヘルパーが、前記エンドステーションのシングルルートI/O仮想化(SR IOV)NICで実施される、請求項1に記載の方法。
  9. 前記オーバーレイ・ヘルパーが、前記エンドステーションのオペレーティング・システムNICドライバまたはファームウェアで実施される、請求項1に記載の方法。
  10. オーバーレイ仮想ネットワークで通信するための方法であって、
    第1のアクセス・スイッチで実施されるオーバーレイ・エージェントと、前記第1のアクセス・スイッチと通信する第1のエンドステーションで実施されるオーバーレイ・ヘルパーとを含むように、第1のオーバーレイ・システムを配置するステップと、
    第2のアクセス・スイッチで実施されるオーバーレイ・エージェントと、前記第2のアクセス・スイッチと通信する第2のエンドステーションで実施されるオーバーレイ・ヘルパーとを含むように、第2のオーバーレイ・システムを配置するステップと、
    前記第1のオーバーレイ・システムの前記オーバーレイ・エージェントから前記第1のオーバーレイ・システムの前記オーバーレイ・ヘルパーにオーバーレイ・パラメータを送信するステップであって、前記オーバーレイ・パラメータが、前記第1のエンドステーションから前記第2のエンドステーションにデータ・パケットを送信するためのデータを含む、前記送信するステップと
    を備える、方法。
  11. 前記第1のエンドステーションから前記第2のアクセス・スイッチに前記データ・パケットを送信するステップと、
    前記第2のアクセス・スイッチで実施される前記オーバーレイ・エージェントから前記第2のエンドステーションで実施される前記オーバーレイ・ヘルパーに前記データ・パケットを送信するステップと、
    前記第2のエンドステーションの前記オーバーレイ・ヘルパーによって、前記オーバーレイ・パラメータから宛先エンドステーションを判別するステップと
    をさらに備える、請求項10に記載の方法。
  12. 前記データ・パケットにオーバーレイ・カプセル化フィールドを付加するよう、前記第1のエンドステーションの前記オーバーレイ・ヘルパーに命令するステップ
    をさらに備える、請求項10に記載の方法。
  13. 前記オーバーレイ・カプセル化フィールドが、インバンド・プロトコルに従って、前記第1のエンドステーションの前記オーバーレイ・ヘルパーから前記第1のエンドステーションの前記オーバーレイ・エージェントに送信される、請求項12に記載の方法。
  14. 前記オーバーレイ・カプセル化フィールドが、パケット分類基準および仮想ネットワーク・トポロジ・データに関連するオーバーレイ・パラメータを含む、請求項12に記載の方法。
  15. 前記第2のエンドステーションの前記オーバーレイ・ヘルパーによって、前記オーバーレイ・カプセル化フィールドを受信するステップと、
    前記オーバーレイ・ヘルパーによって、前記オーバーレイ・カプセル化フィールド内の仮想ネットワーク識別子および宛先アドレス・データのうちの少なくとも1つから宛先エンドステーションを判別するステップと
    をさらに備える、請求項10に記載の方法。
  16. 前記第1および第2のエンドステーションのうちの少なくとも1つが、ハイパーバイザを含み、前記オーバーレイ・ヘルパーが、前記第1および第2のエンドステーションのうちの前記少なくとも1つのハイパーバイザ・ネットワーク・インターフェース(NIC)ドライバまたはファームウェアで実施される、請求項10に記載の方法。
  17. 前記第1のエンドステーションの前記オーバーレイ・ヘルパーおよび前記第2のエンドステーションの前記オーバーレイ・ヘルパーのうちの少なくとも1つが、シングルルートI/O仮想化(SR IOV)NICで実施される、請求項10に記載の方法。
  18. 前記第1のエンドステーションの前記オーバーレイ・ヘルパーおよび前記第2のエンドステーションの前記オーバーレイ・ヘルパーのうちの少なくとも1つが、オペレーティング・システムNICドライバおよびファームウェアのうちの少なくとも1つで実施される、請求項10に記載の方法。
  19. ネットワーク仮想化環境のためのオーバーレイ・システムであって、
    ネットワークのエッジにあるアクセス・スイッチにおけるオーバーレイ・エージェントであって、宛先エンドステーションに関連するオーバーレイ・パラメータを含むオーバーレイ・カプセル化フィールドを生成するように構成される前記オーバーレイ・エージェントと、
    前記アクセス・スイッチと通信するホストコンピュータにおけるオーバーレイ・ヘルパーであって、前記オーバーレイ・カプセル化フィールドを第1のパケットに付加し、前記オーバーレイ・カプセル化フィールドを含む前記第1のパケットを前記宛先エンドステーションに送信するように構成される前記オーバーレイ・ヘルパーと
    を備える、オーバーレイ・システム。
  20. 前記オーバーレイ・ヘルパーが、前記オーバーレイ・エージェントから第2のパケットを受信したときに、前記第2のパケットを正しい宛先エンドステーションにさらに送信する、請求項19に記載のオーバーレイ・システム。
  21. 前記オーバーレイ・エージェントが、
    前記オーバーレイ・パラメータを構成するために管理ステーションによって呼び出される管理インターフェースと、
    前記アクセス・スイッチにおいて前記宛先エンドステーションを前記オーバーレイ・エージェントにマップするためのデータを取得するためにポリシー・サーバと通信するポリシー・エージェントと
    を備える、請求項19に記載のオーバーレイ・システム。
  22. 前記オーバーレイ・ヘルパーが、
    前記ホストコンピュータから受信されたパケットにオーバーレイ・カプセル化フィールドを付加し、前記オーバーレイ・カプセル化フィールドを含む前記パケットを前記宛先エンドステーションに送信するIPハンドラと、
    前記パケットを仮想ネットワークにマップする分類器と
    を備える、請求項19に記載のオーバーレイ・システム。
  23. 前記オーバーレイ・ヘルパーが、ハイパーバイザ・ネットワーク・インターフェース(NIC)ドライバ、シングルルートI/O仮想化(SR IOV)NIC、オペレーティング・システムNICドライバ、およびNICファームウェアのうちの少なくとも1つで実施される、請求項19に記載のオーバーレイ・システム。
  24. ネットワーク・エッジ・スイッチと、
    ローカル・エリア・ネットワーク接続を介してアクセス・スイッチと通信するホストコンピュータと、
    前記アクセス・スイッチにおけるオーバーレイ・エージェントおよび前記ホストコンピュータにおけるオーバーレイ・ヘルパーを備えるオーバーレイ・システムであって、前記オーバーレイ・エージェントが、宛先エンドステーションに関連するオーバーレイ・パラメータを含むオーバーレイ・カプセル化フィールドを生成するように構成され、前記オーバーレイ・ヘルパーが、前記オーバーレイ・カプセル化フィールドをパケットに付加し、前記オーバーレイ・カプセル化フィールドを含む前記パケットを前記宛先エンドステーションに送信するように構成される、前記オーバーレイ・システムと
    を備えるデータセンタ環境。
  25. データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするためのコンピュータ・プログラム製品であって、
    それによって具体化されるコンピュータ可読プログラム・コードを有するコンピュータ可読記憶媒体であって、前記コンピュータ可読プログラム・コードが、コンピュータによって実行されると、前記コンピュータに請求項1ないし9のいずれかに記載のステップを行わせる、前記コンピュータ可読記憶媒体
    を備える、コンピュータ・プログラム製品。
JP2014525520A 2011-08-18 2012-07-19 データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法、オーバーレイ仮想ネットワークで通信するための方法、ネットワーク仮想化環境のためのシステム、データセンタおよびコンピュータ・プログラム Active JP5946532B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/212,790 US8867403B2 (en) 2011-08-18 2011-08-18 Virtual network overlays
US13/212,790 2011-08-18
PCT/IB2012/053679 WO2013024377A1 (en) 2011-08-18 2012-07-19 Virtual network overlays

Publications (2)

Publication Number Publication Date
JP2014526216A true JP2014526216A (ja) 2014-10-02
JP5946532B2 JP5946532B2 (ja) 2016-07-06

Family

ID=47712581

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014525520A Active JP5946532B2 (ja) 2011-08-18 2012-07-19 データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法、オーバーレイ仮想ネットワークで通信するための方法、ネットワーク仮想化環境のためのシステム、データセンタおよびコンピュータ・プログラム

Country Status (6)

Country Link
US (3) US8867403B2 (ja)
JP (1) JP5946532B2 (ja)
CN (1) CN103748558B (ja)
DE (1) DE112012002998B4 (ja)
GB (1) GB2511435B (ja)
WO (1) WO2013024377A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014187430A (ja) * 2013-03-21 2014-10-02 Fujitsu Ltd 通信システム、中継装置、通信方法、及びプログラム
JP2023061144A (ja) * 2021-10-19 2023-05-01 横河電機株式会社 制御システム、制御方法、およびプログラム

Families Citing this family (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8867552B2 (en) 2010-05-03 2014-10-21 Brocade Communications Systems, Inc. Virtual cluster switching
US9769016B2 (en) 2010-06-07 2017-09-19 Brocade Communications Systems, Inc. Advanced link tracking for virtual cluster switching
US9270486B2 (en) 2010-06-07 2016-02-23 Brocade Communications Systems, Inc. Name services for virtual cluster switching
US9716672B2 (en) 2010-05-28 2017-07-25 Brocade Communications Systems, Inc. Distributed configuration management for virtual cluster switching
US9807031B2 (en) 2010-07-16 2017-10-31 Brocade Communications Systems, Inc. System and method for network configuration
US8867403B2 (en) * 2011-08-18 2014-10-21 International Business Machines Corporation Virtual network overlays
US9450870B2 (en) 2011-11-10 2016-09-20 Brocade Communications Systems, Inc. System and method for flow management in software-defined networks
WO2013110254A1 (de) * 2011-12-23 2013-08-01 Appbyyou Gmbh Verfahren zum aufbau eines sternförmigen kommunikationsnetzes bestehend aus einem zentralknoten und peripherknoten durch eine vom zentralknoten bereitgestellte web applikation basierend auf hardware identifiern
US9154416B2 (en) * 2012-03-22 2015-10-06 Brocade Communications Systems, Inc. Overlay tunnel in a fabric switch
CN103379185B (zh) * 2012-04-26 2016-08-03 华为技术有限公司 一种网络地址转换的方法、设备和系统
US9374301B2 (en) 2012-05-18 2016-06-21 Brocade Communications Systems, Inc. Network feedback in software-defined networks
US10560343B1 (en) 2012-07-06 2020-02-11 Cradlepoint, Inc. People centric management of cloud networks via GUI
US10601653B2 (en) 2012-07-06 2020-03-24 Cradlepoint, Inc. Implicit traffic engineering
US9992062B1 (en) 2012-07-06 2018-06-05 Cradlepoint, Inc. Implicit traffic engineering
US10880162B1 (en) 2012-07-06 2020-12-29 Cradlepoint, Inc. Linking logical broadcast domains
US10110417B1 (en) * 2012-07-06 2018-10-23 Cradlepoint, Inc. Private networks overlaid on cloud infrastructure
US10177957B1 (en) 2012-07-06 2019-01-08 Cradlepoint, Inc. Connecting a cloud network to the internet
US10135677B1 (en) * 2012-07-06 2018-11-20 Cradlepoint, Inc. Deployment of network-related features over cloud network
US9008085B2 (en) * 2012-08-15 2015-04-14 International Business Machines Corporation Network interface card having overlay gateway functionality
US8931046B2 (en) * 2012-10-30 2015-01-06 Stateless Networks, Inc. System and method for securing virtualized networks
US9401872B2 (en) 2012-11-16 2016-07-26 Brocade Communications Systems, Inc. Virtual link aggregations across multiple fabric switches
US9049115B2 (en) 2012-12-13 2015-06-02 Cisco Technology, Inc. Enabling virtual workloads using overlay technologies to interoperate with physical network services
US9203699B2 (en) * 2014-02-11 2015-12-01 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Constructing and verifying switch fabric cabling schemes
US9565099B2 (en) 2013-03-01 2017-02-07 Brocade Communications Systems, Inc. Spanning tree in fabric switches
US9197553B2 (en) 2013-03-29 2015-11-24 Cisco Technology, Inc. Using a virtual internet protocol address to represent dually connected hosts in an internet protocol overlay network
US9130775B2 (en) * 2013-07-10 2015-09-08 Cisco Technology, Inc. Support for virtual extensible local area network segments across multiple data center sites
US9806949B2 (en) * 2013-09-06 2017-10-31 Brocade Communications Systems, Inc. Transparent interconnection of Ethernet fabric switches
US10355997B2 (en) 2013-09-26 2019-07-16 Appformix Inc. System and method for improving TCP performance in virtualized environments
US10291472B2 (en) 2015-07-29 2019-05-14 AppFormix, Inc. Assessment of operational states of a computing environment
US9385959B2 (en) * 2013-09-26 2016-07-05 Acelio, Inc. System and method for improving TCP performance in virtualized environments
US10581687B2 (en) 2013-09-26 2020-03-03 Appformix Inc. Real-time cloud-infrastructure policy implementation and management
EP3104559A1 (en) * 2013-10-10 2016-12-14 Cloudistics, Inc. Adaptive overlay networking
US9785455B2 (en) 2013-10-13 2017-10-10 Nicira, Inc. Logical router
CN104579889B (zh) * 2013-10-16 2018-03-09 华为技术有限公司 一种用于调用网络功能的方法及装置
CN104579695B (zh) 2013-10-23 2018-07-20 新华三技术有限公司 一种数据转发装置和方法
US9912612B2 (en) * 2013-10-28 2018-03-06 Brocade Communications Systems LLC Extended ethernet fabric switches
KR102160252B1 (ko) 2013-12-18 2020-09-25 삼성전자주식회사 가상 스위칭 방법 및 장치
EP3087696B1 (en) * 2013-12-23 2019-09-04 Netlinkz Technology PTY Ltd System and method for multiple concurrent virtual networks
US9794128B2 (en) 2013-12-30 2017-10-17 International Business Machines Corporation Overlay network movement operations
US10135687B2 (en) 2014-01-06 2018-11-20 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Virtual group policy based filtering within an overlay network
US9548873B2 (en) 2014-02-10 2017-01-17 Brocade Communications Systems, Inc. Virtual extensible LAN tunnel keepalives
US10581758B2 (en) 2014-03-19 2020-03-03 Avago Technologies International Sales Pte. Limited Distributed hot standby links for vLAG
US10476698B2 (en) 2014-03-20 2019-11-12 Avago Technologies International Sales Pte. Limited Redundent virtual link aggregation group
US9893988B2 (en) 2014-03-27 2018-02-13 Nicira, Inc. Address resolution using multiple designated instances of a logical router
US10063473B2 (en) 2014-04-30 2018-08-28 Brocade Communications Systems LLC Method and system for facilitating switch virtualization in a network of interconnected switches
US9800471B2 (en) 2014-05-13 2017-10-24 Brocade Communications Systems, Inc. Network extension groups of global VLANs in a fabric switch
US9515931B2 (en) 2014-05-30 2016-12-06 International Business Machines Corporation Virtual network data control with network interface card
US9515933B2 (en) * 2014-05-30 2016-12-06 International Business Machines Corporation Virtual network data control with network interface card
US9825913B2 (en) 2014-06-04 2017-11-21 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US9729512B2 (en) * 2014-06-04 2017-08-08 Nicira, Inc. Use of stateless marking to speed up stateful firewall rule processing
US10616108B2 (en) 2014-07-29 2020-04-07 Avago Technologies International Sales Pte. Limited Scalable MAC address virtualization
US9807007B2 (en) 2014-08-11 2017-10-31 Brocade Communications Systems, Inc. Progressive MAC address learning
US9906454B2 (en) 2014-09-17 2018-02-27 AppFormix, Inc. System and method for providing quality of service to data center applications by controlling the rate at which data packets are transmitted
US10511458B2 (en) 2014-09-30 2019-12-17 Nicira, Inc. Virtual distributed bridging
US9768980B2 (en) 2014-09-30 2017-09-19 Nicira, Inc. Virtual distributed bridging
US10020960B2 (en) 2014-09-30 2018-07-10 Nicira, Inc. Virtual distributed bridging
US10250443B2 (en) 2014-09-30 2019-04-02 Nicira, Inc. Using physical location to modify behavior of a distributed virtual network element
US9747249B2 (en) 2014-12-29 2017-08-29 Nicira, Inc. Methods and systems to achieve multi-tenancy in RDMA over converged Ethernet
US9942097B2 (en) 2015-01-05 2018-04-10 Brocade Communications Systems LLC Power management in a network of interconnected switches
US10003552B2 (en) 2015-01-05 2018-06-19 Brocade Communications Systems, Llc. Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches
US10038592B2 (en) 2015-03-17 2018-07-31 Brocade Communications Systems LLC Identifier assignment to a new switch in a switch group
US9967231B2 (en) * 2015-03-18 2018-05-08 Cisco Technology, Inc. Inter-pod traffic redirection and handling in a multi-pod network environment
US10579406B2 (en) 2015-04-08 2020-03-03 Avago Technologies International Sales Pte. Limited Dynamic orchestration of overlay tunnels
US10225184B2 (en) 2015-06-30 2019-03-05 Nicira, Inc. Redirecting traffic in a virtual distributed router environment
US10439929B2 (en) 2015-07-31 2019-10-08 Avago Technologies International Sales Pte. Limited Graceful recovery of a multicast-enabled switch
US10171303B2 (en) 2015-09-16 2019-01-01 Avago Technologies International Sales Pte. Limited IP-based interconnection of switches with a logical chassis
US9912614B2 (en) 2015-12-07 2018-03-06 Brocade Communications Systems LLC Interconnection of switches based on hierarchical overlay tunneling
ES2779320T3 (es) * 2016-02-16 2020-08-14 Deutsche Telekom Ag Método para rastreo y/o monitorización mejorado de los nodos de red de una red de comunicación, red de comunicación, una pluralidad de máquinas virtuales, funcionalidad de gestión de función de red virtualizada, programa y producto de programa informático
US10110483B2 (en) * 2016-03-18 2018-10-23 Cisco Technology, Inc. Method and apparatus for creation of global network overlay with global parameters defining an end-to-end network
US10237090B2 (en) 2016-10-28 2019-03-19 Avago Technologies International Sales Pte. Limited Rule-based network identifier mapping
JP6605713B2 (ja) * 2016-11-09 2019-11-13 華為技術有限公司 クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム
CN107005495B (zh) * 2017-01-20 2020-03-27 华为技术有限公司 用于转发数据包的方法、网卡、主机设备和计算机系统
US10868742B2 (en) 2017-03-29 2020-12-15 Juniper Networks, Inc. Multi-cluster dashboard for distributed virtualization infrastructure element monitoring and policy control
US11068314B2 (en) 2017-03-29 2021-07-20 Juniper Networks, Inc. Micro-level monitoring, visibility and control of shared resources internal to a processor of a host machine for a virtual environment
US11323327B1 (en) 2017-04-19 2022-05-03 Juniper Networks, Inc. Virtualization infrastructure element monitoring and policy control in a cloud environment using profiles
US10819675B2 (en) * 2017-08-14 2020-10-27 Nicira, Inc. Managing network connectivity between cloud computing service endpoints and virtual machines
US10374827B2 (en) 2017-11-14 2019-08-06 Nicira, Inc. Identifier that maps to different networks at different datacenters
US10511459B2 (en) 2017-11-14 2019-12-17 Nicira, Inc. Selection of managed forwarding element for bridge spanning multiple datacenters
US10541842B2 (en) 2018-01-10 2020-01-21 Viasat, Inc. Methods and apparatus for enhancing virtual switch capabilities in a direct-access configured network interface card
CN113647065B (zh) * 2019-05-02 2023-08-22 华为云计算技术有限公司 虚拟网络拓扑
CN110806921B (zh) * 2019-09-30 2023-02-07 烽火通信科技股份有限公司 一种ovs异常告警监控系统及方法
US11546208B2 (en) * 2019-12-31 2023-01-03 Vmware, Inc. Multi-site hybrid networks across cloud environments
US11689455B2 (en) 2020-05-28 2023-06-27 Oracle International Corporation Loop prevention in virtual layer 2 networks
EP4183119A1 (en) 2020-07-14 2023-05-24 Oracle International Corporation Virtual layer-2 network
US11875172B2 (en) 2020-09-28 2024-01-16 VMware LLC Bare metal computer for booting copies of VM images on multiple computing devices using a smart NIC
CN112181606A (zh) * 2020-11-04 2021-01-05 石化盈科信息技术有限责任公司 一种容器配置更新方法、装置、系统、存储介质及电子设备
US11765080B2 (en) 2020-12-30 2023-09-19 Oracle International Corporation Layer-2 networking span port in a virtualized cloud environment
US11671355B2 (en) 2021-02-05 2023-06-06 Oracle International Corporation Packet flow control in a header of a packet
US11777897B2 (en) 2021-02-13 2023-10-03 Oracle International Corporation Cloud infrastructure resources for connecting a service provider private network to a customer private network
US11928062B2 (en) 2022-06-21 2024-03-12 VMware LLC Accelerating data message classification with smart NICs
US11899594B2 (en) 2022-06-21 2024-02-13 VMware LLC Maintenance of data message classification cache on smart NIC

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040125923A1 (en) * 2002-12-31 2004-07-01 Michael See Automated voice over IP device VLAN-association setup
JP2009278317A (ja) * 2008-05-14 2009-11-26 Chuden Cti Co Ltd ネットワークドライバ、該ネットワークドライバが組み込まれたコンピュータ及びサーバ
JP2011071870A (ja) * 2009-09-28 2011-04-07 Mitsubishi Electric Corp 通信装置、通信システムおよび通信方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003023639A1 (en) * 2001-09-10 2003-03-20 Cenus Technologies, Inc. System and method for directing clients to optimal servers in computer networks
GB2419703A (en) 2004-10-29 2006-05-03 Hewlett Packard Development Co Isolated virtual overlay infrastructures each having an interface to control interaction with others
ATE456890T1 (de) * 2005-12-13 2010-02-15 Ibm Verfahren zum betrieb von mehreren virtuellen netzwerken
US8166205B2 (en) 2007-07-31 2012-04-24 Cisco Technology, Inc. Overlay transport virtualization
CN103354566B (zh) * 2008-03-31 2018-04-10 亚马逊技术有限公司 配置计算机节点之间的通信
US8429739B2 (en) 2008-03-31 2013-04-23 Amazon Technologies, Inc. Authorizing communications between computing nodes
WO2009146165A1 (en) 2008-04-15 2009-12-03 Blade Network Technologies, Inc. Network virtualization for a virtualized server data center environment
US8155146B1 (en) * 2009-09-09 2012-04-10 Amazon Technologies, Inc. Stateless packet segmentation and processing
US8369333B2 (en) 2009-10-21 2013-02-05 Alcatel Lucent Method and apparatus for transparent cloud computing with a virtualized network infrastructure
US8537860B2 (en) 2009-11-03 2013-09-17 International Business Machines Corporation Apparatus for switching traffic between virtual machines
US20110110377A1 (en) 2009-11-06 2011-05-12 Microsoft Corporation Employing Overlays for Securing Connections Across Networks
CA2781060C (en) * 2010-05-28 2016-03-08 Huawei Technologies Co., Ltd. Virtual layer 2 and mechanism to make it scalable
US8374183B2 (en) 2010-06-22 2013-02-12 Microsoft Corporation Distributed virtual network gateways
US8688994B2 (en) 2010-06-25 2014-04-01 Microsoft Corporation Federation among services for supporting virtual-network overlays
US8774213B2 (en) * 2011-03-30 2014-07-08 Amazon Technologies, Inc. Frameworks and interfaces for offload device-based packet processing
US20130034094A1 (en) 2011-08-05 2013-02-07 International Business Machines Corporation Virtual Switch Data Control In A Distributed Overlay Network
US8867403B2 (en) * 2011-08-18 2014-10-21 International Business Machines Corporation Virtual network overlays
US8908691B2 (en) * 2012-06-05 2014-12-09 International Business Machines Corporation Virtual ethernet port aggregation (VEPA)-enabled multi-tenant overlay network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040125923A1 (en) * 2002-12-31 2004-07-01 Michael See Automated voice over IP device VLAN-association setup
JP2009278317A (ja) * 2008-05-14 2009-11-26 Chuden Cti Co Ltd ネットワークドライバ、該ネットワークドライバが組み込まれたコンピュータ及びサーバ
JP2011071870A (ja) * 2009-09-28 2011-04-07 Mitsubishi Electric Corp 通信装置、通信システムおよび通信方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014187430A (ja) * 2013-03-21 2014-10-02 Fujitsu Ltd 通信システム、中継装置、通信方法、及びプログラム
JP2023061144A (ja) * 2021-10-19 2023-05-01 横河電機株式会社 制御システム、制御方法、およびプログラム

Also Published As

Publication number Publication date
US9413554B2 (en) 2016-08-09
US20130044629A1 (en) 2013-02-21
CN103748558B (zh) 2017-05-31
GB2511435A (en) 2014-09-03
DE112012002998T5 (de) 2014-04-30
GB2511435B (en) 2019-10-23
DE112012002998B4 (de) 2023-07-06
WO2013024377A1 (en) 2013-02-21
US20150131669A1 (en) 2015-05-14
GB201404580D0 (en) 2014-04-30
US20130044631A1 (en) 2013-02-21
CN103748558A (zh) 2014-04-23
US8964600B2 (en) 2015-02-24
JP5946532B2 (ja) 2016-07-06
US8867403B2 (en) 2014-10-21

Similar Documents

Publication Publication Date Title
JP5946532B2 (ja) データセンタ環境で物理ネットワークに仮想ネットワークをオーバーレイするための方法、オーバーレイ仮想ネットワークで通信するための方法、ネットワーク仮想化環境のためのシステム、データセンタおよびコンピュータ・プログラム
US10911397B2 (en) Agent for implementing layer 2 communication on layer 3 underlay network
EP2982097B1 (en) Method and apparatus for exchanging ip packets among network layer 2 peers
US8358661B2 (en) Remote adapter configuration
WO2018086014A1 (zh) 云计算系统中报文处理的方法、主机和系统
US10798048B2 (en) Address resolution protocol suppression using a flow-based forwarding element
US11522763B2 (en) Agent-based network scanning in software-defined networking (SDN) environments
US10536362B2 (en) Configuring traffic flow monitoring in virtualized computing environments
CN112910750B (zh) 使用逻辑路由器进行地址解析的方法、设备、系统及介质
US20160182336A1 (en) Hybrid cloud network monitoring system for tenant use
US20130195113A1 (en) System and Method for Network Switch Data Plane Virtualization
US20110299537A1 (en) Method and system of scaling a cloud computing network
US11070470B2 (en) Host router in a virtual computing instance
WO2021055634A1 (en) L3 underlay routing in a cloud environment using hybrid distributed logical router
US8929255B2 (en) System and method for input/output virtualization using virtualized switch aggregation zones
US11895030B2 (en) Scalable overlay multicast routing
CN106331206B (zh) 域名管理方法及装置
WO2014079005A1 (zh) Mac地址强制转发装置及方法
US11671358B2 (en) Disambiguating traffic in networking environments with multiple virtual routing and forwarding (VRF) logical routers
US9590855B2 (en) Configuration of transparent interconnection of lots of links (TRILL) protocol enabled device ports in edge virtual bridging (EVB) networks
US20230079209A1 (en) Containerized routing protocol process for virtual private networks
CN117255019A (zh) 用于虚拟化计算基础设施的系统、方法及存储介质
US9853885B1 (en) Using packet duplication in a packet-switched network to increase reliability
CN116888940A (zh) 利用虚拟联网的容器化路由器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141224

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160408

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: 20160510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160531

R150 Certificate of patent or registration of utility model

Ref document number: 5946532

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150