• Smart Link 和 Monitor Link应用


    定义

    Smart Link常用于双上行链路组网,提高接入的可靠性。 Monitor Link通过监视上行接口,使下行接口同步上行接口状态,起到传递故障信息的作用。

    Smart Link,又叫做备份链路。一个Smart Link由两个接口组成,其中一个接口作为另一个的备份。 Smart Link常用于双上行组网,提供可靠高效的备份和快速的切换机制。Monitor Link是一种接口联动方案,它通过监控设备的上行接口,根据其Up/Down状态的变化来触发下行接Up/Down状态的变化,从而触发下游设备上的拓扑协议进行链路的切换。

    目的

    下游设备连接到上游设备,当使用单上行方式时,若出现单点故障,会造成业务中断。若采用双上行方式,将一台下游设备同时连接到两台上游设备,可降低单点故障对网络的影响,提高了可性。

    图1

    图1所示sw1采用双上行方式分别连接到sw2sw3,这样sw1到达sw4的链路就可以有两条(sw1>sw2>sw4sw1>sw3>sw4),但是网络中的环路会产生网络风暴。在sw1上配置SmartLink,正常情况下,可实现Interface2所在链路作为Interface1所在链路的备份。若Interface所在的链路发生故障, Smart Link会自动将数据流量切换到Interface2所在链路,保证业务不断。
    在此类组网中采用Smart Link技术有以下优点:
    1能够实现在双上行组网的两条链路正常情况下,一条链路处于转发状态,而另一条处于阻塞待命状态,从而可避免环路的不利影响。
    2配置和使用更为简洁,便于用户操作。
    3当主用链路发生故障后,流量会在毫秒级的时间内迅速切换到备用链路上,极大限度地保证了数据的正常转发。
    在一些二层拓扑协议(如Smart Link)组网中,拓扑协议无法监视到上行接口的状态,从而导致拓扑协议无法进行链路切换。 Monitor Link可用于扩展一些二层拓扑协议的应用范围,通过监控上行链路对下行链路进行同步设置,达到上行链路故障迅速传达给下行设备,从而触发下游设备上的拓扑协议进行链路的切换,防止长时间因上行链路故障而出现流量丢失。

    Smart link原理

    Smart link

    Smart Link通过两个端口相互配合工作来实现功能。这样的一对端口组成了一个SmartLink组。为了区别一个Smart Link组中的两个端口,我们将其中的一个叫做主端口,另一个叫做从端口。同时我们利用Flush报文、 Smart Link实例和控制VLAN等机制,以更好地实现Smart Link的功能(包负载分担)。

    Smart Link组,一个组内最多可包含两个接口,其中一个为主接口,另一个为从接口。正常情况下,只有一个接口处于转发( Active)状态,另一个接口被阻塞,处于待命Inactive)状态。图1所示,设备sw1上的接口Interface1和接口Interface2组成了一个Smart Link

    Interface1被配置为Smart Link组的主接口, Interface2被配置为Smart Link组的从接口。主接口叫Master接口,从接口又叫Slave接口。Smart Link组中的两个接口都处于Up状态时,主接口将优先进入转发状态,而从接口将保持待命状态。当主接口所在链路发生故障时,从接口将切换为转发状态。

    Flush报文

    Smart Link组发生链路切换时,原有的转发表项将不适用于新的拓扑网络,需要整网进行MAC表项和ARP表项的更新。这时, Smart Link组通过发送Flush报文通知其他设备进行MACARP表项的刷新操作。如图1所示,当链路发生切换时,sw1会发送组播Flush报文通知sw2sw3sw4进行MACARP表项的更新。

    控制VLAN(Control VLAN)

    发送控制VLAN

    发送控制VLANSmart Link组用于广播Flush报文的VLAN。如图1,如果在SwitchD上开启了Flush报文发送功能,当发生链路切换时,设备会在发送控制VLAN内广播发送Flush报文。

    l 接收控制VLA接收控制VLAN是上游设备用于接收并处理Flush报文的VLAN。如1所示,

    如果上游设备SwitchASwitchBSwitchC能够识别Flush报文,并开启了Flush报文接收处理功能,当发生链路切换时,上游设备会处理收到的属于接收控制VLAN的Flush报文,进而刷新MAC表和ARP表。

    负载分担

    Smart Link支持配置多个负载分担VLAN实例。当Smart Link组的主从链路均正常时,Smart link允许两条链路可以转发不同的数据流量。负载分担情况下,两个接口均处于转发状态,从接口转发负载分担实例流量,主接口转发其它实例流量。当其中一条链路故障时,Smart Link组会自动将所有的流量切换到另一条链路上。

    Smart Link 实例

    Smart Link组的备链路通过绑定不同的实例来实现负载分担。Smart Link引用MSTP的实例,每个实例用来绑定若干VLAN,不同的实例绑定不同的VLAN

    Monitor Link 原理

    Monitor Link通过监控上行接口所在的链路对下行接口进行同步设置。相互配合工作的上行接口和下行接口组合成一个Monitor Link组。

    Monitor Link

    Monitor Link组也叫监控链路组,由上行接口和下行接口共同组成。组的成员可以是接口、静态聚合组、手工聚合组或Smart Link组,其中Smart Link组只能作为上行接口。下行接口的状态随上行接口的变化而变化。如图1所示,Interface3Interface4组成了一个Monitor Link组。

    上行接口

    上行接口又称为Uplink接口,是Monitor Link组中受监控者,所有上行接口故障则表示该Monitor Link组故障,该组的下行接口将都会被强制设为Down状态。如1所示,Interface3为上行接口。上行链路也可以是Smart Link组,当上行链路是Smart Link组时,只有当Smart Link组的两个接口都处于inactive状态(包括Down)时,才能认为该上行链路故障。

    下行接口

    下行接口又称为Downlink接口,是Monitor Link组中监控者,下行接口故障不影响上行接口,也不影响其他下行接口。如1所示, Interface4为下行接口。配置Monitor Link组后,上行接口将被实时监控,一旦所有上行接口出现故障,包括链路故障、OAM的单通故障、OAM的连接无法建立等,其所在组的所有Up的下行接口都会被强制设为Down状态。当上行链路恢复正常时,恢复下行接口。

    1所示,如果Interface3所在的上行链路发生故障,Monitor Link会将Interface4强制设为Down状态。从而sw1可以感知经由sw2B到达sw4的这条链路发生故障。当Interface3所在的上行链路恢复正常后,Monitor Link会取消对Interface4强制设定的Down状态,开启Interface4

    说明

    当上行接口是Smart Link组时,只有当Smart Link组的两个接口都处于inactive状态(包括Down)时,才能认为该上行接口故障。

    当下行接口是聚合组时,上行故障将会强制将聚合组中的所有接口设为Down状态,同样,恢复时也是对聚合组的所有接口进行操作。

    附交换机配置:

    sw1:

    #

    vlan batch 10 20

    #

    interface GigabitEthernet0/0/1

     port link-type trunk

     port trunk allow-pass vlan 10

     stp disable

    #

    interface GigabitEthernet0/0/2

     port link-type trunk

     port trunk allow-pass vlan 10

     stp disable

    #

    interface GigabitEthernet0/0/3

     port link-type access

     port default vlan 10

    #

    interface GigabitEthernet0/0/4

     port link-type access

     port default vlan 10

    #

    smart-link group 1

     restore enable

     smart-link enable

     port GigabitEthernet0/0/1 master

     port GigabitEthernet0/0/2 slave

     timer wtr 30

     flush send control-vlan 20 password simple 123

    #

    sw2:

    #

    vlan batch 10 20

    #

    interface GigabitEthernet0/0/1

     port link-type trunk

     port trunk allow-pass vlan 10

     smart-link flush receive control-vlan 20 password simple 123

    #

    interface GigabitEthernet0/0/2

     port link-type trunk

     port trunk allow-pass vlan 10

     smart-link flush receive control-vlan 20 password simple 123

    #

    monitor-link group 1

     port GigabitEthernet0/0/2 uplink

     port GigabitEthernet0/0/1 downlink 1

    #

    Sw3:

    #

    vlan batch 10 20

    #

    interface GigabitEthernet0/0/1

     port link-type trunk

     port trunk allow-pass vlan 10

     smart-link flush receive control-vlan 20 password simple 123

    #

    interface GigabitEthernet0/0/2

     port link-type trunk

     port trunk allow-pass vlan 10

     smart-link flush receive control-vlan 20 password simple 123

    #

    monitor-link group 1

     port GigabitEthernet0/0/2 uplink

     port GigabitEthernet0/0/1 downlink 1

    #

    Sw4:

    #

    vlan batch 10 20

    #

    interface GigabitEthernet0/0/1

     port link-type trunk

     port trunk allow-pass vlan 10

     smart-link flush receive control-vlan 20 password simple 123

    #

    interface GigabitEthernet0/0/2

     port link-type trunk

     port trunk allow-pass vlan 10

     smart-link flush receive control-vlan 20 password simple 123

    #

    interface GigabitEthernet0/0/3

     port link-type access

     port default vlan 1

    #

    扩展部分:

    在图2中,主机侧配置主备模式,当交换机上行链路发生故障时,也会存在主机侧不能感知,流量转发中断;此时可通过在交换机配置Monitor Link组,实现上行链路与下行链路联动,

    实现链路切换。

  • 相关阅读:
    [python 刷题] 853 Car Fleet
    谷歌浏览器 input 阻止自动填充 以及填充的默认样式
    .NET Core 实现后台任务(定时任务)Longbow.Tasks 组件(三)
    智慧农业:各省市粮食产量排名,“鱼米之乡”湖南位居第十
    背包系统设计问题
    数字孪生和数据分析:数字化时代的力量结合
    Thread中的方法测试(run,yield,sleep,start,join等)
    Docker Ubuntu php nginx mysql redis 开发环境部署教程
    Linux的简单介绍
    qt day 5
  • 原文地址:https://blog.csdn.net/weixin_38887743/article/details/134362962