课题 9 STP 二层环路避免技术

STP 二层环路避免技术

一、课程学习目标

  1. 清晰掌握二层物理环路产生的现象、严重危害;

  2. 理解 STP 生成树协议定义、核心作用与适用场景;

  3. 熟练掌握 802.1D STP 完整工作原理、BPDU 报文对比规则;

  4. 掌握根网桥、根端口、指定端口、阻塞端口四大角色选举逻辑;

  5. 熟记 STP 计时器、5 种端口状态、拓扑收敛机制;

  6. 掌握 Cisco、华为 / 华三主流设备基础 STP 配置命令。

二、二层物理环路带来的问题

(一)基础原理回顾

交换机基于 MAC 地址表单播转发;广播、未知单播帧会向除入端口外所有端口泛洪。当交换机之间存在多条冗余物理链路,就会形成二层环路。

(二)环路两大核心现象

  1. 交换机所有端口指示灯同步高频快速闪烁;

  2. MAC 地址表持续震荡,同一 MAC 地址不断在不同端口来回漂移。

(三)环路带来的严重危害

  1. 广播风暴

    广播帧在环路内无限循环复制,全网链路带宽被广播报文占满,正常业务数据包无法传输,链路彻底堵塞。

  2. 终端系统资源耗尽

    主机网卡持续接收海量广播报文,CPU 长期高负载,电脑卡顿、死机、无响应。

  3. 交换机 CPU 过载

    大量二层广播协议报文、泛洪流量需要交换机 CPU 处理,交换机管理、转发功能瘫痪。

  4. 网关设备崩溃

    环路持续复制 ARP 广播报文,海量请求冲击三层网关 CPU,导致网关宕机,全网断网。

三、STP 生成树协议基础概念

1. STP 定义

ST 全称 Spanning Tree Protocol(生成树协议),标准 802.1D,工作在数据链路层,专门解决交换机冗余链路形成的二层环路问题。

交换机之间通过交互BPDU 桥协议数据单元完成全网拓扑计算,自动逻辑阻断冗余链路,构建唯一无环树型网络。

2. 核心应用场景

企业、校园、园区多层交换机组网;为提升网络可靠性,部署多条备份互联链路,又需要避免环路的二层局域网。

3. STP 两大核心作用

  1. 消除环路:自动逻辑阻塞冗余链路,切断二层环路,从根源解决广播风暴、MAC 地址震荡;

  2. 链路冗余备份:主链路故障断开时,STP 自动解除阻塞端口,激活备用链路,快速恢复全网连通,提升网络可靠性。

四、STP 完整工作原理(802.1D)

(一)整体计算四步流程

  1. 全网交换机对比 BPDU,选举唯一根网桥(Root Bridge)

  2. 每一台非根交换机,选举唯一根端口(RP,Root Port)

  3. 每一条交换机互联网段,选举唯一指定端口(DP,Designated Port)

  4. 既不是根端口、也不是指定端口的链路端口,置为阻塞端口,逻辑阻断,不转发用户流量。

(二)BPDU 核心参数与选举对比规则

交换机依靠 BPDU 报文中 4 组参数判定最优路径,比较优先级从高到低

  1. 根网桥 ID(越小越优)

  2. 根路径开销 RPC(越小越优)

  3. 发送方网桥 ID(越小越优)

  4. 发送端口 ID(越小越优)

1. 网桥 ID(Bridge ID)64bit,用于选举根网桥
  • 组成:16bit 网桥优先级 + 48bit 交换机 MAC 地址

  • 优先级范围:0~65535,默认 32768,配置必须为 4096 的整数倍;

  • 选举规则:全网网桥 ID 最小的交换机成为根网桥。

2. 路径开销 Path Cost

衡量链路质量,带宽越高开销越小,端口接收 BPDU 后,RPC = 报文原有根路径开销 + 本端口开销;RPC 代表本端口到根网桥的总距离。

  • 802.1D 标准开销:10M=100、100M=19、1G=4、10G=2;

  • 802.1T 新标准开销:10M=2000000、100M=200000、1G=20000、10G=2000。

3. 端口 ID(Port ID)16bit
  • 组成:8bit 端口优先级 + 8bit 端口编号

  • 端口优先级范围 0~255,默认 128,必须是 16 倍数。

