题 iperf max udp组播性能达到峰值10Mbit / s?


我试图通过iperf测试UDP多播吞吐量,但似乎它不是从我的开发机器发送超过10Mbit / s:

C:\> iperf -c 224.0.166.111 -u -T 1 -t 100 -i 1 -b 1000000000
------------------------------------------------------------
Client connecting to 224.0.166.111, UDP port 5001
Sending 1470 byte datagrams
Setting multicast TTL to 1
UDP buffer size: 8.00 KByte (default)
------------------------------------------------------------
[156] local 192.168.1.99 port 49693 connected with 224.0.166.111 port 5001
[ ID] Interval       Transfer     Bandwidth
[156]  0.0- 1.0 sec  1.22 MBytes  10.2 Mbits/sec
[156]  1.0- 2.0 sec  1.14 MBytes  9.57 Mbits/sec
[156]  2.0- 3.0 sec  1.14 MBytes  9.55 Mbits/sec
[156]  3.0- 4.0 sec  1.14 MBytes  9.56 Mbits/sec
[156]  4.0- 5.0 sec  1.14 MBytes  9.56 Mbits/sec
[156]  5.0- 6.0 sec  1.15 MBytes  9.62 Mbits/sec
[156]  6.0- 7.0 sec  1.14 MBytes  9.53 Mbits/sec

当我在另一台服务器上运行时,我得到了~80Mbit / s,这是相当好一点,但仍然没有接近我应该得到的1Gbps限制?

C:\> iperf -c 224.0.166.111 -u -T 1 -t 100 -i 1 -b 1000000000
------------------------------------------------------------
Client connecting to 224.0.166.111, UDP port 5001
Sending 1470 byte datagrams
Setting multicast TTL to 1
UDP buffer size: 8.00 KByte (default)
------------------------------------------------------------
[180] local 10.0.101.102 port 51559 connected with 224.0.166.111 port 5001
[ ID] Interval       Transfer     Bandwidth
[180]  0.0- 1.0 sec  8.60 MBytes  72.1 Mbits/sec
[180]  1.0- 2.0 sec  8.73 MBytes  73.2 Mbits/sec
[180]  2.0- 3.0 sec  8.76 MBytes  73.5 Mbits/sec
[180]  3.0- 4.0 sec  9.58 MBytes  80.3 Mbits/sec
[180]  4.0- 5.0 sec  9.95 MBytes  83.4 Mbits/sec
[180]  5.0- 6.0 sec  10.5 MBytes  87.9 Mbits/sec
[180]  6.0- 7.0 sec  10.9 MBytes  91.1 Mbits/sec
[180]  7.0- 8.0 sec  11.2 MBytes  94.0 Mbits/sec

任何人都知道为什么这没有达到接近链路限制(1Gbps)?

谢谢,

汤姆


6
2017-10-04 23:09




多播将是第一个看起来的地方,您是否获得了单播TCP测试的相同限制? - polynomial
您是否连接到支持的交换机 pause 帧?如果是这样,广播和多播将限制为最慢端口的速度。 - David Schwartz
嗯,我确实有一个IP电话插在同一个子网上的同一个交换机上,可能是10MBit运行 - 这可能是限制因素吗?但是,服务器上的交换机是Cisco 3750G,在所有链路上完全以1Gbit运行,为什么我不能在那里实现超过10%的链路容量? - TJF
我关闭了我的开发机器的网卡上的流量控制,现在得到~10MBytes / sec,与服务器上的相同。所以这肯定有帮助,但仍然只有10%的链接容量,任何想法为什么?我尝试调整UDP发送缓冲区似乎没有任何影响 - TJF
是否在交换机上启用了任何多播或广播风暴保护。 - The Unix Janitor


答案:


检查您的交换机(您的网卡是否已经支持它)是否意外未设置为auto-mdix,或者是否存在固定值并且您不匹配。这可能会导致您描述的问题,我在我们自己的网络中看到了完全相同的行为,并且存在不匹配。 有时auto-mdix可能不起作用,您也应该尝试手动将其设置为两侧的相同值。

http://en.wikipedia.org/wiki/Mdix#MDIX


1
2018-05-06 15:39