Windows 7 中的 10GBASE-T 性能

Windows 7 中的 10GBASE-T 性能

这是我的情况:

-工作站 1:CPU i7-3770/16GB 内存/Gigabyte Z77-D3H 主板/Crucial CT256MX100SSD1 系统磁盘/网络适配器 intel X540-T1/Windows 7 64 位 -工作站 2:CPU i7-950/12GB 内存/ASUS P6X58D-E 主板/Crucial CT256MX100SSD1 系统磁盘/网络适配器 intel X540-T1/Windows 7 64 位
-切换器 HP procurve 2920,带有两个双 10 千兆以太网扩展卡。

两根 UTP 电缆均为 Cat6 电缆,长度均小于 15 米,并且直接从每个工作站连接到 hp 切换器。两个网络适配器似乎都以 10Gbps 的速度连接。

我正在使用 iperf 测试网络性能:

-工作站1:iperf -s -
工作站2:iperf -c<workstation1 ip>

我得到的是每秒 1Gbit,而不是每秒 10Gbit。那么我是否做错了什么步骤?有关于 Windows 7 网络限制的信息吗?谢谢。

已更新 - NTttcp 测试

C:\NTttcp-v5.28\x64>NTttcp.exe -s -m 8,*,192.168.1.20 -l 128k -a 2 -t 15

版权版本 5.28
网络活动正在进行中...

线程时间吞吐量(KB/秒)平均 B / Compl    
====== ======= ================= ==================    

0 15.001 38661.956 131072.000
1 14.999 38257.484 131072.000   
2 14.998 53989.065 131072.000   
3 14.998 38336.845 131072.000   
4 14.999 38086.806 131072.000   
5 15.000 37563.733 131072.000   
6 14.997 56408.082 131072.000   
7 15.000 52292.267 131072.000   


##### 总计:#####


字节数(MEG) 实时数(s) 平均帧大小 吞吐量(MB/s)    
=========== =========== ============== =============== ================  
5179.250000 15.000 1459.696 345.283   


>吞吐量(缓冲区/秒)周期/字节缓冲区    
===================== ============== ==========    
      2762.267 6.912 41434.000    


>DPCs(计数/秒) Pkts(数量/DPC) Intr(计数/秒) Pkts(数量/intr)   
============= ============== ================ ===================   
    13668.933 1.633 22030.933 1.013   



>已发送数据包已接收数据包重传错误平均 CPU %    
============= ================= ============ ====== ==========    
     3720525 334723 4364 0 10.179  

答案1

尝试显示的建议这里

  1. 您需要 RSS (接收方缩放)、LSO (大型发送/段卸载)、TCP 窗口缩放 (自动调整) 和 TCP Chimney (适用于 Windows),以及可选的 RSC (接收方合并),并正确设置和配置。

即使是现代处理器也无法在单个处理器核心上处理 10Gb 的读取量,因此 RSS 需要设置至少 4 个物理处理器核心(RSS 不适用于超线程逻辑核心),可能需要 8 个,具体取决于处理器,以将接收负载分布到多个处理器上。您可以使用 PowerShell(Windows)的 Set-NetAdapterRss cmdlet 执行此操作。

具有超线程的 4 个物理核心处理器的示例命令(0、2、4、6 为物理核心,1、3、5、7 为逻辑核心....基本为经验法则)Set-NetAdapterRss -Name "" -NumberOfReceiveQueues 4 -BaseProcessorNumber 0 -MaxProcessorNumber 6 -MaxProcessors 4 -Enabled

LSO 设置在 NIC 驱动程序和/或 PowerShell 中。这允许 Windows/Linux/其他操作系统创建一个大数据包(例如 64KB-1MB),并让 NIC 硬件处理将数据分段为 MSS 值。这降低了主机上的处理器使用率,并使传输速度更快,因为硬件分段速度更快,操作系统需要做的工作更少。

RSC 在 Windows 或 Linux 中以及 NIC 上设置。这与 LSO 相反。NIC 接收小块并将其合并成一个大数据包,然后将其发送到操作系统。降低接收端的处理器开销。

尽管 TCP Chimney 在 1Gb 世界中名声不佳,但它在 10Gb 世界中却大放异彩。在 Windows 8+/2012+ 中将其设置为自动,它只会在特定情况下在 10Gb 网络上启用。

TCP 窗口缩放(Windows 世界中的自动调整)是绝对必要的。没有它,TCP 窗口永远不会变得足够大以维持 10Gb 连接的高吞吐量。

  1. 启用 9K 巨型帧(有人说不行,有人说可以……这确实取决于硬件,所以要两种方式都测试)。

在我的硬件上,启用巨型帧是关键。还要特别注意 IRQ 合并设置。

相关内容