13. Служба iperf

Служба iperf предназначена для измерения производительности сети и представляет собой генератор сетевого трафика. Данная служба применима для оценки максимальной пропускной способности и задержки сетевых соединений.

Основные функции службы:

  • измерение пропускной способности: служба позволяет измерить пропускную способность сети в обоих направлениях (от источника к месту назначения и наоборот);

  • измерения задержки: служба позволяет измерить задержку сети для определения качества соединения;

  • тестирование двунаправленной передачи: служба позволяет тестировать двунаправленную передачу данных между двумя узлами, что применимо для определения производительности в реальных сценариях;

  • поддержка нескольких протоколов: служба поддерживает несколько сетевых протоколов, таких как TCP и UDP, что позволяет тестировать различные типы приложений.

Служба состоит из клиентской и серверной части.

Для измерения пропускной способности сети между двумя узлами ПАК “Фортикс” необходимо на одном узле в режиме конфигурации настроить серверную часть службы, а на другом – в режиме администрирования запустить клиентскую часть.

13.1. Настройка серверной части

Для запуска службы используется применяется команда:

# set service iperf enable

По указанной команде запущенная служба по умолчанию прослушивает 5001 порт и ожидает TCP-соединение на всех доступных IPv4-адресах.

Для прекращения работы службы применяется команда:

# del service iperf enable

Служба поддерживает следующие типы тестов:

  • TCP;

  • UDP;

  • UDP-single.

Для выбора типа теста по умолчанию применяется команда:

# set service iperf listen proto tcp|udp|udp-single

где tcp|udp|udp-single – тип теста.

Для выбора порта по умолчанию применяется команда:

# set service iperf listen port <port-number>

где <port-number> – число от 1 до 65535.

Для определения IPv4- или IPv6-адреса, на котором запускается служба, и типа теста и/или порта для данного адреса применяется команда:

# set service iperf listen ipv4|ipv6 address <address> [port <port-number>] [proto tcp|udp|udp-single]

где

  • ipv4|ipv6 – уровень конфигурации IPv4/IPv6;

  • <address> – IPv4-адрес в формате A.B.C.D или IPv6-адрес в формате A:B:...:H;

  • <port-number> – число от 1 до 65535;

  • tcp|udp|udp-single – тип теста.

13.2. Настройка клиентской части

Для запуска тестирования пропускной способности сети применяется команда:

> iperf addr <address> [port <port-number>] [tcp|udp] [<options>]

где

  • <address> – IPv4-адрес в формате A.B.C.D или IPv6-адрес в формате A:B:...:H;

  • <port-number> – число от 1 до 65535;

  • tcp|udp – тип теста, по умолчанию – tcp;

  • <options> – дополнительные параметры тестирования (см. ниже).

Предусмотрены следующие дополнительные параметры тестирования <options>:

  • bandwidth <bandwidth-value> – указать пропускную способность, где <bandwidth-value> – целое число бит в секунду;

  • buffer <buffer-size> – указать размер буфера сокета, где <buffer-size> – целое число байт;

  • duplex-port <duplex-port-number> – указать номер локального порта для двунаправленного тестирования, где <duplex-port-number> – число от 1 до 65535;

  • interval <interval-value> – указать интервал между повторной передачей пакетов, где <interval-value> – целое число секунд;

  • mss <mss-max-size> – указать максимальный размер сегмента TCP, где <mss-max-size> – целое число байт;

  • reverse – применить обратный тест (сервер выступает как передатчик, а клиентская сторона – как приёмник);

  • source <address> – указать локальный IP-адрес сокета для соединения с удалённым узлом, где <address> – IPv4-адрес в формате A.B.C.D или IPv6-адрес в формате A:B:...:H;

  • threads <threads-number> – указать количество потоков, где <threads-number> – целое число;

  • time <time-value> – указать продолжительность одного цикла тестирования, где <time-value> – целое число секунд;

  • tos <tos-type> – указать тип ToS;

  • verbose – применить расширенный формат отчёта;

  • window <window-size> – указать размер TCP-окна, где <window-size> – целое число байт.