[计算机网络】【网络设备】生成树协议 (STP) 您所在的位置:网站首页 网络生成树 [计算机网络】【网络设备】生成树协议 (STP)

[计算机网络】【网络设备】生成树协议 (STP)

2024-07-12 03:59| 来源: 网络整理| 查看: 265

生成树协议 (STP)

STP 的主要任务是防止第 2 层网络(网桥或交换机)出现网络环路。它警惕地监视着网络以找出所有可用链路,并关闭任何冗余链路以确保不会出现环路。STP 首先使用生成树算法( STA) 创建一个拓扑数据库,然后找出并关闭冗余链路。运行 STP 后,数据帧就只能在 STP 选定的最优链路上进行转发。

STP 是一种2层协议,用于维护一个无环路的交换式网络。下图中生成树协议是必需的。

在图中给出了一个带有冗余拓扑(交换环路)的交换式网络。如果不在网络中采取一些2层协议机制来阻止网络环路,此网络就会遇到前面所讨论过的问题:广播风暴、多帧复制以及MAC表不稳定。

应该注意,上图中的网络在不使用STP的情况下有时也是可以运行的,当然它工作起来会非常地缓慢。这个示例清楚地展示了交换环路所能造成的危害。最糟糕的是,一旦网络运转起来,要想找出问题的根源会超级困难!

生成树的一些术语 根桥:根桥是指拥有最佳桥囚的网桥。对于 STP 来说,关键就是要为网络中所有的交换机推选出一个根桥,并使根桥成为该网络中最重要的点。而网络中所有其他决策一一比如哪个端需要阻塞以及哪个端口需要配置为转发模式一一都需要基于与根桥的关系进行选择。一旦网络中的根桥被选举出来,所有其他的网桥都需要确定一个通往根桥的单一路径。通往根桥的最佳路径上的端口就被称为根端口。BPOU:指网络中所有交换机都需要相互交换的、用于根交换机选举的信息,这些信息也会用于网络的后续配置。每台交换机都会对桥协议数据单元 (BPDU) 内的参数进行比较,并将从邻居收到的 BPDU 放入自己的 BPDU 中,然后再将其传送给其他邻居。桥ID:STP使用桥ID跟踪网络中的所有交换机。桥ID由桥优先级(默认情况下所有思科交换机的优先级都为32768)和桥MAC地址共同决定。在网络中拥有最小桥ID的网桥将成为根桥。非根桥:指除了根桥外的所有网桥。非根桥会与所有的网桥交换BPDU,并在所有交换机上更新STP拓扑数据库,以防止环路并对链路失效提供保障措施。端口开销:当两台交换机间存在多条链路时,端口开销用于确定最佳路径。一条链路的开销取决于链路的带宽。根端口:根端口是指与根桥直接相连的链路所在的端口,或者是通往根桥路径开销最低的端口。如果存在连接到根桥的多条链路,那么只有检查每条链路的带宽才能确定根端口,此时最低开销的端口是根端口。如果上行的多台交换机开销均相同,那么就使用带有较低通告的桥ID的那个桥。当多条链路连接到同一台设备时,就使用上行交换机上连接到最低端口号的端口。指定端口:指定端口是专门指定的,通过其根端口到达根桥开销最低的端口。指定端口会被标记为转发端口。非指定端口:非指定端口是指开销比指定端口高的端口。确定根端口和指定端口后剩下的端口就是非指定端口。非指定端口将被设置为阻塞状态,不能进行转发。转发端口:转发端口指能够进行数据帧转发的端口,它可以是根端口或指定端口。阻塞端口:阻塞端口是指不能转发帧的端口,设置阻塞端口是为了避免环路。然而,阻塞端口会始终监听BPDU帧并丢弃其他所有帧。 生成树的操作

正如前面所讲的, STP 的任务就是要找出网络中所有的链路,关闭任何冗余链路,从而阻止网络环路的出现。

为了做到这一点,STP首先选举一个根桥,根桥可以通过所有的端口完成对数据的转发,并且它是该STP域中所有设备的参考点。一旦所有的交换机都同意将某台交换机选为根桥,每个网桥就必须找出属于它自己的一个并且也是唯一→个分派的根端口。任意两台交换机之间的链路必须要有一个而且只能有一个指定端口,该端口位于能够提供到根桥最大带宽的链路上。注意,一个网桥可以通过多个其他网桥到达根桥,也就是说这一路径可能不是最短路径,但一定是最快(具有最大带宽)路径。

显然,根桥上的每个端口都是指定端口(为某个网段的转发端口),因为根桥离自己总是最近的。等到尘埃落定之后,那些既不是根端口也不是指定端口的端口,也就是那些非根端口和非指定端口,全部被设置为阻塞状态,这样就破坏了已构成的交换环路。

在决定航行路线时,如果只有一个人有决定权,事情会进行得异常顺利,因此,在任何给定的网络中,只允许有一个根桥。

生成树的端口状态

对于运行IEEE802.1d STP的网桥或交换机来说,其端口状态会在5种不同的状态间进行转换。

阻塞:被阻塞的端口不能对数据帧进行转发;它只监昕BPDU帧。设置阻塞状态是为了阻止使用有环路的路径。当交换机通电时,所有端口在默认情况下都处于阻塞状态。侦听:端口侦昕BPDU,以确保在开始传送数据帧之前,网络上没有环路出现。处于侦昕状态的端口在没有形成MAC地址表时就准备转发数据帧。学习:交换机端口侦听BPDU,并学习此交换式网络中的所有路径。处在学习状态的端口开始形成MAC地址表,但仍不能转发数据帧。转发延迟是指将端口从侦昕状态转换到学习模式(或从学习到转发模式)所需花费的时间,默认设置为 15 秒,可以用命令:show spanning-tree 查看。转发:端口发送并接收所有桥接端口上的数据帧。如果在学习状态结束时,端口仍然是指定端口;或根端口,那么它就会进入转发状态。禁用:(在技术上它不是一个可转换状态)处于禁用状态的端口(管理上)不能参与帧的转发或组成STP。禁用状态下的端口实质上是不工作的。

在大多数情况下,交换机的端口都处于阻塞或转发状态。转发端口通常是到根桥开销最低(最佳)的端口。但如果网络拓扑发生了改变(可能是因为链路失效或者有人添加了一台新的交换机),就会发现交换机上的端口:在侦听和学习状态之间转换。

阻塞端口是一种预防网络环路的策略。一旦交换机为它的根端口和任一指定端口确定了到达根桥的最佳路径,那么,所有其他的冗余端口都将处于阻塞状态。被阻塞的端口仍可以接收BPDU,只是它们不能再发送出任何帧。

如果由于网络拓扑的改变,交换机迭定一个阻塞端口为指定端口或根端口,那么它将进入侦听模式,并检查所有收到的BPDU,从而确保一旦端口进入转发模式它不会创建网络环路。

会聚

当网桥或交换机上的所有端口都转换到了转发或阻塞模式时,就会形成会聚。在会聚完成之前,无法转发数据。在STP会聚过程中,所有的主机数据都会停止发送!因此,如果你想与网络用户保持良好的关系(或者是长期保持雇佣关系),就必须确保你的交换式网络设计完好,从而使STP能够快速会聚。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有