首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >爱情就像 STP 生成树协议,哪怕有再多的干扰和潜在分歧,我们也能找到最优路径,让爱稳稳流动,不会陷入迷茫的循环——基于华为ENSP的STP生成树协议深入浅出(1)

爱情就像 STP 生成树协议,哪怕有再多的干扰和潜在分歧,我们也能找到最优路径,让爱稳稳流动,不会陷入迷茫的循环——基于华为ENSP的STP生成树协议深入浅出(1)

作者头像
盛透侧视攻城狮
发布2025-02-12 10:00:01
发布2025-02-12 10:00:01
3500
举报

本篇技术博文摘要 🌟

  • 本文介绍了生成树协议(STP)的基本概念与工作原理,包括STP在防止广播风暴、MAC地址表翻摆和重复数据帧中的作用。
  • 文章详细阐述了STP中的关键概念,如桥ID、根网桥、开销、根路径开销等,并解释了BPDU(桥协议数据单元)的作用及其报文格式,包含协议版本、BPDU类型、拓扑变更标记等字段。
  • 还介绍了TCN BPDU在拓扑变化中的作用,以及STP角色选举过程中的不同角色(如根网桥、根接口、指定端口等)和接口的选举原则,有助于理解如何在交换网络中优化数据流向并维持网络稳定性。

1.STP----生成树协议

  • 目的:解决二层环路问题
image-20240528183829573
image-20240528183829573
广播风暴

  • -广播帧在二层环路中形成逆时针和顺时针转动环路,并且无限循环,最终造成设备宕机,网络瘫痪。
MAC地址表的翻摆(漂移)

  • 同一个数据帧,顺时针接收后记录MAC地址信息,之后,逆时针再记录一遍,如此循环,导致MAC地址表内容一直在变化
多重复数据帧

补充之:802.1D生成树

  • 802.1D---标准的STP协议
  • 802.1W---快速生成树---RSTP
  • 802.1S---多生成树协议---MSTP
  • PVST--思科
  • VBST--华为

2. STP基本概念

桥ID---BID

  • 每一台运行了STP协议的交换机都拥有一个唯一的桥ID
  • 桥ID===16bit的桥优先级+48bit的桥MAC地址
  • 默认值=32768,修改时必须为4096的倍数
根网桥--根桥

  • 根网桥指的就是STP树的树根节点
image-20230414143208956
image-20230414143208956

  • 在交换网络中,STP协议开始工作后,第一件事就是在网络中选举出一台设备作为根网桥,根网桥有且只有一个
  • 所有的数据流量再流通的过程中,都会经过根网桥设备
开销(Cost)和根路径开销(RPC)
image-20230414145904140
image-20230414145904140

  • 每一个激活了STP的接口都维护着一个Cost值,接口的Cost主要用于计算RPC。
  • 默认情况下,交换机使用IEEE 802.1t标准计算接口开销值。需要保证交换网络中所有设备的STP开销值算法一致
接口ID---PID

  • 用来标定同一个设备上不同接口的
  • 16bitPID===4bit接口优先级+12bit接口编号
  • 接口优先级默认值=128,修改时必须为16的倍数

3.STP报文---BPDU

什么是BPDU

  • BPDU:网桥协议数据单元
  • 配置BPDU----协商参数,保活
  • TCN BPDU----拓扑变更通知BPDU
  • 数据帧的目的MAC地址是组播MAC地址:0180-c200-0000
配置BPDU

  • 在交换网络的初始化过程中,每一台交换机都会从自己身上激活了STP协议的接口向外发送配置BPDU
  • 当STP协议收敛完成,只有==根网桥==才会周期性(2s)发送配置BPDU;其他非根网桥只有在收到了根网桥发送的BPDU后,才可以发送自己的BPDU
配置BPDU报文格式如图所示:
image-20221019174257022
image-20221019174257022
配置BPDU报文格式字段信息补充:
PVI---协议版本信息:

  • STP=0
  • RSTP=2
  • MSTP=3
BPDU Type---BPDU类型

  • 0x00--配置BPDU
  • 0x80--TCN BPUD
  • 0x02--RSTP或MSTP的BPDU
标记

  • 最高位置为1,则代表TCA,拓扑变更确认标记
  • 最低位置为1,则代表TC,拓扑变更标记
消息寿命

  • 代表该BPDU从发出到现在所经过的设备数量,单位为设备数量
  • 初始值=0,每经过一台交换机,数值+1
  • 存在一个Max Hop参数---最大消息寿命,默认20
