2013-05-06 2 views
0

Я читал rfc791 и пытался понять отношения с MTU, а также с минимальным размером пакета для IPv4. Вот две цитаты из RFC:RFC791, MTU и минимальный размер пакета

"All hosts must be prepared to accept datagrams of up to 576 octets (whether they arrive whole or in fragments)." 

И

"Every internet module must be able to forward a datagram of 68 octets without further fragmentation. This is because an internet header may be up to 60 octets, and the minimum fragment is 8 octets." 

Правильно ли я понимаю, что первое связано только с хостов, т.е. только хосты должны иметь возможность обрабатывать минимальный размер пакета 576 байт , а второй оператор определяет размер пакета mi для маршрутизатора? Но из-за этого возможно, что маршрутизатор не сможет получить пакет из 68 байтов для самого ?

Или мне не хватает чего-то очень фундаментального?

Спасибо. Mark

ответ

0

Первый относится к принятию; второе относится к пересылке.

, то можно иметь маршрутизатор не в состоянии получить пакет из 68 байт для себя

Это не имеет никакого смысла. Хост должен иметь возможность принимать дейтаграммы до 576 октетов.

+0

Но затем два непосредственно связанные хосты в связи с MTU 68 байтами, который является законным, не смогут обмениваться дейтаграммами? – Mark

+0

Почему бы и нет? Они могут фрагментировать их в 68-байтовые пакеты. – EJP

1

Окно 576 - это «наименьший максимум». Другими словами, хост должен быть готов к максимальному размеру пакета не менее 576 октетов. Он может быть больше, чем таковой, например, ограничение 1518, используемое большинством (не jumbo) Ethernet-устройств, но не меньшее.

Все, что настроено для пересылки пакетов, не должно разделять их на куски размером менее 68 октетов.

+0

Я не понимаю, какой размер пакета должен быть, когда маршрутизатор (объект пересылки с min 68b chunks) также действует как хост (576b мин.), Рассмотрите это: A - R1 - R2 - B. Host A отправляет длинный пакет в R2, предположим, что R1 разбивает его на куски 68b, поэтому он будет доставлять 68b не 576b на хост R2 (в этом сценарии R2 является хостом). На мой взгляд, это противоречит RFC. Я, конечно, неправильно понимаю. – Mark

+0

lol Я только что установил свой mtu на 25 и навсегда потерял свой Linux-пакет! Должен был сначала проверить SO !!! – portforwardpodcast

0

По стандарту 576 байт является «минимальным MTU», поддерживаемым по IP-инфраструктуре. Это означает, что любой хост/маршрутизатор должен поддерживать это значение, и любые IP-пакеты могут быть меньше 576 байтов (по крайней мере 68 байтов), которые могут перемещать мир IP без фрагментации.

НТН

Смежные вопросы