STP(生成树协议)
STP(Spanning Tree Protocol)是一种用于防止网络环路的链路层协议,工作在OSI模型的第二层。通过在冗余链路中阻塞某些端口,确保网络拓扑中只有一条活跃路径。STP基于IEEE 802.1D标准,使用BPDU(Bridge Protocol Data Unit)帧交换信息,选举根桥并计算最短路径。其缺点是收敛速度较慢(30-50秒),可能导致网络暂时中断。
STP的工作原理
-
根桥选举
网络中的所有交换机通过交换BPDU(桥协议数据单元)选举根桥。根桥的选举基于桥ID(Bridge ID),由优先级和MAC地址组成,数值最小的交换机成为根桥。 -
根端口选择
每个非根交换机选择一个根端口,即到达根桥路径成本最低的端口。路径成本基于链路带宽,带宽越高,成本越低。 -
指定端口选择
每个网段(冲突域)选举一个指定端口,负责转发流量到根桥。其他端口若未被选为根端口或指定端口,则进入阻塞状态。 -
阻塞冗余路径
非指定端口和非根端口被阻塞,逻辑上断开环路,同时保持物理连接以备冗余切换。
STP的端口状态
- 阻塞(Blocking):不转发数据帧,仅接收BPDU。
- 侦听(Listening):参与生成树计算,不学习MAC地址。
- 学习(Learning):学习MAC地址,但不转发数据帧。
- 转发(Forwarding):正常转发数据帧。
- 禁用(Disabled):端口被手动关闭或故障。
STP的应用场景
- 防止广播风暴和MAC表震荡。
- 在冗余网络拓扑中提供高可用性。
- 适用于交换机互联的局域网环境,如企业网络和数据中心。
RSTP(快速生成树协议)
RSTP(Rapid Spanning Tree Protocol)是STP的改进版本,基于IEEE 802.1w标准。它优化了收敛机制,将收敛时间缩短至1-2秒。RSTP引入了新的端口角色(根端口、指定端口、替代端口、备份端口)和状态(丢弃、学习、转发),减少了网络恢复时间。RSTP兼容STP,但更适应现代高速网络的需求。
RSTP的核心改进
端口角色扩展
- 根端口(Root Port):与STP一致,选择到达根桥的最优路径。
- 指定端口(Designated Port):负责转发流量的端口,每个网段只有一个。
- 替代端口(Alternate Port):根端口备份,提供冗余路径。
- 备份端口(Backup Port):指定端口备份,用于共享链路(如Hub环境)。
端口状态简化
- 丢弃(Discarding):不转发数据,类似STP的禁用(Disabled)、阻塞(Blocking)或侦听(Listening)状态。
- 学习(Learning):学习MAC地址但不转发数据。
- 转发(Forwarding):正常转发数据。
RSTP的快速收敛机制
提议-同意机制(Proposal-Agreement)
当拓扑变化时,下游设备通过发送提议(Proposal)消息请求快速切换。上游设备响应同意(Agreement)后,端口立即进入转发状态,跳过传统STP的侦听和学习阶段。
边缘端口(Edge Port)
直接连接终端的端口可配置为边缘端口,立即进入转发状态,避免触发拓扑变更。若收到BPDU,则自动恢复为普通端口。
拓扑变更处理
仅非边缘端口状态变化会触发拓扑变更通知(TCN),且RSTP通过洪水BPDU直接通知全网,而非依赖根桥广播。
RSTP配置示例(以Cisco为例)

交换机0,使用show spannin-tree vlan 1命令查看stp状态

交换机1

Switch(config)# spanning-tree mode rapid-pvst //启用RSTP
Switch(config-if)# spanning-tree portfast //配置边缘端口
Switch(config)# spanning-tree vlan 1 root primary //强制为根桥
可以看到,当我们把交换机0的vlan1优先级设置为4096时,交换机1的f0/2接口被逻辑上阻塞了。
RSTP与STP的兼容性
RSTP设备与STP设备共存时,会自动降级为STP模式。建议全网统一部署RSTP以发挥最佳性能。
MSTP(多生成树协议)
MSTP(Multiple Spanning Tree Protocol)基于IEEE 802.1s标准,扩展了RSTP的功能。它允许将多个VLAN映射到同一个生成树实例(MSTI),减少资源消耗。MSTP支持区域配置(Region),要求交换机域名、修订号和VLAN-实例映射一致才能互通。适用于复杂的大规模网络,尤其是多VLAN环境。
MSTP核心原理
MSTP通过划分区域(MST Region)和实例(MSTI)实现多VLAN的拓扑管理。同一区域内的交换机需配置相同的域名、修订号和VLAN-实例映射表。每个MSTI独立计算生成树,不同VLAN可关联到不同MSTI,从而实现流量的路径优化。
MSTP与STP/RSTP的区别
- STP:单一生成树,所有VLAN共享同一拓扑,可能导致链路利用率低。
- RSTP:快速生成树协议,收敛速度更快,但仍为单一拓扑。
- MSTP:支持多拓扑实例,允许不同VLAN走不同路径,提升网络效率。
MSTP配置步骤
-
启用MSTP模式
在交换机全局配置模式下执行:spanning-tree mode mstp -
配置MST区域参数
定义区域名称、修订号及VLAN-实例映射:spanning-tree mst configuration name REGION_1 revision 1 instance 1 vlan 10-20 instance 2 vlan 30-40 -
设置实例优先级
指定根桥或备份根桥的优先级(数值越低优先级越高):spanning-tree mst 1 priority 4096 -
验证配置
检查MSTP状态和实例信息:show spanning-tree mst show spanning-tree mst configuration
MSTP的应用场景
- 数据中心网络:多路径负载均衡,避免单条链路拥塞。
- 企业核心层:通过VLAN隔离业务流量,提升冗余能力。
- 运营商网络:支持大规模VLAN环境,降低生成树计算开销。
MSTP的优缺点
-
优点:
- 支持多实例,优化带宽利用率。
- 兼容STP/RSTP,便于混合组网。
- 区域划分简化管理复杂度。
-
缺点:
- 配置较复杂,需统一区域参数。
- 跨区域时可能退化为STP行为。
通过合理配置MSTP,可以显著提升大型网络的可靠性和性能,尤其适用于多VLAN环境下的路径控制需求。
STP、RSTP、MSTP的共同点
- 目地一致:均用于消除网络环路,提供冗余链路的高可用性。
- 基于BPDU:通过交换BPDU帧实现拓扑计算。
- 根桥选举:均需选举根桥作为拓扑计算的基准。
区别
| 特性 | STP | RSTP | MSTP |
|---|---|---|---|
| 标准 | IEEE 802.1D | IEEE 802.1w | IEEE 802.1s |
| 收敛时间 | 30-50秒 | 1-2秒 | 1-2秒(基于RSTP) |
| 端口角色 | 根端口、指定端口、阻塞端口 | 新增替代端口、备份端口 | 支持MSTI实例化端口角色 |
| VLAN支持 | 单一生成树 | 单一生成树 | 多VLAN映射到实例 |
| 资源消耗 | 高 | 中等 | 低(实例化节省资源) |

5020

被折叠的 条评论
为什么被折叠?



