cse679: buffer management
DESCRIPTION
CSE679: Buffer Management. Drop Tail RED Advanced RED. Network Congestion. Congestion results in buffer backlog Eventually, packets have to be dropped Packet drops indicate congestion to senders Senders eventually backoff to reduce congestion - PowerPoint PPT PresentationTRANSCRIPT
CSE679: Buffer Management
Drop Tail RED Advanced RED
Network Congestion
Congestion results in buffer backlog Eventually, packets have to be dropped Packet drops indicate congestion to senders Senders eventually backoff to reduce
congestion Usual mode of dropping packets at router -
DropTail
Problems with DropTail
No indication of congestion until late May drop several packets at once - leads to
global synchronization of flows Can lead to oscillations of high-low link
utilization Aggressive flows can kill all other flows
Early Congestion Indication
Notify congestion earlier Individual flows reduce rates at different times
-- reducing synchronization problems Various techniques for early congestion
indication/notification Random Early Drop -- drop packets randomly
when queues are starting to buildup
Random Early Detection
Two thresholds, min, max of queue lengths In between , mark/drop packets randomly Inform flows early on, avoid global
synchronization Reduces average queue lengths, delays Flows with higher rates have more packets
dropped - fairer distribution of BW
RED Work Flow
For each packet arrival, calculate the average queue size avg if min avg < max calculate probability pa, mark arriving
packet with probability pa else if max avg, mark the arriving packet
RED Parameters
Pa = maxp*(avg - min)/(max -min) avg = (1-w)*avg + w * q count measures the number of packet arrivals
since the last marked packet if queue length is between min and max
RED
Queue length
Drop
p
min max
RED Properties
Maintains queue lengths low Allows high utilization of links without
oscillations/global synchronization Higher rate flows get dropped more often -
leads to fairer sharing than DropTail Aggressive flows can still shut down ‘nice’
applications Small RTT bias of TCP still present
RED Properties (more)
FIFO scheduling - doesn’t provide flow isolation - one aggressive flow can hog all the buffers
Favors ‘robust’ applications (ftp) over ‘fragile’ applications (telnet)
FRED - Per Flow RED employs RED and per-flow queuing to solve some of these problems
How to Enhance RED?
Per-flow Queuing based RED QFRED by Harvard LQD-RED by Bell Lab
FRED
Applies RED per flow Aggressive flows may have packets dropped
while others have no drops Per-flow RED isolates flows Solves the problem of aggressive flows Can allocate BW fairly
Issues in FRED
Difficult to maintain queues for each flow In backbone routers, may have thousands or
millions of flows Difficult to sort packets based on “flows” and
to figure out scheduling order Scalability is an issue How to provide flow isolation that can scale?
More New RED
BRED (Balanced RED) by Maryland at College Park RED + recoding buffer occupancy of each flows
SRED (Stabilized RED) by Bell core RED + estimating the buffer occupancy of each flows
Choke by Stanford RED + random picking a packet from queue and
comparing
Etc.
Conclusion
RED provides fairer sharing than DropTail RED simple to implement RED cannot contain aggressive flows Enhanced RED