第122篇:Smart Link 主备切换与回流保护

关键词

Smart Link、回流保护、Flush 报文、MAC 地址刷新、负载分担、Preemption


一、回流问题

1.1 什么是回流

当 Smart Link 从备链路切回主链路时,如果不做处理,会导致流量短暂中断

切回前:
  PC ──── 接入 SW ──── 备端口 ──── 汇聚 B ──── Internet
  MAC 表:PC 的 MAC → 备端口对应下一跳

切回后:
  PC ──── 接入 SW ──── 主端口 ──── 汇聚 A ──── Internet
  MAC 表:仍然是 PC 的 MAC → 备端口方向(未更新)
  → 流量丢向错误方向 → 丢包

1.2 解决:Flush 报文

Smart Link 在切换后发送 Flush 报文,通知上游交换机刷新 MAC/ARP 表:

切回时:
  1. Smart Link 激活主端口
  2. 发送 Flush 报文(组播或广播)
  3. 上游交换机收到 Flush → 刷新相关 MAC/ARP
  4. 流量重新学习路径 → 恢复正常

Flush 报文携带的信息: - Smart Link 组的 Control VLAN - 需要刷新的 VLAN 列表 - 源设备 ID


二、Flush 报文的配置

2.1 Control VLAN

Flush 报文通过 Control VLAN 传输。所有 Smart Link 设备必须在同一个 Control VLAN 中。

# ===== 所有 Smart Link 设备配置 =====
# 定义 Control VLAN
smart-link flush enable control-vlan 10

# 确认 Control VLAN 在 Trunk 端口上放行
interface GigabitEthernet0/0/1
 port trunk allow-pass vlan 10

# 查看 Flush 报文统计
display smart-link flush statistics
-----------------------------------------------
Received Flush packets: 5
Sent Flush packets: 3

2.2 接收 Flush 的配置

上游交换机需要开启 Flush 报文接收能力:

# 上游汇聚交换机
smart-link flush enable control-vlan 10

# 接收到 Flush 后的动作:
# 自动刷新指定 VLAN 的 MAC 和 ARP 表项

三、回切模式

3.1 三种回切模式

模式 说明 适用场景
非抢占 主端口恢复后不切回 避免频繁切换
抢占 主端口恢复后立即切回 需要主链路优先
延迟抢占 主端口恢复后等待一段时间再切回 链路稳定后再切换

3.2 配置

# 非抢占模式(默认)
smart-link group 1
 preemption mode none

# 抢占模式(立即切回)
smart-link group 1
 preemption mode forced

# 延迟抢占(推荐)
smart-link group 1
 preemption mode delay 30      # 延迟 30 秒切回

3.3 延迟抢占的用途

主链路恢复后:
  第 0 秒:主端口 Up
  第 0-30 秒:仍用备端口转发(等待主链路稳定)
  第 30 秒:Flush → 切回主端口

好处:避免主链路反复 Flapping 导致频繁切换

四、负载分担方案

Smart Link 一个组只有一条链路转发。但通过多个 Smart Link 组可以实现负载分担:

# 组 1:VLAN 10-50 走主端口
smart-link group 1
 protected-vlan reference-instance 1    # Instance 1 = VLAN 10-50
 port GE0/0/1 master
 port GE0/0/2 slave

# 组 2:VLAN 60-100 走备端口(反向)
smart-link group 2
 protected-vlan reference-instance 2    # Instance 2 = VLAN 60-100
 port GE0/0/1 slave       # 注意:主备反向
 port GE0/0/2 master

效果:

VLAN 10-50:主端口转发
VLAN 60-100:备端口转发
两个方向都利用起来了!

4.2 与 MSTP 配合

# MSTP 多实例 + Smart Link
stp region-configuration
 instance 1 vlan 10 to 50
 instance 2 vlan 60 to 100
 active region-configuration

smart-link group 1
 protected-vlan reference-instance 1
 port GE0/0/1 master port GE0/0/2 slave

smart-link group 2
 protected-vlan reference-instance 2
 port GE0/0/1 slave port GE0/0/2 master

Smart Link 和 STP 不能同时开启在同一条链路上:

# 在 Smart Link 端口上关闭 STP
interface GigabitEthernet0/0/1
 stp disable

interface GigabitEthernet0/0/2
 stp disable

六、排错命令

# 查看 Smart Link 组状态
display smart-link group 1

# 查看 Flush 统计
display smart-link flush statistics

# 查看端口 Flush 报文接收
display smart-link flush interface GigabitEthernet0/0/1

# 调试 Smart Link
debugging smart-link event

七、总结

知识点 核心要点
回流 主链路恢复后切回时 MAC 表未更新导致丢包
Flush 报文 通知上游刷新 MAC/ARP 表
Control VLAN Flush 报文的传输 VLAN
回切模式 非抢占/抢占/延迟抢占
负载分担 多 Smart Link 组 + MSTP 实例
与 STP 互斥 Smart Link 端口需关闭 STP

八、思考

  1. 什么是回流问题?Smart Link 如何解决?
  2. Flush 报文使用的 Control VLAN 需要做什么配置?
  3. 延迟抢占模式的 delay 参数设置多长时间比较合理?
  4. 如何实现 Smart Link 的负载分担?
  5. 为什么 Smart Link 端口上要关闭 STP?

下篇预告:第123篇《DLDP 单向链路检测——防光模块故障》——讲解 DLDP 如何检测和防止光纤单通导致的二层环路。