由于网络拓扑的设计和连接问题,或其他原因导致广播在网段内大量复制,传播数据帧,导致网络性能下降,甚至网络瘫痪。这就是网络风暴。

中文名

网络风暴

外文名

The network storm

结果

网络瘫痪

原因

网卡损坏、网络环路等

简介

一个数据帧或包被传输到本地网段(由广播域定义)上的每个节点就是广播;由于网络拓扑的设计和连接问题,或其他原因导致广播在网段内大量复制,传播数据帧,导致网络性能下降,甚至网络瘫痪。这就是广播风暴。

原因

网络设备原因

我们经常会有这样一个误解:交换机是点对点转发,不会产生广播风暴。其实,在我们购买网络设备时,购买的交换机通常是智能型的集线器(Hub),却被奸商当做交换机来卖。这样,在网络稍微繁忙的时候,肯定会产生广播风暴了。

网卡损坏

如果网络机器的网卡损坏,也同样会产生广播风暴。损坏的网卡不停向交换机发送大量的数据包,就会产生大量无用的数据包,最终导致广播风暴。由于网卡物理损坏引起的广播风暴比较难排除,并且损坏的网卡一般还能上网,我们一般借用Sniffer局域网管理软件,查看网络数据流量,来判断故障点的位置。

网络环路

曾经在一次网络故障排除中,发现一个很可笑的错误:一条双绞线的两端插在同一个交换机的不同端口上,导致了网络性能骤然下降,打开网页都非常困难。这种故障,就是典型的网络环路。网络环路的产生,一般是由一条物理网络线路的两端同时接在了一台网络设备中所致。不过,现今的交换机(不是HUB)一般都带有环路检测功能。

网络病毒

一些比较流行的网络病毒,如Funlove、震荡波、RPC等病毒,一旦有机器中毒后,它们便会立即通过网络进行传播。网络病毒的传播,就会占据大量的网络带宽,引起网络堵塞,进而引起广播风暴。

黑客软件的使用

一些上网者经常利用网络执法官、网络剪刀手等黑客软件,对网吧的内部网络进行攻击,这些软件的使用,也可能产生广播风暴。

预防

(以CISCO catalyst switch为例)

1、首先使用网管分析你网络的baseline,这样可以明确你的网络当中正常情况下的广播包比例是多少。

2、绝大多数交换机都支持广播风暴抑制特性,配置了这个特性以后,你可以控制每个端口的广播包维持在特定的比例之下,这样可以保留带宽给必须的应用。

配置:(以CISCO catalyst switch为例)

Int XX

storm-control broadcast level 20.00

switch#sh storm

Interface Filter State Level Current

Fa1/0/1 Forwarding 20.00% 0.00%

3、针对缺省STP配置无法排除的网络环路问题,利用STP的BPDUguard特性来预防广播风暴。此种环路情况示意图如下:

switch——hub(portA——portB)

Switch启用了STP,而hub则被人有意无意的用一根网线联起来,导致引起了环路。SWITCH的端口不会收到其他交换机或本交换机其他端口的 BPDU,不会触发该端口的STP决策过程,也就不可能blocking该端口,这样就会引起广播风暴。我们可以利用CISCO STP的BPDUguard特性来预防这一点。

int xxx

spanning-tree bpduguard enable

值得注意的是bpduguard可以在全局下配置,也可以在每端口的基础上配置。如果在全局下配置,则只对配置了portfast的端口起作用,如果在端口下配置,则不用配置portfast。

排障

(以CISCO catalyst switch为例)

如果网络中已经产生了网络风暴(现象通常为网络丢包、响应迟缓、时断时通等),则可以利用如下的方法来排障

1、首先确认是否是网络风暴或其他异常流量引起的网络异常,在核心交换机上

如果交换机的CPU利用率较高,且大部分的资源都被“IP Input”进程占用,则基本可以确定网络中有大流量的数据

2、查找异常流量是从交换机的那一个端口来的:

switch #sh int | i protocol|rate|broadcasts

FastEthernet1/0/1 is up, line protocol is up (connected)

Queueing strategy: fifo

5 minute input rate 0 bits/sec, 0 packets/sec

5 minute output rate 2000 bits/sec, 3 packets/sec

Received 241676 broadcasts (0 multicast)

如果找到一个端口的input rate非常高,且接收到的广播包也非常多,则基本可以找到来源,如果该端口下联的也是可管理的交换机,则再次执行此过程,直到找到一个连接PC或者HUB的端口

3、shutdown该端口

int xx

shutdown

4、查找产生异常流量的根源

如果是HUB环路,则拆掉环;如果是病毒,则做杀毒处理;如果是网卡异常,则更换网卡。此部分不详述。

5、确认交换机的CEF功能是否启用,如果没有,则需要启用,可以加速流量的转发

配置CEF: switch〉sh ip cef

全局模式下输入

ip cef