180 likes | 195 Views
This paper explores a utility-based approach to scheduling multimedia streams in peer-to-peer systems. It discusses the challenges of distributed real-time multimedia applications and proposes a system model and optimization problem formulation. The paper also presents a prototype implementation and preliminary results.
E N D
A Utility-based Approach to Scheduling Multimedia Streams in P2P Systems Fang Chen Computer Science Dept. University of California, Riverside fchen@cs.ucr.edu
Roadmap • What is a P2P system • System model • Optimization problem • Related work • Current status Univ. of California, Riverside
Overlay Network Physical Network What is a Peer-to-Peer (P2P) System ? • Overlay network built on top of a large number of heterogeneous computers • Attractive for large scale distributed applications Univ. of California, Riverside
P2P Systems today • Unstructured P2P systems • Gnutella, Kazaa, etc. • Focus on object sharing (e.g., files, video clips) • Search objects by flooding query messages • Structured P2P systems • Maintain topology structures using distributed hash tables (DHTs) • Message routing to a neighbor with the closest key • Minimize number of hops (typically O(logN) ) Univ. of California, Riverside
Why Multimedia Streaming in P2P? • Multimedia streaming is necessary for • Video conference applications • Collaborative applications • Audio/video broadcasting Univ. of California, Riverside
Challenges of Distributed Real-Time Multimedia Applications • Satisfy end-to-end QoS requirements of real-time multimedia tasks (e.g. delay, jitter, drop rate, etc.) • Support heterogeneous users • Bandwidth constraints • Computing power constraints • Software constraints • Support multimedia tasks with both computation and communication requirements (e.g., transcoding tasks) • Streaming data may need to be processed before it is delivered to end users Univ. of California, Riverside
Transcoder Video source Receiver Video playback in P2P environment.Data from video source needs transcoding service before reaching the thin client Steps for Multimedia Streaming • Service paths constructed during initialization phase • Powerful nodes must provide computation services • Transcoding, encryption, watermarking, etc. • Resources must be managed end-to-end to satisfy the QoS requirements of competing tasks Univ. of California, Riverside
System Model • Each multimedia stream consists of periodical independent tasks (e.g. GOP transcoding in MPEG streams) with period • Weight set to differentiate tasks based on importance • Each task requires an operation , associated with QoS levels • With QoS level , has a utility values and resource requirements Univ. of California, Riverside
Stream Input Transcoding Peer Stream output System Model (cont.) • CPU offers cycles every second, each communication link k has an available bandwidth of • A 0/1 function is derived for each task , indicating the outgoing path Univ. of California, Riverside
Problem Formulation Maximize Subject to Objective: Optimize the overall utility value for the system, while ensuring that resource constraints are met Univ. of California, Riverside
UserInterface Scheduler Thread scheduler Task queue Priority queue Resource Monitor Connection Manager Service Manager Architecture • Resource monitor measures CPU and bandwidth usage • Task Scheduler selects tasks and enforces scheduling policy • Connection Manager responsible for service path construction and topology maintenance Univ. of California, Riverside
Resource Monitoring • Monitor current CPU load • Available CPU cycles affected by other applications running in the same host • Periodical CPU profiling (e.g., /proc/ readings) • Monitor available bandwidth of connections • Based on TCP congestion feedback • Increase estimated value periodically • Peak value when TCP writes block • Other techniques • Packet-pair • Trend of round-trip time Univ. of California, Riverside
Local Scheduling • EDF based scheduler to assign higher priorities to selected tasks with earlier deadlines • Make scheduling decisions at each peer when • New tasks arrive • Tasks finish execution • Select task set at each peer to maximize current system utility when making scheduling decisions • Rejected tasks are forwarded along their outgoing paths and will be processed by other peers Univ. of California, Riverside
Prototype Efforts • Implementation of a prototype P2P system using Gnutella messaging protocol • A simple transcoding service based on libavcodec • Transcode GOPs of mpeg-1 streams • Different quality levels of bit-rate reduction • Deployment on Emulab, a configurable test-bed for distributed applications in wide-area environments Univ. of California, Riverside
Preliminary Results • Dynamic bandwidth estimation at run-time • Operation cost of transcoding a GOP (50KB) with different quality levels Univ. of California, Riverside
Related Work • Layered streaming [ Cui03 ] • Utility based quality adaptation [Liao01] • Stream transcoding in active networks [Guo03] • Server transcoding for universal access [Vidhya03] • General scheduling [Brandt03], user specified scheduling of multimedia streams [Hicks03] • Utility accrual scheduling [Jensen03] • Adaptive service composition [Fu01, Gu2003] • P2P Multimedia broadcasting [PeerCast] Univ. of California, Riverside
Current Status • Building a P2P system that supports multimedia streaming • Evaluate our method on the prototype • Extensions: • Minimize QoS level fluctuations of individual multimedia streams • Optimization for a cluster of transcoding peers in the vicinity Univ. of California, Riverside
A Utility-based Approach to Scheduling Multimedia Streams in P2P Systems Fang Chen Computer Science Dept. University of California, Riverside fchen@cs.ucr.edu http://www.cs.ucr.edu/~fchen Univ. of California, Riverside