【25软考网工】第三章(4)生成树协议、广播风暴和MAC地址表震荡

目录

一、生成树协议

1. 生成树技术背景

1)单链路上行存在单点故障

问题本质 :交换机单链路上行存在单点故障风险,线路和设备均不具备冗余性

故障影响任何链路或设备故障 都会导致网络中断,如PC访问Server时任一中间节点故障都会断网

2)二层环路问题

冗余拓扑与环路关系

解决方案:环形拓扑可解决单点故障(如三台交换机环形连接)

新问题:冗余拓扑会引发二层环路,相比三层环路更危险:

  • 三层环路:可通过路由协议和TTL值(最大255跳)控制风险
  • 二层环路 :会永久循环传播,无自愈机制,是网络故障的主要诱因
    结果:导致广播风暴、MAC表震荡

3)二层环路问题------广播风暴

形成机制:广播帧(如ARP请求)在环路中被交换机无限泛洪

危害表现

  • 设备影响:严重消耗CPU资源(利用率飙升)
  • 网络影响 :大量占用带宽,导致正常业务受阻
    广播风暴现象 :
    网络慢、接口指示灯高速闪烁、CPU使用率高、CLI卡顿、远程管理卡或登录不上。

实验验证 广播风暴

实验设计

  • 使用三台交换机环形连接(关闭STP功能undo stp enable)
  • PC发送ARP请求触发广播风暴

关键现象

  • 抓包显示相同ARP报文海量重复(4万+)
  • CPU利用率从20%飙升至30%+
  • 命令行操作延迟明显增加

故障特征
典型表现

  • 网络响应缓慢/部分用户无法上网
  • 接口指示灯高速闪烁(绿色)
  • 设备CPU高负载
  • CLI操作卡顿,远程登录困难

诊断技巧

  • 抓包可见大量相同报文循环
  • 区别于ARP攻击(报文内容不同)

应急处理

  • 标准方案:启用STP协议自动阻塞冗余链路
  • 手动处置(当STP失效时):
    +** 二分法排查**:按端口分组关闭(如先关1-12口,逐步缩小范围)
    • 物理隔离:对无法远程设备采用插拔网线方式
  • 关键注意:接口指示灯变黄通常表示速率协商问题,非环路特征

例题1:二层环路故障现象

正确选项:D (黄灯表示速率/双工协商异常)

排除依据:

  • A/B/C均为广播风暴典型表现
  • 绿灯高速闪烁才是环路特征

延伸知识:

  • 千兆接口降速至百兆可能亮黄灯
  • 厂商差异:部分设备用黄灯表示更高速率(如2.5G)

4)二层环路问题------ MAC地址表震荡

环路引发机制 :当网络存在二层环路时,交换机会从不同接口重复收到相同数据帧,导致MAC地址表项在多个接口间不断更新。

学习过程异常

  • 初始状态:SW3未记录目的MAC时进行泛洪
  • 环路传播:SW1/SW2收到帧后既学习源MAC又继续泛洪
  • 震荡形成:SW3从GE0/0/1和GE0/0/2交替收到PC的帧,导致MAC表项在接口1和2之间反复变更

典型表现:PC的MAC地址(如0050-5600-0001)在交换机接口记录中不断切换位置

实验验证 MAC地址表震荡的现象

正常状态特征

  • 稳定记录:MAC地址固定显示在正确接口(如GE0/0/3)
  • 动态学习:类型标记为dynamic,VLAN默认为1(未划分时)

震荡状态特征

  • 接口跳变:MAC地址在GE0/0/1和GE0/0/2间频繁切换
  • 刷新异常:display mac-address显示同一MAC在不同接口快速交替
  • 告警提示:系统日志出现"MAC move detected"和"Flapping port"警告

关联现象

  • ARP风暴:抓包显示大量重复ARP请求(如47000+条记录)
  • 通信故障:ping测试出现100%丢包(Destination host unreachable)

MAC地址表震荡的解决

  • 临时解决方案:

    • 手动断环:通过shutdown命令关闭环路中的一个接口(如GE0/0/2)
    • 效果验证:MAC地址表立即停止震荡,ARP报文停止泛洪
  • 根本解决措施:

    • STP协议:部署生成树协议自动阻塞冗余链路
    • 拓扑优化:合理规划网络架构,避免物理环路形成
  • 诊断技巧:

    • 观察顺序:先查MAC表震荡,再确认ARP风暴
    • 日志分析:重点关注"MAC move detected"告警信息
    • 模拟器注意:真机MAC地址不可修改,但实验环境可调整(如改为5489-9806-0001)

