没有对比就没有伤害,还是这张图,看过前边几期的小伙伴,一定不陌生了:
Multi-Pod的关键字:单一!单一的Overlay Domain(端到端的封装),单一的Overlay Control-Plane Domain(端到端的EVPN Update),端到端的Underlay Domain,单一的BUM(Broadcast, Unknown Unicast and Multicast) replication domain。
Multi-Fabric的关键字:独立!独立的Overlay Domain(独立的2层、3层DCI),独立的Overlay Control-Plane Domain(手工配置),独立的Underlay Domain,独立的BUM replication domain,独立的设备运行DCI。
01Multi Site介绍:VXLAN EVPN Multi-Site是一个开放的解决方案,它扩展了VXLAN EVPN的能力,提供分层的Multi-Site连接,并允许将2层和3层服务扩展到单个Overlay域之外。较Multi-Pod/Multi-Fabric设计,Multi-Site改进是显著的;因为现在VXLAN EVPN仍然用于承载Site之间的流量,但是可以在Border设备上应用策略,这些设备也充当到其他Site的“Gateway”。这些Border设备称为Border Gateways (BGW)。BGW是EVPN多站点的核心组件,它简化了整个解决方案的部署。
使用EVPN多站点时,Control-Plane和Data-Plane在原有的Fabric内保持不变。只有当流量需要离开现有的Fabric,到达一个远端Fabric的End-Point时,BGW执行VXLAN隧道的终止和再封装。在EVPN Multi-Site中,我们定义每一个Site(Fabric)作为一个BGP Autonomous System。我们利用External BGP的Next-Hop行为,它为到达远端End-Point指明下一跳节点。为了确保BGW的弹性和负载,四个BGW可以运行相同的“特性”,当一个failure scenario发生,进而隔离一个BGW时,不需要修改control-plane。这个“特性”包含,共享相同的site ID和相同的虚拟IP地址,从而使它们成为BGW集群的一部分。可以使用其他功能来执行接口状态跟踪,以帮助快速有效地检测故障场景,从而防止故障的BGW留在集群中。
几个重要提示:
BGP EVPN通告如何到达远端:
当一个BGP EVPN Route-Type 2 (MAC/IP)或者Route-Type 5 (IP Prefix)从远端site(remote AS)通告过来,BGW将利用这些信息,用自己的IP地址作为下一个跳转到本地site(local AS)。
当离开本地site时,Leaf节点如何执行data-plane操作:
由于BGP EVPN通告进入其本地Site(local As),所有site的local leaf都将看到BGW作为到达远程site(包括MAC和IP)的唯一下一跳。
另一个重要的功能是EVPN Multi-Site提供了针BUM(Broadcast,Unknown Unicast,Multicast)的Rate-Limit。
02Multi-Site 常见拓扑:
1/ BGW-to-Cloud(L3 Network):
传统DC模型
Access = Leaf
Distribution = Spine
Aggregation = BGW
Core = Cloud
适用于DCI
需求
MTU >1550(建议大于1550,因为VXLAN额外封装50Bytes)
在本地和远端BGW之间,IP可达
2/ BGWs between Spine and Super-Spine:
多层结构 (3-4 层)
Leaf - Spine - BGW – Super Spine
适合于规模化和区域化
在BGW之间,通过Super-Spine形成统一连接
需求
MTU >1550(建议大于1550,因为VXLAN额外封装50Bytes)
在本地和远端BGW之间,IP可达
3/ BGWs on Spine:
将BGW整合到Spine上
多层结构 (3 层)
Leaf –(Spine/BGW) –Super-Spine
需求
MTU >1550(建议大于1550,因为VXLAN额外封装50Bytes)
在本地和远端BGW之间,IP可达
4/ BGW back-to-back
节约成本
Full-mesh的BGW
两个以上的Sites会变得很复杂
需求
本地BGW之间必须有link
MTU >1550(建议大于1550,因为VXLAN额外封装50Bytes)
在本地和远端BGW之间,IP可达
03Anycast Border Gateway:
BGW跨BGW的通用Virtual IP(VIP):
VIP用于不同site之间的border gateway之间通信
VIP用于同一个Site内,border gateway和Leaf之间通信
独立的Primary IP (PIP):
用于BUM流量的复制
PIP用于与Single-Homed(仅路由),内部和外部site之间的通信
基于VNI Designated Forwarder (DF)的选举
每一个BGW可以充当一个或一组Layer-2 VNI的DF
DF的选举和分配是自动地
使用BGP EVPN Route Type 4进行DF选举
Operator Managed Assignment (Type: 00)
Six Octet Site Identifier (System MAC: 00:00:00:00:00:01)
Multi-Site Discriminator (Ethernet-Segment: 00:00:07)
Originators IP Address (PIP): 10.1.1.101
Layer-2VNI: 30010
Single-Homed End-Points 只通过L3连接
Services Appliance (i.e. Firewall, ADC etc.)
外部路由器
BGW节点不支持SVI
通过PIP通告和可达
Site内部:Leaf节点使用PIP到达连接到Border Gateway的设备
Site外部:远端Border Gateway使用PIP到达连接的Border Gateway的设备
04BGW故障场景:
BGW节点的Site internal interface,通过‘evpnmultisite fabric-tracking’命令,持续被跟踪和检测
如果所有的Site internal interface都出现了故障:
隔离的BGW停止向站点外部网络发布PIP/VIP地址
针对被隔离的BGW上的L2VNI,剩下的BGW执行新的DF选举
BGW从Site-Internal和Site-External网络中被隔离出来
使用“delay-restore” timer,对VIP地址进行BGW节点无缝插入
BGW节点的Site External interface,通过‘evpnmultisite dci-tracking’命令,持续被跟踪和检测
如果所有的Site External Interface都出现了故障:
停止向Site Internal网络通告VIP VTEP地址
撤回BGP EVPN Type-4通告(在其他BGW之间,触发新的DF选举)
开始正常的VTEP功能(PIP仍然UP)
BGW从Site-Internal和Site-External网络中被隔离出来
BGW继续作为Site-Internal VTEP运行
使用“delay-restore” timer,对VIP地址进行BGW节点无缝插入
05BUM流量处理:
BGW、local/remote site均使用multicast方式实现BUM流量处理
BGW之间使用ingress replication,local/remote site使用multicast
BGW之间、local/remote site均使用ingress replication方式
BGW之间使用ingress replication,local site使用ingress replication,remote site使用multicast
BGW可配置strom-control,进而控制BUM流量大小
例行结束语:经历了一系列的VXLAN介绍:初识、EVPN、进阶、multi-pod、multi-fabric、multi-site;希望可以让各位对VXLAN感兴趣的小伙伴们,有一个宏观的了解。让我们一起“好好学习,天天向上”!