Server 2019 的網路效能非常差

Server 2019 的網路效能非常差

我們在 Server 2019 上遇到了重大效能問題。

我們在辦公室搭建了一台測試伺服器,測量了一些讀寫速度,發現2019年和2016年之間存在巨大差異。

我們使用 Hyper V 在 2019 年主機上安裝了 2016 年和 2019 年虛擬機,並使用 LAN 速度測試來測量虛擬機和主機的讀寫速度

該伺服器是 Dell PowerEdge,配有 8 個 15K 磁碟,使用 Intel 四埠網卡配置 RAID 10。

2016 VM 的讀\寫速度為 600 Mbps 寫入和 780 Mbps 讀取。

2019 年 VM 的讀\寫速度為 220 Mbps 寫入和 115 Mbps 讀取。

兩台虛擬機都使用相同的虛擬交換機,配置完全相同,並且位於同一虛擬磁碟上,唯一的區別是兩個虛擬機器上都已完全修補的作業系統。

我們現在已經在客戶網站的各種規格伺服器上進行了測試,發現到處都有相同的結果,2019 年比 2016 年慢得多。

所有 BIOS 和驅動程式都是戴爾提供的最新版本。

這並不是孤立在一台伺服器上,而是在許多伺服器上發生,其中一些伺服器取代了舊的 SBS 2011 伺服器,但運行速度比舊的 SBS 機器慢。有其他人發現這個問題嗎?

答案1

您可能會因為接收段合併 (RSC) 而看到此情況。簡而言之,RSC 是 TCP 分段聚合,它組合分段以處理較大分段,而不是處理多個小分段以提高效率。這是作為 Windows Server 2019 的預設配置變更引入的,並且是其他環境中與您的問題類似的問題的根源。

  1. 您可以使用 PowerShell 停用客戶端的 IPv4 流量 RSC:Disable-NetAdapterRsc -Name $nic -IPv4

  2. 您可以使用 PowerShell 檢查 Hyper-V vSwitch 的目前 RSC 狀態:Get-VMSwitch -Name $vSwitch | Select *RSC*

  3. 您可以使用 PowerShell 完全停用 Hyper-V vSwitch 的 RSC:Set-VMSwitch -Name $vSwitch -EnableSoftwareRsc:$FALSE。這不會影響現有的 vSwitch 連線。

第 #2 項和第 #3 項要求您有權存取 Hyper-V PowerShell 模組和適當的 Hyper-V 管理權限。正如您所提到的,在 Hyper-V vSwitch 上的多台機器上看到這一點,您可能會在第 3 項中找到緩解。我已經為你提供了參考資料這裡這裡

答案2

我不敢相信 Windows 2019 經過這麼長時間仍然有些問題,但我鼓勵您嘗試調整以下設定並重新測試:

區域網路

Set-NetTCPSetting -SettingName "DatacenterCustom" -CongestionProvider DCTCP
Set-NetTCPSetting -SettingName "DatacenterCustom" -CwndRestart True
Set-NetTCPSetting -SettingName "DatacenterCustom" -ForceWS Disabled

Set-NetTCPSetting -SettingName "Datacenter" -CongestionProvider DCTCP
Set-NetTCPSetting -SettingName "Datacenter" -CwndRestart True
Set-NetTCPSetting -SettingName "Datacenter" -ForceWS Disabled

廣域網路

Set-NetTCPSetting -SettingName "InternetCustom" -CongestionProvider CTCP
Set-NetTCPSetting -SettingName "InternetCustom" -DelayedAckTimeoutMs 50
Set-NetTCPSetting -SettingName "InternetCustom" -ForceWS Disabled

Set-NetTCPSetting -SettingName "Internet" -CongestionProvider CTCP
Set-NetTCPSetting -SettingName "Internet" -DelayedAckTimeoutMs 50
Set-NetTCPSetting -SettingName "Internet" -ForceWS Disabled

這使得 2019 年的表現更像 2016 年。

答案3

本來想發表評論,但還沒有聲譽。

我在執行 Server 2019 作為具有 Hyper-V 角色的主機作業系統的新 Dell T440 伺服器以及我啟動的測試虛擬機器 (Win10) 上看到了此問題。

從我的有線筆記型電腦 - Lenovo P52S - 運行 Win11,我看到平均 500Mbs 的寫入速度,但使用 LAN Speed Test Lite 到測試虛擬機的讀取速度在 90 到 220Mbs 之間。始終使用 20Mb 檔案。

對於主機本身,使用 LAN Speed Test Lite 我會看到平均 500Mbs 寫入和 500Mbs+ 讀取,所以我的筆記型電腦沒有任何問題(或者我是這麼認為的)

我在虛擬交換器上禁用了 RSC,但它對我來說沒有任何改進,即使在重新啟動主機、虛擬機器和筆記型電腦後,筆記型電腦和虛擬機之間的讀取效能仍然很差。我重新啟用了 RSC。

今天早上,我翻出了一台舊的 MSI Win10 筆記型電腦並嘗試了一下。 LAN Speed Test Lite 在第一次嘗試時返回 500Mbs+ 寫入、700Mbs+ 讀取。哇!所以這是我的機器?又進行了一些測試,發現讀取速度高達 1600Mbs。然後,我又連續進行了 20 次測試,發現在 20 次測試中,有 4 次的讀取速度低於寫入速度(大約低一半)。

然後我(重新)禁用虛擬交換器上的 RSC 並運行了另外 20 次測試。所有 20 個都回傳一致的讀取 > 寫結果,平均讀取為 700-800,寫入為 450-600。

在虛擬交換器上重新啟用 RSC,這次 20 次測試中有 5 次看到讀取速度緩慢。對我來說,我寧願得到一致的結果,而不是讀取高達 1600Mbs+ 但低至 220Mbs 的數據,這樣 RSC 就會保留。

回到我的P52s 筆記型電腦上,結果仍然很差,但這看起來與Intel NIC 有關,就像使用帶有Realtek 晶片組的USB-> 千兆位元乙太網路適配器時,速度結果與MSI 筆記型電腦上看到的一樣。我也將其作為 OP 提到,因此禁用 RSC 沒有任何好處,就像我最初所做的那樣。

乾杯

麥克風

相關內容