降低 Windows 11 中的網路延遲:編輯登錄中的 TcpNoDelay 參數

您在使用 Windows 11 時遇到網路延遲問題嗎?了解如何修改註冊表中的 TcpNoDelay 設置,即可降低延遲,提升遊戲和網路連線效能。立即開始!

你需要知道的最重要的事情

  • 此修改旨在解決 Nagle 演算法造成的 100-200 毫秒人為延遲以及 TCP 協定中的延遲確認問題,從而允許立即發送小型資料包和確認訊息。
  • 若要套用此修改,請建立一個系統還原點,然後在登錄編輯器 (regedit) 中導覽至路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces,使用 ipconfig 選擇活動網路介面卡,然後建立兩個名稱為 TcpDelay 和 TcpORD 位元組 (Noquency)。
  • 此修改透過消除人為延遲,顯著提高了 RDP 和 SSH 等互動式 TCP 任務的反應速度,但它不會影響依賴 UDP 的線上遊戲,也不會解決 Wi-Fi 訊號弱或擁塞等底層網路問題。

如果你的網速測試結果良好,但互動式任務仍然感覺很慢,那麼問題可能出在Windows 系統本身。網路適配器設定中隱藏著兩個註冊表值,它們控制著一項沿用數十年的 TCP 協定最佳化機制,該機制旨在平衡回應速度和效率。停用這兩個值會導致一些重複的小訊息立即發送,這正是讓網路連線感覺更快、回應更靈敏的原因。

簡答: في المسار HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfaces開啟活動網路介面卡的子項,然後建立兩個類型為的值。 DWORD (32-bit) 巴西姆 TcpNoDelay 和 TcpAckFrequency將它們都設為 1, 然後 重啟設備這將停用該網路介面上的 Nagle 演算法和延遲確認 (ACK)。


TcpNoDelay 和 TcpAckFrequency 的值實際上會改變什麼?

TCP協定將資料分割成資料包,依序傳送,然後等待對方透過確認(ACK)確認收到每個資料包。當應用程式發送少量資料(例如幾個按鍵或一條簡短的命令)時,每個資料仍然需要封裝在約40位元組的頭部中。 RFC 896中定義的Nagle演算法旨在透過阻塞和分組小的寫入操作來減少這種浪費,直到前一個資料得到確認或資料量足以填充一個完整的資料包。

當納格爾聚合過程遇到延遲確認(ACK)時,問題就出現了。接收方通常會在發送確認之前等待約 100 到 200 毫秒,希望將其附加到要傳送的資料上。發送方不會因為等待確認而發送數據,接收方也不會因為等待附加數據而發送確認。因此,每個小訊息都會額外增加 100 到 200 毫秒的延遲,而這與你的網路速度無關。

這兩個註冊表值分別針對這一困境的兩個面向。值 TcpNoDelay 被控制的人 1 Nagle 演算法發生故障,導緻小的寫入操作立即執行。該值… TcpAckFrequency 被控制的人 1 這樣可以停用延遲確認,因此您的裝置會立即確認每個傳入的包裹,而不是等待包裹附加到裝置上。


請確保將變更套用至 Windows 11 中的正確網路介面卡。

在對 Windows 11 系統登錄進行任何變更之前,請先建立系統還原點,以便在必要時撤銷變更。修改系統登錄可能會導致一些不易察覺或顯而易見的問題,因此請仔細按照步驟操作,並且僅更改下面列出的值。

1. 按Win + R鍵,然後輸入regedit,按Enter 鍵開啟登錄編輯程式。

在 Windows 11 中開啟登錄編輯器

2. 在登錄編輯器中導覽至以下路徑: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfaces您會注意到幾個子項,每個子項都包含很長的識別字串,分別代表一個網路適配器。這些修改或許有助於解決網路速度慢的問題。

TCP/IP 參數介面在登錄編輯器中的路徑

3. 開啟命令提示字元並執行該命令 ipconfig 若要記錄您目前的 IP 位址,請瀏覽子鍵,直到找到符合的。 DHCP IP位址 أ或者 IP 位址 這是您的IP位址。這是您目前使用的網路介面卡。請確保您正在使用它。 窗戶11 以獲得最佳性能。

在命令提示字元中使用ipconfig命令顯示IP位址

4. 找到正確的子項目後,在右側窗格中按滑鼠右鍵,然後選擇「新建」>「DWORD(32 位元)值」。將其命名為TcpNoDelay,並將其值設為1。

5. 在同一子項中建立第二個名為TcpAckFrequency的 DWORD 值,並將其值也設為1。關閉登錄編輯程式並重新啟動電腦。


如何確定修改成功了?

重新啟動後,您會發現常用 TCP 任務的回應速度顯著提升。在遠端桌面協定 (RDP) 會話中,惱人的按鍵延遲消失,按鍵操作即時記錄。雖然這種變化不如頻寬升級那樣顯著,但它確實消除了 Windows 在良好連接下人為增加的延遲,使得小資料包在應用程式寫入後能夠立即發出,並且確認 (ACK) 也能夠即時返回。

這樣做的代價是網路上的小資料包數量會增加。對於現代寬頻連線來說,這完全可以接受,但如果您使用的是資源嚴重受限的網絡,則需要注意這一點。如果您發現任何問題,請刪除這兩個 DWORD 值或從還原點還原系統以還原預設行為。


這種修改在什麼情況下不起作用?

Nagle 演算法是 TCP 專用的最佳化演算法,因此此修復僅會影響 TCP 流量。大多數現代線上遊戲,尤其是第一人稱射擊遊戲 (FPS)、大逃殺遊戲和快節奏動作遊戲,都透過 UDP 發送對延遲敏感的數據,而 UDP 從不使用 Nagle 演算法。因此,在 TCP 端停用此演算法對這些遊戲沒有任何影響。

نوع العمل 他是否從這項修正案中受益?
遠端桌面協定 (RDP) 是的,少量重複的打字操作會立即發送。
SSH 和其他常用 TCP 會話 نعم
基於UDP的線上遊戲 不,UDP 不使用 Nagle 演算法。
遊戲聊天、玩家配對、登入(TCP) 充其量只是個簡單方法,而且對於延誤來說並非至關重要。

您的遊戲延遲也會受到地理距離、網路服務供應商 (ISP) 的路由以及伺服器路徑擁塞情況的影響。客戶端註冊表中的任何值都無法縮短此路徑。停用 Nagle 演算法並不能改善已經緩慢或擁塞的連線、弱 Wi-Fi 訊號或已滿頻寬的情況。此調整針對的是連線速度看似正常,但依賴發送和接收小訊息的響應式任務仍然感覺不到延遲的特定情況。如果您依賴 RDP、SSH 或任何需要即時發送小訊息的基於 TCP 的工作流程,那麼在 Windows 11 中調整這兩個值是值得的。

評論被關閉。