Ethernet Virtual Private Network
Define by RFC7432(BGP MPLS-Based Ethernet VPN)
原有的VXLAN实现方案没有控制平面,是通过数据平面的流量泛洪进行VTEP(VXLAN Tunnel Endpoints)发现和主机信息(包括IP地址、MAC地址、VNI、网关VTEP IP地址)学习的,这种方式导致数据中心网络存在很多泛洪流量。为了解决这一问题,VXLAN引入了EVPN作为控制平面,通过在VTEP之间交换EVPN路由实现VTEP的自动发现、主机信息相互通告等功能,避免了不必要的数据流量泛洪。
EVPN是采用类似于BGP/MPLS IP VPN的机制的VPN技术,在公共网络中传播EVPN路由,在一定程度上保障客户私有数据在公共网络传播的安全性。
在VXLAN网络规模较大时,原有的VXLAN实现方案手工配置比较耗时,通过采用EVPN协议,可以减少人工配置工作量。
EVPN(Ethernet Virtual Private Network)是一种用于二层网络互联的VPN技术。EVPN技术采用类似于BGP/MPLS IP VPN的机制,通过扩展BGP协议,使用扩展后的可达性信息,使不同站点的二层网络间的MAC地址学习和发布过程从数据平面转移到控制平面。
定义了一套新的寻址机制,即基于新的NLRI set进行二层路由表构建。
为了不同站点之间可以相互学习对方的MAC信息,因此EVPN在BGP协议的基础上定义了一种新的NLRI(Network Layer Reachability Information,网络层可达信息),被称为EVPN NLRI。在EVPN NLRI中共定义了4种EVPN路由类型:
以太自动发现路由(Ethernet Auto-Discovery route):当PE之间的BGP邻居关系建立成功后,PE之间会传递以太自动发现路由。以太自动发现路由可以向其他PE通告本端PE对接入站点的MAC地址的可达性,即PE对连接的站点是否可达。以太自动发现路由主要用于快速收敛、冗余模式与别名和水平分割。
Route Distinguisher:该字段可以是EVPN实例下设置的RD(Route Distinguisher)值,也可以是由PE上设置的源IP地址组合而成,例如X.X.X.X:0。
Ethernet Segment Identifier:PE与某一CE的连接定义的唯一标识。
Ethernet Tag ID:该字段在以太自动发现路由中为全0或全F。
MPLS Label:该字段为0或者EVPN单播流量负载分担转发时使用的MPLS标签。
MAC地址通告路由(MAC advertisement route):MAC地址通告路由可以携带本端PE上EVPN实例的RD值、ESI值以及EVPN实例对应的私网标签
Route Distinguisher:该字段为EVPN实例下设置的RD(Route Distinguisher)值。
Ethernet Segment Identifier:PE与某一CE的连接定义的唯一标识。
Ethernet Tag ID:PE上实际配置的Vlan ID
MAC Address Length:被该类型路由通告的MAC地址长度。
MAC Address:被该类型路由通告的MAC地址。
IP Address Length:被该类型路由通告的主机IP地址掩码长度。
IP Address :被该类型路由通告的主机IP地址。
MPLS Label1:二层业务流量转发使用的标签。
MPLS Label2:三层业务流量转发使用的标签。