您目前已離線,請等候您的網際網路重新連線

複製 Windows XP 檔案到 Windows 2000 網域控制站時 SMB 效能變慢

Windows XP 支援已結束

Microsoft 於 2014 年 4 月 8 日結束對 Windows XP 的支援。此變更已影響您的軟體更新和安全性選項。 瞭解這對您的意義為何且如何持續受保護。

重要:本文包含有關修改登錄的相關資訊。建議您在編輯登錄前先將其備份,並瞭解如何在發生問題時還原登錄。如需有關如何備份、還原和編輯登錄的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
256986 Microsoft Windows 登錄說明
徵狀
從 Windows XP 用戶端電腦複製檔案到 Windows 2000 網域控制站時,您可能會發現複製效能變慢 (如果您使用伺服器訊息區 [SMB] 通訊協定)。這種效能變慢的情況只會發生在從 Windows XP 用戶端複製檔案到 Windows 2000 網域控制站 (推入模式) 的情況,而不會發生在從網域控制站複製檔案到用戶端 (取得模式) 的情況。
發生的原因
SMB 效能變慢的原因,可能是因為 SMB:C NT transact - Notify Change 封包發生 TCP/IP 通知 (亦即 TCP ACK) 延遲。這個問題通常會發生在使用 Windows 檔案總管複製檔案到網域控制站的情況。然而,這個問題也可能發生在使用命令提示字元來複製檔案、或是焦點落在 Windows 檔案總管中的目標資料夾 (如果有訂閱「變更通知」) 的情況。只要執行 SMB 複製程序 (從任何程式) 時,要複製到的遠端目標資料夾正受到「變更通知」要求 (從任何程式) 叫用,就會發生這個問題。

依預設,只要 SMB 有使用安全性簽章就會發生這種情況。如果有設定安全性簽章,SMB 就必須經過重新導向程式同步處理。重新導向程式必須等候目前的 SMB 命令處理完畢,才可以繼續執行下一個命令。重新導向程式會一直等候,直到收到伺服器發出的 TCP/IP 通知。
解決方案
如果要解決這個問題,請使用本節所描述的其中一種解決方法。

解決方法 1

警告:不當使用「登錄編輯程式」可能會導致嚴重的問題,甚至必須重新安裝作業系統。Microsoft 並不保證可以解決您不當使用「登錄編輯程式」所導致的問題。請自行承擔使用「登錄編輯程式」的一切風險。
  1. 啟動「登錄編輯程式」。
  2. 找到並按一下下面的登錄機碼:
    HKEY_LOCAL_MACHINE\System\CCS\Services\LanmanServer\Parameters
  3. 按兩下 [RequireSecuritySignature] 值,在 [數值資料] 方塊中鍵入 0,再按一下 [確定]
  4. 按兩下 [EnableSecuritySignature] 值,在 [數值資料] 方塊中鍵入 0,再按一下 [確定]
  5. 結束「登錄編輯程式」。
依預設,[EnableSecuritySignature] 數值在網域控制站是設定為 1 (ON),在非網域控制站則是設定為 0 (OFF)。因此,SMB 複製效能變慢的問題只會發生在複製項目到網域控制站的情況。

解決方法 2

將「TCP 延遲 ACK」計時器 (TcpDelAckTicks) 切換成較低數值。執行這項操作之後,伺服器會以更短的時間間隔、更頻繁地通知項目。您可使用下列「Microsoft 知識庫」文件中描述的 Hotfix,來指定自訂的延遲 ACK 數值:

311833 TcpDelAckTicks 登錄值沒有對 Ack 逾時發生影響 (此連結可能連結至尚未中文化的英文知識庫文件)
如果將 [TcpDelAckTicks] 數值設定為 0,會完全關閉計時器。當計時器關閉時,TCP 會還原成要求建議前 (RFC) 1122 行為,並且通知每個封包。這項解決方法可以解決 SMB 複製效能的問題。然而,在高度延遲網路 (高度飽和區段) 上,這種行為會增加網域控制站發出的通知數目,進而增加網路的負擔。
其他相關資訊
如果要查看效能變慢與某些 SMB 框架 (SMB:C NT transact - Notify Change) 的 TCP/IP 通知之間的關係,請執行網路追蹤。執行這項操作之後,您會發現,如果 SMB:C NT Transact - Notify Change 框架沒有在 TCP 傳輸層級收到伺服器發出的通知,重新導向程式就不會繼續處理其餘的複製作業。只有當伺服器是 Windows 2000 網域控制站時,才會發生 TCP/IP 通知延遲 (大約 0.2 秒鐘)。

在 Windows XP 用戶端或 Microsoft Windows Server 2003 用戶端上,有一個名為
TcpAckFrequency
的新登錄機碼,可以搶先延遲 ACK 計時器一步來控制 TCP ACK。

如需其他有關這個問題的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
321098複製檔案到 Windows 2000 網域控制站時網路效能變慢 (此連結可能連結至尚未中文化的英文知識庫文件)
328890 Windows XP 與 Windows Server 2003 中控制 TCP 通知 (ACK) 的新登錄項目 (此連結可能連結至尚未中文化的英文知識庫文件)
dc
內容

文章識別碼:321169 - 最後檢閱時間:02/11/2004 03:46:00 - 修訂: 1.0

  • Microsoft Windows XP Professional Edition (商用版)
  • Microsoft Windows XP Home Edition (家用版)
  • kbfix kbenv kbprb KB321169
意見反應