Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix...

51
Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February 10, 2020

Transcript of Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix...

Page 1: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Buffer sizing and Video QoE Measurements at NetflixBruce Spang, Brady Walsh, Te-Yuan Huang,Tom Rusnock, Joe Lawrence, Nick McKeown

February 10, 2020

Page 2: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

What are we talking about?

Page 3: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Server 1Server 2

Buffer

ISP

What are we talking about?

Page 4: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

How big should a buffer be?

Too big: packets wait for too long

Too small: too many packets thrown away

Page 5: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

“A buffer should be at least one BDP” [Villamizar, Song 1994]

Page 6: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

“A buffer should be at least one BDP” [Villamizar, Song 1994]BDP=Bandwidth x Delay

# of packets in a link for full utilization

Page 7: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

“A buffer should be at least one BDP” [Villamizar, Song 1994]

Time

Congestion Window

BDP=Bandwidth x Delay# of packets in a link for full utilization

Page 8: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

“A buffer should be at least one BDP” [Villamizar, Song 1994]

Time

Congestion Window

BDP + B

Loss happens when link and buffer are full

BDP=Bandwidth x Delay# of packets in a link for full utilization

Page 9: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

“A buffer should be at least one BDP” [Villamizar, Song 1994]

Time

Congestion Window

BDP + B

Loss happens when link and buffer are full

½(BDP + B)

TCP stops sending until ½(BDP+B) packets received

BDP=Bandwidth x Delay# of packets in a link for full utilization

Page 10: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

“A buffer should be at least one BDP” [Villamizar, Song 1994]

Time

Congestion Window

BDP + B

Loss happens when link and buffer are full

½(BDP + B)

TCP stops sending until ½(BDP+B) packets received

BDP=Bandwidth x Delay# of packets in a link for full utilization

} Buffer needs to hold this many packets

Page 11: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

How big should a buffer be?

BDP: Villamizar and Song 1994

BDP/√n: Appenzeller, McKeown, Keslassy 2004

O(n): Dhamdhere, Jiang, Dovrolis 2005

O(1): Enachescu, Ganjali, Goel, McKeown, Roughgarden 2006

Page 12: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Which is correct?

Page 13: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

It’s complicated

Page 14: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

1. TCP New Reno (mostly) behaves as expected

2. Video performance varies3. Real routers complicate this story

Page 15: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Our Experiment

Page 16: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Catalog servers

Uses spinning disks, cheaply stores entire catalog

Page 17: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Offload servers

Use SSDs to serve top ~30% of content faster

Page 18: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

These three racks are called a stack

Page 19: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February
Page 20: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Make this buffer small…

…and this one large

Page 21: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

1. TCP New Reno (mostly) behaves as expected

2. Video performance varies3. Real routers complicate this story

Page 22: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Large buffer has higher latency during congested hour

Page 23: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Sometimes the large buffer has much higher latency

Page 24: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Large buffer has lower loss during congested hour

Page 25: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

1. TCP New Reno (mostly) behaves as expected

2. Video performance varies3. Real routers complicate this story

Page 26: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Good buffer size:+ Fewer rebuffers+ Better video quality+ Videos start faster

Bad buffer size: - More rebuffers- Worse video quality- Videos start slower

Page 27: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Good buffer size:+ Fewer rebuffers+ Better video quality+ Videos start faster

Bad buffer size: - More rebuffers- Worse video quality- Videos start slower } This happens

when buffer is too large ortoo small.

Page 28: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Site #2: A smaller buffer is better

Reducing the buffer from 500MB to 25MB-15.6% decrease in sessions with a rebuffer-5.3% decrease in low quality video-13.5% decrease in play delay

Page 29: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Site #3: A smaller buffer is better

Reducing the buffer from 500MB to 50MB-22.1% decrease in sessions with a rebuffer-7.0% decrease in low quality video-14.8% decrease in play delay

Page 30: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Site #1: A smaller buffer is worse

Reducing the buffer from 500MB to 50MB+46.3% increase in sessions with a rebuffer+5.7% increase in low quality video-5.9% decrease in play delay

Page 31: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

1. TCP New Reno (mostly) behaves as expected

2. Video performance varies3. Real routers complicate this story

Page 32: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Large buffer has higher latency during congested hour

Page 33: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Remember how the large buffer has much higher latency…

Page 34: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Servers have different very latency distributions

Min RTT (ms)

Page 35: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February
Page 36: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Server 1Server 2

Buffer

ISP

What I imagined

Page 37: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Server 1Server 2

Buffer

ISP

What I imagined

LIES!

Page 38: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Line card #1Line card #2Line card #3Line card #4

Page 39: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

VOQ #1 VOQ #2VOQ #3 VOQ #4VOQ #5 VOQ #6VOQ #7 VOQ #8

Page 40: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Buffer architecture

Server #1

Server #2

“Offload” VOQ

“Catalog” VOQ ISP100Gbps

2/3

1/3Server #3

Page 41: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Traffic is fairly split when load is equal

40 Gbps

40 Gbps

“Offload” VOQ

“Catalog” VOQ ISP100Gbps

67 Gbps

33 Gbps40 Gbps

Page 42: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

When one VOQ offers less than its fair share, it sees no congestion

50 Gbps

50 Gbps

“Offload” VOQ

“Catalog” VOQ ISP100Gbps

90 Gbps

10 Gbps10 Gbps No delay!

Page 43: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

VOQs explain the RTT differences

Min RTT (ms)

This VOQ is served faster

This VOQ is served slower

This VOQ is all over the place

Page 44: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Switches prioritize long-tail content

Page 45: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Switches prioritize long-tail content

Same latency during uncongested hours

Page 46: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Switches prioritize long-tail content

Same latency during uncongested hours

Popular content is congested

Long-tail content not congested

Page 47: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

New scheduling algorithm!

Server #1

Server #2

“Offload” VOQ

“Catalog” VOQ ISP100Gbps

Load-dependent

Load-dependentServer #3

Page 48: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Default schedulingalgorithm

New schedulingalgorithm is more

consistent

Page 49: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

1. TCP New Reno (mostly) behaves as expected

2. Video performance varies3. Real routers complicate this story

Page 50: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

How big should a buffer be?

Page 51: Buffer sizing and Video · 2020. 2. 10. · Buffer sizing and Video QoE Measurements at Netflix Bruce Spang, Brady Walsh, Te-Yuan Huang, Tom Rusnock, Joe Lawrence, Nick McKeown February

Thanks!For more details, please see: https://brucespang.com/papers/netflix-buffer-sizing.pdf