I find one shell command can send large data to target host:
dd if=/dev/zero bs=4096 count=1048576 | ssh user@ip 'cat > /dev/null'
I think i can use this to test network bandwidth, but it can not display the process status.
feedback
|
|
Well if you wrap this whole thing in
that will give give you the time it takes the transfer to complete. Divide the bytes transferred by the time and that's your throughput. For a progress meter, you can use pv, which eliminates the need to use time(1):
which will give you a nice progress meter, especially if you load the | |||
|
feedback
|
|
If what you want to do is test network bandwidth, there are more direct ways of doing so. Try out
| |||
|
feedback
|
|
Sending | |||
|
feedback
|
|
you can use iperf if you really want to test connectivity with great detail. Otherwise, Create a 100mb test file
then scp this file to test upload performance
or scp from the far side to test your download performance | |||
|
feedback
|
|
Usually better to use iperf to test bandwidth, beacuse it has no encryption overhead, but you can insert pv between dd and ssh to see transfer speed in real-time:
Also, on FreeBSD you can send SIGINFO to dd by hitting Ctrl+T, after that some stats (including speed) will be displayed | |||||||
feedback
|