Windows
為什麼某些乙太網卡上的 TCP 煙囪解除安裝功能無法將某些網路數據包傳遞給作業系統?
在http://support.microsoft.com/kb/942861中,Microsoft 報告說,在某些情況下,Microsoft SQL Server 會由於網卡啟用了 TCP 煙囪解除安裝而遇到網路問題。我有其他遇到類似問題的伺服器軟體。結果與 SQL Server 相同,關閉 TCP 煙囪解除安裝,一切恢復正常。
這個 TCP 煙囪解除安裝功能有什麼作用?是什麼阻止了某些網路數據包到達最終應用程序?
TCP 煙囪是幫助將大部分網路處理從 CPU 解除安裝到網卡的眾多功能之一。問題在於某些網卡無法正確執行此操作。發生這種情況時,校驗和會變得混亂,或者數據包會以神秘的方式被破壞。損壞的數據包與丟棄的數據包一樣好,因此不會到達目的地。
順便說一句,Broadcom 卡因這個錯誤而臭名昭著。
TCP 煙囪似乎是一種TCP 解除安裝引擎,它與 Windows 一起工作以優化 TCP 流量。通常 TCP 解除安裝更加單一,而 Chimney 似乎允許使用部分解除安裝方法來簡化某些事情。這是一個專有的視窗的東西。Microsoft 的Exchange 部落格有一些關於 Chimney 的資訊。