M-LAG
一、M-LAG概述
1、M-LAG定义:M-LAG(Multichassis Link Aggregation Group)是跨设备链路聚合组。可以将两台设备进行跨设备链路聚合,从而把链路的可靠性从单板机提高到了设备级。
2、优势:
(1)、M-LAG系统的两台设备在逻辑上被虚拟成一台设备,它本身提供了一种没有环路的二层拓扑,逻辑组网更清晰,链路利用更充分。
(2)、M-LAG两台设备可以独立升级,实现效率高,业务秒级中断的目标。
因此,针对对组网可靠性要求高,对升级过程业务中断时间要求高的场景推荐使用M-LAG。
3、术语:
(1)、LAG:Link Aggregation Group 链路端口组
(2)、M-LAG:Multichassis Link Aggregation Group 跨设备链路聚合组
(3)、DFS-Group:动态交换服务组DFS Group(Dynamic Fabric Service Group),进行M-LAG设备配对,协商出M-LAG主备设备和M-LAG成员口的主备状态,同时进行表项同步。
①、DFS-Group id:只能为1
②、DFS主master:通过peer-link交互信息,选择主设备
③、DFS备standby:通过peer-link交互信息,选择备设备
正常转发:主备管控双活,转发双活
故障发生(分裂):peer-link故障,主正常转发,备的业务接口error-down
故障恢复:主还是主,备还是备,主备抢占吗,保证主转发
④、peer-link:对等体链路,必须是LAG(业内一般以Eth-trunk0作为M-LAG)2层,默认允许所有vlan
用途:
a、管控:交换dfs-group信息,同步表项(arp表项,mac表项)
b、转发:当上行流量down,跨框流量转发
⑤、DAD链路:双主检测链路(HB:heart beat 心跳),必须是三层链路
三层接口指:
a、MGMT接口(管理口)
b、物理接口
c、Lookback 接口
建议使用lookback接口或管理口
用途:当peer-link链路down了,进行双主检测
(4)、M-LAG的成员接口:主备设备上连接用户侧的主机(或交换设备)的Eth-Trunk接口为M-LAG的成员接口
①、选举m-lag成员的主接口:端口谁先up,谁就是主,不抢占。
②、针对单播流量:没有影响,双活
③、针对三层组播流量:如果是奇数目的组IP,走主。如果是偶数目的组IP,走备。
二、M-LAG基本建立过程
1、M-LAG基本建立过程工作模式
在M-LAG基本建立过程中,根据主备M-LAG成员口产生方式的不同,将M-LAG工作模式分为2种:双活模式和主备模式。
2、双活模式下M-LAG的建立过程
双活模式:在两台独立的设备DeviceA和DeviceB上,建立一个跨设备的Eth-Trunk与用户侧设备DeviceC的普通Eth-Trunk并通过M-LAG机制进行对接,共同组成一个M-LAG系统。
(1)、DFS Group配对
DFS Group是动态交换服务组,主要用于实现DeviceA和DeviceB设备之间的配对。当M-LAG两端设备完成配置后,设备首先通过peer-link链路(必须为聚合链路)发送DFS Group的Hello报文。当设备收到对端的Hello报文后,会判断报文中携带的DFS Group编号是否和本端相同,如果两台设备的DFS Group编号相同,则两台设备DFS Group配对成功。
(2)、DFS Group协商主备
①、 DFS Group配对配对成功后,两台设备会向对端发送DFS Group的设备信息报文,设备根据报文中携带的DFS Group优先级以及系统MAC地址确定出DFS Group的主备状态。
②、DFS Group角色分为:DFS主设备(M-LAG主设备)和DFS备设备(M-LAG备设备)
③、主备设备选举:a.优选优先级大的(默认优先级为100) b.如果优先级相同,优选MAC地址小的
(3)、M-LAG成员接口协商主备
①、 在DFSGroup协商出主备状态后,M-LAG的两台设备会通过peer-link链路发送M-LAG设备信息报文,报文中携带了M-LAG成员口的配置信息。在成员口信息同步完成后,确定M-LAG成员口的主备状态。
②、成员接口的主备选举:a.优选先UP的接口为主成员接口,后UP的接口为备成员接口
③、成员接口的主备不抢占:如果M-LAG成员口状态为主的设备故障,则对端对应的M-LAG成员口从备状态升级为主状态;当M-LAG成员口状态为主的设备故障恢复后,先前由备状态升级为主状态的接口仍保持主状态,恢复故障的M-LAG成员口状态为备。
(4)、双主检测
①、协商出M-LAG主备设备后,两台设备之间会通过双主检测链路(心跳链路,又称为DAD link,是一条三层互通链路。)
②、检测周期:1s发送一次M-LAG双主检测报文。 一旦设备感知peer-link故障,会在双主检测延时时间(缺省值为3s)后,按照200ms的周期发送三个双主检测链路报文进行加速检测,防止误触发双主加速检测,导致一端M-LAG设备端口被Error-Down。
③、注意事项:双主检测链路和peer-link链路不能共用,若双主检测报文通过peer-link链路转发,peer-link链路Down时,双主检测不能进行,无法触发一端M-LAG设备端口Error Down,可能会导致流量转发异常。
(5)、M-LAG同步信息
正常工作后,两台设备之间会通过peer-link链路发送M-LAG同步报文实时同步对端的信息,M-LAG同步报文中包括MAC表项、ARP表项、ND表项等,发送M-LAG成员口的状态,这样任意一台设备故障都不会影响流量的转发,保证正常的业务不会中断。
3、主备模式下M-LAG的建立过程
主备模式:在两台独立的设备DeviceA和DeviceB上,建立一个跨设备的Eth-Trunk与用户侧服务器Server并通过M-LAG机制进行对接,共同组成一个M-LAG系统。
与双活模式类似,主备模式下M-LAG的建立过程也分为如下几个步骤:
(1)、DFS Group配对
(2)、DFS Group协商主备
(3)、M-LAG成员接口选举主备
(4)、双主检测
(5)、M-LAG同步信息
与双活模式的唯一区别:
主备M-LAG成员口的产生方式上与双活模式不同:M-LAG设备根据服务器主网卡发出的协议报文(即选主报文)进行M-LAG成员口的主备选举,与主网卡对接的M-LAG成员口成为主M-LAG成员口,对端对应的M-LAG成员口为备M-LAG成员口(即与备网卡对接的M-LAG成员口成为备M-LAG成员口)。
三、M-LAG防环机制
1、防环机制
M-LAG本身具有防环机制,可以构造出一个无环网络。当流量通过peer-link链路广播到对端M-LAG设备,在peer-link链路与M-LAG成员口之间设置单方向的流量隔离,即从peer-link口进来的流量不会再从M-LAG口转发出去,所以不会形成环路,这就是M-LAG单向隔离机制。
2、单向隔离机制
(1)、单向隔离机制生效前提:
当M-LAG两台设备协商出M-LAG主备后,系统通过M-LAG同步报文判断接入设备是否双活接入:
①、若接入设备双活接入M-LAG系统,则M-LAG两台设备下发对应M-LAG成员口的单向隔离配置,来隔离由peer-link口发往M-LAG成员口的流量。
②、若接入设备单归接入M-LAG系统,则M-LAG系统不会下发对应M-LAG成员口的单向隔离配置。
③、主备模式下,M-LAG系统不会下发对应M-LAG成员口的单向隔离配置。
(2)、单向隔离机制实现原理
在设备双活接入M-LAG场景下,设备通过端口隔离功能实现peer-link接口与M-LAG成员口之间的单向隔离,隔离由peer-link接口发往M-LAG成员口的广播等泛洪流量。
M-LAG两台设备会自动下发对应M-LAG成员口的单向隔离配置,无需用户手工配置,同一端口隔离组内的端口之间无法互通。当M-LAG设备感知到本端的M-LAG成员口状态为Down时,会通过peer-link发送M-LAG同步报文,通知对端设备自动将相应的M-LAG成员口从隔离组中清除。
四、M-LAG缺省配置
参数 | 缺省值 |
---|---|
LACP M-LAG的系统优先级 | 32768 |
LACP M-LAG的系统ID | 设备的以太口MAC地址 |
M-LAG成员接口上报Up状态的延时时间 | 240秒 |
M-LAG成员接口延迟自动恢复时间 | 0秒 |
peer-link接口不允许通过的VLAN | 所有VLAN都允许通过 |
DFS Group的优先级 | 100 |
LACP M-LAG的系统ID延迟切换时间 | 0秒 |