Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

nfsiod(8) [osf1 man page]

nfsiod(8)						      System Manager's Manual							 nfsiod(8)

NAME
nfsiod, biod - The local NFS compatible asynchronous I/O daemon SYNOPSIS
nfsiod [ numthreads ] DESCRIPTION
The nfsiod daemon runs on an NFS compatible client machine and spawns several IO threads to service asynchronous I/O requests to its server. The I/O threads improve performance of both NFS reads and writes. Both try to enlist the aid of an idle I/O thread. If none is available, the process itself issues the request to the server and waits for the reply. The optimum number of I/O threads to run depends on many variables, such as how quickly the client will be writing, how many files will be accessed simultaneously, and the behaviour of the NFS server. For use with a Tru64 UNIX server, 7 is a good number of I/O threads for most systems. When reading, if the client believes the process is reading a file sequentially, it requests an I/O thread to read a block ahead of what the process is currently requesting. If the readahead completes before the process asks for that block, then the subsequent read system call for that data completes immediately and does not have to wait for the NFS request to complete. Read ahead will be triggered again so the read may find that next block available as well. When writing a file, the client takes the process's data, passes the request to an I/O thread and immediately returns to the process. If the process is writing data faster than the network or server can process, then eventually all the I/O threads become busy and the process has to handle a NFS write itself. This means the process has to wait until the server finishes the write. For Tru64 UNIX servers, the NFS block size is 8Kb and UFS tries to cluster I/O 64Kbs at a time. If the client is running with 7 I/O threads, 8 write requests can be in progress at once. This allows the client and server to write data 64Kbs at a time and is the reason for recommending 7 I/O threads. Unlike nfsd, each client thread can use either UDP or TCP. However, if TCP mounts are active, the nfsiod process will time out, close idle TCP connections, and acknowledge any connections closed by the server. The nfsiod process is also responsible for syncing the access time and modify times for special files and named pipes (fifos). Because I/O to these files does not go through the NFS server, NFS clients have to directly update the access time and modify time attributes. The client threads are implemented as kernel threads; they are part of Process ID 0, not the nfsiod process. The ps axml command displays idle I/O threads under PID 0. Idle threads will be waiting on nfsiod_wait. Therefore, if 7 I/O threads are configured, only 1 nfsiod process is displayed in the output from the ps command, although 7 client threads are available to handle NFS requests. FILES
Specifies the command path Specifies the file for logging NFS activity. RELATED INFORMATION
Commands: nfsd(8), nfsstat(8) Daemons: async_daemon(2) delim off nfsiod(8)

Check Out this Related Man Page

rpc.nfsd(8)                                                   System Manager's Manual                                                  rpc.nfsd(8)

NAME
rpc.nfsd - NFS server process SYNOPSIS
/usr/sbin/rpc.nfsd [options] nproc DESCRIPTION
The rpc.nfsd program implements the user level part of the NFS service. The main functionality is handled by the nfsd kernel module. The user space program merely specifies what sort of sockets the kernel service should listen on, what NFS versions it should support, and how many kernel threads it should use. The rpc.mountd server provides an ancillary service needed to satisfy mount requests by NFS clients. OPTIONS
-d or --debug enable logging of debugging messages -H or --host hostname specify a particular hostname (or address) that NFS requests will be accepted on. By default, rpc.nfsd will accept NFS requests on all known network addresses. Note that lockd (which performs file locking services for NFS) may still accept request on all known network addresses. This may change in future releases of the Linux Kernel. -p or --port port specify a diferent port to listen on for NFS requests. By default, rpc.nfsd will listen on port 2049. -N or --no-nfs-version vers This option can be used to request that rpc.nfsd does not offer certain versions of NFS. The current version of rpc.nfsd can support both NFS version 2,3 and the newer version 4. -s or --syslog By default, rpc.nfsd logs error messages (and debug messages, if enabled) to stderr. This option makes rpc.nfsd log these messages to syslog instead. Note that errors encountered during option processing will still be logged to stderr regardless of this option. -T or --no-tcp Disable rpc.nfsd from accepting TCP connections from clients. -U or --no-udp Disable rpc.nfsd from accepting UDP connections from clients. nproc specify the number of NFS server threads. By default, just one thread is started. However, for optimum performance several threads should be used. The actual figure depends on the number of and the work load created by the NFS clients, but a useful starting point is 8 threads. Effects of modifying that number can be checked using the nfsstat(8) program. Note that if the NFS server is already running, then the options for specifying host, port, and protocol will be ignored. The number of processes given will be the only option considered, and the number of active nfsd processes will be increased or decreased to match this number. In particular rpc.nfsd 0 will stop all threads and thus close any open connections. NOTES
If the program is built with TI-RPC support, it will enable any protocol and address family combinations that are marked visible in the netconfig database. SEE ALSO
rpc.mountd(8), exports(5), exportfs(8), rpc.rquotad(8), nfsstat(8), netconfig(5). AUTHOR
Olaf Kirch, Bill Hawes, H. J. Lu, G. Allan Morris III, and a host of others. 7 Aug 2006 rpc.nfsd(8)
Man Page