220 likes | 337 Vues
This paper explores efficient decentralized broadcasting schemes in peer-to-peer (P2P) networks, specifically focusing on video streaming applications. We discuss the challenges of real-time playback across heterogeneous node capacities, examining both edge-capacitated and node-capacitated networks. Our findings highlight a rate-optimal broadcasting strategy using Random Useful Packet Forwarding, ensuring robustness against node churn. Utilizing principles from graph theory, we present algorithms that achieve efficient data distribution and minimize playback delay, contributing valuable insights for improving P2P streaming systems.
E N D
Optimal peer-to-peer broadcasting schemes Laurent Massoulié Thomson Research, Paris Joint work with A. Twigg, C. Gkantsidis and P. Rodriguez
Peer-to-peer broadcasting • Pplive, Sopcast, TVUPlay,Joost,… • Hosts exchange data with “overlay” neighbors • Aim: real-time playback at all hosts
Broadcast problem Goal: Efficient decentralized schemes Metrics: broadcast rate & playback delay Constraints: Edge capacities (well studied, centralized) [distributed] Node capacities (less explored) Models different nodes in P2P networks: ADSL, cable, …
Outline Rate-optimal scheme for edge-capacitated networks Node-capacitated networks Application: video streaming Summary
Edge-capacitated case: background λ* = min number of edges to disconnect some node from s Can be achieved by packing edge-disjoint spanning trees [Edmonds,Lovasz, Gabow,…] centralized algorithms broadcast rate, λ* = min [ mincut(s,i): iV ] [Edmonds, 1972] s s s 1 1 + 1 b b b a a a 1 1 1 c c c
Challenges Aim for decentralised schemes No explicit tree construction simplifies management with node churn Manage tension between timeliness and diversity in-order delivery from s to a & b reduces potential rate from 2 to 1. a s 1 1 b 1 a b c 1 2 1 1
Random Useful packet forwarding Let P(u) = packets received by u for each edge (u,v) send a random packet from P(u) \ P(v) λ New packets injected at rate λ s b a c
Assumptions: G: arbitrary edge-capacitated graph Min(mincut(G)): λ* Poisson packet arrivals at source at rate λ < λ* Pkt transfer time along edge (u,v): Exponential random variable with mean 1/c(u,v) Theorem With RU packet forwarding, Nb of pkts present at source not yet broadcast: A stable, ergodic process. RU packet forwarding: Main result
Optimality of RU – proof Correct description of state space: Number of packets XA present exactly at nodes u A, for any set of nodes A (plus state of packets in flight on edges) s s s,a s,b b a s,a,c s,a,c s,a,b s,b,c c s,a,b,c
Optimality proof λ Identify fluid dynamics: s s,a s,b s,a,c s,a,c s,a,b s,b,c These capture the original system’s dynamics after some space/time rescaling; • Prove that solution of fluid dynamics converges to zero when λ < λ* • by exhibiting suitable Lyapunov function: Random Block Choice s,a,b,c λ ??
Outline Rate-optimal scheme for edge-capacitated networks Node-capacitated networks Application: video streaming Summary
Node-capacitated case P2P networks constrained by node upload capacity: Cable, ADSL
Node-capacitated case P2P networks constrained by node upload capacity: Cable, ADSL How to allocate upload capacity to neighbours? By Edmonds thm, optimum can be achieved by assigning node capacities to edges and packing spanning trees s 4 s s s b a b a b a b 2 a 2 c c c c 2
Most-deprived neighbour selection for each node u choose a neighbour v maximizing |P(u)\P(v)| If u=source, and has fresh pkt, send random fresh pkt to v Otherwise send random pkt from P(u)\P(v) to v • Distributed: uses only local information
Optimality properties Let λ* be the optimal rate that can be achieved by a feasible allocation of edge capacities {c*ij}. Theorem: For the complete graph and injection rate λ < λ* , system ergodic under fresh/RU pkt forwarding to most deprived neighbour. More general networks?
Outline Optimal & decentralized packet forwarding in edge-capacitated networks Node-capacitated networks Application: video streaming Summary
Video streaming Model Assume feasible injection rate λ Source begins sending at time 0 At time D, users start playing back at rate λ Packets not yet received are skipped p = fraction of skipped packets How much delay to achieve target p?
Grid networks • 40x40 grid • Add shortcut edges with Pr=0.01 • Place source in centre of grid
Delay/loss trade-off for RU policy Expected fraction of skipped packets is (1-1/k)D ~ e-D/k s network v A toy model: • Let k=expected Nb of packets s has and v doesn’t • Approximate the network by the following: • Source begins with k packets 1..k • Source receives new packets at rate λ • Source gives randomly useful packets to v at rate λ • k reflects connectivity between s and v • Fraction of skipped packets decreases exponentially with delay D • Can be used to determine suitable playback delay at receiver v.
Simulation Uplink capacity Fraction of nodes 128 0.2 384 0.4 1000 0.25 5000 0.15 • Random graph (n=500,p=0.05) • Distribution of node capacities as observed in Gnutella [Bharambe et al] • Optimal rate, λ* ≤ 1180 Delay < 1000 inter-pkt send times (<1min)
Conclusions Edge-capacitated networks Random Useful pkt forwarding achieves optimal broadcast rate Future: Understand topology impact on delays Extend to dynamic networks Node-capacitated networks “Most deprived” neighbour selection appears to perform well Proven rate-optimal for complete graphs Future: optimal for other networks?