CONGESTION CONTROL
CONGESTION CONTROL
CONGESTION CONTROL
the load on the network (i.e. the number of packets sent to the
network) is greater than the capacity of the network (i.e. the number
Fig. When too much traffic, congestion sets in and performance degrades.
1
When the number of packets dumped into the network by the hosts
is within it carrying capacity, they are all delivered and the number
four input lines and all need the same output line. In this case,
the next router, increasing the load all the way to destination.
2
Insufficient memory to hold all the packets.
overload condition.
3
Difference between Congestion Control and Flow Control
4
Router-Centric
at the routers.
Host-Centric
network conditions
Feedback-Based
5
- The transmission rate is adjusted according to feedback
Explicit feedback
Implicit feedback
size
6
TCP reacts to congestion by reducing the sender window size. The
factors-
of- “How much data (in bytes) the receiver can receive without
acknowledgement?”
window size.
7
Otherwise,
Retransmission.
So always
window size)
Three mechanisms
AIMD
8
In TCP, congestion control is done through a mechanism called
Fig.2 AIMD
9
If the congestion is reduced on the network, and acknowledgements
for the packets are being received by the source, for each
absence of congestion.
10
Fig.3 Packets during additive increase with one packet being added each RTT
Slow Start
11
Fig.4 Slow start (exponential increase)
(slow start threshold). When the size of the window reaches this
12
Congestion Avoidance: Additive Increase
During the initial data transfer the Slow Start algorithm is used.
However, there may be a point during Slow Start that the network is
slow start threshold (ssthresh), the slow start phase stops and the
13
Fig. 5. Illustration of Slow Start and Congestion Avoidance
Congestion Detection
congestion
and
14
receiving three duplicate ACKs: the sign of a weak congestion in the
network.
The first is the time-out. If a TCP sender does not receive an ACK
Time Out
15
When timeout occurs, Threshold set to Cong Win ((cwnd)/2)
Fig.6
Duplicate ACKs
16
• When a duplicate ACK is seen by the sender, it infers that the
resending data.
Fast Retransmit
received.
17
Fig. 7. Fast Retransmit based on three duplicate ACKs
Fast Recovery
follows:
18
After three duplicate acknowledgements are received, the
current cwnd.
Avoidance.
This process is called fast recovery because after the receiver gets
19
well. Thus the sender and receiver recover quickly. If time-out
Fig. 8
20