HTTP-based Video Streaming Confused, Timid, and Unstable: Picking a Video Streaming Rate is Hard Te-Yuan Huang, Nikhil Handigol, Brandon Heller, Nick McKeown, Ramesh Johari Experimental Setup The Internet Video Client The Internet Bandwidth Controller CDN 1 CDN 2 CDN 3 Content Distribu9on Networks CDN A Get File 1 (1750kb/s), Chunk 1 Serve the video with quality 1750kb/s Playout Buffer Standardized, commoditized HTTP servers Videos are pre-encoded and deployed in CDNs Rate selection logic resides at the client side File 1: File 2: 1750 1750 1050 1050 Problem 0 100 200 300 400 500 600 700 800 900 Time (s) 235 375 560 750 1050 1400 1750 2500 3000 4000 5000 kb/s Available Video Rate Video Flow Throughput Competing Flow Throughput Video Rate Fair Share In the presence of a completing flow, video quality steps down all the way to the lowest Why? Here is the answer! Download and Measure Pick a Rate Initial Bitrate Bandwidth Estimation Video Rate for the Next Chunk Bandwidth Under-estimation: The ON-OFF traffic pattern periodically resets TCP congestion window. Pick a Rate Conservatively: Since the estimated bandwidth typically is not equal to the actual bandwidth, video clients tend to pick a rate conservatively. Lower Rate means Smaller Chunk: Requesting a smaller chunk means a lower probability to obtain fair share. More information? Read our paper! http://www.stanford.edu/~huangty/IMC.pdf Recipient of IETF/IRTF Applied Network Research Prize Bandwidth Under-estimation Conservatively Request for a smaller chunk Video Client Competing Flow Generator