3. Overlay 网络架构:Spine-Leaf 拓扑设计、Underlay 与 Overlay 关系、BGP EVPN 控制平面

现代数据中心网络已从传统的三层(接入-汇聚-核心)架构演进为 Spine-Leaf(脊-叶)架构。这种扁平化、高带宽、低延迟的拓扑结构,结合 Overlay 网络与 BGP EVPN 控制平面,成为支撑多租户、虚拟化与容器化工作负载的基石。

3.1 Spine-Leaf 拓扑设计

Spine-Leaf 架构是一种 Clos 网络拓扑的变体,旨在消除传统树形拓扑中的瓶颈与过度订阅问题。其核心原则是:每个 Leaf 交换机连接到每个 Spine 交换机,形成全连接网格。

核心优势:
  • 等长路径:任意 Leaf 到另一 Leaf 的跳数固定为 2(Leaf → Spine → Leaf),延迟可预测。
  • 水平扩展:增加 Spine 交换机即可线性提升整体带宽,无需重新布线。
  • 故障隔离:单台 Spine 或 Leaf 故障仅影响局部流量,ECMP 自动收敛。

3.1.1 拓扑结构对比

特性 传统三层架构 Spine-Leaf 架构
跳数 3-7 跳(取决于层级) 固定 2 跳
带宽利用率 上行链路易过载(3:1 或更高) 1:1 无阻塞(设计合理时)
扩展性 受限于核心设备端口密度 线性扩展,增加 Spine 即可
故障域 汇聚层故障影响整个 Pod 单点故障影响极小
典型规模 中小型园区 中大型数据中心

3.1.2 Spine-Leaf 物理拓扑示意

下图展示了一个典型的 4-Spine、8-Leaf 拓扑。每个 Leaf 通过多条链路(通常为 40G/100G)连接到所有 Spine,服务器或 ToR 交换机仅连接至 Leaf 层。

Spine-Leaf 拓扑结构图 Spine-Leaf 拓扑结构 Spine-1 Spine-2 Spine-3 Spine-4 Leaf-1 Leaf-2 Leaf-3 Leaf-4 Server-1 Server-2 Server-3 Server-4 Spine 交换机 Leaf 交换机 服务器/ToR
设计要点:Leaf 交换机通常采用 40G/100G 上行至 Spine,下行采用 10G/25G 连接服务器。Spine 数量建议为偶数(4/8/16),以支持 ECMP 的哈希算法均匀分布流量。

3.2 Underlay 与 Overlay 关系

在 Spine-Leaf 物理拓扑之上,网络被逻辑划分为两个平面:Underlay(底层物理网络)和 Overlay(叠加逻辑网络)。理解二者的分工与协作是设计多租户网络的关键。

3.2.1 分层职责对比

维度 Underlay Overlay
目标 提供 IP 可达性与高速转发 提供虚拟网络隔离与租户逻辑拓扑
协议 IS-IS / OSPF / EBGP(IP Fabric) VXLAN / NVGRE / GENEVE
控制平面 传统路由协议(分布式) BGP EVPN(MP-BGP)
转发单元 物理 IP 地址(VTEP IP) VNI(VXLAN Network Identifier)
租户感知 无 有(通过 VNI 隔离)
故障域 物理链路/设备 逻辑隧道/租户

3.2.2 Underlay 与 Overlay 协同工作流

当租户虚拟机(VM)跨 Leaf 通信时,数据包经历以下封装与转发过程:

  1. 源 VM 发送原始以太帧(目标 MAC 为远端 VM)。
  2. 源 Leaf(Ingress VTEP) 查询 EVPN 转发表,确定目标 VTEP IP 与 VNI。
  3. VXLAN 封装:原始帧被封装为 UDP 包(目标端口 4789),外层 IP 头为 Underlay 路由可达的 VTEP IP。
  4. Underlay 转发:Spine 交换机根据外层 IP 头执行 ECMP 转发,不感知内层租户信息。
  5. 目标 Leaf(Egress VTEP) 解封装 VXLAN 头,将原始帧交付给目标 VM。
关键约束:Underlay 网络必须支持 MTU ≥ 1600 字节(标准以太帧 1500 + VXLAN 头 50 字节),否则会导致分片或丢包。建议将 Underlay 接口 MTU 设置为 9216(jumbo frame)。

3.3 BGP EVPN 控制平面

BGP EVPN(Ethernet VPN)是 Overlay 网络的控制平面协议,它通过 MP-BGP(Multi-Protocol BGP)在 VTEP 之间分发 MAC/VNI 路由信息,替代了传统的数据平面泛洪学习方式。

3.3.1 EVPN 核心路由类型

类型 名称 用途
Type-2 MAC/IP Advertisement Route 通告主机 MAC 地址、IP 地址及其所属 VNI
Type-3 Inclusive Multicast Route 建立 BUM(广播/未知单播/组播)流量转发树
Type-5 IP Prefix Route 通告外部网络或租户子网前缀(Inter-VNI 路由)

3.3.2 EVPN 控制平面工作流程

BGP EVPN 控制平面流程 BGP EVPN 控制平面:MAC 路由学习流程 VM-1 上线 (Leaf-1) Leaf-1 生成 Type-2 MP-BGP 更新 Leaf-2 接收 Type-2 Leaf-2 写入转发表 VM-2 可到达 VM-1 关键优势:控制平面学习 vs 数据平面泛洪 传统 VXLAN 依赖 ARP 泛洪学习 MAC;EVPN 通过 BGP 直接通告,减少广播风暴,支持大规模多租户。

3.3.3 EVPN 配置示例(Cisco NX-OS 风格)

feature bgp
feature vn-segment-vlan-based
feature nv overlay

nv overlay evpn
!
vlan 100
  vn-segment 10100
!
interface nve1
  no shutdown
  source-interface loopback0
  member vni 10100
    ingress-replication protocol bgp
!
router bgp 65001
  router-id 10.0.0.1
  address-family l2vpn evpn
    neighbor 10.0.0.2
      remote-as 65002
      address-family l2vpn evpn
        send-community extended
        route-map permit-all out
性能调优建议:
  • 启用 BGP PIC(Prefix Independent Convergence) 加速故障切换。
  • 为 EVPN 路由设置 BGP 下一跳跟踪,避免无效下一跳导致黑洞。
  • 使用 Ingress Replication 替代 PIM 组播处理 BUM 流量,简化运维。

3.4 多租户隔离与性能考量

在 Spine-Leaf + EVPN 架构中,多租户隔离通过 VNI + VLAN 映射 实现。每个租户的 VRF(虚拟路由转发)实例绑定独立的 VNI,确保租户间流量完全隔离。

3.4.1 租户隔离矩阵

租户 VLAN VNI VRF 子网
Tenant-A 100-199 10100-10199 VRF-A 10.1.0.0/16
Tenant-B 200-299 10200-10299 VRF-B 10.2.0.0/16
Tenant-C 300-399 10300-10399 VRF-C 10.3.0.0/16

3.4.2 性能关键指标

  • VTEP 表项规模:每个 Leaf 需维护所有活跃租户的 MAC/IP 转发表。建议 Leaf 设备支持 ≥ 256K MAC 表项。
  • ECMP 哈希因子:Spine-Leaf 间使用 5-tuple(源/目标 IP、端口、协议)哈希,确保流量均匀分布。
  • VXLAN 卸载:推荐使用支持硬件 VXLAN 卸载的网卡(如 Mellanox ConnectX-5+),减少 CPU 封装开销。
  • BGP 更新频率:大规模租户环境下,控制 Type-2 路由更新频率,避免 BGP 路由震荡。可设置路由聚合与更新抑制。
总结:Spine-Leaf 拓扑提供无阻塞物理基础,Underlay 保证 IP 可达性,Overlay(VXLAN + EVPN)实现逻辑隔离与自动化控制平面。三者结合,构成了现代多租户数据中心网络的黄金三角。