I'm looking for a tool that will test my internet connection bandwidth and create an simple report like speedtest does.
Do you know some program/tool that do this? Something with CentOS packages would be nice.
ttcp is a simple, possibly too simple, speed test utility.
pchar is another one people cite a lot, I've had bad luck with it, personally.
Here's how I'd use ttcp. You need two machines, each with ttcp (http://playground.sun.com/pub/tcp-impl/ttcp/ttcp.c) compiled on them.
HostA % ./ttcp -r -s -p 9401 ... HostB % ./ttcp -s -p 9401 < /boot/vmlinuz
Once you've figured out how to get it to run, try different length files to see how speed varies. Use UDP (-u flag on both reader and sender command line) for even more fun!
I'm just repeating the answers listed on this (deleted?) stackoverflow question: https://stackoverflow.com/questions/426272/how-to-test-internet-connection-speed-from-command-line
wget --output-document=/dev/null http://speedtest.wdc01.softlayer.com/downloads/test500.zip
git clone https://github.com/sivel/speedtest-cli cd speedtest-cli python2.7 speedtest_cli.py
Then you have the exact style results from speedtest.net with cli.
You could use iperf to test the speed between two machines, since 'iperf' was designed to measure bandwidth.
on machine1 (host, this one will receive)
iperf -s -p 65000
on machine2 (client, this one will upload)
iperf -c [ip of server] -p 65000
Reverse the machines to test the other way (upload->download or vice versa).
It looks like there is a tool available on sourceforge that uses speedtest.net from the terminal.
Terminal speedtest: http://sourceforge.net/projects/tespeed/
You might be interested in TeSpeed. It is described as:
If you are looking for tool that is able to test internet connection speed fron Linux terminal, you have found it! :) TeSpeed uses speedtest.net servers to check upload and download rate and it puts that information on charts.
Very basic, but I use a simple shellscript to download a 10MB file from my provider or nearby FTP-server:
#!/bin/sh wget ftp://ftp.xs4all.nl/pub/test/10mb.bin ; rm 10mb.bin ## debian.unnet.nl is down... #wget http://debian.unnet.nl/speedtest/10mb.bin ; rm 10mb.bin #curl -LO http://debian.unnet.nl/speedtest/10mb.bin ; rm 10mb.bin
The output will look like this:
($:~)-> speedcheck.sh --2011-06-27 23:36:21-- ftp://ftp.xs4all.nl/pub/test/10mb.bin => `10mb.bin' Resolving ftp.xs4all.nl (ftp.xs4all.nl)... 188.8.131.52 Connecting to ftp.xs4all.nl (ftp.xs4all.nl)|184.108.40.206|:21... connected. Logging in as anonymous ... Logged in! ==> SYST ... done. ==> PWD ... done. ==> TYPE I ... done. ==> CWD (1) /pub/test ... done. ==> SIZE 10mb.bin ... 10485760 ==> PASV ... done. ==> RETR 10mb.bin ... done. Length: 10485760 (10M) (unauthoritative) 100%[===================================================>] 10,485,760 1.09M/s in 9.8s 2011-06-27 23:36:31 (1.02 MB/s) - `10mb.bin' saved 
Use wget or curl as shown in the script according to your wishes and try to find a server more close to your region (Slovenia). Most are in NL, but maybe .IT will fit your needs: http://www.filewatcher.com/m/10mb.bin.10485760.0.0.html
You can also try http://dl.getipaddr.net
They use curl (which is a well known command line utility) to run a speed test.
The code is published on GitHub as well. In short,
wget https://raw.github.com/blackdotsh/curl-speedtest/master/speedtest.sh && chmod u+x speedtest.sh && bash speedtest.sh
speed testing an internet connection or between two endpoints depends on several factors. Like the window size,jitter,unordered delivery etc. Refer: Internet Speed test through Command line.
I recommend the speedtest-cli tool for this. I created a blog post (Measure Internet Connection Speed from the Linux Command Line) that goes into detail of downloading, installing and usage of it.
$ sudo apt-get install git-core
$ sudo yum install git
$ git clone https://github.com/sivel/speedtest-cli.git
$ ./speedtest-cli Retrieving speedtest.net configuration... Retrieving speedtest.net server list... Testing from Comcast Cable (x.x.x.x)... Selecting best server based on ping... Hosted by FiberCloud, Inc (Seattle, WA) [12.03 km]: 44.028 ms Testing download speed........................................ Download: 32.29 Mbit/s Testing upload speed.................................................. Upload: 5.18 Mbit/s