bringing internet video to prime timenetseminar.stanford.edu/past_seminars/seminars/02_16_12.pdf ·...

Post on 12-Aug-2020

1 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Bringing Internet Video to Prime Time Ion Stoica UC Berkeley / Conviva February 16, 2012

Background: Conviva !   Co-founded with Hui Zhang (CMU) in fall, 2006

!   Conviva optimizes video quality for premium content properties !   E.g., HBO, ESPN, ABC, Disney, and Turner

! Conviva's powered some of the world's largest on-line events !   E.g., Olympics, FIFA World Cup, NCAA College Basketball March

Madness, Major League Baseball, and Academy Awards.

Internet Video Ecosystem : Video Data-plane

Video  Source  

Encoders  &  Video  Servers  

CMS  and  Hos4ng   Content  Delivery  

Networks  (CDN)  

ISP  &  Home  Net  

Screen  

Video  Player    

Key  components:  Video  Player  &  CDN                                                                    

Trends

Trend: CDN Pricing

!   CDN pricing has decreased x1.5-2 every year for the last 6 years

0  

5  

10  

15  

20  

25  

30  

35  

40  

45  

2006   2007   2008   2009   2010   2011  

cents/GB

 

Trend: Bitrate for Premium Content

!   Average bitrate has increased 20-40% every year

0  200  400  600  800  1000  1200  1400  1600  1800  

2006   2007   2008   2009   2010   2011  

Kbps  

Trend: Per-hour Streaming Cost

!   Per-hour streaming cost has decreased 15-30% every year

0  1  2  3  4  5  6  7  8  9  10  

2006   2007   2008   2009   2010   2011  

cents/ho

ur  

HTTP Chunking

!   Trends fueled by switching from proprietary streaming technologies (e.g., Adobe’s FMS) to HTTP chunking !   Move Networks (2005)

!   Apple (2008)

!   Microsoft (2009)

!   Adobe (2011)

How does HTTP Chunking Work?

Client  A  

CDN1  

Client  B  

CDN2  

ISP  A   ISP  B  

Client  C  

…  origin  

hUp  cache  

Why HTTP Chunking?

!   Scale: more HTTP caches/servers than streaming servers

!   Cost: HTTP servers cheaper than proprietary streaming protocol

!   Reachability: HTTP traffic penetrates enterprises firewalls easier than proprietary streaming protocols

!   High bitrate: can use multiple TCP connections to download subsequent chunks in parallel

What Does this Mean?

!   Ad supported premium content !   CPM (cost per thousand of ad impressions): $20-$40

!   One ad covers one hour of streaming!

!   Paid content !   $0.99 episode, distribution cost < 2%

!   Subscription based premium content !   It costs less than $1/month to stream content to an user watching 2

hour per day

!   Production & rights dominate!

Quality Matters

We’ve seen patterns across many sites … and billions of streams

Video Player Monitoring : Player Model

Stopped/

Exit

Player

States Joining Playing Buffering Playing

Network/

stream

connection

established

Video

buffer

filled upVideo

buffer

empty

Buffer

replenished

sufficiently

time

User

action

Events

Player

Monitoring

Video download rate,

Available bandwidth,

Dropped frames,

Frame rendering rate, etc.

JoinTime  (JT)  BufferingRa2o(BR)  RateOfBuffering(RB)    

AvgBitrate(AB)  

RenderingQuality(RQ)  

Video Player Monitoring : Data Collection

       

Automa/c  Monitoring  

•  Automa4c  and  consistent  monitoring  of  default  streaming  modules  –  Flash:  NetStream,  VideoElement  –  Silverlight:  MediaElement,  SmoothStreamingMediaElement  –  iOS:  MPMoviePlayerController  

Streaming  Module  

UI  Controller  

Content  Manager  

Messaging  &  Serializa/on  

Player  Insight  

To  backend  

HTTPS  

Player  App

lica4

on  

