Network File System definition
Network File System is a distributed file system protocol that enables computers to share files and folders as if they were locally stored.
Due to its simplicity, scalability, and compatibility with different systems, NFS is used in various computing environments, particularly in enterprise settings.
Key characteristics of NFS
- Transparency. Provides a transparent view of the remote files to the user.
- Client-server architecture. Operates on a client-server model where a server shares the resources and clients access them.
- Platform independence. Is independent of the operating system and hardware.
- Statelessness. Each request from a client to a server is independent and self-contained.
- Caching. Implements caching for improved performance, storing copies of frequently accessed data locally.
History of NFS
- Development. Sun Microsystems developed NFS in 1984 and used it internally as a testbed for further development.
- NFSv2. Sun Microsystems released an updated version in 1945 — it was the first public version and operated over UDP (User Datagram Protocol).
- NFSv3. In the early 1990s, NFSv3 brought improvements like support for 64-bit file sizes and offsets.
- NFSv4. Released in 2003 as a revision of the protocol, NFSv4 introduced stateful operations, improved security (with the integration of Kerberos), and better support for WANs (Wide Area Networks).
- Continued Evolution. The evolution of the protocol continued with sub-versions like NFSv4.1 (introduced in 2010) and NFSv4.2 (in 2016). These versions added features like server-side cloning of data, better support for applications that require small I/O operations, and improvements in security and error recovery.