Network File System (NFS)
The Network File System is a distributed file system protocol originally developed by Sun Microsystems.
Differences Between NFS Versions
Version 1 of the NFS protocol was used in-house experimental purposes at Sun Microsystems, and it was never released to the public.
Version 2 of the NFS protocol (defined in RFC 1094, March 1989) was developed as a joint venture between Sun Microsystems and IBM. It was designed as a stateless protocol and file locking was implemented outside of the core protocol. It originally operated entirely over UDP, but several vendors later added support for the use of TCP protocol.
Version 3 of the NFS protocol (defined in RFC 1813, June 1995) added:
- support for 64-bit file sizes and offsets, to handle files larger than 4 gigabytes (GB);
- support for asynchronous writes on the server, to improve write performance;
- additional file attributes in many replies, to avoid the need to re-fetch them;
- a READDIRPLUS operation, to get filehandles and attributes along with filenames when scanning a directory
- assorted other improvements.
Version 4 of the NFS protocol (defined in RFC 3010, December 2000, and later revised in RFC 3530, April 2003), was influenced by AFS and CIFS.
Version 4 of the NFS protocol added:
- stateful protocol support
- strong security
- A byte-range advisory Network Lock Manager (NLM) protocol
- The remote quota reporting (RQUOTAD) protocol
http://nfs.sourceforge.net/nfs-howto/ - Linux NFS-HOWTO
http://nfs.sourceforge.net/ - Linux NFS Overview, FAQ and HOWTO Documents
http://vger.kernel.org/vger-lists.html#linux-nfs - linux-nfs Mailing List
http://www.troubleshooters.com/linux/nfs.htm - NFS: Overview and Gotchas