Iperf3 - инструмент для тестирование пропускной способности сети.

Для установки Iperf3 в системах с пакетным менеджером apt (Debian подобных системах), необходимо выполнить следующую команду:

root@Iperf3-1:~# apt install iperf3
Reading package lists... Done
Building dependency tree... Done
The following additional packages will be installed:
  libiperf0 libsctp1
Suggested packages:
  lksctp-tools
The following NEW packages will be installed:
  iperf3 libiperf0 libsctp1
0 upgraded, 3 newly installed, 0 to remove and 46 not upgraded.
Need to get 143 kB of archives.
After this operation, 361 kB of additional disk space will be used.
Do you want to continue? [Y/n]

Немного о синтаксисе утилиты:

  • Для запуска серверной части утилиты необходимо добавить аргумент -s и при вводе команды как указана ниже у нас запустится такое меню:
root@Iperf3-1:~# iperf3 -s
-----------------------------------------------------------
Server listening on 5201
-----------------------------------------------------------
  • Для подключения к запущенному серверу необходимо прописать аргумент -с IP-адрес:
root@Iperf3-2:~# iperf3 -c 192.168.4.236
Connecting to host 192.168.4.236, port 5201
[  5] local 192.168.4.130 port 39172 connected to 192.168.4.236 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  3.92 GBytes  33.6 Gbits/sec    0    518 KBytes
[  5]   1.00-2.00   sec  3.94 GBytes  33.8 Gbits/sec    0    518 KBytes
[  5]   2.00-3.00   sec  3.97 GBytes  34.1 Gbits/sec    0    518 KBytes
[  5]   3.00-4.00   sec  3.93 GBytes  33.7 Gbits/sec    0    550 KBytes
[  5]   4.00-5.00   sec  4.00 GBytes  34.4 Gbits/sec    0    578 KBytes
[  5]   5.00-6.00   sec  3.98 GBytes  34.2 Gbits/sec    0    650 KBytes
[  5]   6.00-7.00   sec  3.97 GBytes  34.1 Gbits/sec    0    650 KBytes
[  5]   7.00-8.00   sec  3.97 GBytes  34.1 Gbits/sec    0    650 KBytes
[  5]   8.00-9.00   sec  3.98 GBytes  34.1 Gbits/sec    0    650 KBytes
[  5]   9.00-10.00  sec  3.98 GBytes  34.2 Gbits/sec    0    650 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  39.6 GBytes  34.0 Gbits/sec    0             sender
[  5]   0.00-10.04  sec  39.6 GBytes  33.9 Gbits/sec                  receiver
 
iperf Done.
  • В примере указанном выше производилось тестирование скорости в один поток, что не совсем отражает реальную скорость соединения, поэтому мы можем использовать аргумент -P число потоков для запуска многопоточного тестирования пропускной способности:
root@Iperf3-2:~# iperf3 -c 192.168.4.236 -P 8
Connecting to host 192.168.4.236, port 5201
[  5] local 192.168.4.130 port 56726 connected to 192.168.4.236 port 5201
...
[SUM]   0.00-10.04  sec  41.4 GBytes  35.4 Gbits/sec                  receiver
 
iperf Done.
  • В примерах показанных выше производилось тестирование скорости между контейнерами, которые соединены виртуальным бриджем из-за чего скорость соединения получается на уровне возможностей оперативной памяти и процессора Теперь давайте попробуем провести тестирование пропускной способности на реальных тестовых машинах соединенных кабелем с скоростью 1Gbe:
root@Iperf3-2:~# iperf3 -c 192.168.4.236
Connecting to host 192.168.4.236, port 5201
[  5] local 192.168.4.130 port 52200 connected to 192.168.4.236 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec   114 MBytes   956 Mbits/sec    0    406 KBytes
[  5]   1.00-2.00   sec   112 MBytes   942 Mbits/sec    0    424 KBytes
[  5]   2.00-3.00   sec   112 MBytes   941 Mbits/sec    0    445 KBytes
[  5]   3.00-4.00   sec   113 MBytes   946 Mbits/sec    0    445 KBytes
[  5]   4.00-5.00   sec   112 MBytes   940 Mbits/sec    0    518 KBytes
[  5]   5.00-6.00   sec   113 MBytes   947 Mbits/sec    0    542 KBytes
[  5]   6.00-7.00   sec   112 MBytes   944 Mbits/sec    0    570 KBytes
[  5]   7.00-8.00   sec   112 MBytes   940 Mbits/sec    0    570 KBytes
[  5]   8.00-9.00   sec   112 MBytes   941 Mbits/sec    0    570 KBytes
[  5]   9.00-10.00  sec   112 MBytes   939 Mbits/sec    0    570 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  1.10 GBytes   944 Mbits/sec    0             sender
[  5]   0.00-10.05  sec  1.10 GBytes   937 Mbits/sec                  receiver
 
iperf Done.
  • Теперь можно наблюдать реальную скорость между двумя физическими машинами.