EVPN/VXLAN アーキテクチャの詳細
EVPN/VXLAN アーキテクチャの詳細
BGP EVPN ルート タイプ、VTEP 検出、対称 IRB と非対称 IRB、ARP 抑制、およびマルチホーミング - Cisco NX-OS、Arista EOS、および Junos CLI の例を使用します。
1. なぜ VXLAN なのか?
IEEE 802.1Q VLAN は、ブロードキャスト ドメインごとに 4,094 ID に制限されています。これは、数千の顧客セグメントが共有インフラストラクチャ上に共存する必要があるマルチテナント データ センターでは厳しい制約です。 VXLAN (仮想拡張可能 LAN、RFC 7348) は、24 ビット VNI (VXLAN ネットワーク識別子) を使用して、UDP/IP 内にイーサネット フレームをカプセル化し、最大 1,670 万の論理セグメントをサポートすることでこの問題を解決します。
VXLAN は、仮想レイヤ 2 トポロジを物理レイヤ 3 アンダーレイから分離し、VLAN を拡張することなく VXLAN トンネル エンドポイント (VTEP) 間の標準 IP ルーティング (ECMP、OSPF、BGP) を可能にします。外側の UDP ヘッダーは宛先ポートを使用します4789(IANA によって割り当てられ、初期の展開では 8472 が使用されました)。カプセル化の合計オーバーヘッドは、IPv4 では最大 50 バイト、IPv6 では最大 70 バイトです。
2. VTEP 検出方法
VTEP はピア VTEP を検出してトンネルを設定し、BUM (ブロードキャスト、不明なユニキャスト、マルチキャスト) トラフィックを分散する必要があります。実際には 3 つのメカニズムが導入されています。
| 方法 | 仕組み | 長所 | 短所 |
|---|---|---|---|
| マルチキャスト | 各 VNI はアンダーレイ内の PIM マルチキャスト グループにマッピングされます。 BUM トラフィックがそのグループにフラッディングされます | 単純;自動ピア検出 | アンダーレイで PIM マルチキャストが必要です。多くのオペレータはマルチキャストを無効にしています |
| イングレスレプリケーション | 各 VTEP は、VNI ごとにリモート VTEP の明示的なユニキャスト リストを維持します。 BUM トラフィックは各ピアに複製されます | マルチキャストは必要ありません | ヘッドエンドは BUM パケットごとに O(N) のレプリケーションを実行します。静的ピア リストには手動メンテナンスが必要です |
| BGP EVPN | RT-3 IMET ルートは VTEP メンバーシップをアドバタイズします。 RT-2 ルートは MAC+IP バインディングを配布します。フラッドアンドラーニングは不要 | コントロールプレーンのMAC学習。 ARP抑制。数千の VTEP まで拡張可能。標準 | すべての VTEP またはルート リフレクタに BGP スタックが必要 |
最新のグリーンフィールド データセンターは BGP EVPN のみを使用します。マルチキャストとイングレス レプリケーションは、ブラウンフィールド環境で依然として見られるレガシー アプローチです。
3. BGP EVPN ルート タイプ
BGP EVPN (RFC 7432) は、AFI 25 (L2VPN) / SAFI 70 (EVPN) を使用して 5 つのルート タイプを分散します。 RT-5 は別途定義されました。RFC 9136(2021年10月)。
| RT | 名前 | 目的 | NLRI の主要分野 |
|---|---|---|---|
| 1 | イーサネット自動検出 | リンク障害時の ES ごとおよび EVI ごとの大量撤退。オールアクティブ マルチホーミング ロード バランシングのためのエイリアシング | RD、ESI、イーサネットタグID、MPLSラベル |
| 2 | MAC/IP アドバタイズメント | MAC アドレス (およびオプションでバインドされた IP) を配布して、ARP 抑制を有効にし、フラッドアンドラーニングを排除します。 | RD、ESI、VLANタグ、MACアドレス、IPアドレス(オプション)、L2VNI + L3VNIラベル |
| 3 | 包括的マルチキャスト イーサネット タグ (IMET) | VNI ごとの VTEP 到達可能性をアドバタイズします。受信レプリケーション リストを作成し、BUM 転送をトリガーするために使用されます | RD、イーサネット タグ ID、発信元ルーターの IP (VTEP アドレス)。 PMSI トンネル属性は VNI とトンネル タイプを伝達します |
| 4 | イーサネットセグメントルート | イーサネット セグメントを共有する PE 間での指定フォワーダー (DF) の選択。 1 つの PE のみが BUM を CE セグメントに転送することを保証します | RD、ESI、発信元ルーター IP |
| 5 | IPプレフィックスルート(RFC 9136) | サブネット間ルーティングのために IP プレフィックスを EVPN オーバーレイにアドバタイズします。専用の L3VNI (トランジット VNI) が必要です | RD、イーサネットタグID、IPプレフィックス長、IPプレフィックス、GW IPアドレス、L3VNIラベル |
4. 対称 IRB と非対称 IRB
Integrated Routing and Bridging (IRB) は、VTEP がオーバーレイ サブネット間でトラフィックをルーティングする方法を記述します。 2 つのモデルが定義されていますRFC 9135:
非対称 IRB:入力 VTEP は、L3 ルーティング (TTL デクリメント、ネクストホップ書き換え) を実行して、行き先カプセル化して送信する前の L2VNI。出力 VTEP はブリッジのみを行います。すでに最終 MAC にアドレス指定されている内部フレームを認識します。すべての VTEP には、ローカル ホストがない場合でも、すべての VNI (サブネット) がローカルでプログラムされている必要があるため、スケールが制限されます。
対称 IRB:入力 VTEP は、ソース L2VNI から共有 VTEP にルーティングされます。L3VNI(トランジット VNI、VRF ごとに 1 つ)。出力 VTEP は、L3VNI からローカル宛先 L2VNI にルーティングされます。両方のエンドポイントがルーティングを実行します。各 VTEP には独自のローカル L2VNI のみが必要です。単一の L3VNI はユニバーサルです。大きな生地におすすめのモデルです。
| 非対称 IRB | 対称 IRB | |
|---|---|---|
| VTEP ごとに必要な L2VNI | ファブリック内のすべての VNI | ローカルに接続されたサブネットのみ |
| L3VNI (トランジット VNI) | 不要 | 必須 — VRF ごとに 1 つ |
| ルーティングホップ | イングレス VTEP のみ | イングレス VTEP とエグレス VTEP |
| 規模 | 悪い (どこにでもすべての VNI) | 良好 (ローカルサブネットのみ) |
| RT-5 プレフィックス | サポートされていません | サポートあり (L3VNI を使用) |
5.ARP抑制
EVPN を使用しない場合、ホストからの ARP 要求はその VNI にブロードキャストされ、ファブリック内のすべての VTEP にフラッディングされます。 BGP EVPN を使用すると、RT-2 ルートはホストが学習されるとすぐに MAC+IP バインディングをすべての VTEP に配布します。ホストがリモート IP に対して ARP を送信すると、ローカル VTEP は BGP が設定されたテーブルから直接応答します。つまり、ARP パケットが VXLAN ファブリックを通過することはありません。これにより、既知のホストに対する BUM フラッディングが排除され、VTEP ごとに数千の VM が存在するファブリックに特に影響を与えます。
ND (近隣探索) 抑制は IPv6 に対しても同様に機能します。RT-2 ルートは NLRI の IP フィールドに IPv6 アドレスを運び、VTEP は NS メッセージにローカルで応答します。
6. マルチホーミングとESI
イーサネット セグメント識別子(ESI)は、CE デバイスを複数の PE VTEP に接続する論理バンドルに割り当てられる 10 バイトの識別子です。次の 2 つの転送モードが存在します。
- シングルアクティブ: 一度に 1 つの PE が転送します。 DF 選択 (RT-4 ルートを使用) では、各イーサネット タグの指定フォワーダが選択されます。非 DF PE はセグメントへの BUM 転送をブロックしますが、ユニキャストは受信できます。
- オールアクティブ:すべての PE が同時に転送し、バンドル全体で ECMP を有効にします(リモート レッグのあるポート チャネルなど)。 RT-1 の「エイリアシング」ルートにより、リモート VTEP は、接続されているすべての PE にわたって ESI へのトラフィックをロード バランシングできます。 MAC モビリティは、RT-2 の MAC モビリティ拡張コミュニティを介して処理されます。
7. ベンダー CLI クイック リファレンス
| タスク | Cisco NX-OS | アリスタ EOS | ジュニパー ジュノス |
|---|---|---|---|
| EVPN ルートを表示する | show bgp l2vpn evpn |
show bgp evpn |
show route table bgp.evpn.0 |
| VTEP ピアを表示 | show nve peers |
show vxlan vtep |
show evpn instance |
| オーバーレイ MAC を表示する | show mac address-table |
show vxlan address-table |
show evpn mac-ip-table |
| ARP抑制キャッシュを表示 | show ip arp suppression-cache detail |
show vxlan address-table detail |
show evpn mac-ip-table extensive |
| VNI から VRF へのマッピングを表示 | show nve vni |
show vxlan vni |
show evpn instance extensive |
| ESI マルチホーミングを表示 | show nve ethernet-segment |
show bgp evpn instance |
show evpn instance extensive |
参考文献
- RFC 7348— VXLAN: レイヤ 3 ネットワーク上に仮想化レイヤ 2 ネットワークをオーバーレイするためのフレームワーク (2014)
- RFC 7432— BGP MPLS ベースのイーサネット VPN (BGP EVPN) (2015)
- RFC 8365— イーサネット VPN (EVPN) を使用したネットワーク仮想化オーバーレイ ソリューション (2018)
- RFC 9135— イーサネット VPN (EVPN) における統合ルーティングとブリッジング (2021)
- RFC 9136— イーサネット VPN (EVPN) における IP プレフィックス アドバタイズメント (2021)
- IETF BESSワーキンググループ— BGP 対応サービス (アクティブな EVPN ドラフト)