Smart Link概述

 ​一、Smart Link产生背景

 

当下游设备连接到上游设备时,使用单上行方式容易出现单点故障,造成业务中断。因此通常采用双上行方式,即将一台下游设备同时连接到两台上游设备,以最大限度地避免单点故障,提高网络可靠性。双上行组网虽然能提高网络可靠性,但又引入了环路问题。通常可通过STP(生成树协议),但STP在收敛速度上只能达到秒级,不适用于对收敛时间有很高要求的用户。

Smart Link是一种针对双上行组网的解决方案,实现了高效可靠的链路冗余备份和故障快速切换

说明:1. Smart Link是H3C和华为私有协议;2. 故障切换速度可达厘秒级

Smart Link的主要特点如下:

  • 专用于双上行组网

  • 收敛速度快(达到厘秒级);

  • 配置简单,便于用户操作(其实并不简单Smart Link概述Smart Link概述​)。

Monitor Link是对Smart Link技术的有力补充。Monitor Link用于监控上行链路,以达到让下行链路同步上行链路状态的目的,使Smart Link的备份作用更加完善

 

注意:(1)Smart-link、STP、RRPP同时只能运行一种;(2)配置Smart-link时,需要在相关接口上关闭STP特性。

 

二、Smart Link相关概念

 

1. 运行机制

双上行的两个端口组成一个Smart-link组,配置为主端口和副端口,主端口链路故障,立即切换为副端口转发数据。

 

2. 保护VLAN

说明:可以理解为业务vlan

Smart-link组允许转发的VLAN,以MST实例的形式进行映射。

 

3. 控制VLAN

FLUSH报文转发的VLAN。

 

4. FLUSH报文

说明:不配置flush报文,Smart Link主端口故障链路也会立即切换到从端口,但是由于上行交换机学习的MAC地址仍然对应原接口,此时需要等到mac地址表刷新业务才能恢复故障。通过flush报文可以立即刷新正确的MAC地址记录

 

技术背景

链路发生故障切换时,上行交换机学习的MAC地址仍然对应原接口,需要通过流量来刷新正确的MAC地址记录。

 

解决方案

收到Flush报文的交换机,会在接收报文的端口重新学习MAC地址记录。

 

5. Smart-link角色抢占模式

默认主端口故障恢复后,不会发生角色抢占,即主链路故障恢复后业务仍然走备链路,除非备链路故障再次切换到主链路。可通过配置使主端口自动抢占角色。

 

6. Monitor Link

定义

用于把上行链路的存活状态同步到下行链路,使Smart-link可以感知到跨设备的链路故障

 

原理

上行端口:连接上层设备的端口

下行端口:连接Smart-link的端口

当所有上行端口Down,自动关闭下行端口;任意一个上行端口Up,自动开启下行端口。

 

三、Smart Link配置实例

 

1. 配置拓扑

Smart Link概述Smart Link概述

 

2. 配置需求

 

(1)网络中有 Vlan10,Vlan20,Vlan30,Vlan40 一共 4 个业务 Vlan,数据可以在所有链路上转发

(2)在 SW1 上使用 Smart-link 对上行链路进行备份。要求 Smart-link组1 引用 MST 实例 1 (映射 Vlan10 和 Vlan20)的流量经过 SW2 的链路访问上行设备,而 Smart-link 组 2 引用实例 2(映射 Vlan30 和 Vlan40)的流量经过 SW3 的链路访问上行设备,组 1 和组 2 分别在 Vlan100 和 Vlan200 内发送和接收 Flush 报文

(3)要求当 Smart-link 主链路故障恢复后,端口角色能够自动恢复

(4)要求当 SW2 和 SW3 的上行链路故障后,也能触发 Smart-link 角色切换

(5)按图所示,接入层配置两台PC,验证实验结果

 

3. 配置步骤

(1)配置保护VLAN和控制VLAN,并在相关接口下放行

在所有交换机上创建 Vlan10,Vlan20,Vlan30 和 Vlan40,另外由于后面需要配置控制 VLAN,所以还需要创建 Vlan100 和 Vlan200,配置所有互联接口类型为 Trunk,放行所有 Vlan

