Rate-Based Active Queue Management with Priority Classes for Better Video Transmission
description
Transcript of Rate-Based Active Queue Management with Priority Classes for Better Video Transmission
Rate-Based Active Queue Management with Priority Classesfor Better Video Transmission
Jae Chung and Mark Claypool
Computer Science DepartmentWorcester Polytechnic InstituteWorcester, Massachusetts, USAhttp://perform.wpi.edu/
ISCC02 WPI Rb-RIO #2
Streaming Media Applications
Can use TCP– Hides network information– Difficult to use media scaling upon– Hard to control transmission timing– Higher jitter due to traffic burst
Often use UDP– Control the flow as desired
• Responsiveness, Fairness– Can tolerate some frame losses
• Trickier for Video Streaming
ISCC02 WPI Rb-RIO #3
Difficulty of Video Streaming
Inter-frame dependencies (Compression) Large frames: fragmented in IP layer
I B PB BB I
A Sample MPEG Stream
I B PB BB
ISCC02 WPI Rb-RIO #4
Outline
Introduction Approaches Rb-RIO Experiments Results Summary
ISCC02 WPI Rb-RIO #5
Approaches to The Problem
Application Support– Redundancy and Error Correction– Media Scaling
Network Architectural Support– Integrated Services (IntServ)– Differentiated Services (DiffServ)
Router Support– Resource Reservation (WFQ, …)– Priority Class-Based Queue Management
ISCC02 WPI Rb-RIO #6
Basic Idea: Avoid Domino Frame Loss Using Priority Queuing
Queue supports 3 priority class– Drop all the lowest class packets before starting
to drop the next class packets MPEG Video Frame Mapping
– Map I-, P- and B-frame packets to High, Mid and Low priority classes
TCP Mapping– Randomly map TCP packets to the 3 classes
(standalone better-than-best-effort Queue)
ISCC02 WPI Rb-RIO #7
AQM Support for Priority-Classes
… RED RIO
Average Queue Size Based
… Rb-RED Rb-RIO
Rate Based
- Detect Congestion- Determine Degree- Notify SourcesActive Queue Management
ISCC02 WPI Rb-RIO #8
Rb-RED
Components– Limit: Queue Limit– Q: Queue Size– EAR: Estimated Arrival Rate – SR: Service Rate
Drop Logic (for incoming packets)if (Q > Limit)
Dropelse if (EAR > SR)
Drop with P = (EAR – SR) / EAR
SREAR
ISCC02 WPI Rb-RIO #9
Rb-RIO
Drop Logicif (Q > Limit)
Dropelse if (EARhigh > SR)
if (L-class or M-class) Dropif (H-class) Drop with P = (EARhigh– SR) / EARhigh
else if (EARhigh+ EARmid > SR)if (L-class) Dropif (M-class) Drop with P = (EARhigh+ EARmid– SR) / EARmid
else if (EAR > SR)if (L-class) Drop with P = (EAR – SR) / EARlow
SR
EAR
EARlow
EARmid
EARhigh SR
EAR
EARlow
EARmid
EARhigh
EAR EARlow
EARmid EARhigh
SR
ISCC02 WPI Rb-RIO #10
Rb-RIO Mappings
MPEG Video– I-frame packets = H-class– P-frame packets = M-class– B-frame packets = L-class
TCP– Randomly map incoming TCP packets– H-class : M-class : L-class = x : y : z
ISCC02 WPI Rb-RIO #11
Outline
Introduction Approaches Rb-RIO Experiments Results Summary
ISCC02 WPI Rb-RIO #12
Experiments
Implement Rb-RIO in NS General Settings
– Network Packet Size = 1 KB– MPEG Frame Size (from a news clip)
I, P, B = 11, 8, 2 (KB)– Rb-RIO Priority Class Mapping for TCP
H : M : L = 7 : 3 : 0 Compare Rb-RIO with RED, Drop-Tail
– Using TCP, MPEG and MIX (TCP + MPEG)
ISCC02 WPI Rb-RIO #13
n1-n2: q_size = 100qweight = 0.0003
RED: max_th = 60min_th = 20max_p = 0.1
Rb-RIO: interval = 1msear_k = 0.5aggr_p = 2.5
0 10 20 30
40 Flows
20 Flows
Simulation Time (Seconds)
s59
s60
s1
s2
n1
r59
r60
r1
r2
n225Mbps, 20ms
25Mbps, 5ms 25Mbps, 5ms
packet_size = 1kbFTP-TCP
FTP-TCP
EXP TCP: Setup
ISCC02 WPI Rb-RIO #14
EXP TCP: Summary
Comparing Rb-RIO with Drop-Tail and RED (well-configured)– Throughput: All compatible– Drop Rate: All compatible– Fairness: RED and Rb-RIO are
compatible and fairer than Drop-Tail
ISCC02 WPI Rb-RIO #15
EXP MPEG: Setup
n1-n2: q_size = 100qweight = 0.0003
RED: max_th = 60min_th = 20max_p = 0.1
Rb-RIO: interval = 1msear_k = 0.5aggr_p = 2.5
0 10 20 30
40 Flows
20 Flows
Simulation Time (Seconds)
s59
s60
s1
s2
n1
r59
r60
r1
r2
n225Mbps, 20ms
25Mbps, 5ms 25Mbps, 5ms
packet_size = 1kb
ResponsiveMPEG
UnresponsiveMPEG
ISCC02 WPI Rb-RIO #16
EXP MPEG: Pkt & Frm Statistics
Throughput Pkt Loss % Frm Loss %
Deco Loss %
Drop-Tail 19.82 Mbps 13.1 22.8 43.2
RED 18.65 Mbps 9.0 29.4 53.7
Rb-RIO 20.81 Mbps 11.2 36.9 39.8
Responsive MPEG
Unresponsive MPEGThroughput Pkt Loss % Frm Los
s %Deco Loss %
Drop-Tail 14.27 Mbps 23.4 38.7 87.0
RED 15.18 Mbps 20.6 43.5 92.1
Rb-RIO 9.70 Mbps 34.5 88.8 88.8
ISCC02 WPI Rb-RIO #17
EXP MPEG: Decodable Frames (Responsive MPEG)
ISCC02 WPI Rb-RIO #18
EXP MPEG: Decodable Frames (Unresponsive MPEG)
ISCC02 WPI Rb-RIO #19
EXP MPEG: Fairness
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0- 10 Sec 10- 20 Sec 20- 30 Sec
Jain'
s Fa
irnes
s Ind
ex
Drop- TailREDRb- RIO
ISCC02 WPI Rb-RIO #20
EXP MPEG: Summary
Rb-RIO improves video transmission over Drop-Tail and RED– Effective use of network bandwidth– Smoother video streams (less jitter)
Improves fairness among video streams– Same kind of streams– Different kind of streams
ISCC02 WPI Rb-RIO #21
EXP MIX: Setup
n1-n2: q_size = 100qweight = 0.0003
RED: max_th = 60min_th = 20max_p = 0.1
Rb-RIO: interval = 1msear_k = 0.5aggr_p = 2.5
0 10 20 30
20 Flows
20 Flows
Simulation Time (Seconds)
s59
s60
s1
s2
n1
r59
r60
r1
r2
n225Mbps, 20ms
25Mbps, 5ms 25Mbps, 5ms
packet_size = 1kb
ResponsiveMPEG
UnresponsiveMPEG
20 FlowsFTP-TCP
ISCC02 WPI Rb-RIO #22
EXP MIX: Fairness
0
2
4
6
8
10
12
14
16
18
20
Drop-Tail
RED Rb-RIO
Drop-Tail
RED Rb-RIO
Drop-Tail
RED Rb-RIO
0- 10 Seconds 10- 20 Seconds 20- 30 Seconds
Aggr
egat
ed T
hrou
ghpu
t (M
bps)
TCPResp MPEGUnresp MPEG
ISCC02 WPI Rb-RIO #23
EXP MIX: Summary
Rb-RIO improves video transmission over Drop-Tail and RED as in EXP MPEG
Protects TCP from other flows that are unresponsive or response differently to network congestion
ISCC02 WPI Rb-RIO #24
Summary
Rb-RIO behaves compatibly with well-configured RED on TCP flows
Offers efficient and smoother video transmission
Improves fairness among video streams
Protects TCP using configurable TCP mapping ratio
ISCC02 WPI Rb-RIO #25
Future Work
Thorough evaluation of Rate-Based AQM mechanism (with TCP)
Try and evaluate Rb-RIO with other video streams (H.263+, RealVideo)
Design an AQM mechanism that can control delay for interactive multimedia streaming