6.2 mtu now limits size of incomming packet
Mike Karels
karels at karels.net
Sat Jul 14 01:21:11 UTC 2007
> Bill Moran wrote:
> ractices are
> > still evolving.
> >
> > Let's flip the question around a bit: why would you _want_ the TCP stack
> > to accept frames larger than the stated MTU?
> >
> Because mtu is mTu not mRu.
I must agree. There is no strong requirement that MTU == MRU, although
the standard BSD interface description does not include an MRU. As a
practical example, I'll note that our (Secure Computing) version of the
system provides an option to receive jumbo Ethernet frames without sending
them; MRU is 9K or so, MTU is 1500. If the NIC (as programmed) is willing
to receive the frame, we are willing to receive the packet at the protocol
level.
Similarly, if someone sets the MTU on an Ethernet interface to 1280,
that does not really mean that frames up to 1500 bytes are nonconformant.
> As the original BSD group always said.. (from my memories of Kirk's and
> Mike's talks in 1991),
> "Transmit strictly [according to the spec] but receive forgivingly".
>From RFC-1122, and memorialized on the working group coffee cup on my
bookshelf:
Be liberal in what you accept, and
conservative in what you send
(attributed to RFC-791, but paraphrased; also in RFC-793; for those
who don't recognize them, these are the original IP and TCP specs.)
> The ability to receive packets larger than mtu was not accidental.
> This should be fixed, if it is, as is suggested, a deliberate change.
I'd be happy to see the change undone as well. I (well, our test
group) found this change in a similar way, and it didn't agree with
our previous usage.
Mike
More information about the freebsd-net
mailing list