以太网 传统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都是从根端口中传来的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Hades_Ling

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

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

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

打赏作者

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

抵扣说明:

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

余额充值