JP2020167715A - 論理ルータのためのルート設定 - Google Patents

論理ルータのためのルート設定 Download PDF

Info

Publication number
JP2020167715A
JP2020167715A JP2020104686A JP2020104686A JP2020167715A JP 2020167715 A JP2020167715 A JP 2020167715A JP 2020104686 A JP2020104686 A JP 2020104686A JP 2020104686 A JP2020104686 A JP 2020104686A JP 2020167715 A JP2020167715 A JP 2020167715A
Authority
JP
Japan
Prior art keywords
route
routing
logical
logical router
interface
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
JP2020104686A
Other languages
English (en)
Other versions
JP7033287B2 (ja
Inventor
ウダイ マスリーカ,
Masurekar Uday
ウダイ マスリーカ,
アビシェーク ゴリヤ,
Goliya Abhishek
アビシェーク ゴリヤ,
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.)
Nicira Inc
Original Assignee
Nicira Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nicira Inc filed Critical Nicira Inc
Publication of JP2020167715A publication Critical patent/JP2020167715A/ja
Application granted granted Critical
Publication of JP7033287B2 publication Critical patent/JP7033287B2/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
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/354Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • 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
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】論理ネットワークにおいて論理ルータを実施する方法を提供する。【解決手段】方法は、いくつかのルーティングテーブルを有する複数のルーティング構成要素を含む、論理ルータのための静的経路の構成を受信すし、どのルーティング構成要素が、静的経路の構成を実施するための対応するルーティングテーブルへの経路の追加を要するかを識別し、識別されたルーティング構成要素の対応する別々のルーティングテーブルに経路を追加する。【選択図】図15

Description

