首页 > IT基础架构 > 网络通信/物联网 > 数据中心场景中的M-LAG组网


|
概念 |
说明 |
|---|---|
|
DFS Group |
动态交换服务组DFS Group(Dynamic Fabric Service Group),主要用于部署M-LAG设备之间的配对,M-LAG双归设备之间的接口状态,表项等信息同步需要依赖DFS Group协议进行同步。 |
|
DFS主设备 |
部署M-LAG且状态为主的设备,通常也称为M-LAG主设备。 |
|
DFS备设备 |
部署M-LAG且状态为备的设备,通常也称为M-LAG备设备。
说明:
DFS Group的角色区分为主和备,正常情况下,主设备和备设备同时进行业务流量的转发,转发行为没有区别,仅在故障场景下,主备设备的行为会有差别。 |
|
双主检测链路 |
双主检测链路,又称为心跳链路,是一条三层互通链路,用于M-LAG主备设备间发送双主检测报文。
说明:
正常情况下,双主检测链路不会参与M-LAG的任何转发行为, 只在故障场景下,用于检查是否出现双主的情况。双主检测链路可以通过外部网络承载(比如,如果M-LAG上行接入IP网络,那么两台双归设备通过IP网络可以互通,那么互通的链路就可以作为双主检测链路)。也可以单独配置一条三层可达的链路来作为双主检测链路(比如通过管理口)。 |
|
peer-link接口 |
peer-link链路两端直连的接口均为peer-link接口。 |
|
peer-link链路 |
peer-link链路是一条直连链路 且必须做链路聚合, 用于交换协商报文及传输部分流量。接口配置为peer-link接口后,该接口上不能再配置其它业务。 为了增加peer-link链路的可靠性,推荐采用多条链路做链路聚合。 |
|
HB DFS主设备 |
通过心跳链路来协商的状态为主的设备。
说明:
通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响,仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。 |
|
HB DFS备设备 |
通过心跳链路来协商的状态为备的设备。
说明:
通过心跳链路报文来协商的设备HB DFS主备状态在正常情况下,对M-LAG的转发行为不会产生影响,仅用于二次故障恢复场景下,在原DFS主设备或备设备故障恢复且peer-link链路仍然故障时,触发HB DFS状态为备的设备上相应端口Error-Down,避免M-LAG设备在双主情况下出现的流量异常。 |
|
M-LAG成员接口 |
M-LAG主备设备上连接用户侧主机(或交换设备)的Eth-Trunk接口。 为了增加可靠性,推荐链路聚合配置为LACP模式。 M-LAG成员接口角色也区分主和备,与对端同步成员口信息时,状态由Down先变为Up的M-LAG成员接口成为主M-LAG成员口,对端对应的M-LAG成员口为备。
说明:
仅在M-LAG接入组播场景下,M-LAG成员接口的主备角色存在转发行为差异。 |

DFS Group配对
当M-LAG两台设备完成配置后,设备首先通过peer-link链路发送DFS Group的Hello报文。当设备收到对端的Hello报文后,会 判断报文中携带的DFS Group编号是否和本端相同,如果两台设备的DFS Group编号相同,则两台设备DFS Group配对成功。
DFS Group协商主备
配对成功后,两台设备会向对端发送DFS Group的设备信息报文,设备根据报文中携带的 DFS Group优先级以及系统MAC地址确定出DFS Group的主备状态。
优先级高的或者MAC地址小的作为主。
M-LAG成员接口协商主备
在DFS Group协商出主备状态后,M-LAG的两台设备会通过peer-link链路发送M-LAG设备信息报文,报文中携带了M-LAG成员接口的配置信息。在成员口信息同步完成后, 确定M-LAG成员接口的主备状态。
与对端同步成员口信息时,状态由Down先变为Up的M-LAG成员接口成为主M-LAG成员口,对端对应的M-LAG成员口为备,且主备状态默认不回切,即:当M-LAG成员接口状态为主的设备故障恢复后,先前由备状态升级为主状态的接口仍保持主状态,恢复故障的M-LAG成员接口状态为备,此处与DFS Group协商主备状态不一致。 仅在M-LAG接入组播场景下,M-LAG成员接口的主备角色存在转发行为差异。
双主检测
协商出M-LAG主备后,两台设备之间会通过双主检测链路按 照1s的周期发送M-LAG双主检测报文,一旦设备感知peer-link故障,会按照 100ms的周期发送三个双主检测链路报文,加速检测。当两台设备均能够收到对端发送的报文时,双活系统即开始正常的工作。
双主检测链路通过业务网络互通,DFS Group绑定的IP地址要保证可以三层互通。如果peer-link接口之间建立路由邻居关系,则业务网络双主检测报文会直接通过最优路由经peer-link链路传输。一旦peer-link故障,路由收敛期间,双主检测报文通过次优路径传输到对端,双主检测时间会慢0.5秒或者1秒的时间。
6、 M-LAG同步信息
正常工作后,两台设备之间会通过peer-link链路发送M-LAG同步报文实时同步对端的信息,M-LAG同步报文中包括

从接入设备或网络侧到达M-LAG配对设备的单播流量,会优先从本地转发出去,peer-link链路 一般情况下不用来转发数据流量。当流量通过peer-link链路广播到对端M-LAG设备,在peer-link链路与M-LAG成员口之间设置 单方向的流量隔离,即从peer-link口进来的流量不会再从M-LAG口转发出去,所以不会形成环路,这就是M-LAG单向隔离机制。
单向隔离机制实现原理 M-LAG防环机制中的单向隔离仅对广播流量等泛洪流量生效。
M-LAG主设备和备设备均作为STP网络中的根桥且配置相同的桥ID,将两台设备模拟成同一个根桥,
stp root primary \\ 指定配置为生成树的根桥设备
stp bridge-address mac-address ,配置设备参与生成树计算的桥MAC。
dfs-group XXX \\ 创建DFS Group并进入DFS-Group视图
source ip ip-addressXXXX peer peer-ip-addressXXX \\指定对端心跳IP, 双主检测链路,又称为心跳链路,是一条三层互通链路,用于M-LAG主备设备间发送双主检测报文。
priority priority ,配置DFS Group的优先级
interface eth-trunk
trunk-id
\\进入Eth-Trunk接口视图。
trunkport interface-type { interface-number1 [ to interface-number2 ] } &<1- n >,增加成员接口
mode lacp-static \\ 配置Eth-Trunk的工作模式为静态LACP模式
\\ 去使能接口的STP功能
peer-link peer-link-id \\ 配置接口为peer-link接口

令 interface eth-trunk trunk-i \\ 进入Eth-Trunk接口视图
trunkport interface-type { interface-number1 [ to interface-number2 ] } &<1- n \\ 增加成员接口
dfs-group dfs-group-id m-lag m-lag-id \ \配 置为M-LAG成员接口
V-STP(Virtual Spanning Tree Protocol)是二层拓扑管理特性, 其核心思想是将两台设备的STP协议虚拟成一台设备的STP协议,对外呈现为一台设备进行STP协议计算。
STP可以感知M-LAG主备协商状态,M-LAG主备设备配置了V-STP使能之后 ,在M-LAG主备协商成功后,两台设备被虚拟化成一台设备进行端口角色计算和快速收敛计算。STP需要同步M-LAG主备的桥MAC信息和实例优先级信息。M-LAG主备协商成功后, M-LAG备设备使用M-LAG主设备同步过来的桥MAC信息和实例优先级信息进行STP计算和收发报文,保证虚拟化成一台设备后的STP计算参数。
当前,V-STP只能用于M-LAG组网,可以解决多级M-LAG互联场景和组成M-LAG的设备作为非根桥场景的需求。
配置V-STP功能时,需要保证组成M-LAG的两台设备上STP/RSTP定时器配置一致,否则可能导致网络拓扑震荡。
V-STP场景中,不支持MSTP模式, 但支持STP多进程(MSTP进程默认是MSTP模式,目前V-STP场景仅支持STP及RSTP模式,需要将MSTP进程配置为STP或RSTP模式,作为STP进程)。
执行命令 stp v-stp enable,使能STP进入跨设备组合工作模式。
执行命令 dfs-group dfs-group-id
source ip ip-address [ vpn-instance vpn-instance-name ] [ peer peer-ip-address [ udp-port port-number ] ]
执行命令 peer-link peer-link-i

