一、引言
生成树协议是局域网二层技术的核心协议之一,在软考网络工程师考试中属于高频考点,历年分值占比 1-2 分,同时也是园区网可靠性设计的基础技术。
1.1 核心概念定义
生成树协议是运行在二层交换机上的环路消除协议,其核心思想是通过生成树算法(Spanning Tree Algorithm, STA),在存在物理冗余链路的网络中,逻辑阻塞部分冗余端口,构建一个无环的树形拓扑,同时在活动链路故障时自动激活备份链路,实现网络连通性的快速恢复。
1.2 技术发展脉络
生成树协议的演进经历了三个核心阶段:
1990 年,IEEE 发布 802.1D 标准,定义了经典 STP,解决了二层环路问题,但收敛速度慢,仅支持单生成树;
2001 年,IEEE 发布 802.1w 标准,定义了快速生成树协议 RSTP,将收敛时间从 30-50 秒缩短至秒级,兼容 STP;
2002 年,IEEE 发布 802.1s 标准,定义了多生成树协议 MSTP,支持多 VLAN 负载均衡,兼容 STP 和 RSTP,成为当前主流应用标准。
1.3 本文知识点覆盖
本文将系统讲解二层环路的危害、STP 核心选举机制、RSTP 的改进要点、MSTP 的多实例原理,以及工程应用方案,覆盖软考所有相关考点。
二、二层环路危害与 STP 核心原理
2.1 二层环路的危害
当网络中存在冗余物理链路且未部署环路抑制机制时,会产生两类核心故障:
(1)广播风暴
交换机对广播帧、未知单播帧采用泛洪转发机制,环路中的广播帧会被所有交换机无限循环转发,帧数量按指数级增长,最终占满所有链路带宽,导致所有端口吞吐量降至 0,网络完全瘫痪。例如 100M 链路中,64 字节的广播帧仅需 3 秒即可占满全部带宽。
(2)MAC 地址表震荡
交换机的 MAC 地址表通过源地址学习机制构建,当同一 MAC 地址的帧从环路的不同端口交替到达交换机时,交换机会不断更新该 MAC 地址对应的出端口,导致 MAC 地址表项频繁刷新,正常流量转发出现丢包、错发等问题。

二层环路故障示意图,包含广播风暴泛洪路径、MAC 地址震荡的端口切换过程
2.2 STP 核心机制
STP 通过交换机之间交互桥协议数据单元(BPDU,IEEE 802.1D 标准定义,组播地址 01-80-C2-00-00-00,每 2 秒发送一次),运行四步选举流程确定端口角色与状态:
(1)选举根桥(Root Bridge)
整个生成树拓扑中唯一的根节点,选举依据为网桥 ID(BID):
BID 结构:16 位网桥优先级 + 48 位交换机 MAC 地址,默认优先级为 32768;
选举规则:优先级数值越小越优先,优先级相同则 MAC 地址越小越优先。
工程实践中需手动将核心交换机的优先级配置为 4096 或 8192,确保其成为根桥,Cisco 设备配置命令为spanning-tree vlan 1-4094 root primary。
(2)选举根端口(Root Port)
每个非根交换机上选举一个唯一的根端口,作为该交换机到根桥的最优路径端口,选举规则按优先级依次为:
到根桥的路径开销(RPC)最小:路径开销为链路所有入端口开销之和,IEEE 802.1D-1998 标准中 100M 链路开销为 19,1000M 链路开销为 4;
对端交换机 BID 最小;
对端端口 ID(PID)最小:PID 结构为 4 位端口优先级(默认 128)+ 12 位端口编号。
(3)选举指定端口(Designated Port)
每个物理网段选举一个唯一的指定端口,负责向该网段转发流量,选举规则按优先级依次为:
所在交换机到根桥的 RPC 最小;
所在交换机 BID 最小;
本端端口 PID 最小。
根桥上的所有端口默认都是指定端口。
(4)阻塞非核心端口
既不是根端口也不是指定端口的端口被置为阻塞状态,仅接收 BPDU,不转发用户数据。

