What happens with I/O requests over NFS and more specifically with Oracle? How does NFS affect performance and what things can be done to improve performance? What happens at the TCP layer when I request with dd an 8K chunk of data off an NFS mounted file system? Here is one example: I do a dd if=/dev/zero of=foo bs=8k count=1 where my output file is on an NFS mount, I see the TCP send and receives from NFS server to client as: (the code is in dtrace and runs on the server side, see tcp.d for the code) There is a lot…
-
-
How do we know where latency comes from when there is a disparity in reported I/O latency on the I/O subsystem and that of the latency reported on the client box requesting the I/O. For example if I have an Oracle database requesting I/O and Oracle says an 8Kb request takes 50 ms yet the I/O storage subsystem says 8Kb I/Os are taking 1ms (averages) , then where does the 49 extra ms come from? When the I/O subsystem is connected to Oracle via NFS then there are a lot of layers that could be causing the extra latency. Where…