I am trying to write an TUI bandwidth trace application which on query can instantly tell me, that my download and upload speed is XXXX. I have figured out that download i can use with wget and parse it using BASH, but how do i get the upload speed?
Example of download parse method:
1) Remote download : wget http://x.x.com:7007/files/software/vnc.zip
Length: 1594344 (1.5M) [application/zip]
Saving to: `vnc.zip'
100%[==================================================================>] 1,594,344 573K/s in 2.7s
2012-03-24 11:35:22 (573 KB/s) - `vnc.zip' saved [1594344/1594344]
2) Local download tells
Length: 1594344 (1.5M) [application/zip]
Saving to: `vnc.zip'
100%[==================================================================>] 1,594,344 --.-K/s in 0.1s
2012-03-24 06:43:04 (11.4 MB/s) - `vnc.zip' saved [1594344/1594344]
Follow up:
Upload server:
$ iperf -s -p 65000
------------------------------------------------------------
Server listening on TCP port 65000
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local x.238 port 65000 connected with x.96 port 37463
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-11.9 sec 2.00 MBytes 1.40 Mbits/sec
Up-loader:
$ iperf -c x.238 -p 65000
------------------------------------------------------------
Client connecting to x.238, TCP port 65000
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local x.96 port 37463 connected with x.238 port 65000
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.4 sec 2.00 MBytes 1.61 Mbits/sec
wput! wget’s twin-sister
Here is one sample run!