2.冗余性网络环境

1) 冗余网络中的二层环路问题

必要性: 大型网络中的冗余设计必不可少,用于提高网络可靠性

环路现象 : 冗余设计会导致多个物理二层环路,如示例拓扑中可见上、中、下多个环路
三大问题:

  • 广播风暴:环路会导致广播包无限循环
  • MAC地址表震荡:设备无法稳定学习MAC地址
  • 网络性能下降:带宽被无效流量占用

2)解决方案

核心技术: 通过STP(生成树协议)解决

  • 作用原理:逻辑阻塞冗余链路中的部分端口
  • 实现效果:既保持网络冗余性,又消除环路
  • 运行机制 :通过BPDU报文选举根桥、确定最优路径
    关键优势:
  • 自动检测环路
  • 动态调整网络拓扑
  • 故障时快速启用备份链路

3 .知识小结

知识点 核心内容 考试重点/易混淆点
生成树协议(STP)技术背景 交换机单链路上行存在单点故障问题,冗余拓扑可解决但会引入二层环路风险 单点故障与冗余设计的矛盾关系
二层环路危害 1. 广播风暴:广播报文无限循环; 2. MAC地址表震荡:MAC地址学习端口频繁跳变 广播风暴与MAC地址震荡的关联性
广播风暴现象 1. 网络延迟/部分终端断网; 2. 接口指示灯高速闪烁; 3. 设备CPU利用率飙升; 4. 管理界面卡顿/登录失败 指示灯状态(高速闪烁≠黄灯)
环路排查方法 1. 二分法关端口:分批次关闭端口排查; 2. 抓包特征:相同报文海量重复; 3. 对比ARP风暴(差异:中毒报文内容不同) 二分法操作流程与ARP风暴鉴别
STP核心价值 通过阻塞冗余链路自动破除环路,同时保留故障切换能力 STP与手动关端口的本质区别
实验演示要点 1. 关闭STP后ARP广播风暴实测; 2. MAC地址表跳变观察; 3. 真机与模拟器效果差异 实验中的报文编号观察技巧

一、生成树技术STP

1.生成树基本概念


概念 :生成树技术(Spanning-tree)在网络中存在二层环路时,通过逻辑阻塞 特定端口,从而打破环路 ,并在网络出现拓扑变更时及时收敛,保障网络冗余性

两个核心功能 :防止二层环路和保障网络冗余性。

  • 防环机制:通过逻辑阻塞(Block)特定端口来打破网络中的二层环路。
  • 冗余机制:当网络拓扑发生变更时能及时收敛,重新激活被阻塞端口,保证网络连通性。

1)网络出现故障情况

  • 故障响应:当SW1和SW3间链路故障时,STP会重新计算拓扑,将原先阻塞的端口恢复为转发状态。
  • 冗余验证:此过程验证了STP的第二个核心功能------通过拓扑收敛保障网络冗余性

2)网桥ID(Bridge ID,简称BID)


组成结构 :桥ID(Bridge ID)共8字节,包含**2字节优先级和6字节MAC地址。**
优先级规范

  • 默认值:32768
  • 最小值:0
  • 调整步长:4096的倍数(次小值为4096)
    MAC来源 :使用交换机 背板MAC地址 作为ID的MAC部分。

3)路径开销(Path Cost)

  • ** 基本特性**:
    • 端口量属性,用于STP/RSTP链路选择
    • 路径开销与端口带宽成反比关系
  • 华为标准
    • 默认采用802.1t标准(计算时一般采用802.1d)
    • 可选标准包括802.1d-1998和私有legacy标准
  • 典型值对照
    • 10M:802.1t=2000000,802.1d=100
    • 100M:802.1t=200000,802.1d=19
    • 1000M:802.1t=20000,802.1d=4
    • 10G:802.1t=2000,802.1d=2

2. STP选举操作

四步选举过程:

  • 第一步:根桥选举(选优先级和MAC地址最小的网桥)
  • 第二步:根端口选举(非根桥的端口到根桥最近的端口)
  • 第三步:指定端口选举(先选制定桥,指定桥上为指定端口)
  • 第四步:非指定端口(阻塞端口)确定

1)根桥、根端口、指定端口、非指定端口的选取