Empirical Study [Sigcomm’11]

!   Goal: impact of quality on engagement (play time)

!   A week of data from multiple premium video sites

!   There genres: Live, Long VoD (LVoD), Short VoD

!   Five quality metrics: !   Buffering Ratio (BR)

!   Rate of Buffering (RB)

!   Join/Start Time (JT)

!   Rendering Quality (RQ)

!   Average Bit rate (AR)

!   Two granularities: view/viewers

Highlight of Results [Sigcomm’11]

!   Quality has substantial impact on engagement

!   Buffering ratio is most critical across genres !   Highest impact for live: 1% of buffering reduced play time by 3min

!   Bitrate more important for live than VoD

!   Join time impact engagement at viewer level but less at view level

LVoD at View Level [Sigcomm’11]

Buffering ratio correlates with engagement the most

LVoD vs. Live [Sigcomm’11]

Buffering Ratio remains most significant, but Bitrate and Rate of Buffering bigger impact

Live LVoD

Engagement vs. Buffering Ratio [Sigcomm’11]

!

!

!

!

!

!

!

!

!

!

!!

!!

!!!

!!!!!!!!

!!

!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

0 20 40 60 80 100

010

2030

40

Buffering ratio (%)

Play

time (

min)

Correlation coefficient (kendall): −0.96, slope: −3.25

1% increase in buffering reduces engagement by 3 min

Engagement vs. Join Time: Viewer Level [Sigcomm’11]

0 10 20 30 40 50 60 70Join time (s)

0

10

20

30

40

50

60

Tota

lpla

ytim

e(m

in)

Correlation coefficient (kendall): -0.74

Join time critical for user retention

What about Rendering Quality? [Sigcomm’11]

0

5

10

15

20

25

30

35

40

45

50

0 10 20 30 40 50 60 70 80 90 100

Pla

y T

ime (

min

)

Rendering Quality (%)

0

5

10

15

20

25

30

35

40

45

50

0 10 20 30 40 50 60 70 80 90 100P

lay

Tim

e (

min

)Rendering Quality (%)

Live LVoD

Why doesn’t play time correlate with rendering quality for Live?

Example Video Site Quality Summary

!   31.68% of views had quality issues

!   32.2% of viewers had recurring quality issues

!   Viewers with good quality watched 1.5X more video than viewers with poor quality

!   Good video quality for all viewers can add 10.9% more minutes of viewed video

!   Good video quality can add $120K more revenue per month*

68.3  

25.3  

5.7  0.68  

Total  Views  

!!"#$%&!'()%*+!

!"video  did  not  start  

video  buffered  

video  had  low  resolu4on    

video  had  good  quality    

100.9  

62.2  

0   20   40   60   80   100   120  

Minutes  per  Viewer  

Poor  Quality  Viewers   Good  Quality  Viewers  

*  Assumes  $30  CPM  ad  every  8  minutes  

Total  Views  =  66,447,919  Total  Viewers  =  3,291,204  Total  Minutes  Viewed    =  290,260,395  

67.8  

32.2  

Example Video Site Quality Summary

!   31.68% of views had quality issues

!   32.2% of viewers had recurring quality issues

!   Viewers with good quality watched 1.5X more video than viewers with poor quality

!   Good video quality for all viewers can add 10.9% more minutes of viewed video

!   Good video quality can add $120K more revenue per month*

68.3  

25.3  

5.7  0.68  

Total  Views  

!!"#$%&!'()%*+!

!"video  did  not  start  

video  buffered  

video  had  low  resolu4on    

video  had  good  quality    

100.9  

62.2  

0   20   40   60   80   100   120  

Minutes  per  Viewer  

Poor  Quality  Viewers   Good  Quality  Viewers  

*  Assumes  $30  CPM  ad  every  8  minutes  

Total  Views  =  66,44,79,19  Total  Viewers  =  3,291,204  Total  Minutes  Viewed    =  290,260,395  

