什么是 STP?

STP 代表生成树协议。它是一种链路管理协议,旨在提供冗余连接,暂停 STP 网络中的交换环路。它是运行在网桥和交换机上的第 2 层协议,必须在交换机接口上允许。

在 STP 环境中,交换机使用网桥协议数据单元 (BPDU) 在它们之间交换数据,然后将在所有端口上接受此 BPDU 消息。因为一个网桥开启了,它必然认为它是STP树中的根网桥。

STP 应用程序选择一个根网桥并评估从较低网桥返回到它的所有路径。假设冗余环境中根桥硬件故障,选择新的根并重新计算端口路径。

每次当网络变化出现时,例如在网络拓扑中插入新交换机,或删除当前交换机或现代根桥出现故障时,都会发生根桥的选择过程。

如果网络中的多个交换机在 20 秒内没有收到根桥的 BPDU,则认为根桥发生故障。如果现代根桥出现故障,剩余的交换机必须开始选举程序以再次选择新的根桥。

这取决于连接的媒体链接。STP 为网络的每个端口创建一个值。该值称为端口成本值。当两台交换机之间有多条链路可用时,STP 使用此值来选择单个最佳路径。它可以选择端口成本值最小的端口。

路径成本是从根网桥到网络中多个交换机的端口成本的获取值。它总是从根网桥评估。根桥的默认路径值为 0。BPDU 包含路径开销数据。

当根网桥从其链路传送 BPDU 时,它会将路径值设置为 0。获取这些 BPDU 的交换机通过插入出现 BPDU 的端口的端口成本值来增加路径值。

指定端口是在给定网络上具有最小端口成本值的端口,区别于该网段上的多个端口。STP 表示指定端口为提升端口。

非指定端口是指端口成本大于指定端口的端口。STP 将非指定端口指定为阻塞端口,用于消除环路。