第180篇:VXLAN underlay/overlay 架构设计
关键词
Underlay、Overlay、Spine-Leaf、ECMP、BGP Unnumbered、VXLAN 设计原则、Overlay 解耦
一、Underlay 与 Overlay 的概念
1.1 分层架构
VXLAN 网络的精髓在于分层设计:
Overlay(业务层):
┌─────────────────────────────────────────────┐
│ VXLAN + EVPN │
│ VNI, VTEP, MAC/IP 路由 │
│ BGP EVPN 控制面 │
├─────────────────────────────────────────────┤
│ VM/容器/物理服务器 (客户业务) │
└─────────────────────────────────────────────┘
Underlay(承载层):
┌─────────────────────────────────────────────┐
│ Spine-Leaf 物理拓扑 │
│ ISIS/OSPF/BGP-IGP 路由 │
│ ECMP 负载均衡 │
│ 物理链路 (10G/25G/100G/400G) │
└─────────────────────────────────────────────┘
核心思想:Overlay 完全解耦 Underlay
- Overlay 不关心物理线缆怎么连(只要 IP 可达)
- Underlay 不感知 VNI/VTEP/客户 MAC
1.2 设计原则
| 原则 | 说明 |
|---|---|
| Overlay 简单 | 仅处理 VXLAN/EVPN 封装和路由 |
| Underlay 稳定 | 快速收敛、ECMP、无环路 |
| 解耦 | 变更一方不影响另一方 |
| 标准化 | 使用 IETF 标准协议(ISIS/BGP/EVPN) |
二、Underlay 设计
2.1 Underlay 的目标
- IP 可达性——所有 VTEP Loopback 之间能互通
- 高带宽——ECMP 充分利用所有链路
- 快速收敛——故障后 < 1 秒恢复
- 可扩展——从几台到几百台 Spine-Leaf
2.2 Spine-Leaf 拓扑
| S1 | S2 | S3 | ← Spine(核心层) | ||
|---|---|---|---|---|---|
| L1 | L2 | L3 | |||
| --- | --- | --- | --- | --- | --- |
| │ │ │ │ │ | |||||
| SVR | SVR | SVR | |||
| --- | --- | --- | --- | --- | --- |
ECMP 特性: - 每个 Leaf 到其他 Leaf 有 N 条路径(N = Spine 数量) - 每台 Leaf 连接所有 Spine - 任意 Leaf N-1 条故障仍连通
2.3 Underlay 路由协议选择
| 协议 | 优点 | 缺点 |
|---|---|---|
| ISIS | 扩展性好,运用于大型数据中心 | 文件配置稍复杂 |
| OSPF | 配置简单 | 区域设计复杂 |
| BGP(Unnumbered) | 零配置,IPv6 链路本地 | 依赖 BGP 特性 |
| 静态路由 | 极简 | 不可扩展 |
推荐:ISIS 或 BGP Unnumbered
2.4 BGP Unnumbered 示例
# Leaf1 的 BGP Unnumbered 配置
interface Ethernet1/1
no switchport
ipv6 enable
ipv6 address autoconfig default # SLAAC 生成 IPv6 地址
router bgp 65001
bgp bestpath as-path multipath-relax # 允许 AS Path 不同
neighbor fabric peer-group
neighbor fabric remote-as external # EBGP
neighbor fabric capability dynamic # 动态邻居
interface Ethernet1/1
neighbor fabric peer-group
2.5 Underlay MTU
所有 Underlay 接口必须配置大 MTU:
interface Ethernet1/1
mtu 9214 # Jumbo Frame(支持 VXLAN 50 字节开销)
!
system mtu 9214 # 全局 MTU
三、Overlay 设计
3.1 Overlay 的目标
- 二层域扩展——跨 Leaf 的二层连通
- 多租户隔离——VNI 隔离
- VM 迁移——VM 在不同 Leaf 间迁移不中断
- 分布式网关——就近三层路由
3.2 EVPN+VXLAN 控制面
Leaf1(VTEP) ── MP-BGP EVPN ── Leaf2(VTEP)
│ │
│ Type 2 (MAC/IP) │
│ Type 3 (IMET/BUM) │
│ Type 4 (ES/多归) │
│ Type 5 (IP Prefix) │
└────────────────────────────────┘
3.3 VNI 规划
VNI 分配示例:
L2 VNI 范围:10000-19999(桥接域)
VNI 10001 → BD 1001 → 子网 10.1.1.0/24(租户 A)
VNI 10002 → BD 1002 → 子网 10.1.2.0/24(租户 A)
VNI 20001 → BD 2001 → 子网 10.2.1.0/24(租户 B)
L3 VNI 范围:90000-99999(三层路由)
VNI 90001 → VRF TenantA
VNI 90002 → VRF TenantB
3.4 RR(路由反射器)部署
Spine 作为路由反射器(RR),Leaf 作为 RR Client:
Spine-RR Spine-RR │ │ │ │ | RR | | RR | | --- | --- | --- | │ │ | Leaf1 | | Leaf2 | ← RR Client | | --- | --- | --- | --- |
每台 Leaf 与两台 Spine RR 建立 BGP EVPN 会话 RR 互相反射 EVPN 路由
四、设计对比
4.1 Underlay 设计对比
| 设计 | 优点 | 缺点 |
|---|---|---|
| Spine Leaf 2 层 | 简单,标准 | Spine 数量受限于 port |
| Clos 3 层 | 超大扩展 | 延迟稍高 |
| 租用 WAN | 广域 DCI | 带宽受限 |
4.2 Overlay 设计对比
| 设计 | 组播需求 | BUM 方式 | 控制面 |
|---|---|---|---|
| Flood and Learn | 是 | 组播 | 无(数据面) |
| EVPN(Ingress Replication) | 否 | IR | MP-BGP |
| EVPN(组播) | 是 | 组播 | MP-BGP |
当前推荐:EVPN + Ingress Replication
五、实际架构案例
5.1 中型数据中心(~100 Leaf)
Spine Layer:
2-4 台 Spine(RR + Underlay IGP)
40G/100G 上行
Leaf Layer:
每台 Leaf = VTEP + 分布式网关
25G 下行到服务器
40G/100G 上行到 Spine
Underlay:
ISIS(L1/L2)或 BGP Unnumbered
MTU 9214
Overlay:
EVPN + VXLAN
Ingress Replication
Symmetric IRB(L3VNI)
SPINE 做 RR
5.2 DCI(数据中心互联)
DC1 ───── WAN/MAN ───── DC2
Leaf(VTEP) Leaf(VTEP)
│ │
└── VXLAN over WAN ──┘
VNI 100 (子网 A)
VNI 900 (L3VNI)
Over WAN MTU=1500 的适配
MTU 适配:
- WAN 链路 MTU 通常 1500
- VXLAN 需要 50 字节开销
- 需要分段或 MSS Clamping
- 推荐使用 Jumbo Frame WAN(MTU ≥ 1550)
六、Underlay 与 Overlay 的运维
6.1 验证命令
# Underlay 验证
display isis peer # ISIS 邻居
display ip routing-table # 路由表(确保 VTEP IP 可达)
display interface Ethernet1/1 # 接口 UP + MTU
# Overlay 验证
display bgp evpn peer # EVPN BGP 会话
display bridge-domain 10 mac-address # MAC 表
display vxlan tunnel # VXLAN 隧道
display ip routing-table vpn-instance TenantA # VRF 路由
6.2 故障排查分层
Overlay 不通?
│
├─ 检查 VTEP Loopback 是否可达 (Underlay)
│ ping -a 1.1.1.1 2.2.2.2
│ ↓
├─ 检查 BGP EVPN 会话
│ display bgp evpn peer
│ ↓
├─ 检查 VXLAN 隧道
│ display vxlan tunnel
│ ↓
└─ 检查 MAC/IP 路由
display bgp evpn all routing-table
display bridge-domain mac-address
七、总结
| 知识点 | 核心要点 |
|---|---|
| Underlay | 物理网络,IP 可达性 + ECMP + 大 MTU |
| Overlay | VXLAN + EVPN,提供二层扩展和多租户 |
| Spine-Leaf | 标准数据中心拓扑,每条 Leaf 连接所有 Spine |
| ECMP | 多路径负载均衡,UDP 源端口 Hash |
| 解耦 | Overlay 不依赖 Underlay 拓扑 |
| 推荐架构 | EVPN + Ingress Replication + Symmetric IRB |
八、思考
- Underlay 和 Overlay 在 VXLAN 网络中分别承担什么角色?
- Spine-Leaf 拓扑中,ECMP 如何实现多路径负载均衡?
- 为什么推荐 Overlay 和 Underlay 解耦设计?
- Ingress Replication 和组播复制在 Underlay 层面的区别是什么?
- 当 VXLAN over WAN 时,MTU 适配是关键挑战,可能的解决方案有哪些?
下篇预告:第181篇《SD-WAN 基本概念:控制面与数据面分离》——从 SD-WAN 的角度重新理解广域网,控制面和数据面如何分离。