「VXLAN」- General BGP EVPN Topics

  CREATED BY JENKINSBOT

该部分特性属于 EVPN 的通用特性;,其不单适用于 EVPN for VXLAN,也适用与 EVPN for MPLS、EVPN for SRv6;

ARP 广播抑制

BGP EVPN 的 Type 2 路由使得 VTEP 可以不依赖主机之间的通信过程完成 MAC 地址表的学习,但是主机间的 ARP 信息依旧需要在 VXLAN Overlay 中进行泛洪转发,这会占用大量的网络资源;
为此可以通过 BGP EVPN 路由实现 ARP 广播抑制功能,减少广播流量;

ARP 广播抑制功能是一种有效缓解网关处理 ARP 报文的压力的方法。当网关收到 ARP 请求报文时,会查询 ARP 广播抑制表,该表保存了目的设备的 IP 与 MAC 地址的映射关系,如果命中表项,则直接将 ARP 请求报文中的广播 MAC 地址替换为目的设备的 MAC 地址,随后网关将 ARP 请求报文从目的 MAC 对应的端口发送出去;

主机信息收集

ARP 广播抑制功能的实现依赖于 ARP 广播抑制表,该表项的形成依赖于 BGP EVPN 携带的 Type 2 路由(IRB 路由、主机 ARP 通告);
默认情况下 L3 网关不会由本地的 ARP 信息生成 BGP EVPN 路由,需要手动使能 BGP EVPN 主机信息收集功能。之后 VTEP 会依据 ARP 信息生成 IRB 路由;

ARP 类型路由携带的有效信息有:主机 MAC 地址+主机 IP 地址+二层 VNI;IRB 类型路由携带的有效信息有:主机 MAC 地址+主机 IP 地址+二层 VNI+三层 VNI。因此,IRB 类型路由包含着 ARP 类型路由,不仅可以用于主机 IP 路由通告,也能用于主机 ARP 通告;

本地 ARP 代理

全网开启 BGP EVPN 主机信息收集功能之后,L3 网关上将学习到全部主机的 32 位主机路由,这使得 L3 网关在转发属于同一个 BD 之间的流量时完全可以依赖主机路由进行三层 IRB 对称转发;
为此可以在 L3 网关的 VBDIF 接口上开启本地 ARP 代理,VBDIF 接口会响应下连主机对同网段 IP 地址的 ARP 请求,之后对该同网段 IP 的访问可以由 L3 网关进行三层转发完成;

在 VXLAN 网络中,BD 是一个广播域,VTEP 收到 BUM 报文后会在 BD 域内广播。为了减少广播,网络管理员通常会在接入侧通过配置接入侧的隔离功能或配置端口隔离功能,使得该 BD 内的接入用户之间相互隔离,无法二层互通。但是,随着用户业务的日益增多,用户之间的互通需求也会相应地增加,此时网络管理员可以在 VBDIF 接口上使能本地 ARP 代理功能,实现 BD 内接入侧配置了用户隔离的用户间的相互通信;

通过本地 ARP 代理机制,ARP 报文的传递将会被抑制在本地 VTEP 之下,同时减少了 VTEP 之间的不必要流量交互;

分布式网关

在开启本地代理 ARP 的场景下,VTEP 只需要维护本地的 ARP 表项,其他 VTEP 通过 BGP EVPN 路由传递的 ARP 信息在转发时并不会被用到(其使用三层 IRB 路由进行转发),此时 VTEP 无需维护从其他 VTEP 学习到的 ARP 表项;

开启分布式网关之后,VTEP 只处理收到的用户侧主机发送的 ARP 报文,删除已经学到的网络侧的 ARP 表项;

一般将不同 VTEP 上相同编号的 VBDIF 的接口 MAC 地址配置为相同的 MAC 地址,开启分布式网关之后,VBDIF 虽然具有相同的 IP 地址、MAC 地址,但是并不会上报 ARP 冲突,并且主机、VM 迁移到不同的 VTEP 下时,无需重新进行网关的 ARP 解析;

MAC Mobility

MAC Mobility 扩展属性用于当一个主机 /VM 从一个 VTEP 启动到另外一个 VTEP 之下时,对外宣告该主机的位置移动;