第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、网络编程

九、思考

  1. EVPN over SRv6 相比 EVPN over VXLAN 的优势是什么?
  2. EVPN L3VPN over SRv6 使用哪种 SID 类型?
  3. EVPN Type 5 路由在 SRv6 场景中如何携带 SID 信息?
  4. 在 5G 承载场景中,SRv6 + EVPN 提供了哪些价值?
  5. 为什么说 SRv6 + EVPN 简化了网络协议栈?

下篇预告:第191篇《运营商 MPLS 骨干网设计案例》——通过实际的运营商案例,将前文的 MPLS/VPN/TE/SR 技术综合运用到骨干网设计中。