The Broadband Guide
search advanced
 forgot password?
FAQs Categories:

Should I enable TCP Offloading ?

Newer Windows variants and Network Adapter drivers include a number of "TCP Offloading" options. Windows 8/2012 server, for example includes:
Chimney Offload
Checksum Offload
Receive-Side Scaling State (RSS)
Receive Segment Coalescing State (RSC)
Large Send Offload (LSO)

In addition to the OS level TCP offloading options, Network Adapter drivers have some of those, like "Checksum offload" and "Large Send Offload (LSO)" as well. Even if offloading is turned off at the OS level, the NIC driver can still use its own variant of offloading, check the driver properties as well!

Whether you should use TCP Offloading options is a tricky question depending on your usage, and which specific offloading you plan to use. It is generally recommended to keep some of them on for client machines because of improved throughput and lower CPU utilization (except LSO), and turn more of them off for servers, buggy NIC drivers, or when experiencing problems.

This recommendation stems from some buggy NIC drivers, that, when combined with TCP Offloading and multi-threaded applications can cause havoc to the NIC driver. It seems to be related to applications switching threads causing the NIC driver to switch its active TCP Offload connection in the NIC hardware and that switching process is prone to failure or excessive delay.

In conclusion, yes, TCP Offloading speeds up the connection and reduces CPU utilization when it works, use it in client machines, and with newer OS variants where bugs have been corrected, but be very careful in server environments, especially with LSO, and with multi-threaded applications. Test, then test again!

For server issues, see:
TCP Offloading again?!
Symantec Clearwell server recommendations

Specific hardware recommendations:
In Realtek Gigabit Network Adapters, disable: Flow Control (Rx & Tx DISABLED). Disabling Flow Control can reduce timeouts and considerably improve throughput under Windows 8, most likely due to buggy implementation at the driver level.

For Intel/Broadcom Adapters, Large Send Offload (LSO) can cause issues, disable it at the adapter driver level, and possibly in the OS TCP/IP network stack.

  User Reviews/Comments:
by anonymous - 2017-04-23 13:47
in my case Intel drivers and windows 8.1 support this feature very well. in addition the offload reduces CPU usage by approximately 10% and increases sustained throughput by approximately 7-8% for large file transfers on a LAN. I have also used this feature for over a year with no negative drawbacks.

For these reasons I would recommend people trying this feature rather than simply disabling it without any testing in their set-up.

Also for this reason I feel it is a mistake for the TCP/IP Optimizer utility to disable this feature as part of the optimal profile. I feel it should offer keep this feature enabled and offer advice if people hit issues using it.
by Philip - 2017-04-23 14:09
I have a few questions on specifics...
Which Intel NIC?
Is it a separate card or motherboard on-board one?
Which TCP Offloading options specifically (Intel NICs have a few of them)?

Large Send Offload (LSO) ? (IPv4/IPv6)
TCP Checksum Offload ? (IPv4/IPv6)
UDP Checksum Offload ? (IPv4/IPv6)
Something else ?
Which ones make the difference for you ?
News Glossary of Terms FAQs Polls Cool Links SpeedGuide Teams SG Premium Services SG Gear Store
Registry Tweaks Broadband Tools Downloads/Patches Broadband Hardware SG Ports Database Security Default Passwords User Stories
Broadband Routers Wireless Firewalls / VPNs Software Hardware User Reviews
Broadband Security Editorials General User Articles Quick Reference
Broadband Forums General Discussions
Advertising Awards Link to us Server Statistics Helping SG About