TCP offload or "chimney offload" provides a direct connection (a "chimney") between applications and a TCP offload-capable NIC. This feature enables such a NIC to perform TCP processing for offloaded connections which reduces processor overhead and makes network communications more efficient. Another feature in Server 2008 TCP/IP is Receive Window Auto-Tuning Level for TCP connections. TCP AutoTuning enables TCP window scaling by default and automatically tunes the TCP receive window size for each individual connection based on the bandwidth delay product (BDP) and the rate at which the application reads data from the connection. Theoretically, with auto-tuning, network connection throughput in Server 2008 should be improved for best performance and efficiency. However, this is not always the case. Unfortunately, these “features” can cause many untold issues with specific physical/virtual hardware. In our environment we experienced very slow logon times (2003 active directory functional level with 2008 member servers), LDAP failures and generally very slow network access from the 2008 member servers. An MS support ticket suggested we disabled the autotuning and offloading, which successfully resolved our issues.
To check the current state of chimney offload and TCP autotuning, run the following command.
netsh interface tcp show global
To disable chimney offloading and TCP autotuning, run the following command.
netsh interface tcp set global chimney=disabled autotuninglevel=disabled