Friday, September 5, 2008

Analysis of the Increase and Decrease Algorithms for Congestion Avoidance in Computer Networks

This paper presents the theoretical reasoning behind TCP's additive increase and multiplicative decrease algorithm for adjusting its sending window to control congestion. It compares different byte feedback control algorithms using four metrics: Efficiency, Fairness, Convergence time and size of oscillations.

I really like the organization and the progression of the paper. First, it proposes four conditions a congestion avoidance algorithm must satisfy. Then it introduces a few conditions at a time to filter out possible solutions from a wide selection. This makes a theoretical paper easy to follow and what used to seem like "black magic" now makes perfect sense.

Distributedness was not originally listed as one of four metrics, but it is certainly an important factor. Internet was designed to be scalable because it does not have centrally managed parts, congestion avoidance continues to follow that model.

The paper argues that increased bit feedback may reduce amount of oscillation. I think it actually will help with the convergence speed as well. Previously in class, we have discussed to separate control and data channels, how would this congestion control mechanism benefit from dedicated channel. Is the data channel currently affecting the convergence speed of congestion avoidance?

This paper should definitely stay in the curriculum. It introduces a well known concept in a formal way, and explains the reasoning quite logically. There are a lot of concepts that are intuitive but difficult to explain why.

As the network physical layer changes, how will congestion control be affected? Also how does congestion avoidance work / fail under malicious attacks? Those are likely interesting topics of further research.

No comments: