我这篇文章《带你走进网络世界:硬件篇-二层交换机》

我们都知道交换机的功能是相互交换数据,但是你有没有想过交换机的这种工作机制存在一些缺陷呢?(不明白的可以看我的文章《带你走进网络世界:硬件篇——二层交换机》)

这个漏洞就是我们今天要讲解的“广播风暴”。让我们通过三个问题来看看“广播风暴”。

什么是广播风暴?

广播风暴简单来说就是整个广播域被大量广播包淹没,同时不断产生新的广播包(这些广播包被交换机大量复制)。这些广播包无法被网络设备处理,占用大量的网络带宽和网络设备的系统资源,会导致业务无法正常运行,甚至完全瘫痪。这被称为“广播风暴”。

广播风暴是如何形成的?广播风暴是由网络中的“环路”引起的。那么什么是“循环”?事实上,这很容易理解。使用一根网线连接同一交换机的两个端口(前提是它们在同一个广播域中)会形成环路。当然c语言实现二层交换机的工作原理,也可以用两条网线分别连接两台交换机上的两个端口。一个端口,如下图所示,形成一个循环。循环结构有很多种,但它们都有一个共同点。交换机发送一个广播包,然后以某种形式从交换机的另一个接口接收,然后交换机将广播包发送出去,就这样一直死。如果循环下去,这就是循环,也是广播风暴。

环形拓扑

现在我们举个例子来说明有四个开关A、B、C和D。

当A收到广播包时c语言实现二层交换机的工作原理,A会以泛洪(broadcasting)的形式发送广播包,也就是说B和C都会收到广播包,然后B和C会再次泛洪。发给C,然后C收到广播包后,C会把D收到的广播包发给B,再把B收到的广播包发给D,然后B和D会收到对方的广播包,那么B会把C收到的广播包发给A,D把C收到的广播包发给A,然后A把广播包发出去,以此类推,一直往下走,每次交换机接收和发送一个新的广播包,这就是我们称之为广播风暴的原因。

延伸阅读:广播风暴造成的环境不仅在交换机上,路由器也会产生广播风暴。

当广播风暴形成时会发生什么?

图片[1]-我这篇文章《带你走进网络世界:硬件篇-二层交换机》-老王博客

广播风暴发生后,广播包无法被网络设备处理,会导致交换机由于转发和接收这些广播包,进而消耗自身带宽和系统资源,进而影响到广播风暴所在的广播域将被这些广播数据包阻塞。充斥着网络中断、业务瘫痪等后果,可以说在广播风暴所到之处长不出草。

模拟实验:

模拟广播风暴的实验非常简单。只需按照下图建立拓扑,然后关闭两台交换机SW1、SW2的STP功能,用PC2随意ping一个IP地址(发送广播包),交换机就会收到广播包,这样模拟广播风暴的实验就完成了,我们可以用Wireshark捕获大量的广播包。这是广播风暴场景。

命令如下:

两个交换机都需要关闭 STP。

仿真实验图

这是模拟器模拟的广播风暴场景。不到半分钟就产生了近8000个广播包。这是一个只有两个交换机和一个终端模拟的环境。如果在实际环境中发生广播风暴,广播风暴的后果可想而知。知道。

广播风暴场景

上篇文章中展示的循环结构拓扑图在实际环境中使用的非常多。为什么在广播风暴发生时仍然使用这些网络结构?因为这些结构擅长避免“单点故障”。

那么如何避免网络结构带来的广播风暴呢?

事实上,网络协议的出现,很大一部分原因是为了修复一些技术中的一些缺陷。比如IPv6是为了弥补IPv4地址数量的不足而开发的,RIPv2是因为RIPv1的功能太多而开发的,STP协议也是其中之一。一、STP协议为广播风暴而生。下一期带你走进STP的大门,敬请关注。

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论