Re: Why is MTU an issue? (RE: Please read - proposed W G termination)
Mark Townsley <[email protected]> Fri, 02 Sep 2005 21:42:55 +0200
| Newsgroups | gmane.ietf.ipoib |
|---|---|
| Message-ID | <[email protected]> |
Dror Goldenberg wrote: > > > > From: Mark Townsley [mailto:[email protected]] > > Sent: Friday, September 02, 2005 4:21 PM > > > > Harald Tveit Alvestrand wrote: > > > > > --On 1. september 2005 11:19 -0700 "H.K. Jerry Chu" > > > <[email protected]> wrote: > > > > > >> What's more hairy to the OS stack is the per-destination MTU and > > >> different > > >> MTU for multicast than for unicast inherited in IPoIB CM. > > > > > > > > > I don't quite understand why this should be an issue. > > > At the moment, TCP/IPv4 stacks have 3 options: > > > > > > - Set MTU to 576 bytes (not b* likely) > > > - Set MTU to physical interface MTU and depend on > > fragmentation in the > > > network to save their bacon in the case of smaller MTUs > > (*curse* PPPoE) > > > - Set initial MTU to physical interface MTU, set DF bit, > > and support > > > Path MTU discovery > > > > > > I *think* all "modern" IP stacks take the last choice. Which means > > > that they have built-in support for variable MTU already. > > > > Many do, but then ICMP is filtered with reckless abandon on > > the Internet > > (big I), breaking the feedback loop for a perfectly good PMTU enabled > > stack. MTU must still hand-managed *way* more than it should be. > > > > - Mark > > > > I think that there is an even more fundamental issue than ICMPs being > filtered. ICMPs for "Fragmentation Needed and DF Set" are generated by > routers. So, for local subnet traffic, RFC 1191 (PMTU Discovery) won't > work to my understanding. PMTU discovery is a layer 3 protocol, not > layer 2. > > For the specific case of ipoib-cm with local subnet traffic. A local > "huge" frame will be handed over to the layer 2 IB interface for > transmission. If it doesn't manage to send that large MTU because > there isn't such a large MTU between the local node and its peer, then > the frame is silenty discarded by the TRANSMITTER. One way to go now > is to generate a local ICMP message saying that this was a too large > frame. But I don't think it's the right way to go. > I see your point. > I think that the right approach is to have a per-neighbor MTU in the > L2 interface. And furthermore, MTU can be different between multicast > and unicast. We're actually trying to see whether a per neighbor MTU > can be added to Linux. > On the face of it, "per-neighbor" MTU sounds like a management nightmare for anything but a handful of hosts. - Mark > -Dror >