STP 选举流程拓扑图,标注根桥、根端口、指定端口、阻塞端口的位置与选举依据
2.3 STP 的局限性
经典 STP 的核心缺陷为收敛速度慢,端口从阻塞到转发需要经过 30-50 秒:
阻塞状态(20 秒):仅接收 BPDU,不学习 MAC、不转发数据;
监听状态(15 秒):接收并发送 BPDU,构建拓扑,不学习 MAC、不转发数据;
学习状态(15 秒):学习 MAC 地址表,仍不转发数据;
转发状态:正常转发数据。
该收敛速度无法满足语音、视频等低延迟业务的需求。
三、RSTP 的技术改进与实现
RSTP(IEEE 802.1w)在兼容 STP 的基础上,通过端口角色细化、状态简化、快速收敛机制实现了秒级收敛,是当前中小型园区网的主流选择。
3.1 端口角色细化
RSTP 在 STP 的根端口、指定端口基础上,新增三类端口角色:
替代端口(Alternate Port):根端口的备份端口,存储到根桥的次优路径,当根端口失效时可直接切换为新的根端口,无需等待收敛;
备份端口(Backup Port):指定端口的备份端口,仅存在于交换机连接共享介质(如 Hub)的场景,当指定端口失效时可快速切换为指定端口;
边缘端口(Edge Port):连接终端设备(PC、服务器等)的端口,不参与生成树计算,可直接进入转发状态,即插即用。
3.2 端口状态简化
RSTP 将 STP 的 5 种端口状态简化为 3 种,减少了状态切换的耗时:
Discarding 状态:对应 STP 的 Disabled、Blocking、Listening 状态,不学习 MAC 地址,不转发用户数据,仅接收 BPDU;
Learning 状态:与 STP 一致,学习 MAC 地址表,不转发用户数据;
Forwarding 状态:正常转发用户数据。
3.3 快速收敛机制
RSTP 的核心快速收敛机制包括三类:
P/A(Proposal/Agreement)机制:点对点链路中,上游交换机发送 Proposal 报文请求快速切换端口状态,下游交换机确认无环路后回复 Agreement 报文,端口无需等待计时器即可直接进入转发状态,收敛时间可低至 1 秒;
根端口快速切换:替代端口可直接接替失效的根端口,无需经过 Learning 状态;
边缘端口快速启用:边缘端口直接进入转发状态,不触发拓扑变更。
3.4 保护机制
RSTP 新增四类保护机制,提升网络稳定性:
BPDU 保护:边缘端口收到 BPDU 时自动关闭,防止非法交换机接入引发拓扑变动,华为设备配置命令为stp bpdu-protection;
根保护:端口收到更优 BPDU 时自动进入 Discarding 状态,防止下游交换机抢占根桥地位,配置命令为stp root-protection;
环路保护:端口长时间未收到 BPDU 时,自动进入 Discarding 状态,防止单向链路故障导致阻塞端口误转为转发状态形成环路;
TC 保护:限制单位时间内处理拓扑变更(TC)报文的次数,防止 MAC 地址表频繁刷新影响转发性能。

STP 与 RSTP 的特性对比表,包含收敛时间、端口角色、状态、适用场景等维度
四、MSTP 多生成树原理与应用
STP 和 RSTP 均为单生成树协议,所有 VLAN 共享同一棵生成树,冗余链路被完全阻塞无法承载流量,无法实现负载均衡,MSTP(IEEE 802.1s)解决了该问题。
4.1 MSTP 核心原理
MSTP 引入了多生成树实例(MST Instance, MSTI)的概念:
将多个 VLAN 映射到同一个 MSTI 中,每个 MSTI 独立计算一棵生成树,不同 MSTI 的拓扑可以不同;
同一 MST 域内的所有交换机配置相同的域名、修订级别、VLAN - 实例映射关系;
每个 MSTI 的选举机制与 RSTP 完全一致,可独立阻塞不同的冗余端口。
例如,将 VLAN 1-10 映射到 MSTI 1,VLAN 11-20 映射到 MSTI 2,配置 MSTI 1 的根桥为核心交换机 A,MSTI 2 的根桥为核心交换机 B,即可实现不同 VLAN 的流量通过不同的链路转发,充分利用冗余链路带宽。
4.2 MSTP 的优势
MSTP 的核心优势包括:
兼容 STP 和 RSTP,可与老旧设备混合组网;
支持多 VLAN 负载均衡,冗余链路可承载不同 VLAN 的流量,提升带宽利用率;
支持大规模二层网络部署,最多可支持 4094 个 MSTI,匹配 VLAN 的数量范围。

