Presentation is loading. Please wait.

Presentation is loading. Please wait.

Pseudo-DHT: Distributed Search Algorithm for P2P Video Streaming

Similar presentations


Presentation on theme: "Pseudo-DHT: Distributed Search Algorithm for P2P Video Streaming"— Presentation transcript:

1 Pseudo-DHT: Distributed Search Algorithm for P2P Video Streaming
December 15, 2008 Jeonghun Noh Stanford University Sachin Deshpande Sharp Laboratories of America

2 P2P Live Video Streaming
Relaying video using uplink bandwidth Define leech clearly. Video source Live video: no needs for locating video chunks

3 P2P Time-Shifted Streaming
Local storage to store fractions of the video To locate video at arbitrary point, a query server may be used 7~11m 3~6m 0~4m Seeking video of position 5m The server can become a bottleneck as peer population increases No dedicated server may be available A scalable distributed content search is desired

4 Outline P2TSS system Pseudo-DHT: Distributed Search
Performance evaluation Numerical analysis Simulation study Carol: I think this slide could be eliminated

5 Introduction to P2TSS P2TSS (P2P Time-shifted Streaming System)
Serves both live streaming and time-shifted streaming Time-shifted stream (TSS) is the same as the original stream except being delayed in time Peers store a fraction of video Cached video chunks are later served to other peers Source peer Peer 1 stores Video [0m, 4m) from 9:00am Peer 2 watches from 0m at 9:10am [Deshpande et al., 2008]

6 Caching Live Stream Peers cache live stream with another video connection Peer3 Cached portion t2 x2 Video position Playback trajectory Peer 2 Peers locally determine which portion to cache Distributed Stream Buffer (DSB) Peer’s local buffer to hold a fraction of video A finite size of cache (e.g., size of 2 to 4 minutes of video) Independent of playback buffer Static contents in cache No content change once the cache is full Provides a bottom line performance t3 x3 x1 t1 Peer 1 Live stream Time

7 Chord: Distributed Lookup
Chord: a distributed lookup overlay [Stoica et al., 2001] Nodes (peers) are connected as a circle Keys are mapped to successor node Fast lookup by a finger table. Lookup latency: O( log(Np) ) An example key/node space Nodes and keys sorted by IDs ID length: 6bits Can be normalized to [0,1) Each peer participates in the search process Computational resources” contributed by peers N: node K: key

8 Building Lookup Overlay
Node is entered to overlay as peer joins Node ID: uniformly drawn between [0,1) Node is placed in a distributed manner (Key, Value) is entered as peer registers buffer status Key (K): hashed video chunk ID ( 0 ≤ K < 1) Value (V): peer network address (K,V) is mapped to the successor node Example 1

