Общие сведения о Ping, Traceroute, iPerf3
Ping — утилита, отправляющая ICMP Echo Request пакеты на заданный хост с целью проверки IP-связности.
От заданного хоста ожидает ICMP Echo Reply. В случае если Reply пришёл, утилита Ping сообщает, что связность есть.
Если Reply нет, это не всегда говорит о том, что хост недоступен, возможно ICMP был заблокирован по пути либо на целевом хосте.
Traceroute — утилита, используемая для определения маршрута следования (хоп за хопом) к целевому хосту и времени ответа от каждого из хопов.
Утилита отправляет IP-пакеты в сторону заданного хоста с TTL 1, каждый следующий отправленный пакет будет с TTL на 1 больше, чем предыдущий.
Маршрутизатор, получивший пакет с TTL 1, отбрасывает его и отправляет на адрес источника ICMP с кодом 11 (Time-to-live exсeeded). Из полученных пакетов Traceroute строит свой отчёт.
iPerf3 — утилита, позволяющая проводить проверку проходимости определённого объёма данных через канал связи. Параметры передаваемого трафика, такие как класс (ToS) обслуживания, протокол (UDP/TCP), продолжительность нагрузки, могут гибко меняться. Перед началом теста iPerf3 клиент и сервер обмениваются параметрами передачи (length, protocol, bandwidth, duration), далее происходит передача пакетов (сам тест) согласно переданным параметрам.
Примеры использования Ping, Traceroute, iPerf3 на серии SNR-S5xxx
Важно
На серии SNR-S5xxx поддерживается работа данных утилит только с IPv4 адресами.
Ping
Стандартная отправка echo-пакетов на хост с IP-адресом 192.168.1.2:
ping 192.168.1.2
При вводе следующей команды коммутатор отправит 20 echo-пакетов с 15 байтами данных в поле Data на хост 192.168.1.2, при этом интервал между пакетами будет 100 мс:
ping 192.168.1.2 interval 100 size 15 count 20
Traceroute
Стандартный запуск Traceroute для заданного хоста:
traceroute 192.168.1.2
Ключ hops задаст максимальное число шагов, после после которого Traceroute прекратит попытки связаться с указанным хостом. Значение hops может быть от 1 до 255:
traceroute 192.168.1.2 hops <N>
iPerf3 клиент
Запуск теста при дефолтных настройках будет длительностью 10 сек и скоростью передаваемого трафика 10 Мбит/с по протоколу TCP. Трафик пойдёт в направлении от клиента на сервер:
iperf3 192.168.1.2
Ключ reverse указывает, что данные должны идти от сервера в сторону клиента:
iperf3 192.168.1.2 reverse
Ключ time указывает время теста в секундах:
iperf3 192.168.1.2 time <10-600>
Ключ bandwidth указывает передаваемую нагрузку Мбит/c:
iperf3 192.168.1.2 bandwidth <1-12>
Ключ tos указывает тип обслуживания пакета:
iperf3 192.168.1.2 tos <0-7>
Ключ proto указывает транспортный протокол для трафика UDP или TCP:
iperf3 192.168.1.2 proto {udp | tcp}
Ключи можно группировать либо вводить все сразу. Следующая команда запустит тест на 20 секунд, используя протокол UDP:
iperf3 192.168.1.2 time 20 proto udp
Ключ length задаёт пространство буфера в байтах, в которое будут попадать пакеты, для чтения и записи:
iperf3 192.168.1.2 length <1000-128000>
При вводе данной команды iPerf3 клиент будет отправлять порции UDP данных размером 20000 байт, разбив их на число пакетов максимально возможным образом, задействовав MTU линка. В нашем случае MTU равен 1500:
iperf3 192.168.1.2 length 20000 proto udp
При вводе команды iPerf3-клиент будет отправлять порции TCP данных 1600 байт разбив их на число пакетов максимально возможным образом задействовав MTU линка:
iperf3 192.168.1.2 length 1600 proto tcp
При MTU канала связи в 1500 байт одна порция данных(length) 1600 байт разобьётся на 2 пакета с TCP payload 1448 байт и 152 байт:
Ограничение
Для измерения пропускной способности со скоростью выше 10 Мбит/сек в обычном режиме или выше 5 Мбит/сек в reverse-режиме необходимо увеличить значение cpu-rx-ratelimit protocol local-ip.
Для обычного режима — 650. Воспользуйтесь командой:
cpu-rx-ratelimit protocol local-ip 650
Для режима reverse — 1200. Воспользуйтесь командой:
cpu-rx-ratelimit protocol local-ip 1200
После завершения работы с утилитой iPerf3 необходимо вернуть значение по умолчанию командой:
no cpu-rx-ratelimit protocol local-ip.


