什么是广播风暴?如何解决广播风暴问题?

科技   2024-11-19 18:06   江苏  

公众号:网络技术联盟站 

广播(Broadcast)是一种必要的通信方式,用于将信息从一个设备发送到多个目标。然而,当广播流量过多或者无限循环时,会导致整个网络瘫痪,这种现象被称为广播风暴(Broadcast Storm)

本文目录:


  • 什么是广播风暴?

  • 广播风暴的成因

    • 1、环路问题

    • 2、网络设备故障

    • 3、主机或软件问题

    • 4、配置错误

  • 广播风暴的危害

    • 1、网络性能下降

    • 2、设备资源耗尽

    • 3、服务中断

    • 4、安全隐患

  • 如何判断交换机是否存在广播风暴?

    • 1、查看硬件状态:端口指示灯异常闪烁

    • 2、检查端口流量和使用率:识别广播流量

    • 3、检查 STP(生成树协议)报文:关注 TC 报文变化

    • 4、其他辅助诊断方法

  • 如何解决广播风暴问题?

    • 1、网络设计层面的防护

    • 2、配置层面的优化

    • 3、管理层面的策略

  • 写在最后


什么是广播风暴?

广播是指在网络中将数据包发送给同一网络中的所有设备。它通过广播地址(如以太网中的 FF:FF:FF:FF:FF:FF 或 IP 的 255.255.255.255)实现,是局域网(LAN)中非常常见的通信方式。

广播的常见应用包括:

  • **ARP(地址解析协议):**将IP地址解析为MAC地址。
  • **DHCP(动态主机配置协议):**分配IP地址。
  • **网络发现协议:**如Windows的NetBIOS广播。

当网络中的广播流量急剧增加,超出了网络设备的处理能力时,就会引发广播风暴。这通常是由于错误的网络配置或设备故障导致的。例如,在没有生成树协议(STP)保护的交换网络中,广播帧可能在网络中无限循环,形成风暴。

广播风暴的成因

1、环路问题

环路是广播风暴的主要原因。当网络中存在环形拓扑且没有有效的环路防护机制时,广播帧会在多个设备之间循环传递,无法终止。

典型场景:

  • **缺少STP保护:**交换机之间错误连接了多个冗余链路。
  • **环路配置错误:**网络管理员配置静态路由或链路聚合时未考虑环路问题。

2、网络设备故障

交换机、路由器等网络设备故障可能导致:

  • 数据包转发异常。
  • 设备不断发送广播流量。
  • 广播流量无法被正确丢弃。

3、主机或软件问题

感染病毒或恶意软件的主机可能主动发送大量广播流量,例如:

  • 恶意ARP请求或回复。
  • 虚假DHCP广播包。

4、配置错误

  • VLAN错误配置:广播域之间的隔离失效,导致广播流量泛滥。
  • 路由器配置错误:错误的ACL或路由策略使广播包被意外放行。

广播风暴的危害

1、网络性能下降

广播风暴会占用大量带宽,导致正常的数据通信延迟增加或完全中断。

2、设备资源耗尽

网络设备的CPU和内存资源被广播处理消耗殆尽,无法执行其他任务。

3、服务中断

关键网络服务(如DHCP、DNS等)可能因无法及时响应而瘫痪,导致用户无法正常访问网络。

4、安全隐患

广播风暴可能掩盖恶意攻击行为,使网络管理员难以定位和排查安全问题。

如何判断交换机是否存在广播风暴?

1、查看硬件状态:端口指示灯异常闪烁

现象:*

  • 交换机的 所有或大多数端口指示灯 可能会以异常一致的频率快速闪烁。
  • 通常,这种现象伴随着网络延迟增加、丢包严重甚至通信中断。

观察交换机机身,注意以下特征:

  • 正常情况下,端口指示灯的闪烁有规律,且负载较低时的闪烁频率较慢。
  • 若发现所有端口以高频率同步闪烁,可能是广播流量正在全网泛洪。

2、检查端口流量和使用率:识别广播流量

交换机中的广播风暴往往会显著增加广播报文的比例,因此需要登录设备进行进一步检查。

关键指标:

  • 广播流量比例:广播包在正常网络中的占比通常较低(小于 10%)。如果广播流量占比明显异常(例如超过 30%-50%),可能是风暴的信号。
  • 端口流量使用率:某些端口的带宽使用率接近或达到上限,通常与广播风暴有关。

检查广播流量(不同厂商的设备命令示例):

  • 华为设备:
[Switch] display interface GigabitEthernet 0/0/1

重点关注以下字段:

Broadcast packets: XXX packets
Multicast packets: XXX packets
Unknown unicast packets: XXX packets
  • 思科设备:
Switch# show interface GigabitEthernet 0/1

观察字段:

Input packets: XXX
Broadcast packets: XXX
Multicast packets: XXX
  • 锐捷设备:
Ruijie# show interface ethernet 0/1 statistics

观察广播和组播包数量是否异常。

3、检查 STP(生成树协议)报文:关注 TC 报文变化

生成树协议(STP)在环路检测和网络收敛中起关键作用,当广播风暴发生时,交换机会不断产生 TC(Topology Change)报文,以尝试重构网络拓扑。

