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 記憶體/USE 記憶體/USB/US2:CPU i7-950 記憶體/USE/USE/USE主機板/ Crucial CT256MX100SSD1 系統磁碟/網路介面卡 intel X540-T1 / Windows 7 64 位元
-Switcher HP procurve 2920,附兩個雙 10 Gigabit 乙太網路擴充卡。

兩條 utp 電纜均為 6 類,長度小於 15 米,直接從每個工作站連接到 HP 切換器。兩個網路適配器似乎都以 10Gbps 連結。

我正在使用 iperf 測試網路效能:

-workstation1:iperf -s
-workstation2: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/s) Avg 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) 實時 平均幀大小 吞吐量(MB/s)    
================================================= = =  
5179.250000 15.000 1459.696 345.283   


>吞吐量(緩衝區/秒)週期/位元組緩衝區    
=============================================    
      2762.267 6.912 41434.000    


>DPCs(count/s) Pkts(num/DPC) Intr(count/s) Pkts(num/intr)   
============= ============= =============== =========== =====   
    13668.933 1.633 22030.933 1.013   



> 傳送的資料包 接收的資料包 重新傳輸錯誤 平均。中央處理器 %    
================================================= = =====    
     3720525 334723 4364 0 10.179  

答案1

嘗試顯示的建議這裡

  1. 您需要正確設定和設定 RSS(接收端縮放)、LSO(大量發送/段卸載)、TCP 視窗縮放(自動調整)和 TCP 煙囪(適用於 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 -啟用

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 合併設定。

相關內容