Subject: Re: PPPoE vs ETHERMTU
To: Martin Husemann <firstname.lastname@example.org>
From: Brian Somers <brian@Awfulhak.org>
Date: 07/03/2001 22:29:56
> > I believe the 1490 MTU is used when (MPPE) encryption has been
> > negotiated. MPPE encrypts each packet to the same size as the
> > unencrypted packet, but also encrypts the protocol id, increasing the
> > payload by two bytes.
> I do not pretend to have read the MPPE RFC yet, so probably just am
> misunderstanding what you said. In PPPoE the 6 byte PPPoE header is always
> followed by the PPP protocol ID (two bytes), followed by payload data,
> that's why the MTU is 1500-6-2 = 1492.
Normally (without encryption) the ppp ethernet payload will have the
2 byte protocol and the 6 byte PPPoE header. Setting the MTU to 1492
is ok in this case.
When MPPE is in use, the 2 byte protocol id and the payload are
encrypted and *together* treated as the new payload, prepending a
new 2 byte PROTO_ICOMPD or PROTO_COMPD protocol id. So if the MTU is
set to 1492, the ethernet payload ends up maxing out at 1502 and
I'm working on fixing user ppp as we speak - having it know about
such overheads on a per CCP protocol level and adjusting the MTU as
CCP for these protocols is brought up.
> Besides, MPPP over PPPoE sounds - strange.
Yes (I can't remember what MP context you're talking about though).
Brian <email@example.com> <brian@Awfulhak.org>
Don't _EVER_ lose your sense of humour ! <brian@[uk.]OpenBSD.org>