Skip to main content

Module nfs

Module nfs 

Source
Expand description

Userspace NFSv4.2 compound RPC client bypassing VFS per-file overhead. Userspace NFSv4.2 compound RPC client for bypassing VFS per-file overhead.

Instead of routing small file writes through the kernel VFS (4-6 NFS round-trips per file), this module constructs raw XDR compound payloads and sends them over TCP directly to the NFS server. One compound = one round-trip per file.

Only active for NFSv4.2 targets with AUTH_SYS, files <=16MB.

Re-exports§

pub use mount::NfsBypassInfo;
pub use mount::NfsSecurity;
pub use mount::NfsTransportSecurity;
pub use client::NfsCompoundClient;
pub use client::NfsClientPool;

Modules§

client
Persistent TCP client for sending NFSv4.2 compound RPCs directly to the NFS server, bypassing the Linux VFS for small-file writes.
idmap
NFSv4 identity mapping: uid/gid -> user@domain / group@domain strings.
mount
Parses /proc/self/mountinfo to identify NFSv4.2 mounts and extracts opaque NFS file handles via name_to_handle_at(2) for use in userspace compound RPCs.
rpc
Constructs NFSv4.2 compound RPC payloads and parses server replies.
xdr
Zero-dependency XDR (External Data Representation) encoder and decoder.

Enums§

NfsError
NFS-specific errors for the compound RPC bypass.
NfsTransportType
The transport protocol used for an NFS connection.

Constants§

NFS_BYPASS_MAX_SIZE
Maximum file size eligible for NFS compound bypass (16MB).
NFS_BYPASS_WRITE_MAX
Maximum file data for compound WRITE ops (1MB). Servers negotiate ca_maxrequestsize (~2MB on knfsd); compound headers consume ~300B.