如何确定UDP发送速度变慢的原因?

时间:2019-06-26 08:58:41

标签: windows performance networking udp wfp

当我在Windows 10上启动几(4)个UDP客户端时,UDP极大地减慢了发送速度。每个客户端都绑定到其IP地址和端口,并以点对点配置将数据通过它们自己的端口发送到服务器。他们的NIC。  使用iperf3可以重现该问题,因此,我在实现中排除了该问题。 使用命令启动一个客户端时: “ iperf3 - with 172.16.1.1 - p 3333-B 172.16.1.2 - i 1 -u - b 0 - t 3600” –客户端可以以9.9 Gb / s的标称适配器速度工作。 以4个客户端开始-每个客户端具有通过LAN适配器的不同端口路由的不同地址对-(172.16.1.1 <-172.16.1.2; 172.16.2.1, - 172.16.2.2; 172.16.3.1 <-172.16.3.2; 172.16.4.1 <-172.16.42)在客户端上只能达到3.6 Gbit /。每个本地地址分配给不同的NIC端口。  我怀疑WFP筛选器之一是造成此问题的原因。 如何详细说明呢?如何定义负责哪个过滤器,以及如何关闭或注销特定的WFP过滤器?

我的配置:AMD Threadripper 2950x,16核,64 GB的RAM,NVMe磁盘,连接到点对服务器的2个Intel X710 DA4 NIC。 Windows 10 Pro for Workstations,全新安装。在LAN适配器的每个端口上仅允许IP4堆栈。 Windows BFE服务被禁用(这有助于将吞吐量从1.2 Gbit / s提高到3.6 Gbit / s)。该问题仅在Windows中出现。每个iperf3客户端在同一硬件上的Ubuntu 18.04 TLS达到9.1 Gbit / s。 NIC适配器是4个端口,根据Intel的建议(巨型,低中断,缓冲区,卸载,最新驱动程序,最新NVM等),将Intel X710 DA4配置为实现最高速度。

running 4 iperf3 tests in parallel:
"iperf3 - with 172.16.1.1 - p 3333-B 172.16.1.2 - i 1 -u - b 0 - t 3600"
"iperf3 - with 172.16.2.1 - p 3333-B 172.16.2.2 - i 1 -u - b 0 - t 3600"
"iperf3 - with 172.16.3.1 - p 3333-B 172.16.3.2 - i 1 -u - b 0 - t 3600"
"iperf3 - with 172.16.4.1 - p 3333-B 172.16.4.2 - i 1 -u - b 0 - t 3600"

每个NIC端口上的每个客户端预期的UDP速度为9.9 Gb / s。 每个NIC端口上的每个客户端实际3.6 Gb / s。 (当我启动自己的代码时仍为4.1 Gb / s,仍然比要求少两倍)

0 个答案:

没有答案