JP2024153744A - 分解されたネットワーク要素を含む論理ルータ - Google Patents
分解されたネットワーク要素を含む論理ルータ Download PDFInfo
- Publication number
- JP2024153744A JP2024153744A JP2024118795A JP2024118795A JP2024153744A JP 2024153744 A JP2024153744 A JP 2024153744A JP 2024118795 A JP2024118795 A JP 2024118795A JP 2024118795 A JP2024118795 A JP 2024118795A JP 2024153744 A JP2024153744 A JP 2024153744A
- Authority
- JP
- Japan
- Prior art keywords
- route
- route processor
- network elements
- control element
- database
- 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.)
- Pending
Links
- 239000004744 fabric Substances 0.000 claims abstract description 104
- 238000000034 method Methods 0.000 claims description 43
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 claims description 10
- 229910052710 silicon Inorganic materials 0.000 claims description 10
- 239000010703 silicon Substances 0.000 claims description 10
- 240000008213 Brosimum alicastrum Species 0.000 claims description 7
- 235000005828 ramon Nutrition 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 5
- 238000012544 monitoring process Methods 0.000 claims description 2
- 238000004891 communication Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 27
- 230000006870 function Effects 0.000 description 22
- 238000007726 management method Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 238000005538 encapsulation Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 8
- ORQBXQOJMQIAOY-UHFFFAOYSA-N nobelium Chemical compound [No] ORQBXQOJMQIAOY-UHFFFAOYSA-N 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000036541 health Effects 0.000 description 7
- 230000003213 activating effect Effects 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000010076 replication Effects 0.000 description 3
- 101100029611 Schizosaccharomyces pombe (strain 972 / ATCC 24843) phf1 gene Proteins 0.000 description 2
- 101100519877 Schizosaccharomyces pombe (strain 972 / ATCC 24843) phf2 gene Proteins 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 101001046686 Homo sapiens Integrin alpha-M Proteins 0.000 description 1
- 101000935040 Homo sapiens Integrin beta-2 Proteins 0.000 description 1
- 102100022338 Integrin alpha-M Human genes 0.000 description 1
- 101000962498 Macropis fulvipes Macropin Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000001444 catalytic combustion detection Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/44—Star or tree networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
- H04L12/4666—Operational details on the addition or the stripping of a tag in a frame, e.g. at a provider edge node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4675—Dynamic sharing of VLAN information amongst network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/033—Topology update or discovery by updating distance vector protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/08—Learning-based routing, e.g. using neural networks or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/44—Distributed routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/58—Association of routers
- H04L45/586—Association of routers of virtual routers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/527—Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/111—Switch interfaces, e.g. port details
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/113—Arrangements for redundant switching, e.g. using parallel planes
- H04L49/115—Transferring a complete packet or cell through each plane
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/252—Store and forward routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3054—Auto-negotiation, e.g. access control between switch gigabit interface connector [GBIC] and link
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/552—Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/354—Switches specially adapted for specific applications for supporting virtual local area networks [VLAN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)
- Mobile Radio Communication Systems (AREA)
- Radio Relay Systems (AREA)
- Train Traffic Observation, Control, And Security (AREA)
Abstract
【課題】データセンターのコンピュータ間の通信を可能にするネットワークの複雑性が増加している。【解決手段】論理ルータ100は、リーフ要素により定義されたフロントパネルポートを有するネットワークファブリックを実装するスパイン要素及びリーフ要素並びに論理ルータとして機能するように、スパインユニット及びリーフユニットをプログラミングし、論理ルータを通るパケットに関連するタグにより参照され、リーフ要素のフロントパネルポートにマッピングされたオペレーティングシステムのインタフェースを定義する制御プレーン要素を含む。制御プレーン要素により実装されるルータデータベースのために、冗長性及びチェックポイントが実装される。論理ルータはまた、スタンドアロンのファブリックを含むことができ、ファブリックを通るパス及びエグレスポートに従ってパケットをラベリングするために使用されるラベルテーブルを実装する。【選択図】図7
Description
関連出願への相互参照
本出願は、2018年11月26日に出願された米国仮特許出願第62/771,407号「LOGICAL ROUTER COMPRISING DISAGGREGATED NETWORK ELEMENTS」に対する優先権を主張するものであり、この文献は、全体が参照により本明細書に援用される。
本出願は、2018年11月26日に出願された米国仮特許出願第62/771,407号「LOGICAL ROUTER COMPRISING DISAGGREGATED NETWORK ELEMENTS」に対する優先権を主張するものであり、この文献は、全体が参照により本明細書に援用される。
データセンターは、さらにいっそう普及し、複雑になっている。この複雑性により、データセンターの複数のコンピュータ間の通信を可能にするネットワークの複雑性が増加している。
特に、より簡素化し、多数のコンピュータのためのネットワークルーティング能力の構成を可能にする必要がある。
上記課題を解決するために、本願の特許請求の範囲に記載のシステム及び方法を提供するものである。
本発明の利点を容易に理解するために、上記に簡単に記載されている本発明のより詳細な説明が、添付の図面に図示されている特定の実施形態を参照にして、以下に記載されている。これらの図面は本発明の典型的な実施形態を図示しているだけであると理解され、したがって、本発明の範囲を限定するものではない。本発明は、添付の図面を使用して、詳細及び付加的な特定が説明されている。
添付の図面に図示されて説明されている本発明のコンポーネントは、多種多様な異なる構成に設計及び配置することができることは容易に理解できるであろう。したがって、図示されている、以下の本発明の実施形態のより詳細な説明は、特許請求の範囲に記載されている本発明の範囲を限定することを意図しているものではなく、ここで検討されている本発明による実施形態の特定の実施例を単に示すものである。ここに記載の実施形態は、図面を参照することにより最もよく理解されるものであり、同様の部品は明細書及び図面を通して同様の参照番号により示されている。
本発明による実施形態は、装置、方法、又はコンピュータプログラム製品として具現化することができる。したがって、本発明は、完全にハードウェアの形、完全にソフトウェアの形(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、又は、ここで一般的に「モジュール」又は「システム」と呼ばれるハードウェア及びソフトウェアを組み合わせた形で具現化することができる。さらに、本発明は、媒体内に具現化されたコンピュータ使用可能プログラムコードを有する任意の有形的表現媒体内に具現化されたコンピュータプログラム製品の形をとることができる。
1以上のコンピュータ使用可能媒体又はコンピュータ可読媒体の任意の組み合わせを利用することができる。例えば、コンピュータ可読媒体は、携帯用コンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)デバイス、読出専用メモリ(ROM)デバイス、消去可能プログラマブル読出専用メモリ(EPROM又はフラッシュメモリ)デバイス、携帯用コンパクトディスク読出専用メモリ(CDROM)、光記憶装置、及び磁気記憶装置の1以上を含むことができる。選択された実施形態において、コンピュータ可読媒体は、命令実行システム、装置、又はデバイスにより、又は、に接続して使用されるプログラムを含有、記憶、通信、伝搬、又は移送することができる任意の非一時的媒体を含むことができる。
本発明の動作を実行するためのコンピュータプログラムコードは、Java、Smalltalk、C++等のオブジェクト指向プログラミング言語、及びCプログラミング言語又は同様のプログラミング言語等の慣用手続き型プログラミング言語を含む1以上のプログラミング言語の任意の組み合わせにより書き込むことができ、また、HTML、XML、JSON等の記述言語又はマークアップ言語を使用することもできる。プログラムコードは、スタンドアロン型ソフトウェアパッケージとして完全にコンピュータシステム上で、スタンドアロン型ハードウェアユニット上で、部分的にコンピュータから一定の距離に置かれた遠隔コンピュータ上で、又は完全に遠隔コンピュータ又はサーバ上で、実行することができる。後のシナリオにおいて、遠隔コンピュータは、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意の型のネットワークを介してコンピュータと接続することができ、又は、外部のコンピュータに接続することができる(例えば、インターネットサービスプロバイダを使用したインターネットを介して)。
本発明は、本発明の実施形態による方法、装置(システム)及びコンピュータプログラム製品のフローチャート及び/又は構成図を参照して以下に説明されている。フローチャート及び/又は構成図の各ブロック、及びフローチャート及び/又は構成図のブロックの組み合わせは、コンピュータプログラム命令又はコードにより実装することができる。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能なデータ処理装置のプロセッサに提供され、コンピュータ又は他のプログラム可能なデータ処理装置のプロセッサにより実行される命令が、フローチャート及び/又は構成図の1又は複数のブロックに特定されている機能/作用を実装するための手段を生成するように、マシンを生成することができる。
コンピュータ可読媒体内に記憶された命令が、フローチャート及び/又は構成図の1又は複数のブロックに特定されている機能/作用を実装する、命令手段を含む製品を生成するように、これらのコンピュータプログラム命令も、コンピュータ又は他のプログラム可能なデータ処理装置が特定の方法で機能するように導くことができる非一時的コンピュータ可読媒体に記憶することができる。
コンピュータ又は他のプログラム可能なデータ処理装置上で実行された命令が、フローチャート及び/又は構成図の1又は複数のブロックに特定されている機能/作用を実装するためのプロセスを提供するように、コンピュータプログラム命令も、コンピュータ又は他のプログラム可能なデータ処理装置上にロードされ、コンピュータ又は他のプログラム可能なデータ処理装置上で実行される一連の動作ステップを引き起こし、コンピュータ実装プロセスが生成される。
ここに開示されているシステム及び方法は、コンピュータデータルーティングシステムのための論理ルータに関する。特に、ここに開示されているシステム及び方法は、同じシャーシ内に配置される必要のない、又はシャーシの同じバックプレーンに接続される必要のない分解されたネットワーク要素のセットから形成される論理ルータ「シャーシ」に関する。論理ルータは、分散データプレーンを有する制御及び管理の単一の論理点を含むことができる。論理ルータは、ネットワークトポロジのサイズを減少するために外部のコンピュータシステムにオフロードされた制御プレーンも含む。このことは、より新しい世代の中央処理装置(CPU)を利用するために、制御プレーンを異なるコンピュータシステムに移行することも可能にする。論理ルータを含む分解されたネットワーク要素は、ここに開示されているシステム及び方法内に組み込まれる専用ネットワークコンポーネントを使用して実装することができる。以下に開示されている実施形態において、ネットワーク要素は、BROADCOMにより開発されたJERICHO 2及びRAMON等のシリコンデバイスを含む。これらは単に例示であり、これらのデバイスの基本的なネットワークルーティング機能を提供する他のネットワーク要素も同様の方法で使用することができる。
図1は、論理ルータ100のアーキテクチャの例を示している。図1に図示されているように、論理ルータ100は、複数のスパイン要素102、複数のリーフ要素104、及び各スパイン要素102を1以上のリーフ要素104に接続するファブリックインタフェース106を含む。以下の例において、スパイン要素102は、RAMONクラス・シリコンデバイスであり、リーフ要素104は、複数のJERICHO 2クラス・シリコンデバイスのセットである。シリコンデバイス102、104のファブリックインタフェースは、10G又は100Gイーサネットケーブル等のネットワークケーブル、光ファイバーケーブル、又は他の型のネットワーク接続により互いに接続することができる。
論理ルータ100において、各スパイン要素102は、セルフルーティングファブリックのファブリック要素として機能する。このセルフルーティングファブリックは、ソフトウェアによる補助を必要としないリンク障害の処理を含むシリコン内の全ての関連するルーティングプロトコルを実装する。論理ルータ内の各ファブリック要素は、図1に図示されているように、ファブリックインタフェースを介して1以上のリーフ要素104にインタフェース接続される。リーフ要素104の一群は、セルベースのファブリックの実装に使用することができる。リーフ要素104の一群がデータパケットをセルに分割する。これらのセルは、セルベースのファブリックにわたって分散され、リーフ要素104の1つからのエグレス(egress)上で再構築される。この実装は、ファブリックのより効果的な利用を可能にする。各リーフ要素104は、リーフ要素104がネットワークと通信することを可能にするネットワークインタフェース108によっても構成されることができる。
図2は、論理ルータ100を使用して実装することができる方法200の例を図示している。特に、方法200は、論理ルータ100を使用するエンドツーエンド・パケットスケジューリングの実装を図示している。方法200は、リーフ要素104のイングレス(ingress)ポートが方法200により処理されたパケットを受信するように、リーフ要素104上で実行されるコードにより、又は外部の制御装置(以下の制御要素300の記載参照)により実装することができる。
方法200は、論理ルータ100による、パケットが受信されたポートを備える1つのリーフ要素104上等の、論理ルータ100に関連するイングレス上のデータパケットのキューイング202を含むことができる。次に、イングレスが、データパケットの宛先アドレスに対応する第2のリーフ要素104等の論理ルータ100にキュー要求を送信する204。論理ルータ100に関連するエグレス(例えば、第2のリーフ要素104)は、クレジット付与(credit grant)により応答する。最後に、スパイン要素102により実装されたファブリックをわたって、イングレスがパケットをエグレスに送信する。
図3を参照して、ここに開示されている論理ルータ100は、以下の設計検討に対して所望の性能を提供する。
・システムの処理量
・論理シャーシのプロビジョニング
・シャーシのブートストラップ
・シャーシのスケール変更
・システム状態のスケール変更
・デバッグ及びトラブルシューティング
・ファブリック障害、ソフトウェア障害、及びコンポーネント故障の原因となる回復力
・システムの処理量
・論理シャーシのプロビジョニング
・シャーシのブートストラップ
・シャーシのスケール変更
・システム状態のスケール変更
・デバッグ及びトラブルシューティング
・ファブリック障害、ソフトウェア障害、及びコンポーネント故障の原因となる回復力
図3の実施形態において、スパイン要素102は、リーフ要素104に接続して、一段Closファブリックを実装する。特に、各リーフ要素104は、各スパイン要素102に接続することができる。
図3のシステムは、JERICHO 2シリコンデバイスであることができるリーフユニット104により実装される480x400G又は1920x100Gポートを有する48リーフ要素104インタフェーススケールを提供する以下の属性を有することができる。代替スケールにおいて、240x400G又は960x100Gポートを提供する24リーフ要素であることができる。本開示の目的の為に、「AxB」の表記は、Bの処理量を有するAポートを示している。図3の構成は、説明を目的としており、他のデバイスの他の構成を同様の方法で使用することもできる。
図示されている実施形態においては、13のスパイン要素102が存在する。図3の論理ルータアーキテクチャ内のスパイン要素102はそれぞれ、1又は複数のRAMONクラス要素等の、1又は複数の要素を含むことができる。いくつかの実装において、スパインプロファイル(即ち、スパイン要素102の構成)は、1つの24ポートRAMONクラス要素及び2つの48ポートRAMONクラス要素を含むことができる。
図3の論理ルータ100は、48リーフ要素も含む。各スパイン要素102は、400G QSFP-DD(クワッド小型フォーム・ファクタプラグ可能接続倍密度(quad small form-factor pluggable connection double density))光コネクタ及び400Gプロトコルを実装する通信リンクを使用して、各リーフ要素104とインタフェース接続されることができる。しかしながら、他の型のコネクタ及びプロトコルを使用することができる。いくつかの実施形態において、各リーフ要素104は、10x400又は40x100インタフェース、BROADWELL(8コア)CPU、及び32GBのRAM(ランダムアクセスメモリ)を含む1つのJ2クラス・シリコンデバイスから構成される。各リーフ要素104は、外部ネットワークと通信するために40x100Gインタフェースから構成されることができる。
いくつかの実施形態において、論理ルータ100は、演算システム(例えば、以下に記載の図19の演算システムの実施例参照)を使用して実装される1以上の制御プレーン要素300により管理されることができる。制御プレーン要素は、論理ルータ(即ち、論理ルータ100のリーフ要素104、スパイン要素102、及びこれらの要素間の相互接続ファブリック)の外部のコンピュータシステムである。各制御プレーン要素300は、例えば10G通信リンクを使用して、1以上のリーフ要素104とインタフェース接続されることができる。制御プレーン要素300は、共通のシャーシ内に又は共通のバックプレーンに接続されているように、論理ルータの分離した要素102、104が単一のルータとして機能するように、論理ルータ100にシャーシ抽象化モデル(chassis abstraction model)を実装するために、ルータ状態管理を実行する構成エージェント(configuration agent)として機能することができる。
図4を参照して、論理ルータ100は、管理及び制御のシングルポイント(single point)により管理されることができる。管理LAN(ローカルエリアネットワーク)スイッチ400が、論理ルータ100及び関連する制御プレーン要素300の全ての管理及び制御機能を実行する。制御プレーン要素300とインタフェース接続された複数のリーフ要素104とインタフェース接続された複数のスパイン要素102を含む論理ルータ100は、管理LANスイッチ400により管理される。管理LANスイッチ400は、スパイン要素102、リーフ要素104、及び制御プレーン要素300のそれぞれにインタフェース接続される。
図5を参照して、LANスイッチ400は、図示されている方法で、論理ルータ100の要素とインタフェース接続される。例えば、リーフ要素104a及びリーフ要素104bは、それぞれ独立して制御プレーン要素300にインタフェース接続される。各リーフ要素104a、104b及び制御プレーン要素300は、独立して管理LANスイッチ400にインタフェース接続される。いくつかの具現化において、管理LANスイッチとのそれぞれのインタフェース接続は、2x10Gリンクを介して実装されるが、他の型の接続を使用することもできる。
各リーフ要素104a、104b及び制御プレーン要素300の間のインタフェース接続は、インバンド(in-band)ネットワーク500及びホストパケットパスに関連付けることができる。一方、管理LANスイッチ400とのそれぞれのインタフェース接続は、アウトオブバンド(out-of-band)(OOB)ネットワーク502に関連付けることができる。管理LANスイッチ400は、OOBネットワーク502を通して要素104、104b、300と通信することができ、ブートストラップ/画像ダウンロード、システム状態提供、並びにシステム統計及び同様のデータ収集等の機能を実行することができる。
図6を参照して、論理ルータ100に関連するソフトウェアは、ルートプロセッサソフトウェア600、ルータ状態データベース602、及びラインカードソフトウェア604(ここでは、ラインカードソフトウェアモジュール604とも呼ばれる)を含むことができる。論理ルータ100のいくつかの実装において、全てのソフトウェアが展開され、コンテナとして管理される。ルートプロセッサソフトウェア600は、ソフトウェアがロードされるデバイスがルータ状態データベース602とシステム状態及び統計に関するデータを双方向で共有するように、前記デバイスをプログラミングする。ルータ状態データベース602は、ラインカードソフトウェア604とシステム状態及び統計に関するデータを双方向で共有するようにプログラミングされている。
いくつかの実装において、ルートプロセッサソフトウェア600は、以下の機能又はデータ構造を実装する。
・システムワイドインタフェース制御(論理ルータ100の要素102、104にわたる)
・ルーティングプロトコル、ARP(address resolution protocol)(アドレス解決プロトコル)、IPv6 ND(internet protocol v6 neighbor discovery)(インターネットプロトコルv6近隣探索)
・ルーティング情報ベース(Routing Information Base)(RIB)
・ノースバウンドAPI(application programming interfaces)(アプリケーションプログラミングインタフェース)
・構成管理
・データストア
・LINUXホストパス
・テレメトリ
・機能-ACL(access control list)(アクセス制御リスト)、QoS(quality of service)(サービスの品質)、CoPP(control plane policing)(制御プレーンポリシング)
・仮想シャーシ管理
・システムワイドインタフェース制御(論理ルータ100の要素102、104にわたる)
・ルーティングプロトコル、ARP(address resolution protocol)(アドレス解決プロトコル)、IPv6 ND(internet protocol v6 neighbor discovery)(インターネットプロトコルv6近隣探索)
・ルーティング情報ベース(Routing Information Base)(RIB)
・ノースバウンドAPI(application programming interfaces)(アプリケーションプログラミングインタフェース)
・構成管理
・データストア
・LINUXホストパス
・テレメトリ
・機能-ACL(access control list)(アクセス制御リスト)、QoS(quality of service)(サービスの品質)、CoPP(control plane policing)(制御プレーンポリシング)
・仮想シャーシ管理
いくつかの具現化において、ルータ状態データベース602は、以下の機能又はデータ構造を含む。
・ルータ状態
・統計
・分割化
・複製化
・クラスタ化
・ルータ状態
・統計
・分割化
・複製化
・クラスタ化
いくつかの具現化において、ラインカードソフトウェア604は、以下の機能又はデータ構造を実装する。
・ASIC(application specific integrated circuit)(特定用途向け集積回路)/SDK(ソフトウェア開発キット)プログラミング
・ステータス(Stats)
・ラインカードオフロード(BFD(bidirectional forwarding detection)(双方向フォーワーディング検出))、LLDP(link layer discovery protocol)(リンク層検出プロトコル)、SFlow(サンプルフロー)等)
・ASIC(application specific integrated circuit)(特定用途向け集積回路)/SDK(ソフトウェア開発キット)プログラミング
・ステータス(Stats)
・ラインカードオフロード(BFD(bidirectional forwarding detection)(双方向フォーワーディング検出))、LLDP(link layer discovery protocol)(リンク層検出プロトコル)、SFlow(サンプルフロー)等)
図7は、3つのソフトウェア構築ブロック600、602、604が実際の論理ルータの具現化においてどのように実装されるかを示している。図7に図示されているように、分離したラインカードソフトウェアモジュール604(即ち、ラインカードソフトウェア604のインスタンス)は、各スパイン要素102及び各リーフ要素104内に実装されることができる。ラインカードソフトウェアモジュール604のそれぞれは、第1の制御プレーン要素300内のルータ状態データベース602(ルータ状態データベース602a)と通信する。この第1の制御プレーン要素300aは、ルータプロセッサソフトウェア600(ここで、ルートプロセッサモジュール600とも呼ばれる)のインスタンスを実行することもできる。第1の制御プレーン要素300aは、図7に図示される第1の第2の制御プレーン要素300bとデータを共有する。第1の第2の制御プレーン要素300bは、図7に図示される第2の第2の制御プレーン要素300cとデータを共有する。第1の第2の制御プレーン要素300b及び第2の第2の制御プレーン要素300cのそれぞれは、ルータ状態データベース602b、602cをそれぞれ含み、それにより、データ冗長性等の機能を実装する。第1の第2の制御プレーン要素300b及び第2の第2の制御プレーン要素300cはそれぞれ、ここに説明されているように、第1の制御プレーン要素300aの故障時のバックアップとして機能することができる。
図1~7を参照に上述されている制御要素300を有する論理ルータ100及び管理LANスイッチ400は、以下の様々な動作シナリオにおいて使用することができる。
図8は、論理ルータ100がインタフェースを生成するシナリオを示している。図8に図示されているように、LINUX演算システム上で実行されている制御プレーン要素300は、要素状態データベース800及びルートプロセッサ600を含む。本明細書を通してLINUX演算システムが記載されているが、UNIXの他のバリエーション、MAC OS,マイクロソフトWINDOWS、又は他の当業者には既知のオペレーティングシステム等の他のオペレーティングシステムを使用することもできる。
ルータ状態データベース602に相当する又は一部である要素状態データベース800は、論理ルータ100の一部を形成するスパイン要素102及びリーフ要素104のそれぞれに接続されることができる。要素状態データベース800は、構成(ポート、他の要素102、104、300へのポートの接続、要素102、104、300のアドレス等)等のスパイン要素102及びリーフ要素104のそれぞれに関連するデータを記憶することができる。この情報は、ここに開示の任意のファブリック検出技術(例えば、LSoE、LLDP)を使用して制御プレーン要素300により検出することができる。要素状態データベース800は、このデータをルートプロセッサに提供する。スパイン要素102及びリーフ要素104のそれぞれの各インタフェースについて、ルートプロセッサ600は、ルートプロセッサ600上で固有のインタフェース(図8のswp1/1…swp1/40, swp2/1…swp2/40…swp48/1…swp48/40)を作成し、標記swpA/Bは、要素A(即ち、スパイン要素102又はリーフ要素104)のポートB上のインタフェースを示している。固有のインタフェースは、LINUXインタフェースであることができる。他の型のオペレーティングシステムが使用されると、そのオペレーティングシステムによるネットワークインタフェースが作成される。ルートプロセッサは、論理ルータ100の全ての分解された要素102、104のための全てのインタフェース状態を作成する。固有のインタフェースの作成を示すフロー図が図9に図示されている。
図9を参照にして、制御プレーン要素300は、図示されている方法900を実行することができる。方法900は、論理ルータ100のスパイン要素102及びリーフ要素104のそれぞれに関連するデータを制御プレーン要素300の要素状態データベース800受信する902ことを含む。要素状態データベース800は、制御プレーン要素300上で実行されているルートプロセッサ600にステップ902で受信されたデータを通知する904。その後、ルートプロセッサは、ステップ902で受信されたデータ内で参照されているスパイン要素102及びリーフ要素104のそれぞれのために、LINUXインタフェース等の固有のインタフェースを作成する906。
ルートプロセッサ600を実行している制御プレーン要素300上のLINUX(又は他のオペレーティングシステム)インスタンス内でインタフェースが作成されると、その後、個々のリーフ要素104のフロントパネル上の実際のインタフェースが、それらに対応する作成されたインタフェースに結合される(stitched)。このことを実行する1つの方法は、固有のVLAN(仮想LAN)タグを各リーフ要素104上の各フロントパネルインタフェースに割り当てることであり、各VLANタグはさらに、制御プレーン要素300上に作成されたインタフェースの1つにマッピングされる。
図10は、リーフ要素104のインタフェースに関連して、方法900により作成されたインタフェースを使用したデータパケットルーティングの実施例を示している。リーフ要素104a上で実行されているソフトウェアは、パケット1000を受信し、パケット1000の宛先に対応するイングレスインタフェースを検索するデータパスにルールをプログラミングし、パケット1002を取得するためにパケットに対応するVLANタグを追加し、制御プレーン要素300に接続されたリーフ要素104bに、リーフ要素104bのエグレスポートを識別する宛先識別子と共に、パケット1002を転送する。パケット1002は、TTL(time to live)(有効時間)デクリメントを実行することなく、リーフ要素104bに送信される。パケット1002は、1以上のスパイン要素102を経由してエグレスリーフ要素104bに送信される。図10から明らかなように、パケット1002は、ファブリック106、例えば「BCMファブリックヘッダ、宛先=2005」(BCM=BROADCOM)、を通してパケット1002をルーティングするための情報を含むことができる。
エグレスリーフ要素104bは、パケット1002を受信すると、パケット1002を制御プレーン要素300に転送する。その後、制御プレーン要素300上で実行されているLINUXインスタンスは、パケット1002のVLANタグにより参照されているインタフェース1004を識別し、VLANタグを取り外し、対応するインタフェース1004内に取り外されたパケット1006を導入する。そこからパケット1006は通常通りLINUXデータパスを通って流れ、ボーダゲートウェイプロトコル(BGP)モジュール1008等のアプリケーションはインタフェース1004上に到着するそのパケットを参照する。
図11は、図10に示す実施例の逆方向の通過を示している。アプリケーション1008は、ルーティングデータベース602により定義されたルーティング及びパケットの宛先による適切なインタフェース1004内にパケット1100を導入する。LINUXデータパス等のデータパスは、パケットの宛先アドレスのためのエグレスフロントパネルインタフェースを一意的に識別するVLANタグに各インタフェースをマッピングするようにプログラミングされる。
特に、(制御プレーン要素300に接続された)イングレスリーフ要素104bは、アプリケーション1008からパケット1100を受信し、適切なエグレスリーフ要素104a、即ち、上記のルーティングデータベース602によるプログラミングによりパケットがルーティングされるべきエグレスリーフ要素、のためのVLANタグを検索する。イングレスリーフ要素104bは、パケット1100にVLANタグをタグ付けし、タグ付けされたパケット1102を論理ルータ100の要素102、104を通してエグレスリーフ要素104aに転送する(パケット1104参照)。エグレスリーフ要素104は、VLANタグを取り外し、VLANタグを取り外されたパケット1106を正しいフロントパネルポート、即ち、ルーティングデータベース602によるプログラミング及びパケットの宛先に対応するルーティングに対応し、VLANタグに関連するフロントパネルポート、の外部に転送する。
図12、13及び14を参照して、論理ルータ100及び制御プレーン要素300は、以下の機能の全て又はいくつかを実装するようにプログラミングされる。
・処理レベル再開
・ルートプロセッサ冗長性
・ルータ状態データベース冗長性
・ファブリック要素、リンク障害
・処理レベル再開
・ルートプロセッサ冗長性
・ルータ状態データベース冗長性
・ファブリック要素、リンク障害
図12、13及び14の実施例及び対応する記載は、故障に強い論理ルータ100を提供するために複数の制御プレーン要素300を含む実装がどのように使用されるか示している。
図12は、高可用性論理ルータ100を実装するための制御プレーン要素300の構成を示している。3つのノードの制御プレーン要素のクラスタは、図12に図示されている制御プレーン要素300a、300b、300cを含む。制御プレーン要素300aは、第1のルートプロセッサ600aとして指定されるルートプロセッサ600のインスタンス600aを実行する第1の制御プレーン要素である。制御プレーン要素300bは、第2のルートプロセッサ600bとして指定されるルートプロセッサ600のインスタンス600bを実行する。この実施例において、制御プレーン要素300cは、ルートプロセッサ600のインスタンスを実行しない。
各制御プレーン要素300a、300b、300cは、個々のルータ状態データベース602a、602b、602cをそれぞれ含むことができる。ルートプロセッサ600a、600bのそれぞれは、他のルートプロセッサ600b、600a(600bが600aをチェック、600aが600bをチェック)上でヘルスチェック診断を実行する。図12に図示されているように、第1のルートプロセッサ600aは、制御プレーン要素300a、300b、300cのそれぞれにおいて各ルータ状態データベース602a、602b、602cとインタフェース接続される。
制御プレーン要素300aのルータ状態データベース602aは、制御プレーン要素300bのルータ状態データベース602bとヘルスチェック複製データを共有する。ルータ状態データベース602bは、制御プレーン要素300cのルータ状態データベース602cとヘルスチェック複製データを共有する。このようにして、第1及び第2のルートプロセッサ600a、600bのヘルスに関連するデータが、複数のデータベース602a、602b、602cにわたって冗長に記憶される。
いくつかの実装において、第1のルートプロセッサ600aは、ルータ状態データベース602a、602b、602cにおける必要状態をチェックポイント化する。図12に図示されているように、ルータ状態データベース602a、602b、602cは、全てのクラスタノード上に生成される。さらに、ルータ状態データベース602a、602b、602cのデータ断片は、冗長性のための内部的に複製され、各ルートプロセッサ600a、600bは、フェイルオーバーを検出するために内部のヘルスチェックを実行することができる。第1のルートプロセッサ600a上のヘルスチェックが失敗した場合、図13に図示されているように、第2のルートプロセッサ600bが第1のルートプロセッサとなり、第1のルートプロセッサ600aの機能を引き継ぐ。
図13は、第1のルートプロセッサ600aの故障、及び第2のルートプロセッサ600bへの第1のステータスの移行を示している。図示されているように、第2のルートプロセッサ600bは、ルータ状態データベース602a、602b、602cのそれぞれと接続を確立し、チェックポイント化されたデータを読み込んでシステム状態(例えば、チェックポイント毎の第2のルートプロセッサ600bの状態及び/又は論理ルータ100の要素102、104の状態)を復元する。したがって、第2のルートプロセッサ600bは、第1のルートプロセッサ600aの役割を引き継ぐ。このようにして、隣接制御プレーン要素300a、300cとの接続が再確立され、優雅な再開が開始される。例えば、新しい第1のルートプロセッサ600aの機能は、システム状態が復元されると、ルートプロセッサ600a機能に関して、上述のように継続される。
図14を参照にして、いくつかの実装は、第1の制御プレーン要素300aの故障を原因とするプロビジョニングを含むこともできる。主制御プレーン要素が故障する例示的シナリオが、図14に図示されている。
第1の制御プレーン要素300aが故障した場合、第2のルートプロセッサ600bをホスティングする制御プレーン要素300bが、第1のルートプロセッサ600a上のヘルスチェックの1つにおける故障の検出に応答して、主制御プレーン要素の役割を引き受ける。その後、ルートプロセッサ600bは、主ルートプロセッサの役割を引き受け、図14に図示されているように、健全なルータ状態データベース602b、602cとの接続を確立する。ルータ状態データベース602b、602cは、第1の制御プレーン要素300aの故障に関連する任意の分割フェイルオーバーを内部的に処理するように構成されることができる。
図1~図14を参照して上述されている実施形態は、以下の機能及び利点を提供することができる。
・JERICHO 2及びRAMONクラスデバイス等の既存のシリコンネットワークデバイスに基づくClosベースのファブリック
・セルフルーティングファブリック
・セルベースの効果的な負荷分散
・エンドツーエンドスケジューリング
・外部サーバ上で実行される制御プレーン
・論理シャーシ管理
・シングルボックスルックアンドフィール
・スケール変更可能な冗長ルータ状態データベース
・全てのレベルにおける回復力
・JERICHO 2及びRAMONクラスデバイス等の既存のシリコンネットワークデバイスに基づくClosベースのファブリック
・セルフルーティングファブリック
・セルベースの効果的な負荷分散
・エンドツーエンドスケジューリング
・外部サーバ上で実行される制御プレーン
・論理シャーシ管理
・シングルボックスルックアンドフィール
・スケール変更可能な冗長ルータ状態データベース
・全てのレベルにおける回復力
図15~図18には、論理ルータ100を実装するための代替アプローチが示されている。代替アプローチは、バックプレーンのスパインユニットとしてスタンドアロンのスイッチを使用するルーテッドバックプレーンファブリックを含む。バックプレーン自体は、フロントパネルポートを介して結合されたClosファブリックに基づいている。ルーテッドバックプレーンファブリックは、以下の主コンポーネントを使用して実現される。
・レイヤ3(L3)ファブリックポート
・ファブリック近隣探索のためのLSoE(イーサネットにわたるリンク状態)
・ユニット間IP到達性のためのボーダゲートウェイプロトコル最短パス優先(Border Gateway Protocol shortest path first)(BGP-SPF)制御プレーン
・「スイッチポート」検出のためのBGP-SPF拡張
・遠隔「スイッチポート」へ/からセットアップされたマルチプロトコルラベルスイッチング(MPLS)トンネル
・レイヤ3(L3)ファブリックポート
・ファブリック近隣探索のためのLSoE(イーサネットにわたるリンク状態)
・ユニット間IP到達性のためのボーダゲートウェイプロトコル最短パス優先(Border Gateway Protocol shortest path first)(BGP-SPF)制御プレーン
・「スイッチポート」検出のためのBGP-SPF拡張
・遠隔「スイッチポート」へ/からセットアップされたマルチプロトコルラベルスイッチング(MPLS)トンネル
LSoE及びBGP-SPFは、分割されたシャーシベースの論理ルータ100のためのルーテッドバックプレーンを構築する、この設計において活用されている標準化されたプロトコルである。このようなルーテッドバックプレーンの設計は、以下により詳細に説明されている。
図15は、スタンドアロンのバックプレーン構造を使用して実装された論理ルータ100の物理的接続を示している。この実装において、集中制御装置1500は、N個のスパインユニット1502(SU-1からSU-N)とインタフェース接続される。各スパインユニット1502のフロントパネルポートのそれぞれは、ファブリックポートとして指定されている。システムは、M個のラインユニット1504(LU-N+1からLU-N+M)も含んでいる。ラインユニット1504のバックプレーンポートも、ファブリックポートとして指定されている。制御装置は、同様に、スパインユニット1502に結合されているファブリックポートを実装することができる。N個のスパインユニット1502のそれぞれは、スパインユニット1502のファブリックポート及びラインユニット1504のファブリックポートを使用して、M個のラインユニット1504のそれぞれとインタフェース接続される。さらに、M個のラインユニット1504のそれぞれは、それぞれがスイッチポートとして指定されるX個のフロントパネルポートを含むことができる。図15において、以下の表示が使用されている。
・LU:ラインユニット
・SU:スパインユニット
・N:スパインユニットの数
・M:ラインユニットの数
・X:各ラインユニット上のスイッチポートの数
・swpA/B:ラインユニットA上のスイッチポートの数B
・fpA/B:ユニットA(制御装置、スパインユニット、又はラインユニットの数0からN+M)上のファブリックポートの数B
・LU:ラインユニット
・SU:スパインユニット
・N:スパインユニットの数
・M:ラインユニットの数
・X:各ラインユニット上のスイッチポートの数
・swpA/B:ラインユニットA上のスイッチポートの数B
・fpA/B:ユニットA(制御装置、スパインユニット、又はラインユニットの数0からN+M)上のファブリックポートの数B
図15の実施形態は、図1~図14に関して上述のものと同じClos接続を使用することができる。Clos接続は、スタンドアロンのバックプレーン構造を実装するためにユニット1502、1504間をフローする必要がある実行時間運用データと同様に、ルーティング制御プレーン及びユーザ構成から得られた内部スイッチ状態を分散するために使用される。
スパインユニット1502及びラインユニット1504のファブリックポート間の相互接続により実装されるバックプレーンファブリックは、全てのラインユニット1504及び制御装置1500にわたって移送されるデータトラフィックパケットを提供する。全てのラインユニット1504及び制御装置1500のファブリックポートにわたる移送アンダーレイ(transport underlay)としてMPLSルーテッドファブリックを使用することができる。ファブリックは、以下の特性の全て又はいくつかを有することができる。
・各ラインユニット1504のファブリックポートは、プライベートIP(インターネットプロトコル)アドレスを有する内部ファブリックVRF(仮想ルーティング及び転送)におけるレイヤ3ルーテッドポートとして自動設定される。
・BGP-SPFは、ファブリックVRF内の全てのファブリックポートにわたるレイヤ3到達性を確立するための内部ファブリックルーティングプロトコルとして使用される。
・ラインユニット1504、スパインユニット1502、及び制御装置ノード1500のそれぞれは、ローカルファブリックポート上でBGP-SPFルーティングプロトコルのインスタンスを実行する。
・LSoEは、対応するカプセル化及びレイヤ3近隣を探索する探索プロトコルとして使用される。
・LSoE学習近隣は、BGP内にプッシュされ、直接接続されたレイヤ2ファブリックポートにわたるBGP-SPFセッションを起動する。
・BGP-SPFピアリングは、結果的に、ファブリックにおける各リーフ-スパイン接続上に確立される。
・ファブリックトポロジは、各ノード上で学習され、ファブリックVRF IP到達性は、BGP-SPF演算を介して各ルーテッドファブリックポートに確立される。
・MPLS移送は、さらにセットアップされ、この文書において以下により詳しく説明されている。
・各ラインユニット1504のファブリックポートは、プライベートIP(インターネットプロトコル)アドレスを有する内部ファブリックVRF(仮想ルーティング及び転送)におけるレイヤ3ルーテッドポートとして自動設定される。
・BGP-SPFは、ファブリックVRF内の全てのファブリックポートにわたるレイヤ3到達性を確立するための内部ファブリックルーティングプロトコルとして使用される。
・ラインユニット1504、スパインユニット1502、及び制御装置ノード1500のそれぞれは、ローカルファブリックポート上でBGP-SPFルーティングプロトコルのインスタンスを実行する。
・LSoEは、対応するカプセル化及びレイヤ3近隣を探索する探索プロトコルとして使用される。
・LSoE学習近隣は、BGP内にプッシュされ、直接接続されたレイヤ2ファブリックポートにわたるBGP-SPFセッションを起動する。
・BGP-SPFピアリングは、結果的に、ファブリックにおける各リーフ-スパイン接続上に確立される。
・ファブリックトポロジは、各ノード上で学習され、ファブリックVRF IP到達性は、BGP-SPF演算を介して各ルーテッドファブリックポートに確立される。
・MPLS移送は、さらにセットアップされ、この文書において以下により詳しく説明されている。
外部BGPピアリング、IGP(内部ゲートウェイプロトコル)ルーティングプロトコル、ARP、及びND(近隣探索)を含む論理ルータ100の最外装制御プレーンは、制御装置ノード1500上でホスティングされる。即ち、全てのノード1500、1502、1504にわたって分散されているバックプレーンファブリック制御プレーンを除いて、最も論理的なルータ制御プレーン機能は、制御装置ノード1500上に集中される。しかしながら、図示されているアーキテクチャは、必要に応じて、ラインユニット1504にわたって分散される特定の機能(BFD(双方向フォーワーディング検出)、LLDP(リンク層検出プロトコル)、VRRP(virtual router redundancy protocol)(仮想ルータ冗長化プロトコル)及びLSoE等)を可能にする。ユニット1502、1504のデータパスは、ローカルバウンドパケットをローカルCPU(分散機能のため)又は制御装置ノード1500(集中制御プレーンを実装するため)に送信するように適宜プログラミングされる。
制御装置ノード上で実行されている集中論理ルータ制御プレーンは、ラインユニット1504にわたって分散されているデータプレーンのプログラミングを駆動する。一段転送モデルは、(a)イングレスラインユニット1504上で全てのレイヤ3ルートルックアップが実行され、(b)結果として得られる再書き込み及びエグレスポートがイングレスラインユニット1504上で解読されるモデルとして定義される。全ての結果として得られるカプセル化再書き込みをパケットに加え、パケットは、結果として得られたエグレスポート情報と共に、バックプレーン移送ファブリックをわたってエグレスラインユニット1504に送信される。全てのパケット編集は、イングレスラインユニット1504上で起こる。エグレスラインユニット1504は、単にパケットをエグレスポート上に転送する。上記で定義された一段転送モデルは、ラインユニットにわたるレイヤ3転送を達成するこの論理ルータ100内のスタンドアロンのラインユニット1504にわたってシミュレートされる。
・LI再書き込みは、イングレスラインユニット(LU)1504上に書き込みされ解読される。
・パケットは、MPLSトンネルにわたってエグレスLU1504にトンネルされる。
・MPLSラベルはエグレスLU1504上にエグレスポートを解読する。
・LI再書き込みは、イングレスラインユニット(LU)1504上に書き込みされ解読される。
・パケットは、MPLSトンネルにわたってエグレスLU1504にトンネルされる。
・MPLSラベルはエグレスLU1504上にエグレスポートを解読する。
いくつかの実施形態において、全てのラインユニット1504のフロントパネルポート(ファブリックポートとして指定されているポートを除く)は、上述のように外部スイッチポートとして指定されている。これらのスイッチポートのそれぞれは、論理ルータ100におけるインタフェースとして示されている。全ての論理ルータのインタフェースは、全てのラインユニット上のデータプレーンと同様に、制御装置1500上のデータプレーン、制御プレーン、及び管理プレーン内に示されている。例えば、インタフェース「swp3/2」は、ラインユニット3上のポート2を示し、全てのラインユニット1504上でデータプレーン内にプログラミングされる。制御装置1500上でホスティングされたルーティング制御プレーン内、及び制御装置ノード1500上でホスティングされた管理プレーン内でも可視である。
いくつかの実施形態において、遠隔ラインユニット上のインタフェースを含む全てのルータインタフェースは、上述のようにラインユニット1504にわたる一段転送を達成するために、各ラインユニット1504上でデータプレーン内にプログラミングされる。ラインユニット1504上のローカルインタフェースは単にローカルポートを解読する。しかしながら、ラインユニット1504上の遠隔インタフェースは、この遠隔インタフェースからエグレスするパケットが遠隔ラインユニット1504に送信され、遠隔ラインユニット1504上の対応するルータポートからエグレスされるように、データプレーン内にプログラミングされる。アンダーレイファブリック移送トンネルは、この目的のためにデータパスをエグレスラインユニット1504に結合するようにセットアップされ、エグレスラインユニット1504上のルータポートを識別するためにオーバーレイカプセル化を使用することができる。
この目的のために使用される移送トンネル及びオーバーレイカプセル化に関しては、いくつかの選択肢がある。
・エグレスポートを識別するための、純IPファブリック移送(IPトンネル)及びVXLAN(virtual extensible LAN)(仮想拡張可能LAN)オーバーレイカプセル化(仮想ネットワーク識別子(VNID)等)。
・エグレスポートを識別するための、MPLSファブリック移送(ラベルスイッチドパス(LSP)等)及びMPLSオーバーレイ内部ラベル。
・エグレスポートを識別するための、純IPファブリック移送(IPトンネル)及びVXLAN(virtual extensible LAN)(仮想拡張可能LAN)オーバーレイカプセル化(仮想ネットワーク識別子(VNID)等)。
・エグレスポートを識別するための、MPLSファブリック移送(ラベルスイッチドパス(LSP)等)及びMPLSオーバーレイ内部ラベル。
MPLS移送及びオーバーレイは、このアーキテクチャにおいて使用される。しかしながら、全体のアーキテクチャは、これを達成するためにVXLANトンネルを有するIP移送を使用することを排除しない。
パケットに加えられる内部ラベルカプセル化の数を改善又は最適化するために、移送ラベル及びインタフェースラベルの両方が、両方が物理的ポートを識別する単一ラベルに折りたたまれ、物理的インタフェースをホスティングするラインユニット1504へ移送LSPを提供する、又は、から移送LSPを提供される。このオーバーレイラベルは、エグレスラインユニット1504(例えば、エグレスラインカード)及びインタフェースに向かってスイッチされたエグレストラフィックのためのエグレスインタフェースを識別し、同様に、そのインタフェース上で実行されているルーティングプロトコルをホスティングする制御装置にパントする必要があるインタフェース上のイングレストラフィックのためのイングレスインタフェースを識別する。2つの内部ラベルの割当は、この目的のために定義されることができる。
・イングレスLUから遠隔エグレスポートへのトンネル作成に使用されるローカル(LC、ポート)毎に割り当てられたエグレスラベルは、スイッチドトラフィックのためのエグレスポートを識別する。
・イングレスLUから制御装置へのトンネル作成に使用される(制御装置、ポート)毎に割り当てられたイングレスラベルは、ホスト宛トラフィックのためのイングレスポートを識別する。
・イングレスLUから遠隔エグレスポートへのトンネル作成に使用されるローカル(LC、ポート)毎に割り当てられたエグレスラベルは、スイッチドトラフィックのためのエグレスポートを識別する。
・イングレスLUから制御装置へのトンネル作成に使用される(制御装置、ポート)毎に割り当てられたイングレスラベルは、ホスト宛トラフィックのためのイングレスポートを識別する。
上記ラベルコンテキストのそれぞれは、論理ルータ100内の全てのノード1500、1502、1504にわたってグローバルに範囲指定され、指令LSPと同様に物理的ポートの両方を識別する。上記ラベル割当スキームは、論理ルータ100内の各ルータポートのために割り当てられた2つのグローバルラベルに基本的に結果としてなる。MPLSラベルは静的に確保され、この目的のためにスイッチポートインタフェース検出上に割り当てられ、これらの確保されたラベルは、いくつかの実施形態における外部使用には利用できない。
各ラインユニット1504の各ローカルルータポートに割り当てられた(全ての論理ルータのノード1500、1502、1504にわたって)グローバルに範囲指定されたラベルは、物理的ポートをホスティングするイングレスラインユニットからエグレスラインユニットへの移送LSPと同様にエグレスルータポートの両方を識別する。このラベルは、論理ルータのノード1500、1502、1504上で以下のようにプログラミングされる。
・イングレスラインユニット1504上で、このラベルは、遠隔インタフェース外にエグレスするパケット上に再書き込みされるトンネルカプセル化の結果の一部である。
・スパインユニット1502上で、このラベルは、同じエグレスラベルにより再書き込みするエグレスラインユニットファブリック次ホップにスイッチする。
・エグレスラインユニット上で、このラベルが、(パケットの再書き込み無しで)エグレスインタフェースに単に向けられる。
・イングレスラインユニット1504上で、このラベルは、遠隔インタフェース外にエグレスするパケット上に再書き込みされるトンネルカプセル化の結果の一部である。
・スパインユニット1502上で、このラベルは、同じエグレスラベルにより再書き込みするエグレスラインユニットファブリック次ホップにスイッチする。
・エグレスラインユニット上で、このラベルが、(パケットの再書き込み無しで)エグレスインタフェースに単に向けられる。
このプロセスは、図16に図示されている。図16において、以下の表示が使用されている。
・L(e, x, y): LU-y上のスイッチポートxのためのエグレスラベル
・L(I, x, y): LU-y上のスイッチポートxのためのイングレスラベル
・MAC-x: ユニットXのルータMAC(機械アクセスコード)
・L(e, x, y): LU-y上のスイッチポートxのためのエグレスラベル
・L(I, x, y): LU-y上のスイッチポートxのためのイングレスラベル
・MAC-x: ユニットXのルータMAC(機械アクセスコード)
パケットは、イングレスラインユニット1504(LU-(N+M))により受信される。イングレスラインユニット(LU-(N+M))から出ると、パケットは、図示されているラベルテーブル1600に従ってラベリングされ、ラベルテーブル1600は、エグレスインタフェース(”[12,1,1,2, swp(N+2)/1]->MAC-A”)と同様にエグレスインタフェース(”MAC-A->L(e,x,y)+MAC-1, ポート: fp(N+M)/1->L(e,x,y)+MAC-N, ポート: fp(N+M)/N”)への移送LSP、即ち、トンネルパスを含む。パケットはスパインユニット1502に送信される。スパインユニットSU-Nは、ファブリック次ホップ再書き込み(”L(e,x,y)->MAC-N+2, ポート: fpN/2)及びエグレスラベルを含むラベルテーブル1602に従ってパケットを再書き込みする。スパインユニットSU-Nは、再書き込みされたパケットをエグレスラインユニット1504(LU(N+2))に転送し、エグレスラインユニット1504が、単にエグレスインタフェース(L(e,x,y)->swp(N+2)/1)に向いているラベルテーブル1604に従ってパケットのラベルを変換する。
図17を参照して、(全ての論理ルータのノード1500、1502、1504にわたって)グローバルに範囲指定されたラベルは、(制御装置、ルータポート)毎に割り当てられ、イングレスラインユニットから制御装置カードへの移送LSPと同様にイングレスルータポートの両方を識別する。このラベルは、論理ルータのノード上で以下のようにプログラミングされる。
・イングレスラインユニット1504上で、このラベルは、制御装置にパントされるパケット上に再書き込みされるトンネルカプセル化の結果の一部である。(ラインユニットLU-(N+M)上の図17テーブル1700参照。)
・スパインユニット1502上で、このラベルは、同じエグレスラベルにより再書き込みする制御装置ファブリック次ホップに単にスイッチする。(スパインユニットSU-N上のテーブル1702参照。)
・制御装置上1500で、このラベルは、ホストスタック内のイングレスインタフェースを識別する。(テーブル1704参照。)
・イングレスラインユニット1504上で、このラベルは、制御装置にパントされるパケット上に再書き込みされるトンネルカプセル化の結果の一部である。(ラインユニットLU-(N+M)上の図17テーブル1700参照。)
・スパインユニット1502上で、このラベルは、同じエグレスラベルにより再書き込みする制御装置ファブリック次ホップに単にスイッチする。(スパインユニットSU-N上のテーブル1702参照。)
・制御装置上1500で、このラベルは、ホストスタック内のイングレスインタフェースを識別する。(テーブル1704参照。)
パントされたパケットは、LINUXカーネル内に注入される必要があり、それにより、パケットが到着したフロントパネルポートに対応するLINUXインタフェース上に到着したように見える。スタンドアロンシステム上で、ホストパスは、スイッチ、即ちラインユニット1504(図17の実施例においてはラインユニットLU-(N+M))のローカルCPU上で実行されるLINUXカーネル内で実行される。ラインユニット1504上のASICは、イングレスインタフェースを示すシステムヘッダに到着したパケットを加える。その後、カーネル内のBCM Kネットモジュールが、ハードウェアイングレスインタフェースをLINUXインタフェースにマッピングし、パケットをLINUXデータパス内に注入する。
図示されているアーキテクチャにおいて、ホストデータパスは、複数箇所で実行される。ラインユニット1504上で、パケットは、ラインユニット1504上で実行されるBGP LSVR(link state vector routing)(リンク状態ベクトルルーティング)インスタンスにパントされる必要がある。パケットの宛先が、制御装置1500上で実行される制御プレーンプロトコルインスタンスである場合、その後、ラインユニット1504は、パケットを制御装置に配信可能である必要がある。このパスにはシステムヘッダが存在しないので、イングレスインタフェースは識別され、パケット自体の内部にカプセル化される必要がある。
上述されているように、このことは、イングレスインタフェースを識別する固有のラベルを使用することにより達成される。イングレスインタフェース上のマッチング並びに対応するラベル及びそれに続く転送チェインの供給にACLルールを使用することができる。しかしながら、この結果は、パケットが本当に制御装置1500に送信される必要がある媒位にのみ使用される必要がある。他の場合においては、転送ルックアップはカプセル化を駆動する。
図18には、図15~図17のアプローチによるスタンドアロンのバックプレーンファブリックを起動するためのアプローチが示されている。バックプレーンファブリックの起動及びプログラミングは、明示のユーザ構成又は介在の必要なく、起動時に自動的に起こる。
・レイヤ3(L3)バックプレーン到達性は、ファブリックVRF内の全てのレイヤ3対応ファブリックポートにわたって確立される。
・オーバーレイ移送トンネルは、全ての論理ルータのコンポーネント:ラインユニット1504、スパインユニット1502、及び制御装置1500にわたる全てのルータポートへ/からセットアップされる。
・レイヤ3(L3)バックプレーン到達性は、ファブリックVRF内の全てのレイヤ3対応ファブリックポートにわたって確立される。
・オーバーレイ移送トンネルは、全ての論理ルータのコンポーネント:ラインユニット1504、スパインユニット1502、及び制御装置1500にわたる全てのルータポートへ/からセットアップされる。
図18に図示されているように、バックプレーンファブリックを起動するための方法1800は、管理される各ユニット1500、1502、1504にファブリック構成をダウンロードすること1802を含む。このことは、IPアドレス割当、カード役割、ポート役割、及びポートMPLSラベルを含むことができる。方法1800はさらに、各ユニット1500、1502、1504のファブリックポート上でL3アドレス割当を起動すること1804を含む。方法1800はさらに、ファブリックポート上で、ファブリック近隣を探索し、この方法で取得した各ユニット1500、1502、1504の近隣データベースを制御装置1500上のBGP-LSVRにプッシュするLSoEを起動すること1806を含む。方法1800はさらに、各ユニット1500、1502、1504上のBGP-SP Fインスタンスにより、ピアリングの起動、ファブリックトポロジの学習、及びファブリックVRF内のファブリックIPルートのインストールを実行すること1808を含む。
レイヤ3バックプレーンファブリックの自動的起動は、R0は制御装置を表している以下の説明により調整されることができる。
起動設定(startup config)によるR0の自動構成:
R0が表示され、管理イーサネット(ma1)が起動され、アドレス割当される。R0は、以下を含む起動設定ファイルを読み込む。
・トポロジ:スパインユニット、ラインユニット
・サウスバウンドファブリックインタフェースのためのプライベートアドレス割当
・オーバーレイインタフェーストンネルのためのMPLSラベル
・ラインユニットma1のための管理IPアドレスプール
・ZTP(zero touch provisioning)(ゼロタッチプロビジョニング)/ラインユニット及びスパインユニットのための起動設定
R0が表示され、管理イーサネット(ma1)が起動され、アドレス割当される。R0は、以下を含む起動設定ファイルを読み込む。
・トポロジ:スパインユニット、ラインユニット
・サウスバウンドファブリックインタフェースのためのプライベートアドレス割当
・オーバーレイインタフェーストンネルのためのMPLSラベル
・ラインユニットma1のための管理IPアドレスプール
・ZTP(zero touch provisioning)(ゼロタッチプロビジョニング)/ラインユニット及びスパインユニットのための起動設定
ラインユニットの起動:
R0は、起動設定ファイルからのアドレス割当により、そのサウスバウンドファブリックインタフェースを起動する(図15~図18のトポロジ内のスパインユニット1502及びラインユニット1504)。
R0は、起動設定ファイルからのアドレス割当により、そのサウスバウンドファブリックインタフェースを起動する(図15~図18のトポロジ内のスパインユニット1502及びラインユニット1504)。
R0は、dhcpd(dynamic host configuration protocol daemon)(動的ホスト設定プロトコルデーモン)を実行し、それにより、ラインユニット1504及びスパインユニット1502管理イーサネットma1が、起動設定ファイル内に付与されたプールからアドレスを取得することができる。ユニット1502、1504のラインカード数は、それらが配線されたR0ポートと推定される。R0は、ユニット1502、1504にZTPサービスを実行する。
ラインユニットに起動設定をプッシュする:
R0は、ラインユニット1504及びスパインユニット1502に起動設定をプッシュする。この構成は、各ユニット1502、1504のカード役割を識別し、各ローカルポートを「ファブリックポート」又は「ルータポート」として識別し、ノースバウンドファブリックインタフェースのアドレス割当を特定し、そして、ルータポートオーバーレイトンネルのためのMPLSラベル(ポート毎に2つのラベル)を提供する。
R0は、ラインユニット1504及びスパインユニット1502に起動設定をプッシュする。この構成は、各ユニット1502、1504のカード役割を識別し、各ローカルポートを「ファブリックポート」又は「ルータポート」として識別し、ノースバウンドファブリックインタフェースのアドレス割当を特定し、そして、ルータポートオーバーレイトンネルのためのMPLSラベル(ポート毎に2つのラベル)を提供する。
その後、ユニット1502、1504は、ファブリックポート上でLSoEを実行し、起動設定から期待されるように配線されていることを確かめる。LSoEは、レイヤ3ファブリック近隣及び対応するカプセル化を探索する。LSoEにより学習された情報のデータベースは、標準LSoE機能によりBGP-SPF内にエクスポートされる。
BGP-SPFピアリングが、各ラインユニットからスパインユニットへのファブリックリンク上で確立される。ファブリックトポロジは、各ユニット1502、1504上で学習され、ファブリックVRF IP到達性は、BGP-SPF演算を介して各ルーテッドファブリックポートに確立される。BGP-SPFは、ファブリックVRF内のファブリックルートを用いて、各ローカルラインユニット/スパインユニットRIB(router information base)(ルータ情報ベース)をプログラミングする。この時点で、全てのファブリックポートIPアドレスにわたってIP到達性が確立される。
スイッチポート検出及びトンネル起動:
ローカルルータポートは、各ラインユニット1504上で検出される。検出されたルータポートは、割り当てられたMPLSラベルと共に、各ラインユニット1504上のローカルBGP-LSVRインスタンス内にプッシュされる。BGP-SPFは、IPアドレス割当とは独立するポート+ラベルを保持することができるように、さらに向上される。したがって、BGP-SPFは、論理ルータ内の各「スイッチポート」への最短パス優先(SPF)を演算するように構成される。BGP-SPFは、これらが構成されるユーザVRFとは独立するファブリックVRFトポロジ内にこれらの外部スイッチポートを組み込むこともできる。各ユニット1504上のBGPは、ファブリックVRF次ホップを介して解決される各インタフェースのためのイングレス/エグレスオーバーレイMPLSトンネルのインスタンスを生成する。トンネル到達性は、ファブリックVRF次ホップを介して解決され、トンネルは、上述のように、各ユニット1504上に割り当てられたMPLSラベルを用いてプログラミングされる。
ローカルルータポートは、各ラインユニット1504上で検出される。検出されたルータポートは、割り当てられたMPLSラベルと共に、各ラインユニット1504上のローカルBGP-LSVRインスタンス内にプッシュされる。BGP-SPFは、IPアドレス割当とは独立するポート+ラベルを保持することができるように、さらに向上される。したがって、BGP-SPFは、論理ルータ内の各「スイッチポート」への最短パス優先(SPF)を演算するように構成される。BGP-SPFは、これらが構成されるユーザVRFとは独立するファブリックVRFトポロジ内にこれらの外部スイッチポートを組み込むこともできる。各ユニット1504上のBGPは、ファブリックVRF次ホップを介して解決される各インタフェースのためのイングレス/エグレスオーバーレイMPLSトンネルのインスタンスを生成する。トンネル到達性は、ファブリックVRF次ホップを介して解決され、トンネルは、上述のように、各ユニット1504上に割り当てられたMPLSラベルを用いてプログラミングされる。
R0上のユーザ構成は、バックプレーンファブリックの起動に続き、制御装置1500上で処理される。このユーザ構成及び制御プレーンの結果として演算されるスイッチ状態はさらに、ラインユニット1504の全て又はいくらかにわたるプログラミングのために配信される。
例示的パケットパス
この欄は、上述の欄に記載の制御装置1500及びユニット1502、1504のデータパスプログラミングを使用するシステム内で共通パケットパスがどのように作用するかを説明している。
この欄は、上述の欄に記載の制御装置1500及びユニット1502、1504のデータパスプログラミングを使用するシステム内で共通パケットパスがどのように作用するかを説明している。
ARP解決
ユニット1502、1504上のグリーン処理(Glean Processing)は、パントパスに向けてプログラミングされた不完全な次ホップ又はサブネット(グリーン)ルートを解決する宛先IPアドレス上のイングレスL3ルートルックアップにより実行される。パントパスは、イングレスインタフェーストンネルから制御装置1500へ向けてプリプログラムされる。イングレスレイヤ2パケットは、イングレスインタフェースラベルによりカプセル化され、ファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は外部レイヤ2を終了する。スパインユニット1502上のMPLSラベル内ルックアップは、イングレスインタフェースラベルに向けられ、ファブリック制御装置次ホップに再書き込みされる。この情報は、パケットを制御装置1500にルーティングするために使用される。制御装置は外部レイヤ2を終了する。制御装置1500は、POP(point of presence)(存在点)としてMPLSラベル内ルックアップ動作を実行するようにプログラミングされ、イングレスインタフェースコンテキストを識別する。制御装置は、パケットの宛先IP上でL3ルートルックアップを実行し、不完全な次ホップ又はサブネット(グリーン)ルートを解決する。その後、制御装置1500は、イングレスインタフェースを用いて、ARP解決のための次ホップ又はサブネットルートを使用するパケットを配信する。
ユニット1502、1504上のグリーン処理(Glean Processing)は、パントパスに向けてプログラミングされた不完全な次ホップ又はサブネット(グリーン)ルートを解決する宛先IPアドレス上のイングレスL3ルートルックアップにより実行される。パントパスは、イングレスインタフェーストンネルから制御装置1500へ向けてプリプログラムされる。イングレスレイヤ2パケットは、イングレスインタフェースラベルによりカプセル化され、ファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は外部レイヤ2を終了する。スパインユニット1502上のMPLSラベル内ルックアップは、イングレスインタフェースラベルに向けられ、ファブリック制御装置次ホップに再書き込みされる。この情報は、パケットを制御装置1500にルーティングするために使用される。制御装置は外部レイヤ2を終了する。制御装置1500は、POP(point of presence)(存在点)としてMPLSラベル内ルックアップ動作を実行するようにプログラミングされ、イングレスインタフェースコンテキストを識別する。制御装置は、パケットの宛先IP上でL3ルートルックアップを実行し、不完全な次ホップ又はサブネット(グリーン)ルートを解決する。その後、制御装置1500は、イングレスインタフェースを用いて、ARP解決のための次ホップ又はサブネットルートを使用するパケットを配信する。
ARP要求
制御装置1500は、イングレスL3インタフェース上でブロードキャストARP要求を生成する。制御装置L3インタフェースは、エグレスインタフェーストンネルポートに解決する。ブロードキャストARP要求のARPパケットは、エグレスインタフェースラベルによりカプセル化され、ファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は外部レイヤ2を終了する。スパインユニット1502上のMPLSラベル内ルックアップは、イングレスインタフェースラベルに向けられ、ファブリックラインユニット次ホップに再書き込みされる。カプセル化されたパケットは、MPLSラベル内ルックアップに従って、ファブリックポートからエグレスラインユニット1504に送信される。エグレスラインユニット1504は外部レイヤ2を終了する。エグレスラインユニット1504は、MPLSラベル内ルックアップを実行し、その結果としてPOPを得て、MPLSラベル内ルックアップから識別されたエグレスラインユニットのエグレスインタフェース上に転送する。
制御装置1500は、イングレスL3インタフェース上でブロードキャストARP要求を生成する。制御装置L3インタフェースは、エグレスインタフェーストンネルポートに解決する。ブロードキャストARP要求のARPパケットは、エグレスインタフェースラベルによりカプセル化され、ファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は外部レイヤ2を終了する。スパインユニット1502上のMPLSラベル内ルックアップは、イングレスインタフェースラベルに向けられ、ファブリックラインユニット次ホップに再書き込みされる。カプセル化されたパケットは、MPLSラベル内ルックアップに従って、ファブリックポートからエグレスラインユニット1504に送信される。エグレスラインユニット1504は外部レイヤ2を終了する。エグレスラインユニット1504は、MPLSラベル内ルックアップを実行し、その結果としてPOPを得て、MPLSラベル内ルックアップから識別されたエグレスラインユニットのエグレスインタフェース上に転送する。
ARP応答
ARP応答パケットは、制御装置1500へのパントパスを用いてプログラミングされる。パントパスは、プリプログラムされ、制御装置1500へのイングレスインタフェーストンネルに向けられる。ラインユニット1504からのイングレスL2ARPパケットは、イングレスインタフェースラベルによりカプセル化され、パントパスに従ってファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は外部レイヤ2を終了する。スパインユニット1502上のMPLSラベル内ルックアップは、イングレスインタフェースラベルに向けられ、ファブリック制御装置次ホップに再書き込みされる。この情報は、ARPパケットを制御装置1500に転送するために使用される。
ARP応答パケットは、制御装置1500へのパントパスを用いてプログラミングされる。パントパスは、プリプログラムされ、制御装置1500へのイングレスインタフェーストンネルに向けられる。ラインユニット1504からのイングレスL2ARPパケットは、イングレスインタフェースラベルによりカプセル化され、パントパスに従ってファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は外部レイヤ2を終了する。スパインユニット1502上のMPLSラベル内ルックアップは、イングレスインタフェースラベルに向けられ、ファブリック制御装置次ホップに再書き込みされる。この情報は、ARPパケットを制御装置1500に転送するために使用される。
制御装置1500は外部レイヤ2を終了する。制御装置1500は、MPLSラベル内ルックアップを実行し、POPとしてプログラミングされる。制御装置は、ルックアップ動作に従って、イングレスインタフェースコンテキストを識別する。ラインユニット1504からパケット内にカプセル化された内部パケットは、ARPパケットとして識別され、制御装置1500上で実行されるARPモジュールに配信され、ARPモジュールが、アドレス解決プロトコル(ARP)に従ってARP応答を処理する。
イングレスLC->エグレスLCルーテッドパケットウォーク
イングレスラインユニット1504は、パケットの宛先IP上でイングレスL3ルートルックアップを実行し、次ホップ再書き込み、L3エグレスインタフェース、L2エグレスインタフェーストンネルポートを解決する。パケットは、エグレスL3インタフェース及びL2ポートから得られたVLAN編集及びルートルックアップからの次ホップ再書き込み結果により再書き込みされる。結果として得られるレイヤ2パケットは、エグレスインタフェースラベルによりカプセル化され、ファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックスパイン次ホップに従って、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は、カプセル化されたパケットを受信し、外部レイヤ2を終了し、イングレスインタフェースラベルに向けられたMPLSラベル内ルックアップを実行し、ファブリックエグレスラインユニット次ホップに再書き込みされる。スパインユニット1502は、ファブリックエグレスラインユニット次ホップにより参照されたエグレスラインユニット1504にカプセル化されたパケットを送信する。エグレスラインユニット1504は、外部レイヤ2を終了し、MPLSラベル内ルックアップを実行し、その結果POPを得て、カプセル化されたパケットにより参照されたエグレスラインユニット1504のエグレスインタフェース上にカプセル化されたパケットを転送する。
イングレスラインユニット1504は、パケットの宛先IP上でイングレスL3ルートルックアップを実行し、次ホップ再書き込み、L3エグレスインタフェース、L2エグレスインタフェーストンネルポートを解決する。パケットは、エグレスL3インタフェース及びL2ポートから得られたVLAN編集及びルートルックアップからの次ホップ再書き込み結果により再書き込みされる。結果として得られるレイヤ2パケットは、エグレスインタフェースラベルによりカプセル化され、ファブリックスパイン次ホップに再書き込みされる。カプセル化されたパケットは、ファブリックスパイン次ホップに従って、ファブリックポートからスパインユニット1502の1つに送信される。スパインユニット1502は、カプセル化されたパケットを受信し、外部レイヤ2を終了し、イングレスインタフェースラベルに向けられたMPLSラベル内ルックアップを実行し、ファブリックエグレスラインユニット次ホップに再書き込みされる。スパインユニット1502は、ファブリックエグレスラインユニット次ホップにより参照されたエグレスラインユニット1504にカプセル化されたパケットを送信する。エグレスラインユニット1504は、外部レイヤ2を終了し、MPLSラベル内ルックアップを実行し、その結果POPを得て、カプセル化されたパケットにより参照されたエグレスラインユニット1504のエグレスインタフェース上にカプセル化されたパケットを転送する。
図19は、論理ルータ100の制御プレーン要素300、制御装置1500、又は様々な要素102、104、1502、1504等の、ここに開示されているシステム及び方法を実装するために使用することができる例示的なコンピューティングデバイス1900を示すブロック図である。
コンピューティングデバイス1900は、ここに開示されている様々な処理を実行するために使用することができる。コンピューティングデバイス1900は、サーバ、顧客、又は任意の他のコンピューティングエンティティとして機能することができる。コンピューティングデバイスは、ここに開示されている様々なモニタリング機能を実行することができ、ここに開示されているアプリケーションプログラム等の、1以上のアプリケーションプログラムを実行することができる。コンピューティングデバイス1900は、デスクトップコンピュータ、ノートパソコン、サーバコンピュータ、携帯用コンピュータ、タブレット等の多種多様なコンピューティングデバイスの任意のコンピューティングデバイスであることができる。
コンピューティングデバイス1900は、1以上のプロセッサ1902、1以上のメモリデバイス1904、1以上のインタフェース1906、1以上のマスストレージデバイス1908、1以上の入力/出力(I/O)デバイス1910、及び表示デバイス1930を含み、その全てがバス1912に接続されている。プロセッサ1902は、メモリデバイス1904及び/又はマスストレージデバイス1908に記憶されている命令を実行する1以上のプロセッサ又は制御装置を含む。プロセッサ1902は、キャッシュメモリ等の、様々な型のコンピュータ可読媒体を含むこともできる。
メモリデバイス1904は、揮発性メモリ(例えば、ランダムアクセスメモリ(RAM)1914)及び/又は不揮発性メモリ(例えば、読み出し専用メモリ(ROM)1916)等の、様々なコンピュータ可読媒体を含むことができる。メモリデバイス1904は、フラッシュメモリ等の、書換可能ROMを含むこともできる。
マスストレージデバイス1908は、磁気テープ、磁気ディスク、光ディスク、ソリッドステートメモリ(例えば、フラッシュメモリ)等の、様々なコンピュータ可読媒体を含むことができる。図19に図示されているように、特定のマスストレージデバイスはハードディスクドライブ1924である。様々なコンピュータ可読媒体から読出、及び/又は、様々なコンピュータ可読媒体へ書込することを可能にするために、マスストレージデバイス1908内に様々なドライブを含むこともできる。マスストレージデバイス1918は、取り外し可能な媒体1926及び/又は取り外し不可能な媒体を含む。
I/Oデバイス1910は、コンピューティングデバイス1900からデータ及び/又は他の情報をコンピューティングデバイス1900から取り出し、又は、コンピューティングデバイス1900に入力することを可能にする様々なデバイスを含む。例示的なI/Oデバイス1910は、カーソル制御装置、キーボード、キーパッド、マイク、モニタ又は他の表示デバイス、スピーカ、プリンタ、ネットワークインタフェースカード、モデム、レンズ、CCD、又は他の撮像デバイス等を含む。
表示デバイス1930は、1以上のユーザのコンピューティングデバイス1900に情報を表示することができる任意の型のデバイスを含む。表示デバイス1930の例は、モニタ、表示端末、映像投影装置等を含む。
インタフェース1906は、コンピューティングデバイス1900が他のシステム、デバイス、又はコンピューティング環境と相互作用することを可能にする様々なインタフェースを含む。例示的なインタフェース1906は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、無線ネットワーク、及びインターネットへのインタフェース等の、任意の数の異なるネットワークインタフェース1920を含む。他のインタフェースは、ユーザインタフェース1918及び周辺機器インタフェース1922を含む。インタフェース1906は、1以上のユーザインタフェース要素1918を含むこともできる。インタフェース1906は、プリンタ、ポインティングデバイス(マウス、トラックパッド等)、キーボード等のインタフェースのような、1以上の周辺機器インタフェースを含むこともできる。
バス1912は、バス1912に接続されている他のデバイス又はコンポーネントと同様に、プロセッサ1902、メモリデバイス1904、インタフェース1906、マスストレージデバイス1908、及びI/Oデバイス1910が互いに通信することを可能にする。バス1912は、システムバス、PCIバス、IEEE1394バス、USBバスなどの、1以上の複数の型のバス構造を示している。
説明のために、プログラム及び他の実行可能なプログラムコンポーネントは、ここでは分離したブロックとして示されているが、そのようなプログラム及びコンポーネントは、コンピューティングデバイス1900の異なるストレージコンポーネント内に様々な時間に存在しており、プロセッサ1902により実行されると理解される。代替的に、ここに記載のシステム及び処理は、ハードウェア、ハードウェアの組み合わせ、ソフトウェア、及び/又はファームウェア内に実装することができる。例えば、1以上の特定用途向け集積回路(ASIC)は、ここに開示されている1以上のシステム及び処理を実行するようにプログラミングされることができる。
Claims (20)
- ネットワークにより接続され、シャーシの共通のバックプレーンによっては互いに接続されていない複数の分解されたネットワーク要素と、
前記複数の分解されたネットワーク要素に接続された、前記複数の分解されたネットワーク要素の外部の第1の制御要素と、
前記複数の分解されたネットワーク要素に接続された第2の制御要素と、
を含み、
第1のルートデータベースが前記第1の制御要素上に存在し、
前記第1のルートデータベースの複製である第2のルートデータベースが前記第2の制御要素上に存在し、
ルートプロセッサが、前記第1の制御要素上で実行され、前記複数の分解されたネットワーク要素が論理ルータとして機能するように構成されるようにプログラミングされ、
前記ルートプロセッサが、前記複数の分解されたネットワーク要素上でホスティングされた1以上のルーティングプロトコルの為のデータプレーンと共に、前記1以上のルーティングプロトコルの為の制御プレーンをホスティングすることにより、ルータ状態管理を実行するように構成されることを特徴とするルーティングのシステム。 - 前記ルートプロセッサが、第1のルートプロセッサであり、
第2のルートプロセッサが、前記第2の制御要素上で実行され、前記第2のルートプロセッサが、前記第1のルートプロセッサの状態をモニタリングするようにプログラミングされる、
ことを特徴とする請求項1に記載のシステム。 - 前記第2のルートプロセッサが、
前記第1のルートプロセッサの故障を検出し、
前記第1のルートプロセッサの故障が検出されると、前記第2のルートプロセッサに制御を移送する、
ようにプログラミングされることを特徴とする請求項2に記載のシステム。 - 前記第1のルートプロセッサが、前記第1のルートデータベース及び前記第2のルートデータベース内にチェックポイントを作成するようにプログラミングされ、前記チェックポイントが、前記論理ルータの状態を記録するチェックポイントデータを含み、
前記第1のルートプロセッサの故障を検出すると、前記第2のルートプロセッサが、
前記第2のルートデータベース内の前記チェックポイントから前記チェックポイントデータを読出し、
前記チェックポイントデータに従って前記論理ルータの状態を回復する、
ようにプログラミングされることを特徴とする請求項3に記載のシステム。 - 前記複数の分解されたネットワーク要素に接続された第3の制御要素をさらに含み、前記第3の制御要素が、前記第2のルートデータベースの複製である第3のルートデータベースをホスティングする、
ことを特徴とする請求項1に記載のシステム。 - 前記第1のルートデータベースが、前記複数の分解されたネットワーク要素上で実行されるラインカードソフトウェアにより状態データを共有するようにプログラミングされることを特徴とする請求項1に記載のシステム。
- 前記ラインカードソフトウェアが、前記複数の分解されたネットワーク要素上で実行されるコンテナ内で実行されることを特徴とする請求項6に記載のシステム。
- 前記ルートプロセッサが、
前記論理ルータにわたるインタフェース制御と、
ルーティングプロトコルと、
の少なくとも1つを提供するようにプログラミングされることを特徴とする請求項1に記載のシステム。 - 前記第1のルートデータベース及び前記第2のルートデータベースが、前記論理ルータの状態及び前記論理ルータの統計を記憶することを特徴とする請求項1に記載のシステム。
- 前記第1の制御要素が及び第2の制御要素がそれぞれ、前記複数の分解されたネットワーク要素の外部のコンピュータシステムであることを特徴とする請求項1に記載のシステム。
- 前記複数の分解されたネットワーク要素及び前記ネットワークが、セルフルーティングネットワークファブリックを実装することを特徴とする請求項1に記載のシステム。
- 前記複数の分解されたネットワーク要素が、RAMONシリコンデバイスを含む複数のスパイン要素と、JERICHO-2シリコンデバイスを含む複数のリーフ要素と、を含むことを特徴とする請求項1に記載のシステム。
- ネットワークにより接続され、シャーシの共通のバックプレーンによっては互いに接続されていない複数の分解されたネットワーク要素を提供し、
前記複数の分解されたネットワーク要素に接続された、前記複数の分解されたネットワーク要素の外部の第1の制御要素を提供し、
前記複数の分解されたネットワーク要素に接続された第2の制御要素を提供し、
前記第1の制御要素上に存在する第1のルートデータベースをホスティングし、
前記第2の制御要素上に存在する前記第1のルートデータベースの複製である第2のルートデータベースをホスティングし、
前記第1のルートデータベースに従って前記複数の分解されたネットワーク要素を論理ルータとして機能するように構成するために、ルートプロセッサを前記第1の制御要素上で実行し、前記ルートプロセッサが、1以上のルーティングプロトコルの為の制御プレーンをホスティングすることにより、ルータ状態管理を実行するように構成され、そして、
前記複数の分解されたネットワーク要素上で前記1以上のルーティングプロトコルの為のデータプレーンを実行する、
ことを含むことを特徴とするルーティングの方法。 - 前記ルートプロセッサが、第1のルートプロセッサであり、
第2のルートプロセッサが、前記第2の制御要素上で実行され、前記第2のルートプロセッサが、前記第1のルートプロセッサの状態をモニタリングする、
ことをさらに含むことを特徴とする請求項13に記載の方法。 - 前記第2のルートプロセッサにより、
前記第1のルートプロセッサの故障を検出し、
前記第1のルートプロセッサの故障が検出されると、前記第2のルートプロセッサに制御を移送する、
ことをさらに含むことを特徴とする請求項14に記載の方法。 - 前記第1のルートプロセッサにより、
前記第1のルートデータベース及び前記第2のルートデータベース内にチェックポイントを作成し、前記チェックポイントが、前記論理ルータの状態を記録するチェックポイントデータを含み、
前記第1のルートプロセッサの故障を検出すると、前記第2のルートプロセッサにより、
前記第2のルートデータベース内の前記チェックポイントから前記チェックポイントデータを読出し、
前記チェックポイントデータに従って前記論理ルータの状態を回復する、
ことをさらに含むことを特徴とする請求項15に記載の方法。 - 前記複数の分解されたネットワーク要素に接続された第3の制御要素を提供し、前記第3の制御要素が、前記第2のルートデータベースの複製である第3のルートデータベースをホスティングする、
ことをさらに含むことを特徴とする請求項13に記載の方法。 - 前記第1のルートデータベースにより、前記複数の分解されたネットワーク要素上で実行されるラインカードソフトウェアに状態データを提供することをさらに含むことを特徴とする請求項13に記載の方法。
- 前記ルートプロセッサにより、
前記論理ルータにわたるインタフェース制御と、
ルーティングプロトコルと、
の少なくとも1つを実行することをさらに含むことを特徴とする請求項13に記載の方法。 - 前記第1の制御要素が及び第2の制御要素がそれぞれ、前記複数の分解されたネットワーク要素の外部のコンピュータシステムであることを特徴とする請求項13に記載の方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862771407P | 2018-11-26 | 2018-11-26 | |
US62/771,407 | 2018-11-26 | ||
JP2021529417A JP7528077B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
PCT/US2019/063313 WO2020112817A1 (en) | 2018-11-26 | 2019-11-26 | Logical router comprising disaggregated network elements |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021529417A Division JP7528077B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024153744A true JP2024153744A (ja) | 2024-10-29 |
Family
ID=70770016
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021529414A Active JP7462630B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2021529415A Active JP7525486B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2021529416A Active JP7528076B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2021529417A Active JP7528077B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2024118793A Pending JP2024150665A (ja) | 2018-11-26 | 2024-07-24 | 分解されたネットワーク要素を含む論理ルータ |
JP2024118795A Pending JP2024153744A (ja) | 2018-11-26 | 2024-07-24 | 分解されたネットワーク要素を含む論理ルータ |
Family Applications Before (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021529414A Active JP7462630B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2021529415A Active JP7525486B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2021529416A Active JP7528076B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2021529417A Active JP7528077B2 (ja) | 2018-11-26 | 2019-11-26 | 分解されたネットワーク要素を含む論理ルータ |
JP2024118793A Pending JP2024150665A (ja) | 2018-11-26 | 2024-07-24 | 分解されたネットワーク要素を含む論理ルータ |
Country Status (8)
Country | Link |
---|---|
US (5) | US11343121B2 (ja) |
EP (4) | EP3888309A4 (ja) |
JP (6) | JP7462630B2 (ja) |
KR (4) | KR20210093312A (ja) |
CN (4) | CN113169929B (ja) |
CA (4) | CA3120743A1 (ja) |
TW (3) | TWI844586B (ja) |
WO (4) | WO2020112756A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020112756A1 (en) | 2018-11-26 | 2020-06-04 | Arrcus Inc. | Logical router comprising disaggregated network elements |
US11258668B2 (en) | 2020-04-06 | 2022-02-22 | Vmware, Inc. | Network controller for multi-site logical network |
US11336556B2 (en) * | 2020-04-06 | 2022-05-17 | Vmware, Inc. | Route exchange between logical routers in different datacenters |
US11233691B2 (en) | 2020-04-06 | 2022-01-25 | Cisco Technology, Inc. | Third generation partnership project (3GPP) plug and play (PnP) operation in a hybrid open radio access network (O-RAN) environment |
US11522754B2 (en) * | 2020-09-15 | 2022-12-06 | Arista Networks, Inc. | Systems and methods for Zero-Touch Provisioning of a switch in intermediate distribution frames and main distribution frames |
US12052169B2 (en) * | 2020-09-23 | 2024-07-30 | Nokia Solutions And Networks Oy | Neighbor discovery for border gateway protocol in a multi-access network |
US11671357B2 (en) | 2021-01-06 | 2023-06-06 | Arista Networks, Inc. | Systems and method for propagating route information |
US11842083B2 (en) | 2021-02-03 | 2023-12-12 | Infortrend Technology, Inc. | Storage system architecture with dual storage virtualization controllers and the data access method thereof |
US11630601B2 (en) * | 2021-03-02 | 2023-04-18 | Silicon Motion, Inc. | Memory and apparatus for performing access control with aid of multi-phase memory-mapped queue |
US12114250B2 (en) | 2021-04-26 | 2024-10-08 | Arrcus Inc. | Selective importing of UE addresses to VRF in 5G networks |
US11632692B2 (en) | 2021-04-26 | 2023-04-18 | Arrcus Inc. | Use of IP networks for routing of cellular data packets |
US11849381B2 (en) | 2021-04-26 | 2023-12-19 | Arrcus Inc. | Use of IP networks for routing of cellular data packets |
US12063583B2 (en) * | 2021-04-26 | 2024-08-13 | Arrcus Inc. | Use of IP networks for routing of cellular data packets |
CN114553796B (zh) * | 2022-02-24 | 2023-10-20 | 昆高新芯微电子(江苏)有限公司 | 交换芯片基于cpu reason id实现CoPP的方法和装置 |
US20230379218A1 (en) * | 2022-05-20 | 2023-11-23 | Dell Products L.P. | ZEROTOUCH BORDER GATEWAY PROTOCOL (BGP) CONFIGURATION IN NON-VOLATILE MEMORY EXPRESS OVER-FABRICS (NVMe-oF) ENVIRONMENTS |
US12107722B2 (en) | 2022-07-20 | 2024-10-01 | VMware LLC | Sharing network manager between multiple tenants |
CN118158090B (zh) * | 2024-05-11 | 2024-09-17 | 浙商银行股份有限公司 | 云平台宿主机网络链路冗余状态判别方法及装置 |
Family Cites Families (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6078590A (en) * | 1997-07-14 | 2000-06-20 | Cisco Technology, Inc. | Hierarchical routing knowledge for multicast packet routing |
US6285679B1 (en) | 1997-08-22 | 2001-09-04 | Avici Systems, Inc. | Methods and apparatus for event-driven routing |
JP2001094613A (ja) * | 1999-09-21 | 2001-04-06 | Canon Inc | 通信制御装置、方法および記録媒体 |
US7088714B2 (en) * | 2000-08-24 | 2006-08-08 | Tasman Networks, Inc | System and method for connecting geographically distributed virtual local area networks |
JP2002077266A (ja) * | 2000-09-05 | 2002-03-15 | Nec Commun Syst Ltd | 論理ルータ及びそのルーチング情報設定方法 |
US8051199B2 (en) * | 2001-06-08 | 2011-11-01 | The University Of Hong Kong | Self-routing address assignment in packet-switched networks |
JP2003023444A (ja) * | 2001-07-06 | 2003-01-24 | Fujitsu Ltd | 仮想ルータを利用した動的な負荷分散システム |
US7286468B2 (en) | 2002-11-12 | 2007-10-23 | Cisco Technology, Inc. | Routing system and method for synchronizing a routing system with peers after failover |
US7415507B1 (en) * | 2004-02-05 | 2008-08-19 | Cisco Technology, Inc. | Logical routers |
JP4789425B2 (ja) | 2004-03-31 | 2011-10-12 | 富士通株式会社 | 経路テーブル同期方法、ネットワーク機器および経路テーブル同期プログラム |
US9100266B2 (en) * | 2004-11-01 | 2015-08-04 | Alcatel Lucent | SoftRouter protocol failovers |
US8068408B2 (en) | 2004-11-01 | 2011-11-29 | Alcatel Lucent | Softrouter protocol disaggregation |
US20070014240A1 (en) * | 2005-07-12 | 2007-01-18 | Alok Kumar | Using locks to coordinate processing of packets in a flow |
US7583590B2 (en) | 2005-07-15 | 2009-09-01 | Telefonaktiebolaget L M Ericsson (Publ) | Router and method for protocol process migration |
US20070058657A1 (en) | 2005-08-22 | 2007-03-15 | Graham Holt | System for consolidating and securing access to all out-of-band interfaces in computer, telecommunication, and networking equipment, regardless of the interface type |
CN100505692C (zh) * | 2006-09-19 | 2009-06-24 | 中国人民解放军国防科学技术大学 | 高性能路由器bgp路由协议分布并行实现方法 |
US8391185B2 (en) * | 2007-05-29 | 2013-03-05 | Cisco Technology, Inc. | Method to transport bidir PIM over a multiprotocol label switched network |
US8064469B2 (en) * | 2008-08-08 | 2011-11-22 | Dell Products L.P. | Parallel VLAN and non-VLAN device configuration |
US8098656B2 (en) * | 2009-06-26 | 2012-01-17 | Avaya, Inc. | Method and apparatus for implementing L2 VPNs on an IP network |
US8369345B1 (en) | 2009-11-13 | 2013-02-05 | Juniper Networks, Inc. | Multi-router system having shared network interfaces |
CN102170385B (zh) * | 2010-02-27 | 2014-01-22 | 华为技术有限公司 | 一种以太树业务中以太网帧的发送方法和运营商边缘设备 |
US10103939B2 (en) * | 2010-07-06 | 2018-10-16 | Nicira, Inc. | Network control apparatus and method for populating logical datapath sets |
US8842679B2 (en) | 2010-07-06 | 2014-09-23 | Nicira, Inc. | Control system that elects a master controller instance for switching elements |
US9059940B2 (en) | 2010-08-04 | 2015-06-16 | Alcatel Lucent | System and method for transport control protocol in a multi-chassis domain |
US9369426B2 (en) * | 2011-08-17 | 2016-06-14 | Nicira, Inc. | Distributed logical L3 routing |
US8606105B2 (en) * | 2011-09-15 | 2013-12-10 | Ciena Corporation | Virtual core router and switch systems and methods with a hybrid control architecture |
US9032014B2 (en) * | 2012-02-06 | 2015-05-12 | Sap Se | Diagnostics agents for managed computing solutions hosted in adaptive environments |
CN104081734B (zh) * | 2012-04-18 | 2018-01-30 | Nicira股份有限公司 | 利用事务使分布式网络控制系统中的波动降至最小 |
US9225549B2 (en) * | 2012-08-06 | 2015-12-29 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Multi-chassis link aggregation in a distributed virtual bridge |
US9274843B2 (en) * | 2012-09-14 | 2016-03-01 | Ca, Inc. | Multi-redundant switchable process pooling for cloud it services delivery |
US9137154B2 (en) | 2012-11-29 | 2015-09-15 | Lenovo Enterprise Solutions (Singapore Pte. LTD | Management of routing tables shared by logical switch partitions in a distributed network switch |
US9479427B2 (en) | 2012-12-21 | 2016-10-25 | Dell Products L.P. | System and methods for load placement in data centers |
US8953439B1 (en) | 2012-12-31 | 2015-02-10 | Juniper Networks, Inc. | Separation of control plane functions using virtual machines in network device |
EP2940938B1 (en) * | 2013-02-06 | 2019-11-27 | Huawei Technologies Co., Ltd. | Method and device for establishing multicast data channel in network virtualization system |
US9201837B2 (en) | 2013-03-13 | 2015-12-01 | Futurewei Technologies, Inc. | Disaggregated server architecture for data centers |
US9270704B2 (en) * | 2013-03-13 | 2016-02-23 | FireMon, LLC | Modeling network devices for behavior analysis |
US9300483B2 (en) | 2013-03-15 | 2016-03-29 | International Business Machines Corporation | Self-routing multicast in a software defined network fabric |
US9910686B2 (en) * | 2013-10-13 | 2018-03-06 | Nicira, Inc. | Bridging between network segments with a logical router |
US9503325B2 (en) * | 2013-11-15 | 2016-11-22 | Cisco Technology, Inc. | Dynamic virtual port instantiation for scalable multitenant network |
US9548896B2 (en) * | 2013-12-27 | 2017-01-17 | Big Switch Networks, Inc. | Systems and methods for performing network service insertion |
US9313129B2 (en) * | 2014-03-14 | 2016-04-12 | Nicira, Inc. | Logical router processing by network controller |
CN110278151B (zh) | 2014-03-21 | 2021-11-19 | Nicira股份有限公司 | 用于逻辑路由器的动态路由 |
US9893988B2 (en) * | 2014-03-27 | 2018-02-13 | Nicira, Inc. | Address resolution using multiple designated instances of a logical router |
US9913198B2 (en) * | 2014-09-10 | 2018-03-06 | Comcast Cable Communications, Llc | Systems and methods for routing data |
CN105515802B (zh) * | 2014-09-22 | 2019-04-12 | 新华三技术有限公司 | 网络虚拟化方法及装置 |
US9853855B2 (en) * | 2014-12-03 | 2017-12-26 | Fortinet, Inc. | Stand-by controller assisted failover |
CN104486124B (zh) * | 2014-12-19 | 2018-09-04 | 盛科网络(苏州)有限公司 | 使用逻辑端口实现多系统链路聚合的装置及方法 |
US9787605B2 (en) * | 2015-01-30 | 2017-10-10 | Nicira, Inc. | Logical router with multiple routing components |
WO2016136223A1 (ja) * | 2015-02-25 | 2016-09-01 | 日本電気株式会社 | インターコネクション装置、管理装置、リソース分離型コンピュータシステム、方法、及び、プログラム |
US9787641B2 (en) * | 2015-06-30 | 2017-10-10 | Nicira, Inc. | Firewall rule management |
US9838315B2 (en) * | 2015-07-29 | 2017-12-05 | Cisco Technology, Inc. | Stretched subnet routing |
WO2017045079A1 (en) * | 2015-09-18 | 2017-03-23 | Avigilon Corporation | Physical security system having multiple server nodes configured to implement a conditionally triggered rule |
US9979593B2 (en) | 2015-09-30 | 2018-05-22 | Nicira, Inc. | Logical L3 processing for L2 hardware switches |
US20170180220A1 (en) * | 2015-12-18 | 2017-06-22 | Intel Corporation | Techniques to Generate Workload Performance Fingerprints for Cloud Infrastructure Elements |
US9883264B2 (en) * | 2015-12-31 | 2018-01-30 | Infinera Corporation | Systems and methods for multilayer peering |
CN108700922B (zh) * | 2016-01-07 | 2021-09-28 | 纬波里奥股份有限责任公司 | 数据中心管理 |
US10819575B2 (en) * | 2016-02-26 | 2020-10-27 | Arista Networks, Inc. | System and method of configuring network elements |
US10462543B2 (en) * | 2016-04-21 | 2019-10-29 | Fujitsu Limited | ODU path protection in a disaggregated OTN switching system |
US10333849B2 (en) * | 2016-04-28 | 2019-06-25 | Nicira, Inc. | Automatic configuration of logical routers on edge nodes |
US10298698B2 (en) * | 2016-07-08 | 2019-05-21 | Cisco Technology, Inc. | Endpoint location tracking |
EP3452909A1 (en) * | 2016-08-23 | 2019-03-13 | Oracle International Corporation | System and method for supporting fast hybrid reconfiguration in a high performance computing environment |
US10298491B2 (en) * | 2016-08-25 | 2019-05-21 | Cisco Technology, Inc. | Efficient path detection and validation between endpoints in large datacenters |
US11138146B2 (en) * | 2016-10-05 | 2021-10-05 | Bamboo Systems Group Limited | Hyperscale architecture |
US11323327B1 (en) * | 2017-04-19 | 2022-05-03 | Juniper Networks, Inc. | Virtualization infrastructure element monitoring and policy control in a cloud environment using profiles |
US10623316B2 (en) * | 2017-04-27 | 2020-04-14 | Mellanox Technologies Tlv Ltd. | Scaling of switching tables with high bandwidth |
US10558648B2 (en) * | 2017-05-23 | 2020-02-11 | International Business Machines Corporation | Service outage time reduction for a planned event in a system |
US10693814B2 (en) * | 2018-09-17 | 2020-06-23 | Fujitsu Limited | Ultra-scalable, disaggregated internet protocol (IP) and ethernet switching system for a wide area network |
WO2020112756A1 (en) * | 2018-11-26 | 2020-06-04 | Arrcus Inc. | Logical router comprising disaggregated network elements |
-
2019
- 2019-11-26 WO PCT/US2019/063229 patent/WO2020112756A1/en unknown
- 2019-11-26 JP JP2021529414A patent/JP7462630B2/ja active Active
- 2019-11-26 US US16/695,913 patent/US11343121B2/en active Active
- 2019-11-26 EP EP19888586.5A patent/EP3888309A4/en active Pending
- 2019-11-26 CA CA3120743A patent/CA3120743A1/en active Pending
- 2019-11-26 EP EP19889237.4A patent/EP3887962A4/en active Pending
- 2019-11-26 TW TW108143020A patent/TWI844586B/zh active
- 2019-11-26 CN CN201980077327.XA patent/CN113169929B/zh active Active
- 2019-11-26 US US16/695,796 patent/US10992497B2/en active Active
- 2019-11-26 CN CN201980077305.3A patent/CN113169928B/zh active Active
- 2019-11-26 TW TW108143021A patent/TWI807136B/zh active
- 2019-11-26 CA CA3124394A patent/CA3124394A1/en active Pending
- 2019-11-26 KR KR1020217018858A patent/KR20210093312A/ko active Search and Examination
- 2019-11-26 TW TW108143019A patent/TWI821463B/zh active
- 2019-11-26 CN CN201980077363.6A patent/CN113169940B/zh active Active
- 2019-11-26 EP EP19888573.3A patent/EP3888308B1/en active Active
- 2019-11-26 KR KR1020217018859A patent/KR20210095889A/ko active Search and Examination
- 2019-11-26 WO PCT/US2019/063313 patent/WO2020112817A1/en unknown
- 2019-11-26 JP JP2021529415A patent/JP7525486B2/ja active Active
- 2019-11-26 US US16/696,279 patent/US10965496B2/en active Active
- 2019-11-26 WO PCT/US2019/063268 patent/WO2020112786A1/en unknown
- 2019-11-26 CN CN201980077362.1A patent/CN113168391A/zh active Pending
- 2019-11-26 JP JP2021529416A patent/JP7528076B2/ja active Active
- 2019-11-26 EP EP19888678.0A patent/EP3888313A4/en active Pending
- 2019-11-26 KR KR1020217018857A patent/KR20210095888A/ko active Search and Examination
- 2019-11-26 KR KR1020217018860A patent/KR20210095890A/ko active Search and Examination
- 2019-11-26 CA CA3120710A patent/CA3120710A1/en active Pending
- 2019-11-26 CA CA3120746A patent/CA3120746A1/en active Pending
- 2019-11-26 JP JP2021529417A patent/JP7528077B2/ja active Active
- 2019-11-26 US US16/696,106 patent/US11082261B2/en active Active
- 2019-11-26 WO PCT/US2019/063331 patent/WO2020112831A1/en unknown
-
2021
- 2021-03-23 US US17/210,218 patent/US11863351B2/en active Active
-
2024
- 2024-07-24 JP JP2024118793A patent/JP2024150665A/ja active Pending
- 2024-07-24 JP JP2024118795A patent/JP2024153744A/ja active Pending
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7528077B2 (ja) | 分解されたネットワーク要素を含む論理ルータ | |
TWI857990B (zh) | 具有分解式網路元件的邏輯路由系統及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20240726 |