SlideShare a Scribd company logo
Congestion Control 
By: 
Abhay Nitin Pai (13MCC1032)
Index 
●Introduction 
●Congestion Control ≠ Flow Control 
●Solution 
●Leaky Bucket 
●Token Bucket 
●Choke Packets 
●Last Resort 
●The Trick
Introduction 
What is Congestion Control ?
What are the causes for Congestion Control ?
Congestion Control ≠ Flow Control 
●Congestion Control : 
–The mechanism make sure subnet can carry offered traffic 
–A global issue involving all the hosts and routers 
– 
●Flow Control 
–It is related to point to point traffic between given sender and receiver 
–It always involves direct feedback from receiver to sender
Solution 
●There are two basic approaches for congestion control 
–Open Loop 
●Prevention is better than cure 
–Closed Loop 
●Detect – FeedBack – Correct
Leaky Bucket 
●It consists of a finite queue 
–When a packet arrives, If there is a room on the queue it joins the 
queue. Otherwise, the packet gets discarded. 
–At every fixed clock tick, one packet is transmitted unless the queue 
is empty. 
●It eleminates bursts completely : Packets are transmitted to the 
subnet at the same rate 
●Packet loss may occur in case the bucket gets filled.
Leaky Bucket
Token Bucket 
●Tokens are added at a constant rate to the bucket 
●For a packet to be transmitted, it must capture and destroy the 
token 
●Token bucket throws away the token when the bucket is full but 
never discards the packet 
●Whereas leaky bucket discards the packet when the bucket is full
Token Bucket
●Let 
–C --> Capacity (bits) 
–ρ --> Arrival Rate (bps) 
–M --> Maximum output rate (bps) 
–S --> Burst Length (s) 
●During burst length of S (s), tokens generated are ρS (bits) and 
output burst contains a maximum of C + ρS (bits) 
●Also output in maximum burst length S (s) would be MS (bits) 
●Therefore 
● C + ρS = MS 
● S = C / (M - ρ)
Choke Packets 
●The Big Idea 
–Router Checks Status of each output line 
–If any line is too occupied, send a choke packet to the source 
●At the source end 
–Cuts transmission rate by half and listens to no choke packets for a 
certain period of time 
–After that period is expired, the host listens for any further choke packets 
–If a choke packet arrives again, the source again cuts the transmission 
rate to half. If no packets arrive, the source may increase the 
transmission rate.
Last Resort 
●Load Shedding 
●Packets to drop 
–Wine Policy 
The older the better (FTP) 
–Milk Policy 
Fresh is better (Multimedia)
The Trick
Congestion control
Congestion control

More Related Content

Congestion control

  • 1. Congestion Control By: Abhay Nitin Pai (13MCC1032)
  • 2. Index ●Introduction ●Congestion Control ≠ Flow Control ●Solution ●Leaky Bucket ●Token Bucket ●Choke Packets ●Last Resort ●The Trick
  • 3. Introduction What is Congestion Control ?
  • 4. What are the causes for Congestion Control ?
  • 5. Congestion Control ≠ Flow Control ●Congestion Control : –The mechanism make sure subnet can carry offered traffic –A global issue involving all the hosts and routers – ●Flow Control –It is related to point to point traffic between given sender and receiver –It always involves direct feedback from receiver to sender
  • 6. Solution ●There are two basic approaches for congestion control –Open Loop ●Prevention is better than cure –Closed Loop ●Detect – FeedBack – Correct
  • 7. Leaky Bucket ●It consists of a finite queue –When a packet arrives, If there is a room on the queue it joins the queue. Otherwise, the packet gets discarded. –At every fixed clock tick, one packet is transmitted unless the queue is empty. ●It eleminates bursts completely : Packets are transmitted to the subnet at the same rate ●Packet loss may occur in case the bucket gets filled.
  • 9. Token Bucket ●Tokens are added at a constant rate to the bucket ●For a packet to be transmitted, it must capture and destroy the token ●Token bucket throws away the token when the bucket is full but never discards the packet ●Whereas leaky bucket discards the packet when the bucket is full
  • 11. ●Let –C --> Capacity (bits) –ρ --> Arrival Rate (bps) –M --> Maximum output rate (bps) –S --> Burst Length (s) ●During burst length of S (s), tokens generated are ρS (bits) and output burst contains a maximum of C + ρS (bits) ●Also output in maximum burst length S (s) would be MS (bits) ●Therefore ● C + ρS = MS ● S = C / (M - ρ)
  • 12. Choke Packets ●The Big Idea –Router Checks Status of each output line –If any line is too occupied, send a choke packet to the source ●At the source end –Cuts transmission rate by half and listens to no choke packets for a certain period of time –After that period is expired, the host listens for any further choke packets –If a choke packet arrives again, the source again cuts the transmission rate to half. If no packets arrive, the source may increase the transmission rate.
  • 13. Last Resort ●Load Shedding ●Packets to drop –Wine Policy The older the better (FTP) –Milk Policy Fresh is better (Multimedia)