Network-based dynamic prioritization of HTTP adaptive streams to avoid video freezes
HTTP Adaptive Streaming (HAS) is becoming the de-facto standard for video streaming services over the Internet. In HAS, each video is segmented and stored in different qualities. Rate adaptation heuristics, deployed at the client, allow the most appropriate quality level to be dynamically requested, based on the current network conditions. Current heuristics under-perform when sudden bandwidth drops occur, therefore leading to video freezes, the main factor influencing the Quality of Experience (QoE) of users. In this article, we propose an OpenFlow-based framework capable of increasing the QoE of clients by reducing video freezes. An OpenFlow-controller is in charge of introducing prioritized delivery of HAS segments, based on feedback collected from both the network nodes and the HAS clients. To reduce the side-effects introduced by prioritization on the bandwidth estimation of the clients, we propose a mechanism to inform the clients about the prioritization status of the downloaded segments without introducing overhead into the network. This information is then used to correct the estimated bandwidth in case of a prioritized delivery. By evaluating this novel approach through emulation, under varying network conditions and in several multi-client scenarios, we show how the proposed approach can reduce freezes up to 75% compared to state-of-the-art heuristics.