NFS is a distributed file system protocol developed by sun microsystems in 1984. It allows user on a client computer to access file on a computer network much like local storage. NFS is basically developed for sharing of files or folders between Linux and Unix system. It allows you to mount your local file system over a network and remote hosts to interact with them. As they are basically mounted on the same system. A file system specifies how data is saved and retrieved in the form of files from storage devices including tape drives, solid-state drives, and hard disc drives. The method for storing and retrieving files from storage devices via networks is outlined by the NFS network file-sharing protocol.
It was initially designed for local file sharing among Unix workstations. The Internet Engineering Task Force (IETF) first released the NFS protocol specification as an internet protocol in RFC 1094 in 1989. In RFC 7530, which describes the NFS protocol, the most recent version is described.
One of the most used protocols for file servers is NFS. Most current operating systems (OSes) are supported by NFS implementations, including the following:
Hewlett Packard Enterprise HP-UX
Microsoft Windows Linux
Amazon Elastic File System, Microsoft Azure’s NFS file shares, and Google’s google Cloud Filestore are just few of the cloud providers that use the NFS protocol for the purpose of cloud storage.
Any device that can be connected to an NFS host file system can be shared. Through NFS. solid state drives, tape drives, Hard Drives, printers, and other peripherals fall under this category. Users who have the necessary rights can access resources from their client computers as if they were locally mounted on NFS.
Since NFS is an application layer protocol, it can function with any stack of transport or networking protocols. NFS, however, is often put into use on machines that use the TCP/IP protocol set. Initially, NFS was designed as a straightforward, stateless protocol for distributed file system sharing.
How does the Network File System work?
A host that complies with the following specifications is an NFS server:
1) has NFS server software installed.
2) at least one network connection for sharing NFS resources.
3) and is set up to accept and process NFS requests via the network connection.
A host that complies with the following criteria is an NFS client:
1) has NFS client software installed.
2) is connected to an NFS server across a network.
3) has access rights to resources on the server, and is set up to send and receive NFS requests through the connection.
Advantages of NFS
The following are few of the many advantages:
Mature. NFS is a mature protocol, which implies that the majority of its implementation, security, and useas well as any potential weaknessesare widely established.
Open. NFS is a free and open network protocol, with documentation of its ongoing evolution in the internet standards.
Cost-effective. Because it makes use of the existing network infrastructure, NFS is a simple and inexpensive solution for network file sharing.
centrally controlled NFS’s centralized management decreases the need for added software and disk space on individual user systems.
Disadvantages of NFS
The following are some disadvantages of utilising NFS:
NFS is inherently unsafe because it relies on RPCs, hence it should only be used on a reliable network protected by a firewall. In the absence of this, internet threats will be able to attack NFS.
According to certain evaluations of NFSv4 and NFSv4.1, these versions have constrained bandwidth and scalability, and NFS slows down in the presence of high network traffic. According to reports, NFSv4.2 has solved the bandwidth and scalability problems.