Congestion control

maddysudhan 8,786 views 34 slides Nov 01, 2014
Slide 1
Slide 1 of 34
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34

About This Presentation

:-D


Slide Content

Congestion control 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 :

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 Open loop Policies

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 C ongestion So u rce Destination Data Flow Fig 1.1 Backpressure method of alleviating congestion II III IV I Backpressure Backpressure

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 C ongestion So u rce Destination Data Flow Fig 1.2 Choke Packet II III IV I

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 o f 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