Network Congestion Control: Managing Internet Traffic
Accompanying website
Please visit the Wiley
or Amazon
pages for publisher details (and, while you're there, buy it :-) ).
Feedback:
- Teaching with this book:
- A review appeared here.
Do you use this book? Please let
me know - any feedback is more than welcome!
Web links
Note: this page contains a lot of links to people because these links tend
to be more stable than direct links to pages related to protocols or mechanisms.
However, a link to person X doesn't mean that I consider the work done by this
person more important than the work done by person Y (who is not mentioned here)
- probably, I just liked the web page of person X better :-)
Please drop me a line if
you notice a malfunctioning link, or if you just want to give me feedback about
the book (or report errors)!
Errata
- Page 46, first sentence of second paragraph: "it a
well known fact..." should read ""it is a well known fact...".
Thanks to Lukas Demetz for spotting this mistake!
- Page 51, line 3 of section
2.17.3: "linear programming" should be "nonlinear programming".
- Page 79, section 3.4.7, first bullet: this begins with "In step five of the original algorithm"
but it should be "In step one of the original algorithm" (the second bullet, just below, talks about step
five too, and here this is correct). Thanks to Kristian Hiorth for spotting this mistake!
- Page 216, line 3: "SCTP-based TCP" should read
"SCTP-based FTP".
- Section 4.6 includes BIC and CUBIC, the latter of which
borrows its key idea of basing the rate of increase on elapsed time since
last backoff directly from HTCP,
which was published over a year before CUBIC appeared. The debt to HTCP is
acknowledged by Injong Rhee both in his white paper on CUBIC and in his pfldnet
paper. HTCP should definitely
be included in this section - I apologize for this omission.
Preface
Chapter 2: Congestion control principles
- This chapter starts out with a reference to Keshav's
thesis (scroll down a bit), which is an important congestion control reference.
- This simulation script was used to generate
figure 2.2.
- Many of the basic principles in this chapter are nicely described in papers
by Raj Jain, whose
list of publications
is a really good starting point for background reading. This is also the place
to look for the paper
that introduced the AIMD diagrams.
- Speaking of important papers, this
is the origin of the end-to-end argument; if you're a Ph.D. student working
on computer networks, you simply must read this paper - it will help you understand
why some things are the way they are in today's Internet.
- Phase effects are described here.
- Here are slides
from Van Jacobson's SIGCOMM 2001 speech (mentioned in section 2.14.2).
- Some material
on the tragedy of the commons; take it with a grain of salt...
- This tutorial
by Jean-Yves Le Boudec
discusses fairness issues; proportional
fairness is a particularly interesting concept that was introduced by
Frank Kelly.
Chapter 3: Present technology
- This chapter is mainly based on RFCs, which can be obtained from the RFC-editor
(and a million other places). For a quick reference to TCP RFCs, I recommend
figure 3.10 on page 88 and the TCP
roadmap document, which is now an RFC. Of course, you also shouldn't miss
the famous congestion
avoidance and control paper.
- Sally Floyd made significant contributions
to the congestion control mechanisms in today's Internet; she maintains special
web pages, e.g., about ECN,
SACK, RED...
her website, and the ICIR pages in general,
are good sources for any such information; for instance, there's the TBIT
page which documents the current state of TCP implementations in the Internet.
- This is the squirrel that is mentioned in footnote
13, section 3.4.2 (page 72).
- Some SCTP material is here.
- ATM ABR is thoroughly described in the freely available traffic
management specification of the ATM
Forum.
Chapter 4: Experimental enhancements
- Section 4.6 should, but does not, include HTCP.
My apologies!
- Many of the enhancements that are described at the beginning of this chapter
are specified in experimental RFCs.
For these and other TCP enhancements, I would once again like to recommend
Sally Floyd's page - the number of
literature pointers that she maintains is truly impressive!
- The Congestion Manager
(section 4.2.2, page 119).
- These slides by
Van Jacobson are mentioned in section 4.4 (page 129).
- Steven Low's group is the place
to look for papers on REM, FAST and a lot of maths.
- The DCCP page at ICIR.
- Injong Rhee is the author
of TEAR, BIC and CUBIC; he maintains pages for each of these protocols. Similarly,
Saverio Mascolo's homepage is probably the best source for information about
TCP Westwood. Highspeed TCP
and Quick-start are,
again, Sally Floyd projects, and CADPC/PTP is my own little contribution to
the congestion control community. I maintain a dedicated
webpage. Dina Katabi is
the main author of XCP.
Chapter 5: Internet traffic management the ISP perspective
Chapter 6: The future of Internet congestion control
- Some of the things in this chapter are my
own research efforts - e.g., "Tailor-made
Congestion Control" is a FWF (Austrian Science Fund) supported research
project at the University of Innsbruck.
- If you're interested in the most recent congestion control research efforts,
it might be a good idea to look at the online technical programs of the ACM
SIGCOMM and IEEE INFOCOM conferences,
both of which contain freely available papers. ACM
CCR is also a good source that is freely available to the public.
Appendix A: Teaching congestion control with tools
- CAVT has
a webpage of its own.
- I maintain a small
ns webpage, which contains the NSBM tool and the throughput.pl perl script.
- This is not mentioned in the book, and not related to congestion control:
if you like these tools and plan to use them in a general networking course,
you might also like the irvtool
which is nice for teaching routing basics.
Appendix B: Related IETF work
Last update: 3. June 2016
Back to Michael's page