Как часто IP-пакеты фрагментируются на исходном хосте? - PullRequest
4 голосов
/ 08 марта 2009

Я знаю, что если полезная нагрузка IP> MTU, то маршрутизаторы обычно фрагментируют IP-пакет. Наконец, все фрагментированные пакеты собираются в месте назначения с использованием полей IP-ID, смещений фрагментов IP и флагов фрагментации. Максимальная длина полезной нагрузки IP составляет 64K. Таким образом, вполне вероятно, что L4 передаст полезную нагрузку 64 КБ. Если протокол L2 является Ethernet, что часто имеет место, то MTU будет около 1600 байтов. Следовательно, IP-пакет будет фрагментирован на самом узле-источнике. Однако быстрый поиск по реализации IP в Linux говорит мне, что в последних ядрах протоколы L4 дружественны к фрагментам, т.е. они пытаются сохранить работу фрагментации для IP, передавая буферы размера, близкого к MTU.

Учитывая эти два факта, мне интересно, как часто IP-пакет фрагментируется на самом узле-источнике. Это происходит иногда / редко / никогда? Кто-нибудь знает, есть ли исключения из правила фрагментации в ядре Linux (то есть, существуют ли ситуации, когда протоколы L4 не являются дружественными для фрагментов)? Как это обрабатывается в других распространенных ОС, таких как Windows? Вообще, как часто IP-пакеты фрагментированы?

1 Ответ

4 голосов
/ 08 марта 2009

Хотя технически не должно быть никаких протоколов, которые бы неправильно обрабатывали фрагментацию IP, есть пара (например, NFS), которые значительно выигрывают от отсутствия фрагментации .

То, как часто вы видите фрагментированные пакеты, во многом зависит от вашей сетевой среды. Инкапсуляция пакетов для VPN, плохо спроектированные или реализованные протоколы UDP и протоколы L1 / L2, которые опускают сквозной MTU ниже значений конечной точки, могут вызвать фрагментацию IP.

Большинство современных хостов реализуют PTMUD , который будет автоматически определять размер MTU, если не задействованы несовместимые устройства или сверхпараноидальные межсетевые экраны . В эти дни Ethernet Everywhere я не ожидаю, что они будут особенно распространены в Интернете в целом.

...