MSTP 多实例负载均衡拓扑图,标注不同 MSTI 的根桥、阻塞端口、流量转发路径
4.3 MSTP 配置要点
MSTP 的基础配置步骤包括:
配置 MST 域:stp region-configuration,进入域配置视图;
配置域名:region-name XXX,同一域内所有设备域名必须一致;
配置修订级别:revision-level 1,同一域内所有设备修订级别必须一致;
配置 VLAN - 实例映射:instance 1 vlan 1 to 10,instance 2 vlan 11 to 20;
激活配置:active,提交 MST 域配置;
配置实例根桥:stp instance 1 root primary,stp instance 2 root secondary。
五、生成树协议工程应用与演进趋势
5.1 传统园区网应用方案
在二层架构的中小型园区网中,生成树协议的典型部署方案为:
核心层两台交换机互为冗余,分别配置为不同 MSTI 的根桥;
汇聚层交换机上行采用双链路分别连接两台核心交换机,部署 MSTP 实现负载均衡;
接入层交换机连接终端的端口配置为边缘端口,启用 BPDU 保护。
该方案可实现链路级冗余,故障收敛时间小于 1 秒,满足大多数业务的需求。
5.2 新一代园区网替代方案
随着交换机堆叠(iStack)和链路聚合(Eth-Trunk)技术的成熟,当前大型园区网普遍采用 "堆叠 + 跨设备链路聚合" 的架构替代生成树协议:
接入层两台交换机组成堆叠,逻辑上视为一台设备;
汇聚层两台交换机组成堆叠,逻辑上视为一台设备;
接入层与汇聚层之间采用跨设备链路聚合,多条链路逻辑上为一条聚合链路,物理环路转变为逻辑上的点对点链路,无需部署生成树协议。
该方案的优势包括:所有链路均处于转发状态,带宽利用率达到 100%;故障收敛时间小于 100 毫秒,远低于生成树协议;配置简化,无需处理生成树相关参数。

生成树与堆叠 + 链路聚合方案的对比表,包含带宽利用率、收敛时间、配置复杂度、适用场景等维度
5.3 技术演进趋势
生成树协议的演进方向包括:
与 SDN 技术结合:由控制器统一计算二层拓扑,动态下发端口转发规则,替代分布式生成树计算,进一步提升收敛速度;
数据中心网络应用:在 TRILL、VXLAN 等大二层技术中,生成树协议作为底层环路抑制的备选方案,保障网络可靠性。
六、总结与软考备考建议
6.1 核心知识点提炼
二层环路的核心危害为广播风暴和 MAC 地址表震荡;
STP 通过四步选举构建无环拓扑,选举优先级为 BID > 路径开销 > 对端 BID > 对端 PID;
RSTP 通过端口角色细化、P/A 机制实现秒级收敛,新增四类保护机制;
MSTP 通过多实例映射实现 VLAN 负载均衡,是当前主流生成树标准;
新一代园区网优先采用堆叠 + 跨设备链路聚合替代生成树协议,提升带宽利用率。
6.2 软考考试重点提示
高频考点:STP 选举规则、端口角色判断、RSTP 改进要点、MSTP 多实例原理;
易错点:路径开销的计算规则、BID 的比较逻辑、边缘端口的特性;
题型分布:上午客观题主要考察协议原理、选举规则、标准编号,下午案例题主要考察生成树的配置、故障排查、方案设计。
6.3 实践与备考建议
理论学习:重点掌握生成树的选举流程,可通过拓扑模拟练习端口角色的判断;
实验操作:使用华为 eNSP 或 Cisco Packet Tracer 模拟 STP、RSTP、MSTP 的配置,观察端口状态变化和收敛过程;
方案对比:梳理生成树与堆叠、链路聚合技术的适用场景,掌握园区网可靠性设计的最佳实践。