0  

10  

20  

30  

40  

50  

1   2   3   4   5   6   7   8   9  Poor  experience  on  9  different  sites  

Viewers Return More When Video Is Not Interrupted by Buffering

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    

CDN Performance Varies Widely

CDNs Vary in Performance over Geographies and Time

•  Used  one  month  aggregated  data-­‐set  

•  Considered  31,744  DMA-­‐ASN-­‐hours  with  >  100  views  in  each  CDN  

25%  

50%  

25%  

There is no single best CDN across geographies, network, and time

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

 (Hagerstow

n):CMCS(33657)  

Milw

aukee:RO

ADRU

NNER

-­‐CEN

TRAL(20231)  

Green  Ba

y  -­‐  A

ppleton:SCRR

-­‐7015(7017)  

Denver:ASN

-­‐QWEST(20

9)  

CharloUe

:SCR

R-­‐11426(11426)  

Washington  DC

 (Hagerstow

n):ASN

-­‐CXA

-­‐ALL-­‐CCI-­‐22773-­‐

Philade

lphia:VZ

GNI-­‐T

RANSIT(19262)  

San  Diego:SBIS-­‐AS(7132)  

Las  V

egas:ASN

-­‐CXA

-­‐LV-­‐13432-­‐CB

S(13432)  

Madiso

n:CH

ARTER-­‐NET-­‐HKY-­‐NC(20115)  

Indianapolis:SBIS-­‐AS(7132)  

Providen

ce  -­‐  New

 Bed

ford:ASN

-­‐CXA

-­‐ALL-­‐CCI-­‐22773-­‐RDC

Washington  DC

 (Hagerstow

n):VZG

NI-­‐T

RANSIT(19262)  

Harnord  &  New

 Haven

:SBIS-­‐AS

(7132)  

Houston:SBIS-­‐AS(7132)  

Grand  Ra

pids  -­‐  Kalamazoo

 -­‐  Ba

Ule  Creek:SBIS-­‐AS(7132)  

Atlanta:BE

LLSO

UTH

-­‐NET-­‐BLK(6389)  

Hono

lulu:HAW

AIIAN-­‐TELCO

M(36149)  

Atlanta:CO

MCA

ST-­‐7725(7725)  

Washington  DC

 (Hagerstow

n):SPC

S(10507)  

Orla

ndo  -­‐  D

aytona  Beach  -­‐  Melbo

urne

:EMBA

RQ-­‐W

NPK

Denver:CMCS(33652)  

Norfolk  -­‐  Po

rtsm

outh  -­‐  New

port  New

s:AS

N-­‐CXA

-­‐ALL-­‐

Saint  Lou

is:CH

ARTER-­‐NET-­‐HKY-­‐NC(20115)  

Cincinna4:FU

SE-­‐NET(6181)  

Phoe

nix:AS

N-­‐QWEST(209)  

Dallas  -­‐  Fort  W

orth:VZG

NI-­‐T

RANSIT(19262)  

PiUs

burgh:CC

CH-­‐3(7016)  

Saint  Lou

is:SBIS-­‐AS(7132)  

San  Francisco  -­‐  O

akland

 -­‐  San  Jose:SBIS-­‐AS

(7132)  

San  Diego:RO

ADRU

NNER

-­‐WEST(20001)  

Greenville  -­‐  Spartansburg  -­‐  A

sheville  -­‐  

Kansas  City

:SBIS-­‐AS

(7132)  

Columbu

s  -­‐  OH:SCRR

-­‐10796(10796)  

Louisville:INSIGH

T-­‐CO

MMUNICAT

IONS-­‐CO

RP-­‐AS1(36727)  

Chicago:AT

T-­‐INTERN

ET3(6478)  

Kansas  City

:ASN

-­‐CXA

-­‐ALL-­‐CCI-­‐22773-­‐RDC

(22773)  

Miami  -­‐  Fort  Laude

