On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11...

20
On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster Deepak Bansal Hari Balakrishnan MIT Laboratory for Computer Science http://nms.lcs.mit.edu/projects/videocm/

description

April 30, 2001MIT Laboratory for Computer Science3 Why Is This Happening? The Internet poses several problems for the delivery of data –Variable Bandwidth –Variable Delay –Packet Loss Very detrimental to interactive video delivery How do we transmit video on the Internet in the face of varying bandwidth?

Transcript of On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11...

Page 1: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

On the Interactions Between Layered Quality Adaptation and Congestion

Control for Streaming Video

11th International Packet Video Workshop

Nick FeamsterDeepak Bansal

Hari BalakrishnanMIT Laboratory for Computer Sciencehttp://nms.lcs.mit.edu/projects/videocm/

Page 2: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 2

Not Like Watching TV!

Page 3: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 3

Why Is This Happening?• The Internet poses several problems for the

delivery of data– Variable Bandwidth– Variable Delay– Packet Loss

• Very detrimental to interactive video delivery• How do we transmit video on the Internet

in the face of varying bandwidth?

Page 4: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 4

Video Client

Streaming Video

System Context

• This talk is about bandwidth adaptation• Conclusion: The combination of smooth congestion control

and clever receiver buffering can overcome the evils of bandwidth variation!

Request for Video

Streaming Video

Loss/Latency Feedback

Video Server

Page 5: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 5

Bandwidth Adaptation

• Available bandwidth varies with time• Servers should adapt to varying

bandwidth– Congestion Control: Transmission rate must

• correspond to available bandwidth• be TCP-friendly

– Quality Adaptation: Quality of video should correspond to transmission rate

• Limited capacity for buffering!

Page 6: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 6

Layered Video• Simulcast: Each layer is independent• Hierarchical: Higher depends on lower

– Base/Enhancement layers– Linear granularity (C bits/layer)

Hierarchical LayeringSimulcast Layering

Page 7: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 7

Binomial Congestion Control

• Trade-off between increase aggressiveness and decrease magnitude• K+L=1 implies TCP-friendly [Bansal, INFOCOM 2001]• SQRT has a modest backoff (~R1/2) => attractive for streaming media

t

w(t) AIMDExponential Backoff

AIMD BinomialIncrease /wK

Decrease w wL

Page 8: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 8

Reduced OscillationsIn many cases, AIMD drops multiple layers in one backoff! This is not the case with SQRT.

Rate oscillations in SQRT are much less pronounced than in AIMD.

AIMD

Bitr

ate

SQRT

Bitr

ate

Page 9: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 9

Layered Quality Adaptation• Tailor video to available bandwidth!• Can be immediate or receiver-buffered

– Rejaie et al., SIGCOMM ‘99

Page 10: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 10

Receiver Buffering

• Allocate more buffer space to lower layers• Add a layer when the following conditions are met:

– Enough bandwidth is available– Enough video is buffered to sustain a backoff and continue

playing all of the layers (including the new layer)

OptimalL0 buffering

R/2

C

R

Consumption Rate(na+1)C

Buffer Filling

Buffer Draining

Page 11: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 11

Interaction of SQRT and QA: We Win!

• With SQRT:– Smaller Oscillations– Less buffering required for quality adaptation

R

R – R1/2

Consumption Rate(na+1)C

Total buffering to add an additional layer is O(R3/2) rather than O(R2)

C

Page 12: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 12

Reduced Buffering

SQRT requires less buffering to add layers!

56% less buffering toadd 4 layers

Page 13: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 13

Conclusion

• Combination of SQRT congestion control with receiver quality adaptation enables smooth video delivery– Reduces rate oscillations– Reduces buffering/Increases interactivity

• Software is available– Includes selective reliability for packet loss– http://nms.lcs.mit.edu/software/videocm/

Page 14: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 14

Extra Slides

Page 15: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 15

Outline• Problem Overview• Background

– Bandwidth Variation– Quality Adaptation– Binomial Congestion Control

• Approach• Results• Conclusion

Page 16: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 16

The Goal

• TCP-friendly congestion control• Reduce rate oscillations:

– Limit size of playout buffer– Smooth perceptual quality

• Limit receiver buffering for QA– Reach acceptable playout rate faster– More interactivity in certain cases (i.e., if RTT and

RTT jitter are small)

Page 17: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 17

Results of SQRT• Tested on emulated network conditions with

Dummynet and SURGE toolkit• SQRT reduces rate oscillations for:

– Immediate adaptation– Receiver-buffered QA

• Also reduces buffering:– Less jitter due to rate oscillations– Backoffs less severe => less QA buffering– Can play out at higher layers more quickly– More interactivity

Page 18: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 18

Internet

MPEG Server MPEG Client

RTP/RTCP RTP/RTCPCM

data loss/RTT/requestsdatacallbacks

RTSP

loss/RTT loss/RTT/requests

SR-RTP

Page 19: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 19

InternetMPEG Server MPEG Client

RTP/RTCP RTP/RTCP

CM

data loss/RTT/requestsdata

callbacks

RTSP

loss/RTT

loss/RTT/requests

SR-RTP

Layering callbacks

Bandwidth Adaptation

System Architecture

Page 20: On the Interactions Between Layered Quality Adaptation and Congestion Control for Streaming Video 11 th International Packet Video Workshop Nick Feamster.

April 30, 2001 MIT Laboratory for Computer Science 20

Reduced OscillationsIn many cases, AIMD drops multiple layers in one backoff! This is not the case with SQRT.

Rate oscillations in SQRT are much less pronounced than in AIMD.Layers Dropped

AIMD SQRT

Bitr

ate

Bitr

ate