TC 报文的增长意味着交换机检测到频繁的拓扑变化,而广播风暴可能导致虚假拓扑变化,诱发 TC 报文快速增加。

检查 TC 报文数量:

  • 华为设备:
[Switch] display stp statistics

关键字段:

Number of topology changes: XXX
  • 思科设备:
Switch# show spanning-tree detail

检查字段:

Number of topology changes X in the last Y seconds

如果 TC 报文在短时间内显著增加(例如每秒数十次),可能是广播风暴引起。

4、其他辅助诊断方法

使用流量镜像工具分析广播包

通过配置交换机端口镜像,将广播风暴的流量引导到分析设备(如 Wireshark)进行深入检查。

配置镜像端口:

[Switch] interface GigabitEthernet 0/0/1
[Switch-GigabitEthernet0/0/1] port-mirroring to observe-port GigabitEthernet 0/0/10

在 Wireshark 中分析,过滤广播流量:

eth.dst == ff:ff:ff:ff:ff:ff

查看 MAC 地址表异常情况

广播风暴可能导致 MAC 地址表频繁刷新,甚至溢出。

操作命令:

  • 华为设备:
[Switch] display mac-address

检查是否有大量 MAC 地址频繁变化。

  • 思科设备:
Switch# show mac address-table

检查端口错误包和丢包情况

广播风暴会导致交换机端口产生大量 CRC 错误或丢包。

操作命令:

  • 华为设备:
[Switch] display counters error
  • 思科设备:
Switch# show interfaces | include CRC

如何解决广播风暴问题?

解决广播风暴需要从网络设计、配置和管理三个方面入手。

1、网络设计层面的防护

启用生成树协议(STP)

生成树协议可以自动检测和关闭网络中的冗余路径,防止环路的产生。

  • **标准协议:**IEEE 802.1D(STP)、802.1w(快速生成树协议,RSTP)。
  • 配置示例:
# 在交换机上启用STP
Switch(config)# spanning-tree mode rapid-pvst

使用MSTP或RSTP

对于更复杂的网络,可以使用多生成树协议(MSTP)或快速生成树协议(RSTP),它们在性能和适配能力上更优。

网络分段

通过划分VLAN将广播域限制在较小的范围内,减少广播流量的扩散。

配置VLAN:

# 创建VLAN 10
Switch(config)# vlan 10
Switch(config-vlan)# name HR

部署三层交换

在大型网络中,采用三层交换机路由分离不同的广播域。

2、配置层面的优化

配置广播限制

在交换机或路由器上限制每秒广播流量的上限。

  • 配置示例:
# 在接口上限制广播流量
Switch(config-if)# storm-control broadcast level 5.00

配置端口安全

启用端口安全功能以防止恶意设备接入后引发广播风暴。

  • 配置示例:
# 设置端口最大MAC地址数
Switch(config-if)# switchport port-security maximum 2

检测和隔离故障设备

通过网络监控工具定位发送异常广播流量的设备并隔离。

3、管理层面的策略

定期网络检查

  • **检查环路:**使用 show spanning-treeloopback-detection 等命令验证网络是否存在环路。
  • **检查广播流量:**分析广播流量占比是否异常。

部署网络监控系统

利用 SNMP、NetFlow 或专用工具(如Wireshark)实时监控网络状态。

Wireshark 示例:

使用过滤条件 broadcast 分析广播流量。

写在最后

广播风暴是网络中的一大隐患,但其成因和解决方法都可以通过科学的网络设计和管理措施得到有效控制。作为网络工程师,我们需要了解广播风暴的危害,掌握多种预防和排查手段,从网络的各个层面进行优化,确保网络的高效、稳定和安全。

广播风暴的解决不是单一技术的应用,而是需要综合设计、配置和管理的全局视角。如果在实施过程中能够充分理解网络的拓扑结构、业务需求以及设备特性,就可以更好地应对和防范这一问题,从而打造一个稳定可靠的网络环境。


往期推荐

通信技术赛道来到了6G,中国6G,真的很6!

IT知识百科:什么是多速率交换机?

网络防火墙有哪些类型?

IT 知识百科:什么是网络即服务(NaaS)

无线局域网标准IEEE 802.11大全,收藏!




END


给大家分享一款针对咱们网络工程师的【子网掩码计算器】,由瑞哥自研开发,速度快,体验感棒,永久针对粉丝免费!

网络专属技术群

构建高质量的技术交流社群,欢迎从事网络技术、网络安全、系统集成、网络开发、或者对网络技术感兴趣,也欢迎技术招聘HR进群,也欢迎大家分享自己公司的内推信息,相互帮助,一起进步!


6群已满!7群开放!!!

💡

文明发言,以交流技术、职位内推、行业探讨为主

广告人士勿入,切勿轻信私聊,防止被骗


加我好友,拉你进群,注明来意!
喜欢就分享
认同就点赞

支持就在看

一键四连,你的技术也四连


网络技术联盟站
计算机网络技术,行业干货知识传播,网络技术分享,总有你想要的!
 最新文章