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
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.
-
1Thanks, I ended up just using wget as change management to install is a bear. =)– Mike BCommented Dec 9, 2009 at 19:40
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
Yep. You need ssh login somewhere:
dd if=/dev/zero bs=50MB count=1 | ssh user@server 'cat > /dev/null'
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.