Регистрация
iperf3

Об iPerf3

iPerf3 (Internet Protocol Performance) - это бесплатный кроссплатформенный инструмент командной строки с открытым исходным кодом, используемый для проверки производительности сети с точки зрения пропускной способности и скорости (TCP и UDP). Это высоконадежный инструмент по сравнению со многими другими инструментами тестирования пропускной способности и скорости сети. Кроме того, это очень эффективный инструмент при тестировании производительности сети между двумя серверами.

Для запуска теста iPerf3 вам потребуется как минимум два сервера – исходный и конечный.

Установить iPerf3

Ubuntu / Debian
apt-get install iperf3
 Centos / RockyLinux
yum install iperf3
Windows
Скачать 
iperf-3.*-win64.zip

Плюсы iPERF3

Большое преимущество iperf3 заключается в том, что он способен запускать несколько тестовых подключений между двумя серверами одновременно. Это имеет решающее значение для тестирования соединений со скоростью 1 Гбит/с и выше (в отличие от команды wget для загрузки тестового файла, при которой только одно соединение не может использовать все ресурсы сервера – обычно максимум 1 Гбит/с).

Используя Iperf, вы можете протестировать скорость передачи данных от исходного сервера (клиент-сервер iperf) к целевому серверу (сервер прослушивания iperf). Оба сервера должны иметь достаточную пропускную способность для выполнения необходимых тестов (если вы проводите тест скорости 10 Гбит/с, обоим серверам требуется восходящая линия связи 10GE, в идеале сервер прослушивания должен иметь более высокую пропускную способность, чем клиентский сервер – 20 Гбит/с).

Используя команды Iperf на клиент-сервере (в данном случае на вашем сервере или ПК), вы запустите сравнительный тест и покажете данные о пропускной способности всех тестовых подключений.

Недостатки традиционных сервисов speedtest

Во-первых, поставщики тестов скорости проводят тесты между вашим сервером и веб-серверами на своей стороне. Поэтому вам следует проверить, какие порты восходящей линии связи есть у их конечных серверов. Большинство современных серверов speedtest работают по восходящему каналу связи со скоростью 1 Гбит/с, поэтому физически невозможно измерить пропускную способность, превышающую пропускную способность восходящего канала.

Во-вторых, если вы загружаете тестовый файл, размещенный на вашем сервере, со своего домашнего устройства, вы всегда ограничены скоростью вашего домашнего подключения к сети (скоростью, на которую вы подписались у своего местного провайдера).

Другие формы тестирования подключений, такие как команда wget, также имеют ограничения (одиночные одновременные подключения), которые делают этот метод неэффективным для тестирования пропускной способности сети в сетевых средах с высокой пропускной способностью.

Команды

Вот команда для запуска теста Iperf на вашем сервере. Единственные другие данные, которые вам понадобятся, - это IP-адрес сервера прослушивания Iperf. Рекомендуется запускать больше параллельных потоков (TCP/UDP), так как один поток будет хэширован на один физический интерфейс восходящей линии связи коммутатора доступа. Используйте параметр -P n, где n представляет количество параллельных потоков.

Команда:

iperf3 -P 20 -c ams.speedtest.clouvider.net -p 5203
В ходе этого теста будет выполнено 20 одновременных подключений к серверу прослушивания Iperf ams.speedtest.clouvider.net на порту 5203.

iperf3 -P 20 -c ams.speedtest.clouvider.net -p 5203 -R
Этот тест почти такой же, но в обратном порядке - будет тест загрузки.

Команда через Docker:
запуск программы docker --rm -p 5201:5201 -p 5201:5201/udp r0gger/iperf3 -c ams.speedtest.clouvider.net -p 5203

Опции