典型的な物理ネットワークは、L3フォワーディング(forwarding)(すなわちルーティング)を実行するための複数の物理ルータを含む。第1のマシンが、異なるIPサブネットに置かれた第2のマシンへパケットを送信しようとする場合、パケットはルータに送信され、当該ルータは、パケットの送信先IPアドレスを用いてどのマシンの物理インタフェースを通じてパケットを送信すべきかを決定する。より大きなネットワークは、ルータの1つが停止した場合に、パケットが第1のマシンと第2のマシンとの間の異なるパスに沿ってルーティングされ得るように、複数のルータを含む。
論理ネットワークにおいても、異なるサブネットにおけるユーザ定義データ計算ノード(例えば仮想マシン)が、互いに通信することが同様に必要であり得る。この場合、テナント(tenant)は、論理スイッチと論理ルータとの両方を含む、仮想化のためのネットワークを定義し得る。データセンタにおいてこのような仮想化された論理ネットワークを適切に提供する論理ルータを実施する方法が必要とされている。
いくつかの実施形態は、ネットワークにおいて(例えばデータセンタにおいて)論理ルータを実施する方法を提供する。いくつかの実施形態では、この方法は、ネットワークを集中的に管理する(例えばネットワークコントローラにおいて実施される)管理プレーンによって実行される。いくつかの実施形態では、この方法は、(例えばアプリケーションプログラミングインタフェース(API)を通じて)論理ルータの定義を受信し、そして論理ルータのためのいくつかのルーティング構成要素を定義する。これらのルーティング構成要素のそれぞれは、別個に経路の組と論理インタフェースの組とを割り当てられる。方法はまた、論理ルータのための経路の仕様と、論理ルータから他の論理ルータへの接続とを受信してもよい。いくつかの実施形態は、自動的に、どのルーティング構成要素のルーティングテーブルに受信した経路をプッシュすべきか、及び、どのように経路を伝達するかを、他の論理ルータとの接続に基づいて識別する。
いくつかの実施形態では、論理ルータのために定義されたいくつかのルーティング構成要素は、1つの分散化ルーティング構成要素といくつかの集中化ルーティング構成要素とを含む。加えて、いくつかの実施形態の管理プレーンは、論理ルータの内部の構成要素の間の通信を処理するための論理スイッチ(通過論理スイッチ(transit logical switch)として参照される)を定義する。分散化ルーティング構成要素と通過論理スイッチとは、データセンタ内の多数のマシンによって分散化された態様で実施される一方、集中化ルーティング構成要素はそれぞれが単一のマシン上で実施される。いくつかの実施形態は、様々なマシン上の管理対象フォワーディング構成要素のデータパスにおいて分散化構成要素を実施する一方、集中化ルーティング構成要素はその単一のマシン上の複数のVM(又は他のデータ計算ノード)において実施される。他の実施形態もまた、割り当てられたマシンのデータパスにおいて集中化構成要素を実施する。
いくつかの実施形態では、集中化構成要素はアクティブ−アクティブモード、又はアクティブ−スタンバイモードであるように構成されてよい。アクティブ−アクティブモードでは、全ての集中化構成要素が同時に完全に動作し、トラフィックは、集中化構成要素から外部ネットワークへの接続性が構成要素にわたって同一である限り、(様々な集中化構成要素にわたるトラフィックをバランスする)等価コストマルチパス(equal-cost multi-path)(ECMP)フォワーディング原理を用いる集中化構成要素を通して、論理ネットワークに進入又は退出することができる。このモードでは、別々の集中化構成要素のそれぞれは、外部ネットワークと通信するための、自身のネットワークレイヤ(例えばIP)アドレスとデータリンクレイヤ(例えばMAC)アドレスとを有する。加えて、別々の集中化構成要素のそれぞれは、分散化ルーティング構成要素へパケットを送信するとともに分散化ルーティング構成要素からパケットを受信するために、通過論理スイッチと接続するための自身のネットワークレイヤアドレスとデータリンクレイヤアドレスとを有する。
いくつかの実施形態では、論理ルータは2層論理ネットワーク(two-tier logical network)構成の一部である。いくつかの実施形態の2層構成は、論理ネットワークをデータセンタの外部のネットワークに接続するための単一の論理ルータ(プロバイダ論理ルータ(provider logical router)(PLR)として参照され、例えばデータセンタの所有者によって管理される)と、単一の論理ルータと接続し、外部ネットワークと個別に通信しない複数の論理ルータ(テナント論理ルータ(tenant logical router)(TLR)として参照され、例えばデータセンタの異なるテナントによって管理される)とを含む。いくつかの実施形態は、可能なときはいつでもアクティブ−アクティブモードにおいてPLRを実施し、ステートフルサービス(stateful service)(例えば、NATファイアウォール、ロードバランサ等)が論理ルータのために構成される場合にのみアクティブ−スタンバイモードを用いる。
PLRに対して、いくつかの実施形態は外部ネットワークと経路交換を可能にする。PLRの集中化構成要素のそれぞれは、論理ネットワークのプレフィックスをアドバタイズし、外部ネットワークへの経路を受信するために動的ルーティングプロトコル処理を実行する。データセンタ内の中枢、及び論理ネットワークを実施するマシン上の両方に置かれるネットワークコントローラのネットワーク制御システムを通して、これらの経路が他の集中化構成要素と分散化ルーティング構成要素とに伝達される。いくつかの実施形態は、外部ネットワークから直接学習した経路と、外部ネットワークから経路を学習した、異なるピア集中化構成要素から学習した経路とに対して、集中化構成要素のルーティング情報ベース(routing information base, RIB)における異なる管理上の基準を用いる。従って、集中化構成要素は、論理ルータのピア集中化構成要素を通じたリダイレクションを含む経路よりも、直接学習した経路を選択する。
論理ルータがTLRである場合、いくつかの実施形態は、論理ルータに対するステートフルサービス(stateful service)が構成されるときには、集中化構成要素を用いない、或いはアクティブ−スタンバイモードの2つの集中化構成要素を用いる。2つの集中化構成要素のそれぞれは、同一のネットワークレイヤアドレスを有し、アクティブな構成要素のみがARPリクエストに返信する。PLRと接続するために、いくつかの実施形態はまた、2つの構成要素のそれぞれに同一のネットワークレイヤアドレス(しかし自身の分散化構成要素と接続するために用いられるアドレスとは異なる)を割り当てる。加えて、管理プレーンは、PLRの分散化構成要素とTLRの集中化構成要素との間の通過論理スイッチを定義する。
いくつかの実施形態の管理プレーンは、追加的に、(例えば、分散化構成要素と集中化構成要素のそれぞれのための)各論理ルータ構成物のためのルーティングテーブルを構成する。これらのルーティングテーブルにおける経路は、接続された論理スイッチと、ユーザ入力の静的経路と、他の論理ルータの接続に基づく動的経路と、に基づく経路を含んでよい。例えば、管理者によって論理ルータに直接接続された任意の論理スイッチは、結果的に、分散化構成要素のルーティングテーブルにおける接続された経路、及び、分散化構成要素のインタフェースである次ホップを有する様々な集中化構成要素のための経路となる。
ユーザが静的経路を追加する場合、いくつかの実施形態は、様々な論理ルータ構成要素に静的経路を追加する様々なルールを提供する。例えば、いくつかの実施形態は、(論理ネットワーク内の次ホップを有する)下向きの静的経路(downward-facing static routes)を直接的に(特定された次ホップのような他の論理フォワーディング要素とインタフェースを有する)分散化構成要素に追加する一方で、集中化構成要素によってアクセス可能な分散化構成要素のインタフェースを再度指し示す経路を、集中化構成要素のそれぞれに追加する。構成済みの静的経路が(外部ネットワークにある、及び/又は集中化構成要素の1つと相関する特定の出力インタフェースを特定する、次ホップを有して)上向き(upward-facing)である場合、いくつかの実施形態は、(i)特定されたインタフェース及び/又は次ホップのアドレスに応じて経路を1つ以上の集中化構成要素に追加し、(ii)各集中化構成要素のインタフェースを次ホップとして特定する分散化構成要素に経路を追加する。しかしながら、いくつかの実施形態は、構成済みの静的経路がデフォルト経路である場合には分散化構成要素に経路を追加しない。これは、管理プレーンが、集中化構成要素のそれぞれを指す分散化構成要素ルーティングテーブルのための等価コストのデフォルト経路を、論理ルータの生成時に既に自動的に生成しているためである。
更に、TLRがPLRに接続した場合、いくつかの実施形態は、TLRに接続され、外部ネットワークに(動的ルーティングプロトコルを介して)アドバタイズされるべき、任意の論理スイッチサブネットを識別する。この場合、2つの論理ルータの間の動的ルーティングプロトコルを実行するよりも、(両方の論理ルータ構成を知る)管理プレーンは、PLRがその別々の各ルーティング構成要素のための別々のルーティングテーブルを実際に有するという事実を扱う間に、自動的に経路交換を実行する。従って、管理プレーンは、(i)PLRに接続するTLRのインタフェースとして次ホップを有する経路を分散化構成要素に、(ii)集中化構成要素からアクセス可能な分散化構成要素のインタフェースとして次ホップを有する経路を集中化ルーティング構成要素のそれぞれに、の両方にこれらの論理ネットワークのための経路を追加する。
先行するサマリは、本発明のいくつかの実施形態に対する簡単な導入として提供されることを意図するものである。本書面において開示される発明の主題の全ての紹介又は概要を意味するものではない。以下の詳細な説明及び詳細な説明において参照される図面は、他の実施形態と、要約において説明された実施形態を更に説明するであろう。従って、本書面によって説明される全ての実施形態を理解するため、要約、詳細な説明及び図面の十分な確認が必要である。更に、クレームされる主題は、主題の思想から離れることなく他の具体的な形態で具現化することができるため、クレームされる主題は、要約、詳細な説明及び図面における詳細な例によって限定されず、むしろ添付された特許請求の範囲によって定義されるべきである。
本発明の新規な特徴は添付の特許請求の範囲によって明らかになる。しかしながら、説明の目的のため、本発明のいくつかの実施形態は以下の図において明らかになる。
図1は、ユーザによって指示されるような論理ネットワークを表す、論理ルータの構成図を示す。
図2は、論理ルータが分散化される態様で実施される場合の、図1の論理ネットワークの管理プレーンの範囲を示す。
図3は、図1の論理ルータの物理的に分散化された実施を示す。
図4は、論理ルータの2つの層を用いる論理ネットワークを概念的に示す。
図5は、論理ネットワーク内のTLRが完全に分散化される場合の、図4の論理トポロジの管理プレーンの範囲を示す。
図6は、論理ネットワーク内のTLRが集中化構成要素を有する場合の、図4の論理トポロジの管理プレーンの範囲を示す。
図7は、ネットワークアドレスおよび管理者によって割り当てられたインタフェースを含む、論理ネットワークトポロジのより詳細な構成を概念的に示す。
図8は、管理プレーンごとの図7の論理トポロジの構成を示す。
図9は、ユーザ仕様に基づいてPLRを構成するいくつかの実施形態の処理を概念的に示す。
図10は、ユーザ仕様に基づいてTLRを構成するいくつかの実施形態の処理を概念的に示す。
図11は、いくつかの実施形態のRIB生成ルールを示すために用いられる論理ネットワーク構成を概念的に示している。
図12は、図11に示す構成に基づいて、管理プレーンによって生成される論理ネットワークを概念的に示している。
図13は、PLRのための構成情報として入力されるサウス向き(south-facing)の静的経路を処理するいくつかの実施形態の処理を概念的に示す。
図14は、PLRのために構成される静的経路とTLRの組のための構成との組と、構成データに基づいて管理プレーンによって生成される、PLRのDR及び3つのSRのための出力とを概念的に示す。
図15は、PLRのための構成情報として入力されるノース向き(north-facing)の経路を処理するいくつかの実施形態の処理を概念的に示す。
図16は、TLRがPLRに取り付けられる場合に、PLRのルーティング構成物のためのRIBを生成するいくつかの実施形態の処理を概念的に示す。
図17は、新たなインタフェースがPLRに取り付けられる場合に、PLRのルーティング構成物のRIBのための経路を生成するいくつかの実施形態の処理を概念的に示す。
図18は、本発明のいくつかの実施形態が実装される電子システムを概念的に示す。
いくつかの実施形態は、ネットワークにおいて(例えばデータセンタにおいて)論理ルータを実施する方法を提供する。いくつかの実施形態では、この方法は、ネットワークを集中的に管理する(例えばネットワークコントローラにおいて実施される)管理プレーンによって実行される。いくつかの実施形態では、この方法は、(例えばアプリケーションプログラミングインタフェース(API)を通じて)論理ルータの定義を受信し、そして論理ルータのための複数のルーティング構成要素を定義する。これらのルーティング構成要素のそれぞれは、別個に経路の組と論理インタフェースの組とを割り当てられる。方法はまた、論理ルータのための経路の仕様と、論理ルータから他の論理ルータへの接続とを受信してもよい。いくつかの実施形態は、自動的に、どのルーティング構成要素のルーティングテーブルに受信した経路をプッシュすべきか、及び、どのように経路を伝達するかを、他の論理ルータとの接続に基づいて識別する。
いくつかの実施形態では、論理ルータのために定義されたいくつかのルーティング構成要素は、(以下、分散化ルータ又はDRとして参照される)1つの分散化ルーティング構成要素と、(以下、サービスルータ又はSRとして参照される)いくつかの集中化ルーティング構成要素とを含む。加えて、いくつかの実施形態の管理プレーンは、論理ルータの内部の構成要素の間の通信を処理するための論理スイッチ(通過論理スイッチとして参照される)を定義する。DRと通過論理スイッチとは、データセンタ内の多数のマシンによって分散化された態様で実施される一方、SRはそれぞれが単一のマシン上で実施される。いくつかの実施形態は、様々なマシン上の管理対象フォワーディング構成要素(MFE)のデータパスにおいてDR及び通過論理スイッチを実施する一方、SRはその単一のマシン上の複数のVM(又は他のデータ計算ノード)において実施される。他の実施形態もまた、割り当てられたマシンのデータパスにおいて集中化構成要素を実施する。
ある実施形態では、SRはアクティブ−アクティブモード、又はアクティブ−スタンバイモードであるように構成され得る。アクティブ−アクティブモードでは、全てのSRが同時に完全に動作し、トラフィックは、集中化構成要素から外部ネットワークへの接続性が構成要素にわたって同一である限り、(様々なSRにわたるトラフィックをバランスする)等価コストマルチパス(equal-cost multi-path)(ECMP)フォワーディング原理を用いるSRを通して、論理ネットワークに進入又は退出することができる。このモードでは、別々のSRのそれぞれは、外部ネットワークと通信するための、自身のネットワークレイヤ(例えばIP)アドレスとデータリンクレイヤ(例えばMAC)アドレスとを有する。加えて、別々のSRのそれぞれは、分散化ルーティング構成要素へパケットを送信するとともに分散化ルーティング構成要素からパケットを受信するために、通過論理スイッチと接続するための自身のネットワークレイヤアドレスとデータリンクレイヤアドレスとを有する。
いくつかの実施形態では、論理ルータは2層論理ネットワーク(two-tier logical network)構成の一部である。2層構成のいくつかの実施形態は、論理ネットワークをデータセンタの外部のネットワークに接続するための単一の論理ルータ(プロバイダ論理ルータ(provider logical router)(PLR)として参照され、例えばデータセンタの所有者によって管理される)と、単一の論理ルータと接続し、外部ネットワークと個別に通信しない複数の論理ルータ(テナント論理ルータ(tenant logical router)(TLR)として参照され、例えばデータセンタの異なるテナントによって管理される)とを含む。いくつかの実施形態は、可能なときはいつでもアクティブ−アクティブモードにおいてPLRのSRを実施し、ステートフルサービス(stateful service)(例えば、NATファイアウォール、ロードバランサ等)が論理ルータのために構成される場合にのみアクティブ−スタンバイモードを用いる。以下の説明は、主にPLRのためのアクティブーアクティブモードについて説明している。
PLRに対して、いくつかの実施形態は外部ネットワークと経路交換を可能にする。PLRのSRのそれぞれは、論理ネットワークのプレフィックスをアドバタイズし、外部ネットワークへの経路を受信するために動的ルーティングプロトコル処理を実行する。データセンタ内の中枢、及び論理ネットワークを実施するマシン上の両方に置かれたネットワークコントローラのネットワーク制御システムを通して、これらの経路が他のSRとDRとに伝達される。いくつかの実施形態は、外部ネットワークから直接学習した経路と、外部ネットワークから経路を学習した、異なるピアのSRから学習した経路とに対して、集中化構成要素のルーティング情報ベース(RIB)における異なる管理上の基準を用いる。従って、SRは、論理ルータのピアSRを通じたリダイレクションを含む経路よりも、直接学習した経路を選択する。
論理ルータがTLRである場合、いくつかの実施形態は、論理ルータに対するステートフルサービスが構成されるときには、SRを用いない、或いはアクティブ−スタンバイモードの2つのSRを用いる。2つのSRのそれぞれは、同一のネットワークレイヤアドレスを有し、アクティブな構成要素のみがARPリクエストに返信する。PLRと接続するために、いくつかの実施形態はまた、2つのSRのそれぞれに同一のネットワークレイヤアドレス(しかし自身のDRと接続するために用いられるアドレスとは異なる)を割り当てる。加えて、管理プレーンは、PLRのDRとTLRのSRとの間の通過論理スイッチを定義する。
いくつかの実施形態の管理プレーンは、追加的に、(例えば、DRと各SRのための)各論理ルータ構成物のためのルーティングテーブルを構成する。これらのルーティングテーブルにおける経路は、接続された論理スイッチと、ユーザ入力の静的経路と、他の論理ルータの接続に基づく動的経路と、に基づく経路を含んでよい。例えば、管理者によって論理ルータに直接接続された任意の論理スイッチは、結果的に、DRのルーティングテーブルにおける接続された経路、及び、DRである次ホップを有する様々なSRのための経路にある。
ユーザが静的経路を追加した場合、いくつかの実施形態は、様々な論理ルータ構成要素に静的経路を追加する様々なルールを提供する。例えば、いくつかの実施形態は、(論理ネットワーク内の次ホップを有する)下向きの静的経路を直接的に(特定された次ホップのような他の論理フォワーディング要素とインタフェースを有する)DRに追加する一方で、SRによってアクセス可能なDRのインタフェースを再度指し示す経路を、各SRに追加する。構成済みの静的経路が(外部ネットワークにある、及び/又はSRの1つと相関する特定の出力インタフェースを特定する、次ホップを有して)上向きである場合、いくつかの実施形態は、(i)特定されたインタフェース及び/又は次ホップのアドレスに応じて経路を1つ以上のSRに追加し、(ii)次ホップとして各集中化構成要素のインタフェースを特定する経路をDRに追加する。しかしながら、いくつかの実施形態は、構成済みの静的経路がデフォルト経路である場合にはDRに経路を追加しない。これは、管理プレーンが、SRのそれぞれを指すDRルーティングテーブルのための等価コストのデフォルト経路を、論理ルータの生成時に既に自動的に生成しているためである。
更に、TLRがPLRに接続した場合、いくつかの実施形態は、TLRに接続され、外部ネットワークに(動的ルーティングプロトコルを介して)アドバタイズされるべき、任意の論理スイッチサブネットを識別する。この場合、2つの論理ルータの間の動的ルーティングプロトコルを実行するよりも、(両方の論理ルータ構成を知る)管理プレーンは、PLRがその別々の各ルーティング構成要素のための別々のルーティングテーブルを実際に有するという事実を処理する間に、自動的に経路交換を実行する。従って、管理プレーンは、(i)PLRに接続するTLRのインタフェースとして次ホップを有する経路をDRに、(ii)SRからアクセス可能なDRのインタフェースとして次ホップを有する経路をSRのそれぞれに、の両方にこれらの論理ネットワークのための経路を追加する。
上記は2層論理ルータの概念と、いくつかの実施形態の論理ルータの構成及び実施の所定の側面とを説明する。以下、セクションIはいくつかの実施形態の論理ルータの全体的な高レベルの設計に焦点をあて、一方で、セクションIIは様々な論理ルータ構成要素の構成を説明する。そしてセクションIIIはこれらの論理ルータ構成要素のためのルーティングテーブル構成を説明する。最後に、セクションIVは、本発明のいくつかの実施形態が実装される電子システムを説明する。
I.論理ルータ及び物理的な実施
以下の説明は、いくつかの実施形態に対する論理ルータの設計について、いくつかの実施形態のネットワークコントローラによる論理ルータの実施とともに説明する。いくつかの実施形態では、論理ルータは3つの異なる形態で存在する。これらの形態における1つ目は、ユーザ(例えばデータセンタプロバイダ又はテナント)によって定義される、APIビュー、又は構成ビューである。2つ目のビューは、ネットワークコントローラがどのように内部的に論理ルータを定義するかについての、コントロールプレーン又は管理プレーンのビューである。最後に、3つ目のビューは、論理ルータがどのようにデータセンタ内で実際に実施されるかについての論理ルータの物理的な具体化又は実装である。すなわち、論理ルータは、ユーザが論理ルータのために構成する機能(例えばルーティング、NAT等)の組を示す抽象化である。そして、論理ルータは、ユーザによって提供される構成に従ってネットワークコントローラによって生成される命令を用いてネットワークコントローラの組が様々なマシンに分散させる命令に基づき、データセンタ内のこれらのマシンによって実施される。
コントロールプレーンのビューでは、いくつかの実施形態の論理ルータは、単一のDRと1つ以上のSRとのうちの一方又は両方を含む。いくつかの実施形態において、DRは、論理ルータと直接又は間接に論理的に接続するVM或いは他のデータ計算ノードと直接接続する、管理対象フォワーディング構成要素(MFE)に及ぶ。いくつかの実施形態のDRはまた、論理ルータが結合するゲートウェイに及ぶ。いくつかの実施形態では、DRは、論理スイッチ及び、論理ルータと論理的に接続された他の論理ルータの少なくともいずれかの間における、第1ホップの分散化ルーティングに対して責務を負う。いくつかの実施形態のSRは、分散化された形態(例えばいくつかのステートフルサービス)で実施されないサービスを配送する責務を負う。
いくつかの実施形態では、分散化論理ルータの物理的な具現化は、(すなわち第1ホップルーティングのために)常にDRを有する。論理ルータは、(i)論理ルータがPLRであり、従って外部物理ネットワークに接続する場合、或いは(ii)分散化された実施を持たないように構成されたサービス(例えば、いくつかの実施形態では、NAT、ロードバランシング、DHCP)を、論理ルータが有する場合、のいずれかの場合にSRを有する。いくつかの実施形態は、PLR上に構成されるステートフルサービスが無い場合であっても、外部ネットワークへの接続を集中化するための実装においてSRを用いる。
A.単一層論理ルータ
図1−図3は、分散化論理ルータの実装についての3つの異なるビューを示している。図1は、特に、ユーザによって指示されるような論理ネットワーク100を表す、論理ルータの構成ビューを示す。図示されるように、論理ルータ115は、論理ルータ115と、2つの論理スイッチ105及び110とを含む論理ネットワーク100の一部である。2つの論理スイッチ105と110のそれぞれは、論理ポートに接続するVMを有する。3つの図においてVMとして示すが、いくつかの実施形態において、他の種別のデータ計算ノード(例えばネームスペース等)が論理スイッチと接続することが理解されるべきである。論理ルータ115はまた、外部物理ネットワーク120に接続する2つのポートを含む。
図2は、論理ネットワーク100の管理プレーンビュー200を示している。論理スイッチ105と110は、このビューでは構成ビューと同一であるが、ネットワークコントローラは、論理ルータ115に対して2つのサービスルータ205と210、及び、分散化ルータ215と通過論理スイッチ220を生成している。DR215は、論理スイッチ105及び110のそれぞれに対するサウスバウンドインタフェースと、通過論理スイッチ220への(及びこれからSRへ通じる)単一のノースバウンドインタフェースとを含む。SR205及び210のそれぞれは、(DR215と通信するために使用し、所定の状況では互いに通信するために使用する)通過論理スイッチ220への単一のサウスバウンドインタフェースを含む。SR205及び210のそれぞれはまた、(外部ネットワークと接続する)論理ルータのアップリンクポートに対応し、従って、SRのそれぞれは単一のそのようなインタフェースを有する。
様々なルータ構成物205ー215のノースバウンド及びサウスバウンドインタフェースの詳細な構成と、これらの通過論理スイッチ220との接続は以下で更に詳細に説明される。いくつかの実施形態では、管理プレーンは、ルータ構成物205−215のそれぞれのための別々のルーティング情報ベース(RIB)を生成する。これは、管理/コントロールプレーンにおいて生成された別々のオブジェクトを有することに加えて、各ルータ構成物205は別々の経路を有する別々のルータとして扱われる。
最後に、図3は、論理ルータ100の物理的な実装を示している。図示されるように、論理ネットワーク100における論理スイッチ105と110の1つに接続されるVMのそれぞれは、ホストマシン305上に存在する。いくつかの実施形態において、これらのホストマシン上で動作するMFE310は、ホストマシン上のハイパーバイザ又は他の仮想化ソフトウェア内で動作する仮想スイッチ(例えばOpen vSwitch(OVS)、ESX)である。これらのMFEは、論理ネットワーク100のVMによって送信されるパケットに対し、論理スイッチ105及び110と論理ルータ115とを実装するための第1ホップのスイッチング及びルーティングを実行する。MFE310(又はこれらのサブセット)はまた、他の論理ネットワークが、ホストマシン305上に同様に存在するVMを有する場合、他の論理ネットワークのための論理スイッチ(及び分散化論理ルータ)を実装してもよい。
2つのサービスルータ205と210のそれぞれは、異なるゲートウェイマシン315及び320上で動作する。ゲートウェイマシン315と320は、いくつかの実施形態においてホストマシン305と類似するホストマシンであるが、ユーザVMよりむしろホストSRである。いくつかの実施形態では、ゲートウェイマシン315及び320のそれぞれは、MFEがDR215のためのルーティングと論理スイッチングとを処理することができるように、SRとMFEとを含む。例えば、外部ネットワーク120から送信されたパケットは、1つのゲートウェイ上のSRルーティングテーブルの実装によってルーティングされ得、そして同一のゲートウェイ上のMFEにより、その後(DRルーティングテーブルに従って)スイッチ及びルーティングされる。
SRは、異なる実施形態では、ネームスペース内、仮想マシン内、又はVRFとして実施され得る。SRは、いくつかの実施形態では、任意のステートフルサービス(例えばファイアウォール)が論理ルータ上に構成されるかどうかに応じて、アクティブ−アクティブ又はアクティブ−スタンバイモードで動作してよい。ステートフルサービスが構成される場合、いくつかの実施形態は単一のアクティブSRのみを必要とする。いくつかの実施形態では、アクティブ及びスタンバイのサービスルータは同一の構成で提供されるが、MFEは、アクティブSR(又はアクティブSRを有するゲートウェイマシン上のMFEへ)へトンネルを介してパケットを送信するように構成される。トンネルがダウンした場合にのみ、MFEがスタンバイのゲートウェイにパケットを送信する。
B.多層トポロジ(Multi-Tier Topology)
前の例は論理ルータの単一層のみを示すものである。多層の論理ルータを有する論理ネットワークについて、いくつかの実施形態は、各レベルにおいてDRとSRの両方を、又は、上層レベルのDR及びSR(PLR層)と下層レベル(TLR層)のDRのみを、含み得る。図4は、いくつかの実施形態の多層論理ネットワーク400を、論理ネットワークの異なる2つの管理プレーンのビューを示す図5及び図6とともに、概念的に示している。
図4は、論理ルータの2つの層を用いる論理ネットワーク400を概念的に示している。図示されるように、論理ネットワーク400は、レイヤ3のレベルにおいて、プロバイダ論理ルータ405、及びいくつかのテナント論理ルータ410ー420を含む。第1のテナント論理ルータ410は、論理スイッチのそれぞれに接続する1つ以上のデータ計算ノードとともに、取り付けられた2つの論理スイッチ425及び430を有する。典型的には他のTLR415ー420は(データ計算ノードと接続する)取り付けられた論理スイッチを有するが、簡単のために、第1のTLR410に取り付けられた論理スイッチのみを示している。
いくつかの実施形態では、任意の数のTLRが、PLR405のようなPLRに取り付けられてよい。いくつかのデータセンタは、データセンタ内で実施される全てのTLRが取り付けられる単一のPLRのみを有してよいが、他のデータセンタは多数のPLRを有し得る。例えば、大きなデータセンタは異なるテナントに対して異なるPLRポリシーを用いることを望み得るか、(例えばPLRのためのルーティングテーブルが非常に大きくなるために)全てのTLRを単一のPLRに取り付ける非常に多くの異なるテナントを有し得る。PLRのルーティングテーブルの部分は、そのTLRの論理スイッチドメインの全てに対する経路を含み、従って、PLRに多数のTLRを取り付けることにより、TLRに取り付けたサブネットに単純に基づく各TLRに対するいくつかの経路を生成する。図示されるように、PLR405は外部物理ネットワーク435への接続を提供し、いくつかの実施形態は、データセンタプロバイダがこの接続を管理することができるように、PLRがそのような接続を提供することを可能にする。別々のTLR410ー420のそれぞれは、論理ネットワーク400の一部を通して、独立に構成される(そのように選択すれば単一のテナントが複数のTLRを有することができるが)。
図5及び図6は、TLR405が集中化構成要素を含むか否かに応じて異なる、論理ネットワーク400の取り得る管理プレーンビューを示す。これらの例では、TLR405のルーティングについてはDRを用いて常に分散化される。しかしながら、TLR405の構成がステートフルサービスの提供を含む場合、TLRの管理プレーンビュー(従って物理的な実装)は、これらのステートフルサービスのためのアクティブ及びスタンバイのSRを含む。
従って、図5は、TLR405が完全に分散化される場合の、論理トポロジ400に対する管理プレーンビュー500を示す。簡単のため、第1のTLR410の詳細のみが示されているが、他のTLRは、いくつかの場合にはSRに加えてそれぞれが自身のDRを有する。図2のように、PLR405は、通過論理スイッチ525によって互いに接続されるDR505と3つのSR510−520とを含む。PLR405の実装内の通過論理スイッチ525に加えて、管理プレーンはまた、TLRのそれぞれとPLRのDR505との間の別々の通過論理スイッチ530−540を定義する。TLR410が完全に分散化される事例(図5)では、通過論理スイッチ530は、TLR410の構成を実装するDR545と接続する。従って、2015年1月30日に出願された米国仮出願第62/110,061号においてより詳細に説明されるように、論理スイッチ425に取り付けられるデータ計算ノードによって外部ネットワーク内の宛先に送信されるパケットは、論理スイッチ425、TLR410のDR545、通過論理スイッチ530、PLR405のDR505、通過論理スイッチ525、及びSR510ー520の1つ、のパイプラインを通して処理される。いくつかの実施形態では、いくつかの実施形態の全てにおいて、通過論理スイッチ525及び530−540の存在及び定義は、トラブルシューティングを目的とする例外はあるものの、APIを通してネットワークを設定するユーザ(例えば管理者)には隠される。
図6は、TLR405が集中化構成要素を有する場合(例えば、分散化することができないステートフルサービスがTLRのために定義されているため)の、論理トポロジ400に対する管理プレーンビュー600を示している。いくつかの実施形態では、ファイアウォール、NAT、ロードバランシング等などのステートフルサービスは、集中化した形態でのみ提供される。しかしながら、他の実施形態は、分散化するサービスのいくつか又は全てを可能にする。前の図のように、第1のTLR410の詳細のみが簡単のために示されており、他のTLRは、同様に定義された構成要素(DR、通過LS、及び2つのSR)、又は図5の例のようにDRのみを有し得る。PLR405は、前の図と同一の態様で、通過論理スイッチ525によって互いに接続されたDR505と3つのSR510を用いて実施される。加えて、前の例のように、管理プレーンは、PLRとTLRのそれぞれの間に通過論理スイッチ530−540を置く。
TLR410の部分的な集中化実装は、論理スイッチ425及び430が取り付けられるDR605と、2つのSR610及び615とを含む。PLRの実装のように、DRと2つのSRのそれぞれは通過論理スイッチ620へのインタフェースを有する。いくつかの実施形態において、この通過論理スイッチは、スイッチ525と同一の目的を果たす。TLRに対し、いくつかの実施形態は、1つのSRがアクティブ、他がスタンバイに指定されたアクティブ−スタンバイのSRを実施する。従って、アクティブなSRが動作可能な限り、論理スイッチ425及び430の1つに取り付けられるデータ計算ノードによって送信されるパケットは、スタンバイのSRよりむしろアクティブなSRに送信される。いくつかの実施形態では、通過論理スイッチ530は、TLR410に接続する単一のポートのみを含み、このポートは、SRが動作しなくなり第2のSR615へ接続が移動しなければ、第1のSR610に接続する。このように、この接続は図における破線として示される。
上図はいくつかの実施形態の論理ルータの管理プレーンビューを示した。いくつかの実施形態では、管理者又は他のユーザは、APIを通して(他の構成情報に加えて)論理トポロジを提供する。このデータは管理プレーンに提供され、それは(例えばDR、SR、通過論理スイッチ等を定義することによって)論理ネットワークの実施を定義する。加えて、いくつかの実施形態では、ユーザは、各論理ルータ(例えば各PLR又はTLR)をデプロイのために物理マシンの組(例えばデータセンタ内の予め定められたマシンの組)と関連付ける。純粋な分散化ルータについては、図5で実施されるTLR405のように、DRが、論理ネットワークに接続されたデータ計算ノードと共にホスト上に存在する管理フォワーディング構成要素にわたって実施されるため、物理マシンの組は重要ではない。しかしながら、論理ルータの実施がSRを含む場合、これらのSRのそれぞれは特定の物理マシン上にデプロイされる。いくつかの実施形態では、物理マシンのグループは、(ユーザVM又は、論理スイッチに取り付けられるデータ計算ノードとは対照的に)SRをホストする目的のために指定されたマシンの組である。他の実施形態では、SRは、ユーザデータ計算ノードと一緒にマシン上にデプロイされる。
ある実施形態では、論理ルータのユーザ定義は特定の数のアップリンクを含む。以下で説明されるように、アップリンクは、論理トポロジにおける論理ルータのノースバウンドインタフェースである。TLRについては、そのアップリンクはPLRと接続する(一般に、アップリンクの全ては同一のPLRと接続する)。PLRについては、そのアップリンクは外部ルータと接続する。いくつかの実施形態はPLRのアップリンクの全てが同一の外部ルータとの接続性を有することを必要とする一方で、他の実施形態はアップリンクが外部ルータの異なる組と接続することを可能にする。ひとたびユーザが論理ルータのためのマシンのグループを選択すると、SRが論理ルータのために必要である場合には、管理プレーンは、選択されたマシンのグループにある物理マシンに論理ルータのアップリンクのそれぞれを割り当てる。管理プレーンはその後、アップリンクが割り当てられる各マシン上でSRを生成する。いくつかの実施形態では、同一マシンに複数のアップリンクを割り当てることが可能であり、この場合、マシン上のSRは複数のノースバウンドインタフェースを有する。
上述したように、いくつかの実施形態では、SRは、仮想マシン又は他のコンテナとして、又は、(例えばDPDKベースのSRの実施である場合には)VRFコンテキストとして、実施され得る。いくつかの実施形態では、SRの実施のための選択は、論理ルータのために選択されたサービスと、どのSRの種別がこれらのサービスを最良に提供するか、とに基づき得る。
加えて、いくつかの実施形態の管理プレーンは通過論理スイッチを生成する。通過論理スイッチのそれぞれについて、管理プレーンは、論理スイッチに固有のVNIを割り当て、各SR及びDR上に、通過論理スイッチと接続するポートを生成し、そして、論理スイッチと接続する任意のSR及びDRに対するIPアドレスを割り当てる。いくつかの実施形態は、各通過論理スイッチに割り当てられたサブネットが多数のTLR(例えばネットワークトポロジ400)を有する論理L3ネットワークトポロジ内で固有になることを必要とし、TLRのそれぞれは自身の通過論理スイッチを有し得る。すなわち、図6では、PLRの実装内の通過論理スイッチ525、PLRとTLRの間の通過論理スイッチ530−540、及び通過論理スイッチ620(及び任意の他のTLRの実施内の通過論理スイッチ)のそれぞれは、固有のサブネットを必要とする。更に、いくつかの実施形態では、SRは、論理空間内の例えばHAプロキシのようなVMへの接続を初期化する必要があり得る。戻りのトラフィックが機能することを保証するために、いくつかの実施形態はリンクローカルIPアドレスを使用しないようにする。
いくつかの実施形態は、多層構成において、論理ルータの接続に様々な制限を設ける。例えば、いくつかの実施形態は、任意の数の論理ルータの層(例えば、TLRの多数の層に加えて、外部ネットワークに接続するPLR層)を可能にし、他の実施形態は2層トポロジのみ(PLRに接続する1つのTLRの層)を可能にする。更に、いくつかの実施形態は、各TLRが唯一のPLRに接続することを可能にし、そして、ユーザによって生成された各論理スイッチ(すなわち通過論理スイッチではない)が1つのPLR又は1つのTLRに接続することを可能にする。いくつかの実施形態はまた、論理ルータのサウスバウンドのポートのそれぞれが異なるサブネットになければならないという制約を追加する。従って、2つの論理スイッチは、同一の論理ルータと接続する場合に、同一のサブネットを有しないであろう。最後に、いくつかの実施形態は、PLRの異なるアップリンクが異なるゲートウェイマシン上に存在しなければならないことを必要とする。いくつかの実施形態はこれらの要件のいずれも含まないこと、又は要件の様々な異なる組み合わせを含むことが理解されるべきである。
II.SR及びDRの構成
ユーザが論理ルータを(そのインタフェースと提供経路を構成することによって)構成する場合、この構成は、論理ルータのためのSR及びDRを管理プレーンによって構成するために用いられる。例えば、図1の論理ルータ115は4つのインタフェース(2つは論理スイッチへのもの、2つはアップリンク)を有する。しかしながら、図2におけるその分散化された管理プレーンの実施は、それぞれが3つのインタフェースを有するDRと2つのインタフェースを有するSRと(全部で7つのインタフェース)を含む。IP及びMACアドレスと、論理ルータ構成の一部として4つのインタフェースに割り当てられる他の構成の詳細とは、論理ルータの様々な構成要素に対する構成を生成するために用いられる。
更に、構成の一部として、いくつかの実施形態は、論理ルータ構成要素のそれぞれに対してルーティング情報ベース(RIB)を生成する。すなわち、管理者が単一の論理ルータのみを定義した場合であっても、いくつかの実施形態の管理プレーン及びコントロールプレーンの少なくともいずれかが、DR及びそれぞれのSRのための別々のRIBを生成する。PLRのSRのために、いくつかの実施形態では、管理プレーンが初めにRIBを生成するが、SRの物理的実施もまた、動的なルーティングプロトコル処理(例えばBGP、OSPF等)を実行して局所的にRIBを補う。
いくつかの実施形態は、論理ルータのRIB内、つまりその構成要素ルータのRIB内に複数の種別の経路を含む。いくつかの実施形態では、全ての経路は、大きい値ほど低優先度の経路の種別を示す、優先度を決定するために用いられる管理上の距離値(すなわち、同一のプレフィックスに対する2つの経路が存在する場合、より低い距離値を有する経路が用いられる)を含む。同一のプレフィックスに対する複数の経路が同一の距離値でRIBにある場合、これらのプレフィックスへのトラフィックは当該異なる経路にわたって(例えば、トラフィックを同等にバランスするためのECMP原理を用いて)分散する。
connected (0): 論理ルータのポートに構成されるプレフィックス
static (1): 管理者/ユーザによって構成される
management plane internal (10): デフォルト経路−TLRがPLRに接続される場合、PLRへ向かうデフォルト経路がTLRのRIBに追加され、論理スイッチがTLRに接続される場合、ユーザはサブネットを再分散化できるようにし、サブネットがNAT化されていなければ、サブネットのTLRへ向かうデフォルト経路はPLRのRIBに追加される
EBGP (20): 次の4つの種別は動的なルーティングプロトコルを介して学習される経路である
OSPF internal (30)
OSPF external (110)
IBGP (200)。
いくつかの実施形態では、全ての論理ルータがBGPとOSPF経路の両方を含むとは限らず、いくつかの論理ルータが含み得ないことを理解すべきである。例えば、外部ネットワークへの接続を含まない論理ルータは、何らのルーティングプロトコルを使用し得ず、そして、いくつかの論理ルータは、BGP及びOSPFの両方よりむしろ、1つの種別の経路共有プロトコル(route-sharing protocol)のみを実行し得る。
更に、いくつかの実施形態では、(動的なルーティングプロトコルを用いる)PLRのSRは、集中化コントローラから受信した(静的、接続済み、及び管理プレーンの内部経路を含む)RIBを、(動的ルーティングプロトコルを介して)物理ルータから学習した経路に統合する。SRは、学習済み経路を再計算のために集中化コントローラに送り返すよりむしろ、経路の収束を促進するために、これらの動的経路の統合に基づいて、そのFIBを内部で計算する。DRに対し、いくつかの実施形態の集中化コントローラは、RIB全体を、FIBを計算するローカルコントロールプレーンにプッシュダウン(push down)する。
A.DRの構成
いくつかの実施形態では、DRは、常に論理ルータの実装のサウスバウンド側(すなわち、外部物理ネットワークに接するよりもむしろ、論理ネットワークのデータ計算ノードに接する)に配置される。論理ルータが集中化構成要素を有しないのでなければ、論理ルータのアップリンクはDRに対して構成されず、DRのノースバウンドインタフェースは、代わりに論理ルータの一部である通過論理スイッチに接続する。
図7は、ネットワークアドレスおよび管理者によって割り当てられたインタフェースを含む、論理ネットワークトポロジ700のより詳細な構成を概念的に示す。図示されるように、論理スイッチ705及び710は、それぞれ自身のサブネット、1.1.1.0/24及び1.1.2.0/24に割り当てられ、論理スイッチ705に取り付けられたデータ計算ノードの全ては、対応するサブネット内のIPアドレスを有する。論理ルータ715は、第1の論理スイッチ705へのインタフェースL1を有し、このインタフェースは、サブネット1.1.1.0/24におけるデータ計算ノードに対するデフォルトゲートウェイである、1.1.1.253のIPアドレスを有する。論理ルータ715はまた、第2の論理スイッチ710へのインタフェースL2を有し、このインタフェースは、サブネット1.1.2.0/24におけるデータ計算ノードに対するデフォルトゲートウェイである、1.1.2.253のIPアドレスを有する。
論理ルータ715のノースバウンド側は2つのアップリンクであるU1及びU2を有する。第1のアップリンクU1は、192.168.1.252のIPアドレスを有し、192.168.1.252のIPアドレスを有する第1の物理ルータ720と接続する。第2のアップリンクU2は、192.168.2.253のIPアドレスを有し、192.168.2.252のIPアドレスを有する第2の物理ルータ725と接続する。物理ルータ720及び725は、実際には論理ネットワークの一部ではないが、論理ネットワークを外部ネットワークに接続する。図示した例では、アップリンクのそれぞれは単一の異なる物理ルータに接続するが、いくつかの事例では、アップリンクのそれぞれが複数の物理ルータの同一の組に接続する。すなわち、U1及びU2の両方は、物理ルータ720及び725の両方と両方が接続する。図示された例はそのような事例ではないが、いくつかの実施形態は、アップリンク接続が同一の接続性を提供する各外部ルータを必要とする。代わりに、第1の論理ルータ720はサブネット10.0.0.0/8に接続する一方で、第2のルータ725は両方のサブネット10.0.0.0/8及び11.0.0.0/8に接続する。
分散化構成要素を有する論理ルータに対し、いくつかの実施形態は以下のようにDRを構成する。サウスバウンドインタフェースは論理ルータのサウスバウンドインタフェースと同様に構成される。これらのインタフェースは、論理トポロジにおける論理スイッチ又は低レベル論理ルータと接続するものである(例えばPLRのサウスバウンドインタフェースはTLRと接続する)。いくつかの実施形態のDRは、単一のノースバウンドインタフェースが割り当てられ、これにはIPアドレスとMACアドレスが割り当てられる。論理ルータが1つ以上のSRを有することを想定した場合、DRのノースバウンドインタフェースは通過論理スイッチと接続する。
DRのRIBは、様々なサウスバウンド及びノースバウンドインタフェースに構成されたサブネットに基づいて、接続される経路を割り当てられる。(i)論理ルータのDR及びSR構成要素の間に構成される通過論理スイッチ、及び(ii)そのサウスバウンドインタフェース上の任意の論理スイッチ、に対して構成されるサブネットが存在する。サウスバウンドインタフェース上の論理スイッチは、データ計算ノードが接続するユーザ定義の論理ドメイン、又は、PLRのDRとPLRに接続する任意のTLRとの間に配置される通過論理スイッチであってよい。
更に、論理ルータのアップリンクから出る任意の静的経路は、DRのRIBに含まれるが、これらの経路は、次ホップのIPアドレスがアップリンクのSRのそれに設定されるように修正される。例えば、静的経路「a.b.c.0/24 via 192.168.1.252」(192.168.1.252は外部物理ネットワークルータのアドレス)は、「a.b.c.0/24 via [SRサウスバウンドインタフェースのIP]」に修正される。反対に、論理ルータのサウスバウンドから出る静的経路は、修正されないDRのRIBに含まれる。いくつかの実施形態では、論理ルータの各SRに対して、種別管理プレーン内部のデフォルト経路がDRのRIBに追加される。他の実施形態では、代わりに、特定のSRによって学習される動的経路が、特定のSRのサウスバウンドのIPとして修正される次ホップのIPアドレスとともにRIBに追加される。これはデフォルト経路に対する代替であり、これは管理プレーン内部種別が、さもなければSRによって学習された動的経路よりも高い優先度を有するためである。しかしながら、いくつかの実施形態では、TLRに対して、SRは動的ルーティングプロトコルを実行しないため、アクティブなSRのインタフェースを指す次ホップIPアドレスを有するデフォルト経路が代わりに用いられる。
図8は、管理プレーンによる論理トポロジ700の構成800を示している。図示されるように、論理スイッチ705と710とは、ユーザ設定によって指定されたように構成される。以前の例のように、論理ルータ715は、DR805と、2つのSR810及び815と、通過論理スイッチ820とを含む。DRは、論理ルータ705の2つのサウスバウンドインタフェースが割り当てられ、これらは論理スイッチ705及び710に接続する。通過論理スイッチは、サブネット192.168.100.0/24が割り当てられ、これは、論理ルータ705に(直接的に又は間接的に)論理的に接続する論理スイッチのなかで固有であるという要件を満たす必要がある。3つの管理プレーンルータ構成物805−815のそれぞれはまた、通過論理スイッチに接続されるインタフェースを含み、当該通過論理スイッチのサブネット内のIPアドレスを有する。サウスバウンドインタフェースU1及びU2は、2つのSR810及び815に割り当てられ、その構成は以下で説明する。
RIBの生成のために上述したいくつかの実施形態のルールを使用することにより、DR805のRIBは以下の経路を含む:
1.1.1.0/24 output to L1
1.1.2.0/24 output to L2
192.168.100.0/24 output to DRP1
192.168.1.0/24 via IP1
192.168.2.0/24 via IP2
10.0.0.0/8 via IP1
10.0.0.0/8 via IP2
11.0.0.0/8 via IP2
0.0.0.0/0 via IP1
0.0.0.0/0 via IP2
上記経路は、DRに接続された論理スイッチドメイン(1.1.1.0/24、1.1.2.0/24及び192.168.100.0/24)に対する3つの接続された経路を含む。更に、第1のアップリンクが配置されるサブネット(192.168.1.0/24)は、第1のSR810(IP1)のサウスバウンドインタフェースを介して到達される一方、第2のアップリンクが配置されるサブネット(192.168.2.0/24)は、第2のSR815(IP2)のサウスバウンドインタフェースを介して到達される。更に、3つの静的経路がユーザによって論理ルータ715に対して追加され、これは管理プレーンが自動的にDR805のために修正する。具体的に、経路は、両方のSRのサウスバウンドインタフェースを介するネットワーク10.0.0/8と、SR2のサウスバウンドインタフェースを介するネットワーク11.0.0/8とを含む。最後に、これらの同一のサウスバウンドインタフェースを指すデフォルト経路が含まれる。論理ルータのポートに対して管理プレーンによって生成されたIPアドレスIP1、IP2及びIP3は、全てがサブネット192.168.100.0/24にある通過論理スイッチを有するインタフェースを構築する。
B.SRの構成
論理ルータのDRと同様、管理プレーンは、別々のRIBとインタフェースを用いて論理ルータの各SRも構成する。上述したように、いくつかの実施形態では、PLRとTLRの両方のSRはサービス(すなわち、NAT、ファイアウォール、ロードバランシング等のような単なるルーティングを超えた機能)を実現し、PLRのためのSRは、論理ネットワークと外部物理ネットワークの間の接続も提供する。ある実施形態では、SRの実施はいくつかの目的を達成するように設計される。第1に、実施は、サービスがスケールアウトすることを保証する。すなわち、論理ルータに割り当てられたサービスは、論理ルータのいくつかのSRのいずれかによって実現され得る。第2に、いくつかの実施形態は、サービスポリシーがルーティング決定に依存し得るように、SRを構成する(例えば、インタフェースベースのNAT)。第3に、(いくつかの実施形態では低下したキャパシティ下で又は最適以下の態様でSRは動作することができるが)論理ルータのSRは、集中化コントロールプレーン又は管理プレーンの関与を要求することなく、自身の機能不全(例えば、SRが動作する物理マシンの機能不全、物理マシンへのトンネルの機能不全等)を扱う機能を有する。最後に、SRは、理想的には、自身の中での不必要なリダイレクトを排除する。すなわち、SRは、内部でパケットを転送する機能を有する場合、パケットを外部物理ネットワークへ転送しなければならず、必要なら異なるSRへのパケットのみを転送する。もちろん、SR間での転送はパケットループを回避しなければならない。
図8に示したように、各SRは、SRとDRの間にある通過論理スイッチ820へ接続する、1つのサウスバウンドインタフェースを有する。更に、いくつかの実施形態では、各SRは、論理ルータのように同数のノースバウンドインタフェースを有する。すなわち、1つのアップリンクのみがSRの動作する物理マシンに割り当てられ得るが、論理ルータインタフェースの全てがSR上で定義される。しかしながら、これらのインタフェースのいくつかはローカルインタフェースである一方、これらのインタフェースのいくつかはダミーインタフェースとして参照される。
いくつかの実施形態では、ローカルノースバウンドインタフェースは、パケットがSRから(直接物理ネットワークへ)直接出ることが可能なインタフェースである。SRに割り当てられたアップリンク(又は複数のアップリンクの1つ)に基づいて構成されるインタフェースは、ローカルインタフェースである。一方、異なるSRに割り当てられた論理ルータの他のアップリンクの1つに基づいて構成されるインタフェースは、ダミーインタフェースとして参照される。ダミーインタフェースのための構成を有するSRを提供することは、第1ホップのMFEが、アップリンクのいずれかに対するパケットをいずれかのSRに送信できるようにし、このとき、パケットがそのローカルインタフェースを宛先としていない場合であっても、SRはパケットを処理することができる。いくつかの実施形態は、SRの1つにおいてダミーインタフェースに対するパケットを処理した後に、インタフェースがローカルである、適切なSRへパケットを転送して、他のSRが外部物理ネットワークへパケットを送信できるようにする。ダミーインタフェースの使用は、ネットワークを管理する集中化コントローラ(又はコントローラの組)が、ルーティング決定に依存するサービスポリシーを全てのSRにプッシュできるようにし、これによりサービスは任意のSRによって配送できるようになる。
以下のセクションIVで説明するように、いくつかの実施形態では、SRは(例えば、BGP又はOSPFのような経路アドバタイズメントプロトコルを用いて)物理ネットワークとルーティング情報を交換する。経路交換の1つの目的は、どのSRが物理ネットワークへのパケットをルーティングするかにかかわらず、ルーティング決定が常に、SRのローカルインタフェースか、異なるSR上の論理ルータのアップリンクに対応するダミーインタフェースのいずれかに向けられることである。従って、論理ルータのアップリンクに関連付けられたポリシーは、アップリンクがSRに割り当てられていない場合であっても、当該SRによって適用され得、これはステートフルサービスのスケールアウトを可能にする。いくつかの実施形態では、ピアSRから受信した経路が、物理的な次ホップのルータから直接学習した経路より大きな距離値を有することにより、SRが物理ネットワークルータへ直接パケットを送信できないときにのみ、SRがそのピアSRへパケットを送信することを保証する。
1つ以上の集中化構成要素を有する論理ルータに対し、いくつかの実施形態は以下のようにSRを構成する。ノースバウンドインタフェースに対して、SRは論理ルータと同数のそのようなインタフェースを有し、これらの各インタフェースは、対応する論理ルータインタフェースのIP及びMACアドレスを継承する。これらのインタフェースのサブセットは(SRに割り当てられるアップリンクのための)ローカルインタフェースとしてマークされる一方、残りのインタフェースはダミーインタフェースとしてマークされる。いくつかの実施形態では、論理ルータのために定義されたサービスポリシーは全てのSRに対して均等にプッシュされる。これはサービスポリシーがネットワーク及びインタフェースの観点から同様に構成されるためである。特定の論理ルータのポート/アップリンクのための動的ルーティング構成は、その特定のアップリンクが割り当てられたSRのローカルインタフェースに転送される。
述べたように、各SRは、通過論理スイッチに接続する単一のサウスバウンドインタフェース(ローカルインタフェースでもある)を割り当てられ、ここで各SRのサウスバウンドインタフェースは同一の通過論理スイッチに接続されている。これらのサウスバウンドインタフェースのそれぞれのIPアドレスは、DRに割り当てられたノースバウンドインタフェース(通過論理スイッチのそれ)と同一のサブネット内にある。いくつかの実施形態は、SRがアクティブ−アクティブ又はアクティブ−スタンバイモードであるかに応じて、SRの間のIPアドレスの割り当てを異ならせる。アクティブ−アクティブモード(すなわちSRの全てがルーティング目的において平等に扱われる場合)に対しては、異なるIP及びMACアドレスが全てのSRのサウスバウンドインタフェースに割り当てられる。一方、アクティブ−スタンバイモードに対しては、2つのSRのサウスバウンドインタフェースの両方に同一のIPが用いられる一方、インタフェースのそれぞれは異なるMACアドレスが割り当てられる。
DRについての上記サブセクションで示したように、ユーザは論理ルータに対して静的経路を構成し得る。アップリンクから出る論理ルータの静的経路(又は接続された経路)は、SRのRIBにコピーされる。経路が出るアップリンクがSRに割り当てられる場合、このような経路に対する距離基準は修正されない。しかしながら、SRのアップリンクがダミーインタフェースである場合、いくつかの実施形態は、ダミーインタフェースを通して、異なるSRへパケットをリダイレクトすること無くネットワークに到達できるときに、SRがそのローカルインタフェースから出る経路を優先するように、この基準に値を追加する。更に、(トップレベルの論理ルータの)SRは動的経路を学習して、動的経路をRIBに置く(いくつかの実施形態はこれを内部で集中化コントローラを用いることなく実行するが)。いくつかの実施形態では、ピアSRから学習された動的経路は、距離基準の調整なしにインストールされる。これは、デフォルトではIBGP(SRからSRピアへ)又はOSPFから学習された経路に対する基準が、EBGPから学習された経路に対する基準より大きいためである。
論理ルータのサウスバウンドインタフェースのそれぞれに対し、いくつかの実施形態は、各SRのRIBに対応するネットワークのための経路を追加する。この経路は、その次ホップのIPアドレスとしてノースバウンドのDRインタフェースを指す。更に、サウスバウンドインタフェースから出る、論理ルータのために構成された任意の他の経路は、次ホップのIPアドレスとして同一のノースバウンドのDRインタフェースとともにSRにコピーされる。
図8の例に戻り、論理ルータ715が2つのアップリンクを有するように、管理プレーンは2つのサービスルータ810と815とを定義する。第1のサービスルータ810は、U1に対するローカルインタフェースと、U2’として参照されるU2に対するダミーインタフェースとを有する。同様に、第2のサービスルータ815は、U2に対するローカルインタフェースと、第1のアップリンクU1に対するダミーインタフェースU1’とを有する。これらのダミーインタフェースの機能は、これらのインタフェースが他のSRへパケットをリダイレクトするために用いられるものとして上述されている。これらのSRのそれぞれには、(SRがアクティブ−アクティブ構成であるように)異なるIPアドレスおよびMACアドレスを有するサウスバウンドインタフェースが割り当てられる。(第1のSR810に対する)IPアドレスIP1及び(第2のSR815に対する)IP2は、IP3(DR805のノースバウンドインタフェース)のように、サブネット192.1.100.0/24にある。
いくつかの実施形態のルールを用いて、かつ、ルーティングプロトコル(例えばBGP)がSRに対して有効化されているとすると、第1のSR810のRIBは以下の経路を含む。
10.0.0.0/8 output to U1 via 192.168.1.252, metric 20 (via EBGP)
10.0.0.0/8 output to U2’ via 192.168.2.252, metric 200 (via IBGP)
11.0.0.0/8 output to U2’ via 192.168.2.252, metric 200 (via IBGP)
192.168.1.0/24 output to U1, metric 0 (接続済)
192.168.100.0/24 output to SRP1, metric 0 (接続済)
1.1.1.0/24 via IP3, metric 10 (管理プレーン内)
1.1.2.0/24 via IP3, metric 10 (管理プレーン内)
同様に、第2のSR815のRIBは以下の経路を含む。
10.0.0.0/8 output to U2 via 192.168.2.252, metric 20 (via EBGP)
10.0.0.0/8 output to U1' via 192.168.1.252, metric 200 (via IBGP)
11.0.0.0/8 output to U2 via 192.168.2.252, metric 20 (via EBGP)
192.168.2.0/24 output to U2, metric 0 (接続済)
192.168.100.0/24 output to SRP2, metric 0 (接続済)
1.1.1.0/24 via IP3, metric 10 (管理プレーン内)
1.1.2.0/24 via IP3, metric 10 (管理プレーン内)
C.管理プレーン処理
図9は、ユーザ仕様に基づいてPLRを構成するいくつかの実施形態の処理900を概念的に示す。いくつかの実施形態では、処理900は管理プレーン(例えば、データセンタのネットワークを管理する集中化コントローラにおけるモジュールの組)によって実行される。管理プレーンは、構成処理を実行し、その後、コントローラの集中化コントロールプレーン(又は異なるネットワークコントローラ)を用いて、構成された論理ルータを実施する様々なホストマシン上の様々なローカルコントロールプレーンにデータを分散させる。
図示するように、処理900はPLRの仕様を(905において)受信することによって開始する。PLRの仕様は、PLRを定義する管理者入力(データセンタの所有者によって雇用された管理者)に基づく。いくつかの実施形態では、この仕様は、PLRが提供すべき任意のサービスの定義、PLRがアクティブ−アクティブ又はアクティブ−スタンバイモードで構成されるかどうか(もっとも、いくつかの実施形態はステートフルサービスが構成されない限り自動的にアクティブ−アクティブモードを用いる)、PLRにいくつのアップリンクが構成されるか、アップリンクのIP及びMACアドレス、アップリンクのL2及びL3接続性、PLRの任意のサウスバウンドインタフェースのサブネット(PLRを2層トポロジにする場合は1つのインタフェースであり、ユーザの論理スイッチが1層トポロジで直接接続する場合は任意の数のインタフェース)、PLRのRIBに対する任意の静的経路、及び他のデータを含む。異なる実施形態が、PLRの構成データに列挙されたデータの異なる組み合わせ又は他のデータを含み得ることは理解されるべきである。
そして処理900は、(910において)この構成データを用いてDRを定義する。これは、PLRが完全に集中化しない場合には管理プレーンによってDRは生成されないことを想定している。DRのサウスバウンドインタフェースについて、管理プレーンは、PLRのサウスバウンドインタフェース構成を用いる。すなわち、DRのIPアドレスとMACアドレスとは、論理ルータのために特定されたものになる。
更に(915において)処理は、PLRのために特定されたアップリンクのそれぞれをゲートウェイマシンに割り当てる。上述したように、いくつかの実施形態は、論理ルータのSRの位置に対する物理ゲートウェイマシンの特定の組を、ユーザが特定できるようにする(或いは特定することを求める)。いくつかの実施形態では、ゲートウェイマシンの組はサーバの特定のラック又はサーバのラックのグループ内、若しくはそうでなければ関連付けられて、組の中で全てのマシンを接続するトンネルとともに存在する。その後、管理プレーンは、選択された組のゲートウェイマシンの1つに各アップリンクを割り当てる。いくつかの実施形態は、複数のアップリンクが同一のゲートウェイマシンに割り当てられるようにし(論理ルータがアクティブ−スタンバイモードで構成される2つのアップリンクのみを有しない限り)、一方で他の実施形態は、アクティブ−アクティブ又はアクティブ−スタンバイモードであるかに関わらずPLRのためのゲートウェイに対して単一のアップリンクのみが割り当てられるようにする。
ゲートウェイマシンにアップリンクを割り当てた後に、(920において)処理900は、2つのゲートウェイマシンのそれぞれの上にSRを定義する。各SRについて、処理はゲートウェイマシンに対して割り当てられたアップリンクに対する構成を、SRのノースバウンドインタフェースに対する構成として使用する。この構成情報は、任意のアップリンク特有のポリシーに加えて、アップリンクのIP及びMACアドレスを有する。異なるポリシー及びL3の接続性の少なくともいずれかが許容され、異なるアップリンクの間で使用される状況では、いくつかの実施形態はまた、必要に応じてパケットをリダイレクトするためにSR上にダミーインタフェースを構成する、ことが理解されるべきである。
処理は更に、(925において)定義されたSR及びDRと接続する通過論理スイッチを定義する。いくつかの実施形態において、管理プレーンは、固有のVNI(論理スイッチ識別子)を通過論理スイッチに割り当てる。更に、いくつかの実施形態は、通過論理スイッチに割り当てられたサブネットが論理ネットワークトポロジ内で固有であることを必要とする。すなわち、通過論理スイッチは、PLRと直接インタフェースを有する任意のユーザ定義の論理スイッチ、PLRに接続される任意のTLRとPLRとの間の通過論理スイッチ、これらのTLR内の全ての通過論理スイッチ、及び、これらのTLRに接続される任意のユーザ定義の論理スイッチと異なるサブネットを用いなくてはならない。
次に、処理900は、(930において)DRにノースバウンドインタフェースを割り当てる。いくつかの実施形態では、ノースバウンドインタフェースは(PLRの構成要素の間で内部的に送信されるパケットに用いられる)MACアドレス及びIPアドレスの両方を割り当てられる。いくつかの実施形態では、IPアドレスは、925において定義された通過論理スイッチに割り当てられたサブネット内のものである。通過論理スイッチの構成は、このMACアドレスとその論理ポートの1つとの関連を含む。
その後処理は(935において)、PLRがアクティブ−アクティブモード(或いはアクティブ−スタンバイモード)で構成されるかを判定する。いくつかの実施形態では、上で言及したように、この判定は、PLRに対する構成設定の一部として管理者によってなされる。他の実施形態では、管理プレーンは、ステートフルサービスが設定されていない場合には、PLRに対してSRを自動的にアクティブ−アクティブ構成で定義する。そして、ステートフルサービスが設定されている場合には、SRはアクティブ−スタンバイモードで定義される。
PLRがアクティブ−スタンバイモードで構成される場合、処理は(940において)、2つのSR(又は、複数のスタンバイがある場合には2つ以上のSR)のそれぞれのサウスバウンドインタフェースを割り当てる。アクティブ−スタンバイの場合、これらの全てのサウスバウンドインタフェースは同一のIPアドレスを有し、これは動作925において定義される通過論理スイッチのサブネット内にある。2つのインタフェースは同一のIPアドレスを受けつけるが、DRによってルーティングされるノースバウンドのパケットに対する宛先として当該2つを異ならせるように、異なるMACアドレスを割り当てる。
その後処理は(945において)、SRの1つをアクティブに、SRの1つをスタンバイに割り当てる。いくつかの実施形態は、この決定をランダムに行わせる一方で、他の実施形態はゲートウェイマシンにまたがるSRのアクティブ及びスタンバイの割り当てがバランスするように試みる。より詳細は米国特許公報2015/0063364号に記載されている。アクティブとして割り当てられたSRは、サウスバウンドインタフェースに対するARPリクエストに応答し、ノースバウンドインタフェースから外部物理ネットワークへプレフィックスをアドバタイズする。一方、スタンバイSRは(ノースバウンドのトラフィックを受信することを避けるため)ARPリクエストに対して応答せず、プレフィックスをアドバタイズしない(しかし、アクティブなSRの機能不全の場合に外部ネットワークから経路を受信するためにBGPセッションを維持する)。
最後に、処理900は(950において)DR及び各SRのための別々のRIBを生成する。別々のRIBは、前のサブセクションとセクションVに示す形式の構成データに基づいて生成される。その後処理は終了する。いくつかの実施形態では、管理プレーンはまたFIBを集中的に算出する一方、他の実施形態では、(ホスト及びゲートウェイマシン上で動作する)ローカルコントロールプレーンは、論理ルータ構成要素による実際のパケットのフォワーディングにおいて用いるためのFIBを生成するためにRIBトラバーサルを実行する。いずれの場合も、RIBは外部ネットワークから学習された動的な経路に基づいてSR上で更新され、このデータは中央コントローラを介してDRへ伝達される。いくつかの実施形態の、ネットワークコントローラによるFIBの計算は、2014年3月14日に出願された米国特許出願14/214,545号に、より詳細に説明されている。
一方、PLRがアクティブ−アクティブ(EMCP)モードで構成される場合、処理は(955において)、SRのそれぞれにサウスバウンドインタフェースを割り当てる。アクティブ−アクティブの場合、これらのサウスバウンドインタフェースは、異なるMACアドレスに加えて、動作925において定義される通過論理スイッチのサブネット内にある異なるIPアドレスが割り当てられる。異なるIPアドレスにより、SRのそれぞれは、ホストマシン内のDRパイプラインによって所定のパケットに対して選択されたIPアドレスに基づいて、ノースバウンドのパケットを処理することができる。
次に、処理は(960において)、SRにランクを割り当てる。詳細を以下に示すように、SRは、機能不全の際に、どのSRが停止したSRの責務を引き継ぐかを決定するためのランクを用いる。いくつかの実施形態では、次に最も高くランクされたSRは、そのサウスバウンドインタフェースを引き継ぐことによって停止したSRを引き継いで、さもなければ停止したSRのIPアドレスへ送信されるノースバウンドのトラフィックを引き込む。
最後に、処理は(965において)DR及び各SRのための別々のRIBを生成する。別々のRIBは、前のサブセクションとセクションIVに示す形式の構成データに基づいて生成される。その後処理は終了する。いくつかの実施形態では、管理プレーンはまたFIBを集中的に算出する一方、他の実施形態では、(ホスト及びゲートウェイマシン上で動作する)ローカルコントロールプレーンは、論理ルータ構成要素による実際のパケットのフォワーディングにおいて用いるためのFIBを生成するためにRIBトラバーサルを実行する。いずれの場合も、RIBは外部ネットワークから学習された動的な経路に基づいてSR上で更新され、このデータは中央コントローラを介してDRへ伝達される。
上記図9の記載は、PLR(上層論理ルータ)のための様々な構成要素を生成するための管理プレーンの動作を示している。図10は、ユーザ仕様に基づいてTLRを構成するいくつかの実施形態の処理1000を概念的に示している。いくつかの実施形態では、処理1000は管理プレーン(例えば、データセンタのネットワークを管理する集中化コントローラにおけるモジュールの組)によって実行される。管理プレーンは、構成処理を実行し、その後、コントローラの集中化コントロールプレーン(又は異なるネットワークコントローラ)を用いて、構成された論理ルータを実施する様々なホストマシン上の様々なローカルコントロールプレーンにデータを分散させる。
図示するように、処理はTLRの仕様を(1005において)受信することによって開始する。TLRの仕様は、TLRを定義する管理者入力(データセンタのテナントによって雇用された管理者)に基づく。いくつかの実施形態では、この仕様は、TLRが提供すべき任意のサービスの定義、どのPLRにTLRがそのアップリンクを通じて接続すべきか、TLRに接続する任意の論理スイッチ、TLRのインタフェースのIP及びMACアドレス、TLRのRIBに対する任意の静的経路、及び他のデータを含む。異なる実施形態が、TLRの構成データに列挙されたデータの異なる組み合わせ又は他のデータを含み得ることは理解されるべきである。
そして処理1000は、(1010において)TLRが集中化構成要素を有するかを判定する。いくつかの実施形態では、TLRがステートフルサービスを提供しない場合、そのときはTLRに対するSRが定義されず、これは分散化される形態でのみ実施される。一方、いくつかの実施形態は、この図に示すように、ステートフルサービスが提供される場合、アクティブ−スタンバイモードにおけるSRを必要とする。
TLRがステートフルサービスを提供しない又はそうでなければ集中化構成要素を必要とする場合、処理は(1015において)、サウスバウンド及びノースバウンドインタフェースの両方に対する論理ルータの仕様を用いてDRを定義する。DRは、TLRに接続する論理スイッチがいくつ定義されるかに応じて、多数のサウスバウンドインタフェースを有し得る。一方、いくつかの実施形態は、TLRを、PLRにパケットを送信し及びPLRからパケットを受信する単一のノースバウンドインタフェースに制限する。次に、処理は、(1020において)DRのためのRIBを生成する。DRのためのRIBは、上述のように生成された論理ルータのための経路の全てを含む。
一方、TLRがステートフルサービスを提供する、又は他の理由で集中化構成要素を要求する場合、処理は(1025において)、受信した構成データを用いてDRを定義する。DRのサウスバウンドインタフェースについて、管理プレーンは、TLRのサウスバウンドインタフェース構成を用いる。すなわち、各サウスバウンドインタフェースに対するIPアドレスとMACアドレスとは、様々な論理スイッチが接続する論理ルータのポートのために特定されたものになる。
更に(1030において)処理は、TLRのために特定されたアップリンクのそれぞれを2つのゲートウェイマシンに割り当てる。いくつかの実施形態はTLRが複数のアップリンクとアクティブ−アクティブモードで動作できるようにするが、処理1000は、アクティブ−スタンバイモードにおいて単一のアップリンク(リンクがTLRを他の論理ルータに相互接続するものとして、ルータリンクとしても参照される)にTLRを制限する実施形態に対するものである。上述したように、いくつかの実施形態は、論理ルータのSRの位置に対する特定の組の物理ゲートウェイマシンを、ユーザが特定できるようにする(或いは特定することを求める)。いくつかの実施形態では、ゲートウェイマシンの組はサーバの特定のラック又はサーバのラックのグループ内、若しくはそうでなければ関連付けられて、組の中で全てのマシンを接続するトンネルとともに存在する。その後、管理プレーンは、選択された組のゲートウェイマシンの2つにアップリンクを割り当てる。
ゲートウェイマシンにアップリンクを割り当てた後に、(1035において)処理1000は、2つのゲートウェイマシンのそれぞれの上にSRを定義する。各SRについて、管理プレーンは、単一のアップリンクに対する構成を、SRのノースバウンドインタフェースに対する構成として使用する。唯一のノースバウンドインタフェースを有するため、処理はSRの両方に対して同一の構成を適用する。すなわち、同一のIPアドレスが両方のノースバウンドインタフェースに用いられるだけでなく、インタフェース上のサービスも同様の方法で構成される。しかしながら、アクティブSRとスタンバイSRとを異ならせるように、異なるMACアドレスがノースバウンドインタフェースに用いられる。
処理は更に、(1040において)定義されたSR及びDRと接続する通過論理スイッチを定義する。いくつかの実施形態において、管理プレーンは、固有のVNI(論理スイッチ識別子)を通過論理スイッチに割り当てる。更に、いくつかの実施形態は、通過論理スイッチに割り当てられたサブネットが論理ネットワークトポロジ内で固有であることを必要とする。すなわち、管理プレーンは、通過論理スイッチに、TLRとインタフェースを有する任意のユーザ定義の論理スイッチと、TLR(又は他のTLR)とPLRとの間の任意の通過論理スイッチと、同一のPLRに接続する他のTLR内の全ての通過論理スイッチと、PLR内の通過論理スイッチと、他のTLRに接続するユーザ定義の論理スイッチと、異なるサブネットを通過論理スイッチに割り当てなければならない。
次に、処理は、(1045において)DRへのノースバウンドインタフェースを割り当てる。いくつかの実施形態では、このインタフェースは(TLRの構成要素の間で内部的に送信されるパケットに用いられる)MACアドレス及びIPアドレスの両方を割り当てられる。いくつかの実施形態では、IPアドレスは、940において通過論理スイッチに割り当てられた同一のサブネット内のものである。処理はまた、(1050において)2つのSRのそれぞれのサウスバウンドインタフェースを割り当てる。これはアクティブ−スタンバイ構成であるので、これらのサウスバウンドインタフェースは同一のIPアドレスを有し、これは動作940において定義される通過論理スイッチのサブネット内にある。2つのインタフェースは同一のIPアドレスを受けつけるが、DRによってルーティングされるノースバウンドのパケットに対する宛先として当該2つを異ならせるように、割り当てられるMACアドレスは異なる。
その後処理1000は(1055において)、SRの1つをアクティブに、SRの1つをスタンバイに割り当てる。いくつかの実施形態は、この決定をランダムに行わせる一方で、他の実施形態はゲートウェイマシンにまたがるSRのアクティブ及びスタンバイの割り当てがバランスするように試みる。アクティブとして割り当てられたSRは、サウスバウンドインタフェース(このTLRのDRから)及びノースバウンドインタフェース(PLRのDRから)に対するARPリクエストに応答する。一方、スタンバイSRは(ノースバウンド又はサウスバウンドのトラフィックを受信することを避けるため)ARPリクエストに応答しない。
最後に、処理は(1060において)DR及び各SRのための別々のRIBを生成する。別々のRIBは、前のサブセクションと以下のセクションIVに示す形式の構成データに基づいて生成される。いくつかの実施形態では、管理プレーンはまたFIBを集中的に算出する一方、他の実施形態では、(ホスト及びゲートウェイマシン上で動作する)ローカルコントロールプレーンは、論理ルータ構成要素による実際のパケットのフォワーディングにおいて用いるためのFIBを生成するためにRIBトラバーサルを実行する。いずれの場合も、RIBは外部ネットワークから学習された動的な経路に基づいてSR上で更新され、このデータは中央コントローラを介してDRへ伝達される。
TLRがSRを有して生成されたかSRを有しないで生成されたかに関わらず、処理1000は(1065において)、TLRとTLRが接続するPLRとの間に他の通過論理を定義する。この通過論理スイッチは、固有のVNIと、TLRのアップリンクIPアドレスが属すサブネットとを有する。更に、PLRのDR上のインタフェースは、通過論理スイッチに接続するために同一のサブネット内に生成される。その後処理は終了する。
処理900及び1000はこれらの様々な動作を実行する特定の順序を示しているが、これらの処理は単なる概念的なものであることが理解されるべきである。様々な異なる実施形態において、管理プレーンは、実際の動作を、様々な異なる順番で又はいくつかの動作を並行して実行し得る。例えば、管理プレーンは、少しでもSRやDRを定義するより前に、初めに通過論理スイッチを定義し、別々の物理マシンに割り当てる前に完全に論理ルータ構成要素の全てを定義することができる。
III.ルーティングテーブル構成
上述したように、いくつかの実施形態では、管理プレーンは論理ルータ構成を受信して、(i)各論理ルータに対する1つ以上の論理ルータ構成物と(ii)各論理ルータ構成物のためのルーティング情報ベース(RIB)とを生成する。様々な異なる実施形態において、RIBからフォワーディング情報ベース(FIB)の計算は、管理プレーンによって、若しくは集中化又はローカルコントロールプレーンによって、実行されてよい。例えば、いくつかの実施形態において、RIBは、SR又はDRを実装する各マシンに分散化され、当該マシン上で動作するローカルネットワークコントローラは、FIBを計算するために経路トラバーサルを実行する。このセクションでは、いくつかの実施形態における、様々な論理ルータ構成物のためのRIBを生成するためのルールがより詳細に説明される。経路は、論理スイッチの、論理ルータへの接続、互いの論理ルータの接続、又は(論理ルータ構成の一部として受信した)静的経路の入力、からくるものであってよい。
図11は、いくつかの実施形態のRIB生成ルールを示すために用いられる、より複雑な論理ネットワーク構成1100を示している。具体的に、論理ネットワーク構成1100は、取り付けられた論理スイッチ1120を有するPLR1105であって、2つのTLR1110及び1115も取り付けられたPLR1105を含む。第1のTLR1110は取り付けられた2つの論理スイッチ1125及び1130を有し、第2のTLR1115は取り付けられた2つの論理スイッチ1135及び1140を有する。PLR1105は、3つのアップリンクU1−U3を用いて構成され、U1は1.1.3.2のIPアドレスを有し、外部物理ルータ1.1.3.1に接続される。U2は、1.1.4.2のIPアドレスを有し、同一のサブネット上の、1.1.4.1及び1.1.4.11のIPアドレスを有する、2つの外部物理ルータと接続する。U3は、U2と同一のL3接続性を有する同一のサブネット上にあり、1.1.4.21のIPアドレスを有する。PLRはまた、3つのサウス向きインタフェースを有し、論理スイッチ1120に対するもの(1.1.0.1のIPアドレスを有し、論理スイッチ1120のサブネット1.1.0.0/24内)と、TLR1110及び1115のためのD1及びD2のそれぞれ1つとを有する。いくつかの実施形態では、TLRをPLRに取り付けるユーザ(すなわちTLRの所有者)はこのインタフェースを構成しない。代わりに、続く図12の管理プレーンビューに示されるようになる。
いくつかの実施形態では、データセンタの管理者は、PLR(すなわちアップリンクとその接続性)と第1の論理スイッチ1120を構成する。第1のテナントは、第1のTLR1110と2つの論理スイッチ1125及び1130を構成する一方、第2のテナントは、独立的に、第2のTLR1115と2つの論理スイッチ1135及び1140を構成する。他の実施形態では、(例えば、エンタプライズネットワークの場合には)単独の管理者が論理ネットワーク1100全体を構成する。異なるユーザが異なる論理ルータを設定する場合、いくつかの実施形態は、様々な論理スイッチ1120−1140のために利用可能なサブネットを制限して、IPアドレスがパブリックになる(例えばアップリンクU1−U3を介して外部ネットワークにアドバタイズする)場合に、異なるサブネットが論理スイッチのそれぞれに対して使用されることを確実にする。いくつかの実施形態は、論理スイッチが、IPアドレスが外部に(同一のPLRに接続する他のTLRへも含む)アドバタイズされない限り、サブネットを再使用することができるようにする。
図12は、図11に示す構成(APIを介したユーザによる入力として)に基づいて、管理プレーンによって生成される論理ネットワーク1100を概念的に示している。この場合、TLR1110及び1115のいずれもステートフルサービスを含まず、従って、SRはTLRに対して必要とされない。前のセクションにおいて説明されたように、TLR1110及び1115は、それぞれDR1205及び1210を含む。論理スイッチが接続するTLRのサウス向きポートは、論理ネットワーク構成1100内のTLRに与えられる(例えば1.1.5.1、1.1.6.1等)IPアドレスと同一の(取り付けられたこれらの論理スイッチのサブネット内の)IPアドレスが割り当てられる。更に、TRLとPLRとの間の接続のそれぞれに対し、管理プレーンは、通過論理スイッチを割り当てるとともに、これらの論理スイッチ上のDR1205及び1210にノース向きインタフェースのIPアドレスを割り当てる。いくつかの実施形態では、これらの通過論理スイッチのそれぞれは2つのアドレスのみを必要とするため、管理プレーンは常に、IPアドレススペースを浪費しないように、サブネットのプールから/31のサブネットを割り当てる。この場合、第1の通過論理スイッチ1215は192.168.10.0/31のサブネットを有する一方、第2の通過論理スイッチ1220は、隣のサブネット192.168.10.2/31を有する。
管理プレーンはまた、DR1225と、PLR1105のための(それぞれのアップリンクのための)3つのSR1230−1240とを定義する。DR1225は、管理プレーンによって定義される4つのインタフェースP1に加えて、(前セクションにおいて説明したように)PLR1105の3つのサウス向きインタフェースを有する。このインタフェースP1は、3つのSR1230−1240のサウス向きインタフェースにも接続する、サブネットの169.0.0.0/28を有する通過論理スイッチ1245と接続する。これらの4つのインタフェースP1−P4は、順に、169.0.0.1、169.0.0.2、169.0.0.3及び169.0.0.4のIPアドレスを有する。
図13、15、16及び17は、(例えば集中化ネットワークコントローラにおける)管理プレーンによって実行される、論理ルータ構成データをいくつかの実施形態におけるDR及びPLRのSRのためのRIBに変換する、いくつかの実施形態の様々な処理を概念的に示している。具体的には、図13及び図15がPLRのための静的経路の異なる種別の取り扱いを説明する一方、図16は、TLRのPLRへの接続とPLR構成物のための経路を生成する動的ルーティング処理とに対する取り扱いを説明し、そして図17は、PLR上の新たな論理インタフェース(外部ネットワークへのアップリンクと、TLR又は論理スイッチへのダウンリンクとの両方)の生成を説明する。いくつかの実施形態では、これらの処理は、管理プレーン(例えば、データセンタのネットワークを管理する集中化コントローラにおけるモジュールの組)によって実行される。管理プレーンは、構成処理を実行し、その後、コントローラ(又は異なるネットワークコントローラ)の集中化コントロールプレーンを用いて、論理ルータ構成物を実装する様々なホストマシン上の様々なローカルコントロールプレーンにデータを分散させる。これらの処理は、部分的に、図11及び12に示した論理ネットワーク1100と、図14に示した経路構成入力及びRIB出力とを参照することによって説明される。
図13は、PLRのため(例えばPLR1105のため)の構成情報として入力されるサウス向きの静的経路を処理するいくつかの実施形態の処理1300を概念的に示す。図示するように、処理1300は、(1305において)論理ネットワークにおける次ホップを有する静的経路を受信することによって開始する。いくつかの実施形態では、静的経路は、ルーティングされるプレフィックス、経路の次ホップ(又はゲートウェイ)、及び、ある場合には経路を出力するインタフェース、とともに入力される。使用時には、プレフィックスと一致する(且つより長いプレフィックスを有する経路とは一致しない)送信先IPアドレスを有する任意のパケットが、所与の次ホップアドレスへ所与のインタフェースを介して出力される。次ホップが、PLRに取り付けられた論理スイッチのサブネットの1つにある、又はPLRに取り付けられたTLRに取り付けられた論理スイッチのサブネットの1つにある場合、そのときの経路は、論理ネットワーク内の次ホップを有するサウス向き経路である。
図14は、PLR1205のために構成される静的経路の組1405と、以下に図16を参照して説明されるTLRのための構成とを概念的に示している。この図はまた、この構成データに基づいて、管理プレーンによってDRと3つのSRのために生成される出力1400を示す。この出力は、DR1225のためのRIB1410、及び、3つのSR1230−1240のためのRIB1415−1425を含む。図示されるように、PLRのために構成される静的経路の組1405は、1.1.0.2へ送信される、サブネット2.2.2.0/24内の送信先アドレスを有する全てのパケットを特定する、サウス向き経路(2.2.2.0/24 via 1.1.0.2)を含む。このアドレスは、論理スイッチ1120に取り付けられるVMに属す。
そのような経路を受信した場合、処理1300は、(1310において)経路をPLRのDRのRIBに、修正すること無く追加する。すなわち、DRのRIBに追加された経路の次ホップは、構成データにおいて特定された次ホップと同一である。図14に示す例では、構成された経路2.2.2.0/24 via 1.1.0.2(RIB内にリストされる第4の経路)は、DRのためのRIB1410に、修正すること無く追加される。
処理1300はまた、DRのノース向きインタフェースを有する各SRのRIBに、(何ら出力インタフェースを削除すること無く)経路を次ホップとして追加する。すなわち、特定されたプレフィックスのための経路は、SRのサウス向きインタフェースと同一の通過論理スイッチに接続するDRインタフェースのものである次ホップとともに、(外部物理ネットワークから特定のIPアドレスに送信されるパケットを取り扱うために)SRのそれぞれに追加される。論理ネットワーク1100では、これは169.0.0.1のIPアドレスを有するインタフェースP1である。そのようなものとして、各RIB1415−1425は経路2.2.2.0/24 via 169.0.0.1を有する。PLRのための論理ルータ構成物のそれぞれのRIBに経路を追加した後に、処理1300は終了する。いくつかの実施形態では、SRが再帰的な経路を推定する機能を有する限り、管理プレーンは、経路を修正するよりもむしろ修正すること無く、サウス向き静的経路をSRのRIBに追加する。このような実施形態では、この例の管理プレーンは、ひとたび経路がトラバースされれば、経路1.1.0.0/24 via 169.0.0.1が結果としてSRのFIBにおける正しい結果となるであろうことを認識したうえで、経路2.2.2.0/24 via 1.1.0.2を追加する。
処理1300がサウス向き静的経路を取り扱うために使用されるのに対し、図15は、PLRのため(例えばPLR1105のため)の構成情報として入力されるノース向き経路を処理するいくつかの実施形態の処理1500を概念的に示す。いくつかの実施形態では、処理1300と1500とは、経路がサウス向きであるかノース向きであるかについての処理によってなされる決定に応じて実行される異なる動作を有する、実際には単一のソフトウェア処理の一部である。
図示するように、処理1500は、外部物理ネットワーク向きの次ホップを有する静的経路を(1505において)受信することによって開始する。このとき、次ホップが、外部物理ネットワークへの論理ネットワークに対する接続性を提供する物理ルータのものである場合には、その経路は、外部物理ネットワーク向きの次ホップを有するノース向き経路である。PLRのために構成される静的経路の組1405は、3つの異なる、プレフィックス0.0.0.0/0(すなわちデフォルト経路)のための経路、172.16.0.0/16のための経路、及び10.0.0.0/8のための経路を含む、多数のノース向き経路を含む。これらの経路のそれぞれは、外部ルータ(すなわち1.1.3.1、1.1.4.1及び1.1.4.11のひとつ)に属す次ホップを特定する。
そして処理は、(1510において)出力インタフェースが経路のために特定されたかを判定する。上述したように、いくつかの実施形態では、構成済みの静的経路は次ホップのアドレスを含み、そしてある場合には、論理ルータのインタフェースを介した、サブネット内の送信先アドレスを有する出力パケットがルーティングされる。PLR構成データ1405に経路が現れる限り、(0.0.0.0/0に対する)3つのデフォルト経路は出力インタフェースを特定する。特に、これらの経路は、3つのノース向きインタフェースU1、U2及びU3のそれぞれのための次ホップの物理ルータを示す。
経路が出力インタフェースを特定する場合、処理は、特定されたインタフェースに関連付けられるSRを(1515において)識別する。いくつかの実施形態では、前セクションにおいて説明されたように、異なるSRは、PLRのアップリンクのそれぞれに対して割り当てられる。例えば、論理ネットワーク1100の例では、PLR1105のアップリンクU1、U2及びU3は、3つのSR1230、1235及び1240にそれぞれ関連付けられる。
その後処理1500は(1520において)、識別されたSRのRIBに経路を追加する。経路によって処理されるノースバウンドのパケットは他のSRへ送信されるべきではないため、経路は他の任意のSRには追加されない。従って、図14の例では、経路0.0.0.0/0 via 1.1.3.1 output to U1は、出力インタフェースU1が所有する、第1のSR1230のためのRIB1415にのみ追加される。同様に、経路0.0.0.0/0 via 1.1.4.1 output to U2は、第2のSR1235のためのRIB1420にのみ追加され、経路0.0.0.0/0 via 1.1.4.11 output to U3は、第3のSR1240のためのRIB1420にのみ追加される。
一方、経路が出力インタフェースを特定しない場合、処理は、特定された次ホップへの接続性を有する全てのSRを(1525において)識別する。全てのSRが同等のL3接続性を有する場合(例えば、全てのアップリンクが同一の物理ルータの組と接続する)、これはSRの全てとなる。しかしながら、ある場合には、管理者は異なるL3接続性を有するPLRのアップリンクを構成してもよく、この場合、いくつかのSRは特定の経路のための次ホップへの接続性を有しないかもしれない。
そして処理は、識別されたSRのそれぞれのためのRIBに経路を(1530において)追加する。PLR構成1405は、特定された出力インタフェースを有しない2つの静的経路を含む。そのような経路の1つ目は、次ホップアドレス1.1.3.1を有するプレフィックス172.16.0.0/16に対する経路である。この場合、SR1230のみが次ホップへの接続性を有するため、管理プレーンはこの第1のSRのためのRIB1415にのみ経路を追加する。この経路はRIB1420及び1425には追加されない。他の経路は、次ホップの1.1.4.1を有するプレフィックス10.0.0.0/8に対する経路である。アップリンクの2つ(U2及びU3)はこの次ホップへの接続性を有するため、経路は、SR1235及び1240のそれぞれのRIB1420及び1425に追加され、RIB1415には追加されない。
1つ以上のSRに経路を追加することに加えて、プロセス1500はまた、いくつかの場合においてDRに経路を追加する。具体的に、処理は、(1535において)経路がデフォルト経路であるかを判定する。いくつかの実施形態では、デフォルト経路は、プレフィックス0.0.0.0/0(すなわちIPv4のアドレス空間全体)のための経路である。最も長いプレフィックスのマッチングシステムでは、このような経路は、パケットがルーティングテーブル内のあらゆる他の経路と一致しない場合に用いられる。論理ネットワークのエンドマシン(例えばVM)が、インターネット経由でマシンにアクセスするリモートクライアントのためのサーバとして動作する場合、そのときは、デフォルト経路が返信用通信のためにしばしば用いられる。
経路がデフォルト経路である場合、処理1500はDRに一切経路を追加せず、処理を終了する。このように、例では、3つのデフォルト経路はDRに追加されない。しかしながら、いくつかの実施形態では、PLRのための複数の論理ルータ構成物を生成する構成の一部として、管理プレーンは常にDRにデフォルト経路を追加する。これは、(ECMP原理を用いて)何らかのSRに一致しない限りパケットを送信する。従って、DR1225のためのRIB1410は、デフォルト経路0.0.0.0/0 via 169.0.0.2, 169.0.0.3, 169.0.0.4(3つのSRのサウス向きインタフェースP2−P4のアドレス)を含む。この経路は3つのSRのいずれか1つにパケットを送信する。
非デフォルト静的経路に対して、処理は、経路の追加された各SRに対する、次ホップとしてSRのサウス向きインタフェースを有する経路をDRに(1540において)追加する。処理1500はその後終了する。例えば、経路172.16.0.0/16 via 1.1.3.1のみが第1のSR1230のためのRIB1415に追加された。そのときは、この経路は、172.16.0.0/16 via 169.0.0.2(P2のアドレス、第1のSR1230のサウス向きインタフェース)としてDR1225のためのRIB1410に追加される。一方、経路10.0.0.0/8 via 1.1.4.1は、RIB1420及び1425に追加された。このときは、管理プレーンは、2つの次ホップを有する経路をDRのためのRIB1410に、10.0.0.0/8 via 169.0.0.3, 169.0.0.4として追加する。例えば、10.0.1.1の送信先IPアドレスを有するパケットは、ECMP原理がDRの実装によってどのように適用されるかに応じて、SR1235及び1240のいずれかに送信される。
図14において把握されるように、論理ルータのための様々な論理ルータ構成物に対するRIBは、静的経路に加えて他の経路を含むだろう。これらの経路は、様々な論理スイッチがルータ構成物に接続される、接続された経路を含む。例えば、DR1225は4つの論理スイッチ、すなわち、3つの通過論理スイッチ1215、1220及び1245と、ユーザ生成論理スイッチ1120とに接続される。これらのそれぞれに対し、(次ホップよりむしろ)出力インタフェースを有する経路がDRに追加される。従って、RIB1410は、経路1.1.0.0 output to D3 (ユーザ生成論理スイッチ用)、経路192.168.10.0/31 output to D1 and 192.168.10.2/31 output to D2(PLRとTLRの間の通過論理スイッチ用)、及び、経路169.0.0.0/28 output to P1(PLR内部の通過論理スイッチ用)を含む。いくつかの実施形態では、SRは、PLR内部の通過論理スイッチのための接続された経路(例えば、同一のRIB1415のための169.0.0.0/28 output to P2)を有する。しかしながら、SRは、この例内としてのいくつかの実施形態では、外部L2接続性のための接続された経路を有しなくてよい。しかしながら、他の実施形態では、管理者によってL2接続性が構成された場合、SRはそのような接続された経路(例えば、第1のSR1230のRIB1415用の1.1.3.0/24 output to U1、及び他の2つのSR1235及び1240のRIB1420及び1425用の1.1.4.0/24 output to U2/U3)を含む。更に、各アップリンクインタフェースIP(1.1.3.2、1.1.4.2及び1.1.4.21)に対し、いくつかの実施形態は、次ホップが対応するSRのサウスバウンドインタフェースである、これらの特定の「/32」IPアドレスのための経路(すなわち1.1.3.2/32 via 169.0.0.2、1.1.4.2/32 via 169.0.0.3、及び 1.1.4.21/32 via 169.0.0.4)をDRへ自動的に挿入する。いくつかの実施形態はまた、図示するように、再び次ホップが対応するSRのサウスバウンドインタフェースである、アップリンクがDRのRIBに接続するサブネットのための経路(すなわち1.1.3.0/24 via 169.0.0.2及び1.1.4.0/24 via 169.0.0.3, 169.0.0.4)を挿入する。
加えて、PLRの論理ルータ構成物は、他の論理ルータ(例えばTLR)の接続性に基づいて管理プレーンによって動的に生成された経路を含んでよい。図16は、TLRがPLRに取り付けられる場合に、PLRのルーティング構成物のためのRIBを生成するいくつかの実施形態の処理1600を概念的に示す。論理ルータ構成物情報は管理プレーンによって既知である(例えばネットワークコントローラの組)ため、いくつかの実施形態は、論理ネットワーク内で経路を交換するBGP又は同様の動的なルーティングプロトコルを実行しないようにすることができる(上述したように、BGP/OSPFは外部物理ネットワークに経路をアドバタイズするために用いられてよい)。
図示するように、処理1600は、PLRのサウスバウンドインタフェースへのTLRノースバウンドインタフェースの接続を(1605において)受信することによって開始する。いくつかの実施形態では、TLRの所有者(データセンタのテナント)が管理プレーンAPIを介してこれを構成データとして入力する。テナントはそのような接続を特定するPLRのためのインタフェース情報を必要としなくてよい。代わりに、テナントはTLRに接続するようリクエストし、管理プレーンは自動的に、(例えば利用可能なサブネットのプールから)これらの間の通過論理スイッチを、TLRノースバウンドインタフェース及びPLRサウスバウンドインタフェースとともに生成する(これらのインタフェースが通過論理スイッチに取り付けられたサブネット内のIPアドレスであることを確実にする)。図11の論理ネットワーク1100では、ユーザがTLR1110と1115とをPLR1105に取り付けた(場合により別々のアクションとして)ところである。
そして処理は、取り付けられたTLRからの任意の経路を(1610において)識別する。TLRは、その論理スイッチのそれぞれのために接続された経路を有する。加えて、TLRはまた、ある実施形態において、ユーザによって構成された静的経路を含んでよい。しかしながら、他の実施形態では、TLRユーザが静的経路を構成しなくてもよく、或いは、静的経路が動的ルーティングを介してPLRへ伝達されなくてもよい(例えば、異なるテナントが同一のアドレスに対する異なる経路を構成しなくてもよいため)。加えて、いくつかの実施形態では、テナントは、これらの論理スイッチサブネットがアドバタイズされるべきか(すなわち、これらのサブネットがTLRの外部と(他のTLRのサウスのマシン又は論理ネットワークの外部のマシンのいずれかと)通信するかどうか)を特定してよい。図14の例では、第1のTLR1110は、そのサブネット1.1.5.0/24及び1.1.6.0/24の両方にアドバタイズする一方で、第2のTLR1115は、その2つのサブネットのうちの1つの1.1.7.0/24にのみアドバタイズする(1.1.8.0/24にはアドバタイズしない)。
その後処理1600は、DRとSRへのこれらの経路を伝達する。図示するように、処理は、TLRのノースバウンドインタフェースを次ホップとして有する(PLRの)DRに識別された経路を(1615において)追加する。この例では、TLR1110及び1115は完全に分散しており、そのため、これらのノースバウンドインタフェースはTLRのDR1205及び1210に属す。従って、PLRのDR1225のRIB1410は、192.168.10.1(DR1215のノースバウンドインタフェース)の次ホップアドレスを有する1.1.5.0及び1.1.6.0のための経路、及び、192.168.10.3(DR1210のノースバウンドインタフェース)の次ホップアドレスを有する1.1.7.0のための経路を含む。TLRがステートフルサービスを含む場合、そのときはSRのノースバウンドインタフェースは(アクティブースタンバイモードにおいて)同一のIPアドレスを有し、これはPLRのDRにおける経路のために用いられる次ホップIPアドレスになる。
処理はまた、次ホップIPアドレスとしての(PLRの)DRのノースバウンドインタフェースを用いて、識別された経路を(PLRの)各SRに(1620において)追加する。その後処理は終了する。例では、RIB1415−1425のそれぞれは、全てが169.0.0.1(すなわちP1のアドレス)の次ホップIPアドレスを有する、1.1.5.0、1.1.6.0及び1.1.7.0のための経路を含む。従って、これらのサブネットのそれぞれに対し、サブネット内の送信先アドレスを有する外部ネットワークから受信されるパケットは、受信するSRからDRへ、続いてDRから適切なTLRへ送信される。
図17は、上述したように、新たなインタフェースがPLRに取り付けられる場合に、PLRのルーティング構成物のRIBのための経路を生成するいくつかの実施形態の処理1700を概念的に示す。具体的に、この処理は(TLR接続のために処理1600によって追加される動的な経路とは対照的に)接続された経路と他のPLRの内部の経路を参照する。この新たなインタフェースは、新たなアップリンク又はダウンリンク(すなわち論理スイッチ又はTLRへの接続)でありうる。
図示するように、処理はPLRのための新たなインタフェースを(1705において)受信することによって開始する。いくつかの実施形態では、PLRの所有者が管理プレーンAPIを介してこれを構成データとして入力する。加えて、いくつかの実施形態は、新たなTLRがPLRに接続するようにリクエストした場合、ダウンリンクを自動的に生成する。処理はそして、インタフェースが外部ネットワークに向いているか(すなわち、インタフェースが(外部ネットワークに向いている)アップリンクであるか、又は、(TLR接続のための論理スイッチ又は通過論理スイッチに向いている)ダウンリンクであるか)を(1710において)判定する。
インタフェースがダウンリンクである場合、処理は、(勿論、DRへのインタフェース自身のために接続された経路に加えて)DRのノース向きインタフェースとして次ホップを有する、インタフェースが接続するサブネットのための経路を、PLRの各SRに(1715において)追加する。従って、図14の例では、SRのRIB1415−1425のそれぞれが、169.0.0.1(DR1225のノース向きインタフェース)の次ホップを有する1.1.0.0/24(論理スイッチLS1のサブネット)のための経路を含む。
加えて、ダウンリンクの生成が、以前に無効にされた静的経路を管理プレーンが利用可能にできるようにしてもよい。いくつかの実施形態では、存在しないインタフェースを指す静的経路が論理ルータのために格納されるが、無効化される(従って、様々な論理ルータ構成物のRIBに経路として追加されない)。インタフェースがその後生成された場合、処理1700は、そのような現在無効化された経路のそれぞれに対し、(i)経路をDRのRIBに、そして(ii)DRのノース向きインタフェースとしての次ホップを有する対応する経路を各SRのRIBに、(1720において)追加する。
一方、新たなインタフェースがアップリンク(外部ネットワークを向いている)である場合、処理1700は、上述したように、アップリンクに対して必要であれば新たなSRを(1725において)生成する。処理はまた、SRのサウス向きインタフェースとして次ホップを有する、新たなインタフェースが接続するサブネットのための経路をDRに(1730において)追加する。処理はまた、SRのサウス向きインタフェースとしても次ホップを有する、新たなアップリンクインタフェースのIPアドレスのための経路をDRに(1735において)追加する。例えば、図14では、DRがインタフェース1.1.3.2 via 169.0.0.2、1.1.4.2 via 169.0.0.3、 及び1.1.4.21 via 169.0.0.4のそれぞれのための経路を有する。加えて、いくつかの実施形態では、DRは、これらのインタフェースのそれぞれが接続するサブネットのための同様の経路を有するだろう。
最後に、新たなインタフェース上の次ホップを有する経路のそれぞれ(例えば、外部ルータを指す静的経路)に対し、処理は、(1740において)新たなインタフェースのための経路をSRに追加し、DR上の経路を更新する。例えば、DR上のデフォルト経路は、(他のSRを指すデフォルト経路と等しい優先順を有する)新たなSRのサウス向きインタフェースをも指すように生成され、そして、新たなインタフェースを介してアクセスし得る外部物理ルータインタフェースを指す外部ネットワークのための任意の静的経路は、(例えば処理1500に従って)SR及びSRに追加された、対応する経路を有するであろう。
いくつかの状況では、構成データが変化し、結果として管理プレーンが様々な論理ルータ構成物のRIBを修正してもよい。例えば、(例えば通過論理スイッチのための利用可能なサブネットのプールが修正されたために)TLRアップリンクのIPアドレスが変化した場合、このときは、管理プレーンは、このサブネット内の次ホップを有するDR経路を修正しなければならない。いくつかの実施形態では、これらは、TLRからアドバタイズされたサブネットに基づく任意の経路(例えば、上記例では、経路1.1.5.0 via 192.168.10.1)であるとともに、新たに修正されたインタフェースのために接続された経路(例えば、上記例では、経路192.168.10.0/31 output to D1)である。同様に、論理ルータのための内部の通過論理スイッチが変化する場合、そのときは、当該ネットワークのための様々の論理ルータ構成物上の接続された経路が変更され、そして、(ノース向きDRインタフェース及びサウス向きSRインタフェースがこの変更の結果として変更された場合)DRとSRとの間の内部経路が修正されるだろう。
加えて、管理者は、PLRポートのIPアドレスを変更してもよい。この修正されたポートが(例えば、例における論理スイッチ1120のような、論理スイッチに接続する)ダウンリンクである場合、その論理スイッチのための接続された経路は自動的に修正されるだろう。しかしながら、ネットワーク内の次ホップを有する任意の静的経路が存在する場合、いくつかの実施形態は構成の修正を許可しない。他の実施形態は、構成の変更を許可しながら代わりに当該静的経路を無効化する。
修正されたPLRポートがアップリンクである場合、そのときは、(接続された経路が外部のL2接続性のために用いられない限り、及び、この接続性が変化しない限り)RIB内の自動生成された経路はいずれも修正される必要はない。しかしながら、外部ルータにアドバタイズされる経路の次ホップIPアドレスが変更されなければならないため、外部ネットワークとのBGPピアリング(BGP peering)は修正される必要があってもよい。更に、PLR上で構成された静的経路は、SRの新たな組に送信され得る。例えば、第1のSR1230がアドレス1.1.4.4を有するように修正され、第2及び第3の外部ルータ(アドレス1.1.4.1及び1.1.4.11)に接続された場合、静的経路10.0.0.0/8 via 1.1.4.1はまた第1のSR1230のためのRIB1415に追加される一方で、静的経路172.16.0.0/16 via 1.1.3.1について問題となり得る(この変化した構成は許可されず、また、この静的経路は無効化されない)。
動作中には、管理者はアップリンク(及び対応するSR)を追加又は削除し得る。アップリンクを追加した場合、管理プレーンは、上記方法(例えば、DRにデフォルト等価コスト経路を追加する、及び、PLRに接続される論理スイッチ、又は、経路アドバタイズメントのために選択された接続されたTLRからの論理スイッチに基づく任意の経路を追加すること)で説明されたように、DR及び新たなSRに経路を追加する。更に、いくつかの実施形態では、PLRのために構成された静的経路は、アップリンクのL3接続性に応じて、(上述した同一の方法において)新たなSRのRIBに追加される必要があってもよい。アップリンク(及びSR)が削除される場合、いくつかの実施形態では、管理プレーンがまず、インタフェースベースの経路(interface-based routes)(例えば、出力インタフェースとしてアップリンクを特定する経路)が、SR及びアップリンクの削除によって影響を受けるPLRのために構成されていないことを確認する。更に、SRにパケットを送信するための等価コストデフォルト経路がDRから削除され、内部通過論理スイッチ上のポートが削除され、結果としてSRを指すDRの経路である任意の静的経路もまたDRから削除される。
IV.電子システム
上述の多くの特徴及び適用例は、コンピュータで読み出し可能な記録媒体(コンピュータで読み出し可能な媒体としても参照される)上に記録された命令の組として特定されるソフトウェア処理として実施され得る。これらのプログラムの命令が1つ以上の処理ユニットによって実行される場合(例えば、1つ以上のプロセッサ、プロセッサのコア、又は他の処理ユニット)、これらのプログラムの命令は、命令に示されているアクションを(複数の)処理ユニットに実行させる。コンピュータで読み出し可能なメディアの例は、これに限定されないが、CD−ROM、フラッシュドライブ、RAMチップ、ハードドライブ、EPROM等を含む。コンピュータで読み出し可能なメディアは、キャリア波及び、無線又は有線接続を通過する電子信号を含まない。
本明細書では、「ソフトウェア」の語は、読出専用メモリにあるファームウェア、又は磁気記録に格納されたアプリケーションを含み、プロセッサによる処理のためにメモリに読み込むことができる。また、いくつかの実施形態では、複数のソフトウェア発明は、個別のソフトウェア発明を維持する一方で、より大きなプログラムのサブ部分として実施されてもよい。いくつかの実施形態では、複数のソフトウェア発明はまた、個別のプログラムとして実施されてもよい。最後に、ここで説明されるソフトウェア発明をともに実施する個別のプログラムの任意の組み合わせは、発明の範囲内である。いくつかの実施形態では、ソフトウェアプログラムが、1以上の電子システムを動作させるためにインストールされる場合、1以上の特定の機械的実施を定義し、ソフトウェアプログラムの動作を実行する。
図18は、本発明のいくつかの実施形態が実施される電子システム1800を概念的に示す。電子システム1800は、上述した任意のコントロール、仮想化、又はオペレーティングシステムアプリケーションを実行するために用いることができる。電子システム1800は、コンピュータ(例えば、デスクトップコンピュータ、パーソナルコンピュータ、タブレットコンピュータ、サーバコンピュータ、メインフレーム、ブレードコンピュータ等)、電話、PDA、又は任意の他の種類の電子デバイスであり得る。そのような電子システムは、様々な種別のコンピュータで読み出し可能なメディア、及び様々な他の種別のコンピュータで読み出し可能なメディアに対するインタフェースを含む。電子システム1800は、バス1805、処理ユニット1810、システムメモリ1825、読出専用メモリ1830、永続的ストレージデバイス1835、入力デバイス1840、及び出力デバイス1845を含む。
バス1805は、電子システム1800の多くの内部デバイスを通信可能に接続する、全てのシステムバス、周辺バス、及びチップセットバスを集約的に表す。例えば、バス1805は、処理ユニット1810を、読出専用メモリ1830、システムメモリ1825、及び永続的ストレージデバイス1835に通信可能に接続する。
処理ユニット1810は、本発明の処理を実行するために、これらの様々なメモリユニットから実行する命令及び処理するデータを検索する。処理ユニットは、異なる実施形態において単一のプロセッサ又はマルチコアプロセッサであり得る。
読出専用メモリ(ROM)1830は、処理ユニット1810及び電子システムの他のモジュールによって必要とされる静的データ及び命令を記録する。永続的ストレージデバイス1835は、一方で、読出・書込メモリデバイスである。このデバイスは、電子システム1800がオフの場合であっても命令及びデータを記録する不揮発性メモリユニットである。本発明のいくつかの実施形態は、(磁気又は光学ディスク、及び対応するディスクドライブなどの)マスストレージデバイスを永続的ストレージデバイス1835として用いる。
他の実施形態は、(フロッピーディスク、フラッシュドライブ等のような)取り外し可能なストレージデバイスを永続的ストレージデバイスとして用いる。永続的ストレージデバイス1835のように、システムメモリ1825は、読出・書込メモリデバイスである。しかしながら、ストレージデバイス1835とは異なり、システムメモリは、ランダムアクセスメモリのような揮発性の読出・書込メモリである。システムメモリは、プロセッサがランタイムにおいて必要とする、いくつかの又は全ての命令及びデータを格納し得る。いくつかの実施形態では、本発明の処理は、システムメモリ1825、永続的ストレージデバイス1835、及び/又は読出専用メモリ1830に記録される。処理ユニット1810は、いくつかの実施形態の処理を実行するために、これらの様々なメモリユニットから実行する命令及び処理するデータを検索する。
バス1805はまた、入力デバイス1840と出力デバイス1845に接続する。入力デバイスは、ユーザが情報を通信し、電子システムへのコマンドを選択できるようにする。入力デバイス1840は、アルファベット表記のキーボードとポインティングデバイス(「カーソル制御デバイス」ともいわれる)とを含む。出力デバイス1845は、電子システムによって生成された画像を表示する。出力デバイスはプリンタ、真空管(CRT)又は液晶ディスプレイ(LCD)などの表示デバイスを含む。いくつかの実施形態は、入力及び出力デバイスの両方として機能するタッチスクリーンのようなデバイスを含む。
最後に、図18に示すように、バス1805はまた、電子システム1800をネットワークアダプタ(不図示)を介してネットワーク1865に接続する。このようにして、コンピュータは、(ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、イントラネット、インターネットなどのネットワークのネットワーク、などのコンピュータのネットワークの一部になることができる。電子システム1800の任意又は全ての構成要素は、本発明に関連して用いられ得る。
いくつかの実施形態は、マイクロプロセッサ、コンピュータプログラムの命令を機械で読み出し可能な又はコンピュータで読み出し可能な媒体(或いはコンピュータで読み出し可能なストレージメディア、機械で読み出し可能な媒体、又は機械で読み出し可能なストレージメディアとして参照される)に格納した、ストレージ及びメモリのような電子構成要素を含む。コンピュータで読み出し可能な媒体のいくつかの例は、RAM、ROM、読出専用コンパクトディスク(CD−ROM)、記録可能コンパクトディスク(CD−R)、再書込可能コンパクトディスク(CD−RW)、読出専用デジタル多用途ディスク(例えばDVD−ROM、デュアルレイヤDVD−ROM)、様々な記録可能/再書込可能DVD(DVD−RAM、DVD−RW、DVD+RW等)、フラッシュメモリ(例えばSDカード、ミニSDカード、マイクロSDカード等)、磁気及び/又はソリッドステートハードドライブ、読出専用及び記録可能Blu−Ray(登録商標)ディスク、超高密度光ディスク、任意の他の光又は磁気メディア、及びフロッピーディスクを含む。コンピュータで読み出し可能な媒体は、少なくとも1つの処理ユニットによって実行可能であり、様々な動作を実行するための命令の組を含む、コンピュータプログラムを記録する。コンピュータプログラム又はコンピュータコードの例は、コンパイラによって生成されたような機械コードと、コンピュータ、電子構成要素、又はインタプリタを用いるマイクロプロセッサによって実行される、より高レベルなコードを含んだファイルとを含む。
上述の説明は、ソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサを主に参照したが、いくつかの実施形態は、特定用途向け集積回路(ASIC)又はフィールドプログラマブルゲートアレイ(FPGA)のような、1つ以上の集積回路によって実行される。ある実施形態では、そのような集積回路は回路自体に格納された命令を実行する。
本明細書において使用されるように、「コンピュータ」、「サーバ」、「プロセッサ」及び「メモリ」の語は、全て電子的又は他の技術的デバイスを参照する。これらの語は、人及び人のグループを含まない。本明細書の目的のため、表示及び表示するの語は電子デバイス上に表示することを意味する。本明細書において使用されるように、「コンピュータで読み出し可能な媒体」、「コンピュータで読み出し可能なメディア」及び「機械で読み出し可能な媒体」の語は、全体として、コンピュータによって読み出し可能な形式の情報を記録する、有体物、物理的なオブジェクトに制限される。これらの語は、任意の無線信号、有線でダウンロードされた信号、及び任意の他のその場限りの信号を含まない。
本明細書は、終始、仮想マシン(VM)を含む、計算環境及びネットワーク環境を参照している。しかしながら、仮想マシンは単なるデータ計算ノード(DCN)又はデータ計算エンドノードの一例であり、アドレス可能なノードとしても参照される。DCNは、非仮想化物理ホスト、仮想マシン、ハイパーバイザや別のオペレーティングシステムを必要とすること無くホストオペレーティングシステム上で動作するコンテナ、及びハイパーバイザカーネルネットワークインタフェースモジュールを含み得る。
いくつかの実施形態では、VMは、仮想化ソフトウェア(例えばハイパーバイザ、仮想マシンモニタ等)によって仮想化されたホストのリソースを用いて、ホスト上の自身のゲストオペレーティングシステムとともに動作する。テナント(すなわちVMのオーナー)は、どのアプリケーションをゲストオペレーティングシステム上で動作させるか選択することができる。一方、いくつかのコンテナは、ハイパーバイザ又は別のゲストオペレーティングシステムを必要とせずに、ホストオペレーティングシステム上で動作する構成物である。いくつかの実施形態では、ホストオペレーティングシステムはネームスペースを使用して、コンテナを互いに個別化し、従って、異なるコンテナ内で動作するアプリケーションの異なるグループの、オペレーティングシステムレベルのセグメンテーションを提供する。このセグメンテーションは、システムハードウェアを仮想化するハイパーバイザ-仮想化環境で提供されるVMセグメンテーションと類似し、従って、異なるコンテナ内で動作するアプリケーションの異なるグループを個別化する、仮想化の形式としてみることができる。このようなコンテナはVMより軽量である。
いくつかの実施形態では、ハイパーバイザ・カーネル・ネットワーク・インタフェース・モジュールは、ハイパーバイザ・カーネル・ネットワーク・インタフェースを有するネットワークスタックと受信/送信スレッドを含む、非VM・DCNである。ハイパーバイザ・カーネル・ネットワーク・インタフェース・モジュールの一例は、VMware社のESXi(登録商標)ハイパーバイザの一部であるvmknicモジュールである。
本明細書はVMを参照したが、所与の例は、物理ホスト、VM、非VMコンテナ、及びハイパーバイザ・カーネル・ネットワーク・インタフェース・モジュールを含む、任意の種別のDCNであってよい。事実、ネットワークの例は、いくつかの実施形態では異なる種別のDCNの組み合わせを含んでよい。
本発明は多数の特定の詳細を参照して説明されたが、当業者は、本発明が発明の思想から離れることのない他の特定の形式で実施可能であることを認識する。加えて、多数の図(図9、10、13、15、16及び17を含む)は処理を概念的に示すものである。これらの処理の特定の動作は、図示及び説明された正確な順序で実行されないかもしれない。特定の動作は、1つの連続する動作の流れで実行されないかもしれず、異なる特定の動作が異なる実施形態において実行され得る。更に、処理はいくつかの副処理(sub-process)を用いて、又は大きなマクロ処理の部分として実施され得る。従って、当業者は、発明が上述の詳細に限定されず、むしろ添付の請求項の範囲によって定義されることを理解する。

Claims (41)

  1. 論理ネットワークにおける論理ルータを実施する方法であって、前記方法は、
    前記論理ルータのための静的経路の構成を受信することであって、前記論理ルータは、別々のルーティングテーブルを有する複数のルーティング構成要素を含む、受信することと、
    どの前記ルーティング構成要素が、前記静的経路の構成を実施するための対応するルーティングテーブルへの経路の追加を要するかを識別することと、
    前記識別されたルーティング構成要素の前記対応する別々のルーティングテーブルに前記経路を追加することと、を含む方法。
  2. 請求項1に記載の方法であって、前記静的経路の前記構成は、プレフィックスと次ホップアドレスとを含む、方法。
  3. 請求項2に記載の方法であって、前記静的経路の前記構成は、更に出力インタフェースを含む、方法。
  4. 請求項1に記載の方法であって、前記論理ルータの前記複数のルーティング構成要素は、(i)他の論理フォワーディング要素とのインタフェースを有する分散化ルーティング構成要素と、(ii)外部物理ネットワークとのインタフェースを有する複数の集中化ルーティング構成要素とを含む、方法。
  5. 請求項4に記載の方法であって、前記静的経路は、前記論理ネットワークにおけるアドレスである次ホップアドレスを含み、前記論理ルータの前記ルーティング構成要素のそれぞれは、対応するルーティングテーブルへの経路の追加を要するものとして識別される、方法。
  6. 請求項5に記載の方法であって、前記識別されたルーティング構成要素のための前記別々のルーティングテーブルに経路を追加することは、
    前記分散化ルーティング構成要素に、前記静的経路を構成済として追加することと、
    前記構成済の静的経路と同一のプレフィックスのための経路を、前記集中化ルーティング構成要素のそれぞれに追加することであって、前記経路は、前記集中化ルーティング構成要素が接続する前記分散化ルーティング構成要素のインタフェースの次ホップアドレスを含む、追加することとを含む、方法。
  7. 請求項4に記載の方法であって、前記静的経路は、前記外部物理ネットワークのアドレスである次ホップアドレスを含み、且つ、出力インタフェースは前記静的経路のために特定されておらず、どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別することは、前記次ホップアドレスへの接続性を有する集中化構成要素を識別することを含む、方法。
  8. 請求項7に記載の方法であって、前記識別されたルーティング構成要素に対し、経路を前記対応するルーティングテーブルに追加することは、前記次ホップアドレスへの接続性を有する前記識別された集中化ルーティング構成要素のそれぞれに、前記静的経路を構成済として追加することを含む、方法。
  9. 請求項8に記載の方法であって、
    どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別することは、更に、前記構成済の静的経路がデフォルト経路であるかを判定することを含み、
    前記識別されたルーティング構成要素の前記対応するルーティングテーブルに経路を追加することは、前記経路がデフォルト経路でない場合にのみ、前記分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することを含み、各追加される経路に対する前記次ホップアドレスは、前記構成済みの静的経路が追加された前記集中化ルーティング構成要素のインタフェースのアドレスである、方法。
  10. 請求項1に記載の方法であって、前記方法は、前記論理ルータを管理する集中化ネットワークコントローラによって実行される、方法。
  11. 請求項10に記載の方法は更に、前記追加された経路を有する前記ルーティングテーブルを、前記複数のルーティング構成要素を実施する物理マシンを動作させるローカルネットワークコントローラに分配することを含む、方法。
  12. 請求項1に記載の方法であって、特定のルーティングテーブルに経路を追加することは、前記特定のルーティングテーブルのエントリを追加又は修正することを含む、方法。
  13. 少なくとも1つの処理ユニットで実行されると論理ネットワークにおける論理ルータを実施するプログラム、を格納する機械可読媒体であって、前記プログラムは、
    前記論理ルータのための静的経路の構成を受信することであって、前記論理ルータは、別々のルーティングテーブルを有する複数のルーティング構成要素を含む、受信することと、
    どの前記ルーティング構成要素が、前記静的経路の構成を実施するための対応するルーティングテーブルへの経路の追加を要するかを識別することと、
    前記識別されたルーティング構成要素の前記対応する別々のルーティングテーブルに前記経路を追加することと、の命令の組を含む、機械可読媒体。
  14. 請求項13に記載の機械可読媒体であって、前記静的経路の前記構成は、プレフィックスと次ホップアドレスとを含む、機械可読媒体。
  15. 請求項2に記載の機械可読媒体であって、前記静的経路の前記構成は、更に出力インタフェースを含む、機械可読媒体。
  16. 請求項13に記載の機械可読媒体であって、前記論理ルータの前記複数のルーティング構成要素は、(i)他の論理フォワーディング要素とのインタフェースを有する分散化ルーティング構成要素と、(ii)外部物理ネットワークとのインタフェースを有する複数の集中化ルーティング構成要素とを含む、機械可読媒体。
  17. 請求項16に記載の機械可読媒体であって、(i)前記静的経路は、前記論理ネットワークにおけるアドレスである次ホップアドレスを含み、(ii)前記論理ルータの前記ルーティング構成要素のそれぞれは、対応するルーティングテーブルへの経路の追加を要するものとして識別され、(iii)前記識別されたルーティング構成要素のための前記別々のルーティングテーブルに経路を追加することの前記命令の組は、
    前記分散化ルーティング構成要素に、前記静的経路を構成済として追加することと、
    前記構成済の静的経路と同一のプレフィックスのための経路を、前記集中化ルーティング構成要素のそれぞれに追加することであって、前記経路は、前記集中化ルーティング構成要素が接続する前記分散化ルーティング構成要素のインタフェースの次ホップアドレスを含む、追加することの命令の組を含む、機械可読媒体。
  18. 請求項16に記載の機械可読媒体であって、(i)前記静的経路は、前記外部物理ネットワークのアドレスである次ホップアドレスを含み、且つ、出力インタフェースは前記静的経路のために特定されておらず、(ii)どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別する命令の組は、前記次ホップアドレスへの接続性を有する集中化構成要素を識別することの命令の組を含み、(iii)前記識別されたルーティング構成要素に対し、経路を前記対応するルーティングテーブルに追加する前記命令の組は、前記次ホップアドレスへの接続性を有する前記識別されたルーティング構成要素のそれぞれに構成済みとして前記静的経路を追加することの命令の組を含む、機械可読媒体。
  19. 請求項18に記載の機械可読媒体であって、
    どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別することの前記命令の組は、更に、前記構成済の静的経路がデフォルト経路であるかを判定することの命令の組を含み、
    前記識別されたルーティング構成要素の前記対応するルーティングテーブルに経路を追加することの前記命令の組は、前記経路がデフォルト経路でない場合にのみ、前記分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することの命令の組を含み、各追加される経路に対する前記次ホップアドレスは、前記構成済みの静的経路が追加された前記集中化ルーティング構成要素のインタフェースのアドレスである、機械可読媒体。
  20. 請求項13に記載の機械可読媒体であって、前記プログラムは論理ルータを管理する集中化ネットワークコントローラであり、前記プログラムは、更に、前記追加された経路を有する前記ルーティングテーブルを、前記複数のルーティング構成要素を実施する物理マシンを動作させるローカルネットワークコントローラに分配することの命令の組を含む、機械可読媒体。
  21. 請求項13に記載の機械可読媒体であって、特定のルーティングテーブルに経路を追加することの命令の組は、前記特定のルーティングテーブルのエントリを追加又は修正することの命令の組を含む、機械可読媒体。
  22. 論理ネットワークにおける論理ルータを実施する方法であって、前記方法は、
    第1の論理ルータから第2の論理ルータへ接続する構成データを受信することであって、前記第2の論理ルータは、別々のルーティングテーブルを有する複数の論理ルーティング構成要素を含む、受信することと、
    前記第1の論理ルータのために構成された1つ以上の経路のそれぞれに対し、
    前記第2の論理ルータの分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することであって、前記追加された経路は、前記第1の論理ルータのインタフェースの次ホップアドレスを有する、追加することと、
    前記第2の論理ルータの1つ以上の集中化ルーティング構成要素のそれぞれの前記ルーティングテーブルに、前記追加された経路の前記次ホップアドレスが、前記第2の論理ルータの内部の前記分散化ルーティング構成要素のインタフェースのアドレスである、経路を追加すること、とを含む、方法。
  23. 請求項22に記載の方法であって、前記第1の論理ルータが、任意の外部物理ネットワークと接続しないテナント論理ルータであり、前記第2の論理ルータが、外部物理ネットワークと接続するプロバイダ論理ルータである、方法。
  24. 請求項22に記載の方法であって、前記構成データは、前記第1の論理ルータの所有者からのアプリケーションプログラミングインタフェースを介したリクエストを含む、方法。
  25. 請求項22に記載の方法であって、前記第1の論理ルータは、1つの分散化ルーティング構成要素のみを含み、集中化ルーティング構成要素を含まない、方法。
  26. 請求項25に記載の方法であって、前記第1の論理ルータの前記インタフェースは、前記第1の論理ルータの前記分散化ルーティング構成要素のインタフェースを含む、方法。
  27. 請求項22に記載の方法であって、前記第1の論理ルータはまた、1つの分散化ルーティング構成要素と、アクティブな集中化ルーティング構成要素と、スタンバイの集中化ルーティング構成要素とを含む、方法。
  28. 請求項27に記載の方法であって、前記第1の論理ルータの前記インタフェースは、前記アクティブな集中化ルーティング構成要素のインタフェースを含む、方法。
  29. 請求項22に記載の方法であって、前記第1の論理ルータの所有者が、前記第1の論理ルータの外にアドバタイズされるように前記経路を特定する場合、前記第2の論理ルータの前記構成要素の前記ルーティングテーブルにのみ経路が追加される、方法。
  30. 請求項22に記載の方法であって、前記方法は、前記第2の論理ルータを管理する集中化ネットワークコントローラによって実行される、方法。
  31. 請求項30に記載の方法は更に、前記追加された経路を有する前記ルーティングテーブルを、前記複数のルーティング構成要素を実施する物理マシンを動作させるローカルネットワークコントローラに分配することを含む、方法。
  32. 請求項22に記載の方法であって、前記第1の論理ルータのために構成された前記経路は、前記第1の論理ルータへの論理スイッチの接続に基づいて前記第1の論理ルータのために自動的に生成された、接続された経路を含む、方法。
  33. 請求項22に記載の方法は更に、動的ルーティングプロトコルを介して外部物理ネットワークへ経路をアドバタイズするために、前記集中化ルーティング構成要素を特定することを含む、方法。
  34. 少なくとも1つの処理ユニットで実行されると論理ネットワークにおける論理ルータを実施するプログラム、を格納する機械可読媒体であって、前記プログラムは、
    第1の論理ルータから第2の論理ルータへ接続する構成データを受信することであって、前記第2の論理ルータは、別々のルーティングテーブルを有する複数の論理ルーティング構成要素を含む、受信することと、
    前記第1の論理ルータのために構成された1つ以上の経路のそれぞれに対し、
    前記第2の論理ルータの分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することであって、前記追加された経路は、前記第1の論理ルータのインタフェースの次ホップアドレスを有する、追加することと、
    前記第2の論理ルータの1つ以上の集中化ルーティング構成要素のそれぞれの前記ルーティングテーブルに、前記追加された経路の前記次ホップアドレスが、前記第2の論理ルータの内部の前記分散化ルーティング構成要素のインタフェースのアドレスである、経路を追加することの命令の組を含む、機械可読媒体。
  35. 請求項34に記載の機械可読媒体であって、前記第1の論理ルータが、任意の外部物理ネットワークと接続しないテナント論理ルータであり、前記第2の論理ルータが、外部物理ネットワークと接続するプロバイダ論理ルータである、機械可読媒体。
  36. 請求項34に記載の機械可読媒体であって、前記第1の論理ルータは、1つの分散化ルーティング構成要素のみを含み、集中化ルーティング構成要素を含まない、機械可読媒体。
  37. 請求項36に記載の機械可読媒体であって、前記第1の論理ルータの前記インタフェースは、前記第1の論理ルータの前記分散化ルーティング構成要素のインタフェースを含む、機械可読媒体。
  38. 請求項34に記載の機械可読媒体であって、前記第1の論理ルータはまた、1つの分散化ルーティング構成要素と、アクティブな集中化ルーティング構成要素と、スタンバイの集中化ルーティング構成要素とを含み、前記第1の論理ルータの前記インタフェースは、前記アクティブな集中化ルーティング構成要素のインタフェースを含む、機械可読媒体。
  39. 請求項34に記載の機械可読媒体であって、前記第1の論理ルータの所有者が、前記第1の論理ルータの外にアドバタイズされるように前記経路を特定する場合、前記第2の論理ルータの前記構成要素の前記ルーティングテーブルにのみ経路が追加される、機械可読媒体。
  40. 請求項34に記載の機械可読媒体であって、前記第1の論理ルータのために構成された前記経路は、前記第1の論理ルータへの論理スイッチの接続に基づいて前記第1の論理ルータのために自動的に生成された、接続された経路を含む、機械可読媒体。
  41. 請求項34に記載の機械可読媒体であって、前記プログラムが更に、動的ルーティングプロトコルを介して外部物理ネットワークへ経路をアドバタイズするために、前記集中化ルーティング構成要素を特定することの命令を含む、機械可読媒体。
JP2020104686A 2015-08-11 2020-06-17 論理ルータのためのルート設定 Active JP7033287B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
IN4183CH2015 2015-08-11
IN4183/CHE/2015 2015-08-11
US14/871,977 US10129142B2 (en) 2015-08-11 2015-09-30 Route configuration for logical router
US14/871,968 2015-09-30
US14/871,968 US10230629B2 (en) 2015-08-11 2015-09-30 Static route configuration for logical router
US14/871,977 2015-09-30

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2018506898A Division JP6720292B2 (ja) 2015-08-11 2016-04-01 論理ルータのためのルート設定

Publications (2)

Publication Number Publication Date
JP2020167715A true JP2020167715A (ja) 2020-10-08
JP7033287B2 JP7033287B2 (ja) 2022-03-10

Family

ID=57996234

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2018506898A Active JP6720292B2 (ja) 2015-08-11 2016-04-01 論理ルータのためのルート設定
JP2020104686A Active JP7033287B2 (ja) 2015-08-11 2020-06-17 論理ルータのためのルート設定

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2018506898A Active JP6720292B2 (ja) 2015-08-11 2016-04-01 論理ルータのためのルート設定

Country Status (6)

Country Link
US (4) US10230629B2 (ja)
EP (1) EP3335389B1 (ja)
JP (2) JP6720292B2 (ja)
CN (2) CN112437026B (ja)
AU (2) AU2016307199B2 (ja)
CA (2) CA2994810C (ja)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10348767B1 (en) * 2013-02-26 2019-07-09 Zentera Systems, Inc. Cloud over IP session layer network
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9647883B2 (en) 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
US10129180B2 (en) 2015-01-30 2018-11-13 Nicira, Inc. Transit logical switch within logical router
US9985875B1 (en) * 2015-03-31 2018-05-29 Juniper Networks, Inc. Route signalling based resilient application overlay network
US10243848B2 (en) 2015-06-27 2019-03-26 Nicira, Inc. Provisioning logical entities in a multi-datacenter environment
US10230629B2 (en) 2015-08-11 2019-03-12 Nicira, Inc. Static route configuration for logical router
US10075363B2 (en) 2015-08-31 2018-09-11 Nicira, Inc. Authorization for advertised routes among logical routers
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US10382529B2 (en) 2016-01-29 2019-08-13 Nicira, Inc. Directed graph based span computation and configuration dispatching
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
US10554549B1 (en) * 2016-08-05 2020-02-04 Cisco Technology, Inc. DCI stitching for data center overlays
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US10616347B1 (en) * 2016-10-20 2020-04-07 R&D Industries, Inc. Devices, systems and methods for internet and failover connectivity and monitoring
US10277535B2 (en) * 2017-03-31 2019-04-30 Hewlett Packard Enterprise Development Lp Network switch systems including logical switches
US10757004B2 (en) 2017-04-12 2020-08-25 Nicira, Inc. Routing domain identifier assignment in logical network environments
US10243846B2 (en) 2017-05-15 2019-03-26 Nicira, Inc. Defining routing domain for distributed packet processing
US10432513B2 (en) * 2017-07-14 2019-10-01 Nicira, Inc. Asymmetric network elements sharing an anycast address
US10623322B1 (en) * 2017-09-15 2020-04-14 Juniper Networks, Inc. Dynamic prefix list for route filtering
CN108289064B (zh) * 2018-04-23 2021-07-27 清华大学深圳研究生院 一种数据中心网中混合式负载均衡方法
CN110932876B (zh) * 2018-09-19 2022-12-02 华为技术有限公司 一种通信系统、方法及装置
CN109347742B (zh) * 2018-10-31 2021-09-21 新华三技术有限公司 一种基于pbr的多个下一跳负载分担方法及装置
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN
US10999196B2 (en) * 2019-02-25 2021-05-04 Vmware, Inc. Global replication mode for overlay runtime state migration
DE102019114309A1 (de) 2019-05-28 2020-12-03 Beckhoff Automation Gmbh Verfahren zum Routen von Telegrammen in einem Automatisierungsnetzwerk, Datenstruktur, Automatisierungsnetzwerk und Netzwerkverteiler
CN114073061A (zh) * 2019-07-05 2022-02-18 三菱电机株式会社 中继装置和网络系统
JP2021016067A (ja) * 2019-07-11 2021-02-12 富士ゼロックス株式会社 中継システム、中継装置及びプログラム
US11438238B2 (en) 2020-04-06 2022-09-06 Vmware, Inc. User interface for accessing multi-site logical network
US11394634B2 (en) 2020-04-06 2022-07-19 Vmware, Inc. Architecture for stretching logical switches between multiple datacenters
US11088902B1 (en) 2020-04-06 2021-08-10 Vmware, Inc. Synchronization of logical network state between global and local managers
US11374817B2 (en) * 2020-04-06 2022-06-28 Vmware, Inc. Determining span of logical network element
US11777793B2 (en) 2020-04-06 2023-10-03 Vmware, Inc. Location criteria for security groups
US11343227B2 (en) 2020-09-28 2022-05-24 Vmware, Inc. Application deployment in multi-site virtualization infrastructure
US11469987B2 (en) 2020-09-30 2022-10-11 Vmware, Inc. Incremental and parallel routing domain computation
US11997067B2 (en) * 2021-01-22 2024-05-28 VMware LLC Managing internet protocol (IP) address allocation to tenants in a computing environment
CN114422280B (zh) * 2021-12-31 2023-11-07 深信服科技股份有限公司 网络部署方法、装置、节点及存储介质
US11843536B1 (en) 2023-01-18 2023-12-12 Bank Of America Corporation Systems, methods, and apparatuses for determining data routing in an electronic environment
CN116595285B (zh) * 2023-07-19 2024-04-16 深圳复临科技有限公司 一种路由生成方法、装置、计算机设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110099579A (ko) * 2010-03-02 2011-09-08 연세대학교 산학협력단 패킷 전달 시스템 및 방법
JP2013157855A (ja) * 2012-01-31 2013-08-15 Nec Corp 仮想ネットワークの接続方法、仮想ネットワーク接続装置およびプログラム
WO2015015787A1 (ja) * 2013-07-30 2015-02-05 日本電気株式会社 制御装置、管理装置、制御方法、管理方法、および、プログラム
US20150063360A1 (en) * 2013-09-04 2015-03-05 Nicira, Inc. High Availability L3 Gateways for Logical Networks

Family Cites Families (340)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69132279T2 (de) 1990-09-17 2001-01-18 Cabletron Systems Inc Verfahren zur Isolierung eines Netzwerkfehlers
US5742760A (en) 1992-05-12 1998-04-21 Compaq Computer Corporation Network packet switch using shared memory for repeating and bridging packets at media rate
SE9402059D0 (sv) 1994-06-13 1994-06-13 Ellemtel Utvecklings Ab Sätt och anordning vid telekommunikation
US5751967A (en) 1994-07-25 1998-05-12 Bay Networks Group, Inc. Method and apparatus for automatically configuring a network device to support a virtual network
US5550816A (en) 1994-12-29 1996-08-27 Storage Technology Corporation Method and apparatus for virtual switching
US6418324B1 (en) 1995-06-01 2002-07-09 Padcom, Incorporated Apparatus and method for transparent wireless communication between a remote device and host system
US6035105A (en) 1996-01-02 2000-03-07 Cisco Technology, Inc. Multiple VLAN architecture system
US6108304A (en) 1996-03-08 2000-08-22 Abe; Hajime Packet switching network, packet switching equipment, and network management equipment
JPH09307587A (ja) 1996-05-09 1997-11-28 Fujitsu Ltd 交換機
US6456624B1 (en) 1997-10-29 2002-09-24 Enterasys Networks, Inc. Network address resolve blocker
JP3609256B2 (ja) 1998-05-19 2005-01-12 株式会社日立製作所 ネットワーク管理装置,ノード装置及びネットワーク管理システム
US6424659B2 (en) 1998-07-17 2002-07-23 Network Equipment Technologies, Inc. Multi-layer switching apparatus and method
US6584102B1 (en) 1998-12-21 2003-06-24 At&T Corp. Communication network apparatus and method
US6950428B1 (en) 1998-12-30 2005-09-27 Hewlett-Packard Development Company, L.P. System and method for configuring adaptive sets of links between routers in a system area network (SAN)
JP2000244567A (ja) 1999-02-23 2000-09-08 Hitachi Ltd ルータネットワーク管理方法
US6914907B1 (en) 1999-08-05 2005-07-05 Alcatel Canada Inc. Method and apparatus for providing multi-cast transmissions using a distributed router
US7020697B1 (en) 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
US6963585B1 (en) 1999-10-21 2005-11-08 International Business Machines Corporation Method and system for establishing a virtual path capability in a frame relay network
US6680934B1 (en) 1999-12-02 2004-01-20 Nortel Networks Limited System, device and method for expediting control flow in a communication system
US6977924B1 (en) 1999-12-22 2005-12-20 Alcatel Control and distribution protocol for a portable router framework
US8204082B2 (en) 2000-06-23 2012-06-19 Cloudshield Technologies, Inc. Transparent provisioning of services over a network
US20020093952A1 (en) 2000-06-30 2002-07-18 Gonda Rumi Sheryar Method for managing circuits in a multistage cross connect
US7389358B1 (en) 2000-09-13 2008-06-17 Fortinet, Inc. Distributed virtual system to support managed, network-based services
US7225270B2 (en) 2000-10-17 2007-05-29 Cisco Technology, Inc. Selective diversion and injection of communication traffic
JP4225681B2 (ja) 2000-12-06 2009-02-18 富士通株式会社 仮想閉域網構築方法及び装置並びに中継装置
WO2002061599A1 (en) 2001-01-25 2002-08-08 Crescent Networks, Inc. Extension of address resolution protocol (arp) for internet protocol (ip) virtual networks
US6999454B1 (en) 2001-02-09 2006-02-14 Nortel Networks Limited Information routing system and apparatus
US6785843B1 (en) 2001-02-23 2004-08-31 Mcrae Andrew Data plane restart without state change in a control plane of an intermediate network node
US7107356B2 (en) * 2001-03-07 2006-09-12 Lucent Technologies Inc. Translator for enabling logical partitioning of a network switch
US7069337B2 (en) 2001-03-20 2006-06-27 Mci, Inc. Policy-based synchronization of per-class resources between routers in a data network
US7209439B2 (en) 2001-03-20 2007-04-24 Mci, Llc Pool-based resource management in a data network
US7102996B1 (en) 2001-05-24 2006-09-05 F5 Networks, Inc. Method and system for scaling network traffic managers
US7483411B2 (en) 2001-06-04 2009-01-27 Nec Corporation Apparatus for public access mobility LAN and method of operation thereof
US7881208B1 (en) 2001-06-18 2011-02-01 Cisco Technology, Inc. Gateway load balancing protocol
US7126944B2 (en) 2001-07-05 2006-10-24 Intel Corporation Routing packets across multiple forwarding elements
US7630358B1 (en) 2001-07-09 2009-12-08 Sable Networks, Inc. Mechanism for implementing multiple logical routers within a single physical router
JP2003069609A (ja) 2001-08-23 2003-03-07 Fujitsu Ltd 仮想私設網サービスを提供するシステム
US7277383B2 (en) 2001-10-05 2007-10-02 Samsung Electronics Co., Ltd. Redundancy mechanization protocol for a massively parallel router
KR100450951B1 (ko) * 2001-10-05 2004-10-06 삼성전자주식회사 대용량 평행 라우터용 리던던시 기계화 프로토콜
JP3879471B2 (ja) 2001-10-10 2007-02-14 株式会社日立製作所 計算機資源割当方法
US7194553B2 (en) 2001-10-16 2007-03-20 Microsoft Corporation Resolving virtual network names
US7447197B2 (en) 2001-10-18 2008-11-04 Qlogic, Corporation System and method of providing network node services
US7200144B2 (en) 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
US7133365B2 (en) 2001-11-02 2006-11-07 Internap Network Services Corporation System and method to provide routing control of information over networks
EP1331793A1 (en) 2002-01-24 2003-07-30 Alcatel Canada Inc. Method for distributing aggregate route information
US7801155B2 (en) 2002-03-01 2010-09-21 Verizon Business Global Llc Resource allocation in virtual routers
US6941487B1 (en) 2002-03-07 2005-09-06 Riverstone Networks, Inc. Method, system, and computer program product for providing failure protection in a network node
JP3904968B2 (ja) 2002-04-19 2007-04-11 日本電信電話株式会社 Vpnシステムおよびルータ
US7197572B2 (en) 2002-05-06 2007-03-27 Qlogic, Corporation System and method for implementing logical switches in a network system
US6907039B2 (en) * 2002-07-20 2005-06-14 Redback Networks Inc. Method and apparatus for routing and forwarding between virtual routers within a single network element
JP3801129B2 (ja) 2002-10-09 2006-07-26 日本電気株式会社 ルータパラメータ設定システム及びその方法
US20040073659A1 (en) 2002-10-15 2004-04-15 Carl Rajsic Method and apparatus for managing nodes in a network
US20040098505A1 (en) 2002-11-20 2004-05-20 Clemmensen Daniel G. Forwarding system with multiple logical sub-system functionality
US7224668B1 (en) 2002-11-27 2007-05-29 Cisco Technology, Inc. Control plane security and traffic flow management
JP3689083B2 (ja) 2002-12-10 2005-08-31 株式会社東芝 ネットワークシステム及びノード装置
JP4157409B2 (ja) 2003-03-31 2008-10-01 富士通株式会社 仮想パス構築装置および仮想パス構築方法
US7283473B2 (en) 2003-04-10 2007-10-16 International Business Machines Corporation Apparatus, system and method for providing multiple logical channel adapters within a single physical channel adapter in a system area network
US7792987B1 (en) 2003-04-21 2010-09-07 Juniper Networks, Inc. Supporting virtual private networks using a first network topology for forwarding and a subset of the first network topology or a smaller topology for signaling
CA2522915A1 (en) 2003-04-21 2004-11-04 Netcell Corp. Disk array controller with reconfigurable data path
US7710874B2 (en) 2003-06-04 2010-05-04 International Business Machines Corporation System and method for automatic management of many computer data processing system pipes
JP4278445B2 (ja) 2003-06-18 2009-06-17 株式会社日立製作所 ネットワークシステム及びスイッチ
US7356818B2 (en) 2003-06-24 2008-04-08 International Business Machines Corporation Virtual machine communicating to external device without going through other virtual machines by using a list of IP addresses managed only by a single virtual machine monitor
US7463579B2 (en) 2003-07-11 2008-12-09 Nortel Networks Limited Routed split multilink trunking
US20050018669A1 (en) 2003-07-25 2005-01-27 International Business Machines Corporation Infiniband subnet management queue pair emulation for multiple logical ports on a single physical port
US7697527B2 (en) 2003-07-30 2010-04-13 Nortel Networks Limited Method and apparatus for direct frame switching using frame contained destination information
US8776050B2 (en) 2003-08-20 2014-07-08 Oracle International Corporation Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes
US7366181B2 (en) 2003-09-06 2008-04-29 Fujitsu Limited Virtual private network (VPN) with channelized ethernet over sonet (EoS) interface and method
US7342916B2 (en) 2003-09-10 2008-03-11 Intel Corporation Method, apparatus and system for optimizing routing of mobile IP packets
WO2005038599A2 (en) 2003-10-14 2005-04-28 Raptor Networks Technology, Inc. Switching system with distributed switching fabric
US8009556B2 (en) 2003-10-17 2011-08-30 Ip Infusion, Inc. System and method for providing redundant routing capabilities for a network node
US7555002B2 (en) 2003-11-06 2009-06-30 International Business Machines Corporation Infiniband general services queue pair virtualization for multiple logical ports on a single physical port
US8146148B2 (en) 2003-11-19 2012-03-27 Cisco Technology, Inc. Tunneled security groups
US8095640B2 (en) 2003-12-12 2012-01-10 Alcatel Lucent Distributed architecture for real-time flow measurement at the network domain level
US7450598B2 (en) 2003-12-15 2008-11-11 At&T Intellectual Property I, L.P. System and method to provision MPLS/VPN network
US7478173B1 (en) 2003-12-18 2009-01-13 Wmware, Inc. Method and system for sharing a network connection in a virtual computer system
US9032095B1 (en) * 2004-01-06 2015-05-12 Juniper Networks, Inc. Routing device having multiple logical routers
US7391771B2 (en) 2004-01-23 2008-06-24 Metro Packet Systems Inc. Method of sending information through a tree and ring topology of a network system
EP1745631A1 (en) 2004-05-12 2007-01-24 Alcatel Automated containment of network intruder
US8422500B2 (en) 2004-07-02 2013-04-16 Rockstar Consortium Us Lp VLAN support of differentiated services
US7787360B2 (en) 2004-07-23 2010-08-31 Cisco Technology, Inc. System and method for preserving multicast data forwarding during control failures in a router
ATE387050T1 (de) 2004-08-02 2008-03-15 Alcatel Lucent Gemeinsam genutzte ressourcen in einer multimanager-umgebung
US7706302B2 (en) 2004-09-14 2010-04-27 Alcatel Lucent Optimization of routing forwarding database in a network processor
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
US9014181B2 (en) 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US8068408B2 (en) 2004-11-01 2011-11-29 Alcatel Lucent Softrouter protocol disaggregation
US8458467B2 (en) 2005-06-21 2013-06-04 Cisco Technology, Inc. Method and apparatus for adaptive application message payload content transformation in a network infrastructure element
CN101088256B (zh) 2004-12-21 2010-12-08 艾利森电话股份有限公司 与通信系统中的分组流有关的装置和方法
US20080049621A1 (en) 2004-12-31 2008-02-28 Mcguire Alan Connection-Oriented Communications Scheme For Connection-Less Communications Traffic
JP4733399B2 (ja) 2005-01-28 2011-07-27 株式会社日立製作所 計算機システム、計算機、ストレージ装置及び管理端末
US8254285B2 (en) 2005-02-25 2012-08-28 Ip Infusion, Inc. Hardware abstraction layer
US7936770B1 (en) 2005-03-08 2011-05-03 Enterasys Networks, Inc. Method and apparatus of virtual class of service and logical queue representation through network traffic distribution over multiple port interfaces
US20060203774A1 (en) 2005-03-10 2006-09-14 Nokia Corporation System, method and apparatus for selecting a remote tunnel endpoint for accessing packet data services
US20070064673A1 (en) 2005-03-10 2007-03-22 Nehru Bhandaru Flexible, scalable, wireless data forwarding and mobility for secure wireless networks
FR2883437B1 (fr) 2005-03-16 2007-08-03 Wavestorm Sarl Dispositif et procede de communication dans un reseau
CN1301096C (zh) 2005-03-21 2007-02-21 北京正大绿洲医药科技有限公司 一种用于补益肺肾的虫草滴丸及其制备方法
US7414975B2 (en) 2005-03-24 2008-08-19 Ixia Protocol stack
JP4016998B2 (ja) 2005-06-22 2007-12-05 ヤマハ株式会社 通信装置およびプログラム
US7802000B1 (en) 2005-08-01 2010-09-21 Vmware Virtual network in server farm
US8149737B2 (en) 2005-08-09 2012-04-03 Motorola Solutions, Inc. Method and system for data transmission in a wireless network
WO2007021836A2 (en) 2005-08-15 2007-02-22 Toutvirtual Inc. Virtual systems management
US8300636B2 (en) * 2005-09-16 2012-10-30 Acme Products, Inc. Method and system of routing media packets in a network device
JP2007135109A (ja) 2005-11-11 2007-05-31 Hitachi Ltd 仮想ネットワーク管理方法、仮想ネットワーク管理プログラム、仮想ネットワーク管理システムおよび仮想ネットワーク管理手段
US8441919B2 (en) 2006-01-18 2013-05-14 Cisco Technology, Inc. Dynamic protection against failure of a head-end node of one or more TE-LSPs
US8838756B2 (en) 2009-07-27 2014-09-16 Vmware, Inc. Management and implementation of enclosed local networks in a virtual lab
US8619771B2 (en) 2009-09-30 2013-12-31 Vmware, Inc. Private allocated networks over shared communications infrastructure
US7839847B2 (en) 2006-05-08 2010-11-23 Cisco Technology, Inc. Methods and apparatus providing VPN traffic matrix construction
US7953089B1 (en) 2006-05-16 2011-05-31 Cisco Technology, Inc. Systems and methods for multicast switching in a private VLAN
US8060875B1 (en) 2006-05-26 2011-11-15 Vmware, Inc. System and method for multiple virtual teams
JP4714081B2 (ja) 2006-06-01 2011-06-29 アラクサラネットワークス株式会社 ネットワーク接続装置
US7706303B2 (en) 2006-06-26 2010-04-27 Cisco Technology, Inc. Port pooling
US7643482B2 (en) 2006-06-30 2010-01-05 Sun Microsystems, Inc. System and method for virtual switching in a host
US7916682B2 (en) 2006-07-14 2011-03-29 Symbol Technologies, Inc. Wireless switch network architecture implementing layer 3 mobility domains
EP1885088B1 (en) 2006-08-04 2008-12-17 Alcatel Lucent Routing device, routing module and routing method for an access network
US20080059556A1 (en) 2006-08-31 2008-03-06 Egenera, Inc. Providing virtual machine technology as an embedded layer within a processing platform
US7643488B2 (en) 2006-09-29 2010-01-05 Nortel Networks Limited Method and apparatus for supporting multiple customer provisioned IPSec VPNs
US7996835B2 (en) 2006-10-10 2011-08-09 International Business Machines Corporation System, method and program for managing communication with multiple configurations for virtual machine
US7792097B1 (en) 2006-10-25 2010-09-07 Cisco Technology, Inc. Static, dynamic and intelligent VRF routing for services traffic
JP5244332B2 (ja) 2006-10-30 2013-07-24 株式会社日立製作所 情報システム、データ転送方法及びデータ保護方法
US7987506B1 (en) 2006-11-03 2011-07-26 Cisco Technology, Inc. Methods and systems for dynamically updating a routing table in a virtual private network
US7826482B1 (en) 2006-11-17 2010-11-02 Juniper Networks, Inc. Service-specific forwarding in an LDP-RSVP hybrid network
US8223668B2 (en) 2006-12-14 2012-07-17 Rockstar Bidco Lp Method and apparatus for exchanging routing information and the establishment of connectivity across multiple network areas
US7738457B2 (en) 2006-12-20 2010-06-15 Oracle America, Inc. Method and system for virtual routing using containers
CN100579072C (zh) 2006-12-22 2010-01-06 华为技术有限公司 一种在ip设备之间进行通信的方法和系统
US20080159301A1 (en) 2006-12-29 2008-07-03 De Heer Arjan Arie Enabling virtual private local area network services
US20080189769A1 (en) 2007-02-01 2008-08-07 Martin Casado Secure network switching infrastructure
US8320388B2 (en) 2007-02-02 2012-11-27 Groupe Des Ecoles Des Telecommunications (Get) Autonomic network node system
US8259720B2 (en) 2007-02-02 2012-09-04 Cisco Technology, Inc. Triple-tier anycast addressing
US7796594B2 (en) 2007-02-14 2010-09-14 Marvell Semiconductor, Inc. Logical bridging system and method
US8055789B2 (en) 2007-03-27 2011-11-08 Amazon Technologies, Inc. Configuring intercommunications between computing nodes
US8111707B2 (en) 2007-12-20 2012-02-07 Packeteer, Inc. Compression mechanisms for control plane—data plane processing architectures
US8594085B2 (en) 2007-04-11 2013-11-26 Palo Alto Networks, Inc. L2/L3 multi-mode switch including policy processing
US8868626B2 (en) 2007-04-12 2014-10-21 Rutgers, The State University Of New Jersey System and method for controlling a file system
US7903655B2 (en) 2007-04-19 2011-03-08 Hewlett-Packard Development Company, L.P. Marked packet forwarding
US7948874B2 (en) 2007-05-24 2011-05-24 World Wide Packets, Inc. Transitioning a virtual interface from one tunnel to another tunnel
US8031633B2 (en) 2007-08-13 2011-10-04 Honeywell International Inc. Virtual network architecture for space data processing
US8528070B2 (en) 2007-09-05 2013-09-03 Hewlett-Packard Development Company, L.P. System and method for secure service delivery
US8798056B2 (en) 2007-09-24 2014-08-05 Intel Corporation Method and system for virtual port communications
US7751329B2 (en) 2007-10-03 2010-07-06 Avaya Inc. Providing an abstraction layer in a cluster switch that includes plural switches
JP5427181B2 (ja) 2007-10-03 2014-02-26 ヴァーテラ テクノロジー サーヴィシズ インコーポレイテッド 仮想化アプリケーション加速化インフラストラクチャ
US8848544B2 (en) 2007-11-08 2014-09-30 Cisco Technology, Inc. Event correlation using network data flow simulation over unmanaged network segments
US7984123B2 (en) 2007-12-10 2011-07-19 Oracle America, Inc. Method and system for reconfiguring a virtual network path
US8199750B1 (en) 2007-12-18 2012-06-12 World Wide Packets, Inc. Communicating with a control plane using a forwarding information format and control plane processing of packets devoid of a virtual switch identifier
US8194674B1 (en) 2007-12-20 2012-06-05 Quest Software, Inc. System and method for aggregating communications and for translating between overlapping internal network addresses and unique external network addresses
US9432213B2 (en) 2007-12-31 2016-08-30 Rpx Clearinghouse Llc IP forwarding across a link state protocol controlled ethernet network
GB2459433B (en) 2008-03-07 2012-06-06 Hewlett Packard Development Co Distributed network connection policy management
GB2458154B (en) 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
GB2458157B (en) 2008-03-07 2012-04-25 Hewlett Packard Development Co Virtual machine liveness check
US8155028B2 (en) 2008-03-17 2012-04-10 Alcatel Lucent Method and apparatus for providing full logical connectivity in MPLS networks
WO2009116945A1 (en) 2008-03-20 2009-09-24 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for communication of data packets between local networks
US8336094B2 (en) 2008-03-27 2012-12-18 Juniper Networks, Inc. Hierarchical firewalls
US8429739B2 (en) 2008-03-31 2013-04-23 Amazon Technologies, Inc. Authorizing communications between computing nodes
US20090252173A1 (en) 2008-04-03 2009-10-08 Rangaprasad Sampath Method For Improving Efficiency Of Redundancy Protocols
EP2272216A1 (en) 2008-04-10 2011-01-12 Telefonaktiebolaget L M Ericsson (PUBL) Setting up a virtual private network using virtual lan identifiers
US8339959B1 (en) 2008-05-20 2012-12-25 Juniper Networks, Inc. Streamlined packet forwarding using dynamic filters for routing and security in a shared forwarding plane
US8195774B2 (en) 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8849971B2 (en) 2008-05-28 2014-09-30 Red Hat, Inc. Load balancing in cloud-based networks
WO2009147674A1 (en) 2008-06-03 2009-12-10 Ethos Networks Ltd. Automatic signaling method and device for telecommunication services
US8160063B2 (en) 2008-06-09 2012-04-17 Microsoft Corporation Data center interconnect and traffic engineering
US8027260B2 (en) 2008-07-23 2011-09-27 Verizon Patent And Licensing Inc. Mixed integer programming model for minimizing leased access network costs
US7885276B1 (en) 2008-09-30 2011-02-08 Emc Corporation Isolating network traffic in multi-tenant virtualization environments
US7962647B2 (en) 2008-11-24 2011-06-14 Vmware, Inc. Application delivery control module for virtual network switch
US8055770B2 (en) 2008-12-15 2011-11-08 At&T Intellectual Property I, L.P. Method and apparatus for providing network virtualization
US8271775B2 (en) 2008-12-17 2012-09-18 Cisco Technology, Inc. Layer two encryption for data center interconnectivity
US20100162036A1 (en) 2008-12-19 2010-06-24 Watchguard Technologies, Inc. Self-Monitoring Cluster of Network Security Devices
US8331362B2 (en) 2008-12-30 2012-12-11 Juniper Networks, Inc. Methods and apparatus for distributed dynamic network provisioning
US8054832B1 (en) 2008-12-30 2011-11-08 Juniper Networks, Inc. Methods and apparatus for routing between virtual resources based on a routing location policy
US8255496B2 (en) 2008-12-30 2012-08-28 Juniper Networks, Inc. Method and apparatus for determining a network topology during network provisioning
US7995483B1 (en) 2009-01-20 2011-08-09 Juniper Networks, Inc. Simultaneously testing connectivity to multiple remote maintenance endpoints of the same maintenance association
US20100192225A1 (en) 2009-01-28 2010-07-29 Juniper Networks, Inc. Efficient application identification with network devices
US7948986B1 (en) 2009-02-02 2011-05-24 Juniper Networks, Inc. Applying services within MPLS networks
US8351418B2 (en) 2009-02-19 2013-01-08 Futurewei Technologies, Inc. System and method for point to multipoint inter-domain multiprotocol label switching traffic engineering path calculation
US8213336B2 (en) 2009-02-23 2012-07-03 Cisco Technology, Inc. Distributed data center access switch
CN102349268B (zh) 2009-03-09 2015-11-25 日本电气株式会社 OpenFlow通信系统和OpenFlow通信方法
US8265075B2 (en) 2009-03-16 2012-09-11 International Business Machines Corporation Method and apparatus for managing, configuring, and controlling an I/O virtualization device through a network switch
WO2010115060A2 (en) 2009-04-01 2010-10-07 Nicira Networks Method and apparatus for implementing and managing virtual switches
WO2010121216A1 (en) 2009-04-17 2010-10-21 Viasat, Inc. System, method and apparatus for providing end-to-end layer 2 connectivity
US8589919B2 (en) 2009-04-28 2013-11-19 Cisco Technology, Inc. Traffic forwarding for virtual machines
US8027354B1 (en) 2009-04-29 2011-09-27 Cisco Technology, Inc. Network consolidation for virtualized servers
US8867349B2 (en) 2009-05-18 2014-10-21 Cisco Technology, Inc. Regulation of network traffic in virtual private networks
US8229484B2 (en) 2009-06-11 2012-07-24 Genesys Telecommunications Laboratories, Inc. System and methods for integrating short message service messaging with contact center applications
US20100318609A1 (en) 2009-06-15 2010-12-16 Microsoft Corporation Bridging enterprise networks into cloud
US9210065B2 (en) 2009-06-22 2015-12-08 Alcatel Lucent Providing cloud-based services using dynamic network virtualization
US8644188B1 (en) 2009-06-25 2014-02-04 Amazon Technologies, Inc. Providing virtual networking functionality for managed computer networks
US20110032830A1 (en) 2009-08-06 2011-02-10 Jacobus Van Der Merwe Live Router Migration
US8339994B2 (en) 2009-08-27 2012-12-25 Brocade Communications Systems, Inc. Defining an optimal topology for a group of logical switches
US8619779B2 (en) 2009-09-30 2013-12-31 Alcatel Lucent Scalable architecture for enterprise extension in a cloud topology
US20110085557A1 (en) 2009-10-08 2011-04-14 Brocade Communications Systems, Inc. Partitioning of Switches and Fabrics into Logical Switches and Fabrics
US8599864B2 (en) 2009-10-08 2013-12-03 Brocade Communications Systems, Inc. Transit switches in a network of logical switches
EP2497234B1 (en) 2009-11-02 2018-09-19 Marvell World Trade Ltd. Network device and method based on virtual interfaces
US8442048B2 (en) 2009-11-04 2013-05-14 Juniper Networks, Inc. Methods and apparatus for configuring a virtual network switch
US7937438B1 (en) 2009-12-07 2011-05-03 Amazon Technologies, Inc. Using virtual networking devices to manage external connections
US9036504B1 (en) 2009-12-07 2015-05-19 Amazon Technologies, Inc. Using virtual networking devices and routing information to associate network addresses with computing nodes
US20110134931A1 (en) 2009-12-08 2011-06-09 Jacobus Van Der Merwe Virtual router migration
US8705513B2 (en) 2009-12-15 2014-04-22 At&T Intellectual Property I, L.P. Methods and apparatus to communicatively couple virtual private networks to virtual machines within distributive computing networks
US8331371B2 (en) 2009-12-17 2012-12-11 Amazon Technologies, Inc. Distributed routing architecture
US8325730B2 (en) 2009-12-17 2012-12-04 Amazon Technologies, Inc. Distributed routing architecture
JP5323674B2 (ja) 2009-12-28 2013-10-23 日本電信電話株式会社 DNS(DomainNameSystem)登録装置、VPN(VirtualPrivateNetwork)間接続管理システム、広域DNS装置、DNS登録プログラム、広域DNSプログラム、DNS登録方法、及びVPN間接続管理方法
US8224971B1 (en) 2009-12-28 2012-07-17 Amazon Technologies, Inc. Using virtual networking devices and routing information to initiate external actions
US7953865B1 (en) 2009-12-28 2011-05-31 Amazon Technologies, Inc. Using virtual networking devices to manage routing communications between connected computer networks
US7991859B1 (en) 2009-12-28 2011-08-02 Amazon Technologies, Inc. Using virtual networking devices to connect managed computer networks
US8345688B2 (en) 2010-02-23 2013-01-01 Google Inc. System and method for managing flow of packets
US8612627B1 (en) 2010-03-03 2013-12-17 Amazon Technologies, Inc. Managing encoded multi-part communications for provided computer networks
US8259571B1 (en) 2010-03-26 2012-09-04 Zscaler, Inc. Handling overlapping IP addresses in multi-tenant architecture
US8224931B1 (en) 2010-03-31 2012-07-17 Amazon Technologies, Inc. Managing use of intermediate destination computing nodes for provided computer networks
JP5450227B2 (ja) 2010-04-16 2014-03-26 日本電信電話株式会社 トラヒック制御指示装置、トラヒック制御指示プログラム、トラヒック制御指示システム、及びトラヒック制御指示方法
US8504718B2 (en) 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
US8989186B2 (en) 2010-06-08 2015-03-24 Brocade Communication Systems, Inc. Virtual port grouping for virtual cluster switching
EP3041173B1 (en) 2010-05-03 2022-01-26 Avago Technologies International Sales Pte. Limited Virtual cluster switching
US8625616B2 (en) 2010-05-11 2014-01-07 Brocade Communications Systems, Inc. Converged network extension
US8407366B2 (en) 2010-05-14 2013-03-26 Microsoft Corporation Interconnecting members of a virtual network
US8724456B1 (en) 2010-05-19 2014-05-13 Juniper Networks, Inc. Network path selection for multi-homed edges to ensure end-to-end resiliency
BR112012018762B1 (pt) 2010-05-28 2022-06-21 Huawei Technologies Co., Ltd Sistema, componente de rede e método para promover uma comunicação entre uma pluralidade de domínios de acesso
US8374183B2 (en) 2010-06-22 2013-02-12 Microsoft Corporation Distributed virtual network gateways
WO2012006190A1 (en) 2010-06-29 2012-01-12 Huawei Technologies Co., Ltd. Delegate gateways and proxy for target hosts in large layer 2 and address resolution with duplicated internet protocol addresses
EP3703345A1 (en) 2010-06-29 2020-09-02 Huawei Technologies Co., Ltd. Asymmetric network address encapsulation
US8559324B1 (en) 2010-06-29 2013-10-15 Amazon Technologies, Inc. Network routing metering
US8239572B1 (en) 2010-06-30 2012-08-07 Amazon Technologies, Inc. Custom routing decisions
US8880468B2 (en) 2010-07-06 2014-11-04 Nicira, Inc. Secondary storage architecture for a network control system that utilizes a primary network information base
US8964528B2 (en) 2010-07-06 2015-02-24 Nicira, Inc. Method and apparatus for robust packet distribution among hierarchical managed switching elements
US9680750B2 (en) 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
TWI421791B (zh) 2010-07-16 2014-01-01 Univ Nat Taiwan Science Tech 物流網路之運輸商選擇方法
US8456984B2 (en) 2010-07-19 2013-06-04 Ciena Corporation Virtualized shared protection capacity
US8565108B1 (en) 2010-09-28 2013-10-22 Amazon Technologies, Inc. Network data transmission analysis
US8416709B1 (en) 2010-09-28 2013-04-09 Amazon Technologies, Inc. Network data transmission analysis management
US8631122B2 (en) 2010-11-29 2014-01-14 Viralheat, Inc. Determining demographics based on user interaction
US8769494B2 (en) 2010-12-14 2014-07-01 Microsoft Corporation Globally sound and consistent configuration management for distributed datacenter components
US9001827B2 (en) 2010-12-17 2015-04-07 Big Switch Networks, Inc. Methods for configuring network switches
US10142218B2 (en) 2011-01-14 2018-11-27 International Business Machines Corporation Hypervisor routing between networks in a virtual networking environment
US8665739B2 (en) 2011-03-16 2014-03-04 Juniper Networks, Inc. Packet loss measurement at service endpoints of a virtual private LAN service
US9043452B2 (en) 2011-05-04 2015-05-26 Nicira, Inc. Network control apparatus and method for port isolation
CN102780605B (zh) * 2011-05-13 2015-05-06 中国科学院声学研究所 一种域间出口路径动态选择方法及系统
JP5824911B2 (ja) 2011-06-29 2015-12-02 富士通株式会社 情報処理装置、情報処理プログラムおよび管理方法
EP2740242B8 (en) 2011-08-04 2019-01-23 Mido Holdings Ltd. System and method for implementing and managing virtual networks
US9369426B2 (en) 2011-08-17 2016-06-14 Nicira, Inc. Distributed logical L3 routing
EP3407547B1 (en) 2011-08-17 2020-01-22 Nicira, Inc. Hierarchical controller clusters for interconnecting different logical domains
US9167501B2 (en) 2011-08-29 2015-10-20 Telefonaktiebolaget L M Ericsson (Publ) Implementing a 3G packet core in a cloud computer with openflow data and control planes
US8856518B2 (en) 2011-09-07 2014-10-07 Microsoft Corporation Secure and efficient offloading of network policies to network interface cards
US8606105B2 (en) 2011-09-15 2013-12-10 Ciena Corporation Virtual core router and switch systems and methods with a hybrid control architecture
US9185056B2 (en) 2011-09-20 2015-11-10 Big Switch Networks, Inc. System and methods for controlling network traffic through virtual switches
US8751614B2 (en) 2011-10-11 2014-06-10 Telefonaktiebolaget L M Ericsson (Publ) Providing virtualized visibility through routers
US8830820B2 (en) * 2011-10-14 2014-09-09 Google Inc. Semi-centralized routing
US9178833B2 (en) 2011-10-25 2015-11-03 Nicira, Inc. Chassis controller
US8745177B1 (en) 2011-11-01 2014-06-03 Edgecast Networks, Inc. End-to-end monitoring and optimization of a content delivery network using anycast routing
EP2748716B1 (en) 2011-11-15 2018-05-16 Nicira Inc. Network control system for configuring middleboxes
EP3678027B1 (en) 2011-11-29 2022-02-16 Amazon Technologies, Inc. Interfaces to manage direct network peerings
FR2986012B1 (fr) 2012-01-20 2017-12-01 Saint Gobain Ct Recherches Cuve d'electrolyse.
US8660129B1 (en) 2012-02-02 2014-02-25 Cisco Technology, Inc. Fully distributed routing over a user-configured on-demand virtual network for infrastructure-as-a-service (IaaS) on hybrid cloud networks
US9130869B2 (en) 2012-02-09 2015-09-08 Telefonaktiebolaget L M Ericsson (Publ) Methods of redirecting network forwarding elements and related forwarding elements and controllers
US8923296B2 (en) 2012-02-23 2014-12-30 Big Switch Networks, Inc. System and methods for managing network packet forwarding with a controller
US8705536B2 (en) 2012-03-05 2014-04-22 Telefonaktiebolaget L M Ericsson (Publ) Methods of operating forwarding elements including shadow tables and related forwarding elements
EP2832076B1 (en) 2012-03-30 2018-05-02 Nokia Solutions and Networks Oy Centralized ip address management for distributed gateways
US8856339B2 (en) 2012-04-04 2014-10-07 Cisco Technology, Inc. Automatically scaled network overlay with heuristic monitoring in a hybrid cloud environment
US8923149B2 (en) 2012-04-09 2014-12-30 Futurewei Technologies, Inc. L3 gateway for VXLAN
US9225635B2 (en) 2012-04-10 2015-12-29 International Business Machines Corporation Switch routing table utilizing software defined network (SDN) controller programmed route segregation and prioritization
US9021066B1 (en) 2012-04-13 2015-04-28 Juniper Networks, Inc. Providing A-priori information about implication of operator interaction with network device
US9374270B2 (en) 2012-06-06 2016-06-21 Juniper Networks, Inc. Multicast service in virtual networks
EP3451587B1 (en) 2012-06-06 2021-04-28 Juniper Networks, Inc. Creating searchable and global database of user visible process traces
WO2013184941A1 (en) 2012-06-06 2013-12-12 Huawei Technologies Co., Ltd. Method of seamless integration and independent evolution of information-centric networking via software defined networking
US9064216B2 (en) 2012-06-06 2015-06-23 Juniper Networks, Inc. Identifying likely faulty components in a distributed system
US8972602B2 (en) 2012-06-15 2015-03-03 Citrix Systems, Inc. Systems and methods for using ECMP routes for traffic distribution
US9451056B2 (en) 2012-06-29 2016-09-20 Avaya Inc. Method for mapping packets to network virtualization instances
CN103546381B (zh) 2012-07-12 2017-06-09 华为技术有限公司 基于内部网关协议创建双向组播分发树的方法、装置及系统
US9094459B2 (en) 2012-07-16 2015-07-28 International Business Machines Corporation Flow based overlay network
US9172557B2 (en) 2012-08-17 2015-10-27 International Business Machines Corporation Load balancing overlay network traffic using a teamed set of network interface cards
US9563480B2 (en) 2012-08-21 2017-02-07 Rackspace Us, Inc. Multi-level cloud computing system
US11074025B2 (en) 2012-09-03 2021-07-27 Semiconductor Energy Laboratory Co., Ltd. Display device and method for manufacturing the same
US9454392B2 (en) 2012-11-27 2016-09-27 Red Hat Israel, Ltd. Routing data packets between virtual machines using shared memory without copying the data packet
US9535871B2 (en) 2012-11-27 2017-01-03 Red Hat Israel, Ltd. Dynamic routing through virtual appliances
US9363172B2 (en) 2012-11-27 2016-06-07 Red Hat Israel, Ltd. Managing a configurable routing scheme for virtual appliances
US9036639B2 (en) 2012-11-29 2015-05-19 Futurewei Technologies, Inc. System and method for VXLAN inter-domain communications
US9197596B2 (en) 2012-12-18 2015-11-24 Dell Products, Lp System and method to use common addresses on a management controller without conflict
US20140229945A1 (en) 2013-02-12 2014-08-14 Contextream Ltd. Network control using software defined flow mapping and virtualized network functions
CN104009929B (zh) 2013-02-21 2019-01-18 中兴通讯股份有限公司 一种管理虚拟路由器的方法及物理路由器
US20140269299A1 (en) 2013-03-14 2014-09-18 Hewlett-Packard Development Company, L.P. Network controller normalization of network traffic
US9210074B2 (en) 2013-05-03 2015-12-08 Alcatel Lucent Low-cost flow matching in software defined networks without TCAMs
US9203738B2 (en) 2013-05-21 2015-12-01 Cisco Technology, Inc. Optimal forwarding for trill fine-grained labeling and VXLAN interworking
US9471356B2 (en) 2013-06-12 2016-10-18 Dell Products L.P. Systems and methods for providing VLAN-independent gateways in a network virtualization overlay implementation
US20140376550A1 (en) 2013-06-24 2014-12-25 Vmware, Inc. Method and system for uniform gateway access in a virtualized layer-2 network domain
WO2015000173A1 (zh) 2013-07-05 2015-01-08 华为技术有限公司 建立隧道的方法、分配标签的方法、设备及网络系统
US9325630B2 (en) 2013-07-05 2016-04-26 Red Hat, Inc. Wild card flows for switches and virtual switches based on hints from hypervisors
US9130775B2 (en) 2013-07-10 2015-09-08 Cisco Technology, Inc. Support for virtual extensible local area network segments across multiple data center sites
US9887960B2 (en) * 2013-08-14 2018-02-06 Nicira, Inc. Providing services for logical networks
US9819505B2 (en) 2013-08-20 2017-11-14 Cisco Technology, Inc. Group bundling priority dissemination through link-state routing protocol in a network environment
US9654390B2 (en) 2013-09-03 2017-05-16 Cisco Technology, Inc. Method and apparatus for improving cloud routing service performance
US9577845B2 (en) 2013-09-04 2017-02-21 Nicira, Inc. Multiple active L3 gateways for logical networks
US9491094B2 (en) 2013-09-25 2016-11-08 Cisco Techonology, Inc. Path optimization in distributed service chains in a network environment
US9444721B2 (en) 2013-09-30 2016-09-13 Juniper Networks, Inc. Two-part metric for link state routing protocols
US20150098475A1 (en) 2013-10-09 2015-04-09 International Business Machines Corporation Host table management in software defined network (sdn) switch clusters having layer-3 distributed router functionality
US10063458B2 (en) 2013-10-13 2018-08-28 Nicira, Inc. Asymmetric connection with external networks
US9374294B1 (en) 2013-11-05 2016-06-21 Cisco Technology, Inc. On-demand learning in overlay networks
US9385925B1 (en) 2013-12-16 2016-07-05 Amazon Technologies, Inc. Anycast route detection
US20150172156A1 (en) 2013-12-18 2015-06-18 Cisco Technology, Inc. Detecting end hosts in a distributed network environment
US10009287B2 (en) 2013-12-26 2018-06-26 Huawei Technologies Co., Ltd. Hierarchical software-defined network traffic engineering controller
US9548896B2 (en) 2013-12-27 2017-01-17 Big Switch Networks, Inc. Systems and methods for performing network service insertion
WO2015100656A1 (zh) 2013-12-31 2015-07-09 华为技术有限公司 一种实现虚拟机通信的方法和装置
US9473414B2 (en) 2014-02-06 2016-10-18 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for supporting packet prioritization at a data network
US9749214B2 (en) 2014-02-26 2017-08-29 Futurewei Technologies, Inc. Software defined networking (SDN) specific topology information discovery
US9419855B2 (en) 2014-03-14 2016-08-16 Nicira, Inc. Static routes for logical routers
US9313129B2 (en) 2014-03-14 2016-04-12 Nicira, Inc. Logical router processing by network controller
US9590901B2 (en) 2014-03-14 2017-03-07 Nicira, Inc. Route advertisement by managed gateways
US9503321B2 (en) 2014-03-21 2016-11-22 Nicira, Inc. Dynamic routing for logical routers
US9647883B2 (en) 2014-03-21 2017-05-09 Nicria, Inc. Multiple levels of logical routers
CN110278151B (zh) 2014-03-21 2021-11-19 Nicira股份有限公司 用于逻辑路由器的动态路由
US9716687B2 (en) 2014-06-19 2017-07-25 Cisco Technology, Inc. Distributed gateways for overlay networks
CN105471740B (zh) 2014-07-09 2018-10-12 新华三技术有限公司 基于软件定义网络的网关迁徙处理方法及装置
US10931478B2 (en) 2014-10-14 2021-02-23 Mido Holdings Ltd. System and method for distributed flow state P2P setup in virtual networks
US9948472B2 (en) 2014-10-22 2018-04-17 Juniper Networks, Inc. Protocol independent multicast sparse mode (PIM-SM) support for data center interconnect
US9819574B2 (en) 2014-11-07 2017-11-14 Cisco Technology, Inc. Concerted multi-destination forwarding in a joint TRILL fabric and VXLAN/IP fabric data center
US10171559B2 (en) 2014-11-21 2019-01-01 Cisco Technology, Inc. VxLAN security implemented using VxLAN membership information at VTEPs
US9787573B2 (en) 2014-12-31 2017-10-10 Juniper Networks, Inc. Fast convergence on link failure in multi-homed Ethernet virtual private networks
US10129180B2 (en) 2015-01-30 2018-11-13 Nicira, Inc. Transit logical switch within logical router
CN105991430B (zh) 2015-03-05 2022-01-14 李明 跨多个自治网络系统的数据路由
US10038628B2 (en) 2015-04-04 2018-07-31 Nicira, Inc. Route server mode for dynamic routing between logical and physical networks
US9634934B2 (en) 2015-05-08 2017-04-25 Cisco Technology, Inc. Dynamic host configuration protocol relay in a multipod fabric
US9800497B2 (en) 2015-05-27 2017-10-24 Cisco Technology, Inc. Operations, administration and management (OAM) in overlay data center environments
US11204791B2 (en) 2015-06-30 2021-12-21 Nicira, Inc. Dynamic virtual machine network policy for ingress optimization
WO2017027073A1 (en) 2015-08-11 2017-02-16 Nicira, Inc. Route configuration for logical router
US10230629B2 (en) 2015-08-11 2019-03-12 Nicira, Inc. Static route configuration for logical router
US10165093B2 (en) 2015-08-31 2018-12-25 Cisco Technology, Inc. Generating segment routing conduit in service provider network for routing packets
US10075363B2 (en) 2015-08-31 2018-09-11 Nicira, Inc. Authorization for advertised routes among logical routers
US10270687B2 (en) 2015-09-07 2019-04-23 Citrix Systems, Inc. Systems and methods for dynamic routing on a shared IP address
US10361972B2 (en) 2015-09-23 2019-07-23 Citrix Systems, Inc. Systems and methods to support VXLAN in partition environment where a single system acts as multiple logical systems to support multitenancy
US10095535B2 (en) 2015-10-31 2018-10-09 Nicira, Inc. Static route types for logical routers
US9800433B2 (en) 2015-12-16 2017-10-24 At&T Intellectual Property I, L.P. Method and apparatus for providing a point-to-point connection over a network
CN105791412A (zh) 2016-04-04 2016-07-20 合肥博雷电子信息技术有限公司 一种大数据处理平台网络架构
US10237142B2 (en) 2016-04-04 2019-03-19 Nicira, Inc. Troubleshooting virtual network reachability
US10454877B2 (en) 2016-04-29 2019-10-22 Cisco Technology, Inc. Interoperability between data plane learning endpoints and control plane learning endpoints in overlay networks
US10153973B2 (en) 2016-06-29 2018-12-11 Nicira, Inc. Installation of routing tables for logical router in route server mode
EP3504865A1 (en) 2016-08-24 2019-07-03 British Telecommunications public limited company Data network address sharing
US10454758B2 (en) 2016-08-31 2019-10-22 Nicira, Inc. Edge node cluster network redundancy and fast convergence using an underlay anycast VTEP IP
US10341236B2 (en) 2016-09-30 2019-07-02 Nicira, Inc. Anycast edge service gateways
US10382321B1 (en) 2017-03-28 2019-08-13 Juniper Networks, Inc. Aggregate link bundles in label switched paths
US10432513B2 (en) 2017-07-14 2019-10-01 Nicira, Inc. Asymmetric network elements sharing an anycast address
US10623322B1 (en) 2017-09-15 2020-04-14 Juniper Networks, Inc. Dynamic prefix list for route filtering
US11032183B2 (en) 2017-10-06 2021-06-08 Nicira, Inc. Routing information validation in SDN environments
US10771590B2 (en) 2018-03-07 2020-09-08 Ciena Corporation Systems and methods for intelligent routing and content placement in information centric networks
US10673757B2 (en) 2018-06-05 2020-06-02 Arista Networks, Inc. System and method of a data processing pipeline with policy based routing
US10931560B2 (en) 2018-11-23 2021-02-23 Vmware, Inc. Using route type to determine routing protocol behavior
US10797998B2 (en) 2018-12-05 2020-10-06 Vmware, Inc. Route server for distributed routers using hierarchical routing protocol
US10938788B2 (en) 2018-12-12 2021-03-02 Vmware, Inc. Static routes for policy-based VPN

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110099579A (ko) * 2010-03-02 2011-09-08 연세대학교 산학협력단 패킷 전달 시스템 및 방법
JP2013157855A (ja) * 2012-01-31 2013-08-15 Nec Corp 仮想ネットワークの接続方法、仮想ネットワーク接続装置およびプログラム
WO2015015787A1 (ja) * 2013-07-30 2015-02-05 日本電気株式会社 制御装置、管理装置、制御方法、管理方法、および、プログラム
US20150063360A1 (en) * 2013-09-04 2015-03-05 Nicira, Inc. High Availability L3 Gateways for Logical Networks

Also Published As

Publication number Publication date
CN107925617A (zh) 2018-04-17
US11533256B2 (en) 2022-12-20
CN112437026A (zh) 2021-03-02
CA2994810A1 (en) 2017-02-16
EP3335389B1 (en) 2021-05-26
AU2016307199B2 (en) 2020-04-09
AU2020204224A1 (en) 2020-07-16
US10805212B2 (en) 2020-10-13
CN107925617B (zh) 2020-12-01
JP6720292B2 (ja) 2020-07-08
US20190199625A1 (en) 2019-06-27
AU2016307199A1 (en) 2018-04-05
CA2994810C (en) 2022-01-04
EP3335389A1 (en) 2018-06-20
JP2018523422A (ja) 2018-08-16
US10129142B2 (en) 2018-11-13
US20210029028A1 (en) 2021-01-28
CA3139646A1 (en) 2017-02-16
CA3139646C (en) 2024-02-27
JP7033287B2 (ja) 2022-03-10
US20170048129A1 (en) 2017-02-16
US10230629B2 (en) 2019-03-12
CN112437026B (zh) 2023-04-18
AU2020204224B2 (en) 2022-01-27
US20170048130A1 (en) 2017-02-16

Similar Documents

Publication Publication Date Title
JP7033287B2 (ja) 論理ルータのためのルート設定
US11425021B2 (en) Authorization for advertised routes among logical routers
US11593145B2 (en) Static route types for logical routers
JP7153774B2 (ja) 複数のルーティング構成要素を用いる論理ルータ
CN111478852B (zh) 受管理网关的路由通告
WO2017027073A1 (en) Route configuration for logical router

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200703

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200703

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211005

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220216

R150 Certificate of patent or registration of utility model

Ref document number: 7033287

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150