第190篇:SRv6 与 EVPN 的深度融合
关键词
SRv6 + EVPN、EVPN over SRv6、SRv6 L3VPN、SRv6 L2VPN、SRv6 Services
一、为什么需要 SRv6 + EVPN
1.1 EVPN 的现有局限性
EVPN over VXLAN 在数据中心已经非常成熟,但也存在一些局限:
| 局限 | 说明 |
|---|---|
| VXLAN 封装开销 | 50 字节,在 WAN 链路上 MTU 问题突出 |
| 需要额外控制面 | 除 EVPN 外还需 IGP 承载 Underlay |
| 多协议处理 | IPv4/IPv6 需要分别处理 |
| TE 能力有限 | VXLAN 本身无 TE 能力 |
1.2 SRv6 + EVPN 的组合优势
EVPN over SRv6 用 SRv6 替代 VXLAN 作为数据面,保留 EVPN 的控制面:
EVPN(控制面):MP-BGP 分发 MAC/IP/路由信息
SRv6(数据面):IPv6 + SRH 封装,携带服务信息
组合后:
- EVPN 控制面不变(Type 2/3/5 路由)
- 数据面从 VXLAN → SRv6 SID
- VNI → SID
| 优势 | 说明 |
|---|---|
| 统一数据面 | SRv6 同时承载 L2/L3 VPN |
| 原生 TE | SRv6 TE Policy 提供路径控制 |
| 减少封装 | 不需要额外的 VXLAN/UDP 封装 |
| IPv6 原生 | 纯 IPv6 网络,无需 MPLS |
| 简化协议栈 | IGP + BGP EVPN + SRv6 = 三层架构 |
二、EVPN L3VPN over SRv6
2.1 路由通告
PE1 向 PE2 通告 EVPN Type 5 路由(IP Prefix):
EVPN Type 5(IP Prefix Route):
RD: 100:1
IP Prefix: 10.1.1.0/24
GW IP: FC00:100::1
SRv6 SID: FC00:200::100(PE2 的 End.DT4 SID)
VRF: VRF-A
PE2 发布 Type 5 路由时,携带本地分配的 SRv6 SID(End.DT4)。
2.2 数据转发
CE1 → PE1 → SRv6 网络 → PE2 → CE2
PE1(Ingress):
① 收到 CE1 的 IP 包
② 查 VRF-A 路由 → 下一跳 PE2(FC00:200::1)
③ EVPN Type 5 携带 PE2 的 SID: FC00:200::100(End.DT4)
④ 封装 SRv6:
- 目的 IP = 第一个路径 SID(或直接 FC00:200::100)
- SRH = [..., FC00:200::100]
⑤ 发送到 SRv6 网络
PE2(Egress):
⑥ 目的 IP = FC00:200::100 → 本地 End.DT4 SID
⑦ End.DT4 功能:
- 弹出 IPv6/SRH 封装
- 恢复原始 IPv4 包
- 查 VRF-A 路由表
⑧ 转发到 CE2
三、EVPN L2VPN over SRv6
3.1 路由通告
PE1 向 PE3 通告 EVPN Type 2 路由(MAC/IP):
EVPN Type 2(MAC/IP Advertisement):
RD: 100:1
MAC: 00e0-fc00-0001
IP: 10.1.1.1
SRv6 SID: FC00:200::50(PE1 的 End.DX2 SID)
BD: BD 100
3.2 数据转发
CE1 发往 CE2(同子网二层):
PE1 收到以太网帧
查 MAC 表 → MAC=CE2 → 下一跳 PE3
封装 SRv6:目的 IP = FC00:300::50(PE3 的 End.DX2)
PE3 收到 → End.DX2 → 桥接到 AC → CE2
四、SRv6 + EVPN 的 Integrated Routing & Bridging
4.1 IRB over SRv6
EVPN 的 Symmetric IRB 与 SRv6 结合:
CE1(子网 A, VRF-A)→ CE2(子网 B, VRF-A)
PE1(Ingress):
三层路由 → 封装 SRv6(End.DT4 SID of PE2)
SRv6 穿越骨干
PE2(Egress):
End.DT4 → 查 VRF → 桥接到子网 B → CE2
4.2 ARP 抑制 + SRv6
EVPN 的 ARP 抑制与 SRv6 SID 无关——ARP 抑制是 EVPN 控制面的能力,数据面换成 SRv6 不影响:
CE1 发送 ARP Request:
PE1 查 EVPN Type 2 路由库 → 有 CE2 的 MAC+IP
PE1 代理回复(ARP 抑制)
无需 SRv6 封装
五、SRv6 + EVPN 的典型场景
5.1 数据中心 Spine-Leaf 网络
Spine(RR + 转发)
/ | | \
/ | | \
Leaf1 Leaf2 Leaf3 Leaf4
(VTEP+SRv6)
Leaf 之间运行:
Underlay:ISIS + SRv6
Overlay:BGP EVPN(分发 MAC/IP + SRv6 SID)
数据面:IPv6 + SRH(无 VXLAN)
5.2 WAN/骨干网
PE1 ── P1 ── P2 ── PE2
PE 之间:
BGP EVPN 分发路由
每个前缀携带 SRv6 SID
P 设备只做 IPv6 转发(不感知 VPN)
5.3 5G 承载
gNodeB ── UPF ── MEC ── Core
- gNB 到 UPF:SRv6 + EVPN L2VPN
- UPF 到 Core:SRv6 + EVPN L3VPN
- 网络切片:不同 Color 的 SR Policy
- 50ms 故障切换:TI-LFA
六、SRv6 + EVPN 的配置示例
6.1 华为设备配置
# PE1 SRv6 + EVPN 配置
segment-routing ipv6
locator SRv6-LOC ipv6-prefix FC00:100:: 48
opcode 1 end-dt4 vpn-instance VRF-A # End.DT4 for L3VPN
opcode 2 end-dx2 bridge-domain 100 # End.DX2 for L2VPN
!
bridge-domain 100
evpn
route-distinguisher 100:100
vpn-target 100:100 export-extcommunity
vpn-target 100:100 import-extcommunity
srv6 sid fc00:100::2 # SRv6 SID for L2VPN
!
ip vpn-instance VRF-A
evpn
srv6 sid fc00:100::1 # SRv6 SID for L3VPN
!
bgp 100
peer 2.2.2.2 as-number 100
peer 2.2.2.2 connect-interface LoopBack0
l2vpn-family evpn
peer 2.2.2.2 enable
peer 2.2.2.2 srv6 sid fc00:100::1 # 通告 SRv6 SID
七、SRv6 + EVPN 与 EVPN + VXLAN 对比
| 对比维度 | EVPN + VXLAN | EVPN + SRv6 |
|---|---|---|
| 数据面 | VXLAN over UDP/IP | SRv6 over IPv6 |
| 封装开销 | 50 字节 | 40+ 字节(SRH 可变) |
| TE 能力 | 无(依赖 Underlay) | 原生(SR TE Policy) |
| 协议栈 | IGP + BGP + VXLAN | IGP + BGP + SRv6 |
| IPv6 原生 | 否 | 是 |
| 网络编程 | 无 | 有 |
| 当前成熟度 | 成熟 | 发展中 |
八、总结
| 知识点 | 核心要点 |
|---|---|
| SRv6 + EVPN | EVPN 控制面 + SRv6 数据面 |
| L3VPN | End.DT4/DT6 SID + EVPN Type 5 |
| L2VPN | End.DX2/DT2 SID + EVPN Type 2 |
| IRB | Symmetric IRB 无缝结合 SRv6 |
| 典型场景 | DC、WAN、5G 承载 |
| 核心优势 | 简化协议栈、原生 TE、网络编程 |
九、思考
- EVPN over SRv6 相比 EVPN over VXLAN 的优势是什么?
- EVPN L3VPN over SRv6 使用哪种 SID 类型?
- EVPN Type 5 路由在 SRv6 场景中如何携带 SID 信息?
- 在 5G 承载场景中,SRv6 + EVPN 提供了哪些价值?
- 为什么说 SRv6 + EVPN 简化了网络协议栈?
下篇预告:第191篇《运营商 MPLS 骨干网设计案例》——通过实际的运营商案例,将前文的 MPLS/VPN/TE/SR 技术综合运用到骨干网设计中。