Rate Adaptations NUS SOC CS 5248 2009 Roger

  • Slides: 60
Download presentation
Rate Adaptations NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides

Rate Adaptations NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

You are Here Encoder Decoder Middlebox Receiver Sender Network NUS. SOC. CS 5248 -2009

You are Here Encoder Decoder Middlebox Receiver Sender Network NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Sender’s Algorithm open UDP socket foreach video frame chop into packets add RTP header

Sender’s Algorithm open UDP socket foreach video frame chop into packets add RTP header send to network NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Sender’s Algorithm open UDP socket foreach video frame chop into packets add RTP header

Sender’s Algorithm open UDP socket foreach video frame chop into packets add RTP header send to network wait for 1/fps seconds NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Sender’s Algorithm open UDP socket foreach video frame chop into packets foreach packet add

Sender’s Algorithm open UDP socket foreach video frame chop into packets foreach packet add RTP header send to network wait for size/bps seconds NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Rules n Transmission rate should match encoding rate n Transmission should not be too

Rules n Transmission rate should match encoding rate n Transmission should not be too bursty NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Two Approaches n Just send at a fix rate n or “I hope the

Two Approaches n Just send at a fix rate n or “I hope the network can handle it” approach” NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Effects on TCP: Simulation From Sisalem, Emanuel and Schulzrinne paper on “Direct Adjustment Algorithm”

Effects on TCP: Simulation From Sisalem, Emanuel and Schulzrinne paper on “Direct Adjustment Algorithm” NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Effects on TCP NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on

Effects on TCP NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

DAA Parameters n Adaptive RTP flows n Additive increase/multiplicative decrease n 50 kb and

DAA Parameters n Adaptive RTP flows n Additive increase/multiplicative decrease n 50 kb and factor 0. 875 n RTCP: min 5 sec inter-report time n Loss thresholds: 5% and 10% n TCP n Immediate loss notification n Transmission window is halfed NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Two Approaches n Just send at a fix rate n or “I hope the

Two Approaches n Just send at a fix rate n or “I hope the network can handle it” approach” n Adapt transmission/encoding rate to network condition NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

How to Adapt? if network condition is bad reduce rate else if network condition

How to Adapt? if network condition is bad reduce rate else if network condition is so-so do nothing else if network condition is good increase rate NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

How to. . n Know “network condition is bad”? n increase/decrease rate? NUS. SOC.

How to. . n Know “network condition is bad”? n increase/decrease rate? NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Adapting Output Rate if network condition is bad else if network condition is so-so

Adapting Output Rate if network condition is bad else if network condition is so-so do nothing else if network condition is good NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Question: What should and be? NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Question: What should and be? NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Observation 1 n Should never change your rate more than an equivalent TCP NUS.

Observation 1 n Should never change your rate more than an equivalent TCP NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Observation 2 n and should depend on network conditions and current rate. NUS. SOC.

Observation 2 n and should depend on network conditions and current rate. NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Goal: Fair Share of Bottleneck n let r : current rate b : bottleneck

Goal: Fair Share of Bottleneck n let r : current rate b : bottleneck bandwidth S : current share NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

S vs 1 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on

S vs 1 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang) S

Value of (Assuming one receiver) NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Value of (Assuming one receiver) NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Limit of n M : packet size n : round trip time n T

Limit of n M : packet size n : round trip time n T : period between evaluation of NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

loss rate vs 1 1 loss rate NUS. SOC. CS 5248 -2009 Roger Zimmermann

loss rate vs 1 1 loss rate NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Value of where is the loss rate k is a constant (Assuming one receiver)

Value of where is the loss rate k is a constant (Assuming one receiver) NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi

NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

What is Needed? NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on

What is Needed? NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Estimating b : Packet Pair NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Estimating b : Packet Pair NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Estimating b : Packet Pair NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Estimating b : Packet Pair NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Estimating b : Packet Pair NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Estimating b : Packet Pair NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Evaluation NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by

Evaluation NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

More TCP-Friendly Rate Control NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part

More TCP-Friendly Rate Control NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

TCP-Equation Window size behavior in TCP/IP with constant loss probability T. Ott, J. Kemperman,

TCP-Equation Window size behavior in TCP/IP with constant loss probability T. Ott, J. Kemperman, and M. Mathis June 1997, HPCS 1997 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

TCP-Equation-Based Congestion Control for Unicast Applications Sally Floyd, Mark Handley, Jitendra Padhye, and Joerg

