ugh.book

(singke) #1

284 NFS



  • NFS file servers simplify network management because only one
    computer need be regularly written to backup tape.

  • NFS lets “client computers” mount the disks on the server as if they
    were physically connected to themselves. The network fades away
    and a dozen or a hundred individual workstations look to the user
    like one big happy time-sharing machine.

  • NFS is “operating system independent.” This is all the more remark-
    able, considering that it was designed by Unix systems program-
    mers, developed for Unix, and indeed never tested on a non-Unix
    system until several years after its initial release. Nevertheless, it is
    testimony to the wisdom of the programmers at Sun Microsystems
    that the NFS protocol has nothing in it that is Unix-specific: any
    computer can be an NFS server or client. Several companies now
    offer NFS clients for such microcomputers as the IBM PC and Apple
    Macintosh, apparently proving this claim.

  • NFS users never need to log onto the server; the workstation alone
    suffices. Remote disks are automatically mounted as necessary, and
    files are accessed transparently. Alternatively, workstations can be
    set to mount the disks on the server automatically at boot time.


But practice rarely agrees with theory when the Nightmare File System is
at work.

Not Fully Serviceable


NFS is based on the concept of the “magic cookie.” Every file and every
directory on the file server is represented by a magic cookie. To read a file,
you send the file server a packet containing the file’s magic cookie and the
range of bytes that you want to read. The file server sends you back a
packet with the bytes. Likewise, to read the contents of a directory, you
send the server the directory's magic cookie. The server sends you back a
list of the files that are in the remote directory, as well as a magic cookie
for each of the files that the remote directory contains.

To start this whole process off, you need the magic cookie for the remote
file system's root directory. NFS uses a separate protocol for this called
MOUNT. Send the file server’s mount daemon the name of the directory
that you want to mount, and it sends you back a magic cookie for that
directory.
Free download pdf