通过上次实验(HCL使用Openwrt测试组播的简单操作),我们发现HCL中的Openwrt确实可以支持组播,那虚拟交换机S5820V2-54QS-GE是否支持组播呢?我们今天来测试一下。
组网比较简单,我们将两台Openwrt接入到交换机上,交换机空配置运行。
我们首先看一下二层组播,看看在空配置下能否支持组播。
反正是要在命令行看,我们这次就不用WEB页面了,直接通过命令行配置。
组播接收者的配置命令如下:
iperf -s -u -B 224.2.2.4 -i 1
结合iperf操作手册介绍一下(iperf命令简介),-s表示在服务器模式下运行,-u表示使用UDP协议,-B表只接收目标IP地址为224.2.2.4的组播数据包,-i表示采样间隔为1秒。
组播源的配置命令如下:
iperf -c 224.2.2.4 -u -i 1 -t 20 -B 20.1.1.2
-c表示主机运行在客户端模式,并将数据发送到组播地址224.2.2.4,-u表示使用UDP协议,-i表示采样间隔为1秒,-t表示发送流量的持续时间为20秒,-B表示指定发送报文的源地址为20.1.1.2。
不过很不巧,组播源在发送数据之后,接收者没有收到任何数据。经过抓包查看,发现交换机的GigabitEthernet1/0/1接口下收到了组播报文,同时GigabitEthernet1/0/2也发出了组播报文,难道是iperf有问题?我们将结果写入文件看一下。
iperf -s -u -B 224.2.2.4 -i 1 -o /tmp/iperf &
还是没有数据,看来要通过WEB页面看一下了。
可以看到组播源是有发送数据的,但是接收者几乎没有收到报文,或者说没有主动去接收组播报文。
同样的,我们先配置“组播接收者”。
然后配置“组播源”,点击开始“测试”。
这次就能看到接收者正常接收组播报文了,看来是我的测试命令有问题,问题应该是出在iperf服务器端,因为客户端命令测试输出正常。
对比页面配置,我们发现少了一个接口的配置。简单调整一下命令,在组播地址224.2.2.4后面增加一个%eth2,表示指定接口为eth2。
iperf -s -u -B 224.2.2.4%eth2 -i 1
OK,问题解决。
看来在二层交换机场景中,交换机无需配置组播使能也是可以的。但是,交换机有一个专门的二层组播功能,是指在二层设备上运行IGMP Snooping(Internet Group Management Protocol Snooping,互联网组管理协议窥探),通过侦听三层设备与主机之间的IGMP报文来生成二层组播转发表,从而管理和控制组播数据报文的转发,实现组播数据报文在二层的按需分发。
对应的,我们检查一下IGMP Snooping的运行状态。
如果我们想实现二层组播功能,我们需要先在系统视图下全局使能IGMP Snooping,然后在VLAN视图下使能VLAN内的IGMP Snooping。
不过从描述来看,这个功能应该主要是在三层设备和二层设备之间使用的,配置上有点像组播VLAN,我们后面再深入了解一下。
声明:文中观点不代表本站立场。本文传送门:https://eyangzhen.com/234919.html