An end -to -end architecture for quality adaptive streaming applications in the Internet
Reza Rejaie · University of Southern California Digital Library · 2017
Lack of QoS support in the Internet has not prevented rapid growth of streaming applications (audio and video). However many of these applications do not perform congestion control effectively. Thus, there is significant concern about the effects on co-existing well-behaved traffic and the potential congestion collapse. In addition, many such applications are unable to perform quality adaptation on-the-fly as available bandwidth changes during a session. The problem is one of adapting the compression without requiring video-servers to re-encode the data, and fitting the resulting stream into varying available bandwidth. At the same time, rapid fluctuations in quality will be disturbing to the users and should be avoided. In this dissertation, we will design and evaluate an end-to-end architecture suited for unicast of layered-encoded stored multimedia streams over the Internet. Our architecture reconciles congestion control and quality adaptation which occur on different timescales. It exhibits a TCP-friendly behavior by adopting the Rate Adaptation Protocol (RAP) for end-to-end congestion control. Additionally, it employs a layered framework for quality adaptation to maximize perceptual quality while minimizing rapid, disturbing changes in the quality of the delivered stream as available bandwidth changes. Furthermore, the quality adaptation mechanism provides a tuning parameter that allows the server short-term improvement for long-term smoothing of delivered quality. The quality of delivered streams in the end-to-end architecture is limited by the bottleneck along the path between the server and the client. To overcome this limitation, we extend our architecture by adding multimedia proxy caches. Proxy caches perfectly complement our architecture. We describe a fine-grain replacement algorithm for proxy caching mechanism of layered-encoded multimedia streams as well as a pre-fetching scheme to smooth out the variations in quality of a cached stream. Interaction between the pre-fetching and replacement algorithms results in the state of the cache converging to the optimal state such that the quality of a cached stream is proportional to its popularity, and the variations in quality of a cached stream are inversely proportional to its popularity. Thus the proxy can maximize the delivered quality of popular streams to interested clients.