Data Sheet

Inline Functions—Ethernet Controller I210
305
7.2.4.4 Packet Format
Typical TCP/IP transmit window size is 8760 bytes (about 6 full size frames). Today the average size on
corporate Intranets is 12-14 KB, and normally the maximum window size allowed is 64KB (unless
Windows Scaling - RFC 1323 is used). A TCP message can be as large as 256 KB and is generally
fragmented across multiple pages in host memory. The I210 partitions the data packet into standard
Ethernet frames prior to transmission according to the requested MSS. The I210 supports calculating
the Ethernet, IP, TCP, and UDP headers, including checksum, on a frame-by-frame basis.
Frame formats supported by the I210 include:
Ethernet 802.3
IEEE 802.1Q VLAN (Ethernet 802.3ac)
Ethernet Type 2
Ethernet SNAP
IPv4 headers with options
IPv6 headers with extensions
TCP with options
UDP with options.
VLAN tag insertion might be handled by hardware
Note: UDP (unlike TCP) is not a “reliable protocol”, and fragmentation is not supported at the UDP
level. UDP messages that are larger than the MTU size of the given network medium are
normally fragmented at the IP layer. This is different from TCP, where large TCP messages can
be fragmented at either the IP or TCP layers depending on the software implementation. The
I210 has the ability to segment UDP traffic (in addition to TCP traffic), however, because UDP
packets are generally fragmented at the IP layer, the I210's “TCP Segmentation” feature is
not normally useful to handle UDP traffic.
7.2.4.5 TCP/UDP Segmentation Indication
Software indicates a TCP/UDP Segmentation transmission context to the hardware by setting up a TCP/
IP Context Transmit Descriptor (see Section 7.2.2). The purpose of this descriptor is to provide
information to the hardware to be used during the TCP segmentation off-load process.
Setting the TSE bit in the TDESD.DCMD field to 1b indicates that this descriptor refers to the TCP
Segmentation context (as opposed to the normal checksum off loading context). This causes the
checksum off loading, packet length, header length, and maximum segment size parameters to be
loaded from the Context descriptor into the device.
Table 7-39. TCP/IP or UDP/IP Packet Format Sent by Host
L2/L3/L4 Header Data
Ethernet IPv4/IPv6 TCP/UDP DATA (full TCP message)
Table 7-40. TCP/IP or UDP/IP Packet Format Sent by the I210
L2/L3/L4 Header
(updated)
Data (first
MSS)
FCS ...
L2/L3/L4
Header
(updated)
Data (Next
MSS)
FCS ...