Как найти потерянные пакеты с помощью Wireshark
Медленное, запаздывающее соединение может указывать на потерю пакетов при передаче. Хотя определенный уровень потери пакетов приемлем в некоторых сценариях, в других он может серьезно ухудшить работу пользователя, особенно при потоковой передаче мультимедиа. Кроме того, система может вообще отбрасывать пакеты, чтобы компенсировать задержку, и при этом данные могут быть потеряны.
Вот как с помощью Wireshark определить, имеете ли вы дело с отброшенными или потерянными пакетами, чтобы можно было быстро диагностировать проблему.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Сброшены пакеты? Давайте заберем их
Когда пользователи жалуются на медленное обслуживание или плохую передачу данных, логично предположить, что виновата потеря пакетов. Не все потерянные пакеты отбрасываются, но высокая скорость отбрасывания все равно может указывать на различные проблемы. Вот процесс проверки того, потеряли ли вы пакеты в Wireshark.
- Откройте Вайршарк настольное приложение.
- Убедитесь, что вы находитесь в режиме съемки.
- Найдите строку состояния в нижней части окна.
Здесь вы увидите некоторую статистику о перехваченных вами пакетах. Число рядом с надписью «Отброшено» указывает, были ли отброшены какие-либо пакеты. В некоторых версиях счетчик «Отброшено» отображается только в том случае, если Wireshark не перехватил все пакеты.
Если вы уверены, что некоторые пакеты были отброшены, но строка состояния не помогает, найдите статистику отброшенных пакетов следующим образом:
- Нажмите «Статистика» в строке меню.
- Выберите «Записать свойства файла». Откроется новое окно.
- В разделе «Интерфейсы» вы увидите «Отброшенные пакеты». Число под ним покажет вам, сколько пакетов не было перехвачено.
Даже если Wireshark не перехватывает все пакеты, это не значит, что они не были переданы. Программа может просто не справиться с быстрым потоком. Тем не менее, он все равно может подтверждать пакеты, которые не были перехвачены пакетом ACK, поскольку это меньшие по размеру пакеты, которые легче перехватить. Таким образом, вы часто можете идентифицировать отброшенные пакеты, выполнив поиск ACK в столбце информации. ACK сообщает вам, что данные были переданы успешно, несмотря на отсутствие пакета.
Исследование потерянных пакетов
Неперехваченные пакеты не равны потерянным пакетам. Хотя пакеты, которые Wireshark не перехватил, все равно могут дойти до места назначения, потерянные пакеты этого не добьются. Вместо этого они обычно передаются повторно и удаляются только в худшем случае. Чтобы исследовать потерянные пакеты в сегменте TCP, вам необходимо внимательно изучить информационный столбец на экране захвата.
- Выберите разговор, который хотите изучить, и примените его в качестве фильтра. Это не обязательно, но поможет вам получить лучший обзор.
- Выберите любой из пакетов.
- Нажмите «Протокол Интернета версии 4» в разделе «Подробности».
- Найдите идентификационный номер, щелкните его правой кнопкой мыши и нажмите «Применить как столбец».
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
Теперь вы можете увидеть порядковый идентификационный номер каждой передачи. Просмотрите цифры и найдите несоответствия. Помните, что в TCP потерянные пакеты могут быть повторно переданы позже, поэтому даже если передача отсутствует на своем месте, она все равно может быть там, где-то ниже. Найти его можно по идентификационному номеру.
Всякий раз, когда пакет не удается передать, вы увидите сообщение «Предыдущий сегмент не захвачен» в столбце «Информация» следующей строки. Вы также можете искать потерянные пакеты во всех диалогах, фильтруя их по этому сообщению об ошибке. Введите «tcp.anaанализ.lost_segment» в строке фильтров и нажмите Enter. Вы также можете объединить это с фильтрами IP-адресов или разговоров, набрав «и» между двумя фильтрами, чтобы получить более точный результат. Опять же, искать потерянные пакеты можно после определения их идентификационных номеров.
Как уже упоминалось, TCP позволяет позже повторно передать потерянные сегменты. Вы можете использовать фильтр «tcp.anasis.retransmission», чтобы найти повторные передачи. Поиск повторно переданных пакетов иногда может быть более продуктивным, чем поиск потерянных сегментов, поскольку потерянные сегменты могут включать более одного пакета, а повторные передачи представляют собой отдельные пакеты.
Отслеживайте потерянные пакеты с помощью Wireshark
Определить, был ли пакет потерян или отброшен Wireshark, не всегда просто. Обычно недостаточно рассматривать только один показатель, необходимо учитывать несколько факторов. Отброшенные пакеты часто доставляются к месту назначения целыми и невредимыми, а многие потерянные пакеты могут привести к ухудшению пользовательского опыта.