Smart-Link、Monitor-Link
原文链接
建议食用原文
-
定义
Smart-link:又叫备份链路。一个Smart-link由两个接口组成,其中一个接口作为另一个的备份。Smart Link常用于双上行组网,提供可靠高效的备份和快速的切换机制。
Monitor Link是一种接口联动方案,它通过监控设备的上行接口,根据其Up/Down状态的变化来触发下行接口Up/Down状态的变化,从而触发下游设备上的拓扑协议进行链路的切换。
-
Smart-Link基本原理
以图一描述的组网为例,按照链路正常->链路故障->链路恢复的过程,介绍Smart Link运行的基本原理。
图1 Smart Link示意图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Za8Aqbof-1670225618129)(image/image_gmzbfdxhgS.png)]
链路正常工作原理
SwitchD上的Smart Link组包含了Interface1和Interface2两个接口,其中Interface1为主接口,Interface2为从接口。双上行链路都正常的情况下,主接口处于转发状态,所在的链路是主用链路,从接口处于待命状态,所在链路是备用链路。如图二所示,数据沿着主链路进行传输,网络中不存在环路,避免产生广播风暴。
图2 链路正常工作时流量示意图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-93YVmDUn-1670225618130)(image/image_L39P8sBrh6.png)]
链路故障处理原理
如图3所示,当SwitchD的主链路发生故障时,主接口Interface1切换到待命状态,从接口Interface2切换到转发状态。此时,网络中相关设备上的MAC地址转发表项和ARP表项不再适用,需要提供一种MAC及ARP更新的机制。目前更新机制有以下两种。
图3 主链路故障时上行流量示意图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cT7fE3BZ-1670225618131)(image/image_m8tna8umgI.png)]
通过Flush报文通知设备更新表项
这种方式适用于上游设备(如图三中的SwitchA、SwitchB和SwitchC)支持Smart Link功能的场景。为了实现快速链路切换,需要在SwitchD上开启Flush报文发送功能,在上游设备所有处于双上行链路上的接口开启接收处理Flush报文的功能。
-
SwitchD进行链路切换后,会从新的主用链路上发送Flush报文,即通过Interface2发送。
-
当上游设备收到Flush报文时,判断该Flush报文的发送控制VLAN是否在收到报文的接口配置的接收控制VLAN列表中。如果不在接收控制VLAN列表中,设备对该Flush报文不做处理,直接转发;如果在接收控制VLAN列表中,设备会处理收到Flush报文,进而执行MAC地址转发表项和ARP表项的刷新操作。
此后,如果SwitchA收到目的设备为SwitchD的数据报文,会根据更新后的MAC地址转发表项或ARP表项进行转发。
自动通过流量更新表项
这种方式适用于与不支持Smart Link功能的设备(包括其他厂商设备)对接的情况,需要有上行流量触发。
如图4所示,如果没有来自SwitchD的上行流量去触发SwitchA的MAC及ARP表项更新,那么当SwitchA收到目的设备为SwitchD的数据报文时,SwitchA仍会通过接口Interface3转发出去,但此时报文已经不能到达SwitchD,会造成流量丢失,直到其MAC或ARP表项自动老化。
图4 主链路出现故障时下行流量示意图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rq0TcsQF-1670225618132)(image/image_VoT9FHSdG3.png)]
如图5所示,由于链路故障后,Interface1学习到的MAC及ARP表项会被删除,如果SwitchD有上行流量要发送,需要重新广播ARP报文后,流量才能被发送出去。当上行流量通过接口Interface4到达设备SwitchA后,SwitchA会更新自己的MAC及ARP表项,那么当SwitchA再收到目的设备为SwitchD的数据报文时,SwitchA会通过接口Interface4转发出去,报文就可以经由SwitchC到达SwitchD。
图5 主链路出现故障时下行流量示意图
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Df4B4IWv-1670225618132)(image/image_OQuMcC7ofR.png)]
通过Flush报文通知设备更新的机制无须等到表项老化后再进行更新,可以极大程度地减少表项更新所需时间。通常,链路的切换过程可在毫秒级的时间内完成,最大限度地减少流量的丢失。
链路恢复处理原理
当原主用链路故障恢复时,Interface1将维持在阻塞状态,不进行抢占,从而保持流量稳定。如果希望流量切换到原主用链路,可以通过如下两种机制进行切换。
-
使用Smart Link组回切功能,需要在SwitchD上使能回切功能。当原主用链路故障恢复后,经过回切定时器设定的时间,Smart Link会自动将流量切换到原主用链路上。
-
使用配置命令强制让Smart Link立即将流量切换到原主用链路上。
如图1所示组网示例,当SwitchD的Interface1的链路恢复后,如果配置了Smart Link组回切功能,在回切定时器超时后,Interface2将被阻塞并切换到待命状态,而Interface1将切换到转发状态。而如果使用配置命令强制让Smart Link进行链路切换,在执行命令后,Interface2将被立即阻塞并切换到待命状态,而Interface1会切换到转发状态。
-
-
Smart-Link目的、优点
下游设备连接上游设备,当使用单上行方式时,若出现单点故障,会造成业务中断,若采用双上行方式,将一台设备同时连接到两台上游设备,可降低单点故障对其网络出现影响,提高了可靠性。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UC593Th0-1670225618133)(image/image_4vSv6VOECT.png)]
如图1所示SwitchA采用双上行方式分别连接到SwitchB和SwitchC,这样SwitchA到达SwitchD的链路就可以有两条(SwitchA->SwitchB->SwitchD和SwitchA->SwitchC->SwitchD),但是网络中的环路会产生网络风暴。在SwitchA上配置Smart Link,正常情况下,可实现Interface2所在链路作为Interface1所在链路的备份。若Interface1所在的链路发生故障,Smart Link会自动将数据流量切换到Interface2所在链路,保证业务不中断。
在此类组网中采用Smart Link技术有以下优点:
-
能够实现在双上行组网的两条链路正常情况下,一条链路处于转发状态,而另一条处于阻塞待命状态,从而可避免环路的不利影响。
-
配置和使用更为简洁,便于用户操作。
-
当主用链路发生故障后,流量会在毫秒级的时间内迅速切换到备用链路上,极大限度地保证了数据的正常转发。
在一些二层拓扑协议(如Smart Link)组网中,拓扑协议无法监视到上行接口的状态,从而导致拓扑协议无法进行链路切换。Monitor Link可用于扩展一些二层拓扑协议的应用范围,通过监控上行链路对下行链路进行同步设置,达到上行链路故障迅速传达给下行设备,从而触发下游设备上的拓扑协议进行链路的切换,防止长时间因上行链路故障而出现流量丢失。
-
-
Smart-Link负载分担配置基础案例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3yspPhOP-1670225618133)(image/image_Jw74OwBO1f.png)]
配置思路:
-
在Switch1上进行配置,将需要进行负载分担的VLAN 500映射到实例10。
-
在Switch1上配置Smart Link组,将对应接口加入Smart Link组中。
-
在Switch1上配置负载分担功能,实例10映射的VLAN数据从备份链路进行转发。
在Switch1上配置负载分担功能
[Switch1-smlk-group1] load-balance instance 10 slave
-
在Switch1上使能回切功能,使得故障恢复后,流量切换到相对稳定的原主链路上。
-
在Switch1上使能发送Flush报文功能。
-
在Switch2、Switch3和Switch4三台设备对应接口上使能Flush报文接收功能。
-
在Switch1上使能Smart Link组功能。
-
配置命令
SW1: # sysname SW1 # vlan batch 10 100 500 # stp region-configuration instance 10 vlan 500 active region-configuration # interface GigabitEthernet0/0/1 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable # interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable # interface GigabitEthernet0/0/4 port link-type access port default vlan 500 # smart-link group 1 load-balance instance 10 slave restore enable smart-link enable port GigabitEthernet0/0/1 master port GigabitEthernet0/0/2 slave timer wtr 30 flush send control-vlan 10 password simple huawei123 # return SW2: # sysname SW2 # vlan batch 10 100 500 # interface GigabitEthernet0/0/1 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable smart-link flush receive control-vlan 10 password simple huawei123 # interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable smart-link flush receive control-vlan 10 password simple huawei123 # return SW3: # sysname SW3 # vlan batch 10 100 500 # interface GigabitEthernet0/0/1 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable smart-link flush receive control-vlan 10 password simple huawei123 # interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable smart-link flush receive control-vlan 10 password simple huawei123 # return SW4 # sysname SW4 # vlan batch 10 100 500 # interface GigabitEthernet0/0/1 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable smart-link flush receive control-vlan 10 password simple huawei123 # interface GigabitEthernet0/0/2 port link-type trunk port trunk allow-pass vlan 10 100 500 stp disable smart-link flush receive control-vlan 10 password simple huawei123 # interface GigabitEthernet0/0/3 port link-type trunk port trunk allow-pass vlan 10 100 500 # return SW5 # sysname SW5 # vlan batch 10 100 500 # interface Vlanif1 ip address 192.168.1.254 255.255.255.0 # interface Vlanif500 ip address 192.168.5.254 255.255.255.0 # interface MEth0/0/1 # interface GigabitEthernet0/0/1 port link-type trunk port trunk allow-pass vlan 10 100 500 #
-
-
Monitor Link基本概念
Monitor Link基本概念
Monitor Link通过监控上行接口所在的链路对下行接口进行同步设置。相互配合工作的上行接口和下行接口组合成一个Monitor Link组。
图1 Monitor Link组网图示例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wxR67Pqh-1670225618134)(image/image_VmXxY2Kgy2.png)]
Monitor Link组
Monitor Link组也叫监控链路组,由上行接口和下行接口共同组成。组的成员可以是单接口、静态聚合组、手工聚合组或Smart Link组,其中Smart Link组只能作为上行接口。下行接口的状态随上行接口的变化而变化。如图1所示,Interface1和Interface2组成了一个Monitor Link组;Interface3和Interface4组成了一个Monitor Link组。
图 Monitor Link组网图示例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k5MzijBU-1670225618135)(image/image_cVC7RgGAL7.png)]
上行接口
上行接口又称为Uplink接口,是Monitor Link组中受监控者,上行接口故障则表示该Monitor Link组故障,该组的下行接口将都会被强制设为Down状态。如图1所示,Interface1和Interface3为上行接口。上行链路也可以是Smart Link组,当上行链路是Smart Link组时,只有当Smart Link组的两个接口都处于Inactive状态(包括Down)时,才能认为该上行链路故障。如图2所示,Smart Link组作为Monitor Link的上行接口。
-
Monitor Link基本原理
Monitor Link基本原理
图1 Monitor Link组网图示例
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uWFM1Asm-1670225618136)(image/image_inya7nWhLx.png)]
配置Monitor Link组后,上行接口将被实时监控,一旦上行接口出现故障,包括链路故障、OAM的单通故障、OAM的连接无法建立等,其所在组的所有Up的下行接口都会被强制设为ERROR-DOWN状态。当上行链路恢复正常时,恢复下行接口。
如图1所示,如果Interface1所在的上行链路发生故障,Monitor Link会将Interface2强制设为ERROR-DOWN状态。从而SwitchC可以感知经由SwitchB到达SwitchA的这条链路发生故障。当Interface1所在的上行链路恢复正常后,Monitor Link会取消对Interface2强制设定的ERROR-DOWN状态,开启Interface2。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-krTZW62d-1670225618136)(image/image_cVC7RgGAL7.png)]
当上行接口是Smart Link组时,只有当Smart Link组的两个接口都处于Inactive状态(包括Down)时,才能认为该上行接口故障。当下行接口是聚合组时,上行故障将会强制将聚合组中的所有接口设为ERROR-DOWN状态,同样,恢复时也是对聚合组的所有接口进行操作。
-
Smart-Link、Monitor Link综合配置
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sLuNgzMl-1670225618136)(image/image_qZy3SF2c4B.png)]
在Smart-link基础上配置
SWB: # interface GigabitEthernet0/0/3 stp disable # smart-link group 1 port GigabitEthernet0/0/2 master port GigabitEthernet0/0/3 slave # monitor-link group 1 smart-link group 1 uplink port GigabitEthernet0/0/1 downlink 1 # return SWC: # monitor-link group 1 port GigabitEthernet0/0/2 uplink port GigabitEthernet0/0/1 downlink 1 # return
[SwitchB]dis smart-link group 1 Smart Link group 1 information : Smart Link group was disabled There is no Load-Balance There is no protected-vlan reference-instance DeviceID: 4c1f-ccfb-254a Member Role State Flush Count Last-Flush-Time ---------------------------------------------------------------------- GigabitEthernet0/0/2 Master Unknown 0 0000/00/00 00:00:00 UTC+00 :00 GigabitEthernet0/0/3 Slave Unknown 0 0000/00/00 00:00:00 UTC+00 :00 [SwitchB]dis monitor-link group 1 Monitor Link group 1 information : Recover-timer is 3 sec. Member Role State Last-up-time Last-down-tim e Smart-link1 UpLk UP 0000/00/00 00:00:00 UTC+00:00 0000/0 0/00 00:00:00 UTC+00:00 GigabitEthernet0/0/1 DwLk[1] UP 2022/11/23 15:48:29 UTC-08:00 2022/1 1/23 15:45:39 UTC-08:00 [SwitchB]