practical real time centralized control for cdn based
play

Practical, Real-time Centralized Control for CDN-based Live Video - PowerPoint PPT Presentation

Practical, Real-time Centralized Control for CDN-based Live Video Delivery Matt Mukerjee , David Naylor, Junchen Jiang, Dongsu Han, Srini Seshan, Hui Zhang Live Video is Becoming Wildly Popular Commercial sports streams User-generated


  1. Practical, Real-time Centralized Control for CDN-based Live Video Delivery Matt Mukerjee , David Naylor, Junchen Jiang, Dongsu Han, Srini Seshan, Hui Zhang

  2. Live Video is Becoming Wildly Popular • Commercial sports streams • User-generated streams

  3. Live Video is Becoming Wildly Popular • Commercial sports streams • Single World Cup stream = 40% global Internet traffic • User-generated streams (e.g., Twitch) • Users watch 150b min of live video per month • Amazon buys Twitch for ~ $1Billion

  4. Our Contributions • We design a video delivery network ( VDN ) to efficiently manage quality and cost, with high responsiveness Distributed Central Control Optimization Hybrid Control Responsiveness to Quality and cost joins and failures management

  5. Outline Centralized Control Putting it all Problems with Hybrid Together Live Video Today Control Distributed Control

  6. CDN Live Video Delivery Background Legend ◀ Data Control ▶︎ Video Requests: A B Sources Video 1 Video 2 HTTP RESPONSE Responses: Video 1 Reflector Video 2 Clusters C D HTTP GET Edge Clusters E F G Video Requests

  7. CDN Live Video Delivery Background ◀ Data Control ▶︎ Video A B Sources 120 100 100 3K 1K 2K Link Cost Reflector Clusters C D Link Capacity 25 15 DNS 200 20 15 300 750 2K Edge Clusters E F G 1 10 1 0 300 750 700 500 Clients H I J

  8. CDN Live Video Delivery Background ◀ Data Control ▶︎ Video A B Sources 120 100 100 Objective: 3K 1K 2K Link Cost Reflector Maximize service quality Clusters C D Link Capacity 25 15 DNS 200 20 15 300 & 750 2K Edge Clusters E F G Minimize delivery cost 1 10 1 0 300 750 700 500 Clients H I J

  9. Problems with CDNs Today Service Quality Delivery Cost (per request) 8000 Optimal 7000 CDN Avg. Bitrate (Kbps) CDN 2.0x 6000 5000 4000 OPTIMAL 3000 1.0x 2000 1000 0 2 4 6 8 10 # of Videos (Thousands) Simulation using Conviva traces, Simulation using Conviva traces, modeling large sports events modeling user-generated content

  10. Problems with CDNs Today Service Quality Not Fine-Grained 8000 Optimal 7000 CDN Avg. Bitrate (Kbps) 6000 Videos aggregated 5000 4000 into large groups 3000 2000 1000 0 2 4 6 8 10 # of Videos (Thousands) Delivery Cost Slow DNS Updates CDN OPTIMAL Can’t push updates 2.0x 1.0x DNS entries get cached QUANTITATIVE QUALITATIVE

  11. Goals Service Quality Fine-Grained Control 8000 Optimal 7000 CDN Avg. Bitrate (Kbps) 6000 5000 Per-video Control 4000 3000 2000 1000 0 2 4 6 8 10 # of Videos (Thousands) Delivery Cost Real-time Response CDN OPTIMAL Sub-second response 2.0x 1.0x to failures and joins QUANTITATIVE QUALITATIVE Room for improvement, but Internet latency / loss

  12. Goals Service Quality Fine-Grained Control 8000 Optimal 7000 CDN Avg. Bitrate (Kbps) 6000 5000 Per-video Control 4000 3000 2000 Centralization! 1000 0 2 4 6 8 10 # of Videos (Thousands) Delivery Cost Real-time Response [Liu, Xi et. al. A Case for a Coordinated Video Control Plane. SIGCOMM 2012] CDN OPTIMAL Sub-second response 2.0x 1.0x to failures and joins QUANTITATIVE QUALITATIVE Room for improvement, but Internet latency / loss

  13. Outline Centralized Control Putting it all Problems with Hybrid Together Live Video Today Control Distributed Control

  14. Motivating Centralized Optimization ◀ Data Control ▶︎ Video 300 200 A B Sources 3K 2K 1K Reflector Link Capacity Clusters C D DNS 200 750 2K 300 Edge Clusters E F G 500 300 700 750 Clients H I J

  15. Motivating Centralized Optimization ◀ Data Control ▶︎ Video 300 200 A B Sources 3K 2K 1K Reflector Link Capacity Clusters C D Congestion! DNS 200 750 2K 300 Edge Clusters E F G 500 300 700 750 Clients 300 H I J

  16. Motivating Centralized Optimization ◀ Data Control ▶︎ Video 300 200 A B Sources 3K 2K 1K Reflector Link Capacity Clusters C D DNS 200 750 2K 300 Edge Clusters E F G 500 300 700 750 Clients 300 200 H I J

  17. Motivating Centralized Optimization ◀ Data Control ▶︎ Video 300 200 A B Sources 3K 2K 1K Needs global view to coordinate Reflector Link Capacity Clusters videos and network resources C D DNS 200 750 2K 300 Edge Clusters E F G 500 300 700 750 Clients 300 200 H I J

  18. Motivating Centralized Optimization ◀ Data Control ▶︎ Video 300 200 A B Sources 3K 2K 1K Reflector Link Capacity Clusters C D DNS 200 750 2K 300 Edge Clusters E F G 500 300 700 750 Clients 300 200 H I J

  19. Motivating Centralized Optimization ◀ Data Control ▶︎ Video 300 200 A B Sources 3K 2K 1K Reflector Link Capacity Clusters C D Central 200 750 2K 300 Controller Edge Clusters E F G 500 300 700 750 Clients 300 200 H I J

  20. Solving Centralized Optimization SERVICE QUALITY MAXIMIZE DELIVERY COST MINIMIZE DON’T EXCEED LINK CAPACITY SUBJECT TO SENDER MUST HAVE RECEIVED VIDEO

  21. Solving Centralized Optimization SERVICE QUALITY max w s · P max l ∈ L AS , o ∈ O Priority o · Request l , o · Serves l , o l ∈ L , o ∈ O Cost( l ) · Bitrate( o ) · Serves l , o w c · P − − P P DELIVERY COST subject to: · P · P · · − − l ∈ L , o ∈ O l , o ∈ subject to: subject to: ∀ l ∈ L , o ∈ O : Serves l , o ∈ { 0 , 1 } ∀ ∈ ∈ ∀ ∈ ∈ ∈ { } DON’T EXCEED LINK CAPACITY P : P o Bitrate( o ) · Serves l , o ≤ Capacity( l ) ∀ l ∈ L ∀ l ∈ L , o ∈ O : P l 0 ∈ InLinks( l ) Serves l 0 , o ≥ Serves l , o SENDER MUST HAVE RECEIVED VIDEO

  22. Flexibility of Centralized Optimization ◀ Data Control ▶︎ Video 800 A B Sources 1 1 1 2K 2K 2K Link Cost ? Reflector Clusters C D Link Capacity 1 1 Central 2K 1 1 2K Controller 2K 1K Edge Clusters E F G 1 10 1 1 800 1K 800 1K Clients 800 800 H I J

  23. Flexibility of Centralized Optimization ◀ Data Control ▶︎ Video 100 1 800 900 A B Sources 1 1 1 2K 2K 2K Link Cost Reflector Clusters C D Link Capacity 1 1 Central 2K 1 1 2K Controller Video Priority 2K 1K Edge Clusters E F G 1 10 1 1 800 1K 800 1K Clients 800 800 H I J 900

  24. Centralized Optimization Service Quality Delivery Cost (per request) 8000 Optimal 7000 CDN Avg. Bitrate (Kbps) CDN 2.0x 6000 5000 4000 OPTIMAL 3000 1.0x 2000 1000 0 2 4 6 8 10 # of Videos (Thousands) Simulation using Conviva traces, Simulation using Conviva traces, modeling large sports events modeling user-generated content

  25. Centralized Optimization Service Quality Delivery Cost (per request) 8000 VDN 7000 CDN Avg. Bitrate (Kbps) CDN 2.0x 6000 5000 4000 VDN 3000 1.0x 2000 1000 0 2 4 6 8 10 # of Videos (Thousands) Simulation using Conviva traces, Simulation using Conviva traces, modeling large sports events modeling user-generated content

  26. Unfortunately… No Free Lunch Light Load Med. Load Hvy. Load 25 Fully Centralized Join Time (Seconds) 20 15 10 5 Slow join times! 0 0 50 100 150 200 # of videos Experiments on EC2 nodes with a centralized controller at CMU across the Internet

  27. Problems with Centralization Legend ◀ Data Control ▶︎ Video Data Requests: 800 A B Sources Video 1 HIGH LATENCY Control Traffic: Video 1 Reflector Clusters C D HIGH LATENCY Central Controller Edge Clusters E F G The Internet Clients H I J

  28. Outline Slow join times Centralized Control Putting it all Problems with Hybrid Together Live Video Today Control Distributed Control

  29. Alternate Approach: Distributed Legend ◀ Data Control ▶︎ Video Data Requests: 800 A B Sources Video 1 1K 1K Responses: 3K 2K Video 1 Reflector Link Capacity Clusters C D Central 200 2K 800 800 Controller ? Edge Clusters E F G 500 300 700 750 Clients H I J 800

  30. Alternate Approach: Distributed Legend ◀ Data Control ▶︎ Video Data Requests: 800 A B Sources Video 1 1K 1K Responses: 3K 2K Video 1 Build “distance-to-video” tables Reflector Link Capacity Clusters C D at each cluster, for each video Central 200 2K 2K 800 Controller ? Edge Clusters E F G 500 300 700 750 Clients H I J 800

  31. Alternate Approach: Distributed Legend ◀ Data Control ▶︎ Video Data Requests: 800 A B Sources Video 1 1K 1K Responses: 3K 2K Video 1 1; (B, 2K) Reflector Link Capacity Clusters C D Central 200 2K 800 800 Controller ? Edge DISTANCE AT CLUSTER F Clusters VIDEO 1: E F G 500 300 700 750 Clients H I J 800

  32. Alternate Approach: Distributed Legend ◀ Data Control ▶︎ Video Data Requests: 800 A B Sources Video 1 1K 1K Responses: 3K 2K Video 1 1; (B, 2K) Reflector Link Capacity Clusters C D Central 200 2K 800 800 Controller ? Edge DISTANCE AT CLUSTER F Clusters VIDEO 1: VIA C: 2; (B, 1K) E F G 500 300 700 750 Clients PATH BOTTLENECK H I J # OF HOPS TO VIDEO 800

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