How can I benchmark the network transfer speed of my servers? We already have an existing file server, but it is fairly old. We recently got a donation of a (relatively) newer P4 box, and I wanted to find a way to test its network+disk I/O speeds to determine if the speed benefit is worth the work to set up a new server.
We're using Debian Lenny as our OS, and all our clients are connecting via HTTP.
If you wanted to just have a look on the bandwidth actually used, give
nload
a shot.I always prefer testing the daemon which is serving clients (wget/curl when testing a webserver, lftp for ftp-servers, etc). Artificial tests like
iperf
are better to check the general throughput of your routers, switches, NICs and IP stacks.HTH,
PEra
iperf
Here ya go:
http://www.go2linux.org/how-to-measure-your-network-bandwidth-and-performance-with-iperf
WGET will show transfer rates. Stick a large temporary file up on the server (say, dd if=/dev/zero of=tempfile bs=1M count=200) and bring it down w/ HTTP. Watch out if you're doing any kind of compression in your HTTP server-- I believe new WGET builds can do gzip encoding.
Edit:
One could argue that you should probably create a script w/ wget to poll a group of URLs that are similiar in composition as to what a "typical" visitor to the site would be accessing, as well. What I describe above is raw brute-force network / IO bandwidth testing (albeit influenced by disk caching, no doubt). Testing a potentially randomly-generated set of requests w/ wget would be another good test case, too. You could have a lot of fun with this one... >smile<
iperf. Or if you want to go old-school, ttcp.
http://www.carumba.com/src/ttcp.c
iperf for network bandwidth testing, bonnie++ and/or iozone for disk testing. All of them can be found in the debian repositories.
Simple and quick solution:
At the end wget command will print the throughput.
I found this paper http://www.nik.no/2009/06-Hansen.pdf provides very good comparison of online and standalone bandwidth test tools. It includes Abget, Pathload, Netperf and Iperf.
I've had good luck with netperf for looking into network traffic performance issues. I found this debian link for it.
Give Siege a go.