Confused, Timid, and Unstable: Picking a Video Streaming Rate is Hard

Similar documents
Confused, Timid, and Unstable: Picking a Video Streaming Rate is Hard

An Experimental Evaluation of Rate Adaptation Algorithms in Adaptive Streaming over HTTP

Dynamic Adaptive Streaming over HTTP (DASH) Application Protocol : Modeling and Analysis

Performance Characterization of a Commercial Video Streaming Service. Mojgan Ghasemi, Akamai Technologies - Princeton University

Downton Abbey Without the Hiccups: Buffer-Based Rate Adaptation for HTTP Video Streaming

SamKnows test methodology

OpenCache. A Platform for Efficient Video Delivery. Matthew Broadbent. 1 st Year PhD Student

Tuning RED for Web Traffic

CS419: Computer Networks. Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Page 1. Outline / Computer Networking : 1 st Generation Commercial PC/Packet Video Technologies

Confused, Timid, and Unstable: Picking a Video Streaming Rate is Hard

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

First Steps to Using a PacketShaper

The Controlled Delay (CoDel) AQM Approach to fighting bufferbloat

Measuring Over-the-Top Video Quality

TCP so far Computer Networking Outline. How Was TCP Able to Evolve

CSE 461. TCP and network congestion

CSE 123A Computer Networks

Performance Characterization of a Commercial Video Streaming Service

Performance Consequences of Partial RED Deployment

Flash: an efficient and portable web server

Quality of Service (QoS)

Queuing. Congestion Control and Resource Allocation. Resource Allocation Evaluation Criteria. Resource allocation Drop disciplines Queuing disciplines

ECEN Final Exam Fall Instructor: Srinivas Shakkottai

Spotify Behind the Scenes

Overview Computer Networking What is QoS? Queuing discipline and scheduling. Traffic Enforcement. Integrated services

Transport Layer (Congestion Control)

irtc: Live Broadcasting

Transport Layer TCP / UDP

Streaming Video and TCP-Friendly Congestion Control

CS 349/449 Internet Protocols Final Exam Winter /15/2003. Name: Course:

Listening with TSDE (Transport Segment Delay Estimator) Kathleen Nichols Pollere, Inc.

Network Processors and their memory

Video Splicing Techniques for P2P Video Streaming

CS519: Computer Networks. Lecture 5, Part 4: Mar 29, 2004 Transport: TCP congestion control

Proxy-based TCP-friendly streaming over mobile networks

CS 457 Multimedia Applications. Fall 2014

P2P Control for ISPs Dr. Lawrence G. Roberts Anagran Oct. 2008

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput

Lecture 21. Reminders: Homework 6 due today, Programming Project 4 due on Thursday Questions? Current event: BGP router glitch on Nov.

TCP Congestion Control

TCP Congestion Control

TCP and BBR. Geoff Huston APNIC. #apricot

Multimedia Systems Project 3

CDN TUNING FOR OTT - WHY DOESN T IT ALREADY DO THAT? CDN Tuning for OTT - Why Doesn t It Already Do That?

Neural Adaptive Content-aware Internet Video Delivery. Hyunho Yeo, Youngmok Jung, Jaehong Kim, Jinwoo Shin, Dongsu Han

Anatomy of a DASH Client. Ali C. Begen, Ph.D.

CS244a: An Introduction to Computer Networks

What Happens When HTTP Adaptive Streaming Players Compete for Bandwidth?

Characterizing Netflix Bandwidth Consumption

TCP and BBR. Geoff Huston APNIC

CS4700/CS5700 Fundamentals of Computer Networks

Managing Caching Performance and Differentiated Services

Computer Networking

Internet Video Delivery. Professor Hui Zhang

CS244a: An Introduction to Computer Networks

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission

Congestion. Can t sustain input rate > output rate Issues: - Avoid congestion - Control congestion - Prioritize who gets limited resources

NETWORK ASSISTED RATE ADAPTATION FOR CONVERSATIONAL VIDEO OVER LTE CSWS 14

CSE/EE 461. TCP congestion control. Last Lecture. This Lecture. Focus How should senders pace themselves to avoid stressing the network?

Lecture 18: Video Streaming

Chapter 4. Routers with Tiny Buffers: Experiments. 4.1 Testbed experiments Setup

CSE/EE 461 Lecture 16 TCP Congestion Control. TCP Congestion Control

Page 1. Goals for Today" Discussion" Example: Reliable File Transfer" CS162 Operating Systems and Systems Programming Lecture 11

15-441: Computer Networks Homework 3

CSE 461 Module 10. Introduction to the Transport Layer

Overview. TCP & router queuing Computer Networking. TCP details. Workloads. TCP Performance. TCP Performance. Lecture 10 TCP & Routers

c) With the selective repeat protocol, it is possible for the sender to receive an ACK for a packet that falls outside of its current window.

Chapter 6 Congestion Control and Resource Allocation

Network Support for Multimedia

Improving TCP Performance over Wireless Networks using Loss Predictors

A Joint SLC/RealEyes Production.

CS268: Beyond TCP Congestion Control

CSCI Topics: Internet Programming Fall 2008

Name Student ID Department/Year. Final Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2008

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

