Spanning Tree Protocol(STP)主要是用在网桥上,用来避免网络回路,并制造冗余连接(也就是保证网络的可靠性).
这里只是一个大概的介绍,具体的还是要去看IEEE 的 802.1D STP的文档。
先看下面的图:
我们可以看到在stp中,只有一个根节点,然后root port指的是将此网桥和root连接起来的那个端口,而designated port指的是在连接这个lan的端口中,距离root最近的那个port。
这里虚线部分就是没有激活的link,而对应的端口也是关闭的,这些连接其实就是冗余连接,当实线的某些连接不可用时,这些虚线部分的一些就会根据stp的算法进行激活。
而要实现stp的这些目标,就需要在各个网桥之间传递相应的帧(比如树的平衡,还有上面所说的情况等等).而这个帧就叫做bridge protocol data units(UPDUS).
在stp中,只有根节点才会生成BPDUS,而另外的节点只会接收BPDUS或者update它。
在stp中,每个端口都有状态,分别是下面5种:
disabled(关闭),blocking(端口启用,可是stp阻塞了它),listening(端口打开,但不能传输数据),learning(学习网桥地址被激活),forwarding(数据能被传输).
来看它的状态图:
这里要注意每个状态的转化都会启动一个相应的定时器。
每个网桥和端口的角色以及状态都依赖于一些设置的参数,这些参数都有默认值,可是也能通过用户控件来改变。
Bridge ID(网桥id),Port ID(端口id)。
而下面的几个参数是用来改变网桥和端口的优先级:
Port cost(端口的权重,值越小,权重越大),Timers(stp使用每个端口,每个网桥都有定时器).
下面来看参数的构成(这里是802.1t,他是改变了一些位的表示,相比于802.1D):
可以看到多了system id位,有了它就可以用4096个不同的网桥id来共享相同的mac地址,之前的话就需要4096个mac地址。这里要注意4096不是一个随机的数字,它表示了在802.1Q协议中最大的vlans数目。
802.1t的改变并没有影响stp,从他的观点来看,桥id就是一个8字节的值,端口id就一个2字节的值。它只是影响了用户空间的config工具。
下面来介绍BPDUs
BPDUS分为两种类型:
1 Configuration BPDU
主要用来防止回路。
2 Topology Change Notification (TCN) BPDU
当整个网络拓扑改变的时候,一个网桥发给根节点网桥 。比如在当前网络加入一个新的网桥。
来看他们帧的结构:
这里的protocol id和version字段是为了标示stp,rstp还有mstp这几个的区别(后两种都是stp协议的增强),其中后两种linux内核还没有实现。
通过上面的帧的结构那张图我们能看到一个configuration bpdu的所有域,这里重点看一下它的priority vector,它又4个字段组成:
Root Bridge ID, Root Path Cost, Bridge ID, and Port ID,而两个优先级向量之间的比较是每个字段依次比较的。也就是说通过这个我们就能确定根节点。
接下来看当一个网络拓扑改变后会发生什么事。
在上面的这个图中,a2和d1中的网络断掉了,此时a2将会连接到d2.
当改变后a2将会开启定时器然后发送tcn到d2,然后d2也会开启定时器,发送tcn到c1,当c1接收到tcn后,他会发送一个config bpdu with tca flag,当a2接收到这个帧后,就会关闭定时器,然后此次拓扑修改就完成。
最后我们来看一下当新加入一个网桥后,会出现的情况。
每一个新加入的网桥都会首先认为自己是根节点,因此它就会发送一个config bpdu,然后他也会接收到一个根节点传过来的bpdu,通过优先级向量的比较,当它的优先级低时,就会设置根节点为本身网络的根节点,而当他优先级高的时候,所有接收到它的bpdu的帧的端口也都修改相应的值。
我这里只是介绍了协议的大概,比如定时器一些都没有涉及,详细的介绍还是应该去看ieee的specifications和源码。
而另外的rstp和mstp都是思科提出来的,内核暂时还没有实现,因此这里就没有介绍。。
- 大小: 54.7 KB
- 大小: 20.8 KB
- 大小: 34.9 KB
- 大小: 36.5 KB
- 大小: 24.8 KB
- 大小: 97.4 KB
分享到:
相关推荐
1. STP概述:STP(Spanning Tree Protocol)是一种二层链接管理协议,它通过在交换机或桥接器之间通过多条路径互连时防止环路的形成。STP实现了IEEE 802.1D标准算法,通过交换BPDU(Bridge Protocol Data Units,桥...
快速生成树协议(Rapid Spanning Tree Protocol,简称RSTP)是STP(Spanning Tree Protocol)的一个增强版本,由IEEE 802.1D标准定义的STP发展而来,旨在解决网络中的环路问题,提高网络的收敛速度。在RSTP中,网络...
Spanning.Tree.Protocol.pdf
**生成树协议(Spanning Tree Protocol, STP)**是一种用于局域网(LAN)的网络协议,旨在解决网络中的环路问题并确保网络的稳定运行。在DES-3226S这样的交换机上配置STP是确保网络拓扑无环、避免广播风暴和循环数据...
在STP的基础上,为了解决STP收敛速度慢的问题,出现了快速生成树协议(RSTP, Rapid Spanning Tree Protocol),这是IEEE 802.1w标准的一部分。RSTP提供了更快的收敛速度,减少了在网络发生故障后重新计算生成树并...
**生成树协议(Spanning Tree Protocol)详解** 生成树协议(Spanning Tree Protocol,STP)是局域网(LAN)中的一种网络协议,它的主要目的是防止网络中的循环路径,这些循环路径可能导致广播风暴和数据包丢失。...
1. 设置STP模式:使用`config spanning-tree mode`命令,可以选择802.1d STP或802.1w RSTP模式。 2. 创建/删除STP域:通过`create stpd`和`delete stpd`命令可以创建或删除STP域,但默认的default STP域不可手动...
全面扼要介绍Spanning-Tree的一个文档,条例比较清楚。
自己整理了一下华为RSTP(Spanning Tree Protocol) 生成树协议资料以思维导图形式呈现,网络小白,初来乍到,请多指教
### Spanning Tree Protocol (STP) 与 PortFast 特性详解 #### 一、Spanning Tree Protocol (STP) 概述 Spanning Tree Protocol(STP)是一种用于防止局域网(LAN)中出现环路的协议。在多交换机组成的网络环境中...
This chapter describes how to configure the Spanning Tree Protocol (STP) on port-based VLANs on the Catalyst 3560 switch. The switch can use either the per-VLAN spanning-tree plus (PVST+) protocol ...
Spanning Tree Protocol 生成树协议flash
在网络可靠性方面,GigaX 2024支持Spanning Tree Protocol(STP),防止环路出现,增强网络稳定性。此外,它还提供了两种优先级级别的规则基础服务质量(QoS,Quality of Service),确保关键数据流的优先处理。最多...
**MSTP (Multiple Spanning Tree Protocol) 和 RSTP ( Rapid Spanning Tree Protocol)** MSTP 和 RSTP 是两种用于 Ethernet 局域网的桥接协议,旨在防止环路并确保网络的稳定性和可靠性。它们是 STP(Spanning Tree...
在计算机网络中,为了确保网络的稳定性和无环路运行,生成树协议(Spanning Tree Protocol, STP)扮演着至关重要的角色。STP是解决局域网(LAN)中循环路径问题的有效方法,它通过创建一个逻辑上的树形结构,从而...
Spanning tree protocol simulation using packet tracer.
在本实验中,我们将了解Catalyst 3550Multilayer Switch的基本配置和操作,包括VLAN的配置、Spanning Tree Protocol的配置、Trunk的配置等。 一、VLAN的配置 在Catalyst 3550Multilayer Switch中,可以创建多个...
生成树协议(Spanning Tree Protocol,STP)是一种解决网络环路问题的协议,它在交换网络中提供冗余备份链路,并且解决交换网络中的环路问题。生成树协议的特点是收敛时间长,需要花费大概 30~50 秒的时间。在许多...
生成树协议STP(Spanning Tree Protocol)是一种网络协议,用于防止网络中出现环路。STP的主要功能是通过选择一个根交换机,并将网络分割成多个树形结构,从而避免环路的产生。在本实验中,我们使用锐捷交换机S2126G...