6

I'm trying to verify the available bandwidth for my linux box. Is there a test I can run from the command line?

4 Answers 4

1

If you can't be bothered to install iperf (see qedi's answer), you could precede any command that shifts a known amount of data with the time command and do a sum.

1
  • 1
    Thanks, I ended up just using wget as change management to install is a bear. =)
    – Mike B
    Dec 9, 2009 at 19:40
13

iperf is simple and easy to use.

It requires a client and server.

(on the server)

 user@server$ iperf -s

(on the client)

 user@client$ iperf -c server.domain
 ------------------------------------------------------------
 Client connecting to 192.168.1.1, TCP port 5001
 TCP window size: 16.0 KByte (default)
 ------------------------------------------------------------
 [  3] local 192.168.1.3 port 52143 connected with 192.168.1.1 port 5001
 [ ID] Interval       Transfer     Bandwidth
 [  3]  0.0-10.0 sec    113 MBytes  94.7 Mbits/sec
8

Yep. You need ssh login somewhere:

dd if=/dev/zero bs=50MB count=1 | ssh user@server 'cat > /dev/null'
2

There is a speedtest-cli tool that relies on speedtest.net to conduct performance tests. The benefit is that you don't need your own server to test, or think of something to download.

You can install it through Python's easy_install, or preferable pip under speedtest-cli, so this is all you have to do:

# pip install speedtest-cli
# speedtest-cli
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from … (…)...
Selecting best server based on ping...
Hosted by Easyname (…) [1.07 km]: 84.48 ms
Testing download speed........................................
Download: 5.25 Mbit/s
Testing upload speed..................................................
Upload: 0.56 Mbit/s

The pip command might need to be run under root privileges depending on which Python version you run.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .