Subject: amd64 + Linux + IP fragmentation = stall?
To: None <current-users@netbsd.org>
From: Frank Kardel <kardel@acm.org>
List: current-users
Date: 04/14/2004 22:43:00
Hi *,

i just set up an amd64 machine (ASUS K8V). Everything looked fine
until some Linux boxes attempted to use that machine as
NFS server.

The NFS-writes where stalled as the fragmented IP packets
where not answered. Statistics show that fragmented packets
are received and time out. 

From netstat -s:
ip:
        7228571 total packets received
        0 bad header checksums
        0 with size smaller than minimum
        0 with data size < data length
        0 with length > max ip packet size
        0 with header length < data size
        0 with data length < header length
        0 with bad options
        0 with incorrect version number
        38361 fragments received
        0 fragments dropped (dup or out of space)
        0 fragments dropped (out of ipqent)
        0 malformed fragments dropped
        9287 fragments dropped after timeout
        1326 packets reassembled ok
        7188236 packets for this host
        0 packets for unknown/unsupported protocol
        1 packet forwarded (0 packets fast forwarded)
        3286 packets not forwardable
        1 redirect sent
        0 packets no matching gif found
        4988318 packets sent from this host
        0 packets sent with fabricated ip header
        0 output packets dropped due to no bufs, etc.
        1 output packet discarded due to no route
        1184 output datagrams fragmented
        18272 fragments created
        0 datagrams that can't be fragmented
        0 datagrams with bad address in header

Successful reassembly can be seen when a NetBSD 1.6ZK is the client.
Linux does seem to trigger a reassembly inability in
NetBSD 2.0C (20040411) on amd64. 

Any ideas ?

Frank