FreeBSD NFS server not responding to TCP SYN packets from Linux/SunOS clients

rick at snowhite.cis.uoguelph.ca rick at snowhite.cis.uoguelph.ca
Fri Oct 14 10:41:37 PDT 2005


> Tcp always throws away retransmissions.  Doesn't matter whether the data is
> still in the receive socket queue or not.  The nfs server will never see
> replayed requests as a result of tcp retransmission.

1) Yes, of course. (Brain fart on my part. I mentioned I wasn't a TCP wizzard,
didn't I?:-)
There is still the problem that not all
clients obey the "only retry an RPC after a disconnect/reconnect" rule,
but that should be fixed for NFSv4.

>   The problem is "how do you make sure the nfsd threads don't start a
>   request if the disk I/O subsystem is backlogged".
> 
> Isn't this simply a matter of choosing the right number of nfsd threads?

That's the only mechanism available to-day (at least for my server and,
I think, the current FreeBSD one). Unfortunately load is pretty dynamic
and it might be nice if "the number of active nfsd threads" changed to
reflect that, without manual sysadmin intervention.

However, given 1) and clients that only retry RPCs after a reconnect, I
don't think it will be all that critical. The clients will see the slow
response to RPCs and new requests will be limited by the number of threads
doing I/O on the client.

Other opinions? rick


More information about the freebsd-fs mailing list