M-LAG接入普通以太网场景,由于M-LAG主设备的上行链路故障, 通过M-LAG主设备的流量均经过peer-link链路进行转发。
当故障的上行链路恰好为双主检测链路,此时对于M-LAG正常工作没有影响。 一旦peer-link也发生故障,M-LAG出现双主冲突,双主检测又无法进行,则会出现丢包现象。

DFS Group主备状态不会变化,但如果故障M-LAG成员口状态为主,则备M-LAG成员口状态由备升主,流量切换到该链路上进行转发。发生故障的M-LAG成员口所在的链路状态变为Down, 双归场景变为单归场景。 故障M-LAG成员口的MAC地址指向peer-link接口。在故障M-LAG成员口恢复后,M-LAG成员口 状态不再回切,由备升主的M-LAG成员口状态仍为主,原主M-LAG成员口在故障恢复后状态为备。
对于组播源在网络侧,组播成员在接入侧的组播流量,当M-LAG主设备的M-LAG成员口故障时,通过M-LAG同步报文通知对端设备进行组播表项刷新,M-LAG主备设备不再按照组播地址奇偶进行负载分担,而是所有组播流量都由端口状态Up的M-LAG备设备进行转发,反之亦然。
M-LAG主设备故障,M-LAG备设备将升级为主,其设备侧Eth-Trunk链路状态仍为Up,流量转发状态不变,继续转发流量。M-LAG主设备侧Eth-Trunk链路状态变为Down,双归场景变为单归场景。
如果是M-LAG备设备发生故障,M-LAG的主备状态不会发生变化,M-LAG 备设备侧Eth-Trunk链路状态变为Down。M-LAG主设备侧Eth-Trunk链路状态仍为Up,流量转发状态不变,继续转发流量,双归场景变为单归场景。

缺省情况下,M-LAG应用在普通以太网络、VXLAN网络或IP网络的双归接入, peer-link故障但双主检测心跳状态正常时,会触发M-LAG备设备上 除逻辑端口、管理网口、peer-link接口和堆叠口以外的其他接口处于Error-Down状态。M-LAG应用在TRILL网络的双归接入,peer-link故障但双主检测心跳状态正常时,会触发M-LAG备设备上的M-LAG接口处于Error-Down状态。
peer-link故障恢复时,处于Error Down状态的 M-LAG接口默认将在240s后自动恢复为Up状态,处于Error Down状态的其它接口将立即自动恢复为Up状态。
通过命令可以配置M-LAG场景下peer-link故障但双主检测心跳状态正常时,触发Error-Down的端口包括逻辑端口。如当M-LAG应用在VXLAN网络或IP网络的双归接入,peer-link故障但双主检测状态正常时,会触发M-LAG备设备上VLANIF接口、VBDIF接口、LoopBack接口以及M-LAG成员口处于Error-Down状态。

当peer-link故障但双主检测心跳状态正常会触发DFS备设备上某些端口处于Error-Down状态,此时DFS状态为主的设备继续工作。在该场景的基础上,若DFS状态为主的设备由于断电、 主控板损坏、整机故障重启等其他故障导致主设备不能工作时,由 中3所示,此时M-LAG主备设备皆不能正常转发流量。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31535697/viewspace-2770568/ ,如需转载,请注明出处,否则将追究法律责任。