[SW1]vlan 10
[SW1-vlan10]vlan 20
[SW1-vlan20]vlan 30
[SW1-vlan30]vlan 40
[SW1-vlan40]vlan 100
[SW1-vlan100]vlan 200
[SW1-vlan200]int g 1/0/1
[SW1-GigabitEthernet1/0/1]port link-type trunk 
[SW1-GigabitEthernet1/0/1]port trunk permit vlan 10 20 30 40 100 200
[SW1-GigabitEthernet1/0/1]int g 1/0/2
[SW1-GigabitEthernet1/0/2]port link-type trunk
[SW1-GigabitEthernet1/0/2]port trunk permit vlan 10 20 30 40 100 200
[SW1-GigabitEthernet1/0/2]quit
[SW1]
Smart Link概述
[SW2]vlan 10
[SW2-vlan10]vlan 20
[SW2-vlan20]vlan 30
[SW2-vlan30]vlan 40
[SW2-vlan40]vlan 100
[SW2-vlan100]vlan 200
[SW2-vlan200]int g 1/0/1
[SW2-GigabitEthernet1/0/1]port link-type trunk
[SW2-GigabitEthernet1/0/1]port trunk permit vlan 10 20 30 40 100 200
[SW2-GigabitEthernet1/0/1]int g 1/0/2
[SW2-GigabitEthernet1/0/2]port link-type trunk
[SW2-GigabitEthernet1/0/2]port trunk permit vlan 10 20 30 40 100 200
[SW2-GigabitEthernet1/0/2]quit
[SW2]
Smart Link概述
[SW3]vlan 10
[SW3-vlan10]vlan 20
[SW3-vlan20]vlan 30
[SW3-vlan30]vlan 40
[SW3-vlan40]vlan 100
[SW3-vlan100]vlan 200
[SW3-vlan200]int g 1/0/1
[SW3-GigabitEthernet1/0/1]port link-type trunk
[SW3-GigabitEthernet1/0/1]port trunk permit vlan 10 20 30 40 100 200
[SW3-GigabitEthernet1/0/1]int g 1/0/2
[SW3-GigabitEthernet1/0/2]port link-type trunk
[SW3-GigabitEthernet1/0/2]port trunk permit vlan 10 20 30 40 100 200
[SW3-GigabitEthernet1/0/2]quit
[SW3]
Smart Link概述
[SW4]vlan 10
[SW4-vlan10]vlan 20
[SW4-vlan20]vlan 30
[SW4-vlan30]vlan 40
[SW4-vlan40]vlan 100
[SW4-vlan100]vlan 200
[SW4-vlan200]int g 1/0/1
[SW4-GigabitEthernet1/0/1]port link-type trunk
[SW4-GigabitEthernet1/0/1]port trunk permit vlan 10 20 30 40 100 200
[SW4-GigabitEthernet1/0/1]int g 1/0/2
[SW4-GigabitEthernet1/0/2]port link-type trunk
[SW4-GigabitEthernet1/0/2]port trunk permit vlan 10 20 30 40 100 200
[SW4-GigabitEthernet1/0/2]quit
[SW4]
Smart Link概述

(2)在 SW1 上使用 Smart-link 对上行链路进行备份。要求 Smart-link组1 引用 MST 实例 1 (映射 Vlan10 和 Vlan20)的流量经过 SW2 的链路访问上行设备,而 Smart-link 组 2 引用实例 2(映射 Vlan30 和 Vlan40)的流量经过 SW3 的链路访问上行设备,组 1 和组 2 分别在 Vlan100 和 Vlan200 内发送和接收 Flush 报文

2.1 在SW1上配置 MST域,创建Instance1映射Vlan10、Vlan20 ,Instance2 映射 Vlan30、Vlan40 

说明:Smart Link只是调用实例,而不是mstp,不需要配置域名和修订级别

[SW1]stp region-configuration 
[SW1-mst-region]instance 1 vlan 10 20
[SW1-mst-region]instance 2 vlan 30 40
[SW1-mst-region]active region-configuration 
[SW1-mst-region]dis this
#
stp region-configuration
 instance 1 vlan 10 20 
 instance 2 vlan 30 40 
 active region-configuration
#
Smart Link概述

2.2 在所有交换机的 G1/0/1 和 G1/0/2 端口上关闭 STP 特性

