nfsd - The remote NFS compatible server
/usr/sbin/nfsd [-t num_tcpthreads] [-u num_udpthreads]
The following form of the nfsd command is not recommended
and is supported only for backward compatibility:
/usr/sbin/nfsd [numthreads]
Specifies a number of TCP server threads (per RAD) to
spawn. A value of 8 is recommended as a start. Specifies
a number of UDP server threads (per RAD) to spawn. A
value of 8 is recommended as a start.
The nfsd daemon runs on a server machine to service NFS
requests from client machines. The daemon spawns a number
of server threads that process NFS requests from client
machines. At least one server thread must be running for
a machine to operate as a server.
There are two types of server threads: a server thread
that processes NFS requests sent using TCP and a server
thread that processes NFS requests sent using UDP. This
is necessary because the kernel paths for UDP and TCP NFS
messages are different. The -t option specifies the number
of TCP threads to run and the -u option specifies the
number of UDP threads to run.
On systems that support Cache Coherent NUMA, the number of
threads is per Resource Affinity Domain (RAD). As you add
RADs, the NFS server will automatically scale by creating
additional threads. NFS requests are processed by a particular
RAD based on the file being accessed; this confines
cached information about a file to a single RAD for
efficiency. See numa_intro(3) for more information on the
NUMA architecture.
If you use the SysMan Menu to configure NFS, it sets the
default at 8 UDP and 8 TCP threads. However, a user can
have any number of TCP and UDP nfsd threads running up to
a maximum of 128 threads. The optimal number of TCP
server threads and UDP server threads depends on many factors.
See nfsiod(8) for more information.
The server threads are implemented as kernel threads; they
are part of Process ID 0, not the nfsd process. The ps
axml command displays idle server threads under PID 0.
Idle threads will be waiting on nfs_udp_wait or
nfs_tcp_wait. Therefore, if 16 server threads are configured,
only one nfsd process is displayed in the output
from the ps command, although 16 server threads are available
to handle NFS requests.
Files that are larger than 2 gigabytes are exported as 2
gigabyte files when accessed by NFS Version 2. NFS Version
2 is a 32-bit protocol, therefore, the size and offset
fields are 32-bit quantities (on Alpha UFS they are
64-bit quantities). Use caution when accessing files
larger than 2 gigabytes from NFS clients.
In the following example, 16 threads are run (8 for TCP
and 8 for UDP): nfsd -t 8 -u 8
Specifies the command path Specifies the file for logging
startup errors (before the server threads are started)
Specifies the file for logging NFS errors (after the
server threads are started)
Commands: mount(8), mountd(8), nfsconfig(8), nfsstat(8),
portmap(8)
Systemcalls: nfssvc(2)
nfsd(8)
[ Back ] |