Packet Transmission — Intel
®
82575EB Gigabit Ethernet Controller
324632-003 Intel
®
82575EB Gigabit Ethernet Controller
Revision: 2.1 Software Developer’s Manual and EEPROM Guide
January 2011 133
Table 35. Next Header Type Encodings
Note: The 82575 hardware acceleration does not support all IPv6 Extension header types. Also,
the RFCTL.Ipv6_DIS bit must be cleared for this filter to pass.
5.5.1.6 UDP/TCP Filter
This filter checks for a valid UDP or TCP header. The prototype next header values are 11h and 06h,
respectively. The RXCSUM.TUOFL bit must be set for this filter to pass.
5.6 Packet Transmission
The transmission process for regular (non-TCP Segmentation packets) involves:
• The protocol stack receives from an application a block of data that is to be transmitted.
• The protocol stack calculates the number of packets required to transmit this block based on the
MTU size of the media and required packet headers.
• For each packet of the data block:
— Ethernet, IP and TCP/UDP headers are prepared by the stack.
— The stack interfaces with the software device driver and commands the driver to send the
individual packet.
— The software device driver gets the frame and interfaces with the hardware.
— The hardware reads the packet from host memory (via DMA transfers).
— The driver returns ownership of the packet to the Network Operating System (NOS) when the
hardware has completed the DMA transfer of the frame (indicated by an interrupt).
Header Next Header Type
Header Length
(units are in bytes unless otherwise
specified)
IPv6 6 Always 40 bytes
IPv4 4 Offset bits [7:4]
Unit = 4 bytes
TCP 6 Offset byte [12, bits [7:4]]
Unit = 4 bytes
UDP 17 Always 8 bytes
Hop by Hop Options 0
1
1. Hop by Hop Options Header is only found in the first Next Header Type of an IPv6 Header.
8 + offset byte [1]
Destination Options 60 8 + offset byte [1]
Routing 43 8 + offset byte [1]
Fragment 44 Always 8 bytes
Authentication 51 8 + 4* (offset byte [1])
Encapsulating Security Payload 50
2
2. Encapsulated Security Payload.
No Next Header 59
3
3. When a No Next Header type is encountered, the rest of the packet should not be processed.