学习总结 --- 生成树协议STP

VTP---第二层冗余功能

                                                                                    保证网络的可靠性

        通过添加设备和电缆来实现备用网络路径,从而提升网络可用性。当有多条网络路径可用于数据传输时,即使一条路径失效,也不会影响网络上设备的连通性。

        在分层设计中,实现冗余功能的方法是在分布层和核心层添加额外的硬件,并通过额外添加的硬件建立备用路径。

 

冗余功能存在的问题

1、广播风暴

       当卷入第 2 层环路的广播帧过多,导致所有可用带宽都被耗尽时,网络无法传送新数据,便形成了广播风暴。此时没有带宽可供正常流量使用,网络无法支持数据通信。

2、重复的单播帧

       单播帧的目的地址不在网络中,所以要以广播的方式,不断的被转发。广播帧并不是会受环路影响的唯一一种帧。发送到环路网络的单播帧也可能造成目的设备收到重复的帧。

3、不稳定的MAC地址表

       每一个交换机收到数据帧(单播帧)之后,将源地址记录,对照目的地址。源地址的mac在交换机接口上不断变换,导致交换机的Mac表不稳定。网络动荡。

 

 

 

 

解决方法---STP(Spanning Tree Protocol)

        STP 会特意阻塞可能导致环路的冗余路径,以确保网络中所有目的地之间只有一条逻辑路径。

        当一个端口阻止流量进入或离开时,该端口便视为处于阻塞状态。

阻塞冗余路径对于防止网络环路非常关键。为了提供冗余功能,这些物理路径实际依然存在,只是被禁用以免产生环路。

        一旦需要启用此类路径来抵消网络电缆或交换机故障的影响时,STP 就会重新计算路径,将必要的端口解除阻塞,使冗余路径进入活动状态。

 

 

算法--Algorithm

01.根交换机选举

        STP 使用生成树算法 (STA) 计算网络中的哪些交换机端口应配置为阻塞才能防止环路形成。STA 会将一台交换机指定为根桥,然后将其用作所有路径计算的参考点。

所有参与 STP 的交换机互相交换 BPDU 帧,以确定网络中哪台交换机的网桥 ID (BID) 最小。BID 最小的交换机将自动成为 STA 计算中的根桥。

        BPDU 是运行 STP 的交换机之间交换的消息帧。每个 BPDU 都包含一个 BID,用于标识发送该 BPDU 的交换机。BID 内含有优先级值、发送方交换机的 MAC 地址以及可选的扩展系统 ID。BID 值的大小由这三个字段共同决定。

 

根桥的选择:

广播域中的每台交换机最初都会将自己视为生成树实例中的根桥,因此其送出的 BPDU 帧中将自己的 BID 作为根 ID。

默认情况下,BPDU 帧是在交换机启动后每 2 秒发送一次,也就是说 BPDU 帧中 hello 计时器的默认值是 2 秒。

每台交换机都维护着有关其 BID、根 ID 以及到根桥的路径开销的本地信息。

当邻接交换机收到 BPDU 帧时,它们会将 BPDU 帧内的根 ID 与本地根 ID 比较。如果 BPDU 中的根 ID 比本地根 ID 更小,交换机便更新本地根 ID 以及它送出的 BPDU 消息内的根 ID。

这些消息的作用:

   (1)告诉网络新的根桥。

   (2)路径开销也会更新,以指出到根桥的距离。

交换机的根 ID 更新后,其送出的所有后续 BPDU 帧都会包含新的根 ID 以及更新后的路径开销。通过这种方式,所有其它邻接交换机就能始终看到最小的根 ID。

随着 BPDU 帧在其它邻接交换机之间传递,路径开销也不断更新,以指示到根桥的总路径开销。生成树中的每台交换机使用其路径开销来指示到根桥的最佳可能路径。

02.端口花费和路径花费

链路速度

10Gb/s

1Gb/s

100Mb/s

10Mb/s

开销

2

4

19

100

到根桥的最佳路径开销——配置端口开销

S1(Config-if)#spanning-tree cost 25  # 配置开销

S1(Config-if)#no spanning-tree cost    # 重置开销

路径花费:从非根交换机到达根交换机的路径花费总和。

1 设置交换机优先级为某一数值    # VLAN 1为管理员

Switch(config)# spanning-tree vlan 1 priority 12345 #缺省优先级32769

2 设置交换机为根

Switch(config)# spanning-tree vlan 1 root primary

3 设置交换机为备份根

Switch(config)# spanning-tree vlan 1 root secondary

03.端口角色

在生成树过程中,交换机端口会被自动配置为四种不同的端口角色。

根端口(RP):非根交换机上离交换机最近的端口。

                   每个交换机上有且仅有一个根端口。

                   每个根端口到达根交换机的距离最短。

指派端口(DP):网络上除根端口外的所有允许转发流量的端口。

                     根交换机和非根交换机上都可以有DP。

                    每个网段都有一个指派端口,该端口是该网段到根交换机最近的交换机上的端口。

非指派端口(链接的,但是被阻塞的)

                    既不是根端口,也不是指派端口的激活端口。

                    非指派端口处于Blocking状态,用来阻止环路

禁用端口(物理关闭的)

                    被管理员实用shutdown命令关闭的端口。

                      禁用端口不参与生成树算法。

生成树端口的五种状态

Blocking                 

接收BPDU,不学习MAC地址,不转发数据帧

Listening                

接收BPDU,不学习MAC地址,不转发数据帧,但交换机向其他交换机通告该端口,参与选举根端口或指定端口。

Learning

接收和发送BPDU,学习MAC地址,不转发数据帧。

Forwarding

正常转发数据帧。

Disable

使用 no shut命令和插入网线,端口进入Down状态。


STP的收敛步骤

1、 选举根桥

      根端口的选举顺序:

           1 最低花费的端口成为根端口。

           2 在花费相同的情况下,比较发送者的BID,BID较小的交换机上的端口成为根端口。

          3 在发送者BID相同的情况下,比较发送者的Port ID,Port ID较小的端口成为根端口。

2、 选举根端口

      交换机比较每个交换机端口的路径开销

3、 选举指定端口和非指定端口

      每个网段上都有一个指派交换机,该交换机负责把网段的数据发往根交换机。指派交换机上的端口叫做指派端口。

      指派端口的选举顺序:

          1 比较花费。路径花费小的成为指派端口。

          2 比较BID。如果花费相同,比较交换机的BID,BID较小的交换机上的端口成为指派端口。

          3 比较PID。如果指派交换机上有多个端口连接到同一网段,则Port ID最小的端口成为指派端口。

既不是根端口也不是指派端口的端口将被阻塞。

当转发端口关闭(例如被阻塞)或某端口在交换机已具有指定端口的情况下转换为转发状态时,交换机会认为自己检测到了拓扑更改。如果检测到更改,交换机会通知生成树的根桥。然后根桥将该信息广播到整个网络。

 

公众号:大学生你懂得

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值