300 likes | 413 Views
An Alliance based Peering Scheme for P2P Live Media Streaming. Darshan Purandare Ratan Guha University of Central Florida IEEE TRANSACTIONS ON MULTIMEDIA. outline. Introduction BEAM model BEAM & Small World Network Graph theoretic analysis of BEAM model Simulation results Conclusions .
E N D
An Alliance based PeeringScheme for P2P Live Media Streaming Darshan Purandare Ratan Guha University of Central Florida IEEE TRANSACTIONS ON MULTIMEDIA
outline • Introduction • BEAM model • BEAM & Small World Network • Graph theoretic analysis of BEAM model • Simulation results • Conclusions
Introduction • with the advent of multimedia technology, there has been an increasing use of P2P networks • Various paradigms for P2P streaming have been proposed • Most overlay network construction algorithms form a tree like node topology • NICE & ZIGZAG • End System Multicast (ESM) • PRIME • CoolStreaming /DONet
Introduction - Current Issues • Quality of Service can improve [Hei et al. 06] • Long start up time • Peer Lag • Unfairness [Ali et al. 06] • Lack tit-for-tat fairness • Uplink bandwidth distribution uneven • Sub-optimal uplink utilization • May affect QoS & Scalability Peer A can download data from peer B if: (bytes downloaded from B - bytes uploaded to B) < threshold
BEAM model • BEAM: Bit strEAMing • Consists of three main entities • Nodes • Media relaying server • Origin of the stream content in the swarm • Tracker • A server that assists nodes in the swarm to communicate with other peers
BEAM model • New user arrive • Contacts the Tracker • submits its IP address together with its bandwidth range • Obtains peerlist from Tracker • contains nodes in similar bandwidth range (typically 40 nodes) • similar bandwidth range -> optimal resource utilization • Server relays stream content to Power nodes • bottleneck in its uplink speed
BEAM – power node • power node : higher contribution to the swarm in terms of content served • Initially, chosen from the nodes with higher uplink bandwidth • tracker periodically (e.g., every 10 min) computes the rank of the nodes • updates the media server
BEAM – power node • Power nodes changes periodically based on Utility Factor (UF) • A node’s UF computed using: • Cumulative share ratio (CSR) • Temporal share ratio (TSR) UF = α CSR + (1-α) TSR • Only the nodes that have UF ≧2.0 periodically update the tracker
BEAM - Alliance Formation • Nodes cluster in groups of 4-8 to form alliances • A node can be a member of multiple alliances • h: Max number of nodes in an Alliance • K: Max number of alliances a node can join • A node creates an alliance • send join request -> nodes in its peer list • receiving node accept or reject • how many alliances it is currently a member of
BEAM - Alliance Formation Peerlist of Node 1 :: 6, 17, 23 Peerlist of Node 6 ::12, 22, 43
BEAM - Alliance Functionality • A node can be a member of multiple alliances -> multiple paths for a node to obtain the stream content in case of node failures • A member procure a new packet , it propagates within its alliances • all the members of a alliance request all the pieces • Serves distinct pieces to its peers ((h-1)pieces) • Peers exchange the pieces among them selves • A node requests specific unavailable pieces • Forwarding node sends only request pieces
Media server 1 2 3 4 Stream packet BEAM - Alliance Functionality h = 5 K = 2 Alliance 2 Alliance 1
BEAM & Small World Network • Why form Alliances ? • Clustering into alliances forms a small world network graph • Dense local clustering (high clustering coefficient) • Some links to other part of the graph (non local) • Overlay distance Is near-optimal • Robust to network perturbations such as churn • [Watts et al., Nature,98]
Small World Network • choose a vertex and the edge • With probability p, we reconnect edge to a vertex chosen uniformly at random over the entire ring • p = 0, the original ring is unchanged • p increases, the graph becomes increasingly disordered • p = 1, all edges are rewired randomly. • intermediate values of p, the graph is a small-world network
Cv( )= 1/3 Small World Network • characteristic path length L(p) • Lv :number of edges between two vertices • L(p):averaged over all pairs of vertices • average number of friendships in the shortest chain connecting two people • clustering coefficient C(p) • vertex v has kvneighbors ,at most kv (kv-1)/2 edges • Cv: • C(p) :average of Cvover all v • how well my neighbors are connected to each other
Small World Network • n = 1000 vertices, average degree of k = 10 edges per vertex • For a range of p’s with 0 < p < 1,the SWN G(p) is characterized by • High clustering C(p)/C(0) • Short path length L(p)/L(0)
BEAM & SWN • Suppose a node is a member of k alliances and each alliance has neighbors ,where and • Ex. h = 5 , k = 2 • Much higher than a random graph • Same size random graph Cv =0.0019
Graph theoretic analysis of BEAM model • Graph density is an important factor for the connectedness of a graph • We evaluate the graph density of a BEAM graph by abstracting the alliances as nodes (super node) • N nodes in the swarm ,spread in M alliances • Dgraph :density of the graph • Dalliance :density of the graph when alliances are abstracted as vertices i.e., super nodes as vertices
Graph theoretic analysis of BEAM model • In a steady state, when all the nodes have formed k alliances, and each alliance has exactly h members • M Super nodes
Graph theoretic analysis of BEAM model • outdegree of a super node • For h=5 ,k = 2 Node degree = (h-1) * k =8 , N =512 Dgraph = 0.004 ,Dalliance = 0.025 • Density of the graph at alliance level is relatively much higher than at the node level
Simulation detail • Compare the behavior of BEAM with CS • CS (CoolStreaming/DONet) • DONet: Data-driven Overlay Network • Don’t use any tree, mesh, or any other structures • CoolStream: Cooperative Overlay Streaming • A practical DONet implementation • Node periodically exchanges data availability information with partners • Retrieve unavailable data from one or more partners, or supply available data to partners • The more people watching the streaming data, the better the watching quality will be
Diagram for a DONet node • Membership manager • mCache: record partial list of other active nodes • Partnership manager • Random select • Transmission scheduler • Schedules transmission of video data • Buffer Map • Record availability
BM representation and exchange • A video length is divided into segments of uniform size • Availability of the segments in a node is represented by a Buffer Map (BM) • In practical, a BM is recorded by 120 bits for 120 segments • Each node continuously exchanges its BM with its partners and schedules which segments to fetch from which partner
Scheduling algorithm • Calculate the number of potential suppliers for each segment • Message exchange • Window-based buffer map (BM): data availability • Segment request (similar to BM) • Less supplier first • Multi-supplier: highest bandwidth within deadline first
Simulation Details • Streaming rate = 512 Kbps • Media Server’s Uplink = 1536 Kbps (3 links) • Heterogeneous bandwidth class • (512,128), (768,256), (1024, 512), (1536,768), (2048, 1024) • H, K = 4, 2 (6 neighbor nodes) • Each node buffers content for 120 sec
Conclusions • Alliance based peering scheme is an effective technique to group peers • QoS, Uplink throughput and fairness results are at par or even better than CoolStreaming • Peer lag can be improved using BEAM • Initial buffering time can be slightly improved