=================================================== From muhammed@ece.rice.edu Tue Jan 27 21:14:32 2004 =================================================== The rationale behind the addition of Slow start and Congestion aviodance to TCP is explained. Their design is justified using "conservation of packets" principle. The importance of correctly setting RTO based on RTT is stressed. It is argued that setting RTO based on, not just the mean RTT, but also on the variance of the RTT reduces the probability of "congestion collapse" of the network. The results section shows that slow start saves a lot of unnecessary retransmissions. The new RTO setting based on mean + variance of RTT samples is shown to more accurately match the true value compared to old versions of TCP. Congestion Avoidance is shown to lead to fair sharing of bandwidth among multiple flows. The new TCP is shown to operate at near link bandwidth compared to old TCP which over estimates the same. =================================================== From twngan@cs.rice.edu Wed Jan 28 11:46:22 2004 =================================================== In Oct 1986, there was a series of "congestion collapses" in the Internet. The throughput of links were radically dropped. The problems behind are that the 4.3BSD TCP was misbehaving and it was not tuned to work better under abysmal network conditions. This paper suggests some changes to 4BSD TCP, including round-trip time variance estimation, exponential retransmit timer backoff, slow start, more aggressive receiver ack policy, and dynamic window sizing on congestion. "Slow-start" was done by having a congestion window for each connection. The size of the congestion window is increased by one packet per ack received. It upper bounds to the packets sent. For round-trip timing, instead of just estimating the value, the paper suggests to also measuring the variation of the round trip time. Also, it suggests an adaptive parameter based on variation instead of choosing a fixed parameter. In congestion avoidance, the idea is to have AIMD in the congestion window size, and use this size to upper bound the packets sent. The suggested changes in this paper have been implemented, widely used, and proven to be working very well. Even after years of development and many suggested changes to TCP, the suggestions from this paper are still forming the intrinsic part of the newly proposed TCP modification. This is truly a classic paper with enormous influence. =================================================== From takhoa@rice.edu Wed Jan 28 21:28:07 2004 =================================================== I am tempted to say that it is remarkable to see how an algorithm designed 15 years ago when the Internet was much less complex still works well today. However, many improvements and workarounds have been made to sustain TCP performance in the Internet. Thus, it might be the case that a drastically different approach to TCP might have been better. As pointed out in the FAST TCP paper, many assumptions about slow start and congestion control no longer hold true in today's complex Internet. In hindsight, slow-start and AIMD algorithm seem intuitive. However, many trials and analyses have gone into estimating different parameters for the algorithm. The paper proposes what appears to be intuitive changes in the design of TCP. Yet, it is a significant change that allows TCP to operate in much larger networks. =================================================== From dushu@cs.rice.edu Thu Jan 29 01:35:22 2004 =================================================== Good paper to read. This paper explained the origin of today's TCP's conservative design philosophy. The algorithms of slow start and congestion avoidance were discussed in this paper and more importantly, why we needed them was explained and analyzed. But it has been a long time since this paper and the TCP Reno got published. In the past decade, surging progress in the network has greatly changed the world, as well as the Internet itself. Although the traditional TCP is still operating not badly, we should consider some ways to tune it up to fit for the coming future. =================================================== From gulati@cs.rice.edu Sun Feb 1 15:25:26 2004 =================================================== Congestion Avoidance and Control This paper points out some of the severe congestion problems that lead to buffer overflows, large queuing delsys and dropping of packets at gateways. It claims that these problems exist because of explosive growth of Internet and poor implementation of TCP. The authors studied the implementation of TCP and suggested following changes in various parts: 1. better RTT estimation 2. Exponential retransmit timer back-off 3. Slow start 4. Dynamic window sizing on congestion 5. Karn's clamped retransmit back-off The authors state 3 main reasons that can cause packet conservation to fail and following solutions to maintain packet conservation: 1. Connection doesn't get to equilibrium: Slow start maintains a congestion window per connection. Window is set to 1 on packet loss and increased by 1 on each ack. So the window reaches a size W in Rlog(W) time where R is the round trip time. 2. Maintain conservation at equilibrium: A good round trip time estimator is the core component in setting retransmit timer and maintaining conservation at equilibrium. The paper provides an algorithm for rtt mean and variance estimation, that works better than currently used algorithms. 3. Adapting to path (Congestion avoidance): If resources are insufficen and network is subject to congestion, the load on the network is modeled by: Li = N + Li-1, where Li is load at interval i, N is injection rate and Li-1 is the left over traffic. Thus queue lengths increase exponentially at routers and only multiplicative decrease can help in removing congestion. So the congestion avoidance algorithm works as follows: On any timeout, connection window(cwnd) is set to half its original size. Then on eack ack of new data, it is increased by 1/cwnd, that implies increment by 1 in rtt time. Final window size is set to minimum of receiver's advertised window and cwnd. Finally authors show that the modified protocol gives more throughput, causes lesser number of retransmissions, calculates rtt mean and variance closer to actual values and achieves fairness among different TCP streams. -Ajay