9 Pseudo-DHT: Registration
Register (K, V) may result in “collision” (i, Peer 1) (i, Peer 2) Chunk ID i Repeat Register (K’, V) until there is no collision K’ = K + (n-1)Δ (n=# attempts, Δ=offset base) Another consequence : low penalty due to node disconnect. But this is low level (Chord functionality.. Or DHT) Increases lookup performance. 1st attempt 2nd attempt Chunk ID i i-1 empty : Occupied ID Unlike original DHT, single key-multiple values is discouraged Leads to better load balancing and low latency retrieval

10 Pseudo-DHT: Retrieval
Seeking Video Chunk I Retrieve(i) may return a “miss” K’ = i - (n-1)Δ (n=# attempts, Δ=offset base) Repeat Retrieve(K’) with different keys until a hit occurs Best-effort search, different from original DHT 3rd 2nd 1st attempt Chunk ID i i-1 : Video chunks available i-2 : Video Chunk Header miss miss Chunks delivered to the consumer peer

11 Outline P2TSS system Pseudo-DHT: Distributed Search
Performance evaluation Numerical analysis Simulation study Carol: I think this slide could be eliminated

12 Preliminaries for Analysis
Symbols Np: Number of peers (or nodes) L: Video length (in secs) Q: Video chunk size (in secs) : Ratio between Np and available slots M (=L/Q)

13 Registration Latency Independence model for the number of collision, C
More sophisticated model where A denotes the number of peer arrival in Q seconds

14 Experimental Setup Pseudo-DHT implemented in PlanetSim [Garcia et al, 2004] Simulation setup Maximum successive lookup: 4 Video length L: 7200s Buffer size D: 240s Chunk size Q: 5, 10, 15, 30s

15 Registration Latency When  is small, models match simulation results
Registration latency of both forward/backward key change is identical Load factor = Num of peers. As alpha increases, higher-order model (sophisticated) matches the result better. Video chunk size (Q): 5s

16 Retrieval Latency Empirical statistics Modeling retrieval latency N:
Xk: 1 if video chunk Bk is occupied. 0 otherwise Conditional hit probability Pr (Xi-j=1| Xi=0), ( j: offset base ) With a larger offset base Δ, the correlation between successive retrievals becomes weaker (Np=500, L=7200s, Q=5s, =0.346) Each trial is assumed to be independent (with large offset Δ) Modeling retrieval latency N:

17 Offset Base and Retrieval Latency
Retrieval latency decreases as an offset base increases Q=5. Load Factor = 300 / (7200/5+1). Step size (offset) : 5, 10, 15 seconds. A penalty is more frequent supplier switching Video chunk size Q: 5s

18 Video Chunk Size and Retrieval Latency
As chunk size Q increases, retrieval latency decreases Potential discussion: Larger Q is always better? 1. Larger Q takes peers to take more time before registration (slow contribution). 2. More dense key accumulation -> Losing one node results in many key information (can be avoided by key replication, though) 3. Only a few of peers will hold all keys. Bad load balancing..

19 Overhead of Key Storage
Balls and bins problem How many nodes (bins) hold k keys (balls)? Bins are created by nodes Random keys fall into [0,1) uniformly Statistically, larger bins will receive more balls Sample space: N=90, K=12. 1 Key/Node space

20 Overhead of Key Storage
One node’s probability of storing k keys Observations Low overhead: keys are spread out on the overlay 50% of nodes store no keys when N=K Number of keys stored in a node N=300 K=300

21 Conclusion and Future Work
Proposed Pseudo-DHT Allows peers to register / retrieve video chunk in a scalable way Slightly different from original DHT due to video continuity Spreads out (key, value) items over the overlay P2TSS and Pseudo-DHT Application to a P2P system Thorough evaluation with analysis and simulations Future research topics Changing Q dynamically according to peer population size Considering heterogeneous peer uplink capacity for registration

22 Thank you!

23 Backup Slides

24 Preliminaries for Analysis
Video chunk ID space M-1 X0 X2 XM-1 X1

25 Sample Key/Node Space Interval between nodes is not constant
Nodes (peers) Keys (DSB info)

26 Chord: Distributed Lookup
Chord: a distributed lookup overlay [Stoica et al., 2001] Nodes (peers) and keys are mapped to a common space Fast lookup by a finger table. Lookup time: O( log(Np) ) An example key/node space Each peer participates in the search process Computational resources” contributed by peers N: node K: key

27 Caching Video Peers locally determine which portion to cache
Distributed Stream Buffer (DSB) Peer’s local buffer to hold a fraction of video A finite size of cache (e.g., size of 2 to 4 minutes of video) Independent of playback buffer Peers locally determine which portion to cache Distributed Stream Buffer (DSB) Peer’s local buffer to hold a fraction of video A finite size of cache (e.g., size of 2 to 4 minutes of video) Independent of playback buffer Static contents in cache No content change once the cache is full Provides a bottom line performance Static contents in cache No content change once the cache is full Provides a bottom line performance

28 A lookup on Chord Overlay
Fast search using a finger table. Each node has more detailed knowledge about nodes closer to them.

29 Registration Approach 2: Simplified dependence model
Ai : Number of insertions for key i ( Number of arrivals during the slot i) Ai: Arrival in slot I. Not the number of key! Be careful.

30 Simultaneous Retrieval
To reduce a retrieval latency

31 Retrieval Analysis With larger offsets
(+) The number of lookups decreases slightly. (-) Peers have to switch earlier to another peer. The simulation results match the model Parameters Np = 500 L = 7200 D = 480s Q = 5s Number of slots: (M = 1440)

32 Analysis: Overhead for Key Storage
Poisson process property: Given N(t) = N, N arrival times are independently uniformly distributed. In Poisson process, interarrival time between events is exponentially distributed. The converse is also true. Finally,


Download ppt "Pseudo-DHT: Distributed Search Algorithm for P2P Video Streaming"

Similar presentations


Ads by Google