Compira co-founder Michael Schapira's presentation about next generation congestion control for improved Quality of Experience, at the Streaming Video Alliance Meeting. He talks about why TCP is suboptimal, and various newer forms of congestion control such as Google's BBR and PCC.
Scaling API-first – The story of a global engineering organization
Improving QoE via Next-Generation Congestion Control
1. Lisbon, November 2019N&T WG
Improving QoE via
Next-Generation Congestion
Control
Michael Schapira
Co-Founder and Chief Scientist, Compira Labs
Professor of CS, Hebrew University
3. Why? The last mile network!
The provider’s
network/CDN/cloud
CDN edge nodes,
Video caches
The “Last Mile”
(ISP, cellular, WiFi, …)
Excessive delays, Insufficient bandwidth, High jitter, Loss...
Video
Clients
N&T WG Lisbon, November 2019
4. Does a faster Internet connection at the client help?
Not really
Source: Wall Street Journal, August 2019
N&T WG Lisbon, November 2019
6. TCP's "sawtooth" behavior
ACKs Being received,
so increase rate
Loss, so decrease rate
TIME
SendingRate
N&T WG Lisbon, November 2019
TCP
Est. 1988
Notoriously bad performance in many real-world environments
(e.g., mobile/cellular, shallow buffers, dynamic networks, …)
7. What’s the problem with TCP CC?
Suboptimal algorithmic framework
TCP Cubic dates back to 1998. To be revisited.
‘One size fits all’ approach
Not customized to network conditions
Not customized to application needs
N&T WG Lisbon, November 2019
9. Strong Assumptions » Poor Performance
Underlying cause Best response
N&T WG Lisbon, November 2019
Packet loss
Decrease rate a lot
Maintain rate
Decrease rate slightly
Increase rate
Self-induced congestion
Congestion from
other heavy flows
Shallow buffer
Non-congestion loss
10. 2 Recent Approaches to Next Generation CC
Vs.
White BoxBlack Box
Performance-oriented
Congestion Control (PCC)
Bottleneck-Bandwidth-and-
RTT (BBR)
N&T WG Lisbon, November 2019
11. Deployability
Both PCC and BBR:
Require sender-side changes only
No changes to the application (video streamer) needed
No changes to the receiver (video client) needed
Implemented as an open source Linux kernel module
and in QUIC.
N&T WG Lisbon, November 2019
12. BBR from Google
N&T WG Lisbon, November 2019
N. Cardwell, Y. Cheng, C.S. Gunn, S.H.
Yeganeh, and V. Jacobson. BBR: Congestion-
Based Congestion Control, Communications of
the ACM, 60(2),
February 2017.
13. Model the network pipe as a single link
Seek the optimal operating point
N&T WG Lisbon, November 2019
BBR from Google
14. Track (your fair share of) bottleneck link’s
bandwidth.
sending rate
network queues
N&T WG Lisbon, November 2019
BBR from Google
15. BBR vs. TCP (Cubic)
Better throughput Lower packet delays Higher resilience
to loss
Source: Google
N&TWG Lisbon, November2019
16. But, does BBR’s model capture the last mile?
Highly dynamic. Traffic flows enter and leave
Short-lived flows. Traffic bursts.
Different transport-layer protocols co-exist
Routing changes
User mobility (handover between base-stations)
…
N&T WG Lisbon, November 2019
18. PCC’s utility framework
Sending rate r
Throughput
Loss rate
Latency
Utility
f(tpt, loss, etc.)
Internet
SACKs
N&T WG Lisbon, November 2019
19. PCC rate control
r1
r
u1
u2r2
Online rate
adaptation
algorithm
move to
Internet
N&T WG Lisbon, November 2019
Rates chosen to optimize empirically-observed performance
Leverages machinery from online learning theory
20. PCC tracks the optimal sending rate almost perfectly!
Improved Responsiveness
Source: [Dong et al., NSDI 2018]
Experiment config:
BW (10-100Mbps), RTT (10-100ms) and
Loss Rate (0-1%) change every 5 seconds
N&T WG Lisbon, November 2019
PCC A
PCC B
22. Also, PCC’s utility framework supports customization
… to different network conditions
… to different applications’ needs
N&T WG Lisbon, November 2019
23. A vision for next-generation
video streaming
The provider’s
network/CDN/cloud
CDN edge nodes,
Video caches
Video
Clients
central
application
stat collection
configuration
online sending-rate
optimization
• Global visibility into QoE
• ML-driven big data analytics
• Longer-term optimization and
customization
N&T WG Lisbon, November 2019
24. Conclusion and Next Steps
Next-generation congestion control is crucial for
improving QoE in video streaming
Irrespective of the transport-layer protocol (TCP, QUIC, etc.)
Recent advances suggest promising directions
Next steps:
Incorporating application-layer QoE statistics into the transport layer
POC for NG congestion control at the SVA?
N&T WG Lisbon, November 2019
Notas del editor
When we stream a video from the internet, we all have this annoying experience -- the video suddenly gets stuck and starts rebuffering ..
Studies actually show that users start leaving if the video doesn’t play in 2 seconds.
And given that fact that video streaming has been dominating today's internet traffic, this kind of bad experience will lead to tremendous loss of users. Therefore industry and academia have devoted lots efforts to improve video streaming experience.