M-lag技术

M-lag的定义

M-lag(Multichassis Link Aggregation Group),即跨设备链路聚合组,是一种实现跨设备链路聚合的机制。其将一台设备与另外两台设备进行跨设备链路聚合,从而把链路可靠性从单板级提升到设备级,组成双活系统。

流量正常转发模型:

(1)服务器侧上行的流量,基于流负载分担到两台M-LAG设备上;
(2)流量转发到M-LAG 的成员设备,不管是上
行还是下行,都是本地优先转发;
(3)广播流量经过peerlink,peer-link 与双归的M-LAG 成员口单向隔离(peer-link进的流量不可以从M-LAG 相应的成员口出)。

流量故障转发模型:

(1)M-LAG 成员口故障后, 支持放开Peer-link与另一侧成员口的隔离,让流量可以绕行;
(2)peer-link故障后,支持联动备设备上所有物理口Down,只保证主设备可以正常转发;
(3)单台设备掉电,正常设备继续转发报文。

M-lag涉及的概念

DFS Group

动态交换服务组,用于部署M-lag设备之间的配对,M-lag双归设备之间的接口状态、表项等信息需要依赖DFS Group协议进行同步。

  • DFS Group角色分为主备,
    正常情况下主设备和备设备同时进行业务流量转发,转发行为无区别。仅在故障场景下,主设备的行为会有差别。

peer link链路

  • 用于交换协商报文及传输部分流量。
  • 用于两设备之间直连,
  • 必须进行链路聚合(就算只有一条)
  • 接口配置为peer-link接口后,该接口上不能在配置其他业务。

双主检测链路

  • 三层互通链路
  • 用于M-lag主备设备间发送双主检测报文
  • 正常情况下,双主检测链路不会参与M-lag的任何转发行为,只在DFS Group配对失败或者peer-link故障情况下,检查是否出现双主情况。
  • 只要通过IP网络能互通,就能作为双主检测链路

M-lag成员接口

M-lag主备设备上连接用户侧主机(或交换设备)的Eth-trunk接口。
推荐链路聚合配置为LACP模式(增加可靠性)
成员接口角色也分主备

M-lag配置

1、配置MAD的VPN实例
#
ip vpn-instance MAD
ipv4-family

int eth-trunk 100
undo portswitch 
ip binding vpn-instance MAD
ip add 1.1.1.1 30

##
ip vpn-instance MAD
ipv4-family

int eth-trunk 100
undo portswitch 
ip binding vpn-instance MAD
ip add 1.1.1.2 30

2、配置STP生成树协议
#
sysname ZWWW_CE16808_B201-N01_4U-1 		设备命名
stp instance 0 root primary		设置根桥
stp v-stp enable		使用v-stp
stp mode rstp		设定模式为rstp快速生成树协议


##
sysname ZWWW_CE16808_B201-N01_4U-1 		设备命名
stp instance 0 root primary		设置根桥
stp v-stp enable		使用v-stp
stp mode rstp		设定模式为rstp快速生成树协议

3、配置DFS group
#
dfs-group 1		创建DFS-group
priority 150	设置优先级
source ip 1.1.1.1 vpn-instance MAD		设置双主检测链路

##
dfs-group 1		
priority 120	
source ip 1.1.1.2 vpn-instance MAD		

4、配置peer-link
#
int eth-trunk 0
mode lacp-static 		配置Eth-Trunk的工作模式为LACP模式。
trunkport 100GE 1/1/0/35	//增加成员接口
trunkport 100ge 1/2/0/35
mode lacp-static		//聚合模式LACP
peer-link 1		配置接口为peer-link接口
port vlan exclude 1		禁止vlan1防止环路

##
int eth-trunk 0
mode lacp-static 		配置Eth-Trunk的工作模式为LACP模式。
trunkport 100GE 2/1/0/35	//增加成员接口
trunkport 100ge 2/2/0/35
mode lacp-static		//聚合模式LACP
peer-link 1		配置接口为peer-link接口
port vlan exclude 1		禁止vlan1防止环路

5、配置M-lag成员接口
#
int eth-trunk 101
dfs-group 1 m-lag 1

int eth-trunk 102
dfs-group 1 m-lag 2

##
int eth-trunk 101
dfs-group 1 m-lag 1

int eth-trunk 102
dfs-group 1 m-lag 2

检测命令

在两台交换机上
<>display dfs-group 1 m-lag
<>display dfs-group 1 m-lag brief

通过以上显示信息可以看到,“Heart beat state”的状态是“OK”,表明心跳状态正常;SwitchA作为Node 1,优先级为150,“State”的状态是“Master”;SwitchB作为Node 2,优先级为120,“State”的状态是“Backup”。同时“Causation”的状态是“-”,Node 1的“Port State”状态为“Up”,Node 2的“Port State”状态为“Up”,且Node 1和Node 2的M-LAG状态均为“active”,表明M-LAG的配置正确。