SlideShare una empresa de Scribd logo
1 de 67
Descargar para leer sin conexión
Sally Floyd and Van Jacobson
         “Random Early Detection
          Gateway for Congestion
               Avoidance” "
               TON, 1993
11 September 2009
   CS5229, Semester 1 2009/10
   1
Router’s "
              Queue Management 


11 September 2009
   CS5229, Semester 1 2009/10
   2
Manages sharing of "
                      (i) buffer space"
                       (ii) bandwidth


11 September 2009
       CS5229, Semester 1 2009/10
   3
Q1: Which packet to drop "
               (and when to drop) ?



11 September 2009
   CS5229, Semester 1 2009/10
   4
Q2: Which packet to send next?



11 September 2009
   CS5229, Semester 1 2009/10
   5
FIFO + Drop Tail


11 September 2009
   CS5229, Semester 1 2009/10
   6
Keep a single queue


11 September 2009
   CS5229, Semester 1 2009/10
   7
Drop what/when? "
                     Drop arriving packets "
                      when queue is full


11 September 2009
        CS5229, Semester 1 2009/10
   8
Send what? "
                     Send the packet at "
                       head of queue


11 September 2009
       CS5229, Semester 1 2009/10
   9
Round Robin


11 September 2009
     CS5229, Semester 1 2009/10
   10
One queue per flow


11 September 2009
   CS5229, Semester 1 2009/10
   11
Drop what/when? !
            Drop arriving packets from "
             flow i when queue i is full


11 September 2009
   CS5229, Semester 1 2009/10
   12
Send what? "
  Each flow takes turn -- send the
 packet at the head of the queues in
      a round robin manner.


11 September 2009
   CS5229, Semester 1 2009/10
   13
Advantages of "
                FIFO and Drop Tail


11 September 2009
   CS5229, Semester 1 2009/10
   14
Simple to implement



11 September 2009
       CS5229, Semester 1 2009/10
   15
Scale well"
             (no per-connection states)



11 September 2009
   CS5229, Semester 1 2009/10
   16
Reduce delay for a bursty
                   connection"
                    (e.g. VoIP)


11 September 2009
   CS5229, Semester 1 2009/10
   17
Problems with "
                FIFO and Drop Tail


11 September 2009
   CS5229, Semester 1 2009/10
   18
Problem 1!
              Bias against bursty traffic"

      burstiness increases chances that the queue will
                         overflow



11 September 2009
   CS5229, Semester 1 2009/10
         19
Problem 2!
                 Global synchronization"

     connections reduce their windows simultaneously,
                    lowering utilization.            

11 September 2009
     CS5229, Semester 1 2009/10
       20
Problem 3!
                            Queue size"

                     higher bandwidth needs longer "
                        queue, increasing delay. "
                     TCP tries to keep the queue full.    
11 September 2009
          CS5229, Semester 1 2009/10
       21
Problem 4!
                     No isolation against "
                     unresponsive flows


11 September 2009
       CS5229, Semester 1 2009/10
   22
Random Drop


11 September 2009
     CS5229, Semester 1 2009/10
   23
Keep a single queue



11 September 2009
       CS5229, Semester 1 2009/10
   24
Drop what/when? "
           Drop random packet in the queue "
                  when queue is full



11 September 2009
   CS5229, Semester 1 2009/10
   25
Send what? "
                     Send the packet at "
                       head of queue


11 September 2009
       CS5229, Semester 1 2009/10
   26
No bias against bursty traffic -- "
   bursty arrival causes random packets to
   be dropped.



11 September 2009
   CS5229, Semester 1 2009/10
   27
Flows with higher rate occupy
   more buffer spaces, have higher
   chance to be dropped.


11 September 2009
   CS5229, Semester 1 2009/10
   28
Signal flows that is congesting the
   network to slow down.



11 September 2009
   CS5229, Semester 1 2009/10
   29
Random drop recovers from
   congestion (full queue) by
   dropping packets. 


11 September 2009
   CS5229, Semester 1 2009/10
   30
Early Random Drop


11 September 2009
   CS5229, Semester 1 2009/10
   31
Drop what/when? "
       Drop arriving packet randomly
        when queue is longer than a
                  threshold


11 September 2009
   CS5229, Semester 1 2009/10
   32
Early random drop avoids
   congestion (full queue) by
   dropping packets before queue is
   full. 


11 September 2009
   CS5229, Semester 1 2009/10
   33
RED"
      Random Early Detection


11 September 2009
   CS5229, Semester 1 2009/10
   34
