Sun's NFS protocol provides transparent remote access to shared file systems across networks.
The NFS protocol is designed to be machine, operating system, network architecture, and transport protocol independent.
This independence is achieved through the use of Remote Procedure Call (RPC) primitives built on top of an eXternal Data Representation (XDR).

The supporting MOUNT protocol performs the operating system-specific
functions that allow clients to attach remote directory trees to a point within the local file system.
The mount process also allows the server to grant remote access privileges to a restricted set of clients via export control.

The Lock Manager provides support for file locking when used in the NFS environment.
The Network Lock Manager (NLM) protocol isolates the inherently stateful aspects of file locking into a separate protocol.

NFS version 2:

NFS version 3:

NFS version 4:
A distributed filesystem protocol which owes heritage to NFS protocol versions 2 and 3.
Unlike earlier versions, the NFS version 4 protocol supports traditional file access while integrating support for file locking and the mount protocol.
In addition, support for strong security (and its negotiation), compound operations, client caching, and internationalization have been added.