OpenSolaris

You are not signed in. Sign in or register.

OpenSolaris Project: DTrace Provider for NFSv4

View the leaders for this project
Project Observers

Endorsing communities

DTrace
NFS
OS/Net (ON)
Observability
Performance

Introduction

This project looks to provide DTrace providers for NFSv4. The probes and their arguments are a nearly one-to-one mapping with the NFSv4 protocol.

Familiarity with the D language and the NFSv4 protocol will allow you to use nfs4trace to profile, debug, or otherwise analyze the OpenSolaris NFSv4 client or server. Some possible uses:

  • profile NFSv4 compounds
    • collate by tag, address, …
    • gather their frequency, duration, …
  • snoop-like functionality without the problems of the physical network
    • encrypted packets
    • packet fragmentation
    • which interface(s) to watch
  • watch for interesting events
    • activity on the callback channel
    • delegations issued, recalled, returned
    • locking, errors, lease renewals, state recovery, …

A kernel developer can combine these probes with the rest of the DTrace probes to do very in-depth analysis.

For those lacking familiarity of D and/or NFSv4, there will be example D scripts that make use of nfs4trace. Watch the announcements section for details as they become available.

Current State of the Project

The NFSv4 Server side DTrace providers were integrated into Solaris Nevada build 80. On related note, the NFSv3 Server side providers were integrated into Solaris Nevada build 84.

The remaining work for this project includes providers for the NFS client. Work on this has not yet been started.

Stability

The interfaces for the NFSv4 and NFSv3 server providers have been ARC'd and are at a committed stability level. Preliminary documentation exists on the DTrace wiki provider page.

The PSARC case for The DTrace NFSv4 provider is PSARC/2007/665. The PSARC case for the DTrace NFSv3 provider is PSARC/2008/050.

Obtaining the Providers

NFSv4 Server Provider

Included in Solaris Nevada build 80 or later.

NFSv3 Server Provider

Included in Solaris Nevada build 84 or later

Client Providers

Work not yet started…

NFSv4 Minor Version 1 (NFSv4.1)

As the NFSv4.1 work solidifies, this provider will add new probes to accommodate it.

Announcements

07 Dec 2007 NFSv4 Server Provider in Nevada
29 Aug 2006 Downloads offline
11 Aug 2006 nfsperf released
08 Jun 2006 New release: all ops covered
17 Apr 2006 Download available: Nevada build 37 based BFU archives