Drop what/when? !
    Drop arriving packet randomly
     when average queue length "
        is above a threshold

11 September 2009
   CS5229, Semester 1 2009/10
   35
Differences: Use average queue
 length instead of instantaneous
     length to absorb transient
            congestion.

11 September 2009
   CS5229, Semester 1 2009/10
   36
Differences: Dropping probability
changes dynamically depending
        on queue length.


11 September 2009
   CS5229, Semester 1 2009/10
   37
Dropping Probability



     1




                                                    Average Queue Length
11 September 2009
         CS5229, Semester 1 2009/10
                     38
foreach incoming packet X"
     
calc average queue length"
     
if minth < average < maxth"
     
 
calc p "
     
 
drop X with probability p"
     
else if average > maxth"
     
 
drop X
11 September 2009
   CS5229, Semester 1 2009/10
   39
(Instead of dropping packets, we
   can also mark a packet to indicate
   congestion)



11 September 2009
   CS5229, Semester 1 2009/10
   40
How to calculate average queue
   length?"

   How to calculate drop probability?"

   How to set thresholds?

11 September 2009
   CS5229, Semester 1 2009/10
   41
We can use exponentially weighted
        average. On every packet arrival:




11 September 2009
   CS5229, Semester 1 2009/10
   42
Large wq : A burst of packets will
    cause avg to increase too fast, hit
    the max threshold"

    Small wq : avg increases too slowly
    and we are unable to detect initial
    stage of congestions.
11 September 2009
   CS5229, Semester 1 2009/10
   43
11 September 2009
   CS5229, Semester 1 2009/10
   44
11 September 2009
   CS5229, Semester 1 2009/10
   45
We can use exponentially weighted
        average. On every packet arrival:




11 September 2009
   CS5229, Semester 1 2009/10
   46
What if q drops to zero and no
        packet arrives?



         m is a function of period when
         queue is empty
11 September 2009
   CS5229, Semester 1 2009/10
   47
How to calculate average queue
   length?"

   How to calculate drop probability"

   How to set thresholds?

11 September 2009
   CS5229, Semester 1 2009/10
   48
Dropping Probability



     1



 pmax




                                                         Average
                                                         Queue Length


                     minth                      maxth
11 September 2009
         CS5229, Semester 1 2009/10
              49
11 September 2009
   CS5229, Semester 1 2009/10
   50
11 September 2009
   CS5229, Semester 1 2009/10
   51
How to calculate average queue
   length?"

   How to calculate drop probability?"

   How to set thresholds?

11 September 2009
   CS5229, Semester 1 2009/10
   52
maxth - minth should be sufficiently"
   large otherwise average queue size
   can oscillate beyond maxth"
   “need more research” for optimal
   value.

11 September 2009
   CS5229, Semester 1 2009/10
   53
Advantages of RED


11 September 2009
   CS5229, Semester 1 2009/10
   54
No bias against bursty flows"
            Less global synchronization"
           Control average queue length



11 September 2009
   CS5229, Semester 1 2009/10
   55
RED does not deal with
                      unresponsive flows



11 September 2009
        CS5229, Semester 1 2009/10
   56
ns-2 demo


11 September 2009
    CS5229, Semester 1 2009/10
   57
Variations of RED


11 September 2009
   CS5229, Semester 1 2009/10
   58
RED biases against flow with small
              packet size 



11 September 2009
   CS5229, Semester 1 2009/10
   59
We can fix this by weighting drop
         probability to packet size



11 September 2009
   CS5229, Semester 1 2009/10
   60
A router can keep one queue per
       flow and apply RED to each one.



11 September 2009
   CS5229, Semester 1 2009/10
   61
Drop probability can be weighted
           with the priority of the flow.



11 September 2009
   CS5229, Semester 1 2009/10
   62
This is known as WRED and is
   implemented in some Cisco routers.



11 September 2009
   CS5229, Semester 1 2009/10
   63
Simulation"
                      Results

11 September 2009
     CS5229, Semester 1 2009/10
   64
Four TCP flows starting at time 0.2, 0.4, 0.6 and 0.8




11 September 2009
            CS5229, Semester 1 2009/10
              65
11 September 2009
   CS5229, Semester 1 2009/10
   66
Conclusion:"
   RED increases throughput, reduces
   delay, controls average queue
   sizes, reduces global sync, and is
   fairer to bursty traffic. It is deployed
   in routers today."

   But careful tuning of parameters is
   needed. 
         CS5229, Semester 1 2009/10
