DASHing Towards Hollywood
Saba Ahsan presented our paper DASHing Towards Hollywood at the ACM Multimedia Systems Conference in Amsterdam, The Netherlands, last week. This paper presents an implementation of the MPEG-DASH streaming video standard running over TCP Hollywood, a variant of TCP we've developed that's intended to be better suited for latency sensitive applications than standard TCP.
The majority of streaming video content on the Internet is delivered on HTTP connections running over TCP. The video content is segmented into chunks of a few seconds duration, each encoded as several variants with different bit rates. The client fetches chunks in sequence, based on a manifest file that provides an index. The variant to download for each chunk is chosen based on the client's estimate of the available network capacity. The MPEG DASH standard defines a standard manifest format and operational modes and procedures.
Such adaptive streaming over HTTP has become the de-facto standard for video delivery over the Internet, partly due to its ease of deployment in the current heavily ossified network. While it performs well in most on-demand scenarios, it is bound by the semantics of TCP. These give priority to reliability over timeliness, even for live video where the reverse may be desired. This leads to high latency and start-up delays for video streaming, since running with reduced play-out latency runs the risk of stalls, waiting for TCP to retransmit lost segments.
TCP Hollywood is a variant of TCP we have designed. It provides a framed multi-stream abstraction within a wire-compatible TCP flow, and avoids head-of-line blocking by allowing frames to be delivered out-of-order and to be discarded if they cannot be delivered in time to meet a deadline.
Out-of-order delivery in TCP Hollywood allows a video player to measure, adapt and request the next video chunk even when the current one is only partially downloaded. Furthermore, the ability to skip frames, enabled by multi-streaming and out-of-order delivery, adds resilience against stalling for any delayed messages. In the paper, we show that in high latency and high loss networks, TCP Hollywood significantly lowers the possibility of stall events and also supports better quality downloads in comparison to standard TCP, with minimal changes to current adaptation algorithms.
To aid with reproducibility, we provide all of the source code used in generating the results described in the paper, with a Makefile that describes and performs the process of performing the experiments, processing and graphing the results, and producing the paper. This is available from The University of Glasgow Research Data Repository or from this website.
The mmsys2018hollywood.tar.gz file that can be retrieved from the University of Glasgow is 12849004960 bytes in size (SHA256: 5b2df6fa3db35fd842af9f40fa27faf8450eed3a951d5c915926fc3de8380fd6) and is a complete archive. The ahsan2018dashing.tar.gz file that can be retrieved from this site is 2005076138 bytes in size (SHA256: b7ac8aeb100bea0d789a11b24cca9be5be9d0c352ca8eca4ec25e6d8901c29c1). The difference is that the file mmsys2018hollywood/stage3/big_buck_bunny_1080p.y4m.xz has been removed from the copy of the archive hosted here. This file can be retrieved from media.xiph.org and is 10842485720 bytes in size (SHA256: ccd84847324cc249b1822fc6b9e16544fc3e4470a515925cb0f48eca361cd1f8). The contents of the two archives are otherwise identical.