Random Early Detection (RED) - PowerPoint PPT Presentation

About This Presentation
Title:

Random Early Detection (RED)

Description:

Random Early Detection (RED) Router notifies source before congestion happens - just drop the packet (TCP will timeout and adjust its window) - could make explicit by ... – PowerPoint PPT presentation

Number of Views:85
Avg rating:3.0/5.0
Slides: 11
Provided by: Alberto145
Learn more at: https://www.cs.bu.edu
Category:
Tags: red | detection | early | random

less

Transcript and Presenter's Notes

Title: Random Early Detection (RED)


1
Random Early Detection (RED)
  • Router notifies source before congestion happens
  • - just drop the packet (TCP will timeout and
    adjust its window)
  • - could make explicit by marking the packet
  • Early random drop
  • - rather than wait for queue to become full,
    drop each arriving packet with some drop
    probability whenever the average queue length
    exceeds some drop level
  • RED details (normal, congestion avoidance,
    congestion control)
  • - compute average queue length as weighted
    average of queue lengths each time a packet
    arrives
  • - If average is less than minimum threshold,
    enqueue the packet
  • - If average exceeds maximum threshold, drop
    arriving packet
  • - Otherwise, drop arriving packet with
    probability P

2
RED
  • P is a function of average queue length
  • - small bursts pass through unharmed
  • - only affects sustained overloads
  • - P also depends on how long since last drop
    RED counts new packets that have been queued
    while average length has been between the two
    thresholds
  • - TempP MaxP (AvgLen - MinThreshold)/(MaxT
    hreshold - MinThreshold)
  • P TempP / (1 - count TempP)
  • Cooperative sources reduce their rate and get
    lower overall delays, uncooperative sources get
    severe packet loss
  • Random drops help avoid global synchronization,
    which occurs when hundreds or thousands of flows
    back off and go into slow start at roughly the
    same time

3
More on RED
  • RED is a congestion avoidance mechanism (rather
    than congestion control), i.e. it predicts when
    congestion is about to happen, and reduce the
    rate at which hosts send data just before queue
    saturation
  • Probability of dropping a particular flows
    packet(s) is roughly proportional to the share of
    the bandwidth that flow is currently getting
  • Max P is typically set to 0.02
  • If traffic is bursty, then min threshold should
    be sufficiently large to allow link utilization
    to be maintained at an acceptably high level
  • Difference between two thresholds should be
    larger than the typical increase in calculated
    average queue length in one RTT setting max
    threshold to twice min threshold seems reasonable
  • RED is fair cant differentiate services with
    fairness
  • Unfair or weighted RED lower drop probability
    for higher priority traffic. Priorities set at
    edge routers or hosts

4
A Controlled-Load Scheme
  • A connection has to specify its Tspec in terms of
    token bucket rate and depth
  • If there arent enough tokens present at the time
    of transmission, the packet is treated as
    non-conformant
  • Non-conformant and best-effort traffic injected
    into network unmarked
  • Conformant traffic is marked
  • At routers, an enhanced RED (ERED) FIFO is used
  • Marked packets have a lower drop probability
  • Admission control ensures sum of rates does not
    exceed link capacity
  • Designed for TCP based applications (assumes
    TCP-reno)

5
Effect of Service Rate
  • Compliant throughput observed to be less than the
    reserved rate of service
  • Not all tokens generated are used to mark packets
    at the source, or token buffer overflows
  • TCPs congestion control is overly conservative
    and does not exploit the reservation the
    connection has
  • TCP ceases to transmit due to ack compression (or
    gaps between successive acknowledgments)
  • In fast recovery, TCP cuts its window in half by
    halting additional transmissions until half the
    original window clears the network
  • Gaps in ack stream also form due to normal
    dynamics of network traffic

6
Effect of Token Bucket Depth
  • Solution increase token bucket depth
  • But, burst losses can occur
  • Or, more buffers in the network are needed
  • Large token buckets do not help
  • Unless we have better admission control!

7
TCP Adaptations
  • Adapt acknowledgment-based transmit triggers to
    rate-based reservation paradigm
  • Delayed transmissions a segment is held back for
    a random amount of time when there arent enough
    tokens, thus reducing drop probability of packets
  • Not very effective in the presence of reverse
    path congestion
  • Timed transmissions whenever a periodic timer
    expires, if there are sufficient tokens, sender
    sends packet as marked, ignoring congestion
    window (still honor receiver advertised window)
  • Non-compliant packets are sent only if there is
    room under the congestion window
  • A connection receives its reserved rate
  • But, does not share excess bandwidth equally with
    best-effort
  • Connections with larger reservations are
    penalized more

8
Rate Adaptive Windowing
  • Congestion window consists of reserved part
    (RWND) and variable part (CWND)
  • RWND equals reserved rate times estimated RTT
  • CWND tries to estimate residual capacity and
    share it with other active connections
  • In fast recovery, set CWND to RWND
    (CWND-RWND)/2
  • In slow start, set CWND to RWND 1, set SSTHRESH
    to minimum of RWND (CWND-RWND)/2 and AWND
  • Scale window increase by (CWND-RWND)/CWND
  • Sender still sends minimum of CWND and AWND
  • Size of receivers buffer must be at least equal
    RWND to sustain reserved rate using TCP

9
Comments
  • Token bucket depth should be at least
    TimerInterval times TokenBucketRate
  • As timer interrupt interval increases, token
    bucket size (burst size) increases
  • Burst losses cause throughput degradation
  • Using fine-grained timers allow applications to
    request smaller token buckets
  • ERED can be embedded as a class in CBQ to provide
    weighted bandwidth sharing among connections
  • Many multimedia applications do not require
    reliability of TCP, but results can be extended
    to TCP-friendly RTP-based applications
  • Admission control needs to consider bucket sizes,
    router buffer sizes, ERED parameters

10
Class Based Queueing
  • Hierarchical link sharing
  • - a priori hierarchical partitioning of a
    links bandwidth among organizations, traffic
    classes, or protocol families
  • A class can continue unregulated if
  • - the class is not overlimit (i.e. using more
    than its share)
  • OR
  • - the class has a not-overlimit ancestor at
    level i, and there are no unsatisfied classes at
    levels lower than i
  • a class is unsatisfied if underlimit and has
    a persistent backlog
Write a Comment
User Comments (0)
About PowerShow.com