最大寿命----最大生存时间

  • 缺省值20S,当超过该时间还没有从接口收到BPDU报文,认为该接口所在链路或根网桥故障

4.TCN BPDU

TCN BPDU 作用:
image-20230414165037109
image-20230414165037109

  • 在网络拓扑发生变化时,向根网桥通知变化的发生
拓扑改变导致MAC地址表变化的通信过程

  1. 本地交换链路发生故障后,STP协议会重新收敛--收敛时间比较长,就会导致在这段时间内,数据通讯发生障碍。为了加快全网交换机的MAC地址表刷新,故障交换机会向本地所有接口发送TCN BPDU报文
  2. 邻居收到TCN报文后,回复一个TCA标记位置为1的配置BPDU报文,用于保障数据通讯可靠性
  3. 这个过程会一直持续到根网桥收到TCN报文
  4. 根网桥收到TCN报文后,会将自己的MAC地址表的老化时间从300S修改为15S,并向所有接口发送TC标记位置为1的配置BPDU
  5. 设备收到TC标记位的BPDU,会将本地MAC地址表中所有表项的老化时间临时性修改为15S

5.STP角色选举

角色及接口介绍:

根网桥--RB

  • 选举范围:整个交换网络
  • 选举方法:选举具备最小BID数值的设备。
  • 默认情况下,所有设备的桥优先级都=32768,因此根据桥优先级对比不出根网桥,通过对比最小MAC地址来确定根网桥的位置。----通过配置BPDU
  • 根网桥的地址是可抢占的。---一般情况下,会将根网桥的桥优先级设定为0,来保障根网桥的角色不会被抢占,从而引发STP协议的重新收敛,导致数据不通。
根接口---RP

  • 根接口是每一个非根网桥设备上==所有接口中收到最优BPDU的接口==----每一个非根网桥在STP树上“朝上”的接口,距离根网桥最近的接口
  • 选举范围:每一个非根网桥,只会选举一个接口作为根接口
最优BPDU比较原则

  1. 选择具有最小根桥ID的BPDU:实际上是在全网中选举出根网桥
  2. 比较入向配置BPDU的RPC数值,选择最小的接口作为根端口。
  3. 比较对端设备的BID,选择BID小的设备所对应的接口作为根端口
  4. 对比对端的PID,PID小的端口所对应的端口为根端口
  5. 对比本地的PID,PID小的端口称为根端口
指定端口--DP
对于根网桥

  • 选举范围:在每条链路(网段)中选举一个指定端口。
  • 该端口是该链路上到达根网桥的最优接口。——距离根网桥最近
  • 负责向该网段(链路)发送BPDU报文
对于非根网桥

  • DP是指所有接口中收到最优BPDU的接口将成为该设备的根接口。
  • 然后设备根据收到的最优BPDU,来为设备上的其他接口各自计算一个BPDU报文,并且将其保存在接口中。
  • 然后使用计算出的BPDU报文与接口上收到的BPDU报文进行对比。
    • 如果自己的更优,则本接口为这个链路上的指定端口
    • 如果对方更优,则本接口会成为这个链路上的非指定端口
  • 最优BPDU比较内容
    • RPC
    • BID
    • PID
  • 一般而言,根网桥的所有接口都是指定接口;存在根端口的链路上,对端必然是指定端口
非指定接口-NDP

  • 经过STP计算后,交换机上某些接口既不是根端口,也不是指定端口,则称为非指定端口而STP协议会在逻辑上阻塞非指定端口,从而打破二层环路
被阻塞的端口-Blockport

  • 既不会发送和接收业务数据,也不会发送BPDU报文,但是可以接收BPDU报文
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-02-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本篇技术博文摘要 🌟
  • 1.STP----生成树协议
    • 广播风暴
    • MAC地址表的翻摆(漂移)
    • 多重复数据帧
    • 补充之:802.1D生成树
  • 2. STP基本概念
    • 桥ID---BID
    • 根网桥--根桥
    • 开销(Cost)和根路径开销(RPC)
    • 接口ID---PID
  • 3.STP报文---BPDU
    • 什么是BPDU
    • 配置BPDU
  • 4.TCN BPDU
    • TCN BPDU 作用:
    • 拓扑改变导致MAC地址表变化的通信过程
  • 5.STP角色选举
    • 角色及接口介绍:
      • 根网桥--RB
      • 根接口---RP
      • 最优BPDU比较原则
      • 指定端口--DP
      • 非指定接口-NDP
      • 被阻塞的端口-Blockport
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档