网工知识(二)STP 生成树协议

介绍

STP(Spanning Tree Protocol)是一种网络协议,用于在具有冗余链路的以太网交换网络中防止环路形成并确保网络稳定运行。STP通过计算最短路径树(Spanning Tree)来选择并禁用一些冗余链路,以避免形成环路并消除数据包的多次转发。

以下是STP的主要功能和工作原理:

1. 防止环路:STP通过在网络拓扑中选择一个根桥(Root Bridge)以及确定各个桥(Bridge)之间的最佳路径来防止环路的形成。STP将一些链路置于阻塞状态,从而形成一个无环的树状拓扑。

2. 根桥选举:STP通过选举一个根桥来确定整个网络的根,并将其余的桥配置为根桥的子桥。根桥具有最低的桥优先级(Bridge Priority),默认情况下为32768。桥优先级由桥的优先级值和MAC地址组合而成。

3. 端口状态:STP通过确定每个交换机端口的状态来决定数据流量的路径。端口可以处于以下几种状态之一:
- 根端口(Root Port):连接到根桥的端口,具有最短的路径成本。
- 设计化端口(Designated Port):在每个段(Segment)中选出的具有最短路径成本的端口。
- 阻塞端口(Blocked Port):处于阻塞状态的冗余链路上的端口,用于防止环路形成。

4. BPDU交换:STP通过发送和接收BPDU(Bridge Protocol Data Unit)来进行交互。BPDU是包含桥优先级、路径成本等信息的控制帧。交换机之间通过BPDU交换信息,共同计算并维护最短路径树。

STP有不同的变种,如经典STP(CSTP)、快速STP(RSTP)和多实例STP(MSTP)。这些变种在功能和性能上有所区别,但基本原理都是为了实现环路消除和网络冗余。
通过STP,网络管理员可以确保以太网交换网络的稳定性和可靠性,同时利用冗余链路提供高可用性。

Bridge Protocol Data Unit (网桥协议数据单元)


priority>cost>mac>trunk(判断的优先级)
1. 优先级(Priority):每个桥都有一个优先级值,优先级较低的桥将具有更高的优先级。默认情况下,优先级值是32768,可以手动配置。较低的优先级将使桥具有更高的优先级。
2. 代价(Cost):每个端口都有一个与之关联的代价值,用于衡量从桥到达根桥的路径开销。较低的代价值表示较短的路径。代价值是根据链路速率计算得出的,默认情况下,链路速率较高的端口具有较低的代价。
3. MAC地址(MAC Address):如果优先级和代价值相同,则比较桥的MAC地址。MAC地址较低的桥将具有更高的优先级。
4. Trunk 状态(Trunk Status):如果优先级、代价和MAC地址都相同,则可以比较桥上的Trunk端口状态。Trunk端口的优先级较高,将具有更高的优先级。

在STP中,根桥是网络中的主桥,它作为参考点用于计算最短路径。指定端口是每个桥上与根桥直接相连的端口,用于转发数据。
通过对这些因素的判断和比较,STP能够选举根桥、指定端口和其他相应的角色,以确保网络中没有环路,并提供冗余和容错能力。
Root Port (RP)根端口
Designated Port (DP)指定端口
Alternate Port (ALT)替代端口网工知识(二)STP 生成树协议_第1张图片
中继端口需要生成树
访问端口不需要网工知识(二)STP 生成树协议_第2张图片
上图,最上面一条是手动,下面两条是自动网工知识(二)STP 生成树协议_第3张图片
上图:快速端口配置,通常在终端设备的端口上
default默认在所有访问端口上启用portfast

拓展:“spanning-tree portfast bpduguard” 是一个Cisco交换机上的命令,用于在端口上同时启用PortFast和BPDU Guard功能。
PortFast是用于加快端口的状态转换的功能。在普通的STP过程中,端口会经历Listening和Learning状态,然后才能进入Forwarding状态,从而开始传输数据。但在特定情况下,如连接到终端设备的接口,可以使用PortFast功能来直接将端口设置为Forwarding状态,以减少等待时间和提高连接速度。
BPDU Guard是一种安全功能,用于防止无效或非授权设备引起的潜在问题。BPDU(Bridge Protocol Data Unit)是STP用于在桥之间交换信息的协议。启用BPDU Guard功能后,如果交换机端口接收到BPDU帧(通常是由交换机或桥发送的),则会将该端口立即置为错误禁用状态,以防止网络中的环路形成。网工知识(二)STP 生成树协议_第4张图片
保护配置,防止终端被换成路由器或其它。

常用命令汇总

以上是一系列配置命令,用于配置和显示Spanning Tree Protocol (STP) 的各种参数和功能。下面是对每个命令的解释:
1.show spanning-tree
(该命令用于显示当前交换机上的Spanning Tree Protocol (STP) 的配置和状态信息。)
2. spanning-tree vlan 1 priority 4096
设置VLAN 1的优先级为4096。较低的优先级值表示更高的优先级,因此命令将使该交换机在VLAN 1中成为优先桥。
3. spanning-tree portfast
启用PortFast功能。PortFast允许端口快速转换到Forwarding状态,而不需要经历Listening和Learning状态。这通常用于连接终端设备的接口。
4. spanning-tree uplinkfast
启用UplinkFast功能。UplinkFast提供快速收敛功能,以加快网络恢复速度,当根桥或指定端口失效时,它会快速选择备用路径。
5. spanning-tree backbonefast
启用BackboneFast功能。BackboneFast是一种快速收敛机制,用于在网络中断时快速恢复,以减少网络停顿时间。
6. spanning-tree mode rapid-pvst
将STP模式设置为Rapid Per-VLAN Spanning Tree (Rapid-PVST)。Rapid-PVST是一种改进的STP版本,允许每个VLAN独立运行STP,以提供更快的收敛时间。
7. spanning-tree link-type point-to-point
将链路类型设置为点对点。这告诉STP将端口视为直接连接的点对点链路,而不是共享链路。
8. spanning-tree mode mst
将STP模式设置为Multiple Spanning Tree (MST)。MST允许将VLAN映射到多个实例,以提供更灵活的拓扑控制。
9. spanning-tree mst configuration
进入MST配置模式。
10. name TEST-MST
设置MST实例的名称为"TEST-MST"。
11. revision 1
设置MST实例的修订版本为1。
12. instance 1 vlan 1-2
在MST实例1中将VLAN 1和VLAN 2包含在内。
13. spanning-tree guard root
启用Root Guard功能。Root Guard用于保护网络中的根桥,防止其他桥尝试成为根桥。
14. spanning-tree bpduguard enable
启用BPDU Guard功能。BPDU Guard用于检测和禁用接收到BPDU帧的端口,以防止网络中的环路问题。

你可能感兴趣的:(网工知识,网络,网络协议)