10 likes | 94 Views
buf0. buf2. buf0. bw (t). bw (t). 2. 2. bw (t). bw (t). 1. 1. bw (t). bw (t). 0. 0. On Design of Adaptive Internet Streaming Applications: An Architectural Perspective Reza Rejaie AT&T Labs – Research Menlo Park, California. Motivation
E N D
buf0 buf2 buf0 bw (t) bw (t) 2 2 bw (t) bw (t) 1 1 bw (t) bw (t) 0 0 On Design of Adaptive Internet Streaming Applications: An Architectural Perspective Reza Rejaie AT&T Labs – Research Menlo Park, California • Motivation • Internet requires all applications to perform end-to-end congestion control • Streaming Applications require iso-chronous processing & QoS. • Lack of high level architecture that properly integrates congestion control. • Target applications: Unicast & non-interactive Internetstreaming applications • Internet Streaming applications should be quality adaptive. • Multimedia Proxy Caching • Multimedia proxy caching(MC) is suited only for playbackstreaming applications • Cache popular streams with “appropriate” quality at a proxy close to interested clients. • Adjust the quality of a cached stream based on clients’ BW and stream’s popularity. • Layered encoding allows fine-grained replacement and fine-grained prefetching. • Fine-grained adjustment in quality of cached streams. • MC achieves scalability, higher delivered quality and higher level ofinteractivity. • Existing Web caches are unable to perform multimedia proxy caching efficiently. • Main Components • Congestion Control(CC) module adjusts transmission rate. • Network-friendly => TCP-friendly, e.g. RAP, TFRC, LDA, … • Error Control (EC) modulerecovers from high priority losses selectively. • Quality Adaptation (QA) module matches the quality with available BW. • Layered encoding. • Contributions • An E2E architecture that integrates CC, EC and QA in a coherent fashion. • Limitations of any E2E architecture. • A proxy-based extended architecture for playback streaming applications. • A simple design methodology for unicast and non-interactive streaming applications. • End-to-End Architecture • Buffering at both ends is used to absorb short-lived changes in BW. • Long-term changes in BW triggers QA. • EC & QA should properly share the BW. • QA determines 1) number of active layers and 2) allocated BW to each layer. • For More Information • http://www.research.att.com/~reza Client Buffer Server Buffer buf2 Ack Ack BW(t) BW(t) + Display Decoder Acker Congestion Control buf1 Internet buf1 Layered Encoder Source BW BW Available BW Quality Adaptation Application Specific Network Specific Application Specific