English
Language : 

EP80579 Datasheet, PDF (1386/1916 Pages) Intel Corporation – Intel® EP80579 Integrated Processor Product Line
Intel® EP80579 Integrated Processor
A TCP or UDP frame uses a 16 bit wide one's complement checksum. The checksum
word is computed on the outgoing TCP or UDP header and payload, and on the Pseudo
Header. Refer to “Transmit Checksum Off loading with TCP Segmentation” on
page 1388 for details on checksum computations.
Note:
TCP requires the use of checksum, where it is optional for UDP.
Note:
The TCP header is first shown in the traditional (i.e. RFC 793) representation, and
because byte and bit ordering is confusing in that representation, the TCP header is
also shown in Little-Endian format. The actual data will be fetched from memory in
Little-Endian format.
Figure 37-38.TCP Header (Traditional Representation)
00000000001111111111222222222233
01234567890123456789012345678901
Source Port
TCP Hdr
Length
Reserved
Checksum
Sequence Number
Acknowledge Number
Options
Destination Port
Window
Urgent Pointer
Figure 37-39.TCP Header (Little-Endian Order)
Byte 3
Byte 2
Byte 1
Byte 0
76543210765432107654321076543210
Destination Port
Source Port
LSB
Sequence Number
MSB
Acknowledge Number
Window
TCP Hdr
Length
Reserved
Urgent Pointer
Checksum
Options
The TCP header is always a multiple of 32 bit words. TCP options may occupy space at
the end of the TCP header and are a multiple of 8 bits in length. All options are included
in the checksum.
The checksum also covers a pseudo header conceptually prefixed to the TCP Header
(see Figure 37-40 and Figure 37-41 below). The IPv4 pseudo header contains the IPv4
Source Address, the IPv4 Destination Address, the IPv4 Protocol field, and TCP Length.
The IPv6 pseudo header contains the IPv6 Source Address, the IPv6 Destination
Address, the IPv6 Payload Length, and the IPv6 Next Header field. Software pre-
calculates the partial pseudo header sum, which includes IP SA, DA and protocol type/
next header, but NOT the TCP/Payload length, and stores this value into the TCP
checksum field of the packet.
Note:
When calculating the TCP pseudo header, the byte ordering can be tricky. One common
question is whether the Protocol ID field is added to the “lower” or “upper” byte of the
16 bit sum. The Protocol ID field should be added the least significant byte (LSB) of the
16 bit pseudo header sum, where the most significant byte (MSB) of the 16 bit sum is
the byte that corresponds to the first checksum byte out on the wire.
Intel® EP80579 Integrated Processor Product Line Datasheet
1386
August 2009
Order Number: 320066-003US