Yet another good reason to switch to NFSv4!

There are currently two main NFS protocol versions in mainstream use. The first is version 3, which was introduced in 1995 as part of RFC 1813. NFSv3 implementations use separate daemons to implement the locking (rpc.lockd), status (rpc.statd), mount (rpc.mountd) and port assignments (portmap) features required by the protocol. NFSv4, which was introduced in 2003 as part of RFC 3530, takes a different approach. The locking and stat functions are now part of the core NFS implementation, so you no longer need to ensure that the portmap, rpc.lockd and rpc.statd daemons are running on your Linux NFSv4 clients and servers. There is a blurb regarding this in the Redhat Linux 5.5 administration guide:

Because protocol support has been incorporated into the v4 protocol, NFSv4 has no interaction with the portmap, rpc.lockd, and rpc.statd daemons. NFSv4 listens on the well-known TCP port 2049, which eliminates the need for portmap interaction. The mounting and locking protocols have been incorporated into the V4 protocol which eliminates the need for interaction with rpc.lockd and rpc.statd. The rpc.mountd daemon is still required on the server, but is not involved in any over-the-wire operations.

This is an interesting tidbit that I wasn’t aware of, and I’m learning a lot of new things as I dig through some of the NFS implementation details. If you are interested in learning how NFS truly works, check out the NFSv3 and NFSv4 RFCs! You will be glad you did!!

2 thoughts on “Yet another good reason to switch to NFSv4!”

  1. From our experience using NFSv4 and Netapp with both Solaris or RHEL clients, its just not worth the pain at the moment, its too much of a new technology.

    We’ve found Solaris filesystems becoming unresponsive when read/write delegation is enabled on the netapp side, as well as Redhat clients having ownership issues when LDAP is enabled on the filer side due to some issues now patched in RHEL5.4.

    In addition to this we have Redhat looking at more stability issues we have experienced with NFSv4 and have a test kernel for RHEL 5.6 going through our labs at the moment…

    At this stage, I dont think its ready for primetime…

    ./kj

    ps, Great Blog.

Leave a Reply

Your email address will not be published. Required fields are marked *