Definition of Network File System (NFS) in The Network Encyclopedia.
What is NFS (Network File System)?
NFS stands for Network File System, is a client/server distributed file system developed by Sun Microsystems that has become the standard file system for various implementations of the UNIX platform. Network File System (NFS) lets users transparently store and access information on both local and remote computers on a TCP/IP internetwork.
How It Works
NFS uses remote procedure calls (RPCs) running over User Datagram Protocol (UDP) on server port 2049 for stateless communication between clients and file servers on the network. NFS clients (client machines running NFS client software) import remote file systems from NFS servers, while the NFS servers export local file systems to clients.
Machines running the NFS client can connect to NFS servers and read, modify, copy, move, or delete files on the server using RPC requests such as READ, WRITE, CREATE, and MKDIR. To the user accessing the remote file system from the client, the files appear to be stored locally on his or her system.
Before a user can access files within the directory structure on the local UNIX file system of the NFS server, the administrator must mount the portions of the local UNIX file system that will be made accessible to clients and assign appropriate user privileges.
Network File System core infrastructure
Network File System relies on core infrastructure common to nearly every operation. The NFSv4.1 protocol is a Remote Procedure Call (RPC) application that uses RPC version 2 and the corresponding eXternal Data Representation (XDR).
The NFSv4.1 protocol is a Remote Procedure Call (RPC) application that uses RPC version 2 and the corresponding eXternal Data Representation (XDR)
Previous NFS versions have been thought of as having a host-based authentication model, where the NFS server authenticates the NFS client, and trusts the client to authenticate all users. Actually, NFS has always depended on RPC for authentication. One of the first forms of RPC authentication, AUTH_SYS, had no strong authentication and required a host-based authentication approach. NFSv4.1 also depends on RPC for basic security services and mandates RPC support for a user-based authentication model. The user-based authentication model has user principals authenticated by a server, and in turn, the server authenticated by user principals. RPC provides some basic security services that are used by NFSv4.1.
RPC Security
RPC security is encapsulated in the RPC header, via a security or authentication flavor, and information specific to the specified security flavor. Every RPC header conveys information used to identify and authenticate a client and server.