The algorithm behind TCP must deal with more than merely moving lots of bytes from application to application. It must also ensure that it acts in a manner that will not overwhelm the routers in between. This lecture will discuss those aspects of TCP where it tries to be a good neighbor. We will discuss the basic congestion control schemes, including slow-start, additive-increase multiplicative-decrease and fast-retransmission.
Lesson Objectives
By the end of this lesson, the student will be able to:
describe the mission, operation and mechanisms for flow control in TCP.
list causes, costs and consequences of network congestion.
describe the operations of, as well as advantages and disadvantages of, different feedback mechanisms.
describe the overall congestion control mechanisms used in TCP, including the congwin variable, self-clocking nature, and interaction of various phases.
describe the slow start component of TCP congestion control; including starting conditions, reactions to ACKs and ending conditions.
describe the congestion avoidance component of TCP congestion control; including starting conditions, ending conditions, reactions to loss, reactions to ACKs and differences between Reno and Tahoe versions.
describe how TCP sets timeout values.
calculate EstimatedRTT, DevRTT and TimeoutInterval.