On 1/23/2014 1:27 PM, Edward Crabbe wrote:
Part of the point of using UDP is to make use of lowest common denominator forwarding hardware in introducing entropy to protocols that lack it ( this is particularly true of the GRE in UDP use case also under discussion elsewhere). The tunnel is not the source of the traffic. The _source of the traffic_ is the source of the traffic.
To the Internet, the tunnel encapusulator is the source of traffic. Tracing the data back further than that is a mirage at best - and irrelevant.
The tunnel head-end is responsible for the tunnel walking, talking, and quaking like a duck (host). When the tunnel head-end knows something about the ultimate origin of the traffic - whether real, imagined, or from Asgard - then it has done it's duty (e.g., that it's already congestion controlled).
But that head end is responsible, regardless of what it knows or doesn't. And when it doesn't know, the only way to be responsible is to put in its own reactivity.
The originating application who's traffic is being tunneled should be responsible for congestion control, or lack there of.
Perhaps it should be, but that's an agreement between whomever implements/deploys the tunnel headend and whomever provides the originating traffic to them. The problem is that this isn't true for the typical use case for this kind of encapsulation.
I.e., if we were talking about MPLS traffic that already was reactive, we wouldn't be claiming the need for additional encapsulator mechanism. It's precisely because nothing is known about the MPLS traffic that the encapsulator needs to act.
> Are we advocating a return to intermediate
congestion control (I like X.25 as much as the next guy, but...). This is a very stark change of direction. I think mandating congestion control is not technically sound from either a theoretical (violation of end to end principle, stacking of congestion control algorithms leading to complex and potentially suboptimal results) or economic perspective (as a very large backbone, we've been doing just fine without intermediate congestion management thank you very much, and I have 0 desire to pay for a cost prohibitive, unnecessary feature in silicon.)
Write that up, and we'll see how it turns out in the IETF. However, right now, the IETF BCPs do require reactive congestion management of transport streams.
If you don't want/like that, then either don't use transport encapsulation, or change the BCPs.
I get Lars comments regarding reach, to some limited extent. Ultimately, the implication seems to be that the protocols riding the L2 network will have no form of congestion control and are fundamentally different than protocols that would reside on a typical wan. I have some serious doubts about this, although I'm sure this is the case in some specialized environments. At any rate, it seems to me that a stern warning regarding edge filtering on interdomain boundaries will be sufficient.
My concern may be slightly different that his. My concern is that you want the benefits of a UDP header, but don't like the responsibilities that come along with it.
Joe