Что такое MTU и фрагментация пакетов?
Модели OSI и TCP/IP
MTU — максимальный размер пакета (полезной нагрузки кадра), который канал передаёт за раз (для Ethernet обычно 1500 байт); пакеты крупнее MTU фрагментируются на части, что снижает эффективность и надёжность доставки.
Как это работает
- IP-пакет больше MTU канала либо дробится на фрагменты (IPv4), либо отбрасывается с ICMP-ошибкой при установленном флаге DF (запрет фрагментации).
- Сборка происходит на получателе: потеря одного фрагмента хоронит весь пакет, поэтому вероятность потери растёт с числом фрагментов.
Path MTU Discovery
Отправитель шлёт пакеты с DF и по ответам ICMP «Fragmentation Needed» подбирает минимальный MTU маршрута. Файрволы, режущие ICMP, создают загадочные «зависания больших ответов».
Практические следствия
- Туннели и VPN съедают часть MTU на инкапсуляцию — отсюда MSS clamping у TCP.
- В IPv6 фрагментирует только отправитель: промежуточные маршрутизаторы этим не занимаются.
- Jumbo frames (до ~9000 байт) внутри датацентров снижают накладные расходы на заголовки.
Коротко для собеседования
Пакет больше MTU маршрута либо дробится, либо отбрасывается, и каждый фрагмент повышает риск потерять всё целиком. Типичная ловушка — туннель уменьшает MTU, а файрвол режет ICMP, и большие ответы молча зависают; лечат MSS clamping и пропуском ICMP.