第一步:选根桥BID(优先级和MAC地址最小)

选BID最小的

如下图,先看优先级,均为32768无法选出,再看MAC地址,SW1最小
第二步:根端口 (非根桥到根桥最近的端口)

其他网桥到根桥最近的端口,如下图为下图黄色圆标记的接口

100M开销为19,10M开销为100

第三步:每个段选择一个指定端口

每个网段选择一个指定端口;根桥上的接口都是指定端口

选举规则

  • 特例原则:根桥上的所有端口都是指定端口
  • 段内选举:每个网段选一个指定端口,先选指定桥(到根桥路径开销最小的桥SW2),再选指定端口
  • 判定方法:指定桥上的端口即为该网段的指定端口

实用结论

  • 根端口的对端必定是指定端口
  • 指定端口的对端可能是根端口或阻塞端口

比较顺序:与根端口选举相同(开销→桥ID→端口ID)

第四步:非指定端口

定义 :既不是根端口也不是指定端口的端口
状态处理 :会被阻塞(Blocking)形成逻辑断开
故障切换:当活动链路故障时,阻塞端口会转变为转发状态实现冗余

2)应用案例

1.例题1:接口阻塞

下图中哪个接口会被阻塞?

  • 第一步:选根桥(优先级一样,看MAC地址,选出SW1)
  • 第二步:选根端口RP(SW2与SW1的相连的端口为根端口,SW3与SW1的相连的端口为根端口)
  • 第三步:选指定端口DP(根交换机上的端口都为指定端口;指定桥选SW2,指定桥上的端口为指定端口)
  • 第四步:非指定端口(SW3与SW2相连的端口为非指定端口)
2.例题2:接口带宽变化


特殊变化 :SW2-SW3链路接口带宽降为10M(开销100)
根桥 :SW1(MAC地址最小)
根端口重选

  • SW2选与SW1相连的为根端口
  • SW3到根桥路径:直连100M(开销100) vs 经SW2的两段100M(开销38)
  • SW3选择开销更小的路径(经SW2)

指定端口确认 :根端口对端(SW2端口)自动成为指定端口
结果:SW3直连根桥SW1的端口被阻塞

3.例题3:四台交换机网络接口阻塞
  • 选根桥:SW1
  • 选根端口RP(SW2、SW3与根桥相连的端口,SW4两边花销一样,桥ID判断得左边端口)
  • 指定端口DP(根桥相对的是指定端口,DP对面是指定端口,SW4-SW3中SW3为指定桥
  • SW4右侧端口为非指定端口

3. 几种生成树协议总结


STP(802.1d) : 传统生成树协议,收敛速度慢(30-50秒),通过阻塞端口消除环路

RSTP(802.1w): 快速生成树协议,收敛速度快(6秒内),改进端口状态机制

MSTP(802.1s) : 多生成树协议,支持多个VLAN负载均衡,可同时利用多条链路

应用现状: 目前最常用的是MSTP,因其能有效利用带宽资源

4. 应用案例

1)例题1:网桥ID与根端口

  • 根桥选举: 根据桥ID(BID)最小值原则,数值3最小成为根桥
  • 根端口选择: 比较根路径开销(RPC),相等时比较发送方桥ID和端口ID。开销:向左2,向右1,向下4
  • 解题技巧: 题目简化了实际BID结构(优先级+MAC地址),只需理解最小值原则
  • 答案:A,B

2)例题2:网桥ID定义

BID组成: 2字节优先级(默认32768) + 6字节MAC地址

优先级调整:

  • root primary设置为0(最优)
  • root secondary设置为4096(次优)

答案:A,B

3)例题3:根桥判断

  • 根桥选举:
    • root primary强制成为根桥(优先级0)
    • root secondary作为备份根桥(优先级4096)
  • 端口阻塞: 非根桥上非根端口和非指定端口会被阻塞
  • SW1为根桥,接口不会被阻塞;开销一样、桥ID一样、SWA的G0/0/1的端口IP小(PID越小越优先),SWB上的G0/0/2为根端口RP
  • SWB的G0/0/1
  • 答案:C

4)例题4:接口阻塞判断

  • 选举步骤:
    • 选根桥(MAC地址小的S1)
    • 根桥上所有端口都是指定端口(转发状态)
    • 非根桥选择根端口(比较RPC、发送方BID、端口ID)
  • 结果: S2的F0/2端口因比较劣势被阻塞

