220 likes | 339 Views
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.
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?