Optimizing HTTP Adaptive Streaming over Mobile Cellular Networks
01 November 2013
HTTP Adaptive Streaming (HAS) is a popular web-based video delivery method that relies on client-side algorithms to adapt the video bit rate dynamically to match network conditions. We found, however, that existing HAS implementations are unstable in challenging network conditions, such as those typically found in wireless networks. Fading, interference, roaming, handoffs, and large roundtrip times cause sudden changes in throughput, which cause existing HAS algorithms a tendency to overshoot, undershoot, oscillate, or worst of all, allow the buffer to starve, which severely impacts perceived user experience. We develop two techniques to tackle the above HAS streaming challenge in wireless networks, which can be deployed independently or in combination. Our first technique is WiLo [1], a robust HAS rate determination algorithm (RDA) that is well suited for wireless networks and low-delay applications. The design of WiLo follows the principle of selecting a quality level that averages out the bandwidth peaks and valleys rather than trying to follow them. The result is an RDA that is robust and stable in dynamic network conditions, and works well even with small buffers for low-latency applications, such as live streaming. WiLo is a client-side only algorithm replacement and does not require any infrastructure or network support; hence, it can be easily adopted in popular HAS clients. The second technique we propose, which we term AGBR (adaptive guaranteed bit rate), is a novel scheduler in wireless base stations. The goal of AGBR is to maximize the aggregate quality of all HAS and data flows served from the same base station. We formulate this objective as a utility maximization problem that separately takes into account different utility functions for video and data flows, which we use to derive our AGBR algorithm to control the over-the-air throughout. We show that the proposed algorithm can achieve required fairness among video flows as well as automatically adapt video quality with increasing congestion thereby preventing data flow throughput starvation.