DFS-Group(Dynamic Fabric Service Group)动态交换服务组
通过DFS-Group对部署了M-LAG的设备进行配对,实现多台设备间的链路聚合
动态交换服务组的ID只能为1,绑定M-LAG的ID可以是1~2048
主备设备之间要确保M-LAG的ID是一致的
M-LAG双归设备之间的接口状态、表项等信息的同步需要依赖DFS Group协议进行同步
DFS 主/备设备
部署了M-LAG 并且状态为主/备的设备(也称为M-LAG主/备设备)
通过DFS Group协议协商
此处的主备交换机都会转发数据
正常情况下,主/备设备转发行为没有区别,其主备接口都可以进行负载分担转发
仅在故障场景下,主备设备的行为会有差别
双主检测链路(心跳链路-Keepalive链路)
是一条三层互通链路,用于在M-LAG主备设备之间发送双主检测报文
正常情况下双主检测链路不会参与M-LAG的任何转发行为
只有在故障发生的情况下用于检查是否出现双主的情况
链路配置的两种方式
可以单独配置配置一条三层链路
也可以通过现有IP网络互通,互通的链路就作为双主检测链路
HB DFS主/备设备
通过心跳链路报文协商的状态为主/备的设备(在心跳口上发送DFS报文进行主备协商)
正常情况下,对M-LAG的转发行为不会产生影响,仅用于二次故障场景
Peer-link链路
Peer-link链路是部署MC-LAG的两台设备之间必须存在的一条直连二层链路
此链路必须做链路聚合,此链路用于协商报文以及传输部分流量
Peer-link接口
peer-link链路两端直连的接口均为peer-link接口(Peer-Link接口默认放行所有Vlan)
接口配置为peer-link接口后,该接口上不能再配置其它业务。
Peer-Link接口ID只能为1
M-LAG成员口:
DFS主/备设备上连接用户侧的Eth-Trunk接口
M-LAG成员接口也分主备(接口的主备主要在组播场景下的转发行为有区别)
用户侧Switch
可以是交换机,也可以是主机
使用ETH-trunk(标准的LACP协议)接入双活系统,组成双归接入
M-LAG主/备设备同时转发用户侧流量
双活网关
在DFS主备设备上配置网关,作为用户侧的网关
主备设备上的网关配置相同的IP地址和MAC地址,实现双活网关
此双活网关也可以通过VRRP来实现
VRRP用来选举主备,此时需要双网关,为什么还要做VRRP
因为Peer-link默认拒绝放行VRRP的报文
并且对于设备来说,M-LAG的成员接口是一个逻辑接口,从本接口收到的VRRP报文不会再发送出去,即成员口不会将收到的VRRP报文在转发出去
此时主备都互相收不到对方的VRRP报文,不会进行VRRP主备协商
当将DFS主备交换机的VRRP的虚拟地址配置为一样时,由于主备之间不会选举主从
即两个都是主,也可以达到双活网关的效果
最早是通过VRRP来做双活的,但是现在更推荐配置相同IP、MAC的方式来实现双活网关的效果
M-LAG建立过程
M-LAG故障场景流量转发
M-LAG作为一种跨设备链路聚合的技术,把链路可靠性从单板级提高到了设备级。如果出现故障(不管是链路故障、设备故障还是peer-link故障),M-LAG都能够保证正常的业务不受影响
上行链路故障
若主/备上行链路故障,不会影响双主检测(双主检测还是1s一次)
主备设备能够正常转发数据
只不过下游通过主/备设备的流量均经过Peer-Link链路进行转发
下行链路故障
M-LAG主备状态不会发生变化,不会引发双主检测,但是成员端口状态可能会发生变化
M-LAG主设备故障
如果是M-LAG主设备故障
M-LAG主设备侧Eth-Trunk链路状态变为Down,M-LAG的主备状态会发生变化
M-LAG备设备将升级为主,其设备侧Eth-Trunk链路状态仍为Up,流量转发状态不变,继续转发流量,双归场景变为单归场景
Peer-link故障
peer-link故障会引发双主现象
双归设备一旦感知peer-link口down,即立刻发起一次双主检测过程(100ms发3次DAD)
Keepalive故障
设备正常运行,不会引发双主现象,设备正常运转。
M-LAG二次故障(Peer-Link故障+M-LAG设备故障)
当Peer-link链路故障后,如果M-LAG备设备再次发生故障,此时不会对流量转发行为产生影响,仍由DFS状态为主的设备进行流量转发。