Energy-Aware CPU Frequency Scaling for Mobile Video Streaming

Lecture 14: Congestion Control"

Project Details. Jiasi Chen CS 179i: Project in Computer Science (Networks) Lectures: Monday 3:10-4pm in Spieth 1307

Adaptation Algorithm for Adaptive Streaming over HTTP

Computer Networked games

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs

Before beginning this lab, you ll probably want to review sections 3.5 and 3.7 in the text.

CS164 Final Exam Winter 2013

Congestion and its control: Broadband access networks. David Clark MIT CFP October 2008

IETF88 Vancouver. Congestion control for video and priority drops. Background for draft-lai-tsvwg-normalizer-02.txt LTR

EP2210 Scheduling. Lecture material:

TechNote AltitudeCDN Multicast+ Integration with IBM Cloud Streaming Manager for Enterprise

POI360 Panoramic Mobile Video Telephony over LTE Cellular Networks

Introducing optical switching into the network

Variable Bitrate Stream in Set top Box device

arxiv: v1 [cs.ni] 31 Dec 2018

Congestion Manager. Nick Feamster Computer Networks. M.I.T. Laboratory for Computer Science. October 24, 2001

CSCE 463/612 Networks and Distributed Processing Spring 2017

Congestion Control End Hosts. CSE 561 Lecture 7, Spring David Wetherall. How fast should the sender transmit data?

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Internet Content Distribution

Implementation Experiments on HighSpeed and Parallel TCP

Transcription:

Confused, Timid, and Unstable: Picking a Video Streaming Rate is Hard Five students from Stanford Published in 2012 ACM s Internet Measurement Conference (IMC) 23 citations Ahmad Tahir 1/26

o Problem o Background Knowledge o Research Motivation o Experimental Setup o First Results o Downward Spiral o Intervention o Before, After The streaming video quality deteriorates when another competing flow for a limited bandwidth starts. Maintaining a careful balance between: not wanting to cause a re-buffer not wanting to deliver unnecessarily low quality 2/26

o Problem o Background Knowledge o Research Motivation o Experimental Setup o First Results o Downward Spiral o Intervention o Before, After Typical HTTP streaming setup Client must pick what to request Careful balance for user satisfaction 3/26

Problem Background Knowledge o Research Motivation o Experimental Setup o First Results o Downward Spiral o Intervention o Before, After How well do they pick what to request? 4/26

It s bad Maximum: 5 Mb/s Fair Share: 2.5 Mb/s Optimal: Used: 1.75 Mb/s 235 kb/s What makes this so difficult? 5/26

Problem Background Knowledge Research Motivation o Experimental Setup o First Results o Downward Spiral o Intervention o Before, After Services are similar - not identical Ways to stream HTTP video: Web browser vs. PS3 Single connection vs. many Entire file vs. chunks 6/26

Implementation Details 7/26

Network Parameter Controls NetFPGA rate limiter: 5 MB/s Competing flow: same file, same CDN, simple TCP file download 8/26

Problem Background Knowledge Research Motivation Experimental Setup o First Results o Downward Spiral o Intervention o Before, After No surprises - they re terrible Repeated 76 times over four days 91% of cases failed predictably 9/26

10/26

Sanity Check? 11/26

Problem Background Knowledge Research Motivation Experimental Setup First Results o Downward Spiral o Intervention o Before, After Follow the spiral down Monitor everything: TCP throughput Buffer size Request interval Congestion window Where do these algorithms go wrong? 12/26

Client Network Behavior 13/26

TCP Congestion Window Times out in 4s OFF period Reset to initial value of 10 packets, every time Single persistent connection Ramp up from slow start for each segment anyway No competing flow? No problem 14/26

Completely Squashed 15/26

Rational Behavior 16/26

A More Complete Picture Playback buffer fills starts periodic ON-OFF During OFF period: Video stream congestion window idle resets Competing flow is still going, filling the routers buffer ON period starts: Very high initial packet loss Estimate artificially low bandwidth Lower playback rate 17/26

The Spiral Part ON period starts: Very high initial packet loss Estimate artificially low bandwidth Lower playback rate which means shorter segments Each estimate is ever lower than the previous Spiral down until you can t play lower quality 18/26

Another Thing - Timing 19/26

Problem Background Knowledge Research Motivation Experimental Setup First Results Downward Spiral o Intervention o Before, After Mimic Service A 20/26

Less Conservative Service A ~40% Try out 10% 21/26

Better Filtering Service A: ten sample moving average Try: 80 th percentile 22/26

Finally: Bigger Segments 23/26

Problem Background Knowledge Research Motivation Experimental Setup First Results Downward Spiral Intervention o Before, After 24/26

To Conclude On the one hand, there are changes to how the client estimates bandwidth which can improve its interplay with TCPs congestion control A more radical solution: Don t attempt to estimate bandwidth at all Competing goals: highest bitrate, and no underruns Goal is NOT keep the buffer full Goal is don t let the buffer get empty Increase the playback bitrate when the buffer is high Decrease the playback bitrate when the buffer is low Perfect layer of separation: TCP responsible for delivering fair share bandwidth Video player responsible for showing the highest rate it can 25/26

Questions Thank you for listening 26/26