oboe auto tuning video abr algorithms to network
play

Oboe: Auto-tuning Video ABR Algorithms to Network Conditions Zahaib - PowerPoint PPT Presentation

Oboe: Auto-tuning Video ABR Algorithms to Network Conditions Zahaib Akhtar , Yun Seong Nam , Ramesh Govindan, Sanjay Rao, Jessica Chen, Ethan Katz-Bassett, Bruno Ribeiro, Jibin Zhan, Hui Zhang : Co-primary authors 1 Internet Video


  1. Oboe: Auto-tuning Video ABR Algorithms to Network Conditions Zahaib Akhtar ★ , Yun Seong Nam ★ , Ramesh Govindan, Sanjay Rao, Jessica Chen, Ethan Katz-Bassett, Bruno Ribeiro, Jibin Zhan, Hui Zhang ★ : Co-primary authors 1

  2. Internet Video Streaming Today ● Internet video is delivered over: ○ Heterogeneous networks: WiFi, wired, 3G/4G LTE ○ Highly varying or challenging network conditions 2

  3. Internet Video Streaming Today ● Internet video is delivered over: ○ Heterogeneous networks: WiFi, wired, 3G/4G LTE ○ Highly varying or challenging network conditions ● Quality of experience (QoE) issues are common place Low quality Rebuffering 3

  4. Internet Video Streaming Today ● Internet video is delivered over: ○ Heterogeneous networks: WiFi, wired, 3G/4G LTE ○ Highly varying or challenging network conditions ● Quality of experience (QoE) issues are common place Low quality Rebuffering Low QoE adversely impacts user engagement and revenue 4

  5. Background: Adaptive Bitrate Streaming Bitrates Video Time A video clip is encoded with multiple qualities (bitrates) 5

  6. Background: Adaptive Bitrate Streaming Bitrates Bitrates Video Time Time Each bitrate is split into chunks 6

  7. Background: Adaptive Bitrate Streaming Bitrates Video Client Conditions Network Time Video Server Request n th chunk at bitrate r Time 7

  8. Background: Adaptive Bitrate Streaming Bitrates Video Client Conditions Network Time Video Server Request n th chunk at bitrate r Time 8

  9. Background: Adaptive Bitrate Streaming Bitrates Video Client Conditions Network Time Video Server Request n th chunk at bitrate r Time 9

  10. Background: Adaptive Bitrate Streaming Bitrates Video Client Conditions Network Time Video Server Request n th chunk at bitrate r Time Adaptive Bitrate Algorithms(ABR) 10

  11. Background: Adaptive Bitrate Streaming Too conservative Low quality ABR algorithms Too aggressive Rebuffering 11

  12. Background: ABR algorithms Data-Learned Adaptations (e.g., Pensieve [1] ) ABR algorithms Designed Adaptations (e.g., MPC [2] , BOLA [3] , HYB [4] , BB [5] ) Performance of Designed Adaptation based ABRs critically depends on configurable parameters [1] Hongzi Mao, et al., SIGCOMM, 2017. [2] Xiaoqi Yin, et al., SIGCOMM, 2015. [3] Kevin Spiteri, et al., INFOCOM, 2016. 12 [4] An ABR algorithm that’s widely used in industry. [5] Te-Yuan Huang, et al., SIGCOMM, 2014.

  13. Parameters are sensitive to network conditions 13

  14. Parameters are sensitive to network conditions Network Condition A Network Condition A Network Condition B 14

  15. Parameters are sensitive to network conditions Network Condition A Network Condition A Widely deployed ABR algorithm with parameter ! Network Condition B 15

  16. Parameters are sensitive to network conditions 16

  17. Parameters are sensitive to network conditions Parameters of ABRs must be set in a manner sensitive to network conditions 17

  18. The problem with ABR algorithms ABR algorithms Parameter MPC Discount factor d ABR algorithms use Parameter ! BOLA fixed parameter value Safety margin " HYB or simple heuristic BB Reservoir r 18

  19. The problem with ABR algorithms ABR algorithms Parameter MPC Discount factor d ABR algorithms use Parameter ! BOLA fixed parameter value Safety margin " HYB or simple heuristic BB Reservoir r Do not perform well across all network conditions 19

  20. Goal of our work Design a system to make ABR algorithms work better over a wide range of network conditions 20

  21. Key Challenges How to model network conditions? How to find the best parameter for a given condition? How to adapt to changes in network conditions? 21

  22. Contributions How to model network conditions? ● Leverage stationarity of network connections How to find the best parameter for a given condition? ● Pre-compute offline How to adapt to changes in network conditions? ● Detect change points online and adjust parameters 22

  23. Contributions How to model network conditions? ● Leveraging stationarity of network connections Our system, Oboe improves How to find the best parameter for a given condition? state-of-art ABRs (MPC, BOLA and HYB) upto 38% ● Pre-computing in offline and outperforms Pensieve by 24% How to adapt to changes in network condition change? ● Online change point detection and adjusting ABR algorithms in online 23

  24. Key Challenges How to model network conditions? How to find the best parameter for a given condition? ● Oboe Offline Stage How to adapt to changes in network conditions? ● Oboe Online Stage 24

  25. Modeling network conditions TCP connection throughput stationary segment can be modeled as a stationary piecewise stationary [6-10] segment sequence of network states [6] Hari Balakrishnan, et. al. SIGMETRICS, 1997 [7] James Jobin, et. al. INFOCOM, 2004 [8] Dong Lu, et. al. ICDCS, 2005 25 [9] Guillaume Urvoy-Keller. PAM, 2005. [10] Yin Zhang, et al. IM, 2001

  26. Modeling network conditions Network state s = < ! s , " s > < ! 2 , " 2 > where ! s is the mean and " s is the standard deviation of throughput < ! 1 , " 1 > 26

  27. Modeling network conditions Network state s = < ! s , " s > < ! 2 , " 2 > where ! s is the mean and " s is the standard deviation of throughput < ! 1 , " 1 > Key idea : Use the best parameter for each network state 27

  28. Key Challenges How to model network conditions? How to find the best parameter for each network state? ● Oboe Offline Stage How to adapt to changes in network state? ● Oboe Online Stage 28

  29. Finding the best parameter : Oboe Offline Step 1 < ! 1 , " 1 > < ! 2 , " 2 > ... ... Generate synthetic stationary traces for each network state 29

  30. Finding the best parameter : Oboe Offline Step 2 ABR with Virtual Player param. # < ! 1 , " 1 > < ! 2 , " 2 > ... ... Explore parameter space for each state and get QoE vectors 30

  31. Finding the best parameter : Oboe Offline Step 2 ABR with Virtual Player param. # # =0.3 ... Param # =0.1 # =0.2 < ! 1 , " 1 > ... QoE # =0.3 ... Param # =0.1 # =0.2 < ! 2 , " 2 > ... QoE ... ... ... Explore parameter space for each state and get QoE vectors 31

  32. Finding the best parameter : Oboe Offline Step 2 ABR with Virtual Player param. # # =0.3 ... Param # =0.1 # =0.2 < ! 1 , " 1 > <3.2, 0%> <3.8, 0%> <4.0, 2%> ... QoE # =0.3 ... Param # =0.1 # =0.2 < ! 2 , " 2 > <1.7, 0%> <2.0, 2%> <3.2, 5%> ... QoE ... ... ... Explore parameter space for each state and get QoE vectors 32

  33. Finding the best parameter : Oboe Offline Step 3 ABR with Mapping Virtual Player param. ! ! =0.3 ... Param ! =0.1 ! =0.2 Network Best State Param. < " 1 , # 1 > <3.2, 0%> <3.8, 0%> <4.0, 2%> ... QoE Best ! =0.2 < " 1 , # 1 > ! =0.3 ... Param ! =0.1 ! =0.2 ! =0.1 < " 2 , # 2 > < " 2 , # 2 > <1.7, 0%> <2.0, 2%> <3.2, 5%> ... QoE Best ... ... ... ... ... Find the best parameter by vector dominance for each state 33

  34. Oboe Offline Stage: Design Questions ● Use real or synthetic traces? ● How to quantize network state space? ● How to reduce the cost of parameter space exploration? ● How to decouple ABR algorithms from Virtual Player? ● How to take publisher preferences into account? 34

  35. Key Challenges How to model network conditions? How to find the best parameter for each network state? ● Oboe Offline Stage How to adapt to changes in network state? ● Oboe Online Stage 35

  36. Adapting to network state changes < ! 2 , " 2 > < ! 2 , < ! 1 , " 1 > " 2 > Online change point detection [11] algorithm identifies network throughput distribution changes in real time 36 [11] Ryan Prescott Adams and David JC MacKay. Bayesian Online Changepoint Detection. In arXiv:0710.3742v1, 2007

  37. Adapting to network state changes : Online Step 1 < ! 2 , " 2 > < ! 2 , < ! 1 , " 1 > " 2 > Change detected Online change point detection [11] algorithm identifies network throughput distribution changes in real time 37 [11] Ryan Prescott Adams and David JC MacKay. Bayesian Online Changepoint Detection. In arXiv:0710.3742v1, 2007

  38. Adapting to network state changes : Online Step 2 Mapping < ! 2 , " 2 > Network Best < ! 2 , State Param. < ! 1 , " 1 > " 2 > # =0.2 < ! 1 , " 1 > Change detected # =0.1 < ! 2 , " 2 > ... ... Find the best parameter from the mapping for a new state 38

  39. Adapting to network state changes : Online Step 3 Mapping ABR algorithm < ! 2 , " 2 > parameter Network Best < ! 2 , State Param. < ! 1 , " 1 > " 2 > # =0.2 < ! 1 , " 1 > Change # =0.2 # =0.1 detected # =0.1 < ! 2 , " 2 > ... ... Reconfigure ABR algorithm parameter 39

  40. Oboe Online Design Questions ● Why not a simple moving average? ● How many throughput samples to detect changes? ● Are computational overheads acceptable in real time? 40

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend