Dieter Soltau <(E-Mail Removed)> wrote in message news:<cevog9$reu$06$(E-Mail Removed)>...
> hi,
> i am using nfs v3, a switch, and 100mbit ethernet cards.
> if i take a large testfile (lets say 500MB) and copy it using MC, i get an
> average speed of ~ 3.5MB/sec. IMHO this is a little slow for 100mbit, isnt
> it?
You _should_ be able to do better, but you would be surprised how
common this performance level is in the real world (as opposed to the
lab or test net).
> i am mounting like this:
> 192.168.0.254:/mnt/data /mnt/data nfs rsize=32768,wsize=32768 0 0
If everything (server and clients) runs Linux you might want to double
check how the automounter is configured (maps, nsswitch and NIS
configs) just to eliminate these as a source of problems. How does
the transfer _rate_ compare with, say, a 50MB file transfer?
> btw.. playing with rsize and wsize doesnt matter much
> the server has async set, with or without async doesnt matter much either
async won't effect the client's read request -- it's for client write
requests. BTW, for comparison, what _is_ the write performance?
> any hints appreciated, thx,
> dieter
postmaster pointed to the usual starting place -- or specifically:
http://nfs.sourceforge.net/nfs-howto/performance.html
You must establish some baseline read/write I/O for both the server
and the client as you can imagine local I/O will limit the wire
transfer speed at _some_ point.
Confirm your server's configuration, since with v3 it has precedence
over mount options issued at the client. Check
security/authentication settings. Check whether you're using TCP or
UDP transport. Think of _anything_ that may effect request
processing. And remember, NFS relies on RPC facilities.
Sniff the wire. I like Ethereal. This is meant to confirm that the
network itself is not the bottleneck (ie., is operating below par).
Eg., does the window size get up to 32k quickly and stay there? What
other traffic is on the wire? Broadcasts? Keep-alives? Arp? Are
the machines on the same subnet? Must the traffic be carried on a
"shared" backbone? Are packets fragmenting? Any ifconfig stats
pointing to hardware problems? What does nfsstat report re: a large
file copy? A large file write? Netstat?
For large file transfers, network cards are often swamped, especially
if there are many other interrupts to be processed. This is most
noticable when the server is using a "desktop" nic rather than a
server grade nic. You may or may not be able to tune performance by
adjusting nic configuration params. If not, you _may_ actually get
better performance with a _smaller_ r/wsize -- ie., a size that
matches the nics capability to the max without _over_taxing_ it. Also
note, that with such a large tranfer, the client will have to flush to
_it's_ disk efficiently so that both disk interrupts and nic
interrupts are processed in a "steady" stream.
This should get you started. Chances are that you have several things
that are "degrading" performance and you'll just have to chase them
down one by one. Sorry there is no cookbook recipe when it comes to
improving the performance of network services (or discovering the
source of a problem).
I would do a quick and dirty test of the local I/O performance of the
server and client, then sniff the wire for clues, run ifconfig,
netstat, and nfsstat for ideas on adjusting network params (or locate
a network based bottleneck / problem).
Double check that NFS server and clients are up to date _and_
confirmed to work well together (not all clients work well with all
servers and vice versa).
I would probably like to compare NFS performance with a local net FTP
and/or HTTP server if they were readily available.
hth,
prg
email above disabled