11 September 2009
                                 67

Más contenido relacionado

Más de Wei Tsang Ooi

SIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingSIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business Meeting
Wei Tsang Ooi
 
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesCS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
Wei Tsang Ooi
 
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficCS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
Wei Tsang Ooi
 
CS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureCS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid Architecture
Wei Tsang Ooi
 
CS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementCS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest Management
Wei Tsang Ooi
 
CS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationCS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P Synchronization
Wei Tsang Ooi
 
Cs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementCs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest Management
Wei Tsang Ooi
 
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterCS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
Wei Tsang Ooi
 
CS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyCS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: Consistency
Wei Tsang Ooi
 
CS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionCS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: Introduction
Wei Tsang Ooi
 
CS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSCS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNS
Wei Tsang Ooi
 
CS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingCS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet Routing
Wei Tsang Ooi
 
CS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsCS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet Dynamics
Wei Tsang Ooi
 
CS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationCS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: Simulation
Wei Tsang Ooi
 
Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229
Wei Tsang Ooi
 
CS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid ArchitectureCS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid Architecture
Wei Tsang Ooi
 
CS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player DynamicsCS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player Dynamics
Wei Tsang Ooi
 
CS4344 Lecture 9: Traffic Analysis
CS4344 Lecture 9: Traffic AnalysisCS4344 Lecture 9: Traffic Analysis
CS4344 Lecture 9: Traffic Analysis
Wei Tsang Ooi
 

Más de Wei Tsang Ooi (20)

SIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business MeetingSIGMM Education Effort Presentation at Business Meeting
SIGMM Education Effort Presentation at Business Meeting
 
CS2106 Tutorial 2
CS2106 Tutorial 2CS2106 Tutorial 2
CS2106 Tutorial 2
 
The Computer Science behind YouTube
The Computer Science behind YouTubeThe Computer Science behind YouTube
The Computer Science behind YouTube
 
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked GamesCS4344 09/10 Lecture 10: Transport Protocol for Networked Games
CS4344 09/10 Lecture 10: Transport Protocol for Networked Games
 
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game TrafficCS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
CS4344 09/10 Lecture 9: Characteristics of Networked Game Traffic
 
CS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid ArchitectureCS4344 09/10 Lecture 8: Hybrid Architecture
CS4344 09/10 Lecture 8: Hybrid Architecture
 
CS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest ManagementCS4344 09/10 Lecture 7: P2P Interest Management
CS4344 09/10 Lecture 7: P2P Interest Management
 
CS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P SynchronizationCS4344 09/10 Lecture 6: P2P Synchronization
CS4344 09/10 Lecture 6: P2P Synchronization
 
Cs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest ManagementCs4344 09/10 Lecture 5: Interest Management
Cs4344 09/10 Lecture 5: Interest Management
 
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception FilterCS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
CS4344 09/10 Lecture 3: Dead Reckoning and Local Perception Filter
 
CS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: ConsistencyCS4344 09/10 Lecture 2: Consistency
CS4344 09/10 Lecture 2: Consistency
 
CS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: IntroductionCS4344 09/10 Lecture 1: Introduction
CS4344 09/10 Lecture 1: Introduction
 
CS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNSCS5229 09/10 Lecture 11: DNS
CS5229 09/10 Lecture 11: DNS
 
CS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet RoutingCS5229 09/10 Lecture 10: Internet Routing
CS5229 09/10 Lecture 10: Internet Routing
 
CS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet DynamicsCS5229 09/10 Lecture 9: Internet Packet Dynamics
CS5229 09/10 Lecture 9: Internet Packet Dynamics
 
CS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: SimulationCS5229 09/10 Lecture 6: Simulation
CS5229 09/10 Lecture 6: Simulation
 
Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229Lecture 0: Introduction to CS5229
Lecture 0: Introduction to CS5229
 
CS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid ArchitectureCS4344 Lecture 8: Hybrid Architecture
CS4344 Lecture 8: Hybrid Architecture
 
CS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player DynamicsCS4344 Lecture 10: Player Dynamics
CS4344 Lecture 10: Player Dynamics
 
CS4344 Lecture 9: Traffic Analysis
CS4344 Lecture 9: Traffic AnalysisCS4344 Lecture 9: Traffic Analysis
CS4344 Lecture 9: Traffic Analysis
 

Último

Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
negromaestrong
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Último (20)

psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Seal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptxSeal of Good Local Governance (SGLG) 2024Final.pptx
Seal of Good Local Governance (SGLG) 2024Final.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
SECOND SEMESTER TOPIC COVERAGE SY 2023-2024 Trends, Networks, and Critical Th...
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 

Lecture 5: RED

  • 1. Sally Floyd and Van Jacobson “Random Early Detection Gateway for Congestion Avoidance” " TON, 1993 11 September 2009 CS5229, Semester 1 2009/10 1
  • 2. Router’s " Queue Management 11 September 2009 CS5229, Semester 1 2009/10 2
  • 3. Manages sharing of " (i) buffer space" (ii) bandwidth 11 September 2009 CS5229, Semester 1 2009/10 3
  • 4. Q1: Which packet to drop " (and when to drop) ? 11 September 2009 CS5229, Semester 1 2009/10 4
  • 5. Q2: Which packet to send next? 11 September 2009 CS5229, Semester 1 2009/10 5
  • 6. FIFO + Drop Tail 11 September 2009 CS5229, Semester 1 2009/10 6
  • 7. Keep a single queue 11 September 2009 CS5229, Semester 1 2009/10 7
  • 8. Drop what/when? " Drop arriving packets " when queue is full 11 September 2009 CS5229, Semester 1 2009/10 8
  • 9. Send what? " Send the packet at " head of queue 11 September 2009 CS5229, Semester 1 2009/10 9
  • 10. Round Robin 11 September 2009 CS5229, Semester 1 2009/10 10
  • 11. One queue per flow 11 September 2009 CS5229, Semester 1 2009/10 11
  • 12. Drop what/when? ! Drop arriving packets from " flow i when queue i is full 11 September 2009 CS5229, Semester 1 2009/10 12
  • 13. Send what? " Each flow takes turn -- send the packet at the head of the queues in a round robin manner. 11 September 2009 CS5229, Semester 1 2009/10 13
  • 14. Advantages of " FIFO and Drop Tail 11 September 2009 CS5229, Semester 1 2009/10 14
  • 15. Simple to implement 11 September 2009 CS5229, Semester 1 2009/10 15
  • 16. Scale well" (no per-connection states) 11 September 2009 CS5229, Semester 1 2009/10 16
  • 17. Reduce delay for a bursty connection" (e.g. VoIP) 11 September 2009 CS5229, Semester 1 2009/10 17
  • 18. Problems with " FIFO and Drop Tail 11 September 2009 CS5229, Semester 1 2009/10 18
  • 19. Problem 1! Bias against bursty traffic" burstiness increases chances that the queue will overflow 11 September 2009 CS5229, Semester 1 2009/10 19
  • 20. Problem 2! Global synchronization" connections reduce their windows simultaneously, lowering utilization. 11 September 2009 CS5229, Semester 1 2009/10 20
  • 21. Problem 3! Queue size" higher bandwidth needs longer " queue, increasing delay. " TCP tries to keep the queue full. 11 September 2009 CS5229, Semester 1 2009/10 21
  • 22. Problem 4! No isolation against " unresponsive flows 11 September 2009 CS5229, Semester 1 2009/10 22
  • 23. Random Drop 11 September 2009 CS5229, Semester 1 2009/10 23
  • 24. Keep a single queue 11 September 2009 CS5229, Semester 1 2009/10 24
  • 25. Drop what/when? " Drop random packet in the queue " when queue is full 11 September 2009 CS5229, Semester 1 2009/10 25
  • 26. Send what? " Send the packet at " head of queue 11 September 2009 CS5229, Semester 1 2009/10 26
  • 27. No bias against bursty traffic -- " bursty arrival causes random packets to be dropped. 11 September 2009 CS5229, Semester 1 2009/10 27
  • 28. Flows with higher rate occupy more buffer spaces, have higher chance to be dropped. 11 September 2009 CS5229, Semester 1 2009/10 28
  • 29. Signal flows that is congesting the network to slow down. 11 September 2009 CS5229, Semester 1 2009/10 29
  • 30. Random drop recovers from congestion (full queue) by dropping packets. 11 September 2009 CS5229, Semester 1 2009/10 30
  • 31. Early Random Drop 11 September 2009 CS5229, Semester 1 2009/10 31
  • 32. Drop what/when? " Drop arriving packet randomly when queue is longer than a threshold 11 September 2009 CS5229, Semester 1 2009/10 32
  • 33. Early random drop avoids congestion (full queue) by dropping packets before queue is full. 11 September 2009 CS5229, Semester 1 2009/10 33
  • 34. RED" Random Early Detection 11 September 2009 CS5229, Semester 1 2009/10 34
  • 35. Drop what/when? ! Drop arriving packet randomly when average queue length " is above a threshold 11 September 2009 CS5229, Semester 1 2009/10 35
  • 36. Differences: Use average queue length instead of instantaneous length to absorb transient congestion. 11 September 2009 CS5229, Semester 1 2009/10 36
  • 37. Differences: Dropping probability changes dynamically depending on queue length. 11 September 2009 CS5229, Semester 1 2009/10 37
  • 38. Dropping Probability 1 Average Queue Length 11 September 2009 CS5229, Semester 1 2009/10 38
  • 39. foreach incoming packet X" calc average queue length" if minth < average < maxth" calc p " drop X with probability p" else if average > maxth" drop X 11 September 2009 CS5229, Semester 1 2009/10 39
  • 40. (Instead of dropping packets, we can also mark a packet to indicate congestion) 11 September 2009 CS5229, Semester 1 2009/10 40
  • 41. How to calculate average queue length?" How to calculate drop probability?" How to set thresholds? 11 September 2009 CS5229, Semester 1 2009/10 41
  • 42. We can use exponentially weighted average. On every packet arrival: 11 September 2009 CS5229, Semester 1 2009/10 42
  • 43. Large wq : A burst of packets will cause avg to increase too fast, hit the max threshold" Small wq : avg increases too slowly and we are unable to detect initial stage of congestions. 11 September 2009 CS5229, Semester 1 2009/10 43
  • 44. 11 September 2009 CS5229, Semester 1 2009/10 44
  • 45. 11 September 2009 CS5229, Semester 1 2009/10 45
  • 46. We can use exponentially weighted average. On every packet arrival: 11 September 2009 CS5229, Semester 1 2009/10 46
  • 47. What if q drops to zero and no packet arrives? m is a function of period when queue is empty 11 September 2009 CS5229, Semester 1 2009/10 47
  • 48. How to calculate average queue length?" How to calculate drop probability" How to set thresholds? 11 September 2009 CS5229, Semester 1 2009/10 48
  • 49. Dropping Probability 1 pmax Average Queue Length minth maxth 11 September 2009 CS5229, Semester 1 2009/10 49
  • 50. 11 September 2009 CS5229, Semester 1 2009/10 50
  • 51. 11 September 2009 CS5229, Semester 1 2009/10 51
  • 52. How to calculate average queue length?" How to calculate drop probability?" How to set thresholds? 11 September 2009 CS5229, Semester 1 2009/10 52
  • 53. maxth - minth should be sufficiently" large otherwise average queue size can oscillate beyond maxth" “need more research” for optimal value. 11 September 2009 CS5229, Semester 1 2009/10 53
  • 54. Advantages of RED 11 September 2009 CS5229, Semester 1 2009/10 54
  • 55. No bias against bursty flows" Less global synchronization" Control average queue length 11 September 2009 CS5229, Semester 1 2009/10 55
  • 56. RED does not deal with unresponsive flows 11 September 2009 CS5229, Semester 1 2009/10 56
  • 57. ns-2 demo 11 September 2009 CS5229, Semester 1 2009/10 57
  • 58. Variations of RED 11 September 2009 CS5229, Semester 1 2009/10 58
  • 59. RED biases against flow with small packet size 11 September 2009 CS5229, Semester 1 2009/10 59
  • 60. We can fix this by weighting drop probability to packet size 11 September 2009 CS5229, Semester 1 2009/10 60
  • 61. A router can keep one queue per flow and apply RED to each one. 11 September 2009 CS5229, Semester 1 2009/10 61
  • 62. Drop probability can be weighted with the priority of the flow. 11 September 2009 CS5229, Semester 1 2009/10 62
  • 63. This is known as WRED and is implemented in some Cisco routers. 11 September 2009 CS5229, Semester 1 2009/10 63
  • 64. Simulation" Results 11 September 2009 CS5229, Semester 1 2009/10 64
  • 65. Four TCP flows starting at time 0.2, 0.4, 0.6 and 0.8 11 September 2009 CS5229, Semester 1 2009/10 65
  • 66. 11 September 2009 CS5229, Semester 1 2009/10 66
  • 67. Conclusion:" RED increases throughput, reduces delay, controls average queue sizes, reduces global sync, and is fairer to bursty traffic. It is deployed in routers today." But careful tuning of parameters is needed. CS5229, Semester 1 2009/10 11 September 2009 67