SlideShare a Scribd company logo
Group Member Roll Number 
Melvin Francis 13 
Madhusudhan G 17 
Kunal Jadhav 19 
Sameer Natekar 33 
Sooryakanth S 49
AGENDA 
 Learning… 
 Congestion 
 Network performance 
 Controlling… 
 Congestion 
 TCP controlling congestion 
 Additive-increase, multiplicative-decrease 
 Slow start. 
2
Congestion 
Definition: Congestion in a network may 
occur if load on the network or the no of 
packets sent to the network is greater than 
the capacity of the network 
Many possible causes 
 Rapid retransmissions of packets still in flight 
 Undelivered packets 
3
Congestion is Unavoidable 
 Two packets arrive at the same time 
 The node can only transmit one 
 … and either buffer or drop the other 
 Congestion in network happens because routers have input 
and output queues 
 If many packets arrive in a short period of time 
 The node cannot keep up with the arriving traffic 
 … and the buffer may eventually overflow 
4
 The packet is put at the end of input queue 
 The router removes the router from input queue and 
uses its routing table and destination address to find the 
route. 
 The packet is put in the appropriate output queue.
Issues 
 If the rate of arrival is higher than processing rate then 
the input queue becomes longer 
 If packet departure rate is less than processing rate 
then output queue becomes longer
Network Performance 
 Delay Versus Load 
 when the load is much less then delay is at minimum. 
 Delay becomes infinite when the load is greater than the 
network capacity. 
 when a packet is delayed, the source, not receiving the 
acknowledgment retransmit the packet which makes the 
delay and congestion, worse.
Network Performance 
 Throughput Versus Load 
 Throughput in a network is the number of packets 
passing through a network in a unit of time. 
 When the load exceeds capacity of network,throughput 
declines sharply because packets get discarded by router. 
 This does not reduce no of packets because source 
retransmit them.
Network Performance
Congestion Control 
 Congestion control refers to techniques and mechanisms that can 
either prevent congestion, before it happens, or remove congestion, 
after it has happened. 
 Categories :
Open loop Policies 
 In open-loop congestion, policies are applied to prevent 
congestion before it happens. 
 Congestion control is handled by either the source or the 
destination 
Retransmission Policy : 
 If the sent packet is lost or corrupted, the packed needs to 
be retransmitted by the sender. 
 Retransmission policy and retransmission timers must be 
designed to optimize efficiency and at the same time 
prevent congestion. 
 E.g.. Policy used by TCP for Retransmission
Window Policy : 
 Selective Repeat window is used instead of Go-Back-N 
window. 
Acknowledgment Policy : 
 The receiver does not acknowledges every packet it 
receives, it slows the sender and help prevent congestion. 
 Sending fewer acknowledgements means imposing less 
load on the network.
Discarding Policy : 
 A good discarding policy by the router may prevent 
congestion and at the same time may not harm the 
integrity of the transmission. 
Admission Policy : 
 It is a QoS mechanism which prevents congestion in 
virtual-circuit networks. 
 A router can deny establishing a virtual-circuit connection 
if there is congestion in the network or if there is a 
possibility of future congestion.
Discarding Policy : 
 A good discarding policy by the router may prevent 
congestion and at the same time may not harm the 
integrity of the transmission. 
Admission Policy : 
 It is a QoS mechanism which prevents congestion in 
virtual-circuit networks. 
 A router can deny establishing a virtual-circuit connection 
if there is congestion in the network or if there is a 
possibility of future congestion.
Closed- loop congestion control 
Closed loop congestion control mechanisms try to 
alleviate congestion after it happens. 
It is useful to network which had congestion during 
the transfer of messages from one node to other node.
Types of mechanism to prevent congestion after 
it happens 
1 Backpressure. 
2 Choke Packet. 
3 Implicit Signaling. 
4 Explicit Signaling. 
5 Backward Signaling. 
6 Forward Signaling.
Backpressure 
The technique of backpressure refers to a congestion 
control mechanisms in which a congested node stops 
receiving data from the immediate upstream node or 
nodes. 
This may cause the upstream nodes to become 
congested and they in turn reject data from their 
upstream nodes.
Backpressure 
Backpressure Backpressure 
I II III IV 
Congestion 
Source Destination 
Data Flow 
Fig 1.1 Backpressure method of alleviating congestion
Choke Packet 
A choke packet is a packet sent by a node to the source 
to inform it of that congestion had occurred on the 
network. 
Message is sent from congested node directly to the 
source station without informing the intermediate 
routers
Choke 
packet 
I II III IV 
Congestion 
Source Destination 
Data Flow 
Fig 1.2 Choke Packet
Implicit Signaling 
In implicit signaling ,there is no communication 
between the congested node or nodes and the source. 
The source guesses that there is a congestion somewhere 
in the network. 
For example, when a source sends several packets and 
there is no acknowledgement for a while, one 
assumption is that the network is congested
Explicit signaling 
The node that experiences congestion can explicitly send 
a signal to the source or destination . 
Difference between choke packet and explicit signaling 
is that in choke packet separate packet is used for the 
sending signal to source, whereas in explicit signaling 
method ,signal is included in the packets that carry data.
Backward Signaling 
A bit can be set in a packet moving in the direction 
opposite to the congestion . 
This bit can warn the source that there is congestion and 
that it needs to slow down to avoid the discarding of 
packets.
Forward Signaling 
A bit can be set in a packet moving in the direction of 
the congestion . 
This bit can warn the destination that there is 
congestion. 
The receiver in this case can use policies ,such as 
slowing down the acknowledgments ,to alleviate the 
congestion.
TCP Controlling Congestion 
 Congestion Window 
 Sender’s window size is determined not only by the 
