Enabling Optimizations of Video Delivery In HTTP Adaptive Streaming
COM1 Level 3
Video streaming services are widely deployed and recognized as the Internet killer application. With the dramatic growth of video streaming traffic, there has been a practical challenge for service providers in satisfying the demands of their customers while maintaining a high profit. On the one hand, this is challenged by the users' request for high-quality video content without stalls. On the other hand, the best-effort network infrastructure is suffering from sudden and high fluctuating bandwidth due to uncertain characteristics of bandwidth and the congestion on the paths. Instead of the traditional video streaming solutions, the new worldwide video delivery system HTTP Adaptive Streaming (HAS) is rapidly being deployed and is becoming the de-facto solution for Over-The-Top (OTT) adaptive video streaming services over the Internet. While several non-interoperable commercials HAS systems are available from various vendors, the Motion Picture Experts Group (MPEG) in conjunction with the 3rd Generation Partnership Project (3GPP) developed a standardized solution for HAS termed Dynamic Adaptive Streaming over HTTP (DASH) in 2012. Subsequently, a number of solutions have emerged based on this standard.
DASH is principally designed to be used in client-driven pull-based deployments where it consists of two primary entities, namely a DASH player and a DASH server. At the server side, the videos are typically segmented into short duration segments, and then each segment is encoded at different bitrate levels and resolutions, called representations. At the client side, the player starts requesting segments sequentially and adapts to network conditions dynamically using its Adaptive BitRate (ABR) logic. The ABR logic implements a set of heuristics and is responsible for deciding which bitrate to select for the subsequent segment(s).
The ABR logic is integrated into the client and is not specified in the standard. For this reason, many works focus on developing new client-driven ABR solutions to improve the quality of video delivery. Unfortunately, purely client-driven solutions can fail in delivering the best video quality that optimizes user satisfaction. Moreover, recent ABR-related studies show that the ABR challenge has not yet been successfully addressed, especially when multiple concurrent video players share the same network and start competing for the common bandwidth. As a result, every video player may suffer from video quality instability, quality unfairness, and network resource underutilization or oversubscription, and thus unsatisfactory viewer's Quality of Experience (QoE). In this dissertation, these issues are referred to as HAS scalability issues.
In shared network environments, providing a satisfactory viewer QoE for multiple concurrent video players is an arduous task and becomes very critical. Despite a plethora of solutions towards better QoE, existing works have been designed for specific environments and have shown good performance under certain circumstances. Nonetheless, most of them have not succeeded in achieving an acceptable viewer QoE level required by today's applications. The key focus of this dissertation is to bridge the long-standing gap between the optimization of the viewers' QoE, video players' competition for the available bandwidth, and their growing bandwidth demand, with respect to group fairness and network conditions in the existing best-effort network infrastructure. To achieve this objective, this dissertation goes one step beyond existing client-driven solutions, by providing the design, implementation, and evaluation of a novel suite of ABR-related solutions where the goal is to avoid HAS scalability issues while maximizing the viewers' QoE in a fair and efficient way. The proposed solutions can be classified into two main classes: centralized, and distributed approaches. The dissertation makes the following contributions:
The first set of contributions focuses on the centralized approach and proposes four solutions namely SDNDASH, ORL-SDN, SDNHAS, and BMS. These solutions benefit from the network management and centralized capabilities of Software Defined Networking (SDN) to eliminate HAS scalability issues, assist video players in their ABR decisions, allocate dynamically the suitable bandwidth, optimize viewers QoE, and provide group fairness. The second set of contributions focuses on the distributed approach and proposes three solutions called GTA, FDCHAS, and DQ-DASH. GTA and FDCHAS use Game Theory (GT) and the consensus mechanism to provide efficient cooperation and collaboration between video players in a distributed way and without introducing explicit communication overhead. While DQ-DASH leverages queuing theory together with multi-source mechanism and its multipath capabilities to download multiple segments in parallel. These solutions successfully eliminate HAS scalability issues and achieve a high and stable viewer QoE.