0


STP——STP生成树协议讲解

STP基本概念

STP是生成树协议的缩写,主要用于防止二层网络中的环路问题(三层网络中可以通过IP字段 TTL进行破环)

为什么二层会环路

以太网帧中没有防环字段,帧在转发时没有TTL-1机制

二层环路带来的影响

广播风暴-------------------无休止运行,主机收到广播要交给CPU处理,影响主机性能,可能导致设备宕机

MAC地址漂移-------------MAC地址振荡

单帧多次递交现象--------一般在同一Vlan中出现


STP端口角色的选举

两种端口角色

根端口RP、指定端口DP、阻塞端口AP

  • 标准的STP协议,端口角色只有两种,即RP和DP,没有对Block状态的端口进行角色的定义。
  • 但是在华为的设备上,STP协议将Block状态端口引用RSTP协议的AP端口角色来定义
  • 即AP端口是RSTP协议的端口角色,标准STP种并没有AP端口的定义,只是华为的STP用AP端口来表达端口的状态为Block

首先先了解两个概念

    BID:桥ID(包含交换机的优先级和交换机的MAC地址)

        优先级-----0~65535,缺省32768。并且优先级必须是4096的倍数-----越小越优先

        MAC地址--选择交换机所有端口中最小的MAC地址做比较---------------越小越优先

    PID:端口ID(包含端口的优先级和端口编号)

       优先级-----0~255,缺省128。并且优先级必须是16的倍数--------------越小越优先

       端口编号------------------------------------------------------------------------------越小越优先 

STP选举步骤

  • 选举根桥,同一个二层网络根桥有且只有一个
  • 其它交换机为非根桥,在非根桥上选举根端口(RP),每个非根桥交换机有且只有一个根端口,根桥上不存在根端口
  • 在每条链路上选举一个指定端口,每条链路有且只有一个指定端口(根端口和指定端口不能是同一个端口)
  • 非根端口、非指定端口的端口,就称为阻塞端口

端口角色如何选举

交换机启动后就自动开始进行生成树收敛计算,默认情况下,所有交换机在启动时都认为自己是根桥,自己的所有端口都为指定端口,这样BPDU报文就可以通过所有端口转发。

选举根桥

BID最小的交换机称为根桥(根桥可以被抢夺)

比较桥优先级,越小越优

比较MAC地址,越小越优


选举根端口RP——交换机上能够接收最好的BPDU报文的端口

比较端口收到的BPDU报文中Root ID最小的,为根端口(同一根桥,Root ID是一致的)

比较路径开销,此开销为端口收到的最小路径开销,越小越优

比较对端的BID,选优先级高的

比较对端的PID,选择优先级高的

比较本端口的PID,选择优先级高的


选举指定端口DP——链路上能够发送给根桥的最好BPDU的端口

对于根桥来说,其所有端口一般都为指定端口

比较路径开销,此开销指的是端口发送出去的根路径开销,越小越优先(Eth端口开销默认为20000)

比较本端的BID,选优先级高的

比较本段的PID,选择优先级高的


选举阻塞端口------除了RP与DP外的端口都为阻塞端口AP

STP端口开销计算的3种标准

dot1d-1998 路径开销的计算方法是IEEE 802.1d-1998标准方法(老标准,一般不建议使用)

dot1t 路径开销的计算方法是IEEE802.1t标准方法(新标准,华为默认)

legacy 路径开销的计算方法是华为计算方法(华为私有标准)


STP的五种端口状态

**Disabled ** 禁用 不运行STP

                               接口Shutdown

**Blocking ** 阻塞 只接受STP,不发送STP,不学习MAC,不转发用户数据-----AP端口状态

                                接口启用/根端口和指定端口还没被选为根端口或指定端口

**Listening ** 聆听 接受、转发STP,不学习MAC,不转发用户数据

                                端口被选为根端口或指定端口

**Learning ** 学习 接受、转发STP,学习MAC,不转发用户数据

                                接口 Forward delay计时器超时

Forwarding 转发 接受、转发STP,学习MAC,转发用户数

                                接口 Forward delay计时器超时

状态转变时间

    阻塞 → 聆听 0s~20s时间

    聆听 → 学习 15s时间

    学习 → 转发 15s时间

  所以,STP从开启到转发,最少需要30s,最大需要50s


STP故障切换

根桥故障

1、根桥直接宕机,LSW2和LSW3会直接重新选举根桥

2、当根桥关闭STP之后,停止发送BPDU,无AP端口的交换机发送以自己为根的BPDU报文

有AP端口的交换机等上个根桥的BPDU老化之后再处理此BPDU(20s)

然后根据情况阻塞端口转为指定/根端口需要经历15+15=30s的时间

所以当根桥故障后最大需要50s时间才可以恢复

直连故障

存在AP端口的交换机出现RP直连故障

AP成为新的RP,在经历2倍的转发延时后进入转发状态,故障恢复

不存在AP端口的交换机出现RP的直连故障

该交换机会以自己为根发送BPDU

下游交换机等到上个 根桥的BPDU20s老化之后,处理该BPDU

当下游接口确定是DP端口时,经历2倍的转发延时进入转发状态

总计50s后恢复故障

间接故障

存在AP端口的交换机出现RP的间接故障后

RP的BPDU老化,AP成为新的RP,在经历2倍的转发延时后进入转发状态,50s故障恢复

不存在AP端口的交换机出现RP的间接故障

该交换机会以自己为根发送BPDU

下游交换机等到上个 根桥的BPDU20s老化之后,处理该BPDU

当下游接口确定是DP端口时,经历2倍的转发延时进入转发状态

总计50s后恢复故障


STP相关信息查看

标签: 网络 网络协议

本文转载自: https://blog.csdn.net/m0_49864110/article/details/123549387
版权归原作者 静下心来敲木鱼 所有, 如有侵权,请联系我们删除。

“STP——STP生成树协议讲解”的评论:

还没有评论