当前位置: 首页 > backend >正文

STP协议:如何消除网络环路风暴

生成树协议(STP,Spanning Tree Protocol)的主要功能:

  1. 消除网络环路导致的广播风暴问题(环路会引发MAC地址表不稳定)
  2. 防止网络中的主机接收重复数据帧

STP工作原理:

  1. 选举根桥(Root Bridge,RB)
  2. 在非根交换机上选举根端口(Root Port,RP)
  3. 为每个网段选举指定端口(Designated Port,DP),该端口负责转发BPDU报文(根桥端口默认为指定端口)
  4. 阻塞其他所有端口(Block/Discarding状态)

STP协议定义了三种端口角色:指定端口、根端口和预备端口。

  1. 指定端口(Designated Port,DP,标记:DESI)

    • 功能:负责向所连网段转发配置BPDU
    • 特点:每个网段有且仅有一个指定端口
    • 注意:根桥的所有端口默认都是指定端口
  2. 根端口(Root Port,RP,标记:ROOT)

    • 定义:非根交换机去往根桥的最优路径端口
    • 限制:每台交换机最多拥有一个根端口
    • 例外:根桥上不存在根端口
  3. 预备端口(标记:ALTE)

    • 条件:既非指定端口也非根端口的端口
    • 状态:自动进入阻塞状态
  4. 桥ID组成与选举规则

    • 构成:优先级(0-65535,默认32768)+ MAC地址
    • 选举:STP网络中桥ID最小的交换机成为根桥
  5. 根路径开销(Root Path Cost,RPC)

    • 作用:用于选举根端口和指定端口(值越小越优先)
    • 计算:等于从根桥到该交换机沿途所有入方向接口Cost值的累和

根端口选举规则:

  1. 首先比较路径开销
  2. 若开销相同,则比较桥ID
  3. 若桥ID也相同,则比较端口ID

端口ID说明:

  • 由端口优先级(0-240)和端口号组成
  • 优先级取值规则:
    • 必须为16的整数倍
    • 默认值为128
  • 用于最终确定端口角色

STP协议运行下设备端口存在五种状态:

Forwarding(转发状态)

  • 可转发用户流量和BPDU报文
  • 仅根端口或指定端口可进入此状态

Learning(学习状态)

  • 根据接收的用户流量构建MAC地址表
  • 不转发用户流量
  • 设置此状态可避免临时环路

Listening(侦听状态)

  • 允许转发BPDU报文
  • 禁止转发用户流量

Blocking(阻塞状态)

  • 仅接收并处理BPDU
  • 不转发BPDU和用户流量
  • 预备端口的最终状态

Disabled(禁用状态)

  • 不处理或转发BPDU报文
  • 不转发用户流量

BPDU主要分为两类:配置BPDU和TCN BPDU。

  • 配置BPDU:包含桥ID、路径开销和端口ID等关键参数,用于STP协议的交换机选举和端口状态确定。在网络初始化阶段,所有交换机都会主动发送配置BPDU;当网络拓扑稳定后,仅根桥继续主动发送,其他交换机收到上游BPDU后才会响应。
  • TCN BPDU:当下游交换机检测到拓扑变化时,向上游发送的拓扑变更通知。

配置BPDU核心参数

  1. 根桥ID:由优先级和MAC地址组成,确保STP网络中唯一根桥。
  2. 根路径开销:到达根桥的最短路径开销。
  3. 指定桥ID:指定交换机的优先级和MAC地址。
  4. 指定端口ID:指定端口的优先级和端口号。
  5. 时间参数
    • Message Age:BPDU传播的当前生存时间。
    • Max Age:BPDU的最大保存时间(默认20秒)。
    • Hello Time:BPDU发送间隔(默认2秒,仅根桥触发)。
    • Forward Delay:端口状态迁移延时(默认15秒,含Listening→Learning→Forwarding阶段)。

关键时间说明

  • Hello Time:根桥每2秒发送BPDU,其他设备中继转发。
  • Forward Delay:控制端口状态转换及MAC表刷新。
  • Max Age:新旧BPDU切换的忠诚度判断阈值(20秒)。若Message Age > Max Age则丢弃BPDU;否则接收并转发(每经过一台交换机Message Age+1,仅在MSTP中可修改且需根桥调整生效)。

 

配置所需要的命令: 

[SWA]stp mode stp                        配置交换机的生成树协议模式
[SWA]stp priority 4096                   配置交换机优先级
[SWC]interface GigabitEthernet 0/0/1     进入接口
[SWC-GigabitEthernet0/0/1]stp cost 2000  配置路径开销
[SWA]display stp                         配置验证
http://www.xdnf.cn/news/9645.html

相关文章:

  • 【分治】翻转对
  • jsrpc进阶模式 秒杀js前端逆向问题 burp联动进行爆破
  • 【JavaEE】Spring事务
  • c++设计模式-介绍
  • 摩尔条纹 原理以及matlab 实现
  • 数据结构 - 树的遍历
  • 【JavaEE】-- 网络原理
  • NetLink
  • SNTP在电力系统通信中的应用
  • C# NX二次开发-查找连续倒圆角面
  • GB/T 36140-2018 装配式玻纤增强无机材料复合保温墙体检测
  • 【第2章 绘制】2.7 路径、描边与填充
  • 【C++进阶篇】哈希表的模拟实现(赋源码)
  • WSL中ubuntu通过Windows带代理访问github
  • 【razor】采集的同时支持预览和传输的讨论和改造方案探讨
  • DAY38
  • 整合Jdk17+Spring Boot3.2+Elasticsearch9.0+mybatis3.5.12的简单用法
  • 电化学震荡- N 型负微分电阻
  • Android LiveData 详解
  • QT使用cmake添加资源文件闪退,创建了qrc文件不能添加的问题解决
  • 深圳SMT贴片打样全流程优化方案
  • 在监视器(Monitor)内部,是如何做线程同步的?
  • 半桥栅极驱动芯片D2104M使用手册
  • 虚拟机配置网络
  • mac10.15.7 安装erlang23.3 源码安装(未完待续)
  • Compass Arena大模型竞技场
  • Linux中的Shell脚本基础
  • 易学探索助手-项目记录(十一)
  • Polar编译码(SCL译码)和LDPC编译码(BP译码)的matlab性能仿真,并对比香浓限
  • 96. 不同的二叉搜索树