Проблемы диагностики задержек и потери пакетов утилитами ping и MTR
Абоненты интересующиеся сетевыми технологиями часто задаются вопросом почему магистральные коммутаторы если на IP адреса их сетевых интерфейсов отправлять ICMP пакеты командой типа PING или MTR отвечают с повышенной задержкой или даже теряют пакеты (на примере работы утилиты MTR выделено красным).
Дело в том, что в маршрутизаторах и коммутаторах есть несколько способов коммутации пакетов: и быстрый (CEF или MLS) и медленный по средством CPU. Быстрый способ используется, когда пакеты, входящие в маршрутизатор, необходимо отправить на другой интерфейс. Эти пакеты имеют коммутацию с использованием прерываний (CEF в случае маршрутизатора) или аппаратную коммутацию (MLS в случае коммутатора).
Когда вы отправляете ICMP эхо-запрос на IP-адрес, принадлежащий маршрутизатору, он должен быть переключен на не медленный способ по средством CPU, и ему необходимо дождаться, пока планировщик процессов выделит ресурсы ЦП для отправки ответа. Если ЦП занят другими, более приоритетными процессами, этот ответ может быть с задержкой или даже не прийти.
Такая логика обработки пакетов необходима в тч для защиты DOS атак и никак не влияет на качество услуги.
Правильным способом для тестирования каналов WAN это - передавать трафик непосредственно между рабочими станциями и удаленным хостом, в этом случае трафик будет обработан маршрутизатором или коммутатором аппаратным способом без каких либо потерь.
Возвращаясь к нашему примеру мы видим последнюю сточку в которой хосту 185.60.112.157 было непосредственно передано 261 пакетов и принято 261 ответ. Т.е. при обмене пакетами пакетов между рабочей станцией и хостом 185.60.112.157 не потерян ни один пакет.
Перевод с английского из источника cisco.com