@Tim: Thanks, what tools can I use to ascertain that?
–
KM.Jul 25 '12 at 19:10

you can use WireShark to watch network traffic, or you can use iperf to check the bandwidth between two devices. With WireShark, look for things like retransmission, timeouts while capturing.
–
TimJul 25 '12 at 19:52

What nfs options do you use for mounting the share? Do you have the option 'noac' activated? How many rpcd threads are running (ps -ef | grep '\[nfsd\]' | wc -l)?
–
HuygensJul 26 '12 at 10:50

No, the output from ls will not get cached
–
Ulrich DangelJul 25 '12 at 22:34

@UlrichDangel Indeed the output from ls isn't cached, but the input to ls (the directory contents as read from the disk by the kernel) is cached.
–
GillesJul 25 '12 at 23:33

@Gilles yes but this also depends on the available memory on the system. Anyway with a NAS this is (depends on the method used to connect to the system) done remotely.
–
Ulrich DangelJul 25 '12 at 23:42

1

Basically, when ls read the inodes and the directory file, the kernel load some of the block of the device (here nfs) and cache them, so subsequent ls call (unless the cache is made expired) are server directly from the local memory.
–
HuygensJul 27 '12 at 19:18

Some systems have a feature that after some time of Hard Disk's inactivity (no write nor reads) will phisically spin down the rotation of such drive to full stop. This is meant to extend Hard Disk life (less meccanical wear = less likelly to breakdown).

You are observing a 4/5 second slow down after waiting 5-7 minutes, so 5 minues that could be the spin down time of your device.
The 5 second wait is the time it get to full spin up the drive to be ready to be accessed.

You can even hear the absence of noise (humm) from the case of the NAS when the HHD is spinned down.

Try to seach in this NAS administrative page (or whatewer) if there is a paramiter like "HD spindown time" to change.