Задать вопрос
PerpetuumMobileSuper
@PerpetuumMobileSuper

Как узнать максимальное значение полезных данных в ip пакете?

Задана сеть из двух устройств. Делаю пинг с одного на другой, посылая 4 пакета по 3500 байт каждый. Получаю результат в WebShark.
5e4fe1bde3934c93b981c88b734b9c94.png
Как при этом определить максимальное значение полезных данных в одном пакете(я так понимаю, что это MTU)? Надо просто учесть 20+8 зарезервированных байт, то есть будет 3528, или дело в том что я при фрагментации получаю на каждый пакет в сумме 3610 и надо смотреть на это?
  • Вопрос задан
  • 1221 просмотр
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
fzfx
@fzfx
18,5 дм
у каждого пакета, если он не фрагментированный, свой IP-заголовок.
у каждого пакета, если он один является частью фрагментированного пакета, свой IP-заголовок.
максимальное значение полезных данных в IP-пакете - это максимальный размер ethernet-кадра (MTU) за вычетом заголовков (которые перед данными, для ethernet ii без 802.1q - 14 байт) и трейлеров (которые после данных, для ethernet ii - 0 байт) ethernet-кадра и заголовков (20 байт) и трейлеров (0 байт) IP-пакета.
Ответ написан
Комментировать
@manefesto
размер MTU равен 1500 байт, у jumboframe намного больше
Ответ написан
Комментировать
alk0v
@alk0v
Сетевой инженер, электронщик, цифровой археолог
У Вас же указано, что fragmented ip. На компе, как правило, стандартный MTU в 1500 байт, минус 20 байт заголовка IP и 8 байт заголовка ICMP (для echo). Остается 1472 байта - это те "данные" которые попали внутрь ICMP пакета.
Если Вы отправляли пинги по 3500 байт, то на каждый такой пинг было отправлено по 3 IP пакета. И на Вашем скрине это хорошо видно:
Первый пакет - 1472 байта данных + 8 байт ICMP + 20 байт IP + 14 байт Ethernet = 1514
Второй пакет - 1472 байта данных + 8 байт ICMP + 20 байт IP + 14 байт Ethernet = 1514
Третий пакет - 556 байт данных (3500-1472-1472) + 8 байт ICMP + 20 байт IP + 14 байт Ethernet = 598
по идее должно получиться так, не совсем понятно, почему на скрине последний пакет 582 байта.

Да, есть jumbo-фреймы с MTU до 9120 байт, но они бегают только между свичами и некоторыми серверными сетевыми картами.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы