The NFSv2 Protocol
Explore the NFSv2 protocol to understand how it enables stateless file system operations in distributed environments. Learn how file handles uniquely identify files and how key protocol messages like LOOKUP, READ, WRITE, and GETATTR support POSIX file system access without server-side state tracking.
We'll cover the following...
We thus arrive at the NFSv2 protocol definition. Our problem statement is simple:
THE CRUX: HOW TO DEFINE A STATELESS FILE PROTOCOL
How can we define the network protocol to enable stateless operation? Clearly, stateful calls like
open()can’t be a part of the discussion (as it would require the server to track open files). However, the client application will want to callopen(),read(),write(),close()and other standard API calls to access files and directories. Thus, as a refined question, how do we define the protocol to both be stateless and support the POSIX file system API?
File handle
One key to understanding the design of the NFS protocol is understanding the file handle. File handles are used to uniquely describe the file or directory a particular operation is going ...