5)例题5:最早STP标准

  • 协议标准:
    • 802.1d(STP): 最早标准
      +802.1w(RSTP): 快速收敛
    • 802.1s(MSTP): 多实例负载均衡

6)例题6:STP协议定义

工作原理:

  • 交互BPDU报文选举根桥
  • 比较优先级(值越小越优)和MAC地址
  • 默认优先级32768
    协议演进:
  • RSTP实现快速收敛
  • MSTP实现VLAN负载均衡

7)例题7:聚合组配置

关键点:

  • MSTP允许不同VLAN流量走不同路径
  • GVRP配置差异不影响链路聚合
  • 两个接口都可参与转发(负载均衡)

A错误,影响链路聚合的因素:带宽、双工模式

B错误

C错误

D正确

8)例题8:STP描述

错误描述: STP运行在交换机和路由器上(实际仅运行在二层交换机)

正确要点:

  • 最早标准802.1d
  • 默认优先级32768
  • BPDU每2秒发送一次

9)例题9:RSTP说法判断

正确说法: 采用P/A(提议/同意)机制实现快速收敛

错误说法:

  • Discarding状态不能转发流量
  • 不依赖计时器超时机制
  • 优先级小的成为根桥

RSTP改进:

  • 端口状态简化为3种
  • 增加替代端口角色
  • 配置BPDU格式优化

5.知识小结

知识点 核心内容 考试重点/易混淆点
生成树基本概念 通过逻辑阻塞端口打破二层环路,拓扑变更时重新打开阻塞端口保证冗余 两大功能:防环(二层环路)、链路冗余
桥ID(BID) 8字节(2字节优先级+6字节MAC地址),默认优先级32768,最小值0,次小值4096 比较规则:优先级>MAC地址(越小越优)
路径开销(Cost) 与带宽成反比(华为默认802.1t标准),例:10M=100,100M=19,1G=4,10G=2 易错:不同标准开销值不同,但带宽越大开销越小原则不变
生成树选举四步骤 1. 选根桥(BID最小)2. 选根端口(非根桥到根桥最近端口)3. 选指定端口(每网段一个,根桥端口全指定)4. 阻塞非指定端口 根端口判断顺序:开销>对端桥ID>对端端口ID
根端口选举特例 开销相同时:比较对端桥ID;桥ID相同时:比较对端端口ID(128+端口号,越小越优) 关键结论:根端口对端必是指定端口
MSTP多生成树 实现VLAN负载均衡(不同VLAN走不同路径),对比STP/RSTP的链路浪费问题 核心优势:提升带宽利用率
STP协议类型对比 STP(802.1d):收敛慢(30-50秒) RSTP(802.1w):快速收敛(6秒内) MSTP(802.1s):多实例负载均衡 必记标准号:802.1d/w/s
BPDU报文 交互选举根桥的协议报文,包含桥ID、路径开销等信息 选举依据:BPDU中的优先级+MAC地址
优先级配置命令 root primary(优先级调为0),root secondary(优先级调为4096) 默认值:32768
端口状态(RSTP) Discarding(丢弃)、Learning(学习)、Forwarding(转发) 对比STP的5种状态简化
相关推荐
Gazer_S1 小时前
【HTTP/2:信息高速公路的革命】
网络·网络协议·http
李匠20241 小时前
C++ RPC以及cmake
网络·c++·网络协议·rpc
科技小E1 小时前
EasyRTC音视频实时通话嵌入式SDK,打造社交娱乐低延迟实时互动的新体验
大数据·网络
静听夜半雨3 小时前
CANoe入门——3、新建LIN工程及LIN DataBase(LDF文件)的创建
网络·数据库·c++·编辑器
Jackilina_Stone3 小时前
【网工第6版】第5章 网络互联⑧
网络·软考·网工·第5章 网络互联
电鱼智能的电小鱼3 小时前
基于 EFISH-SBC-RK3588 的无人机通信云端数据处理模块方案‌
linux·网络·人工智能·嵌入式硬件·无人机·边缘计算
夜空晚星灿烂3 小时前
http通信之axios vs fecth该如何选择?
网络·网络协议·http
爱的叹息3 小时前
【前端】基于 Promise 的 HTTP 客户端工具Axios 详解
前端·网络·网络协议·http
迷路的小绅士4 小时前
网络安全概述:定义、重要性与发展历程
网络·安全·web安全