(三)四大端口角色详细说明

  1. 根网桥(Root Bridge)

    全网唯一核心交换机,所有端口全部自动为指定端口,持续周期发送配置 BPDU。

  2. 根端口 RP(仅非根交换机存在)

    非根交换机上,去往根网桥 RPC 最小的端口;是交换机向上访问根网桥的最优出口,正常转发流量。

    选举优先级:RPC 最小 > 对端网桥 ID 最小 > 对端端口 ID 最小。

  3. 指定端口 DP(每个网段唯一)

    每条交换机互联链路两端中,去往根网桥 RPC 更小的交换机端口;负责向本网段转发根网桥 BPDU,正常转发用户流量。

    选举优先级:RPC 最小 > 本地网桥 ID 最小 > 本地端口 ID 最小。

  4. 阻塞端口 Alternate Port

    既非根端口、也非指定端口,逻辑阻断,仅接收处理 BPDU 报文,不转发任何用户数据;作为链路故障时的备用端口。

(四)BPDU 报文分类

  1. 配置 BPDU(0 类)

    根网桥每 2 秒(Hello 时间)主动发送,用于全网拓扑计算、端口角色选举,稳定网络中只有根网桥持续发送。

  2. TCN 拓扑变更 BPDU(0x80)

    端口状态发生变化时交换机发送,通知全网刷新 MAC 地址表,加速收敛。

  3. RSTP/MSTP 专用 BPDU(版本号 2、3),802.1D 标准 STP 不使用。

  • BPDU 固定组播目的 MAC:0180-C200-0000。

五、STP 计时器与 5 种端口状态

(一)三大核心计时器

  1. Hello Time(Hello 时间):默认 2 秒,根网桥发送配置 BPDU 的间隔;

  2. Forward Delay(转发延迟):默认 15 秒,端口在侦听、学习状态各停留 15 秒;

  3. Max Age(最大老化时间):默认 20 秒,端口 20 秒未收到有效 BPDU,则判定上游链路故障。

(二)五种端口状态完整功能

  1. Disabled(禁用状态)

    端口物理关闭、未启用 ST;不收发 BPDU,不转发数据、不学习 MAC。

  2. Blocking(阻塞状态)

    阻塞端口固定状态;仅接收 BPDU,不发送 BPDU,不转发用户流量、不学习 MAC。

  3. Listening(侦听状态,持续 15s)

    链路故障后备用端口切换进入;收发 BPDU,重新计算拓扑,不转发、不学习 MAC。

  4. Learning(学习状态,持续 15s)

    侦听结束进入;收发 BPDU,开始学习 MAC 地址,依旧不转发用户数据。

  5. Forwarding(转发状态)

    根端口、指定端口最终状态;正常转发流量、学习 MAC、收发 BPDU。

(三)端口状态切换逻辑

  1. 阻塞端口 20 秒收不到 BPDU → 切换至侦听(15s)→ 学习(15s)→ 转发;完整收敛耗时 50 秒;

  2. 主链路直接断开,备用端口可直接切换,仅需两个转发延迟,收敛 30 秒。

(四)两种网络收敛场景

  1. 直接收敛(30 秒)

    本交换机的根端口物理断开,本机阻塞端口直接参与选举,经过侦听 + 学习各 15 秒,共 30 秒完成恢复;

  2. 间接收敛(50 秒)

    对端交换机主链路断开,本机阻塞端口等待 20 秒 Max Age 超时,再走 30 秒侦听 + 学习流程,总收敛 50 秒。

六、主流设备 STP 基础配置

(一)Cisco 交换机配置(默认全局开启 STP)

  1. 配置主根网桥

spanning-tree vlan 1-4094 priority 0
  1. 配置备份根网桥

spanning-tree vlan 1-4094 priority 4096
  1. 接入终端端口配置 PortFast 边缘端口(跳过侦听学习,直接转发)

interface GigabitEthernet0/1 spanning-tree portfast

(二)华为 / 华三交换机配置(默认关闭 STP,默认 MSTP 模式)

  1. 全局开启 STP 功能

stp enable
  1. 主根网桥设置

stp priority 0
  1. 备份根网桥设置

stp priority 4096
  1. 接入终端端口配置边缘端口 edged-port

interface GigabitEthernet 0/1 stp edged-port enable

七、补充总结

  1. STP 通过逻辑阻塞冗余链路,兼顾无环与链路备份两大需求;

  2. 选举逻辑核心对比依据:根网桥 ID > 根路径开销 > 发送网桥 ID > 发送端口 ID;

  3. 传统 802.1D STP 收敛速度慢(最长 50 秒),后续衍生 RSTP(802.1w 快速生成树)、MSTP(802.1s 多生成树)优化收敛速度、支持多 VLAN 独立拓扑;

  4. 终端接入端口推荐配置边缘端口 PortFast/edged-port,避免终端开机触发 STP 收敛卡顿。