Your SlideShare is downloading. ×
Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter

1,100
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,100
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Riccardo Bernardini, Roberto Cesco Fabbro, Roberto Rinaldo DIEGM – University of Udine October 27, 2010
  • 2. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Overview • Introduction – Streaming over P2P networks – P2P with network coding • The model • Analytical results • Experimental results • Conclusions 1
  • 3. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Streaming over P2P Why? • Streaming good quality content to many users in multi-unicast requires a lot of resources Required = Content bandwidth × # of users • Multicast is not always a feasible solution (cross AS) • In a Peer-to-Peer structure each node brings its own resources ⇓ SCALABLE 2
  • 4. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Streaming over P2P The drawbacks A user is not a server Insufficient upload bandwidth Can leave at anytime (even suddenly) Cannot be trusted (poisoning) 3
  • 5. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Streaming over P2P Chunk-based • Chunk-based approach – Inspired to file-sharing P2P systems – The stream is split in chunks – Each peer advertises which chunks has (buffer maps) – Each node asks to other peers the required chunks – A node sends as many chunks as its bandwidth allows – For live streaming ∗ Too old chunks useless ∗ Future chunks do not exist ⇒ Some buffering necessary – More interesting for VOD 4
  • 6. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Streaming over P2P Stream-based • Stream-based approach – As soon as the node receives a packet ∗ Takes linear combinations of the content of the packet (network coding) ∗ Transmits the result (reduced packet) – The transmitted packets are smaller ⇒ smaller required bandwidth – A node recovers the content packet by combining the output of different peers – The node transmits as soon as it receives a new packet ∗ More stream-oriented ⇒ No buffering necessary 5
  • 7. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Our setup • We will consider a stream-based approach • We do not fix a specific network coding, but we suppose that – The bandwidth of the reduced stream is 1/R of the bandwidth of the content stream. – The content packet can be recovered as soon as at R packets are received – Each peer receives data from N > R peers • Chunkless approaches that satisfy these requirements exist – PPETP (http://corallo.sourceforge.org) – Octoshape 6
  • 8. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Network Coding & Jitter • The idea – If N peers send me data. . . – . . . and I need only the R < N “fastest” packets . . . – . . . could this have some benefical effect on jitter? 7
  • 9. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Our model Client U1 U2 U3 U4 Upper peers Streaming Server P2P Newtork 00000 00000 0000000000 00000 00000 00000 11111 11111 1111111111 11111 11111 11111 00000 00000 00000 11111 11111 11111 0000 0000 0000 1111 1111 1111 0000 00 0000 1111 11 1111 0 0 00 0 0 0 00 0 0 0 00 0 00 0 0 11 1 1 1 11 1 1 1 11 1 11 1 1 1 1 0 0 00 0 0 0 00 0 0 0 00 0 00 0 0 11 1 1 1 11 1 1 1 11 1 11 1 1 1 1 0000000000000000000000000011111111111111111111111111 000000 000000 111111 111111 • A packet leaves the server at t = 0 • The n-th upper peer recovers the packet at t = An • The reduced version of the n-th up- per peer needs t = Bn to reach the node • The node receives the data from the n-th upper peer at time Xn = An +Bn 8
  • 10. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Our model Equivalent Client SPLIT JOIN Streaming Server : : Content packets Reduced packets To the application (e.g., decoder) Delay XN Delay D=OK(X1, ..., XN) • As soon as a packet is created it is split in N reduced packets that leave the server t = 0 • The n-th packet arrives at t = Xn • The packet is recovered at time D = OR(X1, . . . , XN) where OR returns the R-th (in increasing order) of its argu- ments. • σD = jitter “seen” by the node 9
  • 11. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Problem statement • Hypothesis – Xn are iid random variables with ∗ Distribution FX ∗ Average mX (expected delay) ∗ Standard deviation σX (basic jitter) – D = OR(X1, . . . , XN) • Problem: find mD and σ2 D as function of mX, σ2 X, R and N Note: The results can be extended to the case where Xn has parametrized distribution G(x; θn), where θn is a r.v. 10
  • 12. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Analytical results Reduction to m = 0 and σ2 = 1 • Define Yn = Xn − a b ; C = OR(Y1, . . . , YN) • The following (almost obvious) equalities hold mC = mD − a b ; σC = σD/b • Note: The ratio σD/σX (a measure of jitter reduction) depends only on N, R and the type of Xn (Gaussian, uniform, . . . ) 11
  • 13. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Analytical results Asymptotical results • D = OR(X1, . . . , XN) is the R-th order statistic of X1, . . . , XN • Let ρ = N/R be a measure of the “redundancy” • Keeping ρ constant while letting N → ∞ (under mild hypothesis) – mD → F−1 X (1/ρ) The delay depends only on ρ – σD/σX ∼ 1/ √ N The jitter decays as 1/ √ N 12
  • 14. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Simulation results Simulation results with Xn ∼ N(0, 1) 10 0 10 1 10 2 10 −0.9 10 −0.7 10 −0.5 10 −0.3 10 −0.1 Jitter vs. N in log−log scale N Jitter R=1/5 R=1/4 R=1/2 R=7/10 R=3/4 0 20 40 60 80 100 −1.5 −1 −0.5 0 0.5 1 NMean R=N/5 R=N/4 R=N/2 R=(7/10) N R=(3/4) N 13
  • 15. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Experimental results Setup −0.05 0 0.05 0.1 0.15 0 5 10 15 20 25 Histogram of peers delay Delay [s] Numberofpeers • PlanetLab network with 101 nodes • Nodes synchronized with NTP. Error < 10 ms (interrupt frequency in Linux kernel) • Each node sent 1000 packets, 2 packets per second • Two groups of nodes – With very small delay (≈ 0.04 s), comparable with NTP synchro- nization error. Discarded. – With delay ≈ 0.1 s. 14
  • 16. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Experimental results Results Comparison with theoretical results (N = 100) 0 10 20 30 40 50 0 0.2 0.4 0.6 0.8 1 R Jitter[s] Planetlab Theoric 0 10 20 30 40 50 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 RMean[s] Planetlab Theoric 15
  • 17. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Conclusions • We analyzed the behaviour of the jitter when a P2P structure based on network coding is employed • The jitter is actually reduced • The σD/σX decays as 1/ √ N, that is, it depends (approximately) only on the number of peers and not on the redundancy. 16
  • 18. Peer-to-Peer Streaming Based on Network Coding Decreases Packet Jitter Acknowledgments This work and the development of PPETP are partially supported by PRIN Arachne (2008C59JNA), granted by Ministero per l’Universit`a e la Ricerca Scientifica e Tecnologica. 17