Consolidating Streams to Improve DASH Cache Utilisation
Stephen McQuistin presented our poster on Consolidating Streams to Improve DASH Cache Utilisation at the ACM CoNEXT conference in Heidelberg, Germany, from 1-4 December 2015. This is early work, starting to explore how to optimise caching for large-scale video streaming systems based on the MPEG DASH standard (and related systems).
The presence of multiple DASH flows, requested by different clients, can be challenging for HTTP caches. There are two reasons for this. Firstly, if several receivers are fetching the same DASH content at once, the rate adaptation algorithm can lead each receiver to fetch a different representation of each segment. This increases the size of cache required, and the load on the server upstream of the cache, and reduces the cache hit rate. Requests often cannot be served from the cache, even if two receivers are watching the same stream at the same time. The cache hit rate can be increased, and the load on the upstream servers reduced, if the cache can align receivers onto the same representations of the content, by redirecting requests. This would mean some receivers get some segments at higher or lower rate than requested, potentially affecting media quality. A key goal of our work is to explore the trade-off between the impact on media quality, and the benefits of reducing the load on the cache and the links towards the network core and upstream servers. Our hypothesis is that, when done carefully, the quality impact will be small, and the core bandwidth saving large, so this may be a worthwhile trade-off for operators.
Secondly, when several receivers watch the same content at slightly different times, there can be problems of cache thrashing. A segment is pulled into the cache by one receiver, evicted some time later as the stream progresses, then immediately pulled back into the cache by a receiver watching the same stream slightly delayed. This thrashing can be reduced by time-aligning play out at different receivers. There is scope to do this, since receivers tend to have several seconds of buffering delay, and adapt to changes in media delivery times. This should have no, or minimal, impact on the receivers, but can reduce cache load significantly.
Design, implementation, and validation is ongoing. The combination of the two techniques is hoped to be able to increase cache efficiency when DASH streams are in use. With the move from broadcast to online TV viewing, this may be necessary to scale content delivery systems.