3 Introduction Peer to peer network Unstructured network Gnutella, Napster Structured network DHT-based systems such as Pastry, Chord, Tepastry, CAN Advantages of DHT-based systems Fast: O (log n) Can exactly find a publishing object in a gigantic network space
4 Gossip-based Algorithm X12 X1 X3X2 X6 X5 X4 X10 X9 X8 X7 X11 But if we want to get the aggregation information for the whole network Such as sum value, average value Our objective is to calculate the average value of Xavg =(x1+x2+x3…+x12)/12 Disadvantage of DHT-based systems Gossip-based algorithm Objective: let the estimation average value close to Xavg for every node
5 Gossip-based Algorithm X1 X4 X2 X3 X1/2 X2/2 X3/2 X4/2 X1/2 X4/2 X2/2 X3/2 X1/2 (X4+x2)/2 (X2+x3)/2 (X1+x3+x4)/2 (X1+x3+x4)/4 (X1+x1+x3+x4)/4 (X2+x2+x3+x4)/4 time=0, Xeavg1=X1, Xeavg2=x2, Xeavg3=x3, Xeavg4=x4 Time=1, Randomly pick up another node Xeavg1=X1/ 2, Xeavg2=(X4+x2)/ 2 Xeavg3=(X2+X3)/ 2 Xeavg4= (X1+X3+X4)/ 2 Time = 2, Xeavg1=(X1+X1+X3+X4)/ 4, Xeavg2=(X2+X2+X3+X4)/4, Xeavg3=(X2+X2+X3+X4)/ 4, Xeavg4=(X1+X3+X4)/ 4, Xavg = (X1+X2+X3+X4)/4 is a real average value in a peer to peer network Xeavg is the estimated average value for the P2P network in a node
6 Gossip-based Algorithm After m rounds/iterations, Xeavg is very close to Xavg We can see Xeavg as Xavg
7 Converge Speed Xavg Define a variance error= | Xeavg-Xavg | Our objective is to make the variance close to 0 Calculate the converge speed of this variance In every round, the variance drops to less than half its previous value var(t+1) = ( ) var(t) X eavg
8 Analyze Gossip-based Algorithm Gossip-based algorithm is an approximation method We can control the accuracy Xeavg never = Xavg, but Xeavg can be very close to Xavg When variance error=| Xeavg – Xavg| <= ε, we can say Xeavg is Xavg.
9 Analyze Gossip-based Algorithm Roughly say, after O(logn+log(1/ ε)) rounds, can we say variance error <= ε in every node Maybe there are broken network connections
10 Analyze Gossip-based Algorithm We have to control the percentage of nodes who obtain err<=ε We say with probability at least 1-δ, after O(logn+log(1/ε)+log(1/δ)) rounds, The err=|Xeavg – Xavg| <= ε Their contribution: The diffusion speed of uniform gossip is O(logn+log(1/ε)+log(1/δ)), with probability at least 1- δ, and variance error <= ε
11 Advantages of Gossip Algorithm Algorithm is very simple Converge speed is very fast Can automatically adjust itself Nodes join the network Nodes leave the network
12 Disadvantages of Gossip Algorithm From their theory, we know after O(logn+log(1/ε)+ log(1/δ)) rounds, the estimation average value in a local node can be see as a global average value. But in practice, If we do not know the size of the network, how do we know how many rounds a estimation average value is close enough to the real average value.