receiver but also by congestion in the network. 
 Actual window size = minimum(rwnd, cwnd) 
 Congestion Policy 
 Slow start: Exponential Increase 
 Congestion Avoidance: Additive Increase 
 Congestion Detection: Multiplicative Decrease
TCP Controlling Congestion 
 Slow start: Exponential Increase 
 Size of the congestion window starts with one maximum 
segment size (MSS). 
 The size of window increases one MSS each time an ack is 
received. 
 Consider cwnd=1 MSS. Sender can only send one segment. 
After ack for 1 segment, cwnd size is increased by 1, now cwnd 
is 2 and two more segment can be sent. 
 When all seven segments are acknowledged, cwnd = 8. 
Size of cwnd increases exponentially.
TCP Controlling Congestion
TCP Controlling Congestion 
 Congestion Avoidance: Additive Increase 
 To avoid congestion, exponential growth must be stopped. 
 This algorithm undergoes an additive increase instead of an 
exponential one. 
 When the size of cwnd reaches slow-start threshold, slow-start 
phase stops and additive phase begins. 
 In this, when whole window of segment is acknowledged, the 
size of cwnd is increased by 1.
TCP controlling congestion
TCP Controlling Congestion 
 Congestion Detection: Multiplicative Decrease 
 The only way the sender can guess that congestion has 
occurred is by the need to re-transmit the segment. 
 It can occur in two cases: when timer times out or when 
three ACK’s are received, in both cases the size of the 
threshold is dropped to half.
TCP Controlling Congestion 
 If time-out occurs 
 Stronger possibility of congestion. 
 TCP set value of threshold to half of current window 
size. 
 Sets cwnd to the size of one segment 
 It starts the slow-start phase again 
 If three ACK’s are received 
 Weaker possibility of congestion. 
 TCP set value of threshold to half of current window 
size. 
 Sets cwnd to the vale of Threshold. 
 It starts the congestion avoidance phase.
Cases of congestion
Congestion control
Congestion control

More Related Content

