Scalable and Continuous Media Streaming on Peer-to-Peer Networks Masahiro Sasabe Osaka University, Japan m-sasabe@ist.osaka-u.ac.jp 2003/9/19 P2P2003 1 Content • • • • Backgrounds Media Streaming on pure Peer-to-Peer Networks Research Targets Outline of Proposed Mechanisms – Scalable Search Methods – Block Retrieval Methods • Simulation Results • Conclusion and Future Work 2003/9/19 P2P2003 2 Backgrounds - server-client model Load concentration Client Client Client Client Media Media Media Media server server High transfer delay Diverse user demands Client Client Client Client P2P is a network paradigm to solve these problems 2003/9/19 P2P2003 3 Backgrounds - related works on P2P media streaming - • Most of research works on P2P media streaming construct an application-level multicast tree – Effective for live-media streaming – Not effective for on-demand media streaming – The root of the tree is a single point of failure • We discuss effective methods for on-demand media streaming on pure P2P networks 2003/9/19 P2P2003 4 Media Streaming on pure P2P Networks Flooding Peer A 3. Forward Peer B Peer C 3. Forward Peer D 3. Forward 4. Response 4. Response No server 5. Request Peer E 3. Forward 2. Query 1. Join 6. Transmit New peer Peer F Search link Data link 2003/9/19 Desired media stream P2P2003 5 Media Streaming on pure P2P Networks Problem: Problem: Scalability Scalability Peer A How How can can we we get get information information Peer about B about desired desired media media stream stream with with less less number number of of queries? queries? 3. Forward Peer D Flooding 3. Forward Peer C 3. Forward 4. Response 4. Response No server 5. Request Peer E Search link Data link 2003/9/19 3. Forward 2. Query 1. Join 6. Transmit Problem: Problem: Continuity Continuity Peer F How How should should we we determine determine aa provider provider peer peer for for continuous continuous media media play-out? play-out? P2P2003 New peer Desired media stream 6 Research Targets • We propose efficient mechanisms for scalable and continuous media streaming – Segmentation of media stream • For efficient use of network bandwidth and cache buffer – Scalable block-search method • To solve the scalability problem of search on pure P2P networks – Provider peer determination algorithm • To achieve continuous media play-out 2003/9/19 P2P2003 7 Outline of Proposed Mechanisms - per-group block search and retrieval Logical topology Pd has blocks1, 4, 5 Block Pd Pc Pc has blocks 6, 7 Pb has blocks 1, 3 Pb Pa has block 2 Pa Consumer C Blocks 1~4 Time Play-out timing 1 block time Round 2003/9/19 P2P2003 8 Advantage of Per-group Based Search • There is a temporal order of reference in a media stream – A user watches a media stream from the beginning to the end • We can expect that a peer, which replies a response message in the current round, has some blocks of the next round – A peer can estimate candidates of provider for blocks of the next round from the search results in the current round 2003/9/19 P2P2003 9 Scalable Search Methods •• Full Full Flooding Flooding –– Flooding Flooding with with static static value value of of TTL TTL •• Limited Limited Flooding Flooding –– Flooding Flooding with with limited limited TTL TTL based based on on the the search search results results at at the the previous previous round round •• Selective Selective Search Search –– Send Send queries queries to to particular particular peers peers based based on on the the search search results results at at the the previous round previous round Consider pros and cons of them •• FL FL method method –– Combination Combination of of full full flooding flooding and and limited limited flooding flooding •• FLS FLS method method –– Combination Combination of of full full flooding, flooding, limited limited flooding, flooding, and and selective selective search search 2003/9/19 P2P2003 Desired media stream 10 Provider Peer Determination Algorithm • Every time a peer receives a response message, it determines a optimum provider peer for every block in current round. 1. 2. Calculate a set of peers from which it can retrieve a block in time. Select a peer from the set a. a. Select Select aa peer peer whose whose estimated estimated retrieval retrieval time time is is the the smallest smallest among among peers peers in in the the set set (SF (SF Method) Method) b. b. Select Select aa peer peer with with the the lowest lowest possibility possibility of of block block disappearance disappearance among among peers peers in in the the set set (SR (SR Method) Method) Peer A Cache Peer B Cache Consumer High Priority Low 2003/9/19 High Priority Low P2P2003 11 Provider Peer Determination Algorithm (detail) 1. 1. 2. 2. jj ← ← rr Calculate Calculate set set S, S, aa set set of of peers peers having having block block jj a. a. b. b. 3. 3. 4. 4. •• •• ifif S= S=φ φ Tf(j) Tf(j)← ←Tp(j), Tp(j), jj← ←j+1, j+1, repeat repeat Step2 Step2 ifif S S≠φ ≠φ go go to to Step3 Step3 5. 5. Derive Derive set set S’, S’, aa set set of of peers peers from from which which aa provider provider peer peer can can retrieve retrieve block block jj by by deadline deadline Tp(j) Tp(j) max(Tf(j-1), max(Tf(j-1), Tnow+R(i))+B(j)/A(i) Tnow+R(i))+B(j)/A(i) <= <= Tp(j) Tp(j) a. a. b. b. ifif S’ S’ ≠φ ≠φ go go to to Step4 Step4 ifif S’ S’ == φ φ Tf(j) Tf(j)← ←Tp(j), Tp(j), jj← ←j+1, j+1, go go back back to to Step2 Step2 2003/9/19 Determine Determine provider provider peer peer P(j) P(j) from from S’ S’ 6. 6. P2P2003 SF SF (Select (Select Fastest) Fastest) Method Method SR SR (Select (Select Reliable) Reliable) Method Method Derive Derive the the estimated estimated completion completion time time of of retrieval retrieval Tf(j) Tf(j) and and the the time time Tr(i) Tr(i) to to send send aa request request for for block block jj Tf(j) Tf(j) == max(Tf(j-1),Tnow+R(i)) max(Tf(j-1),Tnow+R(i)) +B(j)/A(P(i)) +B(j)/A(P(i)) Tr(j) Tr(j) == Tf(j) Tf(j) –– R(P(j)) R(P(j)) -- B(j)/A(P(i)) B(j)/A(P(i)) jfjf jj == kN, kN, finish finish otherwise otherwise jj ← ← jj ++ 1, 1, go go back back to to Step2 Step2 12 Simulation Model • Random network with 100 peers • 40 media streams whose popularity follows a Zipf-like distribution with α=1.0 • The inter-arrival time between two successive requests for the first media stream follows the exponential distribution whose average is 20 minutes • Cache replacement algorithm is LRU Reference frequency Pi 82 55 18 20 Zipf distribution 21 26 37 15 45 94 63 52 40 32 14 64 44 46 30 66 99 12 76 11 17 77 9 1 Pi = α i 4 81 10 28 2 87 60 31 92 27 73 35 91 13 98 58 88 62 71 70 33 93 19 65 8 23 39 22 6 50 84 83 59 38 42 16 61 49 89 1 95 69 78 47 74 72 24 86 7 36 68 34 54 80 5 85 43 48 56 25 53 51 79 41 57 90 67 29 97 96 0 75 3 High 2003/9/19 P2P2003 Media popularity Low 13 Evaluation Criteria • System scalability – Average number of queries that a peer receives during the simulation • Continuity of media play-out – Completeness of block retrieval Number of retrieved blocks in time Completeness = Number of blocks in a media stream 2003/9/19 P2P2003 14 Simulation Results - number of queries - SF method SR method Number of Queries Number of Queries 160000 Full flooding 140000 FL method FLS method 120000 100000 80000 60000 40000 20000 0 0 160000 Full flooding 140000 FL method FLS method 120000 100000 80000 60000 40000 20000 20000 2003/9/19 40000 60000 Time [sec] 80000 P2P2003 0 0 20000 40000 60000 Time [sec] 80000 15 Simulation Results - completeness with 95% confidence interval SR method 1 1 0.8 0.8 Completeness Completeness 70% of total requests SF method 0.6 0.4 0.2 Full flooding FL method FLS method 0 0 5 10 15 High 2003/9/19 0.6 0.4 Full flooding FL method FLS method 0.2 20 25 Media Popularity 30 0 35 Low P2P2003 0 5 High 10 15 20 25 Media Popularity 30 35 Low 16 Conclusion and Future Work • Conclusion – We discuss the media streaming on pure P2P networks. – We proposed block search and retrieval methods for continuous and scalable media streaming. – Through simulation experiments, we have shown that the FLS method can provide users with continuous media play-out without introducing extra load on the system for popular media streams. • Future Work – Improve the completeness of unpopular media streams •• We We are are now now considering considering an an effective effective cache cache replacement replacement algorithm, algorithm, which which takes takes into into account account supply supply and and demand demand for for media media streams. streams. – Evaluate proposed mechanisms in more realistic situations where network conditions and peer locations dynamically change. 2003/9/19 P2P2003 17 Appendix: Simulation Results - LRU v.s. proposed cache replacement algorithm FLS method, SR method 1 1 0.8 0.8 Completeness Completeness FLS method, SF method 0.6 0.4 LRU Proposed 0.2 0 0 5 10 High 2003/9/19 0.6 0.4 LRU Proposed 0.2 15 20 25 Media Popularity 30 0 35 Low P2P2003 0 5 High 10 15 20 25 Media Popularity 30 35 Low 18