5. Вопросы LCP
5.1. Согласование MRU
Поскольку для Ethernet (без кадров jumbo) максимальный размер данных ограничен 1500 октетами, заголовок PPPoE занимает 6 октетов, а поле PPP Protocol ID — 2 октета, для опции MRU (Maximum-Receive-Unit) недопустимо согласовывать значение более 1492 октетов, если клиент и сервер PPPoE не указали свою возможность использования больших значений MRU на этапе PPPoE Discovery.
Начальное согласование MRU для сервера PPP/PPPoE должно следовать приведенной ниже процедуре:
If PPPoE { PPP_MRU_Max = 1492 If (PPP-Max-Payload-Tag) AND (PPP-Max-Payload-Tag > 1492) Then PPP_MRU_Max = min (PPP-Max-Payload-Tag, Interface MTU-8) } нормальная процедура PPP_MRU_Negotiation (PPP_MRU_Max)
Если присутствует тег PPP-Max-Payload со значением более 1492, это значение должно рассматриваться наряду с установками MTU для интерфейсов сервера при нормальном согласовании в соответствии RFC 1661 [2] используемого протоколом значения MRU.
Если тег PPP-Max-Payload не задан или указывает значение меньше 1492, существующее для MRU ограничение 1492 должно сохранять свою применимость в целях обеспечения совместимости с более ранними версиями.
Таким образом, в результате имеет место следующее поведение:
При получении тега PPP-Max-Payload
- значение этого тега показывает значение MRU, допущенное или предложенное при согласовании MRU
- если значение MRU не согласовано, RFC 1661 [2] будет задавать принятое по умолчанию значение MRU = 1500. Это говорит о том, что тег PPP-Max-Payload может указывать значение более 1500, но в этом случае RFC 1661 [2] установит принятое по умолчанию значение 1500, а заданное тегом PPP-Max-Payload большее значение может быть использовано только в тех случаях, когда согласовано достаточно большое значение MRU (вплоть до максимального размера поля данных).
- Если тег PPP-Max-Payload не получен ни одной из сторон, используется правило, заданное в RFC 2516 [1].