H3CSE 高性能园区网:Smart Link 与 Monitor Link 技术详解
- [Smart Link 与 Monitor Link 技术详解](#Smart Link 与 Monitor Link 技术详解)
-
- [一、Smart Link 简介](#一、Smart Link 简介)
-
- [1.1 Smart Link 产生背景与技术定位](#1.1 Smart Link 产生背景与技术定位)
-
- [1.1.1 协议属性](#1.1.1 协议属性)
- [1.1.2 收敛速度对比](#1.1.2 收敛速度对比)
- [1.1.3 快速收敛的核心原因](#1.1.3 快速收敛的核心原因)
- [1.2 基本工作原理](#1.2 基本工作原理)
- [1.3 拓扑与端口/VLAN配置详解](#1.3 拓扑与端口/VLAN配置详解)
-
- [1.3.1 端口组成说明](#1.3.1 端口组成说明)
- [1.3.2 VLAN配置说明](#1.3.2 VLAN配置说明)
- [1.3.3 拓扑工作流程](#1.3.3 拓扑工作流程)
- 二、保护VLAN、控制VLAN与FLUSH报文机制
-
- [2.1 保护VLAN](#2.1 保护VLAN)
-
- [2.1.1 定义与核心作用](#2.1.1 定义与核心作用)
- [2.1.2 双端口状态下的转发规则](#2.1.2 双端口状态下的转发规则)
- [2.1.3 配置方式:MST实例映射机制](#2.1.3 配置方式:MST实例映射机制)
- [2.2 控制VLAN](#2.2 控制VLAN)
-
- [2.2.1 定义与核心作用](#2.2.1 定义与核心作用)
- [2.2.2 关键特性与工作要求](#2.2.2 关键特性与工作要求)
- [2.3 FLUSH报文机制](#2.3 FLUSH报文机制)
-
- [2.3.1 技术背景:链路切换后的MAC地址表问题](#2.3.1 技术背景:链路切换后的MAC地址表问题)
- [2.3.2 FLUSH报文的工作流程(结合拓扑)](#2.3.2 FLUSH报文的工作流程(结合拓扑))
- [2.3.3 FLUSH报文格式解析](#2.3.3 FLUSH报文格式解析)
- [2.3.4 FLUSH报文的核心价值与优势](#2.3.4 FLUSH报文的核心价值与优势)
- [三、Smart Link 角色抢占模式与配置注意事项](#三、Smart Link 角色抢占模式与配置注意事项)
-
- [3.1 角色抢占模式](#3.1 角色抢占模式)
-
- [3.1.1 默认行为](#3.1.1 默认行为)
- [3.1.2 抢占模式配置](#3.1.2 抢占模式配置)
- [3.2 配置注意事项](#3.2 配置注意事项)
-
- [3.2.1 协议互斥性](#3.2.1 协议互斥性)
- [3.2.2 STP 关闭要求](#3.2.2 STP 关闭要求)
- [四、Monitor Link 技术详解](#四、Monitor Link 技术详解)
-
- [4.1 技术背景:Smart Link 场景的隐藏痛点](#4.1 技术背景:Smart Link 场景的隐藏痛点)
- [4.2 Monitor Link 核心概念与工作原理](#4.2 Monitor Link 核心概念与工作原理)
-
- [4.2.1 定义与核心作用](#4.2.1 定义与核心作用)
- [4.2.2 组成结构](#4.2.2 组成结构)
- [4.2.3 工作机制(结合拓扑)](#4.2.3 工作机制(结合拓扑))
- [4.3 Monitor Link 与 Smart Link 的协同工作流程](#4.3 Monitor Link 与 Smart Link 的协同工作流程)
- [4.4 关键特性与应用场景](#4.4 关键特性与应用场景)
-
- [4.4.1 核心特性](#4.4.1 核心特性)
- [4.4.2 典型应用场景](#4.4.2 典型应用场景)
- [五、Smart Link 配置核心思路](#五、Smart Link 配置核心思路)
-
- [5.1 第一步:全网基础准备(所有交换机)](#5.1 第一步:全网基础准备(所有交换机))
- [5.2 第二步:MST实例映射(仅Smart Link交换机)](#5.2 第二步:MST实例映射(仅Smart Link交换机))
- [5.3 第三步:关闭STP协议(仅Smart Link交换机)](#5.3 第三步:关闭STP协议(仅Smart Link交换机))
- [5.4 第四步:创建并配置Smart Link组(仅Smart Link交换机)](#5.4 第四步:创建并配置Smart Link组(仅Smart Link交换机))
- [5.5 第五步:上游交换机配置(仅汇聚/核心交换机)](#5.5 第五步:上游交换机配置(仅汇聚/核心交换机))
- [5.6 第六步:处理VLAN 1的特殊问题](#5.6 第六步:处理VLAN 1的特殊问题)
- [六、Smart Link 关键配置命令](#六、Smart Link 关键配置命令)
-
- [6.1 基础VLAN与链路配置](#6.1 基础VLAN与链路配置)
- [6.2 端口关闭STP](#6.2 端口关闭STP)
- [6.3 Smart Link 组核心配置](#6.3 Smart Link 组核心配置)
- [6.4 汇聚设备FLUSH报文配置](#6.4 汇聚设备FLUSH报文配置)
- [6.5 查看验证命令](#6.5 查看验证命令)
- 实验参考
Smart Link 与 Monitor Link 技术详解
一、Smart Link 简介
1.1 Smart Link 产生背景与技术定位
Smart Link 是一种专为双上行组网场景设计的二层链路快速收敛高可靠性技术,核心解决传统生成树协议(STP/RSTP)在接入层双上行场景中收敛速度慢、配置复杂的痛点。
1.1.1 协议属性
Smart Link 是 H3C/华为私有协议,并非IEEE国际标准协议,仅在厂商自有设备上支持。
1.1.2 收敛速度对比
- Smart Link 收敛速度 :亚秒级(小于1秒),典型收敛时间为 10-300毫秒(100-300厘秒,1厘秒=0.01秒),业务无感知。
- STP/RSTP 收敛速度:通常需要1秒左右,无法满足语音、视频等实时业务的高可用需求。
1.1.3 快速收敛的核心原因
- 拓扑固定:仅适用于双上行拓扑,每个 Smart Link 组固定包含两个端口,无需处理复杂的多端口拓扑计算。
- 机制简单:采用主备端口直接切换机制,无需复杂的选举过程、替代端口计算或协议协商,直接通过CPU指令完成切换。
1.2 基本工作原理
Smart Link 采用主备端口(Master/Slave)机制实现链路备份与快速切换:
- 正常状态:主端口(Master Port)处于转发状态,承载所有业务流量;备用端口(Slave Port)处于阻塞状态,防止环路产生。
- 故障切换:当主端口或其上行链路发生故障时,系统立即将备用端口切换为转发状态,流量在毫秒级内完成切换。
- 恢复回切:主端口链路恢复后,可根据配置的回切时间(WTR)自动将流量切回主端口,避免链路震荡导致的频繁切换。
1.3 拓扑与端口/VLAN配置详解
下图为典型的 Smart Link 双上行组网拓扑:

1.3.1 端口组成说明
- Smart Link 组 :由 SWD 上的两个上行端口组成,分别是:
- Master Port(主端口):SWD 连接 SWB 的端口,正常状态下处于转发状态,承载业务流量。
- Slave Port(副端口/备用端口):SWD 连接 SWC 的端口,正常状态下处于阻塞状态,不转发保护VLAN流量。
- 主备端口的角色固定,切换过程中不会改变端口本身的配置,仅改变转发状态。
1.3.2 VLAN配置说明
-
控制VLAN(示例:VLAN 10) :
图中SWB与SWD、SWA与SWB之间的链路都承载VLAN 10,这是Smart Link的控制报文专用VLAN。
- 作用:用于转发 **FLUSH报文(MAC地址刷新报文)**和链路状态检测报文,实现链路状态检测、切换通知和全网MAC地址刷新。
- 特点:控制VLAN报文仅在设备间交互,不承载用户业务流量。
-
保护VLAN(示例:VLAN 20) :
图中SWD侧标注的VLAN 20,是Smart Link需要保护的业务VLAN。
- 作用:保护VLAN是 Smart Link组允许转发的业务VLAN,其流量仅在Smart Link组的转发端口上传输,阻塞端口会丢弃保护VLAN的流量,防止环路。
- 配置方式:支持以 MST实例的形式进行映射,可将多个业务VLAN批量绑定到Smart Link组,简化配置。
- 特点:业务流量只走主端口,主端口故障时,保护VLAN的流量会自动切换到副端口。
1.3.3 拓扑工作流程
- 正常状态:SWD的主端口(连SWB)转发VLAN 20流量,副端口(连SWC)阻塞VLAN 20流量,避免环路。
- 故障切换:当SWB与SWD之间的链路断开时,SWD通过VLAN 10检测到链路故障,立即将副端口切换为转发状态,VLAN 20流量切换到SWC路径,同时发送FLUSH报文通知全网刷新MAC地址表。
- 状态恢复:链路恢复后,可根据配置的回切时间(WTR)自动将流量切回主端口。
二、保护VLAN、控制VLAN与FLUSH报文机制
2.1 保护VLAN
2.1.1 定义与核心作用
保护VLAN是 Smart Link组允许转发的业务VLAN集合,是Smart Link实现"链路备份+防环控制"的核心管控对象。
- 核心定位:决定了哪些业务流量受Smart Link的主备链路切换保护,哪些流量不受其管控。
- 防环逻辑:通过"单端口转发、另一端口阻塞"的机制,在不依赖生成树协议的前提下,从根源上避免双上行链路形成二层环路。
2.1.2 双端口状态下的转发规则
- 正常工作状态(主端口转发、副端口阻塞)
- 主端口(Master Port):允许转发所有保护VLAN的流量,作为业务流量的唯一出口。
- 副端口(Slave Port):对所有保护VLAN的流量执行"硬丢弃"操作,不转发任何保护VLAN报文,避免双路径形成环路。
- 故障切换状态(主端口故障、副端口转发)
- 主端口链路故障后,设备立即解除副端口对保护VLAN的阻塞状态,副端口开始转发保护VLAN流量,业务流量自动切换到备用链路。
- 故障恢复后,可根据配置的回切时间(WTR)自动将流量切回主端口,恢复初始转发状态。
2.1.3 配置方式:MST实例映射机制
为了简化多业务VLAN的配置管理,Smart Link支持将保护VLAN以 MST(多生成树)实例的形式进行映射绑定:
- 实现逻辑:先将多个业务VLAN批量映射到一个或多个MST实例中,再将这些MST实例绑定到Smart Link组,即可实现对所有对应VLAN的批量保护。
- 优势:无需逐个配置每个VLAN,大幅简化配置步骤,同时保证多个业务VLAN的转发规则一致性。
- 配置限制:一个Smart Link组可绑定多个MST实例,覆盖不同业务场景的VLAN流量。

2.2 控制VLAN
2.2.1 定义与核心作用
控制VLAN是Smart Link的专属信令VLAN,不承载任何用户业务流量,仅用于协议报文的交互与状态同步。
- 核心作用:承载Smart Link的控制报文,包括链路状态检测报文和关键的FLUSH刷新报文,是实现快速故障切换的"信令通道"。
- 与保护VLAN的关系:控制VLAN和保护VLAN相互独立,控制VLAN报文不会被副端口阻塞,确保协议报文在任何链路状态下都能正常传输。
2.2.2 关键特性与工作要求
- 报文透传要求:控制VLAN需要在Smart Link组涉及的所有链路上(包括接入层到汇聚层的中间设备)被允许透传,否则控制报文会被丢弃,导致链路状态检测失败、故障切换异常。
- 专用性要求:建议为控制VLAN分配独立的、未被业务占用的静态VLAN,避免与保护VLAN或其他业务VLAN混用,防止报文冲突或误丢弃。
- 双向传输要求:控制VLAN需要同时支持发送和接收报文,设备通过控制VLAN周期性发送检测报文,同时接收对端设备的响应报文,实现链路连通性检测。
2.3 FLUSH报文机制
2.3.1 技术背景:链路切换后的MAC地址表问题
当Smart Link组发生链路故障切换时,会出现MAC地址表项与实际转发路径不匹配的问题,这是影响业务恢复速度的关键痛点:
- 问题根源:上行交换机(如汇聚层交换机)会学习到接入设备的MAC地址,并将其绑定到原主端口对应的接口上。当主端口故障、流量切换到副端口后,上行交换机的MAC地址表项仍指向已失效的接口。
- 传统解决方式的缺陷:
- 等待MAC地址表自然老化:MAC地址表默认老化时间通常为300秒,在此期间流量会持续发往失效链路,导致业务长时间中断。
- 依赖业务流量刷新:只有当新的业务流量从副端口发送到上行交换机时,MAC地址表项才会被刷新,若没有业务流量则无法自动更新,且刷新过程中会出现短暂的流量丢包。
- 影响结果:两种方式都会导致流量中断时间远超Smart Link本身的链路切换速度,无法实现真正的"毫秒级业务无感知"。
2.3.2 FLUSH报文的工作流程(结合拓扑)
下图为典型的故障切换与FLUSH报文交互拓扑:

- 故障触发:SWD的主端口(连接SWB)链路故障,流量切换到副端口(连接SWC)。
- 报文发送:SWD从新的转发端口(副端口)通过控制VLAN(示例VLAN 10)发送FLUSH报文。
- 报文校验:SWC收到FLUSH报文后,会比较报文中携带的控制VLAN ID与接收端口配置的控制VLAN是否一致,确认报文合法后再执行刷新动作。
- MAC地址刷新:校验通过后,SWC会根据FLUSH报文中携带的MAC地址表项,更新本地MAC地址表,将对应MAC地址绑定到接收FLUSH报文的端口上。
- 流量恢复:MAC地址表项刷新完成后,上行流量立即转发到新链路,业务无感知恢复。
2.3.3 FLUSH报文格式解析
FLUSH报文是基于以太网帧封装的控制报文,典型格式如下:

- 目的MAC地址(DMAC) :固定为组播MAC
010F-E200-0004,所有支持Smart Link的设备都会监听该地址。 - 源MAC地址(SMAC):发送设备的桥MAC地址。
- Control Type :固定为
0x01,标识为FLUSH报文类型。 - Control Version :控制协议版本,通常为
0x00。 - Device ID:发送设备的唯一标识,用于区分不同设备的报文。
- Control VLAN ID:发送端配置的控制VLAN ID,接收端会校验该字段与本地配置是否一致。
- Auth-mode / Password:可选的认证字段,用于报文合法性校验。
- VLAN Bitmap:携带保护VLAN的位图信息,用于标识需要刷新的业务VLAN范围。
- FCS:帧校验序列,保证报文完整性。
2.3.4 FLUSH报文的核心价值与优势
- 毫秒级刷新:无需等待MAC地址表自然老化,可在链路切换完成的同时完成全网MAC地址刷新,将流量中断时间压缩到与链路切换时间一致(≤50ms),真正实现业务无感知切换。
- 主动触发刷新:不依赖业务流量,即使没有用户流量也能主动更新MAC地址表项,避免了"无业务流量时MAC地址表无法刷新"的问题。
- 报文校验机制:通过控制VLAN ID和设备标识校验,保证报文的合法性,防止非法报文导致的MAC地址表异常刷新。
三、Smart Link 角色抢占模式与配置注意事项
3.1 角色抢占模式
3.1.1 默认行为
默认情况下,当主端口故障恢复后,不会自动发生角色抢占,流量会继续保持在当前的转发端口(副端口),不会主动切回主端口。这种设计可以避免链路恢复时的流量震荡,保证业务稳定性。
3.1.2 抢占模式配置
用户可通过配置开启主端口自动抢占角色功能:
- 开启抢占模式后,当主端口链路恢复正常,且经过配置的回切时间(WTR)稳定无故障后,主端口会自动抢占转发角色,流量切回主链路。
- 抢占模式通常与回切时间配合使用,可根据业务需求配置回切延迟,避免链路抖动导致的频繁切换。
3.2 配置注意事项
3.2.1 协议互斥性
Smart Link、STP(生成树协议)、RRPP(快速环网保护协议)三者在同一设备上不能同时运行,只能选择其中一种二层保护协议。
3.2.2 STP 关闭要求
配置Smart Link时,必须在Smart Link组的相关接口上关闭STP特性:
- 原因:Smart Link通过主备端口阻塞/转发实现防环,而STP会独立进行端口角色计算,两者同时运行会导致转发状态冲突,可能引发环路或流量异常。
- 配置建议:在加入Smart Link组的所有端口上执行
undo stp enable命令,关闭STP协议。
四、Monitor Link 技术详解
4.1 技术背景:Smart Link 场景的隐藏痛点
先看这张典型的 Smart Link 双上行组网拓扑:

在这个拓扑中,接入层设备 SWD 配置了 Smart Link 组,双上行连接汇聚层的 SWB 和 SWC。
- 正常情况下,主链路(SWD→SWB→SWA)承载业务流量,副链路(SWD→SWC→SWA)处于阻塞状态。
- 当主链路的 SWB 与 SWA 之间的链路发生故障(如图中红色叉号所示),虽然主链路已经中断,但 SWD 侧的上行端口仍然是物理 Up 状态,无法感知到上游链路的故障。
- 结果:SWD 仍会继续将流量发往主链路,导致流量黑洞,业务中断,而 Smart Link 无法触发切换动作。
为了解决这种"上行链路故障未被感知"的场景,就需要引入 Monitor Link 技术,实现上行链路状态的联动监控。
4.2 Monitor Link 核心概念与工作原理
4.2.1 定义与核心作用
Monitor Link 是一种上行链路状态联动技术,通过监控上行端口的链路状态,联动控制下行端口的 Up/Down 状态,实现"端到端"的链路备份,与 Smart Link 配合使用。
4.2.2 组成结构
- 上行端口(Monitor Port):被监控的上联端口,通常为连接汇聚/核心层的端口,其状态变化会触发联动动作。
- 下行端口(Downlink Port):与上行端口联动的下联端口,当上行端口 Down 时,所有关联的下行端口会自动被置为 Down 状态。
4.2.3 工作机制(结合拓扑)
下图展示了 Monitor Link 的完整联动过程:

- 故障触发:SWB 与 SWA 之间的上行链路故障(红色叉号),SWB 侧的上行端口变为 Down 状态。
- 联动动作:Monitor Link 组检测到上行端口 Down,立即将关联的下行端口(连接 SWD 的端口)置为 Down(红色叉号)。
- 联动结果:SWD 检测到主端口(连接 SWB)Down,触发 Smart Link 切换,流量自动切到副链路(SWD→SWC→SWA),避免流量黑洞。
- 恢复联动:当上行链路恢复正常后,上行端口恢复 Up,关联的下行端口也会自动恢复 Up 状态(绿色对勾)。
4.3 Monitor Link 与 Smart Link 的协同工作流程
- 故障发生:SWB 与 SWA 之间的链路中断,SWB 侧的上行端口 Down。
- Monitor Link 联动:SWB 的 Monitor Link 组检测到上行端口 Down,立即将下行端口(连接 SWD 的端口)置为 Down。
- Smart Link 触发:SWD 检测到主端口(连接 SWB)Down,立即将副端口(连接 SWC)切换为转发状态,并发送 FLUSH 报文刷新 MAC 地址表。
- 业务恢复:流量切换到副链路(SWD→SWC→SWA),业务无感知恢复,避免了流量黑洞问题。
4.4 关键特性与应用场景
4.4.1 核心特性
- 实时联动:上行链路故障时,下行端口状态同步变化,无流量黑洞。
- 多端口联动:一个 Monitor Link 组可监控多个下行端口,实现批量状态管理。
- 轻量级实现:无需复杂协议,仅通过状态联动实现故障管理,配置简单。
4.4.2 典型应用场景
- 与 Smart Link 配合使用,实现接入层到核心层的端到端链路备份。
- 监控汇聚层设备的上联链路状态,避免接入层设备继续向失效链路发送流量。
- 解决上行链路故障但下行端口仍为 Up 状态导致的流量黑洞问题。
五、Smart Link 配置核心思路
配置Smart Link的核心逻辑是:先打通基础网络 → 再关闭冲突协议 → 最后绑定主备角色与保护策略,全程围绕"防环+切换+报文透传"三个核心目标展开。
5.1 第一步:全网基础准备(所有交换机)
核心目标:让业务VLAN和控制VLAN在所有链路上都能正常通行,为后续配置打基础。
- 先在所有交换机上创建业务VLAN(保护VLAN)和控制VLAN,避免后续配置时VLAN不存在。
- 在所有相关端口配置Trunk,确保业务VLAN和控制VLAN在接入、汇聚链路上都被允许透传,控制VLAN的FLUSH报文才能跨设备传递。
5.2 第二步:MST实例映射(仅Smart Link交换机)
核心目标:把零散的业务VLAN批量绑定,简化Smart Link的保护VLAN配置。
- 先规划好MST实例,把需要保护的业务VLAN映射到对应的实例中。
- 后续Smart Link组直接绑定MST实例,就相当于一次性保护了所有映射的VLAN,不用逐个配置。
5.3 第三步:关闭STP协议(仅Smart Link交换机)
核心目标:避免STP与Smart Link的防环机制冲突。
- Smart Link的主备端口已经通过"一转发一阻塞"实现防环,和STP的端口角色选举逻辑会冲突。
- 必须在Smart Link组的主、备端口上关闭STP,防止出现环路或转发状态异常。
5.4 第四步:创建并配置Smart Link组(仅Smart Link交换机)
核心目标:定义主备角色、保护范围和控制通道,这是整个配置的核心步骤。
- 创建组:先新建一个Smart Link组,作为后续所有配置的容器。
- 分配角色:把两个上行端口分别指定为主端口(Primary)和副端口(Secondary),角色固定,后续切换不会改变角色定义。
- 绑定保护VLAN:通过引用之前创建的MST实例,把需要保护的业务VLAN和组绑定,明确哪些流量受Smart Link控制。
- 配置控制VLAN:指定专用的控制VLAN,用于承载链路检测和FLUSH刷新报文,必须和前面全网放行的控制VLAN一致。
- 可选优化:配置回切时间(WTR)和抢占模式,控制主链路恢复后的流量回切策略,避免链路震荡。
5.5 第五步:上游交换机配置(仅汇聚/核心交换机)
核心目标:让FLUSH报文能正常透传并被处理,确保MAC地址能快速刷新。
- 在上游交换机连接Smart Link设备的端口上,开启控制VLAN的FLUSH报文接收功能。
- 确保收到报文的交换机能正确解析并刷新MAC地址表,否则即使链路切换了,流量也会因为MAC表未更新而发往失效链路。
5.6 第六步:处理VLAN 1的特殊问题
核心目标:解决默认VLAN不受Smart Link保护导致的环路问题。
- Smart Link默认只保护配置的保护VLAN,不处理VLAN 1的流量。
- 如果组网中使用了VLAN 1,需要额外配置(如在相关端口关闭VLAN 1转发,或保留STP单独处理VLAN 1),避免双上行链路形成VLAN 1的环路。
六、Smart Link 关键配置命令
6.1 基础VLAN与链路配置
bash
[H3C]vlan 10
[H3C]vlan 20
[H3C]interface GigabitEthernet 1/0/1
[H3C-GigabitEthernet1/0/1]port link-type trunk
[H3C-GigabitEthernet1/0/1]port trunk permit vlan 10 20
6.2 端口关闭STP
bash
[H3C]interface GigabitEthernet 1/0/1
[H3C-GigabitEthernet1/0/1]undo stp enable
[H3C]interface GigabitEthernet 1/0/2
[H3C-GigabitEthernet1/0/2]undo stp enable
6.3 Smart Link 组核心配置
bash
[H3C]smart-link group 1
[H3C-smlk-group1]port GigabitEthernet 1/0/1 primary
[H3C-smlk-group1]port GigabitEthernet 1/0/2 secondary
[H3C-smlk-group1]protected-vlan reference-instance 2
[H3C-smlk-group1]control-vlan 10
[H3C-smlk-group1]timer wtr 30
[H3C-smlk-group1]enable
6.4 汇聚设备FLUSH报文配置
bash
[H3C]interface GigabitEthernet 1/0/2
[H3C-GigabitEthernet1/0/2]smart-link flush enable control-vlan 10
6.5 查看验证命令
bash
<H3C>display smart-link group 1
<H3C>display smart-link statistics