[e2e] Multiple TCP-friendly Sessions and Cong. Control in user-mode?

Joe Touch touch at ISI.EDU
Thu Apr 11 13:21:24 PDT 2002

David P. Reed wrote:
> I am doing a very interesting app that does congestion control (*must* 
> do congestion control) in the app layer.  Why? Since its communication 
> patterns consist of short bursts originated in random locations 
> "broadcast" to time-varying subsets of up to a million other users, the 
> only sensible way to do congestion control is to control app behavior by 
> signalling congestion information (such as ECN marks) to all known 
> sources that might end up using the same congested path - letting them 
> discover congestion only when they begin transmitting would be far too 
> late to close the control loop.
> DCF is useless for the logic of this app.  The communication patterns 
> come from the natural behavior of human users - not because of some 
> perverse design.  And it is the type of app that could cause serious 
> congestion.
> Of course, the Internet that is being optimized by the "let's put all 
> the intelligence in the routers or OS kernels" school will not support 
> our application at all well.   :-)

Why? Seems like that sort of coordinated congestion system could be 
implemented as a service with a generic API for the application. That 
would avoid reinventing it for each application, and further encourage 
its coordination with other congestion control mechanisms in the kernel, 
e.g., CM.

The kernel is one place to implement generic, ongoing process services. 
It is the place where shared services are typically placed.

Reinventing all this at the application layer (ala peer nets) doesn't 
make it more useful or more flexible; it just increases the number of 
places to get it wrong.


More information about the end2end-interest mailing list