Data Sheet
Ethernet Controller I210 —Packet Types
862
A.1.5 Type 3: NFS Packets
NFS headers can come in all the frames that contain a UDP/TCP header. The NFS (and RPC headers)
are extensions to these types of packets. All of the packets previously described in sections A.1.3.2,
A.1.3.2, A.1.3.4.5, A.1.3.4.5, A.1.4.3, and A.1.4.2, can accommodate NFS headers.
PSRTYPE.PSR_TYPE11/12/14/15/18/19 controls the split/replication behavior of NFS packets. See
Section 8.10.3 for details.
In this section, only the NFS (and RPC) header is described. The length of this header should be added
to the length of the primary type of the packet.
The I210 starts looking within the UDP/TCP payload to check whether it contains an NFS header. This is
determined when either the source or destination port of the TCP/UDP is equal to 0x801.
• Destination port equal 0x801 => NFS write request (as received by the NFS server).
• Source port equal 0x801 => NFS read response (as received by the NFS client).
The VSZ/CSZ fields are each 4 bytes long but their actual values are less than 2 words by definition so
hardware only checks the lower 2 bytes of these size fields.
RPC read requests are not described in this document since they contain only headers and no data
therefore there is no need to split them.
Note: NFS over TCP is problematic – due to the fact that the RPC header might appear in the middle
of the frame. It remains to be checked if software always supports putting the RPC right next
to the UDP/TCP header.
A.1.5.1 Type 3.1: NFS Write Request
In all write requests, the destination port of the TCP/UDP header must be 0x801.