Re: Deactivating TCP checksumming

Dennis Cook (cook@sandgate.com)
Wed, 2 Apr 2003 16:22:40 -0500


Re: Windows support of checksum offloading (not kidding).

Following from Windows DDK

===============================================

To achieve a significant performance boost, the Microsoft TCP/IP transport
can offload one or more of the following tasks to a NIC that has the
appropriate task-offload capabilities:

a.. Checksum tasks
The TCP/IP transport can offload the calculation and/or validation of IP
and/or TCP checksums. The initial release of Windows╝ 2000 does not support
UDP checksum offloads; however, future service packs and update releases of
Windows 2000 and later versions may support UDP checksum offloads.

===============================================

Win2K SP3 and WinXP both indicate to my driver that TCP and IP checksums are
being offloaded
on packets to be sent provided the driver advertises that the associated HW
is capable of computing
the checksums. I haven't established that the SW transport stack actually
skips computing the checksums.

"Richard B. Johnson" <root@chaos.analogic.com> wrote in message
news:Pine.LNX.4.53.0304021555160.32710@chaos...
> On Wed, 2 Apr 2003, Dennis Cook wrote:
>
> > What I was looking for is a general capability to keep the SW transport
> > stack from
> > computing outgoing TCP/UDP/IP checksums so that the HW can be allowed to
do
> > it,
> > similar to Windows checksum offload capability.
> REALLY? Who are you kidding. Windows has no such capability.
>
> Check \WINDOWS\SYSTEM32\DRIVERS\ETC\* and see who they stole
> the TCP/IP stack from!
>
> Further, when you perform normal user->TCP/IP operations, you
> get checksumming for free as part of the copy operation. It's
> only when you don't even copy data that you can get any advantage
> of not checksumming. That's why sendfile disables it.
>
> Cheers,
> Dick Johnson
> Penguin : Linux version 2.4.20 on an i686 machine (797.90 BogoMips).
> Why is the government concerned about the lunatic fringe? Think about it.
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/