VXLAN と Geneve は、どちらも IP ネットワーク上に論理ネットワークを作るためのトンネルカプセル化です。VXLAN は「L3 ネットワーク上で L2 を延伸する技術」と説明されることが多く、その説明自体は間違いではありません。
ただし、設計で重要なのは、Ethernet フレームを UDP / IP で包めることだけではありません。誰が VTEP やエンドポイントの所在を学習するのか、BUM トラフィックをどう処理するのか、どこで L2 と L3 を分けるのか、underlay と overlay の障害を誰が切り分けるのかまで決めて、初めてネットワーク仮想化として成立します。
VXLAN と Geneve の違いを先に比較する
| 項目 | VXLAN | Geneve |
|---|---|---|
| 標準 | RFC 7348 | RFC 8926 |
| 標準 UDP 宛先ポート | 4789 | 6081 |
| ネットワーク識別子 | 24-bit VNI | 24-bit VNI |
| 基本ヘッダー | 固定 8 バイト | 固定部分 8 バイト + 可変長オプション |
| 主な強み | 単純さ、スイッチ ASIC を含む広い実装、BGP EVPN との組み合わせ | 追加メタデータを運べる拡張性、ソフトウェア定義ネットワークとの統合 |
| 具体例 | Cisco Nexus などの EVPN-VXLAN fabric | Open vSwitch / OVN の論理ネットワーク |
どちらが新しいかだけで選ぶものではありません。VXLAN は固定された単純なヘッダーと実装の広さに強みがあり、Geneve はオプションで追加情報を運べることに強みがあります。採用する製品、NIC オフロード、物理スイッチとの接続、制御プレーンがどちらを前提にしているかが判断基準になります。
VXLAN は VNI で論理ネットワークを分離する
VXLAN は、内側の Ethernet フレームを VXLAN、UDP、IP、外側 Ethernet の各ヘッダーで包みます。カプセル化と復号を行う端点が VTEP(VXLAN Tunnel Endpoint)です。
- VNI:24 ビットの識別子で、論理ネットワークを分離する
- 外側 IP アドレス:underlay 上で VTEP 間を到達させる
- UDP 送信元ポート:ECMP のハッシュへフローの差を与えるために使われる
- UDP 宛先ポート:RFC 7348 では
4789が標準値
VNI は VLAN ID より広い番号空間を持ちますが、番号が増えただけで運用が自動的に簡単になるわけではありません。VLAN、VNI、VRF、Route Distinguisher、Route Target、テナントをどのように対応づけるかという管理設計が必要です。
Geneve はオプションでメタデータを運べる
Geneve も UDP / IP 上で動作し、24 ビットの VNI を持ちます。VXLAN との大きな違いは、固定 8 バイトの基本ヘッダーに続けて、TLV 形式の可変長オプションを追加できることです。標準 UDP 宛先ポートは 6081 です。
オプションには、論理ポート、ポリシー、処理コンテキストなど、プラットフォームが必要とする追加情報を載せられます。ただし、オプションを増やせることは、そのまま相互接続性が高いことを意味しません。送信側と受信側がオプションのクラス、型、長さ、意味を共有し、NIC や仮想スイッチが処理できる必要があります。
OVN が Geneve を使う理由
Open Virtual Network(OVN)は、論理データパス ID を Geneve の VNI に格納し、論理 ingress port と論理 egress port を Geneve オプションで運びます。OVN の論理パケット処理では VNI だけではメタデータが足りないため、Geneve の拡張性が具体的な意味を持ちます。
ここでの Geneve は、単に VXLAN より新しいトンネルではありません。OVN Northbound DB、ovn-northd、Southbound DB、各ハイパーバイザー上の Open vSwitch が作る制御構造の中で、必要なメタデータをデータプレーンへ渡す形式として選ばれています。
カプセル化と制御プレーンを分ける
VXLAN や Geneve は、主にパケットをどう運ぶかを定めるデータプレーンの形式です。それだけでは、どの MAC アドレスや IP アドレスが、どの VTEP の先に存在するかを配布する仕組みは完成しません。
| 方式 | エンドポイント学習 | BUM トラフィック | 運用上の特徴 |
|---|---|---|---|
| Flood and Learn VXLAN | データプレーンで送信元 MAC を学習 | マルチキャストや ingress replication で複製 | 構成は理解しやすいが、規模拡大時の flooding が課題になる |
| BGP EVPN VXLAN | MP-BGP で MAC / IP 到達性を配布 | EVPN の IMET route などで参加 VTEP を制御 | 制御プレーンで到達性とマルチテナント情報を扱える |
| OVN + Geneve | OVN のデータベースと論理フローから構成 | 論理パイプラインに従って処理 | 論理スイッチ、論理ルーター、ACL などを一体で管理する |
Cisco Nexus などで使われる BGP EVPN VXLAN では、EVPN が制御プレーンとなり、MP-BGP で MAC アドレス、IP アドレス、VTEP、サブネット到達性を交換します。VXLAN ヘッダーだけを見ても、この制御構造は分かりません。
Underlay が保証するもの
underlay は、VTEP 間の IP パケットを安定して運ぶ物理・論理 IP fabric です。overlay の MAC アドレスやテナント情報を直接理解する必要はありませんが、次の条件を保証する必要があります。
| 設計項目 | Underlay 側の責任 |
|---|---|
| IP 到達性 | すべての VTEP loopback 間を双方向に到達可能にする |
| ECMP | UDP 送信元ポートを含むハッシュで複数経路を利用する |
| MTU | 内側パケットにカプセル化ヘッダーを加えたサイズを運べるようにする |
| 障害収束 | リンク・ノード障害時に overlay の要求時間内で経路を収束させる |
| フィルタリング | VXLAN の UDP 4789、Geneve の UDP 6081 など必要な通信を許可する |
| 可観測性 | 外側フロー、ドロップ、MTU、ECMP 偏り、遅延を確認できるようにする |
overlay で通信できない場合でも、原因が VNI や MAC 学習とは限りません。underlay の経路欠落、ECMP の片系障害、Path MTU、ACL、VTEP loopback の到達性が原因になることがあります。運用では、外側と内側のパケットを分けて観測できることが重要です。
Overlay が表現するもの
overlay は、テナント、ワークロード、論理セグメント、VRF、分散ゲートウェイ、セキュリティポリシーを表現します。VXLAN / Geneve は transport ですが、利用者が必要としているのはトンネルではなく、その上に構成される論理ネットワークです。
- どの VLAN や論理スイッチを、どの VNI へ対応づけるか
- L2 VNI と L3 VNI、VRF の境界をどこに置くか
- MAC / IP 到達性を flood-and-learn と EVPN のどちらで配布するか
- Anycast Gateway や分散ルーターをどこで動かすか
- ACL、Security Group、Service Chain のポリシーを誰が生成するか
この対応関係を管理する SSOT が曖昧だと、同じ VNI が異なる意味で使われたり、物理スイッチと仮想スイッチでポリシーが矛盾したりします。overlay の自由度は、管理モデルと変更管理を必要とします。
MTU はカプセル化方式と経路全体で決める
VXLAN の基本的な外側ヘッダーは、外側 Ethernet 14 バイト、IPv4 20 バイト、UDP 8 バイト、VXLAN 8 バイトで、合計 50 バイトです。外側 VLAN tag、IPv6、Geneve オプションなどが加われば、必要な MTU はさらに増えます。
| 追加要素 | 増加するサイズの例 | 注意点 |
|---|---|---|
| VXLAN + outer IPv4 | 基本約 50 バイト | 外側 Ethernet FCS や追加 tag の扱いは機器仕様に合わせる |
| outer IPv6 | IPv4 より 20 バイト増加 | IPv6 基本ヘッダーは 40 バイト |
| outer VLAN tag | 1 tag あたり 4 バイト | QinQ や事業者網の tag も確認する |
| Geneve option | オプション長に応じて増加 | 固定値ではなく実際のオプション構成から計算する |
サーバー NIC だけを Jumbo Frame にしても不十分です。VTEP、ToR、spine、DCI、ファイアウォール、ロードバランサーを含む経路全体で、同じ前提を満たす必要があります。MTU 不整合は、小さい ping は通るのに大きな通信だけ失敗する、再送が増える、といった分かりにくい障害になります。
L2 延伸は責任と障害範囲も延伸する
VXLAN を使えば、IP fabric を越えて同一の L2 セグメントを構成できます。しかし、IP アドレスを変えずに VM を移動できるという利点と引き換えに、BUM トラフィック、ARP / ND、MAC mobility、ループ、障害波及の責任も遠隔地まで広がります。
| L2 延伸を検討する理由 | 同時に確認すること |
|---|---|
| 移行中に IP アドレスを維持したい | 延伸期間、終了条件、移行後の L3 境界 |
| 同一セグメントを要求する既存製品がある | 本当に L2 adjacency が必要か、製品構成を変更できないか |
| ワークロードを複数ラックへ分散したい | BUM 制御、Anycast Gateway、障害ドメイン |
| データセンター間で VM mobility を実現したい | 遅延、帯域、分断時の挙動、MAC mobility、ストレージ整合性 |
L2 を延伸する理由が「アプリケーションを変更したくない」だけなら、変更コストをネットワークへ移している可能性があります。恒久構成なのか、移行期間だけの暫定構成なのかを明記し、撤去条件まで設計する必要があります。
VXLAN と Geneve の選択基準
| 条件 | 考え方 |
|---|---|
| Cisco Nexus などで BGP EVPN fabric を構成する | スイッチ ASIC と EVPN の実装が前提にする VXLAN を採用するのが自然 |
| OVN の論理ルーター・論理スイッチ・ACL を使う | 論理ポート情報をオプションで運べる Geneve がプラットフォーム設計に合う |
| 物理 ToR とハイパーバイザーを直接相互接続する | 双方が対応するカプセル化、VNI の意味、制御プレーンを確認する |
| NIC オフロードを重視する | 製品・ドライバー・ファームウェアが対象ヘッダーとオプションを処理できるか検証する |
| ファイアウォールや監視装置を通過する | UDP ポートだけでなく、可変長ヘッダーの解析、フラグメント、MTU を確認する |
Geneve の拡張性が必要ない環境で、単に新しいから Geneve を選ぶ意味は薄いです。一方、OVN のように追加メタデータを必要とするプラットフォームへ VXLAN を押し込むと、表現できるポリシーや論理パイプラインを制限する可能性があります。カプセル化単体ではなく、プラットフォーム全体の契約として選びます。
設計時の確認項目
- VTEP、VNI、VRF、VLAN、テナントの正をどこで管理するか
- underlay が保証する到達性、ECMP、MTU、収束時間は何か
- MAC / IP 到達性と BUM トラフィックをどの制御プレーンで扱うか
- L2 を延伸する必要性、範囲、期間、終了条件は何か
- NIC、仮想スイッチ、物理 ToR、ファイアウォールが同じカプセル化を処理できるか
- 外側フローと内側フローを分けて監視・パケットキャプチャできるか
- 障害時に underlay、overlay、control plane、management plane の担当をどう切り分けるか
参考情報
参考情報:
- RFC 7348: Virtual eXtensible Local Area Network (VXLAN)
VXLAN の VNI、UDP ポート、VTEP、カプセル化を定義する基本資料です。 - RFC 8926: Geneve
Geneve の基本ヘッダー、可変長オプション、UDP 6081 を定義しています。 - RFC 8365: EVPN Network Virtualization Overlay
EVPN を VXLAN などのネットワーク仮想化 overlay へ適用する仕様です。 - OVN Documentation: Why does OVN use Geneve?
OVN が VNI と Geneve option で論理データパス・論理ポート情報を運ぶ理由を説明しています。 - Cisco: VXLAN Network with MP-BGP EVPN Control Plane Design Guide
MP-BGP EVPN を VXLAN の制御プレーンとして使う設計資料です。
参考書籍
書籍
VXLAN / EVPN を学ぶための参考書
データセンターファブリック、BGP EVPN、VXLAN、ネットワーク仮想化を体系的に確認するための参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。
あわせて読みたい:
- AWS VPC に L2 はあるのか – VLAN / ARP / VIP をクラウドの到達性モデルへ翻訳する
物理ネットワークの L2 概念を、AWS VPC の到達性モデルへ読み替える記事です。 - VMware と OpenStack の違い – 仮想化基盤とクラウド基盤を同じものとして扱わない
仮想化機能とクラウド運用モデルの責任分界を比較しています。
まとめ
VXLAN と Geneve は、どちらも IP underlay 上に論理ネットワークを作るカプセル化です。VXLAN は固定 8 バイトヘッダーと広い実装、BGP EVPN との組み合わせに強みがあります。Geneve は可変長オプションで追加メタデータを運べるため、OVN のようなソフトウェア定義ネットワークに適しています。
設計で問うべきなのは、L2 を延伸できるかだけではありません。underlay が何を保証し、overlay が何を表現し、制御プレーンがどの情報を配布し、管理プレーンがどこを正として変更するのかを決める必要があります。L2 を延伸するなら、その利便性だけでなく、BUM トラフィック、ARP / ND、MTU、障害範囲、運用責任も一緒に引き受けることになります。