[SW1]int g 1/0/1
[SW1-GigabitEthernet1/0/1]undo stp enable
[SW1-GigabitEthernet1/0/1]int g 1/0/2
[SW1-GigabitEthernet1/0/2]undo stp enable
[SW1-GigabitEthernet1/0/2]quit
[SW1]
Smart Link概述
[SW2]int g 1/0/1
[SW2-GigabitEthernet1/0/1]undo stp enable
[SW2-GigabitEthernet1/0/1]int g 1/0/2
[SW2-GigabitEthernet1/0/2]undo stp enable
[SW2-GigabitEthernet1/0/2]quit
[SW2]
Smart Link概述
[SW3]int g 1/0/1
[SW3-GigabitEthernet1/0/1]undo stp enable
[SW3-GigabitEthernet1/0/1]int g 1/0/2
[SW3-GigabitEthernet1/0/2]undo stp enable
[SW3-GigabitEthernet1/0/2]quit
[SW3]
Smart Link概述
[SW4]int g 1/0/1
[SW4-GigabitEthernet1/0/1]undo stp enable
[SW4-GigabitEthernet1/0/1]int g 1/0/2
[SW4-GigabitEthernet1/0/2]undo stp enable
[SW4-GigabitEthernet1/0/2]quit
[SW4]
Smart Link概述

2.3 在SW1上创建 Smart-link 组1,引用实例1,配置控制VLAN 为 Vlan100,主端口为 G1/0/1,从端口为 G1/0/2

说明:(1)在Smart-link 组里看不到主从端口,只能在端口下查看;(2)添加主从端口也可以在端口下使用[SW1-GigabitEthernet1/0/1]port smart-link group  1 primary 命令。

[SW1]smart-link group 1
[SW1-smlk-group1]protected-vlan reference-instance 1
[SW1-smlk-group1]flush enable control-vlan 100
[SW1-smlk-group1]port GigabitEthernet 1/0/1 primary 
[SW1-smlk-group1]port GigabitEthernet 1/0/2 secondary 
[SW1-smlk-group1]dis this
#
smart-link group 1
 flush enable control-vlan 100
 protected-vlan reference-instance 1 
#
Smart Link概述

2.4 在SW1 上创建Smart-link组2,引用实例2,配置控制VLAN 为 Vlan200,主端口为 G1/0/2,从端口为 G1/0/1

[SW1]smart-link group 2
[SW1-smlk-group2]protected-vlan reference-instance 2
[SW1-smlk-group2]flush enable control-vlan 200
[SW1-smlk-group2]port GigabitEthernet 1/0/1 secondary 
[SW1-smlk-group2]port GigabitEthernet 1/0/2 primary 
[SW1-smlk-group2]dis this
#
smart-link group 2
 flush enable control-vlan 200
 protected-vlan reference-instance 2 
#
Smart Link概述

2.5 在 SW2,SW3,SW4 的互联端口上配置允许在 Vlan100 和 Vlan200 发送接收 Flush 报文

[SW2]int g 1/0/1
[SW2-GigabitEthernet1/0/1]smart-link flush enable control-vlan 100 200
[SW2-GigabitEthernet1/0/1]int g 1/0/2
[SW2-GigabitEthernet1/0/2]smart-link flush enable control-vlan 100 200
[SW2-GigabitEthernet1/0/2]quit
[SW2]
Smart Link概述
[SW3]int g 1/0/1
[SW3-GigabitEthernet1/0/1]smart-link flush enable control-vlan 100 200
[SW3-GigabitEthernet1/0/1]int g 1/0/2
[SW3-GigabitEthernet1/0/2]smart-link flush enable control-vlan 100 200
[SW3-GigabitEthernet1/0/2]quit
[SW3]
Smart Link概述
[SW4]int g 1/0/1
[SW4-GigabitEthernet1/0/1]smart-link flush enable control-vlan 100 200
[SW4-GigabitEthernet1/0/1]int g 1/0/2
[SW4-GigabitEthernet1/0/2]smart-link flush enable control-vlan 100 200
[SW4-GigabitEthernet1/0/2]quit
[SW4]
Smart Link概述

2.6 把 Vlan1 所在的实例 0 也引用到 Smart-link 组 1 来解决vlan1环路的问题

说明:Smart-link配置完成后,由于只引用了实例1和实例2,并没有引用Vlan1所在的实例0;而SW1的相关接口关闭了STP特性,导致 SW2、SW3和SW4上的STP协议判断没有环路,从而不会阻塞任何端口;而且所有接口都配置为了 Trunk 并默认放行 Vlan1,所以当前网络中 Vlan1 存在逻辑环路

解决vlan1环路的3个办法:

(1)把vlan1映射到instance1或者instance2;

(2)把instance0引用到Smart-link group 1或者Smart-link group 2;

(3)在所有trunk端口上禁止放行vlan1

[SW1]smart-link group 1
[SW1-smlk-group1]protected-vlan reference-instance 0
[SW1-smlk-group1]dis this
#
smart-link group 1
 flush enable control-vlan 100
 protected-vlan reference-instance 0 to 1 
