200 likes | 313 Views
Temporal-DHT and its Application in P2P-VoD Systems. Abhishek Bhattacharya, Zhenyu Yang & Shiyun Zhang. Roadmap. Introduction Indexing Buffer Management Content Distribution Results Summary. Introduction.
E N D
Temporal-DHT and its Application in P2P-VoD Systems Abhishek Bhattacharya, Zhenyu Yang & Shiyun Zhang
Roadmap • Introduction • Indexing • Buffer Management • Content Distribution • Results • Summary
Introduction • Peer-to-Peer (P2P) applications gained prominence due to decentralized/self-organizing behavior, scalability, tolerance dynamics (churn/flash crowd). • P2P-based multimedia streaming services poses challenges that are different from file-sharing applications. • Live Streaming applications already popular with Internet-scale deployments (PPLive, CoolStreaming, Uusee, etc.) • Video-on-Demand (VoD) systems present unique challenges with asynchronous/dynamic user interactivity.
Introduction c1 c2 c3 c4 c5 c6 c7 c8 p1 p4 p2 p3 p5 • Content Discovery: • Tracking Server • Decentralized Indexing Structures • Content Distribution: • Overlay Tree/Multi-Tree/Mesh
Introduction • Current P2P-VoD systems are classified into 2 categories: • Cache-and-Relay: indexing based on playing position. • Content Dissemination based on playing position proximity • Smooth and easy content availability from parent • Not resilient to asynchronous jumps and peer dynamics (leave/failure) • High streaming efficiency due to seamless in-order playback continuity • Dynamic/In-Order Caching
Introduction • Static-Cache: indexing based on a static distributed storage contributed by all the peers and are independent of playing position. • Content dissemination is independent of playing position. • Frequent parent change: after each segment playback. • Increased resiliency to peer dynamics and efficient support for random access patterns. • Avoids exploiting playing position proximity thereby reduces streaming efficiency. • Out-of-Order/Static Caching.
Introduction • Distributed Hash Tables (DHT) are stable substrates for P2P based applications with decentralized operations. • DHT s are efficient for indexing static data like file-sharing applications where the content remains same throughout peer lifetime. • DHTs are efficiently used by Static-Cache based systems since the cached segments remain constant. • DHTs are unable to efficiently handle data with temporal dynamics (Cache-and-Relay based systems) thereby invoking high update overheads.
Indexing • Temporal-DHT(t-DHT) for dynamic indexing with respect to playing position. • t-DHT augments the generic DHT interface for indexing dynamic content by modifying query resolution and indexing record structure. • t-DHT reduce update overhead by using lazy updation with a coarser granularity of periodicity. • t-DHT estimates the playing position by exploiting predictive temporal dynamics of the content.
Indexing: t-DHT semantics Generic DHT indexing record: < pi , cj > where pi is the peer currently hosting the content cj t-DHT indexing record: < pi , cj , TTL> where TTL is the time-to-live for the particular indexing record. t-DHT also utilizes a publish interval (T) which signifies the periodicity of the lazy updates. T is a design choice and can be defined as a multiple of playback data rate.
Indexing: Query Resolution … … … … Ci Ci Ci+1 Ci+2 Ci Ci+z Ci T Range Query Reformulation in t-DHT
Indexing: Query Resolution • Given the size of playback buffer k, the position of representative segment r, the publish interval z, a peer that searches for dynamic segment ci needs to perform a range query for segments in • [ci-k+r-z , ci+r-1] ∩ [c1 , cM] • Detailed proof in the paper as Theorem IV.1 • Given the size of playback buffer k, the position of representative segment r, the publish interval z, and the target segment ci , an index record of < p , c , TTL> can be filtered out of if id(c)+k-r+z-TTL < i or id(c)-r+1+z > i. • Proof in the paper as Theorem IV.3
Indexing • A semantic overlay is layered on top of DHT network for allowing easy and efficient in-order access. • In-order consecutive segments are highly correlated with high access probabilities. • Each t-DHT peer maintains content predecessor/successor pointers which link to the next and previous in-ordered segments respectively in the stream. • The range query is accelerated with the help of these links and also lowers messaging cost instead of invoking multiple exact-match DHT queries.
Indexing • Dynamic Indexing is implemented by t-DHT augmented semantics with each record as < pi , cj , TTL> . • Indexing based on playing position and thereby updating the t-DHT after every publish interval. Query resolution is performed by range query reformulation. • Static Indexing is also implemented by t-DHT only but mostly retains generic DHT operations with each record as < pi , cj , >. • Indexing is independent of playing position and the records are constant with no updations required. Query resolution is performed similar to exact-match generic DHT routing.
Buffer Management • Continuous playback achieved by dynamic caching and random access by static caching are conflicting features. • t-DHT organizes an integrated approach by utilizing static and dynamic caching in a single framework. • Buffer is divided into 2 parts: static and dynamic. Static buffer contents remain same but dynamic buffer contents keep changing. • Temporal-DHT based Mesh (TDM) is constructed on top of static-dynamic buffers by forming the content linkage pointers and parent-child pointers.
Buffer Management • The static buffer is filled up by randomly downloading b segments from other peers or server. • The static buffer contents are published to the t-DHT by a one-time post operation with the format for static indexing records. • The dynamic buffer is filled up by caching k segments around the current playing position. • The dynamic buffer contents are published to the t-DHT by a chosen representative segment and performs continuous update operations with a certain interval.
Content Distribution • VoD users frequently perform random seeks during the initial period after joining and then either leaves the system or stabilizes to continuous in-order playback mode [15]. • TDM is motivated from the above observation by dividing the users duration into 2 modes: random seek and continuous playback. • TDM follows adaptive content distribution by associating randomized and synchronous dissemination. • Continuous playback mode is handled by the construction of an overlay tree after the peer enters this mode and the distribution follows along the synchronous parent-child pointers.
Content Distribution • After joining the system, each VoD peer is placed into random access mode where static indexing/querying is used for content location/distribution. • Decision on transition from random access mode to continuous playback mode! • TDM relies on user workload profiling to perform seamless transition from random to continuous mode. • After entering the continuous mode, VoD peer joins an overlay tree and streams content always from tree parent. This process avoids unnecessary parent search-switch.
Summary • We propose Temporal-DHT which is a novel augmentation to generic DHT for indexing contents with temporal dynamics. • Temporal-DHT applies lazy updates to reduce update overhead and query reformulation/TTL filtering techniques for query resolution. • An integrated static/dynamic caching and buffer management mechanism is presented to efficiently harness the advantages of both the approaches. • Adaptive Content Distribution is utilized by exploiting user request pattern to efficiently support random and continuous content access within a single framework.
Thank You........ Questions ??? Please send all your questions to: abhat002@cis.fiu.edu