iperf3 – это бесплатная программная платформа с открытым исходным кодом, работающая из командной строки и предназначенная для выполнения измерений пропускной способности сети в реальном времени. Она является одним из самых мощных инструментов для тестирования максимально достижимой пропускной способности в сетях IP (поддерживает IPv4 и IPv6).
С помощью iperf вы можете настраивать несколько параметров, связанных с временем, буферами и протоколами, такими как TCP, UDP и SCTP. Это пригодится для операций по настройке производительности сети.
Для достижения максимальной или улучшенной производительности сети вам необходимо увеличить пропускную способность, а также задержку приема и передачи вашей сети.
Однако прежде чем приступить к настройке, вам необходимо выполнить некоторые тесты для сбора общих статистических данных о производительности сети, которые будут направлять ваш процесс настройки.
Его результаты включают временной интервал в секундах, переданные данные, пропускную способность (скорость передачи), потери и другие полезные параметры производительности сети. Он в первую очередь предназначен для помощи в настройке TCP-соединений по определенному пути, и на этом мы сосредоточимся в данном руководстве.
Требования:
- Два компьютера в сети, на которых установлен iperf3.
Как установить iPerf3 в системах Linux
Как установить iPerf3 в системах Linux
Прежде чем начать использовать iperf3, вам нужно установить его на двух машинах, которые вы будете использовать для тестирования производительности. Поскольку iperf3 доступен в официальных репозиториях большинства распространенных дистрибутивов Linux, установка его должна быть простой, с использованием менеджера пакетов, как показано.
$ sudo apt install iperf3 [On Debian, Ubuntu and Mint] $ sudo yum install iperf3 [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] $ sudo emerge -a net-misc/iperf [On Gentoo Linux] $ sudo apk add iperf3 [On Alpine Linux] $ sudo pacman -S iperf3 [On Arch Linux] $ sudo zypper install iperf3 [On OpenSUSE]
После того, как вы установили iperf3 на обеих машинах, вы можете начать тестирование пропускной способности сети.
Как протестировать скорость сети между двумя серверами Linux
Во-первых, подключитесь к удаленному серверу, который вы будете использовать в качестве сервера, и запустите iperf3 в режиме сервера с использованием флага -s
, он будет прослушивать порт 5201 по умолчанию.
Вы можете указать формат (k, m, g для Kbits, Mbits, Gbits или K, M, G для KBytes, Mbytes, Gbytes) для отчета, используя переключатель -f
как показано.
$ iperf3 -s -f K
Если порт 5201 используется другим программным обеспечением на вашем сервере, вы можете указать другой порт (например, 3000) с использованием переключателя -p
как показано.
$ iperf3 -s -p 3000
Опционально, вы можете запустить сервер в качестве демона, используя флаг -D
и записать сообщения сервера в лог-файл, следующим образом.
$ iperf3 -s -D > iperf3log
Затем на вашем локальном компьютере, который мы будем считать клиентом (где фактически выполняется тестирование производительности), запустите iperf3 в режиме клиента, используя флаг -c
и указав хост, на котором работает сервер (либо используя его IP-адрес, либо доменное имя, либо hostname).
$ iperf3 -c 192.168.10.1 -f K
Через примерно 18 до 20 секунд клиент должен завершить работу и выдать результаты, указывающие среднюю пропускную способность для теста, как показано на следующем скриншоте.

Как выполнить расширенное сетевое тестирование пропускной способности в Linux
Существует ряд опций, специфичных для клиента, для выполнения расширенного теста, как объяснено ниже.
Один из важных факторов, определяющих количество данных в сети в данный момент, – это размер TCP-окна – это важно для настройки TCP-соединений. Вы можете установить размер окна/размер буфера сокета, используя флаг -w
, как показано ниже.
$ iperf3 -c 192.168.10.1 -f K -w 500K
Чтобы запустить его в режиме обратной связи, где сервер отправляет данные, а клиент принимает, добавьте ключ -R
.
$ iperf3 -c 192.168.10.1 -f K -w 500K -R
Чтобы запустить двунаправленное тестирование, что означает измерение пропускной способности в обоих направлениях одновременно, используйте опцию -d
.
$ iperf3 -c 192.168.10.1 -f K -w 500K -d
Если вы хотите получить результаты сервера в выводе клиента, используйте опцию --get-server-output
.
$ iperf3 -c 192.168.10.1 -f K -w 500K -R --get-server-output

Также возможно установить количество параллельных потоков клиента (два в этом примере), которые работают одновременно, с помощью опций -P
.
$ iperf3 -c 192.168.10.1 -f K -w 500K -P 2
Для получения дополнительной информации см. страницу руководства по использованию iperf3.
$ man iperf3
Вот все! Помните всегда выполнять тесты производительности сети перед настройкой фактической производительности сети. iperf3 – это мощный инструмент, который пригодится для выполнения тестов пропускной способности сети.
Есть ли у вас мысли для обмена или вопросы для задания, используйте форму комментариев ниже.
Source:
https://www.tecmint.com/test-network-throughput-in-linux/