[e2e] Are we doing sliding window in the Internet?

David P. Reed dpreed at reed.com
Sun Jan 6 11:05:15 PST 2008

Thinking deeply about "absence of congestion collapse" and "fairness" - 
it is clearly not possible for a protocol (or the network itself) to 
absolutely guarantee either property.   This is the core of the argument 
we made in the paper called End-to-end arguments in system design".

For a simple example by analogy: it is not possible to design a bridge 
that will not collapse when hundreds of thousands of people endeavor to 
stand on it with the purpose of collapsing it.   You MAY be able to do 
such a design if you *assume* that the behavior of people is (for 
example) random, without coordination, and "normal".  Similarly, 
telephone switches and sewage systems are not guaranteed to be either 
"fair" or to avoid under all circumstances violating the desirable 

As long as the implementation of the Internet is finite and has a finite 
capacity, it would seem extremely likely that certain kinds of traffic 
patterns that would be "desirable" would also make the Internet 
vulnerable to congestion collapse and unfairness according to reasonable 
definitions of fairness as viewed by end users [Nick McKeown is known as 
an example of a radical who has written often that he thinks fairness is 
defined at each router in isolation - but such "router-eyed" views seem 
to me irrelevant, since fairness at a router can lead to very non-fair 
end-to-end behavior]

It seems very likely that attempting to operate the Internet as a whole 
at very high loads (the goal of protocol optimizers seems to be to 
eliminate any slack time on any links that can be eliminated) create the 
very risk of "congestion collapse" that people fear.   Systems operating 
at extreme points are often quite unstable and non-resilient.

So the safest thing the network as a whole can do to insure lack of 
"congestion collapse" is to trade excess capacity for stability.   This 
can be done, not by legislating end-to-end protocols, but by investing 
in new capacity well ahead of demand.

Lars Eggert wrote:
> It's important to remember the two reasons for congestion control from 
> Sally's RFC2914: preventing congestion collapse and establishing some 
> degree of fairness.

More information about the end2end-interest mailing list