1. 跨数据中心互联工程全景

当企业把业务从单一机房扩展到同城双活、两地三中心,甚至多地多活时,最先撞上的不是服务器性能,而是二层网络的边界。传统数据中心内部依靠 VLAN 划分租户与业务网段,VLAN 只有 12 位标识,理论上限 4094 个,且生成树协议在大规模组网中收敛慢、链路利用率低。VXLAN 用 24 位 VNI 把可标识的网段数量提升到约 1600 万,并把二层帧封装进 UDP 报文,让二层语义可以跨越三层 IP 网络传输。这一特性使它天然成为数据中心互联(DCI,Data Center Interconnect)场景中的关键承载技术。

VXLAN 在 DCI 中的定位

要理解 VXLAN 在 DCI 中的位置,需要先区分两个层次:数据中心内部与数据中心之间。在单个数据中心内,VXLAN 通常由 Leaf-Spine 架构中的 VTEP(VXLAN Tunnel End Point)负责封装与解封装,Leaf 交换机作为 VTEP,把接入服务器的原始以太帧加上 VXLAN 头、UDP 头、外层 IP 头后,通过 Spine 转发到对端 Leaf。此时 VXLAN 解决的是“同一数据中心内大二层与多租户隔离”的问题。

当业务需要跨数据中心时,VXLAN 的角色发生变化:它不再只是接入侧的封装协议,而是成为DCI 承载层与被承载业务之间的适配层。两个数据中心的 VTEP 之间需要建立 VXLAN 隧道,隧道的外层 IP 由 DCI 底层网络(通常是 DWDM 波分、OTN 或三层 IP/MPLS 骨干)提供可达性。也就是说,DCI 底层负责“把包从 A 机房送到 B 机房”,VXLAN 负责“让 A 机房的二层网段在 B 机房看起来仍然存在”。

关键定位:VXLAN 在 DCI 中不是替代底层传输,而是叠加在底层传输之上的二层延伸与租户隔离机制。底层网络关注带宽、时延、丢包与路径冗余;VXLAN 关注 VNI 映射、VTEP 可达性、MAC 学习与广播域控制。

业务驱动:为什么需要跨数据中心二层互联

跨数据中心互联的驱动力通常来自以下几类业务需求:

  • 虚拟机迁移与资源调度:同城双活场景中,虚拟机需要在两个数据中心之间在线迁移,迁移过程要求源和目的主机处于同一二层网段,否则迁移后 IP 地址变更会中断业务。
  • 双活与灾备:数据库主备、负载均衡集群、心跳网络等往往要求跨站点二层可达,才能实现 VIP 漂移、ARP 同步和会话保持。
  • 多租户统一编排:云平台希望在不同数据中心使用统一的 VNI 和网段规划,避免每个机房独立规划 VLAN 导致租户网络无法拉通。
  • 业务灰度与容灾切换:部分业务需要把流量按比例分发到两个数据中心,二层互通是负载均衡和 DNS 调度之外的重要补充手段。

这些需求共同指向一个工程目标:在保持三层网络稳定性的同时,按需提供受控的二层延伸。VXLAN 通过 VNI 把不同租户、不同业务的二层域隔离开,避免跨站点广播域无限扩大。

典型拓扑:从单中心到跨中心

一个典型的跨数据中心 VXLAN 拓扑可以这样组织:每个数据中心内部采用 Leaf-Spine 架构,Leaf 作为 VTEP;两个数据中心的 Leaf 之间通过 DCI 边界设备(Border Leaf 或 DCI 网关)建立 VXLAN 隧道。隧道外层 IP 走 DCI 底层网络,底层网络可以是三层 IP 骨干,也可以是 OTN 提供的透明二层通道。

下面这张图展示了一个双数据中心 VXLAN 互联的典型拓扑,重点标出了 VTEP、VNI、DCI 边界与底层承载之间的关系。

数据中心 A Spine 层 Leaf A1 VTEP · VNI 10010 Leaf A2 VTEP · VNI 10020 VM 10.1.1.0/24 VM 10.1.2.0/24 Border Leaf A DCI 边界 · VTEP 网关 数据中心 B Spine 层 Leaf B1 VTEP · VNI 10010 Leaf B2 VTEP · VNI 10020 VM 10.1.1.0/24 VM 10.1.2.0/24 Border Leaf B DCI 边界 · VTEP 网关 DCI 底层网络 DWDM / OTN / IP 骨干 提供 VTEP 外层 IP 可达 带宽 · 时延 · 冗余 VXLAN 隧道 VTEP 节点 DCI 边界网关 底层承载网络 VXLAN 隧道

