Реклама ООО Таймвэб
Реклама ООО Таймвэб

Как пользоваться iPerf

1 комментарий
Как пользоваться IPERF

Часть работы системного администратора – контролировать загруженность сетевого оборудования и измерять пропускную способность подключаемых каналов (локальной сети, интернета, включая и беспроводные сегменты Wi-Fi). Популярным инструментом для этого является утилита iPerf. Она работает по клиент-серверному принципу и дает точный результат скорости передачи данных.

Инсталляция iPerf

В большинстве случаев достаточно установить серверную часть приложения локально на «местный» сервер или удаленно на виртуальную машину, а затем подключиться к ней практически с любого компьютера, находящегося в общей ИТ-инфраструктуре. Программа бесплатная, имеет версии под платформы Linux и Windows.

Последние версии дистрибутивов доступны по адресам:

  1. Linux, Unix – https://github.com/esnet/iperf/releases
  2. Windows – https://sourceforge.net/projects/iperf2/files/

Инсталляция в Ubuntu и Debian осуществляется командой:

$ sudo apt install iperf3

В операционных системах CentOS и Fedora она выглядит иначе:

$ sudo dnf install iperf3

Перед первым запуском рекомендуется принудительно открыть необходимые порты в брандмауэре, чтобы утилита наверняка заработала. По умолчанию протоколы TCP и UDP используют порт 5201. Выполняется открытие командой:

$ firewall-cmd --permanent --add-port=5201/tcp

$ firewall-cmd --permanent --add-port=5201/udp

$ firewall-cmd –reload

Работать с программой придется в консоли, но особых затруднений это не вызывает, потому что синтаксис и перечень команд относительно просты. Например, запуск серверной части выполняется командой:

$ iperf –s

На экране появится сообщение Server listening on 5201. Оно означает, что сервер ждет запросов от клиентов (программа остается активной вплоть до перезагрузки операционной системы).

iperf

Клиентская часть, если речь идет о рабочих местах на Linux, работает аналогичным образом. Запускаемый файл всего один, различаются только префиксы и параметры вроде IP-адреса.

$ iperf -c 192.168.0.100

В приведенном примере программа будет обращаться к серверу, доступному по IP 192.168.0.100. После буквы -s или -c допускается ввод дополнительных команд, уточняющих задачу и позволяющих сохранить результаты в текстовом файле или вручную указать нестандартный порт.

Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться

Синтаксис и опции iPerf

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

Синтаксис запуска программы простой:

  • на сервере – $ iperf3 -s опции
  • на клиенте – $ iperf3 -c адрес_сервера опции

Главное, заранее записать серверный IP и без особой необходимости не менять номер порта для подключения клиентских машин.

Общий список опций:

  • -p, --port – вручную указать порт на сервере или клиентской машине;
  • -f, --format – изменить формат выводимых данных, доступны значения k, m, g, t, K, M, G, T;
  • -i, --interval – количество времени между выводом результатов тестирования;
  • -F, --file – брать данные для передачи по сети из указанного текстового файла (по умолчанию применяется генератор случайных чисел);
  • -V, --verbose – включается режим вывода подробной информации по обмену в сети;
  • -J, --json – активируется режим отображения в формате JSON;
  • --logfile – будет осуществляться запись происходящего в лог-файл;
  • -forceflush – перед запуском очередного цикла проверки полностью очищать экран;
  • -v, -version – отображается текущая версия приложения.

Непосредственно к серверной части программы относятся всего 3 опции:

  • -D, --daemon – запуск сервера происходит в фоновом режиме;
  • -l, --pidfile – указывается путь, по которому будет записываться PID-файл процесса;
  • -1, --one-off – после завершения проверки пропускной способности канала с одним клиентом автоматически закрыть серверную часть приложения.

На клиентской машине перечень настроек несколько шире (речь идет о консольной версии ПО):

  • --sctp – переключиться на протокол SCTP вместо TCP;
  • -u, --udp – то же самое, но использовать протокол UDP;
  • -connect-timeout – количество миллисекунд до первого подключения к серверу;
  • -b, --bitrate – «ширина» потока, для UDP «по умолчанию» включен режим передачи 1 Мбит/сек, для TCP – без ограничений;
  • -t, --time – время, в течение которого проводится тест («по умолчанию» оно составляет всего 10 секунд);
  • -R, --reverse – проводится «обратный» тест, когда сервер передает данные клиенту, т.е. будет проверен канал на прием данных, а не на их передачу;
  • -P – количество одновременно передаваемых независимых потоков данных;
  • -w – размер окна TCP;
  • -4, --version4 – проверка осуществляется только по протоколу стандарта IPv4;
  • -6, --version6 – то же самое, но речь идет о протоколе IPv6.

Перечисленное количество опций является наиболее популярным. Если хочется освоить их полный пакет, нужно воспользоваться командой $ man iperf3, чтобы получить актуальный список. Он будет сохранен в текстовый файл, если добавить опцию logfile. Но в большинстве случае системному администратору достаточно этих настроек.

Как пользоваться iPerf

В качестве примера использования программы iPerf возьмем опцию -f. Индексы, перечисленные выше, позволяют указывать, в каких единицах измерения хочется увидеть результат. Так, k означает килобиты, m – мегабиты, g – гигабиты, а большие буквы килобайты, мегабайты или гигабайты. Выбор зависит от предполагаемой пропускной способности канала.

$ iperf3 -s -f K

Например, команда $ iperf3 -s -f K включает режим отображения данных в килобайтах. Если нужно переключить порт, он указывается вручную – $ ipref3 -s -p 4000. По умолчанию утилита выводит результаты довольно быстро, каждую секунду, поэтому актуален режим с замедленным выводом – $ iperf3 -c 192.168.0.101 -f M -i 5.

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

echo -e "Все про серверы, сети, хостинг и еще раз серверы" >/dev/pts/0

Комментарии

Alexandra Pelse 0
26 апр в 2022
Подскажите, пожалуйста, все описанное будет работать с iperf2? В статье приводится ссылка для windows как раз на iperf2 , а сам гайд посвящен iperf3
С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
С помощью соцсетей
У меня уже есть аккаунт Войти
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте