STP生成树协议概念

STP生成树协议

Spaning tree protocol

二层环路的背景

①交换网络需要部署冗余链路

②交换机的工作行为

环路带来的问题

①环路会引起广播风暴。

②网络中的主机会收到重复数据帧

③MAC地址漂移

STP的三个版本

版本标准
STP基于802.1D标准
RSTP快速生成树基于802.1w标准
MSTP多实例生成树基于802.1s标准

一、STP计算过程

基本概念

根桥(root):一个交换网络中只有也根桥设备,整个交换网络的数据转发中心

  • 根据根桥ID选举根桥()
    • 根桥ID:优先级+MAC地址

根端口(RP):每个非根交换机有且仅有一个,用以接收最优BPDU、转发数据

指定端口(DP):每条链路有且仅有一个,用以发送最优BPDU、转发数据

阻塞端口(AP):出去RP、DP端口剩下的即为AP

过程

1.选举一个根桥
  • 启动STP后,每台设备都以为自己是根桥设备,向外发送BPDU,携带选举参数:根桥ID
  • 每台设备收到其他设备的BPDU后,对比根桥ID。
    • 若其他设备根桥ID优于自身根桥ID,则转发其他设备的BPDU
    • 若其他设备根桥ID差于自身根桥ID,则丢弃 其他设备的BPDU

比较规则:

  1. 比较根桥ID先比较优先级,优先级默认为32768(范围 0-65536 必为4096的倍数),数值越小优先
  2. 若优先级相同,则比较MAC地址大小,同样数值越小越好
2.每个非根交换机选举一个根端口(RP)

RP接口是非根交换机去往根桥最近的接口,每台非根交换机有且仅有一个

比较规则:

  1. 比较端口的根路径开销,根路径开销小的选为RP
    • 根路径开销(RPC):去往root的所有路径的开销之和。由链路带宽决定
  2. 根路径开销一致时。比较发送者桥ID,越小越优
    • 发送者桥ID:桥优先级+MAC
  3. 发送者桥ID一致时,比较发送者端口ID,端口优先级数据越小越优
    • 发送者端口ID:端口优先级(0~240,默认为128)+接口编号
3.每条链路选举一个指定端口(DP)

每段链路上最优的接口,每段链路上有且只有一个

比较规则:

  • 与选举RP规则一致
4.阻塞非根、非指定端口(阻塞端口AP)

剩下就是AP端口了

快速判断端口角色
  • 根桥交换机上的所有接口都是DP
  • 非根桥交换机与根桥交换机相连的接口为RP

二、端口状态

​ disabled:接口未使用stp

​ blocking:阻塞状态,AP端口的最终状态

​ listening:监听状态,进行端口角色选举确定自己的端口角色

------------不转发用户流量,不学习MAC地址---------在华为模拟器eNSP中将上述三种状态都归为discarding

​ learning:学习状态,

-----------不转发用户流量,学习MAC地址表

​ forwarding:转发状态,DP/RP端口的最终状态

----------转发用户流量,学习MAC地址表

转变过程:

disable–blocking–listening-(15s)----learing-(15s)-----forwarding

启用STP到正常转发数据至少需要30s

问题:为什么需要30s?

答:STP基于定时器收敛,两次的15s转发延时是为了防止其他设备的端口还未有相应的端口角色,因为STP端口角色选举完成后并不会发送报文,设备间无法得知对方的端口角色是否选举完成,所以设置一个15s的转发延时,保证所有设备都可以收敛完成

三、BPDU

桥协议数据单元

1.类型:配置BPDU/TCN BPDU

2.作用:用于STP选举,维护STP拓扑

内容:

​ a.BPDU的类型字段

​ b.flag:TC位+TCA位

​ c.选举四要素:根桥ID+RFC+发送者桥ID+发送者端口ID

​ d.计时器:

消息类型解释
Message age信息延时,规定网络的直径。消息时间每经过一台交换机加1
Max age老化时间,默认20
Hello timeBPDU发送间隔,默认2s
forward delay转发延时

DP接口负责向外发送本设备最优的BPDU,AP/RP接口负责缓存,维持端口角色

当AP/DP端口在Max age内未收到对应的BPDU时,会丢弃端口缓存的BPDU

在这里插入图片描述

四、STP拓扑变化

判断网络拓扑变化
  • 根桥故障

    • 直接感受根桥失效,则重新进行生成树选举,等待转发延时30s
    • 无法直接感受根桥失效(在根桥交换机和非根交换机上加上hub集线器),需要等待BPDU老化后(20s),再进行STP选举,并等待转发延时30s,共50s延时
  • 直连故障

    • 物理端口down,新的端口角色选举成功后,等待30s转发延时
  • 非直连故障
    在这里插入图片描述

    • SWB与根桥SWA的接口down
    • SWB会误以为自身为根桥向外发送BPDU(次优BPDU),SWC的AP接口不予以回应,需要等待20s的老化时间,AP端口转化为DP端口,向外发送最优BPDU,等待30转发延时 ,共50s延时
拓扑变化过程

在这里插入图片描述

TCN BPDU:由拓扑发生变化的交换机产生,通知上游、根桥交换机网络拓扑发生变化。

  • 只有DP端口会处理

TCA BPDU:响应TCN BPDU报文,通知下游交换机停止发送TCN BPDU

TC BPDU:只能由根桥交换机发出,所有交换机收到TC BPDU 后,会刷新MAC地址表

过程

1.由发生拓扑变化的交换机向上游交换机发生TCN BPDU,上游交换机收到TCN BPDU后会回复TCA BPDU,然后朝着根桥交换机最近的方向转发该TCN BPDU。逐跳重复,直到到达根桥

2.根桥交换机收到TCN BPDU后,回复TCA BPDU,并泛洪TC+ROOT BPDU,泛洪时间为35s

  • 发送17或者18个TC+ROOT BPDU

3.非根交换机收到TC+ROOT BPDU后,将本地MAC地址表的老化时间缩短至15s

  • 若超过2s未收到TC+ROOT BPDU,老化时间恢复为300s
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值