Intel 82541xx Network Card User Manual


 
Receive and Transmit Description
Software Developer’s Manual 59
IPv4 Header
Length should be set to zero
Identification Field should be set as appropriate for first packet of send (if not already)
Header Checksum should be zeroed out unless some adjustment is needed by the driver
IPv6 Header
Length should be set to zero
TCP Header
Sequence Number should be set as appropriate for first packet of send (if not already)
PSH, and FIN flags should be set as appropriate for last
packet of send
TCP Checksum should be set to the partial pseudo-header checksum as follows:
Figure 3-7. TCP Partial Pseudo-Header Checksum
UDP Header
Checksum should be set as in TCP header, above
The Ethernet controller’s DMA function fetches the ethernet, IP, and TCP/UDP prototype header
information from the initial descriptor(s) and save them on-chip for individual packet header gen-
eration. The following sections describe the updating process performed by the hardware for each
frame sent using the TCP Segmentation capability.
3.5.6 TCP Segmentation Use of Multiple Data Descriptors
TCP Segmentation enables a packet to be segmented to describe more than one data descriptor. A
large packet contained in a single virtual-address buffer is better described as a series of data
descriptors, each referencing a single physical address page.
The only requirement for this use is if multiple data descriptors for TCP segmentation follows this
guideline:
If multiple data descriptors are used to describe the IP/TCP/UDP header section, each
descriptor must describe one or more complete headers; descriptors referencing only parts of
headers are not supported.
IP Source Address
IP Destination Address
Zero
Zero Next Header
Zero
a
a. 82544GC/EI only
Layer 4
Protocol
a
Zero
a