1 / 61

Rate Adaptations

Rate Adaptations. You are Here. Encoder. Decoder. Middlebox. Receiver. Sender. Network. Sender’s Algorithm. open UDP socket foreach video frame chop into packets add RTP header send to network. Sender’s Algorithm. open UDP socket foreach video frame

galeno
Download Presentation

Rate Adaptations

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Rate Adaptations

  2. You are Here Encoder Decoder Middlebox Receiver Sender Network

  3. Sender’s Algorithm open UDP socket foreach video frame chop into packets add RTP header send to network

  4. Sender’s Algorithm open UDP socket foreach video frame chop into packets add RTP header send to network wait for 1/fps seconds

  5. 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

  6. Rules • Transmission rate should match encoding rate • Transmission should not be too bursty

  7. Just send at a fix rate or “I hope the network can handle it” approach” Two Approaches

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

  9. Effects on TCP

  10. Demo Effects of UDP on TCP without congestion control

  11. Just send at a fix rate or “I hope the network can handle it” approach” Adapt transmission/encoding rate to network condition Two Approaches

  12. 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

  13. How to .. • Know “network condition is bad”? • increase/decrease rate?

  14. Adapting Output Rate if network condition is bad else if network condition is so-so do nothing else if network condition is good

  15. Question: What should  and  be?

  16. Observation 1 • Should never change your rate more than an equivalent TCP

  17. Observation 2 •  and  should depend on network conditions and current rate.

  18. Goal: Fair Share of Bottleneck • let r r : current rate b : bottleneck bandwidth S : current share

  19. S vs   S 1

  20. Value of  (Assuming one receiver)

  21. Limit of  • M : packet size •  : round trip time • T : period between evaluation of 

  22. Limit of  M : packet size  : round trip time T : period between evaluation of 

  23. loss rate vs   1 1 loss rate

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

  25. What is Needed?

  26. Estimating b : Packet Pair

  27. Estimating b : Packet Pair

  28. Estimating b : Packet Pair

  29. Evaluation

  30. More TCP-Friendly Rate Control

  31. TCP-Equation Window size behavior in TCP/IP with constant loss probability T. Ott, J. Kemperman, and M. Mathis June 1997, HPCS 1997

  32. TCP-Equation Equation-Based Congestion Control for Unicast Applications Sally Floyd, Mark Handley, Jitendra Padhye, and Joerg Widmer.August 2000. SIGCOMM 2000

  33. Another Transport Protocol • Datagram Congestion Control Protocol (DCCP) • Implements congestion control but not reliability

  34. Rules • Transmission rate should match encoding rate • Transmission should not be too bursty

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

  36. Reduce Frame Rate • Live Video • Stored Video

  37. Reduce Frame Resolution • Live Video • Stored Video

  38. Increase Quantization • Live Video • Stored Video

  39. Drop AC components • Live Video • Stored Video

  40. Trouble with Stored Video • Reducing rate requires partial decoding and re-encoding • Solution: Layered Video

  41. Layered Video or “Scalable Video”

  42. Layered Video Layer 1 Layer 2 Layer 3

  43. Layering Scheme • Temporal Layering

  44. Layering Scheme • Spatial Layering

  45. Layering Scheme • DCT Layering 30 8 2 30 8 2 0 30 -6 -1 -6 -1 0 0 1 1 0 0 0 0 0 0 0

  46. Layering Scheme • Fine Granularity Scalability (FGS) 1 1 0 0 0 0 0 0 1 1 1 0 0 0 1 0 1 0 0 1 0 1 0 1 1 0 0 0 0 1 0 0

  47. Rate Adaptation • To increase rate, send more layers • To decrease rate, drop some layers

  48. MS Windows Streaming Media

  49. Intelligent Streaming • Multiple-Bit-Rate Encoding • Intelligent Bandwidth Control • bit rate selection • thinning • Intelligent Image Processing

More Related