$25
CS204: Computer Networks
Assignment – 2
Congestion Avoidance and Control
The foundational paper on transport layer congestion control was written by Van Jacobson and Michael Karles. Their paper discusses several aspects involved in a typical congestion avoidance and control scheme. Your task is to read and understand the algorithms presented in the paper and answer the following questions:
1. The author says that flow of packets in a TCP connection need to follow the “conservation principle”. Explain, what is a conservation principle and how can we ensure that for a given TCP connection, conservation principle is followed.
2. According to the author, why it is not a good idea to estimate Time Out (TO) as twice of estimated Round Trip Time (RTT) (i.e., TO = 2*RTT) under normal load scenarios. Instead, What have the authors proposed to do to compute the TO.
3. In the case of Retransmissions, how should the TO be calculated.? Explain your answer.
4. Figures 3 and 4 depict the behaviour of TCP without and with implementing Slow Start respectively. Study both the graphs and explain in your own words, why do you think that TCP slow start phase is necessary for implementing congestion control algorithms.
5. Figures 8 and 9 depict the behaviour of multiple TCP connections when implementing congestion avoidance algorithm
6. Explain the combined slow start and congestion avoidance algorithm.
A Protocol for Packet Network Intercommunication
The paper on Packet Network Intercommunication discusses process level communication, addressing mechanisms, transport layer segment structures, segmentation and reassembly techniques, connection and connection free protocols, and flow control mechanisms. Your task is to read and understand the various transport layer functionalities as outlined in the paper and answer the following questions:
1. What is framing and why is it needed?
2. Why do we need TCP addressing when transmitting segments using TCP from one host to another.
3. What is ‘ES’ and ‘EM’ flag in the TCP segment? How does it help in reassembly and sequencing?
4. What are Transmit and Receive Control Block (TCB and RCB), explain its purpose. What is the typical format of a TCB.
5. What is the difference between connection and association? Explain, what do you mean by connection free protocol with association?