Network and end-host support for HTTP adaptive video streaming
MetadataShow full item record
Video streaming is widely recognized as the next Internet killer application. It was not one of the Internet's original target applications and its protocols (TCP in particular) were tuned mainly for e efficient bulk file transfer. As a result, a significant effort has focused on the development of UDP-based special protocols for streaming multimedia on the Internet. Recently, there has been a shift in video streaming from UDP to TCP, and specifically to HTTP. HTTP streaming provides a very attractive platform for video distribution on the Internet mainly because it can utilize all the current Internet infrastructure. In this thesis we make the argument that the marriage between HTTP streaming and the current Internet infrastructure can create many problems and inefficiencies. In order to solve these issues, we provide a set of techniques and protocols that can help both the network and end-hosts to make better decisions to improve video streaming quality. The thesis makes the following contributions: - We conduct a characterization study of popular commercial streaming services on mobile platforms. Our study shows that streaming services make different design decisions when implementing video players on different mobile platforms. We show that this can lead to several inefficiencies and undesirable behaviors specially when several clients compete for bandwidth in a shared bottleneck link. - Fairness between traffic flows has been preserved on the Internet through the use of TCP. However, due to the dynamics of adaptive video players and the lack of standard client adaptation techniques, fairness between multiple competing video flows is still an open issue of research. Our work extends the definition of standard bitrate fairness to utility fairness where utility is the Quality of Experience (QoE) of a video stream. We define QoE max-min fairness for a set of adaptive video flows competing for bandwidth in a network and we develop an algorithm that computes the set of bitrates that should be assigned to each stream to achieve fairness. We design and implement a system that can apply QoE fairness in home networks and evaluate the system on a real home router. - A well known problem that has been associated with TCP traffic is the buffer bloat problem. We use an experimental setup to show that adaptive video flows can cause buffer bloat which can significantly harm time sensitive applications sharing the same bottleneck link with video traffic. In addition, we develop a technique that can be used by video players to mitigate this problem. We implement our technique in a real video player and evaluate it on our testbed. - With the increasing popularity of video streaming on the Internet, the amounts of traffic on the peering links between video streaming providers and Internet Service Providers (ISPs) have become the source of many disputes. Hybrid CDN/P2P streaming systems can be used to reduce the amounts of traffic on the peering links by leveraging users upload bandwidth to redistribute some of the load to other peers. We develop an analysis for hybrid CDN/P2P systems that broadcast live adaptive video streams. The analysis helps the CDN to make better decisions to optimize video quality for its users.