数据中心网络 Fabric 设计
让数据中心网络支撑大带宽东西向流量、支持平滑扩容、具备跨机架互通与多活能力。本技能给出 Spine-Leaf 端口规划、Underlay/Overlay 设计、VXLAN/EVPN 配置、Anycast 网关与多活 DC 方案。
> 关键点:Underlay 管连通(BGP/OSPF + BFD)、Overlay 管业务(VXLAN/EVPN)、Anycast 网关管高可用、MTU 管大包不分片,四者缺一不可。
一、核心原理
数据中心流量以东西向为主(服务器间),因此采用 Spine-Leaf 两级架构:Leaf 接服务器,Spine 全互联 Leaf,任意 Leaf 间最多 2 跳。控制面用 BGP EVPN,数据面用 VXLAN 封装实现大二层 Overlay,Underlay 用 OSPF/BGP 提供 IP 连通。Anycast 网关让同一网关 IP 存在于所有 Leaf,实现就近转发与故障快速切换。
flowchart TB
subgraph Overlay
VX[VXLAN 隧道<br/>VNI 10000~10099]
end
subgraph Underlay
SP1[Spine-1] --- L1[Leaf-1]
SP1 --- L2[Leaf-2]
SP2[Spine-2] --- L1
SP2 --- L2
end
L1 --- S1[服务器 A<br/>VLAN 10]
L2 --- S2[服务器 B<br/>VLAN 10]
S1 -. VXLAN 隧道 .- S2
二、参考拓扑
flowchart TB
SP1[Spine-1<br/>32x400G] --- L1[Leaf-1]
SP1 --- L2[Leaf-2]
SP1 --- L3[Leaf-3]
SP2[Spine-2<br/>32x400G] --- L1
SP2 --- L2
SP2 --- L3
L1 --- R1[Rack-1 服务器]
L2 --- R2[Rack-2 服务器]
L3 --- R3[Rack-3 服务器]
配套 ASCII 拓扑:
Spine-1 Spine-2
32x400G 32x400G
| | | | | |
└──┼──┼────────────────┼──┼──┘
Leaf-1 Leaf-2 Leaf-3 (64x25G down / 8x100G up)
| | |
Rack-1 Rack-2 Rack-3 (每服务器 25G 双归或单归)
三、关键参数与决策表
| 决策点 | 推荐取值 | 依据 | 常见错误 |
|---|---|---|---|
| DC 收敛比 | 1:1 ~ 3:1 | 东西向流量大 | 按园区 20:1 设计 |
| Leaf 上行 | 100G/400G | 承载多服务器汇聚 | 上行用 40G 成瓶颈 |
| Spine 端口 | 32×400G 或 64×100G | 支持大规模 Leaf | Spine 端口少限制扩展 |
| Underlay 协议 | BGP(AS-per-Leaf)或 OSPF | 快速收敛 + 防环 | 混用协议难排障 |
| Overlay 封装 | VXLAN(UDP 4789) | 大二层跨 Leaf | 忘记 MTU 导致分片 |
| MTU | Underlay ≥ 1600(或 9000) | VXLAN 头 50 字节 | 用 1500 导致分片 |
| Anycast 网关 | 所有 Leaf 同 IP | 就近转发 + 快速切换 | 网关只在单台 |
| VNI 规划 | 按租户/网段分配 | 隔离租户 | VNI 冲突 |
| Spine 冗余 | ≥ 2 台 | 单 Spine 故障降级 | 只配 1 台 Spine |
四、设计分步 SOP
- 规模与流量:登记服务器数、单服务器速率、东西向/南北向比例。
- 端口规划:用
scripts/spine_leaf_planner.py算 Leaf/Spine 数量与收敛比。 - Underlay 设计:BGP(AS-per-Leaf)或 OSPF,点对点地址 + BFD 快速收敛。
- Overlay 设计:VXLAN + EVPN,VNI 规划(租户/网段映射)。
- Anycast 网关:所有 Leaf 配相同网关 IP/MAC。
- MTU 核查:Underlay MTU ≥ 1600(VXLAN 封装不触发分片)。
- 多活 DC:DCI 互联(EVPN 跨 DC),大二层跨机房。
- 验证:跑第八节命令,核对 BGP/EVPN/VXLAN 状态。
五、厂商落地配置示例
华为 CloudEngine — VXLAN + EVPN + BGP
#
# 1) Underlay:BGP(AS-per-Leaf)
#
bgp 65001
router-id 10.0.0.1
peer 10.0.0.2 as-number 65000
peer 10.0.1.2 as-number 65000
ipv4-family unicast
peer 10.0.0.2 enable
peer 10.0.1.2 enable
quit
#
# 2) EVPN 邻居
#
evpn-overlay enable
bgp 65001
l2vpn-family evpn
peer 10.0.0.2 enable
peer 10.0.1.2 enable
quit
#
# 3) VXLAN 隧道与 VNI
#
bridge-domain 10
vxlan vni 10010
quit
interface Nve1
source 10.0.0.1
vni 10010 head-end peer-list protocol bgp
quit
思科 Nexus — VXLAN EVPN
!
! 1) Underlay + EVPN BGP
!
feature nv overlay
feature vn-segment-vlan-based
feature bgp
!
router bgp 65001
neighbor 10.0.0.2 remote-as 65000
address-family l2vpn evpn
neighbor 10.0.0.2 activate
send-community extended
!
! 2) VNI 与 Anycast 网关
!
vlan 10
vn-segment 10010
!
interface nve1
no shutdown
source-interface loopback1
member vni 10010
ingress-replication protocol bgp
!
interface Vlan10
ip address 10.10.10.254/24
fabric forwarding mode anycast-gateway
> 完整可填空模板见 assets/fabric-template.txt,逐行解释见 references/vendor-configs.md。
六、验证方法
Fabric 上线前后都要做数据面与控制面双重验证,重点确认大包不丢。
| 验证项 | 命令(华为 / 思科) | 达标阈值 |
|---|---|---|
| BGP 邻居 | display bgp peer / show ip bgp summary |
Established |
| EVPN 邻居 | display bgp evpn peer / show bgp l2vpn evpn summary |
Established |
| VXLAN 隧道 | display vxlan tunnel / show nve peers |
隧道 Up |
| Anycast 网关 | display ip interface brief |
网关 IP 可达 |
| MTU | ping -s 大包 |
无分片 |
# 华为
display bgp peer
display vxlan tunnel
display bgp evpn peer
# 思科
show ip bgp summary
show nve peers
show bgp l2vpn evpn summary
七、常见故障排查表
| 现象 | 根因方向 | 首要动作 |
|---|---|---|
| EVPN 邻居建不起来 | Underlay 不可达、RT 不匹配 | 核对 Underlay 与 EVPN RT |
| VXLAN 隧道 Down | NVE source 不可达、peer-list 错误 | 查 NVE 配置与源地址 |
| 跨 Leaf 不通 | VNI 映射错误、RT 不一致 | 核对 VNI/VLAN 映射 |
| 大包丢包/分片 | MTU 不足(VXLAN 头 50 字节) | Underlay MTU ≥ 1600 |
| 东西向拥塞 | 收敛比设置过高 | 重算端口规划,加 Spine |
| Anycast 网关切换慢 | 未配 BFD | 开 BFD 加速收敛 |
八、输出规范
交付时应产出:Fabric 拓扑与端口规划(Leaf/Spine 数量/收敛比)、Underlay/Overlay 设计(BGP/EVPN/VXLAN)、VNI 与 VLAN 映射表、Anycast 网关配置、MTU 核查、扩容与多活 DC 方案。
九、边界与风险
- 收敛比与端口规划为通用建模,最终以设备规格与实测流量为准,不承诺绝对性能。
- VXLAN 封装增加 50 字节头,MTU 不足必分片,必须核查。
- 跨厂商 EVPN(华为接思科)需验证 RT/RD 与 BGP 扩展团体一致性。
配套资源
- 参数与规划手册:
references/fabric-parameters.md - 厂商配置对照:
references/vendor-configs.md - 故障案例库:
references/troubleshooting.md - 数据基线:
assets/spine-leaf-port-matrix.csv - 配置模板:
assets/fabric-template.txt - 脚本:
scripts/spine_leaf_planner.py(Spine-Leaf 端口规划器) - 配套检查清单:《数据中心网络 Fabric 设计清单》