注:图中标识的 CE 多活接入场景配置以华为 NE 系列路由器为例,CE1 侧配置 Eth-Trunk 接入 PE1 和 PE2,PE1 和 PE2 需配置跨设备的 E-Trunk(Enhanced Trunk)。后续将不在标识;
EVPN 的工作流程分为两个阶段:
启动阶段
EVPN Peer 交互 EVPN TYPE-3-ROUTE,以建立 BUM 流量转发表;
EVPN Peer 交互 EVPN TYPE-4-ROUTE,以完成 ES 发现和 DF 选举(在 ES 多归属场景下);
EVPN Peer 交互 EVPN TYPE-1-ROUTE,以交互 ESI Label,进而实现水平分割、别名等功能;
流量转发
CE 侧流量触发 PE 通过 Type 2 路由通告 MAC 地址,该路由携带分配的标签信息,后续根据该标签执行单播流量转发;
常见问题
Q:EVPN 是如何解决双活场景所带来问题?
通过 TYPE-4-ROUTE 信息,完成 ES 成员表,以进行 DF 选举,解决广播流量(BUM)向 CE 发送多份的问题;
通过 TYPE-1-ROUTE 信息,补充 ES 成员表的 ESI Label 字段,解决 CE 侧环路问题;
Q:EVPN 是如何实现负载分担?
EVPN 实现全路径负载分担。CE1 通过两条 Active 的路径进行负载分担,分别发给 PE1 和 PE2;由于 PE1 和 PE2 上事先已经形成了两条到达 CE2 的路径,所以可以分担到不同的路径;最终 4 个业务数据按照不同的路径到达 CE2。(再次强调:DF 的选举仅影响 BUM 流量的转发,而不影响常规流量)
Q:EVPN 是如何实现故障快速收敛?
当 PE3 检测到 CE 链路故障,首先删除自己本地 MAC 表项,然后通过 TYPE-1-ROUTE 通告 Other-PE 撤销该 ES 相关的所有 MAC 地址。
当 PE4 感知 TYPE-1-ROUTE 后,升级为 DF 路由器;
当 PE1 PE2 收到撤销路由后,刷新 MAC 标签,撤销到达 ES2 的的 MAC 路由。流量将自动切换到 PE4(DF) 设备;
在多宿主情况下,如果某台 PE 与 CE 的连通性故障,PE 必须发送 Ethernet A-D per ES 路由撤销之前通告的所有 MAC 地址;