定义
Smart Link,又叫做备份链路。一个Smart Link由两个接口组成,其中一个接口作为另一个的备份。Smart Link常用于双上行组网,提供可靠高效的备份和快速的切换机制。
Monitor Link是一种接口联动方案,它通过监控设备的上行接口,根据其Up/Down状态的变化来触发下行接口Up/Down状态的变化,从而触发下游设备上的拓扑协议进行链路的切换。
目的
下游设备连接到上游设备,当使用单上行方式时,若出现单点故障,会造成业务中断。若采用双上行方式,将一台下游设备同时连接到两台上游设备,可降低单点故障对网络的影响,提高了可靠性。
如图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基本概念
Smart Link通过两个端口相互配合工作来实现功能。这样的一对端口组成了一个Smart Link组。为了区别一个Smart Link组中的两个端口,我们将其中的一个叫做主端口,另一个叫做从端口。同时我们利用Flush报文、Smart Link实例和控制VLAN等机制,以更好地实现Smart Link的功能(包括负载分担)。
Smart Link组
Smart Link组,一个组内最多可包含两个接口,其中一个为主接口,另一个为从接口。正常情况下,只有一个接口处于转发(Active)状态,另一个接口被阻塞,处于待命(Inactive)状态。
如图1所示,设备SwitchD上的接口Interface1和接口Interface2组成了一个Smart Link组。
主接口/从接口
如图1所示,Interface1被配置为Smart Link组的主接口,Interface2被配置为Smart Link组的从接口。主接口又叫Master接口,从接口又叫Slave接口。
当Smart Link组中的两个接口都处于Up状态时,主接口将优先进入转发状态,而从接口将保持待命状态。当主接口所在链路发生故障时,从接口将切换为转发状态。
Flush报文
当Smart Link组发生链路切换时,原有的转发表项将不适用于新的拓扑网络,需要整网进行MAC表项和ARP表项的更新。这时,Smart Link组通过发送Flush报文通知其他设备进行MAC和ARP表项的刷新操作。如图1所示,当链路发生切换时,SwitchD会发送组播Flush报文通知SwitchA、SwitchB和SwitchC进行MAC和ARP表项的更新。
控制VLAN(Control VLAN)
-
发送控制VLAN
发送控制VLAN是Smart Link组用于广播Flush报文的VLAN。如图1,如果在SwitchD上开启了Flush报文发送功能,当发生链路切换时,设备会在发送控制VLAN内广播发送Flush报文。
-
接收控制VLAN
接收控制VLAN是上游设备用于接收并处理Flush报文的VLAN。如图1所示,如果上游设备SwitchA、SwitchB和SwitchC能够识别Flush报文,并开启了Flush报文接收处理功能,当发生链路切换时,上游设备会处理收到的属于接收控制VLAN的Flush报文,进而刷新MAC表和ARP表。
负载分担
Smart Link支持配置多个负载分担VLAN实例。当Smart Link组的主从链路均正常时,Smart link允许两条链路可以转发不同的数据流量。负载分担情况下,两个接口均处于转发状态,从接口转发负载分担实例流量,主接口转发其它实例流量。当其中一条链路故障时,Smart Link组会自动将所有的流量切换到另一条链路上。
Smart Link实例
Smart Link组的备链路通过绑定不同的实例来实现负载分担。Smart Link引用MSTP的实例,每个实例用来绑定若干VLAN,不同的实例绑定不同的VLAN
配置Smart Link主备备份示例
Smart Link通过两个端口相互配合工作来实现功能。这样的一对端口组成了一个Smart Link组。为了区别一个Smart Link组中的两个端口,我们将其中的一个叫做主端口,另一个叫做从端口。同时我们利用Flush报文、Smart Link实例和控制VLAN等机制,以更好地实现Smart Link的功能(包括负载分担)。
组网需求
如图1所示,为了保证网络的可靠性,用户侧网络采用双上行方式组网。由于组网上存在多个VLAN的数据流量,为使链路得到充分利用,用户希望两条上行链路均进行数据流量的转发。组网要求业务中断时间控制在毫秒级
配置思路
采用如下的思路配置Smart Link功能:
- 在SwitchA上进行配置,将需要进行负载分担的VLAN 500映射到实例10。
- 在SwitchA上配置Smart Link组,将对应接口加入Smart Link组中。
- 在SwitchA上配置负载分担功能,实例10映射的VLAN数据从备份链路进行转发。
- 在SwitchA上使能回切功能,使得故障恢复后,流量切换到相对稳定的原主链路上。
- 在SwitchA上使能发送Flush报文功能。
- 在SwitchB、SwitchC和SwitchD三台设备对应接口上使能Flush报文接收功能。
- 在SwitchA上使能Smart Link组功能。
操作步骤
配置VLAN信息
在SwitchA上创建VLAN vlan10,20,30并配置接口允许相应VLAN通过。SwitchB、SwitchC和SwitchD的配置与SwitchA相似
[zhongwaznhi]interface GigabitEthernet 0/0/1
[zhongwaznhi-GigabitEthernet0/0/1]port link-type trunk
[zhongwaznhi-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 to 30
[zhongwaznhi-GigabitEthernet0/0/1]quit
[zhongwaznhi]interface GigabitEthernet 0/0/2
[zhongwaznhi-GigabitEthernet0/0/2]port link-type trunk
[zhongwaznhi-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 to 30
[zhongwaznhi-GigabitEthernet0/0/2]quit
在SwitchA上创建Smart Link备份组,并指定端口角色
配置SwitchA
[zhongwanzhi]interface GigabitEthernet 0/0/1
[zhongwanzhi-GigabitEthernet0/0/1]stp disable
[zhongwanzhi-GigabitEthernet0/0/1]quit
[zhongwanzhi]interface GigabitEthernet 0/0/2
[zhongwanzhi-GigabitEthernet0/0/2]stp disable
[zhongwanzhi-GigabitEthernet0/0/2]quit
[zhongwanzhi]smart-link group 1
[zhongwanzhi-smlk-group1]port GigabitEthernet 0/0/1 master
[zhongwanzhi-smlk-group1]port GigabitEthernet 0/0/2 slave
使能回切功能并设置回切时间
配置SwitchA
[zhongwanzhi-smlk-group1]restore enable
[zhongwanzhi-smlk-group1]timer wtr 30
使能发送Flush报文功能
配置SwitchA,并指定发送Flush报文的密码为SHA加密方式。
[zhongwanzhi-smlk-group1]flush send control-vlan 10 password simple huawei-123
使能接收Flush报文功能
配置SwitchB,并指定接收Flush报文的密码为SHA加密方式。
[zhongwanzhi]interface GigabitEthernet 0/0/1
[zhongwanzhi-GigabitEthernet0/0/1]smart-link flush receive control-vlan 10 passw
ord simple huawei-123
[zhongwanzhi-GigabitEthernet0/0/1]stp disable
[zhongwanzhi-GigabitEthernet0/0/1]quit
[zhongwanzhi]interface GigabitEthernet 0/0/2
[zhongwanzhi-GigabitEthernet0/0/2]smart-link flush receive control-vlan 10 passw
ord simple huawei-123
[zhongwanzhi-GigabitEthernet0/0/2]stp disable
[zhongwanzhi-GigabitEthernet0/0/2]quit
另外SwitchC,Switch也要配置指定接收Flush报文的密码为SHA加密方式,并且配置命令一样
在SwitchA使能Smart Link组功能
[zhongwanzhi-smlk-group1]smart-link enable
[zhongwanzhi-smlk-group1]quit
[zhongwanzhi]
-
验证配置结果 # 使用display smart-link group命令查看SwitchA上的Smart Link组信息。如果显示如下信息,则表示配置成功。
-
Smart Link组功能已经使能
-
回切时间为30秒
-
控制VLAN编号为10
-
接口GE0/0/1为主接口且处于Active状态,接口GE0/0/2为从接口且处于Inactive,并且配置了负载分担功能
[zhongwanzhi]display smart-link group 1
Smart Link group 1 information :
Smart Link group was enabled
Wtr-time is: 30 sec.
Load-Balance Instance: 10
There is no protected-vlan reference-instance
DeviceID: 4c1f-cc46-4d92 Control-vlan ID: 10
Member Role State Flush Count Last-Flush-TimeGigabitEthernet0/0/1 Master Active 1 2023/12/07 16:20:34 UTC-08
:00
GigabitEthernet0/0/2 Slave Inactive 0 0000/00/00 00:00:00 UTC+00
:00
-
使用shutdown命令关闭接口GE0/0/1,可以看到接口GE0/0/1已经处于Inactive状态,接口GE0/0/2为Active状态
[zhongwanzhi-GigabitEthernet0/0/1]display smart-link group 1
Smart Link group 1 information :
Smart Link group was enabled
Wtr-time is: 30 sec.
Load-Balance Instance: 10
There is no protected-vlan reference-instance
DeviceID: 4c1f-cc46-4d92 Control-vlan ID: 10
Member Role State Flush Count Last-Flush-Time
----------------------------------------------------------------------
GigabitEthernet0/0/1 Master Inactive 1 2023/12/07 16:20:34 UTC-08
:00
GigabitEthernet0/0/2 Slave Active 0 0000/00/00 00:00:00 UTC+00
:00