以太网 传统STP生成树的BPDU介绍、STP端口状态介绍与切换过程,STP详细的工作过程。

2.10.1 以太网 传统STP生成树(STP BPDU、STP端口状态、STP工作过程)

STP生成树协议的之间的交互通过STP BPDU(根协议数据单元,Bridge Protocol Data Unit)进行。

STP BPDU主要分为:

  • 配置 BPDU(Configuration BPDU),是STP进行拓扑计算的关键。

  • 拓扑改变 BPDU(Topology Change Notification BPDU),网络拓扑发生变更时触发。

STP BPDU报文格式:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

STP端口状态:

当交换机开启STP协议之后,交换机所有端口将需要经历5种端口状。

进行端口状态划分与切换的原因:

  • STP需要经历一个计算的过程,而不同端口状态下需要经历的时长也不同,为的就是能让STP有一个计算的过程。

  • 如果设备接入直接使用,将会因为STP没有来的及计算拓扑变更而造成短暂的环路。

STP有哪些端口角色:

  • 已禁用(disable)

    • 没有启用STP协议时所处的状态
    • 处于禁用状态的交换机端口不会参与生成 树,并且也不会转发帧。
    • 当交换机端口被管理禁用时, 这个端口也会设置为禁用状态。
  • 阻塞(bloking)

    • 此状态下只接收BPDU,不发送BPDU,不学习MAC,不转发用户数据。
    • 接收BPDU的原因是为了进行端口选举。
    • 经过20秒的监听,如果没有被选为根端口或指定端口,将一直处于该状态下。
  • 侦听(listening)

    • 阻塞状态下的20秒监听发现自己比对端更优先,将成为侦听状态,向外发送BPDU。
    • 此状态下接收、转发BPDU,不学习MAC,不转发用户数据。
    • 经过15秒的监听,如果没有接收到更优的BPDU将成为根端口/指定端口,并进入学习状态。
  • 学习(learning)

    • 接收、转发BPDU,学习MAC,不转发用户数据。
    • 此状态下能够接收到用户的数据,不转发数据但记录端口传来的数据帧源MAC地址。
    • 经过15秒的监听,如果没有接收到更优的BPDU将成为根端口/指定端口,并进入学习状态。
  • 转发(forwarding)

    • 接收、转发BPDU,学习MAC,转发用户数据

在这里插入图片描述

STP工作过程:

  1. 选举根桥(Root Bridge)

    • 当设备刚启用STP启用的STP的设备刚开机时,设备默认自己是根桥,所有端口都不会阻塞,并主动向外发送BPDU。
    • BPDU中描述了自己的设备优先级MAC地址,设备优先级越小越优先,MAC地址越小越优先。
    • 如果15秒转发延迟之后没有收到比自己更优的BPDU信息,自己将稳做根桥。
  2. 选举根端口(RP,Root Port)

    • 设备成为根桥后将会定时向外发送BPDU,STP模式只有根桥发送BPDU

      • 定时器
      • Hello 计时器
        • 发送BPDU 的间隔。
        • 这个值默认为2秒,可修改为 1 到 10 秒之间的值,该值过小将增大网络的负载。
      • 转发延迟计时器
        • 转发延迟是在侦听学习状态中消耗的时间,通常是Hello的4倍。
        • 这个值默认为 15 秒,不过可以修改为4到 30 秒之间的值。
      • 最大老化时间计时器(在没有收到Hello报文时开始计时)
        • 这个值默认为 20 秒,不过可以修改为 6 到 40 秒之间的值
    • 非根桥设备通过接收根桥发来的BPDU计算出到达根桥的根路径开销

      • 端口链路的带宽将影响路径的开销,默认华为设备的参考带宽值为:
      • 修改开销标准:stp pathcost-standard <改变STP-Cost开销标准>
      • 直接修改开销:stp cost 10
        在这里插入图片描述
    • 根路径越小越优先,更具有优先级的端口将成为根端口。

  3. 选举指定端口(DP,Designated port)

    • 根桥所有端口都是指定端口
    • 非根桥所有端口,默认也是指定端口,但会因为端口的选举而出现根端口、阻塞端口等。
  4. 选举阻塞端口

    • 两台非根桥互连接口都是指定端口,将会选举出一个阻塞端口。
      • 华为设备中叫(AP,Alternate Port)其它设备中通常叫(BP,Backup Port)
      • DP与RP一样,可以向外发送BPDU。
      • 当DP收到BPDU之后,将进行一个对比,优先的将继续成为DP,次优的将成为AP。
    • (1)比较设备优先级+MAC地址(MAC地址和优先级越小,越是能成为指定端口)
    • (2)比较端口优先级+端口序号(端口序号越小,优先级越大,越是能成为指定端口)
      • 端口优先级默认128,
      • 端口优先级的表示(前4bit是接口优先级、低12bit是接口编号)
      • 128.22[默认优先级128,接口号e0/0/22]
      • 个别端口如eth-trunk接口会默认分配一个接口编号
      • 为什么端口优先级的步长是16?
      • 已知PID占位4个字节(16bit)
        • xxxx 0000,0000 0000
        • 前4bit为优先级,后12bit为端口编号
        • 当第4个x置1,以每8位为一组数,也就是0001 0000 = 16
        • 当第3个x置1,也就是0010 0000=32.0
    • 优先级低的将成为阻塞端口。

在这里插入图片描述


一阵捣鼓下来,简单说下一些小细节:

  • DP收到对端传来的BPDU,发现自己是最优的没有成为RP,而是成为DP。与根桥所有端口都是指定端口前后呼应。
  • DP收到对端传来的BPDU,发现自己是次优的将成为RP,与根端口选举前后呼应,因为最优的BPDU都是从根端口中传来的。
  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
生成树协议(Spanning Tree Protocol,简称STP)是一种用于以太网网络中的冗余路径消除和环路防御的协议。它的主要目标是确保网络中没有环路,并且提供备份路径以提高网络的可靠性。 STP的实现原理如下: 1. 选择根桥:在一个以太网网络中,首先需要选择一个根桥(Root Bridge)。根桥是拥有最小桥优先级(Bridge Priority)和最小MAC地址的交换机。所有其他交换机将以根桥为参考点构建生成树。 2. 计算路径代价:每个交换机会计算到根桥的路径代价。路径代价由端口的桥优先级和端口的路径开销(Path Cost)累加而成。路径开销是通过链路速率计算得出的,较高速率的链路具有较低的路径开销。 3. 选择根端口:每个非根桥都会选择一个根端口(Root Port),即指向根桥的最佳路径。选择根端口的依据是路径代价,选择路径代价最小的端口作为根端口。 4. 选择设计端口:在每个交换机上,除根端口外的其他端口都需要选择一个设计端口(Designated Port)。设计端口是指在一个局域网中负责转发数据的端口。当有多个端口连接到同一个局域网时,根据路径代价选出路径最短的端口作为设计端口。 5. 阻塞端口:为了消除环路,STP会将某些端口设置为阻塞状态。阻塞端口不会转发数据帧,仅用于提供备份路径。STP使用BPDU(Bridge Protocol Data Units)进行交换,通过BPDU交换,交换机之间建立拓扑信息,识别并阻塞冗余路径。 6. 监控链路状态STP会持续监控网络中的链路状态。如果发现某个链路故障或新的链路加入,STP会重新计算生成树并更新端口状态,以适应新的拓扑结构。 通过以上过程STP能够自动构建一个无环的生成树拓扑结构,保证数据在网络中的可靠传输。当网络发生链路故障或拓扑变化时,STP能够快速适应并重新计算生成树,确保网络的连通性和可用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hades_Ling

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值