#
Smart Link概述

使用dis smart-link group all 查看Smart Link配置

可以看到,smart-link组1中,SW1的g1/0/1为主端口,g1/0/2为从端口;smart-link组2中,SW1的g1/0/1为从端口,g1/0/2为主端口。配置基本完成,可以shutdownSW1的g1/0/1端口查看主从端口的角色切换情况,同时PC1pingSW4上的网关,查看丢包情况。

[SW1]dis smart-link group all 
Smart link group 1 information:
  Device ID       : ac2c-0fb6-0100
  Preemption mode : None
  Preemption delay: 1(s)
  Control VLAN    : 100
  Protected VLAN  : Reference Instance 0 to 1
​
​
  Member                  Role      State   Flush-count     Last-flush-time
  -----------------------------------------------------------------------------
  GE1/0/1                 PRIMARY   ACTIVE  2               23:56:04 2021/05/30 
  GE1/0/2                 SECONDARY STANDBY 0               NA                  
​
​
Smart link group 2 information:
  Device ID       : ac2c-0fb6-0100
  Preemption mode : None
  Preemption delay: 1(s)
  Control VLAN    : 200
  Protected VLAN  : Reference Instance 2
​
​
  Member                  Role      State   Flush-count     Last-flush-time
  -----------------------------------------------------------------------------
  GE1/0/2                 PRIMARY   STANDBY 0               NA                  
  GE1/0/1                 SECONDARY ACTIVE  2               00:03:33 2021/05/31
Smart Link概述

 

说明:             

实验结果证明真的1个pack没丢,强于MSTP,Smart Link牛!牛!!牛!!!

Smart Link概述Smart Link概述

Smart Link概述Smart Link概述

2.7 配置当 Smart-link 主链路故障恢复后,端口角色能够自动恢复

[SW1-smlk-group1]preemption mode role

[SW1-smlk-group2]preemption mode role
Smart Link概述

 

说明:Smart-link 默认不开启角色抢占,如主链路故障恢复后,仍然保持数据从备份链路传输。需要配置开启抢占模式,才能够使端口角色自动恢复

[SW1]smart-link group 1
[SW1-smlk-group1]preemption mode role 
[SW1-smlk-group1]quit
[SW1]smart-link group 2
[SW1-smlk-group2]preemption mode role 
[SW1-smlk-group2]dis this
#
smart-link group 2
 preemption mode role
 flush enable control-vlan 200
 protected-vlan reference-instance 2 
#
Smart Link概述

效果测试:关闭SW1的G1/0/1口,Smart-link组1会切换G1/0/2口为活跃链路,再次开启G1/0/1口后,活跃链路会重新切换回G1/0/1口

 

2.8 配置Monitor Link,当SW2 和SW3的上行链路故障后,也能触发 Smart-link 角色切换

说明:Smart-link 只监听本机端口状态,当本机主端口故障,才会触发角色切换。所以需要在 SW2 和 SW3 上配置 Monitor-link,当SW2、SW3的上行链路故障时,也能触发Smart-link 

2.8.1 在 SW2 上创建 Monitor-link 组,配置上行端口为 G1/0/1,下行端口为 G1/0/2

[SW2]monitor-link group 1
[SW2-mtlk-group1]port GigabitEthernet 1/0/1 uplink 
[SW2-mtlk-group1]port GigabitEthernet 1/0/2 downlink 
[SW2-mtlk-group1]dis this
#
monitor-link group 1
#
Smart Link概述

2.8.2 在 SW3 上创建 Monitor-link 组,配置上行端口为 G1/0/2,下行端口为 G1/0/1

[SW3]monitor-link group 1
[SW3-mtlk-group1]port  GigabitEthernet 1/0/2 uplink 
[SW3-mtlk-group1]port  GigabitEthernet 1/0/1 downlink 
[SW3-mtlk-group1]dis this
#
monitor-link group 1
#
Smart Link概述

效果测试:在 SW2 关闭 G1/0/2 口或 SW3 上关闭 G1/0/2 口,Monitor-link 会自动关闭 G1/0/1 口来触发 SW1 的 Smart-link 的角色切换。整个配置结束。

 

 

 

附:

 关注我,加微信,获取此次配置工程、更多配置案例,也可以承接远程调试各厂商交换机、路由器、防火墙等私活,欢迎各位老板加微信私聊。

 

Smart Link概述Smart Link概述

上一篇:2021-07-13


下一篇:我欲乘风,浪迹远方,因为我学会STP,Hybrid