From Fedora Project Wiki
Line 13: Line 13:
* Percentage of completion: 95%
* Percentage of completion: 95%


All that is left is for the mount command to start negotiating
All that is left is for the mount command to start negotiating the protocol at with version 4 instead of version 3 as it does today.
the protocol at with verion 4 instead of version 3 as it does
today.


[Update: I have the patches to do the negotiation and I'm  
[Update: I have the patches to do the negotiation and I'm currently committing them to upstream git tree and then bring them into the nfs-utils rpm along with doing some testing on the way]
currently committing them to upstream git tree and then
bring them into the nfs-utils rpm along with doing some
testing on the way]


== Detailed Description ==
== Detailed Description ==

Revision as of 15:22, 15 December 2009

NFSv4Default

Summary

Change the default NFS protocol to version 4.

Owner

Current status

  • Targeted release: Fedora 13
  • Last updated: 2009-10-02
  • Percentage of completion: 95%

All that is left is for the mount command to start negotiating the protocol at with version 4 instead of version 3 as it does today.

[Update: I have the patches to do the negotiation and I'm currently committing them to upstream git tree and then bring them into the nfs-utils rpm along with doing some testing on the way]

Detailed Description

The latest version of the NFS protocol is version 4, which was first introduced in Fedora F-2 (the first distro to have such support). The current default NFS version is version 3. Meaning when an simple NFS mount is done (i.e. mount server:/export /mnt) version 3 is the first protocol version that is tried.

With the proposed changes, version 4 would be tried first. If the server does not support version 4, the mount would then try version 3.

Benefit to Fedora

One of the major benefit is performance. In version 4, the server has state which means it can communicate with each NFS client. The means the server can issue things called delegations (or leases) for files allowing the v4 client to aggressively cache which drastically cuts down on network traffic between the client and server.

There are a number of other benefits which are documented here.

Scope

There are basically three parts to make this happen:

  1. Change the exports on the server so v3 and v2 exports can seamlessly be used by v4 clients.
  2. Change the mount command to start negotiating with the version 4 protocol and then fall back to version 3 if the server does not support v4 (similar to what happens today with version 3 and version 4)
  3. Introduce a NFS mount configuration file where users can define which protocol version should be negotiated.

How To Test

  • The usual Connectathon tests will be used and well as any other filesystem tests that are available (such as fsx).

The official link is at : http://www.connectathon.org/nfstests.html My Git tree I used to keep updates are at: git://FedoraPeople.org/~steved/cthon04.git From this tree I generally use the runcthon tests script which runs all the tests simultaneously

User Experience

This transition should be seamless to the users...

Dependencies

The only dependency is on the nfs-utils package.

Contingency Plan

If the code is not ready, then the version 3 will still be the default.

Documentation

Release Notes

  • Fedora now use NFS version 4 as the default protocol version.

Comments and Discussion