opnsense-src/sys/fs/nfsclient
Rick Macklem 9ec7dbf46b nfscl: Add a Linux compatible "nconnect" mount option
Linux has had an "nconnect" NFS mount option for some time.
It specifies that N (up to 16) TCP connections are to created for a mount,
instead of just one TCP connection.

A discussion on freebsd-net@ indicated that this could improve
client<-->server network bandwidth, if either the client or server
have one of the following:
- multiple network ports aggregated to-gether with lagg/lacp.
- a fast NIC that is using multiple queues
It does result in using more IP port#s and might increase server
peak load for a client.

One difference from the Linux implementation is that this implementation
uses the first TCP connection for all RPCs composed of small messages
and uses the additional TCP connections for RPCs that normally have
large messages (Read/Readdir/Write).  The Linux implementation spreads
all RPCs across all TCP connections in a round robin fashion, whereas
this implementation spreads Read/Readdir/Write across the additional
TCP connections in a round robin fashion.

(cherry picked from commit 1e0a518d65)
2021-08-03 16:40:47 -07:00
..
nfs.h Remove "struct ucred*" argument from vtruncbuf 2019-05-24 20:27:50 +00:00
nfs_clbio.c nfsclient: add nfs node locking around uses of n_direofoffset 2021-03-15 12:34:13 -07:00
nfs_clcomsubs.c nfscl: Add support for va_birthtime to NFSv4 2021-05-21 18:16:01 -07:00
nfs_clkdtrace.c fs: clean up empty lines in .c and .h files 2020-09-01 21:18:40 +00:00
nfs_clkrpc.c fs: clean up empty lines in .c and .h files 2020-09-01 21:18:40 +00:00
nfs_clnfsiod.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
nfs_clnode.c nfscl: add check for NULL clp and forced dismounts to nfscl_delegreturnvp() 2021-05-11 19:18:17 -07:00
nfs_clport.c nfssvc: Zero the buffer copied out when NFSSVC_DUMPMNTOPTS is set 2021-07-23 07:49:31 -04:00
nfs_clrpcops.c nfscl: Add a Linux compatible "nconnect" mount option 2021-08-03 16:40:47 -07:00
nfs_clstate.c nfscl: Change the default minor version for NFSv4 mounts 2021-07-11 15:26:55 -07:00
nfs_clsubs.c nfsclient: add nfs node locking around uses of n_direofoffset 2021-03-15 12:34:13 -07:00
nfs_clvfsops.c nfscl: Add a Linux compatible "nconnect" mount option 2021-08-03 16:40:47 -07:00
nfs_clvnops.c nfscl: Add support for va_birthtime to NFSv4 2021-05-21 18:16:01 -07:00
nfs_kdtrace.h fs: clean up empty lines in .c and .h files 2020-09-01 21:18:40 +00:00
nfsmount.h nfscl: Add a Linux compatible "nconnect" mount option 2021-08-03 16:40:47 -07:00
nfsnode.h Fix interface between nfsclient and vnode pager. 2019-10-22 16:17:38 +00:00
nlminfo.h