Consolidating Streams to Improve DASH Cache Utilisation
4 December 2015
/ adaptive-iptv
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.