rdale:BE

LLSO

UTH

-­‐NET-­‐BLK(6389)  

Cleveland:NEO

-­‐RR-­‐CO

M(11060)  

Chicago:VZ

GNI-­‐T

RANSIT(19262)  

Columbia  -­‐  SC:SCRR

-­‐11426(11426)  

Dallas  -­‐  Fort  W

orth:SBIS-­‐AS

(7132)  

Detroit:S

BIS-­‐AS

(7132)  

Kansas  City

:SCR

R-­‐11955(11955)  

Los  A

ngeles:CHA

RTER

-­‐NET-­‐HKY-­‐NC(20115)  

Miami  -­‐  Fort  Laude

rdale:CO

MCA

ST-­‐20214(20214)  

Cleveland:SCRR

-­‐10796(10796)  

West  P

alm  Beach  -­‐  Fort  Pierce:CO

MCA

ST-­‐20214(20214)  

San  Diego:AS

N-­‐CXA

-­‐ALL-­‐CCI-­‐22773-­‐RDC

(22773)  

SeaU

le  -­‐  Tacoma:AS

N-­‐QWEST(209)  

New

 York:CA

BLE-­‐NET-­‐1(6128)  

Portland

 -­‐  OR:AS

N-­‐QWEST(209)  

Oklahom

a  City:SBIS-­‐AS

(7132)  

Phoe

nix:AS

N-­‐CXA

-­‐ALL-­‐CCI-­‐22773-­‐RDC

(22773)  

Chicago:SBIS-­‐AS(7132)  

Greensbo

ro  -­‐  High  Point  -­‐  Winston

-­‐Salem

:SCR

R-­‐11426

Albany  -­‐  Sche

nectady  -­‐  T

roy:RR

-­‐NYSRE

GION-­‐ASN

-­‐01

Tyler  -­‐  Lon

gview  (Luq

in  &  Nacogdo

ches):S

UDD

ENLINK-­‐

Grand  Ra

pids  -­‐  Kalamazoo

 -­‐  Ba

Ule  Creek:CM

CS(33668)  

Houston:CM

CS(33662)  

Harnord  &  New

 Haven

:COMCA

ST-­‐7015(7015)  

Eugene

:ASN

-­‐QWEST(209)  

San  Francisco  -­‐  O

akland

 -­‐  San  Jose:CMCS(33651)  

CDN Streaming Failures Are Common Events

Opportunities for Improving Quality

Refresh: What is high quality?

!   Prevent startup failures

!   Start the video quickly

!   Play the video smoothly and without interruptions

!   Play the video at the highest bit rate possible

Possible Actions to Improve Quality

!   Switch bitrate ↓  Buffering, high frame drops, high start time, … ↑  High available bandwidth, …

!   Switch CDN ↔ Connection error, missing content, buffering on low bitrate, ...

!   Typically two categories of actions !   Start time selection !   Midstream switching

Potential Improvement Example: CDN Switching Only

!   Partition clients by (ASN, DMA, CDN) !   DMA: Designated Market Area

Potential Improvement Example: CDN Switching Only

!   Partition clients by (ASN, DMA, CDN) !   DMA: Designated Market Area

!   For each partition compute: !   Buffering ratio !   Start time !   Failure ratio !   ….

Akamai  (buffering  ra,o)  

DMA  

ASN  

Level3  (buffering  ra,o)  

DMA  

ASN  

Potential Improvement Example: CDN Switching Only

!   Oracle: !   For each partition select best CDN and

assume all clients in same partition selected that CDN

Akamai  (buffering  ra,o)  

DMA  

ASN  

Level3  (buffering  ra,o)  

DMA  

ASN  

Potential Improvement Example: CDN Switching Only

!   Oracle: !   For each partition select best CDN and

assume all clients in same partition selected that CDN

!   Essentially, pick partition with best quality across CDNs Akamai  (buffering  ra,o)  

