Тестирование пропускной способности сети с Iperf

Iperf – консольная утилита с открытым исходным кодом, предназначенная для тестирования пропускной способности сети. С ее помощью довольно просто измерить максимальную пропускную способность сети между сервером и клиентом, провести нагрузочное тестирование канала связи или маршрутизатора

Утилита Iperf является кроссплатформенной и не требует установки, достаточно просто скопировать ее на два компьютера, пропускную способность сети между которыми нужно оценить.

Работает утилита Iperf в режиме клиент-сервер. На первом компьютере утилита Iperf запускается в режиме сервера (ожидает трафик от клиента), а на втором, на котором Iperf запускается в режиме клиента, осуществляется генерация TCP и UDP трафика и проводится измерение скорости передачи данных.

Чтобы оценить пропускную способность сети между двумя узами сети, запустим сначала утилиту iperf  в серверном режиме:

iperf.exe -s -w 32768
Важно. Аргументы утилиты iperf  регистрозависимы.

Iperf в Windows в режиме сервера

-s –утилита запускается в серверном режиме (получающая сторона)
-w 32768 – зададим размер окна TCP в 32 KB (по умолчанию около 8 Кб)

По умолчанию утилита слушает TCP порт 5001.В зависимости от настроек файерволов между клиентом и сервером, порт можно изменить с помощью аргумента -p [номер_порта].

На стороне клиента запустим iperf со следующими опциями:

iperf.exe -c 10.0.0.44 -P 8 -t 30 -w 32768

-c 10.0.0.44 – IP адрес сервера iperf
-w 32768 — увеличиваем размер TCP окна
-t 30 – время в секундах, в течении которого выполняется тестирование (по умолчанию 10 секунд)
-P 8 — число альтернативных потоков для увеличения пропускной способности

Измеряем скорость сети между двумя точками с iperf

В нашем примере тестирование длилось 30 секунд. В итоговом отчете нас интересует значения столбца Bandwidth последней строки [SUM]. В нашем случае средняя пропускная способность сети между двумя системами – 2,85 Гбит/с. С помощью аргумента –f можно изменить формат скорости (биты, килобиты, мегабайты). При продолжительных тестах, когда нужно оценивать производительность в течении нескольких минут, с помощью опции –i можно указать интервал через который нужно отображать промежуточные результаты.

По-умолчанию утилита генерирует TCP трафик, если требуется осуществить тестирование для протокола UDP, необходимо использовать ключ  -u.

Во время выполнения теста график загрузки сети в Task Manager выглядит так:

Загрузка LAN интерфейса ethernet с помощью iperf

Важно отметить, что при тестировании Iperf используем всю доступную пропускную способность канала связи между клиентом и сервером, что может негативно повлиять на продуктивные приложения и пользователей. Поэтому такое тестирование нужно проводить обдуманно.

Если необходима оценка пропускной способности сети в обоих направлениях (в дуплексом режиме), дополнительно на клиенте нужно указать опцию –d:

iperf.exe -c IP -P 8 -t 30 -w 32768 -d

iperf - тестирование в дуплексном режиме

Полный список опций утилиты можно получить так:

iperf –help

Скачать версию iperf для Windows можно на softpedia.com (iperf-2.0.5-2-win32.zip) или здесь.

Скачать архив iperf для Windows

Для тех, кто предпочитает графический интерфейс управления, имеется и графический аналог  iperf — утилита jperf, написания на Java (для работы на компьютере должна быть установлена Java-машина).  Помимо графических рюшечек к CLI интерфейсу, Jperf умеет в реальном времени строить графики пропускной способности канала связи.

Jperf 2.0.2 - графический интерефейс

Итак, резюмируя,  Iperf – простая и удобная сетевая утилита, которая может измерить производительность и качество соединения между двумя системами.  И не смотря на то, что развитие  программы давно прекращено, ее функционала вполне хватает для поставленной задачи.


Предыдущая статья Следующая статья

Комментариев: 3 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)