Mount parameters
This package adds on the standard mount parameters that the original Linux NFS stack originally supports.
Based on the IP source routing configuration, extra parameters are needed to utilize the configuration in the mount path.
The code changes in this repository add the following parameters:
remoteports=<FIRST-LAST>~<SINGLE-IP-ADDR>...
- A list of IPv4 addresses for the remote ports to bind.
IP addresses can be given as an inclusive range, with -
as a delimiter, e.g.
FIRST-LAST
. Multiple ranges or IP addresses can be separated by ~
.
localports=<FIRST-LAST>~<SINGLE-IP-ADDR>...
- A list of IPv4 addresses for the local ports to bind.
The localports
parameter is not necessary for multipath to work. However
if the local machine has more than one IP address configured for the local
subnet, it may be useful to prevent a single local port from trying to surpass
its maximum line rate while the other local ports are underused.
Also, for GDS-based setups, it is necessary for making the transport layer to perform GPU-based routing for GPU overload to be utilized.
nconnect=<NUM>
- Upstream NFS stacks introduced this parameter to allow multiple connections per mount. Legacy VAST NFS 3.x introduces this for Linux kernels for which it was not backported. The recommended value for this parameter is 4 for RDMA mounts and 8 for TCP mounts.
Usage of parameter for support of multipath
Multipath can be used with TCP (proto=tcp
) at the cost of higher CPU utilization
compared to RDMA. Here is an example of such multipath mount:
mount -o vers=3,nconnect=8,remoteports=172.25.1.1-172.25.1.32 172.25.1.1:/
This mount command will result in 8 TCP connections, going to a psuedo-random sub-range of 8 addresses under the provided 32 address range.
Here is a more advanced example of an RDMA mount with 4 connections, 8 remote ports and 4 local ports:
mount -o proto=rdma,port=20049,vers=3,nconnect=4,localports=172.25.1.101-172.25.1.104,remoteports=172.25.1.1-172.25.1.8 172.25.1.1:/
Advanced parameters
NFS optimizations
forcerdirplus
- Instructs the NFS client to always send an NFSv3
READDIRPLUS
requests for servers that support it. On some remote systems this
can improve directory listing performance significantly.
Additional transport parameters
These parameters can be used for experimentation and fine-tuning.
-
noidlexprt
- Do not disconnect idle connections. -
remoteports_offset
- Controls the offset into picking out ofremoteports
for transports if the number of actual transports vianconnect
is smaller than the amount of IPs given here. If not given a pseudo-random number is picked based on source IP address.
Document generated on 2022.05.17 09:13 for v4.0-pre6, branch dev