Я использую iperf
. Это клиент-серверное устройство, в котором вы запускаете его в режиме сервера на одном конце и подключаетесь к нему с другого компьютера на другой стороне сети.
Одна и та же машина работает:
sudo apt-get install iperf
Мы запустим iperf
сервер на одной из машин:
iperf -s
А затем на другом компьютере скажите iperf
подключиться как клиент:
iperf -c <address of other computer>
На клиентской машине вы увидите что-то вроде этого:
oli@bert:~$ iperf -c tim
------------------------------------------------------------
Client connecting to tim, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.4 port 37248 connected with 192.168.0.5 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 1.04 GBytes 893 Mbits/sec
Конечно, если вы используете брандмауэр на сервере, вам нужно разрешить соединения через порт 5001 или изменить порт с -p
флагом.
Вы можете сделать почти то же самое с простым старым nc
(netcat), если вы склонны к этому. На серверной машине:
nc -vvlnp 12345 >/dev/null
И клиент может конвейер гигабайтные нулей через dd
над nc
туннелем.
dd if=/dev/zero bs=1M count=1K | nc -vvn 10.10.0.2 12345
Как демод:
$ dd if=/dev/zero bs=1M count=1K | nc -vvn 10.10.0.2 12345
Connection to 10.10.0.2 12345 port [tcp/*] succeeded!
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 9.11995 s, 118 MB/s
Время здесь задается как, dd
но оно должно быть достаточно точным, поскольку оно может выводить только с той скоростью, с которой труба пройдет. Если вы недовольны этим, вы можете обернуть все это в time
разговор.
Помните , что результат в мега байт , так умножить на 8 , чтобы получить мега бит -в секунду скорость. Демонстрация выше работает на скорости 944 Мбит / с.