(57)【要約】      （修正有）【課題】論理ネットワークにおいて論理ルータを実施する方法を提供する。【解決手段】方法は、いくつかのルーティングテーブルを有する複数のルーティング構成要素を含む、論理ルータのための静的経路の構成を受信すし、どのルーティング構成要素が、静的経路の構成を実施するための対応するルーティングテーブルへの経路の追加を要するかを識別し、識別されたルーティング構成要素の対応する別々のルーティングテーブルに経路を追加する。【選択図】図１５
2020167715.tif 000002
【特許請求の範囲】
【請求項１】
論理ネットワークにおける論理ルータを実施する方法であって、前記方法は、
前記論理ルータのための静的経路の構成を受信することであって、前記論理ルータは、別々のルーティングテーブルを有する複数のルーティング構成要素を含む、受信することと、
どの前記ルーティング構成要素が、前記静的経路の構成を実施するための対応するルーティングテーブルへの経路の追加を要するかを識別することと、
前記識別されたルーティング構成要素の前記対応する別々のルーティングテーブルに前記経路を追加することと、を含む方法。
【請求項２】
請求項１に記載の方法であって、前記静的経路の前記構成は、プレフィックスと次ホップアドレスとを含む、方法。
【請求項３】
請求項２に記載の方法であって、前記静的経路の前記構成は、更に出力インタフェースを含む、方法。
【請求項４】
請求項１に記載の方法であって、前記論理ルータの前記複数のルーティング構成要素は、（i）他の論理フォワーディング要素とのインタフェースを有する分散化ルーティング構成要素と、（ii）外部物理ネットワークとのインタフェースを有する複数の集中化ルーティング構成要素とを含む、方法。
【請求項５】
請求項４に記載の方法であって、前記静的経路は、前記論理ネットワークにおけるアドレスである次ホップアドレスを含み、前記論理ルータの前記ルーティング構成要素のそれぞれは、対応するルーティングテーブルへの経路の追加を要するものとして識別される、方法。
【請求項６】
請求項５に記載の方法であって、前記識別されたルーティング構成要素のための前記別々のルーティングテーブルに経路を追加することは、
前記分散化ルーティング構成要素に、前記静的経路を構成済として追加することと、
前記構成済の静的経路と同一のプレフィックスのための経路を、前記集中化ルーティング構成要素のそれぞれに追加することであって、前記経路は、前記集中化ルーティング構成要素が接続する前記分散化ルーティング構成要素のインタフェースの次ホップアドレスを含む、追加することとを含む、方法。
【請求項７】
請求項４に記載の方法であって、前記静的経路は、前記外部物理ネットワークのアドレスである次ホップアドレスを含み、且つ、出力インタフェースは前記静的経路のために特定されておらず、どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別することは、前記次ホップアドレスへの接続性を有する集中化構成要素を識別することを含む、方法。
【請求項８】
請求項７に記載の方法であって、前記識別されたルーティング構成要素に対し、経路を前記対応するルーティングテーブルに追加することは、前記次ホップアドレスへの接続性を有する前記識別された集中化ルーティング構成要素のそれぞれに、前記静的経路を構成済として追加することを含む、方法。
【請求項９】
請求項８に記載の方法であって、
どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別することは、更に、前記構成済の静的経路がデフォルト経路であるかを判定することを含み、
前記識別されたルーティング構成要素の前記対応するルーティングテーブルに経路を追加することは、前記経路がデフォルト経路でない場合にのみ、前記分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することを含み、各追加される経路に対する前記次ホップアドレスは、前記構成済みの静的経路が追加された前記集中化ルーティング構成要素のインタフェースのアドレスである、方法。
【請求項１０】
請求項１に記載の方法であって、前記方法は、前記論理ルータを管理する集中化ネットワークコントローラによって実行される、方法。
【請求項１１】
請求項１０に記載の方法は更に、前記追加された経路を有する前記ルーティングテーブルを、前記複数のルーティング構成要素を実施する物理マシンを動作させるローカルネットワークコントローラに分配することを含む、方法。
【請求項１２】
請求項１に記載の方法であって、特定のルーティングテーブルに経路を追加することは、前記特定のルーティングテーブルのエントリを追加又は修正することを含む、方法。
【請求項１３】
少なくとも１つの処理ユニットで実行されると論理ネットワークにおける論理ルータを実施するプログラム、を格納する機械可読媒体であって、前記プログラムは、
前記論理ルータのための静的経路の構成を受信することであって、前記論理ルータは、別々のルーティングテーブルを有する複数のルーティング構成要素を含む、受信することと、
どの前記ルーティング構成要素が、前記静的経路の構成を実施するための対応するルーティングテーブルへの経路の追加を要するかを識別することと、
前記識別されたルーティング構成要素の前記対応する別々のルーティングテーブルに前記経路を追加することと、の命令の組を含む、機械可読媒体。
【請求項１４】
請求項１３に記載の機械可読媒体であって、前記静的経路の前記構成は、プレフィックスと次ホップアドレスとを含む、機械可読媒体。
【請求項１５】
請求項２に記載の機械可読媒体であって、前記静的経路の前記構成は、更に出力インタフェースを含む、機械可読媒体。
【請求項１６】
請求項１３に記載の機械可読媒体であって、前記論理ルータの前記複数のルーティング構成要素は、（i）他の論理フォワーディング要素とのインタフェースを有する分散化ルーティング構成要素と、（ii）外部物理ネットワークとのインタフェースを有する複数の集中化ルーティング構成要素とを含む、機械可読媒体。
【請求項１７】
請求項１６に記載の機械可読媒体であって、（i）前記静的経路は、前記論理ネットワークにおけるアドレスである次ホップアドレスを含み、（ii）前記論理ルータの前記ルーティング構成要素のそれぞれは、対応するルーティングテーブルへの経路の追加を要するものとして識別され、（iii）前記識別されたルーティング構成要素のための前記別々のルーティングテーブルに経路を追加することの前記命令の組は、
前記分散化ルーティング構成要素に、前記静的経路を構成済として追加することと、
前記構成済の静的経路と同一のプレフィックスのための経路を、前記集中化ルーティング構成要素のそれぞれに追加することであって、前記経路は、前記集中化ルーティング構成要素が接続する前記分散化ルーティング構成要素のインタフェースの次ホップアドレスを含む、追加することの命令の組を含む、機械可読媒体。
【請求項１８】
請求項１６に記載の機械可読媒体であって、（i）前記静的経路は、前記外部物理ネットワークのアドレスである次ホップアドレスを含み、且つ、出力インタフェースは前記静的経路のために特定されておらず、（ii）どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別する命令の組は、前記次ホップアドレスへの接続性を有する集中化構成要素を識別することの命令の組を含み、（iii）前記識別されたルーティング構成要素に対し、経路を前記対応するルーティングテーブルに追加する前記命令の組は、前記次ホップアドレスへの接続性を有する前記識別されたルーティング構成要素のそれぞれに構成済みとして前記静的経路を追加することの命令の組を含む、機械可読媒体。
【請求項１９】
請求項１８に記載の機械可読媒体であって、
どの前記ルーティング構成要素が前記対応するルーティングテーブルへの経路の追加を要するかを識別することの前記命令の組は、更に、前記構成済の静的経路がデフォルト経路であるかを判定することの命令の組を含み、
前記識別されたルーティング構成要素の前記対応するルーティングテーブルに経路を追加することの前記命令の組は、前記経路がデフォルト経路でない場合にのみ、前記分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することの命令の組を含み、各追加される経路に対する前記次ホップアドレスは、前記構成済みの静的経路が追加された前記集中化ルーティング構成要素のインタフェースのアドレスである、機械可読媒体。
【請求項２０】
請求項１３に記載の機械可読媒体であって、前記プログラムは論理ルータを管理する集中化ネットワークコントローラであり、前記プログラムは、更に、前記追加された経路を有する前記ルーティングテーブルを、前記複数のルーティング構成要素を実施する物理マシンを動作させるローカルネットワークコントローラに分配することの命令の組を含む、機械可読媒体。
【請求項２１】
請求項１３に記載の機械可読媒体であって、特定のルーティングテーブルに経路を追加することの命令の組は、前記特定のルーティングテーブルのエントリを追加又は修正することの命令の組を含む、機械可読媒体。
【請求項２２】
論理ネットワークにおける論理ルータを実施する方法であって、前記方法は、
第１の論理ルータから第２の論理ルータへ接続する構成データを受信することであって、前記第２の論理ルータは、別々のルーティングテーブルを有する複数の論理ルーティング構成要素を含む、受信することと、
前記第１の論理ルータのために構成された１つ以上の経路のそれぞれに対し、
前記第２の論理ルータの分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することであって、前記追加された経路は、前記第１の論理ルータのインタフェースの次ホップアドレスを有する、追加することと、
前記第２の論理ルータの１つ以上の集中化ルーティング構成要素のそれぞれの前記ルーティングテーブルに、前記追加された経路の前記次ホップアドレスが、前記第２の論理ルータの内部の前記分散化ルーティング構成要素のインタフェースのアドレスである、経路を追加すること、とを含む、方法。
【請求項２３】
請求項２２に記載の方法であって、前記第１の論理ルータが、任意の外部物理ネットワークと接続しないテナント論理ルータであり、前記第２の論理ルータが、外部物理ネットワークと接続するプロバイダ論理ルータである、方法。
【請求項２４】
請求項２２に記載の方法であって、前記構成データは、前記第１の論理ルータの所有者からのアプリケーションプログラミングインタフェースを介したリクエストを含む、方法。
【請求項２５】
請求項２２に記載の方法であって、前記第１の論理ルータは、１つの分散化ルーティング構成要素のみを含み、集中化ルーティング構成要素を含まない、方法。
【請求項２６】
請求項２５に記載の方法であって、前記第１の論理ルータの前記インタフェースは、前記第１の論理ルータの前記分散化ルーティング構成要素のインタフェースを含む、方法。
【請求項２７】
請求項２２に記載の方法であって、前記第１の論理ルータはまた、１つの分散化ルーティング構成要素と、アクティブな集中化ルーティング構成要素と、スタンバイの集中化ルーティング構成要素とを含む、方法。
【請求項２８】
請求項２７に記載の方法であって、前記第１の論理ルータの前記インタフェースは、前記アクティブな集中化ルーティング構成要素のインタフェースを含む、方法。
【請求項２９】
請求項２２に記載の方法であって、前記第１の論理ルータの所有者が、前記第１の論理ルータの外にアドバタイズされるように前記経路を特定する場合、前記第２の論理ルータの前記構成要素の前記ルーティングテーブルにのみ経路が追加される、方法。
【請求項３０】
請求項２２に記載の方法であって、前記方法は、前記第２の論理ルータを管理する集中化ネットワークコントローラによって実行される、方法。
【請求項３１】
請求項３０に記載の方法は更に、前記追加された経路を有する前記ルーティングテーブルを、前記複数のルーティング構成要素を実施する物理マシンを動作させるローカルネットワークコントローラに分配することを含む、方法。
【請求項３２】
請求項２２に記載の方法であって、前記第１の論理ルータのために構成された前記経路は、前記第１の論理ルータへの論理スイッチの接続に基づいて前記第１の論理ルータのために自動的に生成された、接続された経路を含む、方法。
【請求項３３】
請求項２２に記載の方法は更に、動的ルーティングプロトコルを介して外部物理ネットワークへ経路をアドバタイズするために、前記集中化ルーティング構成要素を特定することを含む、方法。
【請求項３４】
少なくとも１つの処理ユニットで実行されると論理ネットワークにおける論理ルータを実施するプログラム、を格納する機械可読媒体であって、前記プログラムは、
第１の論理ルータから第２の論理ルータへ接続する構成データを受信することであって、前記第２の論理ルータは、別々のルーティングテーブルを有する複数の論理ルーティング構成要素を含む、受信することと、
前記第１の論理ルータのために構成された１つ以上の経路のそれぞれに対し、
前記第２の論理ルータの分散化ルーティング構成要素の前記ルーティングテーブルに経路を追加することであって、前記追加された経路は、前記第１の論理ルータのインタフェースの次ホップアドレスを有する、追加することと、
前記第２の論理ルータの１つ以上の集中化ルーティング構成要素のそれぞれの前記ルーティングテーブルに、前記追加された経路の前記次ホップアドレスが、前記第２の論理ルータの内部の前記分散化ルーティング構成要素のインタフェースのアドレスである、経路を追加することの命令の組を含む、機械可読媒体。
【請求項３５】
請求項３４に記載の機械可読媒体であって、前記第１の論理ルータが、任意の外部物理ネットワークと接続しないテナント論理ルータであり、前記第２の論理ルータが、外部物理ネットワークと接続するプロバイダ論理ルータである、機械可読媒体。
【請求項３６】
請求項３４に記載の機械可読媒体であって、前記第１の論理ルータは、１つの分散化ルーティング構成要素のみを含み、集中化ルーティング構成要素を含まない、機械可読媒体。
【請求項３７】
請求項３６に記載の機械可読媒体であって、前記第１の論理ルータの前記インタフェースは、前記第１の論理ルータの前記分散化ルーティング構成要素のインタフェースを含む、機械可読媒体。
【請求項３８】
請求項３４に記載の機械可読媒体であって、前記第１の論理ルータはまた、１つの分散化ルーティング構成要素と、アクティブな集中化ルーティング構成要素と、スタンバイの集中化ルーティング構成要素とを含み、前記第１の論理ルータの前記インタフェースは、前記アクティブな集中化ルーティング構成要素のインタフェースを含む、機械可読媒体。
【請求項３９】
請求項３４に記載の機械可読媒体であって、前記第１の論理ルータの所有者が、前記第１の論理ルータの外にアドバタイズされるように前記経路を特定する場合、前記第２の論理ルータの前記構成要素の前記ルーティングテーブルにのみ経路が追加される、機械可読媒体。
【請求項４０】
請求項３４に記載の機械可読媒体であって、前記第１の論理ルータのために構成された前記経路は、前記第１の論理ルータへの論理スイッチの接続に基づいて前記第１の論理ルータのために自動的に生成された、接続された経路を含む、機械可読媒体。
【請求項４１】
請求項３４に記載の機械可読媒体であって、前記プログラムが更に、動的ルーティングプロトコルを介して外部物理ネットワークへ経路をアドバタイズするために、前記集中化ルーティング構成要素を特定することの命令を含む、機械可読媒体。
【発明の詳細な説明】
【背景技術】
【０００１】
典型的な物理ネットワークは、Ｌ３フォワーディング（forwarding）（すなわちルーティング）を実行するための複数の物理ルータを含む。第１のマシンが、異なるＩＰサブネットに置かれた第２のマシンへパケットを送信しようとする場合、パケットはルータに送信され、当該ルータは、パケットの送信先ＩＰアドレスを用いてどのマシンの物理インタフェースを通じてパケットを送信すべきかを決定する。より大きなネットワークは、ルータの１つが停止した場合に、パケットが第１のマシンと第２のマシンとの間の異なるパスに沿ってルーティングされ得るように、複数のルータを含む。
【０００２】
論理ネットワークにおいても、異なるサブネットにおけるユーザ定義データ計算ノード（例えば仮想マシン）が、互いに通信することが同様に必要であり得る。この場合、テナント（tenant）は、論理スイッチと論理ルータとの両方を含む、仮想化のためのネットワークを定義し得る。データセンタにおいてこのような仮想化された論理ネットワークを適切に提供する論理ルータを実施する方法が必要とされている。
【発明の概要】
【０００３】
いくつかの実施形態は、ネットワークにおいて（例えばデータセンタにおいて）論理ルータを実施する方法を提供する。いくつかの実施形態では、この方法は、ネットワークを集中的に管理する（例えばネットワークコントローラにおいて実施される）管理プレーンによって実行される。いくつかの実施形態では、この方法は、（例えばアプリケーションプログラミングインタフェース（ＡＰＩ）を通じて）論理ルータの定義を受信し、そして論理ルータのためのいくつかのルーティング構成要素を定義する。これらのルーティング構成要素のそれぞれは、別個に経路の組と論理インタフェースの組とを割り当てられる。方法はまた、論理ルータのための経路の仕様と、論理ルータから他の論理ルータへの接続とを受信してもよい。いくつかの実施形態は、自動的に、どのルーティング構成要素のルーティングテーブルに受信した経路をプッシュすべきか、及び、どのように経路を伝達するかを、他の論理ルータとの接続に基づいて識別する。
【０００４】
いくつかの実施形態では、論理ルータのために定義されたいくつかのルーティング構成要素は、１つの分散化ルーティング構成要素といくつかの集中化ルーティング構成要素とを含む。加えて、いくつかの実施形態の管理プレーンは、論理ルータの内部の構成要素の間の通信を処理するための論理スイッチ（通過論理スイッチ（transit logical switch）として参照される）を定義する。分散化ルーティング構成要素と通過論理スイッチとは、データセンタ内の多数のマシンによって分散化された態様で実施される一方、集中化ルーティング構成要素はそれぞれが単一のマシン上で実施される。いくつかの実施形態は、様々なマシン上の管理対象フォワーディング構成要素のデータパスにおいて分散化構成要素を実施する一方、集中化ルーティング構成要素はその単一のマシン上の複数のＶＭ（又は他のデータ計算ノード）において実施される。他の実施形態もまた、割り当てられたマシンのデータパスにおいて集中化構成要素を実施する。
【０００５】
いくつかの実施形態では、集中化構成要素はアクティブ−アクティブモード、又はアクティブ−スタンバイモードであるように構成されてよい。アクティブ−アクティブモードでは、全ての集中化構成要素が同時に完全に動作し、トラフィックは、集中化構成要素から外部ネットワークへの接続性が構成要素にわたって同一である限り、（様々な集中化構成要素にわたるトラフィックをバランスする）等価コストマルチパス（equal-cost multi-path）（ＥＣＭＰ）フォワーディング原理を用いる集中化構成要素を通して、論理ネットワークに進入又は退出することができる。このモードでは、別々の集中化構成要素のそれぞれは、外部ネットワークと通信するための、自身のネットワークレイヤ（例えばＩＰ）アドレスとデータリンクレイヤ（例えばＭＡＣ）アドレスとを有する。加えて、別々の集中化構成要素のそれぞれは、分散化ルーティング構成要素へパケットを送信するとともに分散化ルーティング構成要素からパケットを受信するために、通過論理スイッチと接続するための自身のネットワークレイヤアドレスとデータリンクレイヤアドレスとを有する。
【０００６】
いくつかの実施形態では、論理ルータは２層論理ネットワーク（two-tier logical network）構成の一部である。いくつかの実施形態の２層構成は、論理ネットワークをデータセンタの外部のネットワークに接続するための単一の論理ルータ（プロバイダ論理ルータ（provider logical router）（ＰＬＲ）として参照され、例えばデータセンタの所有者によって管理される）と、単一の論理ルータと接続し、外部ネットワークと個別に通信しない複数の論理ルータ（テナント論理ルータ（tenant logical router）（ＴＬＲ）として参照され、例えばデータセンタの異なるテナントによって管理される）とを含む。いくつかの実施形態は、可能なときはいつでもアクティブ−アクティブモードにおいてＰＬＲを実施し、ステートフルサービス（stateful service）（例えば、ＮＡＴファイアウォール、ロードバランサ等）が論理ルータのために構成される場合にのみアクティブ−スタンバイモードを用いる。
【０００７】
ＰＬＲに対して、いくつかの実施形態は外部ネットワークと経路交換を可能にする。ＰＬＲの集中化構成要素のそれぞれは、論理ネットワークのプレフィックスをアドバタイズし、外部ネットワークへの経路を受信するために動的ルーティングプロトコル処理を実行する。データセンタ内の中枢、及び論理ネットワークを実施するマシン上の両方に置かれるネットワークコントローラのネットワーク制御システムを通して、これらの経路が他の集中化構成要素と分散化ルーティング構成要素とに伝達される。いくつかの実施形態は、外部ネットワークから直接学習した経路と、外部ネットワークから経路を学習した、異なるピア集中化構成要素から学習した経路とに対して、集中化構成要素のルーティング情報ベース（routing information base, RIB）における異なる管理上の基準を用いる。従って、集中化構成要素は、論理ルータのピア集中化構成要素を通じたリダイレクションを含む経路よりも、直接学習した経路を選択する。
【０００８】
論理ルータがＴＬＲである場合、いくつかの実施形態は、論理ルータに対するステートフルサービス（stateful service）が構成されるときには、集中化構成要素を用いない、或いはアクティブ−スタンバイモードの２つの集中化構成要素を用いる。２つの集中化構成要素のそれぞれは、同一のネットワークレイヤアドレスを有し、アクティブな構成要素のみがＡＲＰリクエストに返信する。ＰＬＲと接続するために、いくつかの実施形態はまた、２つの構成要素のそれぞれに同一のネットワークレイヤアドレス（しかし自身の分散化構成要素と接続するために用いられるアドレスとは異なる）を割り当てる。加えて、管理プレーンは、ＰＬＲの分散化構成要素とＴＬＲの集中化構成要素との間の通過論理スイッチを定義する。
【０００９】
いくつかの実施形態の管理プレーンは、追加的に、（例えば、分散化構成要素と集中化構成要素のそれぞれのための）各論理ルータ構成物のためのルーティングテーブルを構成する。これらのルーティングテーブルにおける経路は、接続された論理スイッチと、ユーザ入力の静的経路と、他の論理ルータの接続に基づく動的経路と、に基づく経路を含んでよい。例えば、管理者によって論理ルータに直接接続された任意の論理スイッチは、結果的に、分散化構成要素のルーティングテーブルにおける接続された経路、及び、分散化構成要素のインタフェースである次ホップを有する様々な集中化構成要素のための経路となる。
【００１０】
ユーザが静的経路を追加する場合、いくつかの実施形態は、様々な論理ルータ構成要素に静的経路を追加する様々なルールを提供する。例えば、いくつかの実施形態は、（論理ネットワーク内の次ホップを有する）下向きの静的経路（downward-facing static routes）を直接的に（特定された次ホップのような他の論理フォワーディング要素とインタフェースを有する）分散化構成要素に追加する一方で、集中化構成要素によってアクセス可能な分散化構成要素のインタフェースを再度指し示す経路を、集中化構成要素のそれぞれに追加する。構成済みの静的経路が（外部ネットワークにある、及び／又は集中化構成要素の１つと相関する特定の出力インタフェースを特定する、次ホップを有して）上向き（upward-facing）である場合、いくつかの実施形態は、（i）特定されたインタフェース及び／又は次ホップのアドレスに応じて経路を１つ以上の集中化構成要素に追加し、（ii）各集中化構成要素のインタフェースを次ホップとして特定する分散化構成要素に経路を追加する。しかしながら、いくつかの実施形態は、構成済みの静的経路がデフォルト経路である場合には分散化構成要素に経路を追加しない。これは、管理プレーンが、集中化構成要素のそれぞれを指す分散化構成要素ルーティングテーブルのための等価コストのデフォルト経路を、論理ルータの生成時に既に自動的に生成しているためである。
【００１１】
更に、ＴＬＲがＰＬＲに接続した場合、いくつかの実施形態は、ＴＬＲに接続され、外部ネットワークに（動的ルーティングプロトコルを介して）アドバタイズされるべき、任意の論理スイッチサブネットを識別する。この場合、２つの論理ルータの間の動的ルーティングプロトコルを実行するよりも、（両方の論理ルータ構成を知る）管理プレーンは、ＰＬＲがその別々の各ルーティング構成要素のための別々のルーティングテーブルを実際に有するという事実を扱う間に、自動的に経路交換を実行する。従って、管理プレーンは、（i）ＰＬＲに接続するＴＬＲのインタフェースとして次ホップを有する経路を分散化構成要素に、（ii）集中化構成要素からアクセス可能な分散化構成要素のインタフェースとして次ホップを有する経路を集中化ルーティング構成要素のそれぞれに、の両方にこれらの論理ネットワークのための経路を追加する。
【００１２】
先行するサマリは、本発明のいくつかの実施形態に対する簡単な導入として提供されることを意図するものである。本書面において開示される発明の主題の全ての紹介又は概要を意味するものではない。以下の詳細な説明及び詳細な説明において参照される図面は、他の実施形態と、要約において説明された実施形態を更に説明するであろう。従って、本書面によって説明される全ての実施形態を理解するため、要約、詳細な説明及び図面の十分な確認が必要である。更に、クレームされる主題は、主題の思想から離れることなく他の具体的な形態で具現化することができるため、クレームされる主題は、要約、詳細な説明及び図面における詳細な例によって限定されず、むしろ添付された特許請求の範囲によって定義されるべきである。
【図面の簡単な説明】
【００１３】
本発明の新規な特徴は添付の特許請求の範囲によって明らかになる。しかしながら、説明の目的のため、本発明のいくつかの実施形態は以下の図において明らかになる。
【００１４】
【図１】図１は、ユーザによって指示されるような論理ネットワークを表す、論理ルータの構成図を示す。
【００１５】
【図２】図２は、論理ルータが分散化される態様で実施される場合の、図１の論理ネットワークの管理プレーンの範囲を示す。
【００１６】
【図３】図３は、図１の論理ルータの物理的に分散化された実施を示す。
【００１７】
【図４】図４は、論理ルータの２つの層を用いる論理ネットワークを概念的に示す。
【００１８】
【図５】図５は、論理ネットワーク内のＴＬＲが完全に分散化される場合の、図４の論理トポロジの管理プレーンの範囲を示す。
【００１９】
【図６】図６は、論理ネットワーク内のＴＬＲが集中化構成要素を有する場合の、図４の論理トポロジの管理プレーンの範囲を示す。
【００２０】
【図７】図７は、ネットワークアドレスおよび管理者によって割り当てられたインタフェースを含む、論理ネットワークトポロジのより詳細な構成を概念的に示す。
【００２１】
【図８】図８は、管理プレーンごとの図７の論理トポロジの構成を示す。
【００２２】
【図９】図９は、ユーザ仕様に基づいてＰＬＲを構成するいくつかの実施形態の処理を概念的に示す。
【００２３】
【図１０】図１０は、ユーザ仕様に基づいてＴＬＲを構成するいくつかの実施形態の処理を概念的に示す。
【００２４】
【図１１】図１１は、いくつかの実施形態のＲＩＢ生成ルールを示すために用いられる論理ネットワーク構成を概念的に示している。
【００２５】
【図１２】図１２は、図１１に示す構成に基づいて、管理プレーンによって生成される論理ネットワークを概念的に示している。
【００２６】
【図１３】図１３は、ＰＬＲのための構成情報として入力されるサウス向き（south-facing）の静的経路を処理するいくつかの実施形態の処理を概念的に示す。
【００２７】
【図１４】図１４は、ＰＬＲのために構成される静的経路とＴＬＲの組のための構成との組と、構成データに基づいて管理プレーンによって生成される、ＰＬＲのＤＲ及び３つのＳＲのための出力とを概念的に示す。
【００２８】
【図１５】図１５は、ＰＬＲのための構成情報として入力されるノース向き（north-facing）の経路を処理するいくつかの実施形態の処理を概念的に示す。
【００２９】
【図１６】図１６は、ＴＬＲがＰＬＲに取り付けられる場合に、ＰＬＲのルーティング構成物のためのＲＩＢを生成するいくつかの実施形態の処理を概念的に示す。
【００３０】
【図１７】図１７は、新たなインタフェースがＰＬＲに取り付けられる場合に、ＰＬＲのルーティング構成物のＲＩＢのための経路を生成するいくつかの実施形態の処理を概念的に示す。
【００３１】
【図１８】図１８は、本発明のいくつかの実施形態が実装される電子システムを概念的に示す。
【発明を実施するための形態】
【００３２】
いくつかの実施形態は、ネットワークにおいて（例えばデータセンタにおいて）論理ルータを実施する方法を提供する。いくつかの実施形態では、この方法は、ネットワークを集中的に管理する（例えばネットワークコントローラにおいて実施される）管理プレーンによって実行される。いくつかの実施形態では、この方法は、（例えばアプリケーションプログラミングインタフェース（ＡＰＩ）を通じて）論理ルータの定義を受信し、そして論理ルータのための複数のルーティング構成要素を定義する。これらのルーティング構成要素のそれぞれは、別個に経路の組と論理インタフェースの組とを割り当てられる。方法はまた、論理ルータのための経路の仕様と、論理ルータから他の論理ルータへの接続とを受信してもよい。いくつかの実施形態は、自動的に、どのルーティング構成要素のルーティングテーブルに受信した経路をプッシュすべきか、及び、どのように経路を伝達するかを、他の論理ルータとの接続に基づいて識別する。
【００３３】
いくつかの実施形態では、論理ルータのために定義されたいくつかのルーティング構成要素は、（以下、分散化ルータ又はＤＲとして参照される）１つの分散化ルーティング構成要素と、（以下、サービスルータ又はＳＲとして参照される）いくつかの集中化ルーティング構成要素とを含む。加えて、いくつかの実施形態の管理プレーンは、論理ルータの内部の構成要素の間の通信を処理するための論理スイッチ（通過論理スイッチとして参照される）を定義する。ＤＲと通過論理スイッチとは、データセンタ内の多数のマシンによって分散化された態様で実施される一方、ＳＲはそれぞれが単一のマシン上で実施される。いくつかの実施形態は、様々なマシン上の管理対象フォワーディング構成要素（ＭＦＥ）のデータパスにおいてＤＲ及び通過論理スイッチを実施する一方、ＳＲはその単一のマシン上の複数のＶＭ（又は他のデータ計算ノード）において実施される。他の実施形態もまた、割り当てられたマシンのデータパスにおいて集中化構成要素を実施する。
【００３４】
ある実施形態では、ＳＲはアクティブ−アクティブモード、又はアクティブ−スタンバイモードであるように構成され得る。アクティブ−アクティブモードでは、全てのＳＲが同時に完全に動作し、トラフィックは、集中化構成要素から外部ネットワークへの接続性が構成要素にわたって同一である限り、（様々なＳＲにわたるトラフィックをバランスする）等価コストマルチパス（equal-cost multi-path）（ＥＣＭＰ）フォワーディング原理を用いるＳＲを通して、論理ネットワークに進入又は退出することができる。このモードでは、別々のＳＲのそれぞれは、外部ネットワークと通信するための、自身のネットワークレイヤ（例えばＩＰ）アドレスとデータリンクレイヤ（例えばＭＡＣ）アドレスとを有する。加えて、別々のＳＲのそれぞれは、分散化ルーティング構成要素へパケットを送信するとともに分散化ルーティング構成要素からパケットを受信するために、通過論理スイッチと接続するための自身のネットワークレイヤアドレスとデータリンクレイヤアドレスとを有する。
【００３５】
いくつかの実施形態では、論理ルータは２層論理ネットワーク（two-tier logical network）構成の一部である。２層構成のいくつかの実施形態は、論理ネットワークをデータセンタの外部のネットワークに接続するための単一の論理ルータ（プロバイダ論理ルータ（provider logical router）（ＰＬＲ）として参照され、例えばデータセンタの所有者によって管理される）と、単一の論理ルータと接続し、外部ネットワークと個別に通信しない複数の論理ルータ（テナント論理ルータ（tenant logical router）（ＴＬＲ）として参照され、例えばデータセンタの異なるテナントによって管理される）とを含む。いくつかの実施形態は、可能なときはいつでもアクティブ−アクティブモードにおいてＰＬＲのＳＲを実施し、ステートフルサービス（stateful service）（例えば、ＮＡＴファイアウォール、ロードバランサ等）が論理ルータのために構成される場合にのみアクティブ−スタンバイモードを用いる。以下の説明は、主にＰＬＲのためのアクティブーアクティブモードについて説明している。
【００３６】
ＰＬＲに対して、いくつかの実施形態は外部ネットワークと経路交換を可能にする。ＰＬＲのＳＲのそれぞれは、論理ネットワークのプレフィックスをアドバタイズし、外部ネットワークへの経路を受信するために動的ルーティングプロトコル処理を実行する。データセンタ内の中枢、及び論理ネットワークを実施するマシン上の両方に置かれたネットワークコントローラのネットワーク制御システムを通して、これらの経路が他のＳＲとＤＲとに伝達される。いくつかの実施形態は、外部ネットワークから直接学習した経路と、外部ネットワークから経路を学習した、異なるピアのＳＲから学習した経路とに対して、集中化構成要素のルーティング情報ベース（ＲＩＢ）における異なる管理上の基準を用いる。従って、ＳＲは、論理ルータのピアＳＲを通じたリダイレクションを含む経路よりも、直接学習した経路を選択する。
【００３７】
論理ルータがＴＬＲである場合、いくつかの実施形態は、論理ルータに対するステートフルサービスが構成されるときには、ＳＲを用いない、或いはアクティブ−スタンバイモードの２つのＳＲを用いる。２つのＳＲのそれぞれは、同一のネットワークレイヤアドレスを有し、アクティブな構成要素のみがＡＲＰリクエストに返信する。ＰＬＲと接続するために、いくつかの実施形態はまた、２つのＳＲのそれぞれに同一のネットワークレイヤアドレス（しかし自身のＤＲと接続するために用いられるアドレスとは異なる）を割り当てる。加えて、管理プレーンは、ＰＬＲのＤＲとＴＬＲのＳＲとの間の通過論理スイッチを定義する。
【００３８】
いくつかの実施形態の管理プレーンは、追加的に、（例えば、ＤＲと各ＳＲのための）各論理ルータ構成物のためのルーティングテーブルを構成する。これらのルーティングテーブルにおける経路は、接続された論理スイッチと、ユーザ入力の静的経路と、他の論理ルータの接続に基づく動的経路と、に基づく経路を含んでよい。例えば、管理者によって論理ルータに直接接続された任意の論理スイッチは、結果的に、ＤＲのルーティングテーブルにおける接続された経路、及び、ＤＲである次ホップを有する様々なＳＲのための経路にある。
【００３９】
ユーザが静的経路を追加した場合、いくつかの実施形態は、様々な論理ルータ構成要素に静的経路を追加する様々なルールを提供する。例えば、いくつかの実施形態は、（論理ネットワーク内の次ホップを有する）下向きの静的経路を直接的に（特定された次ホップのような他の論理フォワーディング要素とインタフェースを有する）ＤＲに追加する一方で、ＳＲによってアクセス可能なＤＲのインタフェースを再度指し示す経路を、各ＳＲに追加する。構成済みの静的経路が（外部ネットワークにある、及び／又はＳＲの１つと相関する特定の出力インタフェースを特定する、次ホップを有して）上向きである場合、いくつかの実施形態は、（i）特定されたインタフェース及び／又は次ホップのアドレスに応じて経路を１つ以上のＳＲに追加し、（ii）次ホップとして各集中化構成要素のインタフェースを特定する経路をＤＲに追加する。しかしながら、いくつかの実施形態は、構成済みの静的経路がデフォルト経路である場合にはＤＲに経路を追加しない。これは、管理プレーンが、ＳＲのそれぞれを指すＤＲルーティングテーブルのための等価コストのデフォルト経路を、論理ルータの生成時に既に自動的に生成しているためである。
【００４０】
更に、ＴＬＲがＰＬＲに接続した場合、いくつかの実施形態は、ＴＬＲに接続され、外部ネットワークに（動的ルーティングプロトコルを介して）アドバタイズされるべき、任意の論理スイッチサブネットを識別する。この場合、２つの論理ルータの間の動的ルーティングプロトコルを実行するよりも、（両方の論理ルータ構成を知る）管理プレーンは、ＰＬＲがその別々の各ルーティング構成要素のための別々のルーティングテーブルを実際に有するという事実を処理する間に、自動的に経路交換を実行する。従って、管理プレーンは、（i）ＰＬＲに接続するＴＬＲのインタフェースとして次ホップを有する経路をＤＲに、（ii）ＳＲからアクセス可能なＤＲのインタフェースとして次ホップを有する経路をＳＲのそれぞれに、の両方にこれらの論理ネットワークのための経路を追加する。
【００４１】
上記は２層論理ルータの概念と、いくつかの実施形態の論理ルータの構成及び実施の所定の側面とを説明する。以下、セクションＩはいくつかの実施形態の論理ルータの全体的な高レベルの設計に焦点をあて、一方で、セクションＩＩは様々な論理ルータ構成要素の構成を説明する。そしてセクションIIIはこれらの論理ルータ構成要素のためのルーティングテーブル構成を説明する。最後に、セクションIＶは、本発明のいくつかの実施形態が実装される電子システムを説明する。
【００４２】
Ｉ．論理ルータ及び物理的な実施
【００４３】
以下の説明は、いくつかの実施形態に対する論理ルータの設計について、いくつかの実施形態のネットワークコントローラによる論理ルータの実施とともに説明する。いくつかの実施形態では、論理ルータは３つの異なる形態で存在する。これらの形態における１つ目は、ユーザ（例えばデータセンタプロバイダ又はテナント）によって定義される、ＡＰＩビュー、又は構成ビューである。２つ目のビューは、ネットワークコントローラがどのように内部的に論理ルータを定義するかについての、コントロールプレーン又は管理プレーンのビューである。最後に、３つ目のビューは、論理ルータがどのようにデータセンタ内で実際に実施されるかについての論理ルータの物理的な具体化又は実装である。すなわち、論理ルータは、ユーザが論理ルータのために構成する機能（例えばルーティング、ＮＡＴ等）の組を示す抽象化である。そして、論理ルータは、ユーザによって提供される構成に従ってネットワークコントローラによって生成される命令を用いてネットワークコントローラの組が様々なマシンに分散させる命令に基づき、データセンタ内のこれらのマシンによって実施される。
【００４４】
コントロールプレーンのビューでは、いくつかの実施形態の論理ルータは、単一のＤＲと１つ以上のＳＲとのうちの一方又は両方を含む。いくつかの実施形態において、ＤＲは、論理ルータと直接又は間接に論理的に接続するＶＭ或いは他のデータ計算ノードと直接接続する、管理対象フォワーディング構成要素（ＭＦＥ）に及ぶ。いくつかの実施形態のＤＲはまた、論理ルータが結合するゲートウェイに及ぶ。いくつかの実施形態では、ＤＲは、論理スイッチ及び、論理ルータと論理的に接続された他の論理ルータの少なくともいずれかの間における、第１ホップの分散化ルーティングに対して責務を負う。いくつかの実施形態のＳＲは、分散化された形態（例えばいくつかのステートフルサービス）で実施されないサービスを配送する責務を負う。
【００４５】
いくつかの実施形態では、分散化論理ルータの物理的な具現化は、（すなわち第１ホップルーティングのために）常にＤＲを有する。論理ルータは、（ｉ）論理ルータがＰＬＲであり、従って外部物理ネットワークに接続する場合、或いは（ｉｉ）分散化された実施を持たないように構成されたサービス（例えば、いくつかの実施形態では、ＮＡＴ、ロードバランシング、ＤＨＣＰ）を、論理ルータが有する場合、のいずれかの場合にＳＲを有する。いくつかの実施形態は、ＰＬＲ上に構成されるステートフルサービスが無い場合であっても、外部ネットワークへの接続を集中化するための実装においてＳＲを用いる。
【００４６】
Ａ．単一層論理ルータ
【００４７】
図１−図３は、分散化論理ルータの実装についての３つの異なるビューを示している。図１は、特に、ユーザによって指示されるような論理ネットワーク１００を表す、論理ルータの構成ビューを示す。図示されるように、論理ルータ１１５は、論理ルータ１１５と、２つの論理スイッチ１０５及び１１０とを含む論理ネットワーク１００の一部である。２つの論理スイッチ１０５と１１０のそれぞれは、論理ポートに接続するＶＭを有する。３つの図においてＶＭとして示すが、いくつかの実施形態において、他の種別のデータ計算ノード（例えばネームスペース等）が論理スイッチと接続することが理解されるべきである。論理ルータ１１５はまた、外部物理ネットワーク１２０に接続する２つのポートを含む。
【００４８】
図２は、論理ネットワーク１００の管理プレーンビュー２００を示している。論理スイッチ１０５と１１０は、このビューでは構成ビューと同一であるが、ネットワークコントローラは、論理ルータ１１５に対して２つのサービスルータ２０５と２１０、及び、分散化ルータ２１５と通過論理スイッチ２２０を生成している。ＤＲ２１５は、論理スイッチ１０５及び１１０のそれぞれに対するサウスバウンドインタフェースと、通過論理スイッチ２２０への（及びこれからＳＲへ通じる）単一のノースバウンドインタフェースとを含む。ＳＲ２０５及び２１０のそれぞれは、（ＤＲ２１５と通信するために使用し、所定の状況では互いに通信するために使用する）通過論理スイッチ２２０への単一のサウスバウンドインタフェースを含む。ＳＲ２０５及び２１０のそれぞれはまた、（外部ネットワークと接続する）論理ルータのアップリンクポートに対応し、従って、ＳＲのそれぞれは単一のそのようなインタフェースを有する。
【００４９】
様々なルータ構成物２０５ー２１５のノースバウンド及びサウスバウンドインタフェースの詳細な構成と、これらの通過論理スイッチ２２０との接続は以下で更に詳細に説明される。いくつかの実施形態では、管理プレーンは、ルータ構成物２０５−２１５のそれぞれのための別々のルーティング情報ベース（ＲＩＢ）を生成する。これは、管理／コントロールプレーンにおいて生成された別々のオブジェクトを有することに加えて、各ルータ構成物２０５は別々の経路を有する別々のルータとして扱われる。
【００５０】
最後に、図３は、論理ルータ１００の物理的な実装を示している。図示されるように、論理ネットワーク１００における論理スイッチ１０５と１１０の１つに接続されるＶＭのそれぞれは、ホストマシン３０５上に存在する。いくつかの実施形態において、これらのホストマシン上で動作するＭＦＥ３１０は、ホストマシン上のハイパーバイザ又は他の仮想化ソフトウェア内で動作する仮想スイッチ（例えばOpen vSwitch（ＯＶＳ）、ＥＳＸ）である。これらのＭＦＥは、論理ネットワーク１００のＶＭによって送信されるパケットに対し、論理スイッチ１０５及び１１０と論理ルータ１１５とを実装するための第１ホップのスイッチング及びルーティングを実行する。ＭＦＥ３１０（又はこれらのサブセット）はまた、他の論理ネットワークが、ホストマシン３０５上に同様に存在するＶＭを有する場合、他の論理ネットワークのための論理スイッチ（及び分散化論理ルータ）を実装してもよい。
【００５１】
２つのサービスルータ２０５と２１０のそれぞれは、異なるゲートウェイマシン３１５及び３２０上で動作する。ゲートウェイマシン３１５と３２０は、いくつかの実施形態においてホストマシン３０５と類似するホストマシンであるが、ユーザＶＭよりむしろホストＳＲである。いくつかの実施形態では、ゲートウェイマシン３１５及び３２０のそれぞれは、ＭＦＥがＤＲ２１５のためのルーティングと論理スイッチングとを処理することができるように、ＳＲとＭＦＥとを含む。例えば、外部ネットワーク１２０から送信されたパケットは、１つのゲートウェイ上のＳＲルーティングテーブルの実装によってルーティングされ得、そして同一のゲートウェイ上のＭＦＥにより、その後（ＤＲルーティングテーブルに従って）スイッチ及びルーティングされる。
【００５２】
ＳＲは、異なる実施形態では、ネームスペース内、仮想マシン内、又はＶＲＦとして実施され得る。ＳＲは、いくつかの実施形態では、任意のステートフルサービス（例えばファイアウォール）が論理ルータ上に構成されるかどうかに応じて、アクティブ−アクティブ又はアクティブ−スタンバイモードで動作してよい。ステートフルサービスが構成される場合、いくつかの実施形態は単一のアクティブＳＲのみを必要とする。いくつかの実施形態では、アクティブ及びスタンバイのサービスルータは同一の構成で提供されるが、ＭＦＥは、アクティブＳＲ（又はアクティブＳＲを有するゲートウェイマシン上のＭＦＥへ）へトンネルを介してパケットを送信するように構成される。トンネルがダウンした場合にのみ、ＭＦＥがスタンバイのゲートウェイにパケットを送信する。
【００５３】
Ｂ．多層トポロジ（Multi-Tier Topology）
【００５４】
前の例は論理ルータの単一層のみを示すものである。多層の論理ルータを有する論理ネットワークについて、いくつかの実施形態は、各レベルにおいてＤＲとＳＲの両方を、又は、上層レベルのＤＲ及びＳＲ（ＰＬＲ層）と下層レベル（ＴＬＲ層）のＤＲのみを、含み得る。図４は、いくつかの実施形態の多層論理ネットワーク４００を、論理ネットワークの異なる２つの管理プレーンのビューを示す図５及び図６とともに、概念的に示している。
【００５５】
図４は、論理ルータの２つの層を用いる論理ネットワーク４００を概念的に示している。図示されるように、論理ネットワーク４００は、レイヤ３のレベルにおいて、プロバイダ論理ルータ４０５、及びいくつかのテナント論理ルータ４１０ー４２０を含む。第１のテナント論理ルータ４１０は、論理スイッチのそれぞれに接続する１つ以上のデータ計算ノードとともに、取り付けられた２つの論理スイッチ４２５及び４３０を有する。典型的には他のＴＬＲ４１５ー４２０は（データ計算ノードと接続する）取り付けられた論理スイッチを有するが、簡単のために、第１のＴＬＲ４１０に取り付けられた論理スイッチのみを示している。
【００５６】
いくつかの実施形態では、任意の数のＴＬＲが、ＰＬＲ４０５のようなＰＬＲに取り付けられてよい。いくつかのデータセンタは、データセンタ内で実施される全てのＴＬＲが取り付けられる単一のＰＬＲのみを有してよいが、他のデータセンタは多数のＰＬＲを有し得る。例えば、大きなデータセンタは異なるテナントに対して異なるＰＬＲポリシーを用いることを望み得るか、（例えばＰＬＲのためのルーティングテーブルが非常に大きくなるために）全てのＴＬＲを単一のＰＬＲに取り付ける非常に多くの異なるテナントを有し得る。ＰＬＲのルーティングテーブルの部分は、そのＴＬＲの論理スイッチドメインの全てに対する経路を含み、従って、ＰＬＲに多数のＴＬＲを取り付けることにより、ＴＬＲに取り付けたサブネットに単純に基づく各ＴＬＲに対するいくつかの経路を生成する。図示されるように、ＰＬＲ４０５は外部物理ネットワーク４３５への接続を提供し、いくつかの実施形態は、データセンタプロバイダがこの接続を管理することができるように、ＰＬＲがそのような接続を提供することを可能にする。別々のＴＬＲ４１０ー４２０のそれぞれは、論理ネットワーク４００の一部を通して、独立に構成される（そのように選択すれば単一のテナントが複数のＴＬＲを有することができるが）。
【００５７】
図５及び図６は、ＴＬＲ４０５が集中化構成要素を含むか否かに応じて異なる、論理ネットワーク４００の取り得る管理プレーンビューを示す。これらの例では、ＴＬＲ４０５のルーティングについてはＤＲを用いて常に分散化される。しかしながら、ＴＬＲ４０５の構成がステートフルサービスの提供を含む場合、ＴＬＲの管理プレーンビュー（従って物理的な実装）は、これらのステートフルサービスのためのアクティブ及びスタンバイのＳＲを含む。
【００５８】
従って、図５は、ＴＬＲ４０５が完全に分散化される場合の、論理トポロジ４００に対する管理プレーンビュー５００を示す。簡単のため、第１のＴＬＲ４１０の詳細のみが示されているが、他のＴＬＲは、いくつかの場合にはＳＲに加えてそれぞれが自身のＤＲを有する。図２のように、ＰＬＲ４０５は、通過論理スイッチ５２５によって互いに接続されるＤＲ５０５と３つのＳＲ５１０−５２０とを含む。ＰＬＲ４０５の実装内の通過論理スイッチ５２５に加えて、管理プレーンはまた、ＴＬＲのそれぞれとＰＬＲのＤＲ５０５との間の別々の通過論理スイッチ５３０−５４０を定義する。ＴＬＲ４１０が完全に分散化される事例（図５）では、通過論理スイッチ５３０は、ＴＬＲ４１０の構成を実装するＤＲ５４５と接続する。従って、２０１５年１月３０日に出願された米国仮出願第６２／１１０，０６１号においてより詳細に説明されるように、論理スイッチ４２５に取り付けられるデータ計算ノードによって外部ネットワーク内の宛先に送信されるパケットは、論理スイッチ４２５、ＴＬＲ４１０のＤＲ５４５、通過論理スイッチ５３０、ＰＬＲ４０５のＤＲ５０５、通過論理スイッチ５２５、及びＳＲ５１０ー５２０の１つ、のパイプラインを通して処理される。いくつかの実施形態では、いくつかの実施形態の全てにおいて、通過論理スイッチ５２５及び５３０−５４０の存在及び定義は、トラブルシューティングを目的とする例外はあるものの、ＡＰＩを通してネットワークを設定するユーザ（例えば管理者）には隠される。
【００５９】
図６は、ＴＬＲ４０５が集中化構成要素を有する場合（例えば、分散化することができないステートフルサービスがＴＬＲのために定義されているため）の、論理トポロジ４００に対する管理プレーンビュー６００を示している。いくつかの実施形態では、ファイアウォール、ＮＡＴ、ロードバランシング等などのステートフルサービスは、集中化した形態でのみ提供される。しかしながら、他の実施形態は、分散化するサービスのいくつか又は全てを可能にする。前の図のように、第１のＴＬＲ４１０の詳細のみが簡単のために示されており、他のＴＬＲは、同様に定義された構成要素（ＤＲ、通過ＬＳ、及び２つのＳＲ）、又は図５の例のようにＤＲのみを有し得る。ＰＬＲ４０５は、前の図と同一の態様で、通過論理スイッチ５２５によって互いに接続されたＤＲ５０５と３つのＳＲ５１０を用いて実施される。加えて、前の例のように、管理プレーンは、ＰＬＲとＴＬＲのそれぞれの間に通過論理スイッチ５３０−５４０を置く。
【００６０】
ＴＬＲ４１０の部分的な集中化実装は、論理スイッチ４２５及び４３０が取り付けられるＤＲ６０５と、２つのＳＲ６１０及び６１５とを含む。ＰＬＲの実装のように、ＤＲと２つのＳＲのそれぞれは通過論理スイッチ６２０へのインタフェースを有する。いくつかの実施形態において、この通過論理スイッチは、スイッチ５２５と同一の目的を果たす。ＴＬＲに対し、いくつかの実施形態は、１つのＳＲがアクティブ、他がスタンバイに指定されたアクティブ−スタンバイのＳＲを実施する。従って、アクティブなＳＲが動作可能な限り、論理スイッチ４２５及び４３０の１つに取り付けられるデータ計算ノードによって送信されるパケットは、スタンバイのＳＲよりむしろアクティブなＳＲに送信される。いくつかの実施形態では、通過論理スイッチ５３０は、ＴＬＲ４１０に接続する単一のポートのみを含み、このポートは、ＳＲが動作しなくなり第２のＳＲ６１５へ接続が移動しなければ、第１のＳＲ６１０に接続する。このように、この接続は図における破線として示される。
【００６１】
上図はいくつかの実施形態の論理ルータの管理プレーンビューを示した。いくつかの実施形態では、管理者又は他のユーザは、ＡＰＩを通して（他の構成情報に加えて）論理トポロジを提供する。このデータは管理プレーンに提供され、それは（例えばＤＲ、ＳＲ、通過論理スイッチ等を定義することによって）論理ネットワークの実施を定義する。加えて、いくつかの実施形態では、ユーザは、各論理ルータ（例えば各ＰＬＲ又はＴＬＲ）をデプロイのために物理マシンの組（例えばデータセンタ内の予め定められたマシンの組）と関連付ける。純粋な分散化ルータについては、図５で実施されるＴＬＲ４０５のように、ＤＲが、論理ネットワークに接続されたデータ計算ノードと共にホスト上に存在する管理フォワーディング構成要素にわたって実施されるため、物理マシンの組は重要ではない。しかしながら、論理ルータの実施がＳＲを含む場合、これらのＳＲのそれぞれは特定の物理マシン上にデプロイされる。いくつかの実施形態では、物理マシンのグループは、（ユーザＶＭ又は、論理スイッチに取り付けられるデータ計算ノードとは対照的に）ＳＲをホストする目的のために指定されたマシンの組である。他の実施形態では、ＳＲは、ユーザデータ計算ノードと一緒にマシン上にデプロイされる。
【００６２】
ある実施形態では、論理ルータのユーザ定義は特定の数のアップリンクを含む。以下で説明されるように、アップリンクは、論理トポロジにおける論理ルータのノースバウンドインタフェースである。ＴＬＲについては、そのアップリンクはＰＬＲと接続する（一般に、アップリンクの全ては同一のＰＬＲと接続する）。ＰＬＲについては、そのアップリンクは外部ルータと接続する。いくつかの実施形態はＰＬＲのアップリンクの全てが同一の外部ルータとの接続性を有することを必要とする一方で、他の実施形態はアップリンクが外部ルータの異なる組と接続することを可能にする。ひとたびユーザが論理ルータのためのマシンのグループを選択すると、ＳＲが論理ルータのために必要である場合には、管理プレーンは、選択されたマシンのグループにある物理マシンに論理ルータのアップリンクのそれぞれを割り当てる。管理プレーンはその後、アップリンクが割り当てられる各マシン上でＳＲを生成する。いくつかの実施形態では、同一マシンに複数のアップリンクを割り当てることが可能であり、この場合、マシン上のＳＲは複数のノースバウンドインタフェースを有する。
【００６３】
上述したように、いくつかの実施形態では、ＳＲは、仮想マシン又は他のコンテナとして、又は、（例えばＤＰＤＫベースのＳＲの実施である場合には）ＶＲＦコンテキストとして、実施され得る。いくつかの実施形態では、ＳＲの実施のための選択は、論理ルータのために選択されたサービスと、どのＳＲの種別がこれらのサービスを最良に提供するか、とに基づき得る。
【００６４】
加えて、いくつかの実施形態の管理プレーンは通過論理スイッチを生成する。通過論理スイッチのそれぞれについて、管理プレーンは、論理スイッチに固有のＶＮＩを割り当て、各ＳＲ及びＤＲ上に、通過論理スイッチと接続するポートを生成し、そして、論理スイッチと接続する任意のＳＲ及びＤＲに対するＩＰアドレスを割り当てる。いくつかの実施形態は、各通過論理スイッチに割り当てられたサブネットが多数のＴＬＲ（例えばネットワークトポロジ４００）を有する論理Ｌ３ネットワークトポロジ内で固有になることを必要とし、ＴＬＲのそれぞれは自身の通過論理スイッチを有し得る。すなわち、図６では、ＰＬＲの実装内の通過論理スイッチ５２５、ＰＬＲとＴＬＲの間の通過論理スイッチ５３０−５４０、及び通過論理スイッチ６２０（及び任意の他のＴＬＲの実施内の通過論理スイッチ）のそれぞれは、固有のサブネットを必要とする。更に、いくつかの実施形態では、ＳＲは、論理空間内の例えばＨＡプロキシのようなＶＭへの接続を初期化する必要があり得る。戻りのトラフィックが機能することを保証するために、いくつかの実施形態はリンクローカルＩＰアドレスを使用しないようにする。
【００６５】
いくつかの実施形態は、多層構成において、論理ルータの接続に様々な制限を設ける。例えば、いくつかの実施形態は、任意の数の論理ルータの層（例えば、ＴＬＲの多数の層に加えて、外部ネットワークに接続するＰＬＲ層）を可能にし、他の実施形態は２層トポロジのみ（ＰＬＲに接続する１つのＴＬＲの層）を可能にする。更に、いくつかの実施形態は、各ＴＬＲが唯一のＰＬＲに接続することを可能にし、そして、ユーザによって生成された各論理スイッチ（すなわち通過論理スイッチではない）が１つのＰＬＲ又は１つのＴＬＲに接続することを可能にする。いくつかの実施形態はまた、論理ルータのサウスバウンドのポートのそれぞれが異なるサブネットになければならないという制約を追加する。従って、２つの論理スイッチは、同一の論理ルータと接続する場合に、同一のサブネットを有しないであろう。最後に、いくつかの実施形態は、ＰＬＲの異なるアップリンクが異なるゲートウェイマシン上に存在しなければならないことを必要とする。いくつかの実施形態はこれらの要件のいずれも含まないこと、又は要件の様々な異なる組み合わせを含むことが理解されるべきである。
【００６６】
ＩＩ．ＳＲ及びＤＲの構成
【００６７】
ユーザが論理ルータを（そのインタフェースと提供経路を構成することによって）構成する場合、この構成は、論理ルータのためのＳＲ及びＤＲを管理プレーンによって構成するために用いられる。例えば、図１の論理ルータ１１５は４つのインタフェース（２つは論理スイッチへのもの、２つはアップリンク）を有する。しかしながら、図２におけるその分散化された管理プレーンの実施は、それぞれが３つのインタフェースを有するＤＲと２つのインタフェースを有するＳＲと（全部で７つのインタフェース）を含む。ＩＰ及びＭＡＣアドレスと、論理ルータ構成の一部として４つのインタフェースに割り当てられる他の構成の詳細とは、論理ルータの様々な構成要素に対する構成を生成するために用いられる。
【００６８】
更に、構成の一部として、いくつかの実施形態は、論理ルータ構成要素のそれぞれに対してルーティング情報ベース（ＲＩＢ）を生成する。すなわち、管理者が単一の論理ルータのみを定義した場合であっても、いくつかの実施形態の管理プレーン及びコントロールプレーンの少なくともいずれかが、ＤＲ及びそれぞれのＳＲのための別々のＲＩＢを生成する。ＰＬＲのＳＲのために、いくつかの実施形態では、管理プレーンが初めにＲＩＢを生成するが、ＳＲの物理的実施もまた、動的なルーティングプロトコル処理（例えばＢＧＰ、ＯＳＰＦ等）を実行して局所的にＲＩＢを補う。
【００６９】
いくつかの実施形態は、論理ルータのＲＩＢ内、つまりその構成要素ルータのＲＩＢ内に複数の種別の経路を含む。いくつかの実施形態では、全ての経路は、大きい値ほど低優先度の経路の種別を示す、優先度を決定するために用いられる管理上の距離値（すなわち、同一のプレフィックスに対する２つの経路が存在する場合、より低い距離値を有する経路が用いられる）を含む。同一のプレフィックスに対する複数の経路が同一の距離値でＲＩＢにある場合、これらのプレフィックスへのトラフィックは当該異なる経路にわたって（例えば、トラフィックを同等にバランスするためのＥＣＭＰ原理を用いて）分散する。
connected (0):  論理ルータのポートに構成されるプレフィックス
static (1): 管理者／ユーザによって構成される 
management plane internal (10):  デフォルト経路−ＴＬＲがＰＬＲに接続される場合、ＰＬＲへ向かうデフォルト経路がＴＬＲのＲＩＢに追加され、論理スイッチがＴＬＲに接続される場合、ユーザはサブネットを再分散化できるようにし、サブネットがＮＡＴ化されていなければ、サブネットのＴＬＲへ向かうデフォルト経路はＰＬＲのＲＩＢに追加される
EBGP (20):  次の４つの種別は動的なルーティングプロトコルを介して学習される経路である 
OSPF internal (30) 
OSPF external (110) 
IBGP (200)。
【００７０】
いくつかの実施形態では、全ての論理ルータがＢＧＰとＯＳＰＦ経路の両方を含むとは限らず、いくつかの論理ルータが含み得ないことを理解すべきである。例えば、外部ネットワークへの接続を含まない論理ルータは、何らのルーティングプロトコルを使用し得ず、そして、いくつかの論理ルータは、ＢＧＰ及びＯＳＰＦの両方よりむしろ、１つの種別の経路共有プロトコル（route-sharing protocol）のみを実行し得る。
【００７１】
更に、いくつかの実施形態では、（動的なルーティングプロトコルを用いる）ＰＬＲのＳＲは、集中化コントローラから受信した（静的、接続済み、及び管理プレーンの内部経路を含む）ＲＩＢを、（動的ルーティングプロトコルを介して）物理ルータから学習した経路に統合する。ＳＲは、学習済み経路を再計算のために集中化コントローラに送り返すよりむしろ、経路の収束を促進するために、これらの動的経路の統合に基づいて、そのＦＩＢを内部で計算する。ＤＲに対し、いくつかの実施形態の集中化コントローラは、ＲＩＢ全体を、ＦＩＢを計算するローカルコントロールプレーンにプッシュダウン（push down）する。
【００７２】
Ａ．ＤＲの構成
【００７３】
いくつかの実施形態では、ＤＲは、常に論理ルータの実装のサウスバウンド側（すなわち、外部物理ネットワークに接するよりもむしろ、論理ネットワークのデータ計算ノードに接する）に配置される。論理ルータが集中化構成要素を有しないのでなければ、論理ルータのアップリンクはＤＲに対して構成されず、ＤＲのノースバウンドインタフェースは、代わりに論理ルータの一部である通過論理スイッチに接続する。
【００７４】
図７は、ネットワークアドレスおよび管理者によって割り当てられたインタフェースを含む、論理ネットワークトポロジ７００のより詳細な構成を概念的に示す。図示されるように、論理スイッチ７０５及び７１０は、それぞれ自身のサブネット、１．１．１．０／２４及び１．１．２．０／２４に割り当てられ、論理スイッチ７０５に取り付けられたデータ計算ノードの全ては、対応するサブネット内のＩＰアドレスを有する。論理ルータ７１５は、第１の論理スイッチ７０５へのインタフェースＬ１を有し、このインタフェースは、サブネット１．１．１．０／２４におけるデータ計算ノードに対するデフォルトゲートウェイである、１．１．１．２５３のＩＰアドレスを有する。論理ルータ７１５はまた、第２の論理スイッチ７１０へのインタフェースＬ２を有し、このインタフェースは、サブネット１．１．２．０／２４におけるデータ計算ノードに対するデフォルトゲートウェイである、１．１．２．２５３のＩＰアドレスを有する。
【００７５】
論理ルータ７１５のノースバウンド側は２つのアップリンクであるＵ１及びＵ２を有する。第１のアップリンクＵ１は、１９２．１６８．１．２５２のＩＰアドレスを有し、１９２．１６８．１．２５２のＩＰアドレスを有する第１の物理ルータ７２０と接続する。第２のアップリンクＵ２は、１９２．１６８．２．２５３のＩＰアドレスを有し、１９２．１６８．２．２５２のＩＰアドレスを有する第２の物理ルータ７２５と接続する。物理ルータ７２０及び７２５は、実際には論理ネットワークの一部ではないが、論理ネットワークを外部ネットワークに接続する。図示した例では、アップリンクのそれぞれは単一の異なる物理ルータに接続するが、いくつかの事例では、アップリンクのそれぞれが複数の物理ルータの同一の組に接続する。すなわち、Ｕ１及びＵ２の両方は、物理ルータ７２０及び７２５の両方と両方が接続する。図示された例はそのような事例ではないが、いくつかの実施形態は、アップリンク接続が同一の接続性を提供する各外部ルータを必要とする。代わりに、第１の論理ルータ７２０はサブネット１０．０．０．０／８に接続する一方で、第２のルータ７２５は両方のサブネット１０．０．０．０／８及び１１．０．０．０／８に接続する。
【００７６】
分散化構成要素を有する論理ルータに対し、いくつかの実施形態は以下のようにＤＲを構成する。サウスバウンドインタフェースは論理ルータのサウスバウンドインタフェースと同様に構成される。これらのインタフェースは、論理トポロジにおける論理スイッチ又は低レベル論理ルータと接続するものである（例えばＰＬＲのサウスバウンドインタフェースはＴＬＲと接続する）。いくつかの実施形態のＤＲは、単一のノースバウンドインタフェースが割り当てられ、これにはＩＰアドレスとＭＡＣアドレスが割り当てられる。論理ルータが１つ以上のＳＲを有することを想定した場合、ＤＲのノースバウンドインタフェースは通過論理スイッチと接続する。
【００７７】
ＤＲのＲＩＢは、様々なサウスバウンド及びノースバウンドインタフェースに構成されたサブネットに基づいて、接続される経路を割り当てられる。（ｉ）論理ルータのＤＲ及びＳＲ構成要素の間に構成される通過論理スイッチ、及び（ｉｉ）そのサウスバウンドインタフェース上の任意の論理スイッチ、に対して構成されるサブネットが存在する。サウスバウンドインタフェース上の論理スイッチは、データ計算ノードが接続するユーザ定義の論理ドメイン、又は、ＰＬＲのＤＲとＰＬＲに接続する任意のＴＬＲとの間に配置される通過論理スイッチであってよい。
【００７８】
更に、論理ルータのアップリンクから出る任意の静的経路は、ＤＲのＲＩＢに含まれるが、これらの経路は、次ホップのＩＰアドレスがアップリンクのＳＲのそれに設定されるように修正される。例えば、静的経路「a.b.c.0/24 via 192.168.1.252」（１９２．１６８．１．２５２は外部物理ネットワークルータのアドレス）は、「a.b.c.0/24 via [ＳＲサウスバウンドインタフェースのＩＰ]」に修正される。反対に、論理ルータのサウスバウンドから出る静的経路は、修正されないＤＲのＲＩＢに含まれる。いくつかの実施形態では、論理ルータの各ＳＲに対して、種別管理プレーン内部のデフォルト経路がＤＲのＲＩＢに追加される。他の実施形態では、代わりに、特定のＳＲによって学習される動的経路が、特定のＳＲのサウスバウンドのＩＰとして修正される次ホップのＩＰアドレスとともにＲＩＢに追加される。これはデフォルト経路に対する代替であり、これは管理プレーン内部種別が、さもなければＳＲによって学習された動的経路よりも高い優先度を有するためである。しかしながら、いくつかの実施形態では、ＴＬＲに対して、ＳＲは動的ルーティングプロトコルを実行しないため、アクティブなＳＲのインタフェースを指す次ホップＩＰアドレスを有するデフォルト経路が代わりに用いられる。
【００７９】
図８は、管理プレーンによる論理トポロジ７００の構成８００を示している。図示されるように、論理スイッチ７０５と７１０とは、ユーザ設定によって指定されたように構成される。以前の例のように、論理ルータ７１５は、ＤＲ８０５と、２つのＳＲ８１０及び８１５と、通過論理スイッチ８２０とを含む。ＤＲは、論理ルータ７０５の２つのサウスバウンドインタフェースが割り当てられ、これらは論理スイッチ７０５及び７１０に接続する。通過論理スイッチは、サブネット１９２．１６８．１００．０／２４が割り当てられ、これは、論理ルータ７０５に（直接的に又は間接的に）論理的に接続する論理スイッチのなかで固有であるという要件を満たす必要がある。３つの管理プレーンルータ構成物８０５−８１５のそれぞれはまた、通過論理スイッチに接続されるインタフェースを含み、当該通過論理スイッチのサブネット内のＩＰアドレスを有する。サウスバウンドインタフェースＵ１及びＵ２は、２つのＳＲ８１０及び８１５に割り当てられ、その構成は以下で説明する。
【００８０】
ＲＩＢの生成のために上述したいくつかの実施形態のルールを使用することにより、ＤＲ８０５のＲＩＢは以下の経路を含む：
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
【００８１】
上記経路は、ＤＲに接続された論理スイッチドメイン（１．１．１．０／２４、１．１．２．０／２４及び１９２．１６８．１００．０／２４）に対する３つの接続された経路を含む。更に、第１のアップリンクが配置されるサブネット（１９２．１６８．１．０／２４）は、第１のＳＲ８１０（ＩＰ１）のサウスバウンドインタフェースを介して到達される一方、第２のアップリンクが配置されるサブネット（１９２．１６８．２．０／２４）は、第２のＳＲ８１５（ＩＰ２）のサウスバウンドインタフェースを介して到達される。更に、３つの静的経路がユーザによって論理ルータ７１５に対して追加され、これは管理プレーンが自動的にＤＲ８０５のために修正する。具体的に、経路は、両方のＳＲのサウスバウンドインタフェースを介するネットワーク１０．０．０／８と、ＳＲ２のサウスバウンドインタフェースを介するネットワーク１１．０．０／８とを含む。最後に、これらの同一のサウスバウンドインタフェースを指すデフォルト経路が含まれる。論理ルータのポートに対して管理プレーンによって生成されたＩＰアドレスＩＰ１、ＩＰ２及びＩＰ３は、全てがサブネット１９２．１６８．１００．０／２４にある通過論理スイッチを有するインタフェースを構築する。
【００８２】
Ｂ．ＳＲの構成
【００８３】
論理ルータのＤＲと同様、管理プレーンは、別々のＲＩＢとインタフェースを用いて論理ルータの各ＳＲも構成する。上述したように、いくつかの実施形態では、ＰＬＲとＴLRの両方のＳＲはサービス（すなわち、ＮＡＴ、ファイアウォール、ロードバランシング等のような単なるルーティングを超えた機能）を実現し、ＰＬＲのためのＳＲは、論理ネットワークと外部物理ネットワークの間の接続も提供する。ある実施形態では、ＳＲの実施はいくつかの目的を達成するように設計される。第１に、実施は、サービスがスケールアウトすることを保証する。すなわち、論理ルータに割り当てられたサービスは、論理ルータのいくつかのＳＲのいずれかによって実現され得る。第２に、いくつかの実施形態は、サービスポリシーがルーティング決定に依存し得るように、ＳＲを構成する（例えば、インタフェースベースのＮＡＴ）。第３に、（いくつかの実施形態では低下したキャパシティ下で又は最適以下の態様でＳＲは動作することができるが）論理ルータのＳＲは、集中化コントロールプレーン又は管理プレーンの関与を要求することなく、自身の機能不全（例えば、ＳＲが動作する物理マシンの機能不全、物理マシンへのトンネルの機能不全等）を扱う機能を有する。最後に、ＳＲは、理想的には、自身の中での不必要なリダイレクトを排除する。すなわち、ＳＲは、内部でパケットを転送する機能を有する場合、パケットを外部物理ネットワークへ転送しなければならず、必要なら異なるＳＲへのパケットのみを転送する。もちろん、ＳＲ間での転送はパケットループを回避しなければならない。
【００８４】
図８に示したように、各ＳＲは、ＳＲとＤＲの間にある通過論理スイッチ８２０へ接続する、１つのサウスバウンドインタフェースを有する。更に、いくつかの実施形態では、各ＳＲは、論理ルータのように同数のノースバウンドインタフェースを有する。すなわち、１つのアップリンクのみがＳＲの動作する物理マシンに割り当てられ得るが、論理ルータインタフェースの全てがＳＲ上で定義される。しかしながら、これらのインタフェースのいくつかはローカルインタフェースである一方、これらのインタフェースのいくつかはダミーインタフェースとして参照される。
【００８５】
いくつかの実施形態では、ローカルノースバウンドインタフェースは、パケットがＳＲから（直接物理ネットワークへ）直接出ることが可能なインタフェースである。ＳＲに割り当てられたアップリンク（又は複数のアップリンクの１つ）に基づいて構成されるインタフェースは、ローカルインタフェースである。一方、異なるＳＲに割り当てられた論理ルータの他のアップリンクの１つに基づいて構成されるインタフェースは、ダミーインタフェースとして参照される。ダミーインタフェースのための構成を有するＳＲを提供することは、第１ホップのＭＦＥが、アップリンクのいずれかに対するパケットをいずれかのＳＲに送信できるようにし、このとき、パケットがそのローカルインタフェースを宛先としていない場合であっても、ＳＲはパケットを処理することができる。いくつかの実施形態は、ＳＲの１つにおいてダミーインタフェースに対するパケットを処理した後に、インタフェースがローカルである、適切なＳＲへパケットを転送して、他のＳＲが外部物理ネットワークへパケットを送信できるようにする。ダミーインタフェースの使用は、ネットワークを管理する集中化コントローラ（又はコントローラの組）が、ルーティング決定に依存するサービスポリシーを全てのＳＲにプッシュできるようにし、これによりサービスは任意のＳＲによって配送できるようになる。
【００８６】
以下のセクションＩＶで説明するように、いくつかの実施形態では、ＳＲは（例えば、ＢＧＰ又はＯＳＰＦのような経路アドバタイズメントプロトコルを用いて）物理ネットワークとルーティング情報を交換する。経路交換の１つの目的は、どのＳＲが物理ネットワークへのパケットをルーティングするかにかかわらず、ルーティング決定が常に、ＳＲのローカルインタフェースか、異なるＳＲ上の論理ルータのアップリンクに対応するダミーインタフェースのいずれかに向けられることである。従って、論理ルータのアップリンクに関連付けられたポリシーは、アップリンクがＳＲに割り当てられていない場合であっても、当該ＳＲによって適用され得、これはステートフルサービスのスケールアウトを可能にする。いくつかの実施形態では、ピアＳＲから受信した経路が、物理的な次ホップのルータから直接学習した経路より大きな距離値を有することにより、ＳＲが物理ネットワークルータへ直接パケットを送信できないときにのみ、ＳＲがそのピアＳＲへパケットを送信することを保証する。
【００８７】
１つ以上の集中化構成要素を有する論理ルータに対し、いくつかの実施形態は以下のようにＳＲを構成する。ノースバウンドインタフェースに対して、ＳＲは論理ルータと同数のそのようなインタフェースを有し、これらの各インタフェースは、対応する論理ルータインタフェースのＩＰ及びＭＡＣアドレスを継承する。これらのインタフェースのサブセットは（ＳＲに割り当てられるアップリンクのための）ローカルインタフェースとしてマークされる一方、残りのインタフェースはダミーインタフェースとしてマークされる。いくつかの実施形態では、論理ルータのために定義されたサービスポリシーは全てのＳＲに対して均等にプッシュされる。これはサービスポリシーがネットワーク及びインタフェースの観点から同様に構成されるためである。特定の論理ルータのポート／アップリンクのための動的ルーティング構成は、その特定のアップリンクが割り当てられたＳＲのローカルインタフェースに転送される。
【００８８】
述べたように、各ＳＲは、通過論理スイッチに接続する単一のサウスバウンドインタフェース（ローカルインタフェースでもある）を割り当てられ、ここで各ＳＲのサウスバウンドインタフェースは同一の通過論理スイッチに接続されている。これらのサウスバウンドインタフェースのそれぞれのＩＰアドレスは、ＤＲに割り当てられたノースバウンドインタフェース（通過論理スイッチのそれ）と同一のサブネット内にある。いくつかの実施形態は、ＳＲがアクティブ−アクティブ又はアクティブ−スタンバイモードであるかに応じて、ＳＲの間のＩＰアドレスの割り当てを異ならせる。アクティブ−アクティブモード（すなわちＳＲの全てがルーティング目的において平等に扱われる場合）に対しては、異なるＩＰ及びＭＡＣアドレスが全てのＳＲのサウスバウンドインタフェースに割り当てられる。一方、アクティブ−スタンバイモードに対しては、２つのＳＲのサウスバウンドインタフェースの両方に同一のＩＰが用いられる一方、インタフェースのそれぞれは異なるＭＡＣアドレスが割り当てられる。
【００８９】
ＤＲについての上記サブセクションで示したように、ユーザは論理ルータに対して静的経路を構成し得る。アップリンクから出る論理ルータの静的経路（又は接続された経路）は、ＳＲのＲＩＢにコピーされる。経路が出るアップリンクがＳＲに割り当てられる場合、このような経路に対する距離基準は修正されない。しかしながら、ＳＲのアップリンクがダミーインタフェースである場合、いくつかの実施形態は、ダミーインタフェースを通して、異なるＳＲへパケットをリダイレクトすること無くネットワークに到達できるときに、ＳＲがそのローカルインタフェースから出る経路を優先するように、この基準に値を追加する。更に、（トップレベルの論理ルータの）ＳＲは動的経路を学習して、動的経路をＲＩＢに置く（いくつかの実施形態はこれを内部で集中化コントローラを用いることなく実行するが）。いくつかの実施形態では、ピアＳＲから学習された動的経路は、距離基準の調整なしにインストールされる。これは、デフォルトではＩＢＧＰ（ＳＲからＳＲピアへ）又はＯＳＰＦから学習された経路に対する基準が、ＥＢＧＰから学習された経路に対する基準より大きいためである。
【００９０】
論理ルータのサウスバウンドインタフェースのそれぞれに対し、いくつかの実施形態は、各ＳＲのＲＩＢに対応するネットワークのための経路を追加する。この経路は、その次ホップのＩＰアドレスとしてノースバウンドのＤＲインタフェースを指す。更に、サウスバウンドインタフェースから出る、論理ルータのために構成された任意の他の経路は、次ホップのＩＰアドレスとして同一のノースバウンドのＤＲインタフェースとともにＳＲにコピーされる。
【００９１】
図８の例に戻り、論理ルータ７１５が２つのアップリンクを有するように、管理プレーンは２つのサービスルータ８１０と８１５とを定義する。第１のサービスルータ８１０は、Ｕ１に対するローカルインタフェースと、Ｕ２’として参照されるＵ２に対するダミーインタフェースとを有する。同様に、第２のサービスルータ８１５は、Ｕ２に対するローカルインタフェースと、第１のアップリンクＵ１に対するダミーインタフェースＵ１’とを有する。これらのダミーインタフェースの機能は、これらのインタフェースが他のＳＲへパケットをリダイレクトするために用いられるものとして上述されている。これらのＳＲのそれぞれには、（ＳＲがアクティブ−アクティブ構成であるように）異なるＩＰアドレスおよびＭＡＣアドレスを有するサウスバウンドインタフェースが割り当てられる。（第１のＳＲ８１０に対する）ＩＰアドレスＩＰ１及び（第２のＳＲ８１５に対する）ＩＰ２は、ＩＰ３（ＤＲ８０５のノースバウンドインタフェース）のように、サブネット１９２．１．１００．０／２４にある。
【００９２】
いくつかの実施形態のルールを用いて、かつ、ルーティングプロトコル（例えばＢＧＰ）がＳＲに対して有効化されているとすると、第１のＳＲ８１０のＲＩＢは以下の経路を含む。
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 (管理プレーン内) 
【００９３】
同様に、第２のＳＲ８１５のＲＩＢは以下の経路を含む。 
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 (管理プレーン内) 
【００９４】
Ｃ．管理プレーン処理
【００９５】
図９は、ユーザ仕様に基づいてＰＬＲを構成するいくつかの実施形態の処理９００を概念的に示す。いくつかの実施形態では、処理９００は管理プレーン（例えば、データセンタのネットワークを管理する集中化コントローラにおけるモジュールの組）によって実行される。管理プレーンは、構成処理を実行し、その後、コントローラの集中化コントロールプレーン（又は異なるネットワークコントローラ）を用いて、構成された論理ルータを実施する様々なホストマシン上の様々なローカルコントロールプレーンにデータを分散させる。
【００９６】
図示するように、処理９００はＰＬＲの仕様を（９０５において）受信することによって開始する。ＰＬＲの仕様は、ＰＬＲを定義する管理者入力（データセンタの所有者によって雇用された管理者）に基づく。いくつかの実施形態では、この仕様は、ＰＬＲが提供すべき任意のサービスの定義、ＰＬＲがアクティブ−アクティブ又はアクティブ−スタンバイモードで構成されるかどうか（もっとも、いくつかの実施形態はステートフルサービスが構成されない限り自動的にアクティブ−アクティブモードを用いる）、ＰＬＲにいくつのアップリンクが構成されるか、アップリンクのＩＰ及びＭＡＣアドレス、アップリンクのＬ２及びＬ３接続性、ＰＬＲの任意のサウスバウンドインタフェースのサブネット（ＰＬＲを２層トポロジにする場合は１つのインタフェースであり、ユーザの論理スイッチが１層トポロジで直接接続する場合は任意の数のインタフェース）、ＰＬＲのＲＩＢに対する任意の静的経路、及び他のデータを含む。異なる実施形態が、ＰＬＲの構成データに列挙されたデータの異なる組み合わせ又は他のデータを含み得ることは理解されるべきである。
【００９７】
そして処理９００は、（９１０において）この構成データを用いてＤＲを定義する。これは、ＰＬＲが完全に集中化しない場合には管理プレーンによってＤＲは生成されないことを想定している。ＤＲのサウスバウンドインタフェースについて、管理プレーンは、ＰＬＲのサウスバウンドインタフェース構成を用いる。すなわち、ＤＲのＩＰアドレスとＭＡＣアドレスとは、論理ルータのために特定されたものになる。
【００９８】
更に（９１５において）処理は、ＰＬＲのために特定されたアップリンクのそれぞれをゲートウェイマシンに割り当てる。上述したように、いくつかの実施形態は、論理ルータのＳＲの位置に対する物理ゲートウェイマシンの特定の組を、ユーザが特定できるようにする（或いは特定することを求める）。いくつかの実施形態では、ゲートウェイマシンの組はサーバの特定のラック又はサーバのラックのグループ内、若しくはそうでなければ関連付けられて、組の中で全てのマシンを接続するトンネルとともに存在する。その後、管理プレーンは、選択された組のゲートウェイマシンの１つに各アップリンクを割り当てる。いくつかの実施形態は、複数のアップリンクが同一のゲートウェイマシンに割り当てられるようにし（論理ルータがアクティブ−スタンバイモードで構成される２つのアップリンクのみを有しない限り）、一方で他の実施形態は、アクティブ−アクティブ又はアクティブ−スタンバイモードであるかに関わらずＰＬＲのためのゲートウェイに対して単一のアップリンクのみが割り当てられるようにする。
【００９９】
ゲートウェイマシンにアップリンクを割り当てた後に、（９２０において）処理９００は、２つのゲートウェイマシンのそれぞれの上にＳＲを定義する。各ＳＲについて、処理はゲートウェイマシンに対して割り当てられたアップリンクに対する構成を、ＳＲのノースバウンドインタフェースに対する構成として使用する。この構成情報は、任意のアップリンク特有のポリシーに加えて、アップリンクのＩＰ及びＭＡＣアドレスを有する。異なるポリシー及びＬ３の接続性の少なくともいずれかが許容され、異なるアップリンクの間で使用される状況では、いくつかの実施形態はまた、必要に応じてパケットをリダイレクトするためにＳＲ上にダミーインタフェースを構成する、ことが理解されるべきである。
【０１００】
処理は更に、（９２５において）定義されたＳＲ及びＤＲと接続する通過論理スイッチを定義する。いくつかの実施形態において、管理プレーンは、固有のＶＮＩ（論理スイッチ識別子）を通過論理スイッチに割り当てる。更に、いくつかの実施形態は、通過論理スイッチに割り当てられたサブネットが論理ネットワークトポロジ内で固有であることを必要とする。すなわち、通過論理スイッチは、ＰＬＲと直接インタフェースを有する任意のユーザ定義の論理スイッチ、ＰＬＲに接続される任意のＴＬＲとＰＬＲとの間の通過論理スイッチ、これらのＴＬＲ内の全ての通過論理スイッチ、及び、これらのＴＬＲに接続される任意のユーザ定義の論理スイッチと異なるサブネットを用いなくてはならない。
【０１０１】
次に、処理９００は、（９３０において）ＤＲにノースバウンドインタフェースを割り当てる。いくつかの実施形態では、ノースバウンドインタフェースは（ＰＬＲの構成要素の間で内部的に送信されるパケットに用いられる）ＭＡＣアドレス及びＩＰアドレスの両方を割り当てられる。いくつかの実施形態では、ＩＰアドレスは、９２５において定義された通過論理スイッチに割り当てられたサブネット内のものである。通過論理スイッチの構成は、このＭＡＣアドレスとその論理ポートの１つとの関連を含む。
【０１０２】
その後処理は（９３５において）、ＰＬＲがアクティブ−アクティブモード（或いはアクティブ−スタンバイモード）で構成されるかを判定する。いくつかの実施形態では、上で言及したように、この判定は、ＰＬＲに対する構成設定の一部として管理者によってなされる。他の実施形態では、管理プレーンは、ステートフルサービスが設定されていない場合には、ＰＬＲに対してＳＲを自動的にアクティブ−アクティブ構成で定義する。そして、ステートフルサービスが設定されている場合には、ＳＲはアクティブ−スタンバイモードで定義される。
【０１０３】
ＰＬＲがアクティブ−スタンバイモードで構成される場合、処理は（９４０において）、２つのＳＲ（又は、複数のスタンバイがある場合には２つ以上のＳＲ）のそれぞれのサウスバウンドインタフェースを割り当てる。アクティブ−スタンバイの場合、これらの全てのサウスバウンドインタフェースは同一のＩＰアドレスを有し、これは動作９２５において定義される通過論理スイッチのサブネット内にある。２つのインタフェースは同一のＩＰアドレスを受けつけるが、ＤＲによってルーティングされるノースバウンドのパケットに対する宛先として当該２つを異ならせるように、異なるＭＡＣアドレスを割り当てる。
【０１０４】
その後処理は（９４５において）、ＳＲの１つをアクティブに、ＳＲの１つをスタンバイに割り当てる。いくつかの実施形態は、この決定をランダムに行わせる一方で、他の実施形態はゲートウェイマシンにまたがるＳＲのアクティブ及びスタンバイの割り当てがバランスするように試みる。より詳細は米国特許公報２０１５／００６３３６４号に記載されている。アクティブとして割り当てられたＳＲは、サウスバウンドインタフェースに対するＡＲＰリクエストに応答し、ノースバウンドインタフェースから外部物理ネットワークへプレフィックスをアドバタイズする。一方、スタンバイＳＲは（ノースバウンドのトラフィックを受信することを避けるため）ＡＲＰリクエストに対して応答せず、プレフィックスをアドバタイズしない（しかし、アクティブなＳＲの機能不全の場合に外部ネットワークから経路を受信するためにＢＧＰセッションを維持する）。
【０１０５】
最後に、処理９００は（９５０において）ＤＲ及び各ＳＲのための別々のＲＩＢを生成する。別々のＲＩＢは、前のサブセクションとセクションＶに示す形式の構成データに基づいて生成される。その後処理は終了する。いくつかの実施形態では、管理プレーンはまたＦＩＢを集中的に算出する一方、他の実施形態では、（ホスト及びゲートウェイマシン上で動作する）ローカルコントロールプレーンは、論理ルータ構成要素による実際のパケットのフォワーディングにおいて用いるためのＦＩＢを生成するためにＲＩＢトラバーサルを実行する。いずれの場合も、ＲＩＢは外部ネットワークから学習された動的な経路に基づいてＳＲ上で更新され、このデータは中央コントローラを介してＤＲへ伝達される。いくつかの実施形態の、ネットワークコントローラによるＦＩＢの計算は、２０１４年３月１４日に出願された米国特許出願１４／２１４，５４５号に、より詳細に説明されている。
【０１０６】
一方、ＰＬＲがアクティブ−アクティブ（ＥＭＣＰ）モードで構成される場合、処理は（９５５において）、ＳＲのそれぞれにサウスバウンドインタフェースを割り当てる。アクティブ−アクティブの場合、これらのサウスバウンドインタフェースは、異なるＭＡＣアドレスに加えて、動作９２５において定義される通過論理スイッチのサブネット内にある異なるＩＰアドレスが割り当てられる。異なるＩＰアドレスにより、ＳＲのそれぞれは、ホストマシン内のＤＲパイプラインによって所定のパケットに対して選択されたＩＰアドレスに基づいて、ノースバウンドのパケットを処理することができる。
【０１０７】
次に、処理は（９６０において）、ＳＲにランクを割り当てる。詳細を以下に示すように、ＳＲは、機能不全の際に、どのＳＲが停止したＳＲの責務を引き継ぐかを決定するためのランクを用いる。いくつかの実施形態では、次に最も高くランクされたＳＲは、そのサウスバウンドインタフェースを引き継ぐことによって停止したＳＲを引き継いで、さもなければ停止したＳＲのＩＰアドレスへ送信されるノースバウンドのトラフィックを引き込む。
【０１０８】
最後に、処理は（９６５において）ＤＲ及び各ＳＲのための別々のＲＩＢを生成する。別々のＲＩＢは、前のサブセクションとセクションＩＶに示す形式の構成データに基づいて生成される。その後処理は終了する。いくつかの実施形態では、管理プレーンはまたＦＩＢを集中的に算出する一方、他の実施形態では、（ホスト及びゲートウェイマシン上で動作する）ローカルコントロールプレーンは、論理ルータ構成要素による実際のパケットのフォワーディングにおいて用いるためのＦＩＢを生成するためにＲＩＢトラバーサルを実行する。いずれの場合も、ＲＩＢは外部ネットワークから学習された動的な経路に基づいてＳＲ上で更新され、このデータは中央コントローラを介してＤＲへ伝達される。
【０１０９】
上記図９の記載は、ＰＬＲ（上層論理ルータ）のための様々な構成要素を生成するための管理プレーンの動作を示している。図１０は、ユーザ仕様に基づいてＴＬＲを構成するいくつかの実施形態の処理１０００を概念的に示している。いくつかの実施形態では、処理１０００は管理プレーン（例えば、データセンタのネットワークを管理する集中化コントローラにおけるモジュールの組）によって実行される。管理プレーンは、構成処理を実行し、その後、コントローラの集中化コントロールプレーン（又は異なるネットワークコントローラ）を用いて、構成された論理ルータを実施する様々なホストマシン上の様々なローカルコントロールプレーンにデータを分散させる。
【０１１０】
図示するように、処理はＴＬＲの仕様を（１００５において）受信することによって開始する。ＴＬＲの仕様は、ＴＬＲを定義する管理者入力（データセンタのテナントによって雇用された管理者）に基づく。いくつかの実施形態では、この仕様は、ＴＬＲが提供すべき任意のサービスの定義、どのＰＬＲにＴＬＲがそのアップリンクを通じて接続すべきか、ＴＬＲに接続する任意の論理スイッチ、ＴＬＲのインタフェースのＩＰ及びＭＡＣアドレス、ＴＬＲのＲＩＢに対する任意の静的経路、及び他のデータを含む。異なる実施形態が、ＴＬＲの構成データに列挙されたデータの異なる組み合わせ又は他のデータを含み得ることは理解されるべきである。
【０１１１】
そして処理１０００は、（１０１０において）ＴＬＲが集中化構成要素を有するかを判定する。いくつかの実施形態では、ＴＬＲがステートフルサービスを提供しない場合、そのときはＴＬＲに対するＳＲが定義されず、これは分散化される形態でのみ実施される。一方、いくつかの実施形態は、この図に示すように、ステートフルサービスが提供される場合、アクティブ−スタンバイモードにおけるＳＲを必要とする。
【０１１２】
ＴＬＲがステートフルサービスを提供しない又はそうでなければ集中化構成要素を必要とする場合、処理は（１０１５において）、サウスバウンド及びノースバウンドインタフェースの両方に対する論理ルータの仕様を用いてＤＲを定義する。ＤＲは、ＴＬＲに接続する論理スイッチがいくつ定義されるかに応じて、多数のサウスバウンドインタフェースを有し得る。一方、いくつかの実施形態は、ＴＬＲを、ＰＬＲにパケットを送信し及びＰＬＲからパケットを受信する単一のノースバウンドインタフェースに制限する。次に、処理は、（１０２０において）ＤＲのためのＲＩＢを生成する。ＤＲのためのＲＩＢは、上述のように生成された論理ルータのための経路の全てを含む。
【０１１３】
一方、ＴＬＲがステートフルサービスを提供する、又は他の理由で集中化構成要素を要求する場合、処理は（１０２５において）、受信した構成データを用いてＤＲを定義する。ＤＲのサウスバウンドインタフェースについて、管理プレーンは、ＴＬＲのサウスバウンドインタフェース構成を用いる。すなわち、各サウスバウンドインタフェースに対するＩＰアドレスとＭＡＣアドレスとは、様々な論理スイッチが接続する論理ルータのポートのために特定されたものになる。
【０１１４】
更に（１０３０において）処理は、ＴＬＲのために特定されたアップリンクのそれぞれを２つのゲートウェイマシンに割り当てる。いくつかの実施形態はＴＬＲが複数のアップリンクとアクティブ−アクティブモードで動作できるようにするが、処理１０００は、アクティブ−スタンバイモードにおいて単一のアップリンク（リンクがＴＬＲを他の論理ルータに相互接続するものとして、ルータリンクとしても参照される）にＴＬＲを制限する実施形態に対するものである。上述したように、いくつかの実施形態は、論理ルータのＳＲの位置に対する特定の組の物理ゲートウェイマシンを、ユーザが特定できるようにする（或いは特定することを求める）。いくつかの実施形態では、ゲートウェイマシンの組はサーバの特定のラック又はサーバのラックのグループ内、若しくはそうでなければ関連付けられて、組の中で全てのマシンを接続するトンネルとともに存在する。その後、管理プレーンは、選択された組のゲートウェイマシンの２つにアップリンクを割り当てる。
【０１１５】
ゲートウェイマシンにアップリンクを割り当てた後に、（１０３５において）処理１０００は、２つのゲートウェイマシンのそれぞれの上にＳＲを定義する。各ＳＲについて、管理プレーンは、単一のアップリンクに対する構成を、ＳＲのノースバウンドインタフェースに対する構成として使用する。唯一のノースバウンドインタフェースを有するため、処理はＳＲの両方に対して同一の構成を適用する。すなわち、同一のＩＰアドレスが両方のノースバウンドインタフェースに用いられるだけでなく、インタフェース上のサービスも同様の方法で構成される。しかしながら、アクティブＳＲとスタンバイＳＲとを異ならせるように、異なるＭＡＣアドレスがノースバウンドインタフェースに用いられる。
【０１１６】
処理は更に、（１０４０において）定義されたＳＲ及びＤＲと接続する通過論理スイッチを定義する。いくつかの実施形態において、管理プレーンは、固有のＶＮＩ（論理スイッチ識別子）を通過論理スイッチに割り当てる。更に、いくつかの実施形態は、通過論理スイッチに割り当てられたサブネットが論理ネットワークトポロジ内で固有であることを必要とする。すなわち、管理プレーンは、通過論理スイッチに、ＴＬＲとインタフェースを有する任意のユーザ定義の論理スイッチと、ＴＬＲ（又は他のＴＬＲ）とＰＬＲとの間の任意の通過論理スイッチと、同一のＰＬＲに接続する他のＴＬＲ内の全ての通過論理スイッチと、ＰＬＲ内の通過論理スイッチと、他のＴＬＲに接続するユーザ定義の論理スイッチと、異なるサブネットを通過論理スイッチに割り当てなければならない。
【０１１７】
次に、処理は、（１０４５において）ＤＲへのノースバウンドインタフェースを割り当てる。いくつかの実施形態では、このインタフェースは（ＴＬＲの構成要素の間で内部的に送信されるパケットに用いられる）ＭＡＣアドレス及びＩＰアドレスの両方を割り当てられる。いくつかの実施形態では、ＩＰアドレスは、９４０において通過論理スイッチに割り当てられた同一のサブネット内のものである。処理はまた、（１０５０において）２つのＳＲのそれぞれのサウスバウンドインタフェースを割り当てる。これはアクティブ−スタンバイ構成であるので、これらのサウスバウンドインタフェースは同一のＩＰアドレスを有し、これは動作９４０において定義される通過論理スイッチのサブネット内にある。２つのインタフェースは同一のＩＰアドレスを受けつけるが、ＤＲによってルーティングされるノースバウンドのパケットに対する宛先として当該２つを異ならせるように、割り当てられるＭＡＣアドレスは異なる。
【０１１８】
その後処理１０００は（１０５５において）、ＳＲの１つをアクティブに、ＳＲの１つをスタンバイに割り当てる。いくつかの実施形態は、この決定をランダムに行わせる一方で、他の実施形態はゲートウェイマシンにまたがるＳＲのアクティブ及びスタンバイの割り当てがバランスするように試みる。アクティブとして割り当てられたＳＲは、サウスバウンドインタフェース（このＴＬＲのＤＲから）及びノースバウンドインタフェース（ＰＬＲのＤＲから）に対するＡＲＰリクエストに応答する。一方、スタンバイＳＲは（ノースバウンド又はサウスバウンドのトラフィックを受信することを避けるため）ＡＲＰリクエストに応答しない。
【０１１９】
最後に、処理は（１０６０において）ＤＲ及び各ＳＲのための別々のＲＩＢを生成する。別々のＲＩＢは、前のサブセクションと以下のセクションＩＶに示す形式の構成データに基づいて生成される。いくつかの実施形態では、管理プレーンはまたＦＩＢを集中的に算出する一方、他の実施形態では、（ホスト及びゲートウェイマシン上で動作する）ローカルコントロールプレーンは、論理ルータ構成要素による実際のパケットのフォワーディングにおいて用いるためのＦＩＢを生成するためにＲＩＢトラバーサルを実行する。いずれの場合も、ＲＩＢは外部ネットワークから学習された動的な経路に基づいてＳＲ上で更新され、このデータは中央コントローラを介してＤＲへ伝達される。
【０１２０】
ＴＬＲがＳＲを有して生成されたかＳＲを有しないで生成されたかに関わらず、処理１０００は（１０６５において）、ＴＬＲとＴＬＲが接続するＰＬＲとの間に他の通過論理を定義する。この通過論理スイッチは、固有のＶＮＩと、ＴＬＲのアップリンクＩＰアドレスが属すサブネットとを有する。更に、ＰＬＲのＤＲ上のインタフェースは、通過論理スイッチに接続するために同一のサブネット内に生成される。その後処理は終了する。
【０１２１】
処理９００及び１０００はこれらの様々な動作を実行する特定の順序を示しているが、これらの処理は単なる概念的なものであることが理解されるべきである。様々な異なる実施形態において、管理プレーンは、実際の動作を、様々な異なる順番で又はいくつかの動作を並行して実行し得る。例えば、管理プレーンは、少しでもＳＲやＤＲを定義するより前に、初めに通過論理スイッチを定義し、別々の物理マシンに割り当てる前に完全に論理ルータ構成要素の全てを定義することができる。
【０１２２】
ＩＩＩ．ルーティングテーブル構成
【０１２３】
上述したように、いくつかの実施形態では、管理プレーンは論理ルータ構成を受信して、（i）各論理ルータに対する１つ以上の論理ルータ構成物と（ii）各論理ルータ構成物のためのルーティング情報ベース（ＲＩＢ）とを生成する。様々な異なる実施形態において、ＲＩＢからフォワーディング情報ベース（ＦＩＢ）の計算は、管理プレーンによって、若しくは集中化又はローカルコントロールプレーンによって、実行されてよい。例えば、いくつかの実施形態において、ＲＩＢは、ＳＲ又はＤＲを実装する各マシンに分散化され、当該マシン上で動作するローカルネットワークコントローラは、ＦＩＢを計算するために経路トラバーサルを実行する。このセクションでは、いくつかの実施形態における、様々な論理ルータ構成物のためのＲＩＢを生成するためのルールがより詳細に説明される。経路は、論理スイッチの、論理ルータへの接続、互いの論理ルータの接続、又は（論理ルータ構成の一部として受信した）静的経路の入力、からくるものであってよい。
【０１２４】
図１１は、いくつかの実施形態のＲＩＢ生成ルールを示すために用いられる、より複雑な論理ネットワーク構成１１００を示している。具体的に、論理ネットワーク構成１１００は、取り付けられた論理スイッチ１１２０を有するＰＬＲ１１０５であって、２つのＴＬＲ１１１０及び１１１５も取り付けられたＰＬＲ１１０５を含む。第１のＴＬＲ１１１０は取り付けられた２つの論理スイッチ１１２５及び１１３０を有し、第２のＴＬＲ１１１５は取り付けられた２つの論理スイッチ１１３５及び１１４０を有する。ＰＬＲ１１０５は、３つのアップリンクＵ１−Ｕ３を用いて構成され、Ｕ１は１．１．３．２のＩＰアドレスを有し、外部物理ルータ１．１．３．１に接続される。Ｕ２は、１．１．４．２のＩＰアドレスを有し、同一のサブネット上の、１．１．４．１及び１．１．４．１１のＩＰアドレスを有する、２つの外部物理ルータと接続する。Ｕ３は、Ｕ２と同一のＬ３接続性を有する同一のサブネット上にあり、１．１．４．２１のＩＰアドレスを有する。ＰＬＲはまた、３つのサウス向きインタフェースを有し、論理スイッチ１１２０に対するもの（１．１．０．１のＩＰアドレスを有し、論理スイッチ１１２０のサブネット１．１．０．０／２４内）と、ＴＬＲ１１１０及び１１１５のためのＤ１及びＤ２のそれぞれ１つとを有する。いくつかの実施形態では、ＴＬＲをＰＬＲに取り付けるユーザ（すなわちＴＬＲの所有者）はこのインタフェースを構成しない。代わりに、続く図１２の管理プレーンビューに示されるようになる。
【０１２５】
いくつかの実施形態では、データセンタの管理者は、ＰＬＲ（すなわちアップリンクとその接続性）と第１の論理スイッチ１１２０を構成する。第１のテナントは、第１のＴＬＲ１１１０と２つの論理スイッチ１１２５及び１１３０を構成する一方、第２のテナントは、独立的に、第２のＴＬＲ１１１５と２つの論理スイッチ１１３５及び１１４０を構成する。他の実施形態では、（例えば、エンタプライズネットワークの場合には）単独の管理者が論理ネットワーク１１００全体を構成する。異なるユーザが異なる論理ルータを設定する場合、いくつかの実施形態は、様々な論理スイッチ１１２０−１１４０のために利用可能なサブネットを制限して、ＩＰアドレスがパブリックになる（例えばアップリンクＵ１−Ｕ３を介して外部ネットワークにアドバタイズする）場合に、異なるサブネットが論理スイッチのそれぞれに対して使用されることを確実にする。いくつかの実施形態は、論理スイッチが、ＩＰアドレスが外部に（同一のＰＬＲに接続する他のＴＬＲへも含む）アドバタイズされない限り、サブネットを再使用することができるようにする。
【０１２６】
図１２は、図１１に示す構成（ＡＰＩを介したユーザによる入力として）に基づいて、管理プレーンによって生成される論理ネットワーク１１００を概念的に示している。この場合、ＴＬＲ１１１０及び１１１５のいずれもステートフルサービスを含まず、従って、ＳＲはＴＬＲに対して必要とされない。前のセクションにおいて説明されたように、ＴＬＲ１１１０及び１１１５は、それぞれＤＲ１２０５及び１２１０を含む。論理スイッチが接続するＴＬＲのサウス向きポートは、論理ネットワーク構成１１００内のＴＬＲに与えられる（例えば１．１．５．１、１．１．６．１等）ＩＰアドレスと同一の（取り付けられたこれらの論理スイッチのサブネット内の）ＩＰアドレスが割り当てられる。更に、ＴＲＬとＰＬＲとの間の接続のそれぞれに対し、管理プレーンは、通過論理スイッチを割り当てるとともに、これらの論理スイッチ上のＤＲ１２０５及び１２１０にノース向きインタフェースのＩＰアドレスを割り当てる。いくつかの実施形態では、これらの通過論理スイッチのそれぞれは２つのアドレスのみを必要とするため、管理プレーンは常に、ＩＰアドレススペースを浪費しないように、サブネットのプールから／３１のサブネットを割り当てる。この場合、第１の通過論理スイッチ１２１５は１９２．１６８．１０．０／３１のサブネットを有する一方、第２の通過論理スイッチ１２２０は、隣のサブネット１９２．１６８．１０．２／３１を有する。
【０１２７】
管理プレーンはまた、ＤＲ１２２５と、ＰＬＲ１１０５のための（それぞれのアップリンクのための）３つのＳＲ１２３０−１２４０とを定義する。ＤＲ１２２５は、管理プレーンによって定義される４つのインタフェースＰ１に加えて、（前セクションにおいて説明したように）ＰＬＲ１１０５の３つのサウス向きインタフェースを有する。このインタフェースＰ１は、３つのＳＲ１２３０−１２４０のサウス向きインタフェースにも接続する、サブネットの１６９．０．０．０／２８を有する通過論理スイッチ１２４５と接続する。これらの４つのインタフェースＰ１−Ｐ４は、順に、１６９．０．０．１、１６９．０．０．２、１６９．０．０．３及び１６９．０．０．４のＩＰアドレスを有する。
【０１２８】
図１３、１５、１６及び１７は、（例えば集中化ネットワークコントローラにおける）管理プレーンによって実行される、論理ルータ構成データをいくつかの実施形態におけるＤＲ及びＰＬＲのＳＲのためのＲＩＢに変換する、いくつかの実施形態の様々な処理を概念的に示している。具体的には、図１３及び図１５がＰＬＲのための静的経路の異なる種別の取り扱いを説明する一方、図１６は、ＴＬＲのＰＬＲへの接続とＰＬＲ構成物のための経路を生成する動的ルーティング処理とに対する取り扱いを説明し、そして図１７は、ＰＬＲ上の新たな論理インタフェース（外部ネットワークへのアップリンクと、ＴＬＲ又は論理スイッチへのダウンリンクとの両方）の生成を説明する。いくつかの実施形態では、これらの処理は、管理プレーン（例えば、データセンタのネットワークを管理する集中化コントローラにおけるモジュールの組）によって実行される。管理プレーンは、構成処理を実行し、その後、コントローラ（又は異なるネットワークコントローラ）の集中化コントロールプレーンを用いて、論理ルータ構成物を実装する様々なホストマシン上の様々なローカルコントロールプレーンにデータを分散させる。これらの処理は、部分的に、図１１及び１２に示した論理ネットワーク１１００と、図１４に示した経路構成入力及びＲＩＢ出力とを参照することによって説明される。
【０１２９】
図１３は、ＰＬＲのため（例えばＰＬＲ１１０５のため）の構成情報として入力されるサウス向きの静的経路を処理するいくつかの実施形態の処理１３００を概念的に示す。図示するように、処理１３００は、（１３０５において）論理ネットワークにおける次ホップを有する静的経路を受信することによって開始する。いくつかの実施形態では、静的経路は、ルーティングされるプレフィックス、経路の次ホップ（又はゲートウェイ）、及び、ある場合には経路を出力するインタフェース、とともに入力される。使用時には、プレフィックスと一致する（且つより長いプレフィックスを有する経路とは一致しない）送信先ＩＰアドレスを有する任意のパケットが、所与の次ホップアドレスへ所与のインタフェースを介して出力される。次ホップが、ＰＬＲに取り付けられた論理スイッチのサブネットの１つにある、又はＰＬＲに取り付けられたＴＬＲに取り付けられた論理スイッチのサブネットの１つにある場合、そのときの経路は、論理ネットワーク内の次ホップを有するサウス向き経路である。
【０１３０】
図１４は、ＰＬＲ１２０５のために構成される静的経路の組１４０５と、以下に図１６を参照して説明されるＴＬＲのための構成とを概念的に示している。この図はまた、この構成データに基づいて、管理プレーンによってＤＲと３つのＳＲのために生成される出力１４００を示す。この出力は、ＤＲ１２２５のためのＲＩＢ１４１０、及び、３つのＳＲ１２３０−１２４０のためのＲＩＢ１４１５−１４２５を含む。図示されるように、ＰＬＲのために構成される静的経路の組１４０５は、１．１．０．２へ送信される、サブネット２．２．２．０／２４内の送信先アドレスを有する全てのパケットを特定する、サウス向き経路（2.2.2.0/24 via 1.1.0.2）を含む。このアドレスは、論理スイッチ１１２０に取り付けられるＶＭに属す。
【０１３１】
そのような経路を受信した場合、処理１３００は、（１３１０において）経路をＰＬＲのＤＲのＲＩＢに、修正すること無く追加する。すなわち、ＤＲのＲＩＢに追加された経路の次ホップは、構成データにおいて特定された次ホップと同一である。図１４に示す例では、構成された経路2.2.2.0/24 via 1.1.0.2（ＲＩＢ内にリストされる第４の経路）は、ＤＲのためのＲＩＢ１４１０に、修正すること無く追加される。
【０１３２】
処理１３００はまた、ＤＲのノース向きインタフェースを有する各ＳＲのＲＩＢに、（何ら出力インタフェースを削除すること無く）経路を次ホップとして追加する。すなわち、特定されたプレフィックスのための経路は、ＳＲのサウス向きインタフェースと同一の通過論理スイッチに接続するＤＲインタフェースのものである次ホップとともに、（外部物理ネットワークから特定のＩＰアドレスに送信されるパケットを取り扱うために）ＳＲのそれぞれに追加される。論理ネットワーク１１００では、これは１６９．０．０．１のＩＰアドレスを有するインタフェースＰ１である。そのようなものとして、各ＲＩＢ１４１５−１４２５は経路2.2.2.0/24 via 169.0.0.1を有する。ＰＬＲのための論理ルータ構成物のそれぞれのＲＩＢに経路を追加した後に、処理１３００は終了する。いくつかの実施形態では、ＳＲが再帰的な経路を推定する機能を有する限り、管理プレーンは、経路を修正するよりもむしろ修正すること無く、サウス向き静的経路をＳＲのＲＩＢに追加する。このような実施形態では、この例の管理プレーンは、ひとたび経路がトラバースされれば、経路1.1.0.0/24 via 169.0.0.1が結果としてＳＲのＦＩＢにおける正しい結果となるであろうことを認識したうえで、経路2.2.2.0/24 via 1.1.0.2を追加する。
【０１３３】
処理１３００がサウス向き静的経路を取り扱うために使用されるのに対し、図１５は、ＰＬＲのため（例えばＰＬＲ１１０５のため）の構成情報として入力されるノース向き経路を処理するいくつかの実施形態の処理１５００を概念的に示す。いくつかの実施形態では、処理１３００と１５００とは、経路がサウス向きであるかノース向きであるかについての処理によってなされる決定に応じて実行される異なる動作を有する、実際には単一のソフトウェア処理の一部である。
【０１３４】
図示するように、処理１５００は、外部物理ネットワーク向きの次ホップを有する静的経路を（１５０５において）受信することによって開始する。このとき、次ホップが、外部物理ネットワークへの論理ネットワークに対する接続性を提供する物理ルータのものである場合には、その経路は、外部物理ネットワーク向きの次ホップを有するノース向き経路である。ＰＬＲのために構成される静的経路の組１４０５は、３つの異なる、プレフィックス０．０．０．０／０（すなわちデフォルト経路）のための経路、１７２．１６．０．０／１６のための経路、及び１０．０．０．０／８のための経路を含む、多数のノース向き経路を含む。これらの経路のそれぞれは、外部ルータ（すなわち１．１．３．１、１．１．４．１及び１．１．４．１１のひとつ）に属す次ホップを特定する。
【０１３５】
そして処理は、（１５１０において）出力インタフェースが経路のために特定されたかを判定する。上述したように、いくつかの実施形態では、構成済みの静的経路は次ホップのアドレスを含み、そしてある場合には、論理ルータのインタフェースを介した、サブネット内の送信先アドレスを有する出力パケットがルーティングされる。ＰＬＲ構成データ１４０５に経路が現れる限り、（０．０．０．０／０に対する）３つのデフォルト経路は出力インタフェースを特定する。特に、これらの経路は、３つのノース向きインタフェースＵ１、Ｕ２及びＵ３のそれぞれのための次ホップの物理ルータを示す。
【０１３６】
経路が出力インタフェースを特定する場合、処理は、特定されたインタフェースに関連付けられるＳＲを（１５１５において）識別する。いくつかの実施形態では、前セクションにおいて説明されたように、異なるＳＲは、ＰＬＲのアップリンクのそれぞれに対して割り当てられる。例えば、論理ネットワーク１１００の例では、ＰＬＲ１１０５のアップリンクＵ１、Ｕ２及びＵ３は、３つのＳＲ１２３０、１２３５及び１２４０にそれぞれ関連付けられる。
【０１３７】
その後処理１５００は（１５２０において）、識別されたＳＲのＲＩＢに経路を追加する。経路によって処理されるノースバウンドのパケットは他のＳＲへ送信されるべきではないため、経路は他の任意のＳＲには追加されない。従って、図１４の例では、経路0.0.0.0/0 via 1.1.3.1 output to U1は、出力インタフェースＵ１が所有する、第１のＳＲ１２３０のためのＲＩＢ１４１５にのみ追加される。同様に、経路0.0.0.0/0 via 1.1.4.1 output to U2は、第２のＳＲ１２３５のためのＲＩＢ１４２０にのみ追加され、経路0.0.0.0/0 via 1.1.4.11 output to U3は、第３のＳＲ１２４０のためのＲＩＢ１４２０にのみ追加される。
【０１３８】
一方、経路が出力インタフェースを特定しない場合、処理は、特定された次ホップへの接続性を有する全てのＳＲを（１５２５において）識別する。全てのＳＲが同等のＬ３接続性を有する場合（例えば、全てのアップリンクが同一の物理ルータの組と接続する）、これはＳＲの全てとなる。しかしながら、ある場合には、管理者は異なるＬ３接続性を有するＰＬＲのアップリンクを構成してもよく、この場合、いくつかのＳＲは特定の経路のための次ホップへの接続性を有しないかもしれない。
【０１３９】
そして処理は、識別されたＳＲのそれぞれのためのＲＩＢに経路を（１５３０において）追加する。ＰＬＲ構成１４０５は、特定された出力インタフェースを有しない２つの静的経路を含む。そのような経路の１つ目は、次ホップアドレス１．１．３．１を有するプレフィックス１７２．１６．０．０／１６に対する経路である。この場合、ＳＲ１２３０のみが次ホップへの接続性を有するため、管理プレーンはこの第１のＳＲのためのＲＩＢ１４１５にのみ経路を追加する。この経路はＲＩＢ１４２０及び１４２５には追加されない。他の経路は、次ホップの１．１．４．１を有するプレフィックス１０．０．０．０／８に対する経路である。アップリンクの２つ（Ｕ２及びＵ３）はこの次ホップへの接続性を有するため、経路は、ＳＲ１２３５及び１２４０のそれぞれのＲＩＢ１４２０及び１４２５に追加され、ＲＩＢ１４１５には追加されない。
【０１４０】
１つ以上のＳＲに経路を追加することに加えて、プロセス１５００はまた、いくつかの場合においてＤＲに経路を追加する。具体的に、処理は、（１５３５において）経路がデフォルト経路であるかを判定する。いくつかの実施形態では、デフォルト経路は、プレフィックス０．０．０．０／０（すなわちＩＰｖ４のアドレス空間全体）のための経路である。最も長いプレフィックスのマッチングシステムでは、このような経路は、パケットがルーティングテーブル内のあらゆる他の経路と一致しない場合に用いられる。論理ネットワークのエンドマシン（例えばＶＭ）が、インターネット経由でマシンにアクセスするリモートクライアントのためのサーバとして動作する場合、そのときは、デフォルト経路が返信用通信のためにしばしば用いられる。
【０１４１】
経路がデフォルト経路である場合、処理１５００はＤＲに一切経路を追加せず、処理を終了する。このように、例では、３つのデフォルト経路はＤＲに追加されない。しかしながら、いくつかの実施形態では、ＰＬＲのための複数の論理ルータ構成物を生成する構成の一部として、管理プレーンは常にＤＲにデフォルト経路を追加する。これは、（ＥＣＭＰ原理を用いて）何らかのＳＲに一致しない限りパケットを送信する。従って、ＤＲ１２２５のためのＲＩＢ１４１０は、デフォルト経路0.0.0.0/0 via 169.0.0.2, 169.0.0.3, 169.0.0.4（３つのＳＲのサウス向きインタフェースＰ２−Ｐ４のアドレス）を含む。この経路は３つのＳＲのいずれか１つにパケットを送信する。
【０１４２】
非デフォルト静的経路に対して、処理は、経路の追加された各ＳＲに対する、次ホップとしてＳＲのサウス向きインタフェースを有する経路をＤＲに（１５４０において）追加する。処理１５００はその後終了する。例えば、経路172.16.0.0/16 via 1.1.3.1のみが第１のＳＲ１２３０のためのＲＩＢ１４１５に追加された。そのときは、この経路は、172.16.0.0/16 via 169.0.0.2（Ｐ２のアドレス、第１のＳＲ１２３０のサウス向きインタフェース）としてＤＲ１２２５のためのＲＩＢ１４１０に追加される。一方、経路10.0.0.0/8 via 1.1.4.1は、ＲＩＢ１４２０及び１４２５に追加された。このときは、管理プレーンは、２つの次ホップを有する経路をＤＲのためのＲＩＢ１４１０に、10.0.0.0/8 via 169.0.0.3, 169.0.0.4として追加する。例えば、１０．０．１．１の送信先ＩＰアドレスを有するパケットは、ＥＣＭＰ原理がＤＲの実装によってどのように適用されるかに応じて、ＳＲ１２３５及び１２４０のいずれかに送信される。
【０１４３】
図１４において把握されるように、論理ルータのための様々な論理ルータ構成物に対するＲＩＢは、静的経路に加えて他の経路を含むだろう。これらの経路は、様々な論理スイッチがルータ構成物に接続される、接続された経路を含む。例えば、ＤＲ１２２５は４つの論理スイッチ、すなわち、３つの通過論理スイッチ１２１５、１２２０及び１２４５と、ユーザ生成論理スイッチ１１２０とに接続される。これらのそれぞれに対し、（次ホップよりむしろ）出力インタフェースを有する経路がＤＲに追加される。従って、ＲＩＢ１４１０は、経路1.1.0.0 output to D3 （ユーザ生成論理スイッチ用）、経路192.168.10.0/31 output to D1 and 192.168.10.2/31 output to D2（ＰＬＲとＴＬＲの間の通過論理スイッチ用）、及び、経路169.0.0.0/28 output to P1（ＰＬＲ内部の通過論理スイッチ用）を含む。いくつかの実施形態では、ＳＲは、ＰＬＲ内部の通過論理スイッチのための接続された経路（例えば、同一のＲＩＢ１４１５のための169.0.0.0/28 output to P2）を有する。しかしながら、ＳＲは、この例内としてのいくつかの実施形態では、外部Ｌ２接続性のための接続された経路を有しなくてよい。しかしながら、他の実施形態では、管理者によってＬ２接続性が構成された場合、ＳＲはそのような接続された経路（例えば、第１のＳＲ１２３０のＲＩＢ１４１５用の1.1.3.0/24 output to U1、及び他の２つのＳＲ１２３５及び１２４０のＲＩＢ１４２０及び１４２５用の1.1.4.0/24 output to U2/U3）を含む。更に、各アップリンクインタフェースＩＰ（１．１．３．２、１．１．４．２及び１．１．４．２１）に対し、いくつかの実施形態は、次ホップが対応するＳＲのサウスバウンドインタフェースである、これらの特定の「／３２」ＩＰアドレスのための経路（すなわち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）をＤＲへ自動的に挿入する。いくつかの実施形態はまた、図示するように、再び次ホップが対応するＳＲのサウスバウンドインタフェースである、アップリンクがＤＲのＲＩＢに接続するサブネットのための経路（すなわち1.1.3.0/24 via 169.0.0.2及び1.1.4.0/24 via 169.0.0.3, 169.0.0.4）を挿入する。
【０１４４】
加えて、ＰＬＲの論理ルータ構成物は、他の論理ルータ（例えばＴＬＲ）の接続性に基づいて管理プレーンによって動的に生成された経路を含んでよい。図１６は、ＴＬＲがＰＬＲに取り付けられる場合に、ＰＬＲのルーティング構成物のためのＲＩＢを生成するいくつかの実施形態の処理１６００を概念的に示す。論理ルータ構成物情報は管理プレーンによって既知である（例えばネットワークコントローラの組）ため、いくつかの実施形態は、論理ネットワーク内で経路を交換するＢＧＰ又は同様の動的なルーティングプロトコルを実行しないようにすることができる（上述したように、ＢＧＰ／ＯＳＰＦは外部物理ネットワークに経路をアドバタイズするために用いられてよい）。
【０１４５】
図示するように、処理１６００は、ＰＬＲのサウスバウンドインタフェースへのＴＬＲノースバウンドインタフェースの接続を（１６０５において）受信することによって開始する。いくつかの実施形態では、ＴＬＲの所有者（データセンタのテナント）が管理プレーンAPIを介してこれを構成データとして入力する。テナントはそのような接続を特定するＰＬＲのためのインタフェース情報を必要としなくてよい。代わりに、テナントはＴＬＲに接続するようリクエストし、管理プレーンは自動的に、（例えば利用可能なサブネットのプールから）これらの間の通過論理スイッチを、ＴＬＲノースバウンドインタフェース及びＰＬＲサウスバウンドインタフェースとともに生成する（これらのインタフェースが通過論理スイッチに取り付けられたサブネット内のIPアドレスであることを確実にする）。図１１の論理ネットワーク１１００では、ユーザがＴＬＲ１１１０と１１１５とをＰＬＲ１１０５に取り付けた（場合により別々のアクションとして）ところである。
【０１４６】
そして処理は、取り付けられたＴＬＲからの任意の経路を（１６１０において）識別する。ＴＬＲは、その論理スイッチのそれぞれのために接続された経路を有する。加えて、ＴＬＲはまた、ある実施形態において、ユーザによって構成された静的経路を含んでよい。しかしながら、他の実施形態では、ＴＬＲユーザが静的経路を構成しなくてもよく、或いは、静的経路が動的ルーティングを介してＰＬＲへ伝達されなくてもよい（例えば、異なるテナントが同一のアドレスに対する異なる経路を構成しなくてもよいため）。加えて、いくつかの実施形態では、テナントは、これらの論理スイッチサブネットがアドバタイズされるべきか（すなわち、これらのサブネットがＴＬＲの外部と（他のＴＬＲのサウスのマシン又は論理ネットワークの外部のマシンのいずれかと）通信するかどうか）を特定してよい。図１４の例では、第１のＴＬＲ１１１０は、そのサブネット１．１．５．０／２４及び１．１．６．０／２４の両方にアドバタイズする一方で、第２のＴＬＲ１１１５は、その２つのサブネットのうちの１つの１．１．７．０／２４にのみアドバタイズする（１．１．８．０／２４にはアドバタイズしない）。
【０１４７】
その後処理１６００は、ＤＲとＳＲへのこれらの経路を伝達する。図示するように、処理は、ＴＬＲのノースバウンドインタフェースを次ホップとして有する（ＰＬＲの）ＤＲに識別された経路を（１６１５において）追加する。この例では、ＴＬＲ１１１０及び１１１５は完全に分散しており、そのため、これらのノースバウンドインタフェースはＴＬＲのＤＲ１２０５及び１２１０に属す。従って、ＰＬＲのＤＲ１２２５のＲＩＢ１４１０は、１９２．１６８．１０．１（ＤＲ１２１５のノースバウンドインタフェース）の次ホップアドレスを有する１．１．５．０及び１．１．６．０のための経路、及び、１９２．１６８．１０．３（ＤＲ１２１０のノースバウンドインタフェース）の次ホップアドレスを有する１．１．７．０のための経路を含む。ＴＬＲがステートフルサービスを含む場合、そのときはＳＲのノースバウンドインタフェースは（アクティブースタンバイモードにおいて）同一のＩＰアドレスを有し、これはＰＬＲのＤＲにおける経路のために用いられる次ホップＩＰアドレスになる。
【０１４８】
処理はまた、次ホップＩＰアドレスとしての（ＰＬＲの）ＤＲのノースバウンドインタフェースを用いて、識別された経路を（ＰＬＲの）各ＳＲに（１６２０において）追加する。その後処理は終了する。例では、ＲＩＢ１４１５−１４２５のそれぞれは、全てが１６９．０．０．１（すなわちＰ１のアドレス）の次ホップＩＰアドレスを有する、１．１．５．０、１．１．６．０及び１．１．７．０のための経路を含む。従って、これらのサブネットのそれぞれに対し、サブネット内の送信先アドレスを有する外部ネットワークから受信されるパケットは、受信するＳＲからＤＲへ、続いてＤＲから適切なＴＬＲへ送信される。
【０１４９】
図１７は、上述したように、新たなインタフェースがＰＬＲに取り付けられる場合に、ＰＬＲのルーティング構成物のＲＩＢのための経路を生成するいくつかの実施形態の処理１７００を概念的に示す。具体的に、この処理は（ＴＬＲ接続のために処理１６００によって追加される動的な経路とは対照的に）接続された経路と他のＰＬＲの内部の経路を参照する。この新たなインタフェースは、新たなアップリンク又はダウンリンク（すなわち論理スイッチ又はＴＬＲへの接続）でありうる。
【０１５０】
図示するように、処理はＰＬＲのための新たなインタフェースを（１７０５において）受信することによって開始する。いくつかの実施形態では、ＰＬＲの所有者が管理プレーンAPIを介してこれを構成データとして入力する。加えて、いくつかの実施形態は、新たなＴＬＲがＰＬＲに接続するようにリクエストした場合、ダウンリンクを自動的に生成する。処理はそして、インタフェースが外部ネットワークに向いているか（すなわち、インタフェースが（外部ネットワークに向いている）アップリンクであるか、又は、（ＴＬＲ接続のための論理スイッチ又は通過論理スイッチに向いている）ダウンリンクであるか）を（１７１０において）判定する。
【０１５１】
インタフェースがダウンリンクである場合、処理は、（勿論、ＤＲへのインタフェース自身のために接続された経路に加えて）ＤＲのノース向きインタフェースとして次ホップを有する、インタフェースが接続するサブネットのための経路を、ＰＬＲの各ＳＲに（１７１５において）追加する。従って、図１４の例では、ＳＲのＲＩＢ１４１５−１４２５のそれぞれが、１６９．０．０．１（ＤＲ１２２５のノース向きインタフェース）の次ホップを有する１．１．０．０／２４（論理スイッチＬＳ１のサブネット）のための経路を含む。
【０１５２】
加えて、ダウンリンクの生成が、以前に無効にされた静的経路を管理プレーンが利用可能にできるようにしてもよい。いくつかの実施形態では、存在しないインタフェースを指す静的経路が論理ルータのために格納されるが、無効化される（従って、様々な論理ルータ構成物のＲＩＢに経路として追加されない）。インタフェースがその後生成された場合、処理１７００は、そのような現在無効化された経路のそれぞれに対し、（i）経路をＤＲのＲＩＢに、そして（ii）ＤＲのノース向きインタフェースとしての次ホップを有する対応する経路を各ＳＲのＲＩＢに、（１７２０において）追加する。
【０１５３】
一方、新たなインタフェースがアップリンク（外部ネットワークを向いている）である場合、処理１７００は、上述したように、アップリンクに対して必要であれば新たなＳＲを（１７２５において）生成する。処理はまた、ＳＲのサウス向きインタフェースとして次ホップを有する、新たなインタフェースが接続するサブネットのための経路をＤＲに（１７３０において）追加する。処理はまた、ＳＲのサウス向きインタフェースとしても次ホップを有する、新たなアップリンクインタフェースのＩＰアドレスのための経路をＤＲに（１７３５において）追加する。例えば、図１４では、ＤＲがインタフェース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のそれぞれのための経路を有する。加えて、いくつかの実施形態では、ＤＲは、これらのインタフェースのそれぞれが接続するサブネットのための同様の経路を有するだろう。
【０１５４】
最後に、新たなインタフェース上の次ホップを有する経路のそれぞれ（例えば、外部ルータを指す静的経路）に対し、処理は、（１７４０において）新たなインタフェースのための経路をＳＲに追加し、ＤＲ上の経路を更新する。例えば、ＤＲ上のデフォルト経路は、（他のＳＲを指すデフォルト経路と等しい優先順を有する）新たなＳＲのサウス向きインタフェースをも指すように生成され、そして、新たなインタフェースを介してアクセスし得る外部物理ルータインタフェースを指す外部ネットワークのための任意の静的経路は、（例えば処理１５００に従って）ＳＲ及びＳＲに追加された、対応する経路を有するであろう。
【０１５５】
いくつかの状況では、構成データが変化し、結果として管理プレーンが様々な論理ルータ構成物のＲＩＢを修正してもよい。例えば、（例えば通過論理スイッチのための利用可能なサブネットのプールが修正されたために）ＴＬＲアップリンクのＩＰアドレスが変化した場合、このときは、管理プレーンは、このサブネット内の次ホップを有するＤＲ経路を修正しなければならない。いくつかの実施形態では、これらは、ＴＬＲからアドバタイズされたサブネットに基づく任意の経路（例えば、上記例では、経路1.1.5.0 via 192.168.10.1）であるとともに、新たに修正されたインタフェースのために接続された経路（例えば、上記例では、経路192.168.10.0/31 output to D1）である。同様に、論理ルータのための内部の通過論理スイッチが変化する場合、そのときは、当該ネットワークのための様々の論理ルータ構成物上の接続された経路が変更され、そして、（ノース向きＤＲインタフェース及びサウス向きＳＲインタフェースがこの変更の結果として変更された場合）ＤＲとＳＲとの間の内部経路が修正されるだろう。
【０１５６】
加えて、管理者は、ＰＬＲポートのＩＰアドレスを変更してもよい。この修正されたポートが（例えば、例における論理スイッチ１１２０のような、論理スイッチに接続する）ダウンリンクである場合、その論理スイッチのための接続された経路は自動的に修正されるだろう。しかしながら、ネットワーク内の次ホップを有する任意の静的経路が存在する場合、いくつかの実施形態は構成の修正を許可しない。他の実施形態は、構成の変更を許可しながら代わりに当該静的経路を無効化する。
【０１５７】
修正されたＰＬＲポートがアップリンクである場合、そのときは、（接続された経路が外部のＬ２接続性のために用いられない限り、及び、この接続性が変化しない限り）ＲＩＢ内の自動生成された経路はいずれも修正される必要はない。しかしながら、外部ルータにアドバタイズされる経路の次ホップＩＰアドレスが変更されなければならないため、外部ネットワークとのＢＧＰピアリング(BGP peering)は修正される必要があってもよい。更に、ＰＬＲ上で構成された静的経路は、ＳＲの新たな組に送信され得る。例えば、第１のＳＲ１２３０がアドレス１．１．４．４を有するように修正され、第２及び第３の外部ルータ（アドレス１．１．４．１及び１．１．４．１１）に接続された場合、静的経路10.0.0.0/8 via 1.1.4.1はまた第１のＳＲ１２３０のためのＲＩＢ１４１５に追加される一方で、静的経路172.16.0.0/16 via 1.1.3.1について問題となり得る（この変化した構成は許可されず、また、この静的経路は無効化されない）。
【０１５８】
動作中には、管理者はアップリンク（及び対応するＳＲ）を追加又は削除し得る。アップリンクを追加した場合、管理プレーンは、上記方法（例えば、ＤＲにデフォルト等価コスト経路を追加する、及び、ＰＬＲに接続される論理スイッチ、又は、経路アドバタイズメントのために選択された接続されたＴＬＲからの論理スイッチに基づく任意の経路を追加すること）で説明されたように、ＤＲ及び新たなＳＲに経路を追加する。更に、いくつかの実施形態では、ＰＬＲのために構成された静的経路は、アップリンクのＬ３接続性に応じて、（上述した同一の方法において）新たなＳＲのＲＩＢに追加される必要があってもよい。アップリンク（及びＳＲ）が削除される場合、いくつかの実施形態では、管理プレーンがまず、インタフェースベースの経路（interface-based routes）（例えば、出力インタフェースとしてアップリンクを特定する経路）が、ＳＲ及びアップリンクの削除によって影響を受けるＰＬＲのために構成されていないことを確認する。更に、ＳＲにパケットを送信するための等価コストデフォルト経路がＤＲから削除され、内部通過論理スイッチ上のポートが削除され、結果としてＳＲを指すＤＲの経路である任意の静的経路もまたＤＲから削除される。
【０１５９】
ＩV．電子システム
【０１６０】
上述の多くの特徴及び適用例は、コンピュータで読み出し可能な記録媒体（コンピュータで読み出し可能な媒体としても参照される）上に記録された命令の組として特定されるソフトウェア処理として実施され得る。これらのプログラムの命令が１つ以上の処理ユニットによって実行される場合（例えば、１つ以上のプロセッサ、プロセッサのコア、又は他の処理ユニット）、これらのプログラムの命令は、命令に示されているアクションを（複数の）処理ユニットに実行させる。コンピュータで読み出し可能なメディアの例は、これに限定されないが、ＣＤ−ＲＯＭ、フラッシュドライブ、ＲＡＭチップ、ハードドライブ、ＥＰＲＯＭ等を含む。コンピュータで読み出し可能なメディアは、キャリア波及び、無線又は有線接続を通過する電子信号を含まない。
【０１６１】
本明細書では、「ソフトウェア」の語は、読出専用メモリにあるファームウェア、又は磁気記録に格納されたアプリケーションを含み、プロセッサによる処理のためにメモリに読み込むことができる。また、いくつかの実施形態では、複数のソフトウェア発明は、個別のソフトウェア発明を維持する一方で、より大きなプログラムのサブ部分として実施されてもよい。いくつかの実施形態では、複数のソフトウェア発明はまた、個別のプログラムとして実施されてもよい。最後に、ここで説明されるソフトウェア発明をともに実施する個別のプログラムの任意の組み合わせは、発明の範囲内である。いくつかの実施形態では、ソフトウェアプログラムが、１以上の電子システムを動作させるためにインストールされる場合、１以上の特定の機械的実施を定義し、ソフトウェアプログラムの動作を実行する。
【０１６２】
図１８は、本発明のいくつかの実施形態が実施される電子システム１８００を概念的に示す。電子システム１８００は、上述した任意のコントロール、仮想化、又はオペレーティングシステムアプリケーションを実行するために用いることができる。電子システム１８００は、コンピュータ（例えば、デスクトップコンピュータ、パーソナルコンピュータ、タブレットコンピュータ、サーバコンピュータ、メインフレーム、ブレードコンピュータ等）、電話、ＰＤＡ、又は任意の他の種類の電子デバイスであり得る。そのような電子システムは、様々な種別のコンピュータで読み出し可能なメディア、及び様々な他の種別のコンピュータで読み出し可能なメディアに対するインタフェースを含む。電子システム１８００は、バス１８０５、処理ユニット１８１０、システムメモリ１８２５、読出専用メモリ１８３０、永続的ストレージデバイス１８３５、入力デバイス１８４０、及び出力デバイス１８４５を含む。
【０１６３】
バス１８０５は、電子システム１８００の多くの内部デバイスを通信可能に接続する、全てのシステムバス、周辺バス、及びチップセットバスを集約的に表す。例えば、バス１８０５は、処理ユニット１８１０を、読出専用メモリ１８３０、システムメモリ１８２５、及び永続的ストレージデバイス１８３５に通信可能に接続する。
【０１６４】
処理ユニット１８１０は、本発明の処理を実行するために、これらの様々なメモリユニットから実行する命令及び処理するデータを検索する。処理ユニットは、異なる実施形態において単一のプロセッサ又はマルチコアプロセッサであり得る。
【０１６５】
読出専用メモリ（ＲＯＭ）１８３０は、処理ユニット１８１０及び電子システムの他のモジュールによって必要とされる静的データ及び命令を記録する。永続的ストレージデバイス１８３５は、一方で、読出・書込メモリデバイスである。このデバイスは、電子システム１８００がオフの場合であっても命令及びデータを記録する不揮発性メモリユニットである。本発明のいくつかの実施形態は、（磁気又は光学ディスク、及び対応するディスクドライブなどの）マスストレージデバイスを永続的ストレージデバイス１８３５として用いる。
【０１６６】
他の実施形態は、（フロッピーディスク、フラッシュドライブ等のような）取り外し可能なストレージデバイスを永続的ストレージデバイスとして用いる。永続的ストレージデバイス１８３５のように、システムメモリ１８２５は、読出・書込メモリデバイスである。しかしながら、ストレージデバイス１８３５とは異なり、システムメモリは、ランダムアクセスメモリのような揮発性の読出・書込メモリである。システムメモリは、プロセッサがランタイムにおいて必要とする、いくつかの又は全ての命令及びデータを格納し得る。いくつかの実施形態では、本発明の処理は、システムメモリ１８２５、永続的ストレージデバイス１８３５、及び／又は読出専用メモリ１８３０に記録される。処理ユニット１８１０は、いくつかの実施形態の処理を実行するために、これらの様々なメモリユニットから実行する命令及び処理するデータを検索する。
【０１６７】
バス１８０５はまた、入力デバイス１８４０と出力デバイス１８４５に接続する。入力デバイスは、ユーザが情報を通信し、電子システムへのコマンドを選択できるようにする。入力デバイス１８４０は、アルファベット表記のキーボードとポインティングデバイス（「カーソル制御デバイス」ともいわれる）とを含む。出力デバイス１８４５は、電子システムによって生成された画像を表示する。出力デバイスはプリンタ、真空管（ＣＲＴ）又は液晶ディスプレイ（ＬＣＤ）などの表示デバイスを含む。いくつかの実施形態は、入力及び出力デバイスの両方として機能するタッチスクリーンのようなデバイスを含む。
【０１６８】
最後に、図１８に示すように、バス１８０５はまた、電子システム１８００をネットワークアダプタ（不図示）を介してネットワーク１８６５に接続する。このようにして、コンピュータは、（ローカルエリアネットワーク（「ＬＡＮ」）、ワイドエリアネットワーク（「ＷＡＮ」）、イントラネット、インターネットなどのネットワークのネットワーク、などのコンピュータのネットワークの一部になることができる。電子システム１８００の任意又は全ての構成要素は、本発明に関連して用いられ得る。
【０１６９】
いくつかの実施形態は、マイクロプロセッサ、コンピュータプログラムの命令を機械で読み出し可能な又はコンピュータで読み出し可能な媒体（或いはコンピュータで読み出し可能なストレージメディア、機械で読み出し可能な媒体、又は機械で読み出し可能なストレージメディアとして参照される）に格納した、ストレージ及びメモリのような電子構成要素を含む。コンピュータで読み出し可能な媒体のいくつかの例は、ＲＡＭ、ＲＯＭ、読出専用コンパクトディスク（ＣＤ−ＲＯＭ）、記録可能コンパクトディスク（ＣＤ−Ｒ）、再書込可能コンパクトディスク（ＣＤ−ＲＷ）、読出専用デジタル多用途ディスク（例えばＤＶＤ−ＲＯＭ、デュアルレイヤＤＶＤ−ＲＯＭ）、様々な記録可能／再書込可能ＤＶＤ（ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ等）、フラッシュメモリ（例えばＳＤカード、ミニＳＤカード、マイクロＳＤカード等）、磁気及び／又はソリッドステートハードドライブ、読出専用及び記録可能Ｂｌｕ−Ｒａｙ（登録商標）ディスク、超高密度光ディスク、任意の他の光又は磁気メディア、及びフロッピーディスクを含む。コンピュータで読み出し可能な媒体は、少なくとも１つの処理ユニットによって実行可能であり、様々な動作を実行するための命令の組を含む、コンピュータプログラムを記録する。コンピュータプログラム又はコンピュータコードの例は、コンパイラによって生成されたような機械コードと、コンピュータ、電子構成要素、又はインタプリタを用いるマイクロプロセッサによって実行される、より高レベルなコードを含んだファイルとを含む。
【０１７０】
上述の説明は、ソフトウェアを実行するマイクロプロセッサ又はマルチコアプロセッサを主に参照したが、いくつかの実施形態は、特定用途向け集積回路（ＡＳＩＣ）又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ）のような、１つ以上の集積回路によって実行される。ある実施形態では、そのような集積回路は回路自体に格納された命令を実行する。
【０１７１】
本明細書において使用されるように、「コンピュータ」、「サーバ」、「プロセッサ」及び「メモリ」の語は、全て電子的又は他の技術的デバイスを参照する。これらの語は、人及び人のグループを含まない。本明細書の目的のため、表示及び表示するの語は電子デバイス上に表示することを意味する。本明細書において使用されるように、「コンピュータで読み出し可能な媒体」、「コンピュータで読み出し可能なメディア」及び「機械で読み出し可能な媒体」の語は、全体として、コンピュータによって読み出し可能な形式の情報を記録する、有体物、物理的なオブジェクトに制限される。これらの語は、任意の無線信号、有線でダウンロードされた信号、及び任意の他のその場限りの信号を含まない。
【０１７２】
本明細書は、終始、仮想マシン（ＶＭ）を含む、計算環境及びネットワーク環境を参照している。しかしながら、仮想マシンは単なるデータ計算ノード（ＤＣＮ）又はデータ計算エンドノードの一例であり、アドレス可能なノードとしても参照される。ＤＣＮは、非仮想化物理ホスト、仮想マシン、ハイパーバイザや別のオペレーティングシステムを必要とすること無くホストオペレーティングシステム上で動作するコンテナ、及びハイパーバイザカーネルネットワークインタフェースモジュールを含み得る。
【０１７３】
いくつかの実施形態では、ＶＭは、仮想化ソフトウェア（例えばハイパーバイザ、仮想マシンモニタ等）によって仮想化されたホストのリソースを用いて、ホスト上の自身のゲストオペレーティングシステムとともに動作する。テナント（すなわちＶＭのオーナー）は、どのアプリケーションをゲストオペレーティングシステム上で動作させるか選択することができる。一方、いくつかのコンテナは、ハイパーバイザ又は別のゲストオペレーティングシステムを必要とせずに、ホストオペレーティングシステム上で動作する構成物である。いくつかの実施形態では、ホストオペレーティングシステムはネームスペースを使用して、コンテナを互いに個別化し、従って、異なるコンテナ内で動作するアプリケーションの異なるグループの、オペレーティングシステムレベルのセグメンテーションを提供する。このセグメンテーションは、システムハードウェアを仮想化するハイパーバイザ-仮想化環境で提供されるＶＭセグメンテーションと類似し、従って、異なるコンテナ内で動作するアプリケーションの異なるグループを個別化する、仮想化の形式としてみることができる。このようなコンテナはＶＭより軽量である。
【０１７４】
いくつかの実施形態では、ハイパーバイザ・カーネル・ネットワーク・インタフェース・モジュールは、ハイパーバイザ・カーネル・ネットワーク・インタフェースを有するネットワークスタックと受信／送信スレッドを含む、非ＶＭ・ＤＣＮである。ハイパーバイザ・カーネル・ネットワーク・インタフェース・モジュールの一例は、ＶＭｗａｒｅ社のＥＳＸｉ（登録商標）ハイパーバイザの一部であるｖｍｋｎｉｃモジュールである。
【０１７５】
本明細書はＶＭを参照したが、所与の例は、物理ホスト、ＶＭ、非ＶＭコンテナ、及びハイパーバイザ・カーネル・ネットワーク・インタフェース・モジュールを含む、任意の種別のＤＣＮであってよい。事実、ネットワークの例は、いくつかの実施形態では異なる種別のＤＣＮの組み合わせを含んでよい。
【０１７６】
本発明は多数の特定の詳細を参照して説明されたが、当業者は、本発明が発明の思想から離れることのない他の特定の形式で実施可能であることを認識する。加えて、多数の図（図９、１０、１３、１５、１６及び１７を含む）は処理を概念的に示すものである。これらの処理の特定の動作は、図示及び説明された正確な順序で実行されないかもしれない。特定の動作は、１つの連続する動作の流れで実行されないかもしれず、異なる特定の動作が異なる実施形態において実行され得る。更に、処理はいくつかの副処理（sub-process）を用いて、又は大きなマクロ処理の部分として実施され得る。従って、当業者は、発明が上述の詳細に限定されず、むしろ添付の請求項の範囲によって定義されることを理解する。
【図１】
2020167715.tif 000003
【図２】
2020167715.tif 000004
【図３】
2020167715.tif 000005
【図４】
2020167715.tif 000006
【図５】
2020167715.tif 000007
【図６】
2020167715.tif 000008
【図７】
2020167715.tif 000009
【図８】
2020167715.tif 000010
【図９】
2020167715.tif 000011
【図１０】
2020167715.tif 000012
【図１１】
2020167715.tif 000013
【図１２】
2020167715.tif 000014
【図１３】
2020167715.tif 000015
【図１４】
2020167715.tif 000016
【図１５】
2020167715.tif 000017
【図１６】
2020167715.tif 000018
【図１７】
2020167715.tif 000019
【図１８】
2020167715.tif 000020
【手続補正書】
【提出日】令和2年7月3日(2020.7.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データセンタにおいて論理ルータのセットを実施する方法であって、前記方法は、
第１の論理ルータを前記データセンタの外のデバイスに接続するために前記第１の論理ルータから第２の論理ルータへ接続する構成データを受信することであって、前記第２の論理ルータは、(i)前記データセンタ内の複数の物理マシンに渡って実施される分散化ルーティング構成要素と、(ii)異なる物理マシン上でそれぞれ実施される１つ以上の集中化ルーティング構成要素とを含み、前記第２の論理ルータの前記分散化ルーティング構成要素及び前記集中化ルーティング構成要素のそれぞれは、別々のルーティングテーブルを有する、受信することと、
前記第１の論理ルータのために構成されるプレフィックスのセットにおけるそれぞれのプレフィックスについて、
前記第２の論理ルータの前記分散化ルーティング構成要素の前記ルーティングテーブルに、前記第１の論理ルータのインタフェースの次ホップアドレスを有する経路を追加することと、
前記第２の論理ルータのそれぞれの集中化ルーティング構成要素の前記ルーティングテーブルに、前記第２の論理ルータの前記分散化ルーティング構成要素のインタフェースに対応する次ホップアドレスを有するための経路を追加することと、を含む方法。
【請求項２】
請求項１に記載の方法であって、
前記データセンタはマルチユーザデータセンタであり、
前記第１の論理ルータは、前記データセンタのユーザによって管理される複数の論理ルータのうちの１つであり、
前記第２の論理ルータは、前記データセンタの管理者によって管理される、方法。
【請求項３】
請求項１に記載の方法であって、前記第１の論理ルータは、任意の外部物理ネットワークと接続しないテナント論理ルータであり、前記第２の論理ルータは、外部物理ネットワークと接続するプロバイダ論理ルータである、方法。
【請求項４】
請求項３に記載の方法であって、前記構成データは、前記テナント論理ルータを配置する前記データセンタのテナントからアプリケーションプログラミングインタフェースを介して受信したリクエストを含む、方法。
【請求項５】
請求項１に記載の方法であって、前記第１の論理ルータは、前記データセンタ内の物理コンピュータのセットに渡って実施される単一の分散化ルーティング構成要素を含むが、あらゆる集中化ルーティング構成要素を含まない、方法。
【請求項６】
請求項５に記載の方法であって、前記第１の論理ルータは、前記第１の論理ルータの前記分散化ルーティング構成要素のインタフェースを介して前記第２の論理ルータに接続する、方法。
【請求項７】
請求項６に記載の方法であって、前記第２の論理ルータの前記分散化ルーティング構成要素の前記ルーティングテーブルに追加された前記経路の前記次ホップアドレスは、前記第１の論理ルータの前記分散化ルーティング構成要素の前記インタフェースに対応する、方法。
【請求項８】
請求項１に記載の方法であって、前記複数の物理マシンは、前記データセンタ内の第１の複数の物理マシンであり、前記第１の論理ルータは、(i)前記データセンタ内の第２の複数の物理マシンに渡って実施される分散化ルーティング構成要素と、(ii)アクティブな集中化ルーティング構成要素と、(iii)スタンバイの集中化ルーティング構成要素とを含み、前記第１の論理ルータの前記分散化ルーティング構成要素及び前記集中化ルーティング構成要素のそれぞれは、別々のルーティングテーブルを有する、方法。
【請求項９】
請求項８に記載の方法であって、前記第１の論理ルータは、前記第２の論理ルータに、前記第１の論理ルータの前記アクティブな集中化ルーティング構成要素及び前記スタンバイの集中化ルーティング構成要素のインタフェースを介して接続する、方法。
【請求項１０】
請求項９に記載の方法であって、前記第２の論理ルータの前記分散化ルーティング構成要素の前記ルーティングテーブルに追加された前記経路の前記次ホップアドレスは、前記アクティブな集中化ルーティング構成要素の前記インタフェースに対応する、方法。
【請求項１１】
請求項８に記載の方法であって、前記第１の論理ルータのための構成データは、ステートフルサービスの提供のための構成を含み、前記第１の論理ルータの前記集中化ルーティング構成要素は前記ステートフルサービスを提供するように構成される、方法。
【請求項１２】
請求項８に記載の方法であって、前記第１の論理ルータの前記集中化ルーティング構成要素のそれぞれは、異なる物理マシン上で実施される、方法。
【請求項１３】
請求項１に記載の方法であって、前記第１の論理ルータのための構成が、特定のプレフィックスに対して前記第１の論理ルータの外にアドバタイズされるように特定される場合、経路は、プレフィックスのセットにおける前記特定のプレフィックスに対する前記第２の論理ルータの前記分散化ルーティング構成要素及び前記集中化ルーティング構成要素の前記ルーティングテーブルに追加される、方法。
【請求項１４】
請求項１に記載の方法であって、前記方法は、前記データセンタ内の論理ネットワークのセットを集中的に管理する管理プレーンによって実行される、方法。
【請求項１５】
請求項１４に記載の方法は更に、前記追加された経路を、前記第２の論理ルータの前記分散化ルーティング構成要素及び前記集中化ルーティング構成要素を実施する前記複数の物理マシン上で動作するローカルネットワークコントローラに分配することを含む、方法。
【請求項１６】
請求項１に記載の方法であって、前記プレフィックスのセットのうちの特定のプレフィックスについて、接続された経路が、前記第１の論理ルータへの論理スイッチの接続に基づいて、前記第１の論理ルータのルーティングテーブルのために自動的に生成される、方法。
【請求項１７】
請求項１に記載の方法は更に、少なくとも１つのプレフィックスを動的ルーティングプロトコルを介して外部の物理ネットワークにアドバタイズするために、前記第２の論理ルータの前記集中化ルーティング構成要素に対して特定することを含む、方法。
【請求項１８】
請求項１に記載の方法は更に、前記第２の論理ルータの前記分散化ルーティング構成要素に前記第１の論理ルータを接続する通過論理スイッチを定義することを含む、方法。
【請求項１９】
少なくとも１つの処理ユニットで実行されると、請求項１から１８のいずれか１項に記載の方法を実施するコンピュータプログラム。
【請求項２０】
計算デバイスであって、
処理ユニットのセットと、
前記処理ユニットの少なくとも１つによって実行されると、請求項１から１８のいずれか１項に記載の方法を実施するプログラムを格納する機械可読媒体と、を含む計算デバイス。
【外国語明細書】
2020167715000001.pdf