lightweight active router-queue management for multimedia networking
DESCRIPTION
Lightweight Active Router-Queue Management for Multimedia Networking. M. Parris, K. Jeffay, and F.D. Smith Department of Computer Science University of North Carolina. Multimedia Computing and Networking (MMCN) January 1999. Outline. Problem Supporting multimedia on the Internet Context - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/1.jpg)
Lightweight Active Router-Queue Management for Multimedia
Networking
M. Parris, K. Jeffay, and F.D. Smith
Department of Computer Science
University of North Carolina
Multimedia Computing and Networking (MMCN)
January 1999
![Page 2: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/2.jpg)
Outline
• Problem– Supporting multimedia on the Internet
• Context– Drop Tail
– RED
– FRED
• Approach– CBT
• Evaluation
• Conclusion
![Page 3: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/3.jpg)
Congestion on the Internet
CongestionCollapse
Goodput
Throughput
Goodput
Throughput
CongestionAvoidance
• Drops are the usual way congestion is indicated• TCP uses congestion avoidance to reduce rate
![Page 4: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/4.jpg)
Internet Routers
• Typically, drop when queue is full (Drop Tail)
Router Queue
1
2
3
4
(Who gets dropped can determine Fairness)
Queue to hold incoming packets until can be sent
Avg
![Page 5: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/5.jpg)
Router-Based Congestion ControlSolution 2: Closed-loop congestion control
• Normally, packets are only dropped when the queue overflows– “Drop-tail” queueing
RoutingRoutingRoutingRouting
Inter-Inter-networknetworkInter-Inter-
networknetworkISPISP
RouterRouter
ISPISPRouterRouter
P1P2P3P4P5P6FCFS
SchedulerFCFS
Scheduler
![Page 6: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/6.jpg)
Buffer Management & Congestion AvoidanceThe case against drop-tail
• Large queues in routers are a bad thing– End-to-end latency is dominated by the length of
queues at switches in the network
• Allowing queues to overflow is a bad thing– Connections that transmit at high rates can starve
connections that transmit at low rates– Causes connections to synchronize their response
to congestion and become unnecessarily bursty
P1P2P3P4FCFS
Scheduler
FCFSScheduler
P5P6
![Page 7: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/7.jpg)
Buffer Management & Congestion AvoidanceRandom early detection (RED) packet drop
• Use an exponential average of the queue length to determine when to drop– Accommodates short-term bursts
• Tie the drop probability to the weighted average queue length– Avoids over-reaction to mild overload conditions
MaxMaxthresholdthreshold
MinMinthresholdthreshold
Average queue lengthAverage queue length
Forced dropForced drop
ProbabilisticProbabilisticearly dropearly drop
No dropNo drop
TimeTime
Drop probabilityDrop probabilityMaxMax
queue lengthqueue length
![Page 8: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/8.jpg)
Buffer Management & Congestion AvoidanceRandom early detection (RED) packet drop
• Amount of packet loss is roughly proportional to a connection’s bandwidth utilization– But there is no a priori bias against bursty sources
• Average connection latency is lower
• Average throughput (“goodput”) is higher
MaxMaxthresholdthreshold
MinMinthresholdthreshold
Average queue lengthAverage queue length
TimeTime
Drop probabilityDrop probabilityMaxMax
queue lengthqueue lengthForced dropForced drop
ProbabilisticProbabilisticearly dropearly drop
No dropNo drop
![Page 9: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/9.jpg)
Buffer Management & Congestion AvoidanceRandom early detection (RED) packet drop
• RED is controlled by 5 parameters– qlen — The maximum length of the queue
– wq — Weighting factor for average queue length computation
– minth — Minimum queue length for triggering probabilistic drops
– maxth — Queue length threshold for triggering forced drops
– maxp — The maximum drop probability
MaxMaxthresholdthreshold
MinMinthresholdthreshold
Average queue lengthAverage queue length
Forced dropForced drop
ProbabilisticProbabilisticearly dropearly drop
No dropNo drop
TimeTime
Drop probabilityDrop probabilityMaxMax
queue lengthqueue length
![Page 10: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/10.jpg)
Random Early Detection Algorithm
• The average queue length computation needs to be low pass filtered to smooth out transients due to bursts– ave = (1 – wq)ave + wqq
for each packet arrival: calculate the average queue size ave if ave ≤ minth
do nothing else if minth ≤ ave ≤ maxth
calculate drop probability p drop arriving packet with probability p else if maxth ≤ ave drop the arriving packetdarriving packetd
![Page 11: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/11.jpg)
Buffer Management & Congestion AvoidanceRandom early detection (RED) packet drop
MaxMaxthresholdthreshold
MinMinthresholdthreshold
Average queue lengthAverage queue length
TimeTime
Drop probabilityDrop probabilityMaxMax
queue lengthqueue lengthForced dropForced drop
ProbabilisticProbabilisticearly dropearly drop
No dropNo drop
100%100%
Drop probabilityDrop probability
maxmaxppWeightedWeightedAverageAverageQueue LengthQueue Length
minmin maxmax
![Page 12: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/12.jpg)
Random Early DetectionPerformance
• Floyd/Jacobson simulation of two TCP (ftp) flows
![Page 13: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/13.jpg)
Random Early Detection (RED) Summary
• Controls average queue size
• Drop early to signal impending congestion
• Drops proportional to bandwidth, but drop rate equal for all flows
• Unresponsive traffic will still not slow down!
![Page 14: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/14.jpg)
Vulnerability to Misbehaving Flows
• TCP performance on a 10 Mbps link under RED in the face of a “UDP” blast
![Page 15: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/15.jpg)
PacketScheduler
PacketScheduler
Router-Based Congestion ControlDealing with heterogeneous/non-responsive flows
• TCP requires protection/isolation from non-responsive flows
• Solutions?– Employ fair-queuing/link scheduling mechanisms
– Identify and police non-responsive flows (not here)
– Employ fair buffer allocation within a RED mechanism
ClassifierClassifier
![Page 16: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/16.jpg)
PacketScheduler
PacketScheduler
Dealing With Non-Responsive Flows
Isolating responsive and non-responsive flows
• Class-based Queuing (CBQ) (Floyd/Jacobson) provides fair allocation of bandwidth to traffic classes– Separate queues are provided for each traffic class and
serviced in round robin order (or weighted round robin)
– n classes each receive exactly 1/n of the capacity of the link
• Separate queues ensure perfect isolation between classes
• Drawback: ‘reservation’ of bandwidth and state information required
ClassifierClassifier
![Page 17: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/17.jpg)
Dealing With Non-Responsive Flows CBQ performance
Time (seconds)Time (seconds)
TC
P T
hrou
ghpu
t (K
byte
s/s)
TC
P T
hrou
ghpu
t (K
byte
s/s)
0 10 20 30 40 50 60 70 80 90 1000
200
400
600
800
1,000
1,200
1,400
UDP Bulk Transfer
FIFOFIFO
REDRED
CBQCBQ
![Page 18: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/18.jpg)
Dealing With Non-Responsive Flows Fair buffer allocation
• Isolation can be achieved by reserving capacity for flows within a single FIFO queue– Rather than maintain separate queues, keep counts of
packets in a single queue
• Lin/Morris: Modify RED to perform fair buffer allocation between active flows– Independent of protection issues, fair buffer allocation
between TCP connections is also desirable
FCFSScheduler
FCFSSchedulerClassifierClassifier
f1f1
fnfn
...
![Page 19: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/19.jpg)
Flow Random Early Detect (FRED)
• In RED, 10 Mbps 9 Mbps and 1Mbps .9 Mbps– Unfair
• In FRED, leave 1 Mbps untouched until 10 Mbps is down
• Separate drop probabilities per flow• “Light” flows have no drops, heavy flowshave high drops
![Page 20: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/20.jpg)
Flow Random Early Detection Performance in the face of non-responsive flows
TC
P T
hrou
ghpu
t (K
Byt
es/s
ec)
TC
P T
hrou
ghpu
t (K
Byt
es/s
ec)
0 10 20 30 40 50 60 70 80 90 1000
200
400
600
800
1,000
1,200
1,400
UDP Bulk Transfer
FREDFRED
REDRED
Time(secs)Time(secs)
![Page 21: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/21.jpg)
Congestion Avoidance v. Fair-SharingTCP throughput under different queue management schemes
• TCP performance as a function of the state required to ensure/approximate fairness
0 10 20 30 40 50 60 70 80 90 1000
200
400
600
800
1,000
1,200
1,400
UDP Bulk Transfer
FIFOFIFO
REDRED
FREDFRED
CBQCBQ
TC
P T
hrou
ghpu
t (K
Byt
es/s
ec)
TC
P T
hrou
ghpu
t (K
Byt
es/s
ec)
![Page 22: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/22.jpg)
Queue Management Recommendations
• Recommend (Braden 1998, Floyd 1998)– Deploy RED
Avoid full queues, reduce latency, reduce packet drops, avoid lock out
– Continue research into ways to punish aggressive or misbehaving flows
• Multimedia– Does not use TCP
Can tolerate some lossPrice for latency is too high
– Often low-bandwidth– Delay sensitive
![Page 23: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/23.jpg)
Outline
• Problem– Supporting multimedia on the Internet
• Context– Drop Tail
– RED
– FRED
• Approach– CBT
• Evaluation
• Conclusion
![Page 24: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/24.jpg)
Goals
• Isolation– Responsive (TCP) from unresponsive
– Unresponsive: multimedia from aggressive
• Flexible fairness– Something more than equal shares for all
• Lightweight– Minimal state per flow
• Maintain benefits of RED– Feedback
– Distribution of drops
![Page 25: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/25.jpg)
Class-Based Threshold (CBT)
• Designate a set of traffic classes and allocate a fraction of a router’s buffer capacity to each class
• Once a class is occupying its limit of queue elements, discard all arriving packets
• Within a traffic class, further active queue management may be performed
ClassifierClassifier
fn ≤
f1 ≤
f2 ≤...
FCFSScheduler
FCFSScheduler
![Page 26: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/26.jpg)
Class-Based Threshold (CBT)
• Isolation– Packets are classified into 1 of 3 classes– Statistics are kept for each class
• Flexible fairness– Configurable thresholds determine the ratios
between classes during periods of congestion
• Lightweight– State per class and not per flow– Still one outbound queue
• Maintain benefits of RED– Continue with RED policies for TCP
![Page 27: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/27.jpg)
CBT Implementation
• Implemented in Alt-Q on FreeBSD
• Three traffic classes:–TCP
–marked non-TCP (“well behaved UDP”)
–non-marked non-TCP (all others)
• Subject TCP flows get RED and non-TCP flows to a weighted average queue occupancy threshold test
![Page 28: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/28.jpg)
Class-Based ThresholdsEvaluation
• Compare:– FIFO queuing (Lower bound baseline) – RED (The Internet of tomorrow)– FRED ((RED + Fair allocation of buffers))– CBT
– CBQ ((Upper bound baseline))
RouterRouterRouterRouter
Inter-networkInter-
network
![Page 29: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/29.jpg)
Router Router
Inter-networkInter-
network
CBT Evaluation Experimental design
0 20 60 110 160 180
6 ProShare - Unresponsive MM (210Kbps each)
240 FTP-TCP
1 UDP blast (10Mbps, 1KB)
• RED Settings:qsize = 60 pktsmax-th = 30 pkts min-th = 15 pktsqweight = 0.002max-pro = 0.1
• CBT Settings:mm-th = 10 pkts
udp-th = 2 pkts Throughput and Latency
![Page 30: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/30.jpg)
CBT EvaluationTCP Throughput
00 1010 2020 3030 4040 5050 6060 7070 8080 9090 10010000
200200
400400
600600
800800
1,0001,000
1,2001,200
1,4001,400T
CP
Th
rou
ghp
ut (
kbp
s)
Elapsed Time (s)Elapsed Time (s)
UDP Bulk Transfer
FIFOFIFO
REDRED
FREDFREDCBTCBTCBQCBQ
![Page 31: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/31.jpg)
CBT EvaluationTCP Throughput
00 1010 2020 3030 4040 5050 6060 7070 8080 9090 10010000
200200
400400
600600
800800
1,0001,000
1,2001,200
1,4001,400
UDP Bulk Transfer
CBTCBTCBQCBQ
TC
P T
hro
ugh
put
(kb
ps)
Elapsed Time (s)Elapsed Time (s)
![Page 32: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/32.jpg)
CBT EvaluationProShare (marked UDP) latency
Lat
en
cy(m
s)L
ate
ncy
(ms)
Elapsed Time (s)Elapsed Time (s)
00 1010 2020 3030 4040 5050 6060 7070 8080 9090 100100 110110 120120 130130 140140 150150 16016000
1010
2020
3030
4040
5050
6060
7070
FIFOFIFO
REDRED
FREDFRED
CBTCBT
CBQCBQ
CBT = 1% LossCBT = 1% Loss
CBQ = 0% LossCBQ = 0% Loss
FIFO = 32% LossFIFO = 32% Loss
FRED = 36% LossFRED = 36% Loss
RED = 30% LossRED = 30% Loss
![Page 33: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/33.jpg)
Conclusion
• RED/FIFO scheduling not sufficient– Aggressive unresponsive flows cause trouble
– Low bandwidth unresponsive (VoIP) punished
• CBT provides– Benefits of RED for TCP only traffic
– Isolation of TCP vs. Unresponsive
– Isolation of Aggressive vs. Low Bandwidth
– Lightweight overhead
![Page 34: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/34.jpg)
Future Work
• How to pick thresholds?– Implies reservation
– Dynamic adjustments of thresholds (D-CBT)
• Additional queue management for classes– Classes use “Drop Tail” now
• Extension to other classes– Voice
– Video
![Page 35: Lightweight Active Router-Queue Management for Multimedia Networking](https://reader034.vdocuments.us/reader034/viewer/2022051316/56815a76550346895dc7dfea/html5/thumbnails/35.jpg)
Evaluation of Science?
• Category of Paper
• Science Evaluation (1-10)?
• Space devoted to Experiments?