当前位置:   article > 正文

STP——STP生成树协议讲解_stp协议

stp协议

目录

STP基本概念

STP端口角色的选举

标准STP协议的两种端口角色

BID与PID介绍

STP选举步骤

选举根桥 

选举根端口RP

选举指定端口DP

选举阻塞端口

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

STP的五种端口状态

STP故障切换

根桥故障

直连故障

间接故障

 STP相关信息查看


STP基本概念

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

为什么二层会环路

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

二层环路带来的影响

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

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

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


STP端口角色的选举

标准STP协议的两种端口角色

根端口RP、指定端口DP、阻塞端口AP(非标准STP协议制定的)

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

BID与PID介绍

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 BPDU报文

端口为shutdown

Blocking

阻塞状态;只接受STP,不发送STP,不学习MAC,不转发用户数据 

端口启用STP,还没被选为根端口或指定端口;或者端口为AP端口也会为此状态

Listening

聆听状态;接受、转发STP,不学习MAC,不转发用户数据           

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

Learning

学习状态;接受、转发STP,学习MAC,不转发用户数据   

端口 Forward delay计时器超时

Forwarding

转发状态;接受、转发STP,学习MAC,转发用户数 

端口 Forward delay计时器超时

状态转变时间 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倍的转发延时后进入转发状态,故障恢复(30s)

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

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

下游交换机等到SW2转发的关于根桥的BPDU20s老化之后,才处理SW2发送的以自己为根的BPDU

下游交换机发现SW2发来的没有根(SW1)的优先级高,则AP转为DP端口,经历2倍的转发延时进入转发状态

SW2收到SW3发来的更优的BPDU后,DP也转为RP端口

总计50s后恢复故障

间接故障

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

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

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

交换机SW2的RP端口等待根桥的BPDU老化(20s),会发送以自己为根的BPDU

下游交换机SW3等到SW2转发的关于根桥的BPDU20s老化之后,才处理SW2发送的以自己为根的BPDU

下游交换机SW3发现SW2发来的没有根(SW1)的优先级高,则AP转为DP端口,经历2倍的转发延时进入转发状态

总计最少70s后恢复故障


 STP相关信息查看

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/428011
推荐阅读
相关标签
  

闽ICP备14008679号