23/11/2001 : This page is not valid. Plz go to docum.org
| tcpblast | ttcp | iperf | AB | Linbot & wget | ping | ||
|---|---|---|---|---|---|---|---|
| TCP | YES | YES | YES | YES | YES | NO | |
| UDP | YES | YES | YES | YES | NO | NO | |
| ICMP | NO | NO | NO | NO | NO | YES | |
| client-server (1) | NO | YES | YES | NO | NO | NO | |
| Multiple streams | NO | YES | YES | YES | YES | NO | |
| Full BandWidth? (2) | YES | YES | NO (UDP:YES) | NO | NO | NO | |
| MTU (3) | NO | NO | YES | NO | NO | NO |
(1): ttcp and iperf are server/client programs. So you have to start on 1 PC the server and an other PC can act as client and connects to the server and send the data.
(2): tcpblast, ttcp and iperf (TCP) are sending as much data they can. When iperf sends UDP you can specify a rate. AB and Linbot are querying a web-server so they generate as much as the webserver can deliver and as much the scripts can proces. You can start several pings in the background to generate the rate you want or you can specify the -f parameter to flood the destination host.
(3): With iperf you can specify the TCP maximum segment wich is MTU - 40bytes. You can also specify the TCP window size.
# ./tcpblast --help usage: ./tcpblast [options] destination nblocks tcpblast/udpblast is a simple tool for probing network and estimating its through output. It sends nblocks of 1024 B blocks of data to specified destination hostI'm using this program to generate the traffic and not to measure the bandwidth. But tcpblast is only a client program. It can kill the destination server because it's overloading the server by sending random traffic on a port.
Starting the server on poort POORT1:
while true; do ttcp -r -s -p $POORT1; done
Connecting with a client to server SERVER:
while true ;do ttcp -t -s $SERVER -p $POORT1; done
$ netstat | grep kriek:www tcp 0 1 192.168.1.128:4279 kriek:www SYN_SENT tcp 0 1 192.168.1.128:4278 kriek:www LAST_ACK tcp 0 0 192.168.1.128:4277 kriek:www CLOSE tcp 0 0 192.168.1.128:4276 kriek:www CLOSE tcp 0 0 192.168.1.128:4275 kriek:www CLOSE tcp 0 0 192.168.1.128:4274 kriek:www CLOSE tcp 0 0 192.168.1.128:4273 kriek:www CLOSE
An other tool that can be used is wget. This downloads all the files from a web-server.