Sie sind auf Seite 1von 12

Congestion Control

Lecture Date: 12th April 2020, 12:30 P.M. to 01:00 P.M.


Congestion Control in TCP

 TCP uses Congestion window and congestion policy to avoid congestion.


1. Congestion Window: Sender window size is determined by available buffer
space in the receiver (rwnd) or by congestion in the network.
Actual window size = minimum (rwnd, cwnd)
2. Congestion Policy: It start with slow-start phase, increase the rate rapidly till
reach a threshold. After reaching the threshold, data rate is reduced to avoid
congestion. If congestion is detected then sender again follow slow-start or
congestion avoidance.
Congestion Policy in TCP
Slow START: Exponential Increase
 In this phase after every Round Trip Time (RTT) the congestion window size increments
exponentially. Initially congestion window (cwnd) starts with one maximum segment size
(MSS). The MSS is determined during the connection establishment.
 Slow start increases till it will not reach to threshold. In most implementation, the size of
ssthresh(slow-start threshold) is 65535 bytes.
 In the example shown in next slide, it is assumed that receiver window size is greater than
cwnd.
Congestion Control in TCP: Slow Start: Exponential Increase
Congestion Policy in TCP
Congestion Avoidance: Additive Increase
 To avoid the congestion, additive increase will be implemented rather exponential. This
phase is starts after the slow start phase reached to threshold value
Congestion Control in TCP: Congestion Avoidance: Additive Increase
Congestion Policy in TCP
Congestion Detection Phase: Multiplicative Decrement

 If congestion occurs, then congestion window size must be decreased so that


sender can guess that congestion has occurred. Now there is the need to
retransmit a segment. There are 2 cases for retransmission done:
(i) Retransmission Due to time-out: In this, no information about the segment. In
this case Following steps are taken:
a) Set value of threshold to one-half of the current window size.
b) It set cwnd to the size of 1 segment
c) It starts the slow-start phase again.
Congestion Policy in TCP
Congestion Detection Phase: Multiplicative Decrement

(ii) 3 Acknowledgement Received: Some segments may be dropped or some arrived


safely for which acknowledgement is received. Following steps are done:
a) Set the value of threshold to one half of the current window size
b)Set cwnd to the value of the threshold.
c) It starts the congestion avoidance phase
TCP Congestion Policy Summary
Congestion Control in TCP
•In Example, it is assumed that the maximum window size is 32 segments.
•The threshold is set to 16 segments (one-half of the maximum window
size).
•In the slow-start phase the window size starts from 1 and grows
exponentially until it reaches the threshold.
•After it reaches the threshold, the congestion avoidance (additive increase)
procedure allows the window size to increase linearly until a timeout occurs
or the maximum window size is reached.
•In Figure, the time-out occurs when the window size is 20. At this moment,
the multiplicative decrease procedure takes over and reduces the threshold to
one-half of the previous window size.
•The previous window size was 20 when the time-out happened so the new
threshold is now 10.
Congestion Control in TCP
•TCP moves to slow start again and starts with a window size of 1, and TCP
moves to additive increase when the new threshold is reached.
•When the window size is 12, a three-ACKs event happens. The
multiplicative decrease procedure takes over again.
•The threshold is set to 6 and TCP goes to the additive increase phase this
time.
•It remains in this phase until another time-out or another three ACKs happen.
Congestion Control in TCP

Das könnte Ihnen auch gefallen