A Case for a Coordinated Video Control Plane Xi Liu, Florin - - PowerPoint PPT Presentation
A Case for a Coordinated Video Control Plane Xi Liu, Florin - - PowerPoint PPT Presentation
A Case for a Coordinated Video Control Plane Xi Liu, Florin Dobrian, Henry Milner, Junchen Jiang, Vyas Sekar, Ion Stoica , Hui Zhang (Conviva, CMU, Intel, and UC Berkeley) Video Is Dominating the Internet Traffic Netflix traffic alone exceeds
Video Is Dominating the Internet Traffic
Netflix traffic alone exceeds 20% of US traffic1 2011’s Cisco Visual Networking Index2
2011: video represents 51% of the Internet traffic 2016: all types of video will represent 86% of the Internet traffic
The Internet is becoming a Video Network
2http://web.cs.wpi.edu/~claypool/mmsys-2011/Keynote02.pdf 1http://blogs.cisco.com/sp/comments/cisco\_visual\_networking\_index\_forecast\_annual\_update
Video Ecosystem: Data-Plane
Video Source Encoders & Video Servers CMS and Hosting Content Delivery Networks (CDNs) ISP & Home Net Screen Video Player
Video Quality Matters [Sigcomm’11]
Quality has substantial impact on viewer engagement
Need to ensure uninterrupted streaming at high bitrates
Buffering ratio is most critical across video traffic types
Highest impact for live: 1% of buffering reduced play time by 3min 1% increase in buffering can lead to more than 60% loss in audience over one month
Our Argument
CDN performance varies widely in time, geography, and ISPs Opportunity for significantly improving video Quality by selecting best CDN (and bitrate) for each viewer Hence, we argue for a logically centralized control plane to dynamically select CDN and bitrate Assumptions:
- Content is encoded at multiple bitrates
- Content is delivered by multiple CDNs
How do We Collect Data?
Streaming Module UI Controller Content Manager Messaging & Serialization
To backend HTTPS
Automatic Monitoring Player Insight
Player Application
Automatic and continuous monitoring of video player
Flash: NetStream, VideoElement Silverlight: MediaElement, SmoothStreamMediaElement iOS: MPMoviePlayerElement
What Traffic do We See?
Close to two billions streams per month Mostly premium content providers (e.g., HBO, ESPN, Disney) but also User Generated Video sites (e.g., Ustream) Live events (e.g., NCAA March Madness, FIFA World Cup, MLB), short VoDs (e.g., MSNBC), and long VoDs (e.g., HBO, Hulu) Various streaming protocols (e.g., Flash, SmoothStreaming, HLS), and devices (e.g., PC, iOS devices, Roku, XBOX, …) Traffic from all major CDNs, including ISP CDNs (e.g., Verizon, AT&T)
CDN Performance Varies Widely
CDNs Vary in Performance over Geographies and Time
There is no single best CDN across geographies, network, and time
25% 50% 25%
CDN 1 CDN 2 CDN 3
- Metric: buffering ratio
- One month aggregated data-set
– Multiple Flash (RTMP) customers – Three major CDNs
- 31,744 DMA-ASN-hour with > 100
streams from each CDN
– DMA: Designated Market Area
- Percentage of DMA-ASN-hour
partitions a CDN has lowest buffering ratio
Washington DC (Hagerstown): ASN-CXA-ALL
10% 20% 100% 30% 40% 50% 60% 70% 80% 90%
Washington, DC viewer experience differed greatly…
Comcast viewers got the best streams from CDN 1 51% of the time and only 9% from CDN 2 Washington DC (Hagerstown): VZGNI-TRANSIT (19262) Verizon users got the best streams from CDN 1 only 17% of the time and 77% from CDN 2
There is no single best CDN in the same geographic region or over time
CDN Streaming Failures Are Common Events
% of stream failures: % of streams that failed to start Three months dataset (May-July, 2011) for a premium customer using Flash
CDN Streaming Failures Are Common Events
% of stream failures: % of streams that failed to start Three months dataset (May-July, 2011) for a premium customer using Flash
CDN Streaming Failures Are Common Events
% of stream failures: % of streams that failed to start Three months dataset (May-July, 2011) for a premium customer using Flash
CDN Streaming Failures Are Common Events
% of stream failures: % of streams that failed to start Three months dataset (May-July, 2011) for a premium customer using Flash
CDN Streaming Failures Are Common Events
% of stream failures: % of streams that failed to start Three months dataset (May-July, 2011) for a premium customer using Flash
CDN Streaming Failures Are Common Events
% of stream failures: % of streams that failed to start Three months dataset (May-July, 2011) for a premium customer using Flash CDN (relative) performance varies greatly over time
Opportunities for Improving Quality
Possible Actions to Improve Quality
Switch the bitrate
↓ Buffering, high frame drops, high start time, … ↑ High available bandwidth, …
Switch the CDN
↔ Connection error, missing content, buffering on low bitrate, ...
When to perform switching/selection?
Start time selection only Start time selection & midstream switching
Potential Improvement Example: CDN Switching Only
For each CDN partition clients by (ASN, DMA)
DMA: Designated Market Area
Potential Improvement Example: CDN Switching Only
For each CDN partition clients by (ASN, DMA)
DMA: Designated Market Area
For each partition compute:
Buffering ratio Failure ratio Start time ….
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN
Potential Improvement Example: CDN Switching Only
For each CDN partition clients by (ASN, DMA)
DMA: Designated Market Area
For each partition compute:
Buffering ratio Failure ratio Start time ….
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN
- Avg. buff ratio of users in
ASN[1]xDMA[1] streaming from CDN1
Potential Improvement Example: CDN Switching Only
For each CDN partition clients by (ASN, DMA)
DMA: Designated Market Area
For each partition compute:
Buffering ratio Failure ratio Start time ….
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN
- Avg. buff ratio of users in
ASN[1]xDMA[1] streaming from CDN1
- Avg. buff ratio of users in
ASN[1]xDMA[1] streaming from CDN2
Potential Improvement Example: CDN Switching Only
For each partition select best CDN and assume all clients in the partition selected that CDN
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN
Potential Improvement Example: CDN Switching Only
For each partition select best CDN and assume all clients in the partition selected that CDN
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN CDN1 >> CDN2
Potential Improvement Example: CDN Switching Only
For each partition select best CDN and assume all clients in the partition selected that CDN
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN
Potential Improvement Example: CDN Switching Only
For each partition select best CDN and assume all clients in the partition selected that CDN Essentially, pick partition with best quality across CDNs
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN Best CDN (buffering ratio) DMA ASN
Potential Improvements
Provider1: large UGV (User Generated Video) site Provider2: large premium VoD content provider Base-line: existing assignment of viewers (clients) to CDNs
Metric Provider1 (UGV) Provider2 (Premium) Base line Start- time Selectio n Mid- stream Switching Base line Start- time Selection Mid- stream Switching Buffering ratio (%) 6.8 2.5 1 1 0.3 0.1
Between x2.7 and x10 improvement in buffering ratio
Coordinated Control Plane for High Quality Video Delivery
Video Control Plane Architecture
Coordinator implementing a global optimization algorithm that dynamically select CDN & bitrate for each client based on
Individual client Aggregate statistics Content owner policies (CDN/ISP info)
Content owners (CMS & Origin)
CDN 1 CDN 2 CDN 3
Clients
Coordinator
Continuous measurements Business Policies control
Example: Local vs. Global Optimization
20 40 60 80 100
2000 4000 6000 8000 10000 12000 14000 16000 18000 20000
Bandwidth Fluctuation (%) Concurrent Viewers
Bandwidth fluctuation = (Max Bandwidth – Min Bandwidth)/(Average Bitrate)
Example: Local vs. Global Optimization
CDN1 DMA ASN DMA ASN DMA ASN CDN2 CDN3
20 40 60 80 100
2000 4000 6000 8000 10000 12000 14000 16000 18000 20000
Bandwidth Fluctuation (%) Concurrent Viewers
10 20 30 40
5000 10000 15000 20000 25000 30000 35000
Bandwidth Fluctuation (%) Concurrent Viewers
ASN/DMA saturated on all CDNs Don’t switch CDN; cap bitrates, instead
Concluding Remarks (I)
Key transition of main-stream video to the Internet Video quality presents opportunity and challenge
Premium video on big screens zero tolerance for poor quality
Video player continuous monitoring and global optimization has best chance of delivering high quality video Many challenges remain, e.g.,
Scalability How do multiple coordinators interact? …
Concluding Remarks (II)
The video traffic dominance in the Internet is growing
Over 51% Internet traffic today, will be more than 86% in the next 4 years
The Internet is becoming a Video Network Managing video delivery and maximizing video quality must be at the core of any future Internet architecture!
Backup Slides
Conviva Optimization in the Wild
… increased average bit-rate from 1.7 Mbps to 2.1 Mbps… Reduced views impacted by buffering from 16.13% to 5.56% … … and raised engagement by 36%
0,00% 5,00% 10,00% 15,00% 20,00% 25,00% 1600 1700 1800 1900 2000 2100 2200
Views Impacted by Buffering Average Bit Rate
Possible Coordinator Architecture
Continuous real-time measurements from every client
Inference Engine
Bit Rates CDNs
Decision Engine
Optimize viewer performance by selecting the best
- ption within the set
- f bit rates and
CDNs
Akamai
DMA ASN DMA ASN DMA ASN
Limelight Level3
Time
- f
day Localize issues by region, network, CDN, and time Real-time Global Data Aggregation and Correlation Historical Data Aggregation and Analysis
Global Inference, Decision & Policy Engine Real-time global
- ptimizations
Conviva Services Enhance the Viewer Experience and Lift Engagement by Lifting Bit Rate and Reducing Buffering
Increased average bit-rate from 1.6 Mbps to 2.1 Mbps …
1.5% 1.0% 0.5%
DMS LAUNCH EMS LAUNCH
… reduced buffering ratio from 1.5% to 0.5% … and raised engagement by 36%
Potential Improvements
Customer1: large UGV site Customer2: large premium content provider Note: * denotes improvements when using mid-stream switching Metric Customer1 Customer2 Current Projected Current Projected Buffering ratio (%) 6.8 2.5 / 1* 1 0.3 / 0.1* Start time (s) 6.41 2.91 1.36 0.9 Failure ratio (%) 16.57 2.4 1.1 0.7
Between x2.7 and x10 improvement in buffering ratio
Video Quality Matters [Sigcomm’11]
Quality has substantial impact on viewer engagement
Need to ensure uninterrupted streaming at high bitrates
Buffering ratio is most critical across genres
Highest impact for live: 1% of buffering reduced play time by 3min 1% increase in buffering leads to more than 60% loss in audience
1% difference in buffering between two ISPs 68% monthly loss in uniques for ISP with poor performance
Customer1: Start-time vs. Midstream CDN Switching
78% 84% 90%
Provider1: Oracle vs. Historical
Base-line Oracle Historic
Potential Improvement Example: CDN Switching Only
Oracle:
For each partition select best CDN and assume all clients in the partition selected that CDN Essentially, pick partition with best quality across CDNs
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN Best CDN (buffering ratio) DMA ASN
Potential Improvement Example: CDN Switching Only
Details
If a partition has not enough clients use a larger partition ?
CDN1 (buffering ratio) DMA ASN
Potential Improvement Example: CDN Switching Only
Details
If a partition has not enough clients use a larger partition Use quality metric distribution to predict quality of a client on new CDN
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN
CDNs Vary in Performance over Geographies and Time
0,0% 10,0% 20,0% 30,0% 40,0% 50,0% 60,0% 70,0% 80,0% 90,0% 100,0%
Washington DC (Hagerstown):CMCS(33657) Milwaukee:ROADRUNNER-CENTRAL(20231) Green Bay - Appleton:SCRR-7015(7017) Denver:ASN-QWEST(209) Charlotte:SCRR-11426(11426) Washington DC (Hagerstown):ASN-CXA-ALL-CCI-22773-… Philadelphia:VZGNI-TRANSIT(19262) San Diego:SBIS-AS(7132) Las Vegas:ASN-CXA-LV-13432-CBS(13432) Madison:CHARTER-NET-HKY-NC(20115) Indianapolis:SBIS-AS(7132) Providence - New Bedford:ASN-CXA-ALL-CCI-22773-… Washington DC (Hagerstown):VZGNI-TRANSIT(19262) Hartford & New Haven:SBIS-AS(7132) Houston:SBIS-AS(7132) Grand Rapids - Kalamazoo - Battle Creek:SBIS-AS(7132) Atlanta:BELLSOUTH-NET-BLK(6389) Honolulu:HAWAIIAN-TELCOM(36149) Atlanta:COMCAST-7725(7725) Washington DC (Hagerstown):SPCS(10507) Orlando - Daytona Beach - Melbourne:EMBARQ-… Denver:CMCS(33652) Norfolk - Portsmouth - Newport News:ASN-CXA-ALL-CCI-… Saint Louis:CHARTER-NET-HKY-NC(20115) Cincinnati:FUSE-NET(6181) Phoenix:ASN-QWEST(209) Dallas - Fort Worth:VZGNI-TRANSIT(19262) Pittsburgh:CCCH-3(7016) Saint Louis:SBIS-AS(7132) San Francisco - Oakland - San Jose:SBIS-AS(7132) San Diego:ROADRUNNER-WEST(20001) Greenville - Spartansburg - Asheville -… Kansas City:SBIS-AS(7132) Columbus - OH:SCRR-10796(10796) Louisville:INSIGHT-COMMUNICATIONS-CORP-AS1(36727) Chicago:ATT-INTERNET3(6478) Kansas City:ASN-CXA-ALL-CCI-22773-RDC(22773) Miami - Fort Lauderdale:BELLSOUTH-NET-BLK(6389) Cleveland:NEO-RR-COM(11060) Chicago:VZGNI-TRANSIT(19262) Columbia - SC:SCRR-11426(11426) Dallas - Fort Worth:SBIS-AS(7132) Detroit:SBIS-AS(7132) Kansas City:SCRR-11955(11955) Los Angeles:CHARTER-NET-HKY-NC(20115) Miami - Fort Lauderdale:COMCAST-20214(20214) Cleveland:SCRR-10796(10796) West Palm Beach - Fort Pierce:COMCAST-20214(20214) San Diego:ASN-CXA-ALL-CCI-22773-RDC(22773) Seattle - Tacoma:ASN-QWEST(209) New York:CABLE-NET-1(6128) Portland - OR:ASN-QWEST(209) Oklahoma City:SBIS-AS(7132) Phoenix:ASN-CXA-ALL-CCI-22773-RDC(22773) Chicago:SBIS-AS(7132) Greensboro - High Point - Winston-Salem:SCRR-… Albany - Schenectady - Troy:RR-NYSREGION-ASN-01(11351) Tyler - Longview (Lufkin & Nacogdoches):SUDDENLINK-… Grand Rapids - Kalamazoo - Battle Creek:CMCS(33668) Houston:CMCS(33662) Hartford & New Haven:COMCAST-7015(7015) Eugene:ASN-QWEST(209) San Francisco - Oakland - San Jose:CMCS(33651)
Potential Improvement Example: CDN Switching Only
Oracle:
For each partition select best CDN and assume all clients in the partition selected that CDN
Historical:
For each partition select best CDN in previous epoch, and assign clients to that CDN in next epoch
CDN1 (buffering ratio) DMA ASN CDN2 (buffering ratio) DMA ASN