通过将1GB文件从一组服务远程发送到另一组服务器来检查网络速度

时间:2018-08-31 14:41:45

标签: linux shell

我想通过将1GB文件从一组服务远程发送到另一组服务器来测试网络速度

例如:

s1-> s11
s2-> s21
s3-> s31

当前我在我的本地计算机(LM)中,我需要登录到服务器s1并创建随机的1G文件,然后将scp传输到server:s11,像明智的s2到s21,依此类推。 用以下一组测试

ssh $1 <<EOD
dd if=/dev/zero of=file_test count=1024 bs=1048576
scp file_test $2:/tmp
EOD

它工作得很好,但是当我在LM中进行操作时,它并不能证明scp数据的传输速度/秒。

scp file_test server1:/tmp
file_test                                          100% 1024MB 113.8MB/s  00:09

我也想在运行shell脚本时打印这些统计信息。如何通过脚本实现此目的,我需要做同样的事情,并为100多个服务员收集结果

1 个答案:

答案 0 :(得分:0)

scp没有非交互式运行时不显示统计信息的选项。您可以尝试使用rsync

ssh $1 <<EOD
dd if=/dev/random of=file_test count=1024 bs=1048576
rsync file_test $2:/tmp
EOD

使用/dev/random,您将获得一个随机文件(否则,您将获得一个0填充的文件,可以轻松地对其进行压缩)。