Congestion control

  • 1. Group Member Roll Number Melvin Francis 13 Madhusudhan G 17 Kunal Jadhav 19 Sameer Natekar 33 Sooryakanth S 49
  • 2. AGENDA  Learning…  Congestion  Network performance  Controlling…  Congestion  TCP controlling congestion  Additive-increase, multiplicative-decrease  Slow start. 2
  • 3. Congestion Definition: Congestion in a network may occur if load on the network or the no of packets sent to the network is greater than the capacity of the network Many possible causes  Rapid retransmissions of packets still in flight  Undelivered packets 3
  • 4. Congestion is Unavoidable  Two packets arrive at the same time  The node can only transmit one  … and either buffer or drop the other  Congestion in network happens because routers have input and output queues  If many packets arrive in a short period of time  The node cannot keep up with the arriving traffic  … and the buffer may eventually overflow 4
  • 5.  The packet is put at the end of input queue  The router removes the router from input queue and uses its routing table and destination address to find the route.  The packet is put in the appropriate output queue.
  • 6. Issues  If the rate of arrival is higher than processing rate then the input queue becomes longer  If packet departure rate is less than processing rate then output queue becomes longer
  • 7. Network Performance  Delay Versus Load  when the load is much less then delay is at minimum.  Delay becomes infinite when the load is greater than the network capacity.  when a packet is delayed, the source, not receiving the acknowledgment retransmit the packet which makes the delay and congestion, worse.
  • 8. Network Performance  Throughput Versus Load  Throughput in a network is the number of packets passing through a network in a unit of time.  When the load exceeds capacity of network,throughput declines sharply because packets get discarded by router.  This does not reduce no of packets because source retransmit them.
  • 10. Congestion Control  Congestion control refers to techniques and mechanisms that can either prevent congestion, before it happens, or remove congestion, after it has happened.  Categories :
  • 11. Open loop Policies  In open-loop congestion, policies are applied to prevent congestion before it happens.  Congestion control is handled by either the source or the destination Retransmission Policy :  If the sent packet is lost or corrupted, the packed needs to be retransmitted by the sender.  Retransmission policy and retransmission timers must be designed to optimize efficiency and at the same time prevent congestion.  E.g.. Policy used by TCP for Retransmission
  • 12. Window Policy :  Selective Repeat window is used instead of Go-Back-N window. Acknowledgment Policy :  The receiver does not acknowledges every packet it receives, it slows the sender and help prevent congestion.  Sending fewer acknowledgements means imposing less load on the network.
  • 13. Discarding Policy :  A good discarding policy by the router may prevent congestion and at the same time may not harm the integrity of the transmission. Admission Policy :  It is a QoS mechanism which prevents congestion in virtual-circuit networks.  A router can deny establishing a virtual-circuit connection if there is congestion in the network or if there is a possibility of future congestion.
  • 14. Discarding Policy :  A good discarding policy by the router may prevent congestion and at the same time may not harm the integrity of the transmission. Admission Policy :  It is a QoS mechanism which prevents congestion in virtual-circuit networks.  A router can deny establishing a virtual-circuit connection if there is congestion in the network or if there is a possibility of future congestion.
  • 15. Closed- loop congestion control Closed loop congestion control mechanisms try to alleviate congestion after it happens. It is useful to network which had congestion during the transfer of messages from one node to other node.
  • 16. Types of mechanism to prevent congestion after it happens 1 Backpressure. 2 Choke Packet. 3 Implicit Signaling. 4 Explicit Signaling. 5 Backward Signaling. 6 Forward Signaling.
  • 17. Backpressure The technique of backpressure refers to a congestion control mechanisms in which a congested node stops receiving data from the immediate upstream node or nodes. This may cause the upstream nodes to become congested and they in turn reject data from their upstream nodes.
  • 18. Backpressure Backpressure Backpressure I II III IV Congestion Source Destination Data Flow Fig 1.1 Backpressure method of alleviating congestion
  • 19. Choke Packet A choke packet is a packet sent by a node to the source to inform it of that congestion had occurred on the network. Message is sent from congested node directly to the source station without informing the intermediate routers
  • 20. Choke packet I II III IV Congestion Source Destination Data Flow Fig 1.2 Choke Packet
  • 21. Implicit Signaling In implicit signaling ,there is no communication between the congested node or nodes and the source. The source guesses that there is a congestion somewhere in the network. For example, when a source sends several packets and there is no acknowledgement for a while, one assumption is that the network is congested
  • 22. Explicit signaling The node that experiences congestion can explicitly send a signal to the source or destination . Difference between choke packet and explicit signaling is that in choke packet separate packet is used for the sending signal to source, whereas in explicit signaling method ,signal is included in the packets that carry data.
  • 23. Backward Signaling A bit can be set in a packet moving in the direction opposite to the congestion . This bit can warn the source that there is congestion and that it needs to slow down to avoid the discarding of packets.
  • 24. Forward Signaling A bit can be set in a packet moving in the direction of the congestion . This bit can warn the destination that there is congestion. The receiver in this case can use policies ,such as slowing down the acknowledgments ,to alleviate the congestion.
  • 25. TCP Controlling Congestion  Congestion Window  Sender’s window size is determined not only by the receiver but also by congestion in the network.  Actual window size = minimum(rwnd, cwnd)  Congestion Policy  Slow start: Exponential Increase  Congestion Avoidance: Additive Increase  Congestion Detection: Multiplicative Decrease
  • 26. TCP Controlling Congestion  Slow start: Exponential Increase  Size of the congestion window starts with one maximum segment size (MSS).  The size of window increases one MSS each time an ack is received.  Consider cwnd=1 MSS. Sender can only send one segment. After ack for 1 segment, cwnd size is increased by 1, now cwnd is 2 and two more segment can be sent.  When all seven segments are acknowledged, cwnd = 8. Size of cwnd increases exponentially.
  • 28. TCP Controlling Congestion  Congestion Avoidance: Additive Increase  To avoid congestion, exponential growth must be stopped.  This algorithm undergoes an additive increase instead of an exponential one.  When the size of cwnd reaches slow-start threshold, slow-start phase stops and additive phase begins.  In this, when whole window of segment is acknowledged, the size of cwnd is increased by 1.
  • 30. TCP Controlling Congestion  Congestion Detection: Multiplicative Decrease  The only way the sender can guess that congestion has occurred is by the need to re-transmit the segment.  It can occur in two cases: when timer times out or when three ACK’s are received, in both cases the size of the threshold is dropped to half.
  • 31. TCP Controlling Congestion  If time-out occurs  Stronger possibility of congestion.  TCP set value of threshold to half of current window size.  Sets cwnd to the size of one segment  It starts the slow-start phase again  If three ACK’s are received  Weaker possibility of congestion.  TCP set value of threshold to half of current window size.  Sets cwnd to the vale of Threshold.  It starts the congestion avoidance phase.