NFSv4 - how to set up at FreeBSD 8.1 ?

perryh at pluto.rain.com perryh at pluto.rain.com
Thu Jan 6 08:10:44 UTC 2011


John Baldwin <jhb at freebsd.org> wrote:

> ... even NFS UDP mounts maintain their own set of "socket" state
> to manage retries and retransmits for UDP RPCs.

Not according to what I remember of the SunOS NFS documentation,
which indicated that the driving force behind using UDP instead of
TCP was to have the server be _completely_ stateless.  (Of course
locking is inherently stateful; they made it very clear that the
locking protocol was considered to be an adjunct rather than part
of the NFS protocol itself.)

It's been quite a few years since I read that, and I didn't get
into the details, but I suppose the handle returned to a client (in
response to a mount or open request) must have contained both a
representation of the inode number and a unique identification of
the filesystem (so that, in the case where server crash recovery
included a newfs and reload from backup, the FS ID would not match
and the client would get a "stale handle" response).  All of the
retry and retransmit burden had to have been managed by the client,
for both reading and writing.


More information about the freebsd-stable mailing list