Re: How to handle TCP checksum, if adapter support TCP checksum offloading?
From: Stephan Wolf (stewo68_at_hotmail.com)
Date: 08/04/04
- Next message: Gian: "Re: Problem with ClientEventReceive TDI"
- Previous message: Thomas F. Divine [DDK MVP]: "Re: Problem with ClientEventReceive TDI"
- In reply to: Thomas F. Divine [DDK MVP]: "Re: How to handle TCP checksum, if adapter support TCP checksum offloading?"
- Next in thread: Rajesh Gupta: "Re: How to handle TCP checksum, if adapter support TCP checksum offloading?"
- Reply: Rajesh Gupta: "Re: How to handle TCP checksum, if adapter support TCP checksum offloading?"
- Messages sorted by: [ date ] [ thread ]
Date: 4 Aug 2004 09:24:30 -0700
IIRC, for Checksum Task Offload (CTO), the TCP/IP stack calculates the
TCP pseudo header checksum and places this value in the TCP packet's
checksum field. Hardware can then calculate the checksum over TCP
header + data (that is, *including* the already calculated pesudo
header csum) and place the result in (i.e. overwrite) the TCP header.
Now if an IM makes changes to the TCP header or data, the IM must not
do anything and CTO will take care of calculating the csum (in
hardware).
Otherwise, if the underlying miniport does not support CTO, the IM
must adjust the TCP header checksum accordingly.
If, however, the IM makes changes to any fields in the IP header and
these fields also appear in the pesudo header, then the IM must
*always* adjust the TCP header checksum accordingly.
That should work.
[Note: An IM must not modify any packet data directly but can only
modify such data in a (local) copy (local NDIS_BUFFER that points to
local copy of original data)].
See also RFC 1624 "Computation of the Internet Checksum via
Incremental Update":
http://www.ietf.org/rfc/rfc1624.txt
Stephan
- Next message: Gian: "Re: Problem with ClientEventReceive TDI"
- Previous message: Thomas F. Divine [DDK MVP]: "Re: Problem with ClientEventReceive TDI"
- In reply to: Thomas F. Divine [DDK MVP]: "Re: How to handle TCP checksum, if adapter support TCP checksum offloading?"
- Next in thread: Rajesh Gupta: "Re: How to handle TCP checksum, if adapter support TCP checksum offloading?"
- Reply: Rajesh Gupta: "Re: How to handle TCP checksum, if adapter support TCP checksum offloading?"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|