TCP-Equation-Based Congestion Control for Unicast Applications Sally Floyd, Mark Handley, Jitendra Padhye, and Joerg Widmer. August 2000. SIGCOMM 2000 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Another Transport Protocol n Datagram Congestion Control Protocol (DCCP) n Implements congestion control but

Another Transport Protocol n Datagram Congestion Control Protocol (DCCP) n Implements congestion control but not reliability NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Rules n Transmission rate should match encoding rate n Transmission should not be too

Rules n Transmission rate should match encoding rate n Transmission should not be too bursty NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Rate Control Given a rate, how to encode the video with the given rate?

Rate Control Given a rate, how to encode the video with the given rate? NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Reduce Frame Rate n Live Video n Stored Video NUS. SOC. CS 5248 -2009

Reduce Frame Rate n Live Video n Stored Video NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Reduce Frame Resolution n Live Video n Stored Video NUS. SOC. CS 5248 -2009

Reduce Frame Resolution n Live Video n Stored Video NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Increase Quantization n Live Video n Stored Video NUS. SOC. CS 5248 -2009 Roger

Increase Quantization n Live Video n Stored Video NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Drop AC components n Live Video n Stored Video NUS. SOC. CS 5248 -2009

Drop AC components n Live Video n Stored Video NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Trouble with Stored Video n Reducing rate requires partial decoding and re-encoding n Solution:

Trouble with Stored Video n Reducing rate requires partial decoding and re-encoding n Solution: Layered Video NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Layered Video or “Scalable Video” NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Layered Video or “Scalable Video” NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Layered Video Layer 1 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part

Layered Video Layer 1 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang) Layer 2 Layer 3

Layering Scheme n Temporal Layering NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Layering Scheme n Temporal Layering NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Layering Scheme n Spatial Layering NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in

Layering Scheme n Spatial Layering NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Layering Scheme n DCT Layering 30 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based

Layering Scheme n DCT Layering 30 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang) 30 8 2 0 -6 -1 0 0 1 1 0 0 0 0

Layering Scheme n Fine Granularity Scalability (FGS) 1 1 0 0 0 1 0

Layering Scheme n Fine Granularity Scalability (FGS) 1 1 0 0 0 1 0 1 0 1 1 0 0 NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Rate Adaptation n To increase rate, send more layers n To decrease rate, drop

Rate Adaptation n To increase rate, send more layers n To decrease rate, drop some layers NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

MS Windows Streaming Media NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part

MS Windows Streaming Media NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Intelligent Streaming n Multiple-Bit-Rate Encoding n Intelligent Bandwidth Control n bit rate selection n

Intelligent Streaming n Multiple-Bit-Rate Encoding n Intelligent Bandwidth Control n bit rate selection n thinning n Intelligent Image Processing NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Intelligent Streaming n How exactly does it work? n Sorry, it’s proprietary NUS. SOC.

Intelligent Streaming n How exactly does it work? n Sorry, it’s proprietary NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Is WSM TCP friendly? n Measurements of the Congestion Responsiveness of Windows Streaming Media

Is WSM TCP friendly? n Measurements of the Congestion Responsiveness of Windows Streaming Media n J. Nichols et. al. , NOSSDAV 2004 All figures taken from the original NOSSDAV presentation NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi

NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

340 kbps clip, 725 kbps bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann (based

340 kbps clip, 725 kbps bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Transmission is Bursty NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on

Transmission is Bursty NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

340 kbps clip, 725 kbps bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann (based

340 kbps clip, 725 kbps bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

548 kbps Clip - 725 kbps Bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann

548 kbps Clip - 725 kbps Bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

1128 kbps Clip - 725 kbps Bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann

1128 kbps Clip - 725 kbps Bottleneck NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

725 kbps Bottleneck Buffering Playout Single Encoded Bit Rate NUS. SOC. CS 5248 -2009

725 kbps Bottleneck Buffering Playout Single Encoded Bit Rate NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

725 kbps Bottleneck Buffering Playout Multiple Encoded Bit Rate NUS. SOC. CS 5248 -2009

725 kbps Bottleneck Buffering Playout Multiple Encoded Bit Rate NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)

Conclusion n Two phases: buffering + playout n Not always TCP-friendly NUS. SOC. CS

Conclusion n Two phases: buffering + playout n Not always TCP-friendly NUS. SOC. CS 5248 -2009 Roger Zimmermann (based in part on slides by Ooi Wei Tsang)