[e2e] TCP un-friendly congestion control

Tom Kelly ctk21 at eng.cam.ac.uk
Fri Jun 6 01:57:08 PDT 2003


Hi,

This is a long email so the quick links are:
http://www.icir.org/floyd/hstcp.html
http://www-lce.eng.cam.ac.uk/~ctk21/scalable/
http://www-control.eng.cam.ac.uk/gv/internet/TR398.pdf

> Now I won't claim to understand all the maths behind Steven Low's
> work either - but, as far as I understood it, it does at least
> require one midpoint modification: active queue management.
> I think that's how stability is ensured.

I might be bold enough to claim that I do understand some of the control 
theory behind Steven Low's work. Those interested in wanting to 
understand some control theory relating to networks should read Glenn 
Vinnicombe's clean and concise result on stability of TCP like flow 
controls:
http://www-control.eng.cam.ac.uk/gv/internet/TR398.pdf
Beginners to control theory should get a book on undergraduate control 
and then read the Nyquist stability reference in the above paper. 

As for FAST, it is difficult to comment on an unpublished algorithm.  
Note that publicised is different to published. So to the best of what can
be inferred, FAST appears to be TCP Vegas with some new parameters and
tweaks that attempt to solve the problems of TCP congestion control in
highspeed wide area networks.

Another approach to improving TCP performance in highspeed wide area
networks is Highspeed TCP by Sally Floyd. See the internet draft at:
http://www.icir.org/floyd/hstcp.html

I have made refinements to Sally's proposal in my Scalable TCP proposal
which adds freely available source code implementation for Linux and
experimental results from a testbed. Scalable TCP is essentially a
parameter setting of Highspeed TCP which makes IMHO a lot of sense from  
the scalability, stability, implementation, and evolvability standpoints.
All of these are available from:
http://www-lce.eng.cam.ac.uk/~ctk21/scalable/
It was interesting to discover that with the hardware/OS setup we had half 
the problems were with the OS and driver. The net100 project kernel 
instrumentation tools aim to help get a handle on this:
http://www.net100.org/

> I wonder if it's possible to create a TCP-like mechanism that
> would be stable (assuming a fluid model) with no tailored
> active queue management  ... in particular, I wonder if this
> could be shown in the heterogeneous RTT case.

This is a question that has had considerable research effort put in by 
many in the community. I think the answer to this question is yes and see 
the maths in Glenn's paper above if you want to engineer your own. 

Hope that helps,
Tom






More information about the end2end-interest mailing list