I want to measure as many of the layers of the NFS stack starting with the
client IO request down to the NFS Server.
Measuring the NFS Server seems pretty easy with

 nfsv3:::op-read-start ,nfsv4:::op-read-start
 nfsv3:::op-read-done, nfsv4:::op-read-done

I can even go below the NFS server pretty easy. In my case I'm using ZFS so
I can use
 zfs_read:entry to zfs_read:return

What I don't see how to do is measure the other layers of the stack. I'm
imagining the stack like
(this will only look correct in fixed width fonts)

user|                                                       |user
asks|                                                       |gets
for |                                                       |the
 io |                       Machine A                       |IO
----                                                         -----
  1 |OS|                                                 |OS| 15
    2  |NFS|                                         |NFS| 14
        3  |TCP|                                 |TCP| 13
-----------------------------------------------------------------
network     4  |NET|                        |NET| 12
------------------------------------------------------------------
               5   |TCP|    Machine B   |TCP| 11
                   6   |OS|          |OS| 10
                      7   |NFS|  |NFS| 9
                          8   |IO|

The layers I measure now
  users start and end time
7 nfsv3:::op-read-start ,nfsv4:::op-read-start
8 zfs_read:entry to zfs_read:return
9 nfsv3:::op-read-done, nfsv4:::op-read-done

I'm wondering if and/or how I could measure the other layers.


-- 
- Kyle

O: +1.415.341.3430
F: +1.650.494.1676
275 Middlefield Road, Suite 50
Menlo Park, CA 94025
http://www.delphix.com
_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org

Reply via email to