泛洪和广播的区别 实验验证
泛洪(flooding)的产生:
MAC地址表显示了主机的MAC地址与以太网交换机端口映射关系,指出数据帧去往目的主机的方向。当以太网交换机收到一个数据帧时,将收到数据帧的目的MAC地址与MAC地址表进行查找匹配。如果在MAC地址表中没有相应的匹配项,则向除接收端口外的所有端口广播该数据帧,有人将这种操作翻译为泛洪(Flooding,泛洪操作广播的是普通数据帧而不是广播帧)。
- 交换机的老化时间设置不当,也会引起泛洪处理.因为,交换机的MAC学习也是需要一定数量的帧;重新建立MAC表也是需要时间的
- 频繁地调换PC机与交换机的端口的连接也是原因之一
广播帧的产生:
网络中存在有广播帧是不可避免的,比如开启了DHCP服务器,每次请求,都会有以"FF.FF.FF.FF.FF.FF"的帧格式出现.它向所有端口转发.如果,局域网内的网卡有故障有时也会有广播帧出现,如果大量的这种帧出现,外在表现为网络速度变慢.
广播包的产生:
往往伴随着ARP而产生.
假设主机A与B在同一个网络内,当主机A要向主机B发送信息,那么需要知道主机B的IP地址和MAC地址,这里面我们假定A只知道B的IP地址,而不知道B的MAC地址,那么这时A就需要向网络中发送一个ARP请求,来获取B的MAC地址,这个ARP请求实际上就是一个广播包.
当主机A:192.168.1.1:XXXX.XXXX.XXXX向B:192.168.1.2请求MAC地址.
请求的是192.168.1.2这个IP的MAC地址,在ARP请求里,目的MAC地址是0000.0000.0000
这是一个MAC的广播地址,目的是要发送一个广播,使本地网络内的其他主机都接收这个请求,然后除了目标方(即192.168.1.2)作出回应之外,其他机均会丢弃这个请求帧.
其目的,是让192.168.1.2这台机将自己的MAC发过来.第一次PC1 ping PC3 分别在G0/0/2 G0/0/3 接口抓包
G0/0/3
G0/0/2
因为第一次ping PC1并不知道 PC3的MAC地址,所以要发一个ARP广播报文来获取PC3的MAC地址 ,交换机在收到一个广播报文后会给每一个端口都转发一遍,所以在G0/0/2接口可以接收到一个ARP的广播报文
为了让MAC表提前老化(小于ARP的老化时间)我们把交换机的MAC表老化时间设置为60秒
第二次PC1 ping PC3 分别在G0/0/2 G0/0/3 接口抓包
先看一下ARP缓存表
确认有PC3 的MAC,这样PC1就可以在要发送的数据头部直接添加MAC地址了确认没有MAC表已经老化
G0/0/3接口
G0/0/2接口
说明当交换机收到一个未知单播帧时,就开始泛红处理,而不是广播,泛红处理是给每一个接口都转发PC1发送过来的数据
总结
泛洪和MAC列表相关.在L2中存在.是有确定的MAC地址的,只是在MAC表中找不到具体转发的端口和MAC的配对,才开始泛洪处理.但是泛洪并不是广播帧(FF.FF.FF.FF.FF.FF).
广播是有一个具体的行为,它的对象是整个网络。ARP往往需要有特定的主机来响应当然太多的广播对于网络是有害的。容易造成广播风暴.