DMA  

ASN  

Level3  (buffering  ra,o)  

DMA  

ASN  

Best  CDN  (buffering  ra,o)  

DMA  

ASN  

Potential Improvement Example: CDN Switching Only

!   Oracle: !   For each partition select best CDN and

assume all clients in same partition selected that CDN

!   Essentially, pick partition with best quality across CDNs

!   Historical: !   For each partition select best CDN in

previous epoch, and assign clients to that CDN in next epoch

Akamai  (buffering  ra,o)  

DMA  

ASN  

Level3  (buffering  ra,o)  

DMA  

ASN  

Potential Improvement Example: CDN Switching Only

!   Details !   If a partition has not enough clients

use a larger partition

?  

Akamai  (buffering  ra,o)  

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 Akamai  (buffering  ra,o)  

DMA  

ASN  

Level3  (buffering  ra,o)  

DMA  

ASN  

Potential Improvements: Oracle

!   Customer1: large UGV site !   Customer2: large 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

Customer1: Start-time vs. Midstream CDN Switching

78%  

84%  

90%  

Customer1: Oracle vs. Historical

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0 5 10 15 20

Ave

rage b

uffering r

atio

Epoch (hour)

CurrentOracle

Use previous epoch

A Possible Architecture for Delivering High Quality Video Over the Internet

Three Concepts for High Quality Video Delivery

!   Continuous measurement and optimization !   Multi-bit rate streams delivered using multiple CDNs !   Optimization algorithms based on

!   individual client, and

!   aggregate statistics at multiple time scales

Possible Optimization Architecture

Real-­‐4me  Alerts  

Con4nuous  real-­‐4me  measurements  from  every  client  

Real-­‐4me  and  historical  Insights  

Real-­‐4me  global  op4miza4ons  

Inference  Engine  

Bit  Rates  

CDNs  

Decision  Engine  

Op4mize  viewer  performance  by  selec4ng  the  best  op4on  within  the  set  of  bit  rates  and  CDNs  

Akamai  

DMA  

ASN  

DMA  

ASN  DMA  

ASN  

Limelight  

Level3   Time  of  day  

Localize  issues  by  region,  network,  CDN,  and  4me  

Real-­‐4me  Global  Data  Aggrega4on  and  

Correla4on  (Streaming  Map-­‐reduce)  

Historical  Data  Aggrega4on  and  Analysis  

(Hadoop+Hive+Spark)  Global  Inference,  Decision  &  Policy  

Engine  

Example: Local vs. Global Optimization

0  

20  

40  

60  

80  

100  

0   2000   4000   6000   8000   10000   12000   14000   16000   18000   20000  

Band

width  Fluctua4o

n    

Peak  Concurrent  Viewers  

Bandwidth  fluctua4on  =  (Max  Bandwidth  –  Min  Bandwidth)/(Average  Bitrate)  

Example: Local vs. Global Optimization

Akamai   DMA  

ASN  

DMA  

ASN  

DMA  

ASN  

Limelight  

Level3  

0  

20  

40  

60  

80  

100  

0   2000   4000   6000   8000   10000   12000   14000   16000   18000   20000  

Band

width  Fluctua4o

n  

Peak  Concurrent  Viewers  

0  

10  

20  

30  

40  

0   5000   10000   15000   20000   25000   30000   35000  

Band

width  Fluctua4o

n  

Peak  Concurrent  Viewers  

ASN/DMA  saturated  on  all  CDNs      Don’t  switch  CDN;  reduce  bitrates,  instead  

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  

Concluding Remarks

!   We are in the middle of a key transition of main-stream video to the Internet

!   Video quality presents opportunity and challenge !   Follow the traffic: 60% Internet traffic today, will be more than 95% in the

next 2-3 years !   Premium video on big screens zero tolerance for poor quality

!   Video player continuous monitoring and global optimization has

the best chance of delivering high quality video

top related