图中可以看到,两个数据中心内部各自有独立的 Spine-Leaf 结构,Leaf 作为 VTEP 承载 VNI 10010 和 10020 两个租户网段。跨中心通信时,Border Leaf 作为 DCI 边界 VTEP,把本地 VXLAN 流量重新封装后送入 DCI 底层网络,对端 Border Leaf 解封装后再送入本地 VXLAN 域。VNI 在两个数据中心保持一致,才能让同一租户的二层域真正拉通。

工程生命周期:从规划到运维

跨数据中心 VXLAN 互联不是一次性配置,而是一个有明确阶段的生命周期。工程上通常按以下阶段推进:

  1. 需求与范围界定:明确哪些 VNI 需要跨中心延伸、哪些只在本中心内使用。并非所有网段都适合跨中心,广播域过大会带来未知单播泛洪和 MAC 表膨胀。
  2. 地址与 VNI 规划:统一规划 VTEP 的 Loopback 地址、VNI 与二层网段的映射关系、租户与 VNI 的对应表。示例中 VNI 10010 对应 10.1.1.0/24,VNI 10020 对应 10.1.2.0/24,两个中心保持一致。
  3. 底层网络准备:确认 DCI 底层网络能提供 VTEP 之间的 IP 可达性,并评估带宽、时延、丢包和冗余路径。VXLAN 封装会增加约 50 字节开销,MTU 需要相应调整。
  4. VTEP 与隧道配置:在 Border Leaf 上配置 VXLAN 隧道接口、VNI 映射、远端 VTEP 地址。以华为设备为例,关键配置片段如下:
interface Nve1
  source 10.0.0.1
  vni 10010 head-end peer-list 10.0.0.2
  vni 10020 head-end peer-list 10.0.0.2

其中 source 是本端 VTEP 的 Loopback 地址,peer-list 是对端 VTEP 地址。两端配置完成后,可以用 display vxlan vni 查看 VNI 状态,用 display nve peer 确认隧道是否建立。

  1. 业务验证:在两端 VM 之间执行 ping 和 traceroute,确认二层互通;同时检查 MAC 地址表是否学习到对端 MAC,VXLAN 隧道计数是否增长。
  2. 运维与优化:持续监控隧道状态、VNI 流量、底层链路时延和丢包。当跨中心流量增长时,评估是否需要引入 EVPN 控制平面替代泛洪学习,或调整 DCI 底层带宽。
工程经验:跨中心 VXLAN 互联中,最容易出问题的环节往往不是 VXLAN 本身,而是底层网络的 MTU 和时延。建议在规划阶段就把 VTEP 之间的 RTT 控制在业务可接受范围内,并预留至少 50 字节的 MTU 余量。

关键参数与判断依据

在工程实施中,以下几个参数和判断点值得重点关注:

关注项典型值/示例判断依据
VNI 范围10010、10020两端必须一致,否则二层域无法拉通
VTEP 源地址10.0.0.1 / 10.0.0.2底层网络必须可达,且不能冲突
MTU底层 ≥ 1550VXLAN 封装增加约 50 字节,避免分片
隧道状态Up / Downdisplay nve peer 查看,Down 时检查底层路由
MAC 学习动态学习对端 MACdisplay mac-address 确认是否学到
时延同城 < 5ms影响虚拟机迁移和数据库同步体验

这张表可以作为工程初期的检查清单。需要强调的是,表中数值是示例参考,实际项目中应根据业务 SLA 和底层网络能力确定。

小结与工程视角

VXLAN 在 DCI 中的价值,不在于它比传统二层互联“更高级”,而在于它用 VNI 和 UDP 封装把二层延伸变成了可控、可隔离、可叠加在 IP 网络之上的工程手段。理解它的定位,需要同时看到三层:业务层需要跨中心二层互通,VXLAN 层负责封装与隔离,DCI 底层负责实际传输。三者缺一不可。

从工程生命周期看,跨数据中心 VXLAN 互联的成败往往在规划阶段就已决定:VNI 是否统一、VTEP 地址是否可达、MTU 是否足够、时延是否可接受。把这些前置条件确认清楚,后续的配置和验证才有意义。对于刚开始接触 DCI 的工程师,建议先在一个小规模双中心环境中完成 VNI 10010 的拉通验证,再逐步扩展到多 VNI、多租户场景。