Gossip-Based Ad Hoc Routing Zygmunt J. Haas, Joseph Halpern, LiLi Cornell University Presented By Charuka Silva 1 Contents Introduction Pure Gossip Optimization of Gossip Summary 2 Ad Hoc Network Ad Hoc Network is a multi-hop wireless network with no fixed infrastructure. Robust routing protocols must be developed. Some variant of flooding is usually used. 3 Flooding and Gossiping Flooding Every node that receives a packet retransmits the packet to all of its neighbors. Many routing messages are propagated unnecessarily. Gossip Each node forwards a message with some probability. Overhead is reduced. 4 Gossip – Bimodal Behavior Let the gossip probability be p. Then, in sufficiently large nice graphs, there are fractions θS(p) and θR(p) such that the gossip quickly dies out in 1 − θS(p) of the executions and, in almost all of the fraction θS(p) of the executions where the gossip does not die out, a fraction θR(p) of the nodes get the message. Moreover, in many cases of interest, θR(p) is close to 1. 5 Gossip – Bimodal Behavior (cont.) In almost all executions of the algorithm, either hardly any nodes receive the message, or most of them do. By making the fraction of executions where the gossip dies out relatively low while also keeping the gossip probability low, we can reduce the message overhead. 6 Contents Introduction Pure Gossip Optimization of Gossip Summary 7 GOSSIP1(p) A source sends the route request with probability 1. When a node first receives a route request, with probability p it broadcasts the request to its neighbors and with probability 1 – p it discards the request; if the node receives the same request again, it is discarded. Problem with initial condition of the source having very few neighbors. 8 GOSSIP1(p, k) For the first k hops, we gossip with probability 1. From the hop k + 1, the gossip probability is p. GOSSIP1(1, 1) is equivalent to flooding. GOSSIP1(p, 1) is equivalent to GOSSIP1(p). 9 Theorem II.1 For all p ≥ 0, for almost all infinite graphs, if GOSSIP1(p,0) is used by every node to spread a message, then there is a welldefined probability θ0S(p) < 1 that the message reaches infinitely many nodes. Moreover, the probability θ0F (p) that a node receives the message and forwards it in an execution where the message reaches infinitely many nodes is equal to θ0S (p). 10 Cont. θ0S(p) = θ0F (p) =def θ0(p) In an execution where the message does not die out, the probability that a random node receives the message is θ0(p)/p. 11 Experiment – Probability varies Gossiping on a random network of average degree 8. The higher the probability, the higher the fraction of nodes receive the message. 12 Experiment – Degree of network In a 20 × 50 regular network of degree 6, gossiping with probability .65 ensure that almost all nodes get the message in almost all executions. for a 20 × 50 regular network of degree 3, we need to gossip with probability .86 to ensure that almost all nodes get the message in all executions. Conclusion: the higher the degree, the better the gossiping effect. 14 Contents Introduction Pure Gossip Optimization of Gossip Summary 16 A two-threshold scheme Why? In a random network, a node may have very few neighbors, thus the probability that none of the node’s neighbors will propagate the gossip is high. We hope that nodes with lower degree can gossip with higher probability. 17 GOSSIP2(p1, k, p2, n) p1 – typical gossip probability. k – number of hops with which we gossip with probability 1. n – number of neighbors of a node. p2 – probability for which p2 > p1. Neighbors of a node with fewer than n neighbors gossip with probability p2 instead of p1. 18 Comparison of GOSSIP2 with GOSSIP1 GOSSIP2 vs. GOSSIP1 on a random network of average degree 8 GOSSIP2(0.6,4,1,6) has better performance than GOSSIP1(0.75,4), while using 4% fewer messages than GOSSIP1(0.75,4). 19 Prevent premature gossip death The idea behind: If a node has n neighbors and the gossip probability is p, for each message, the node should get roughly pn copies from its neighbors. If the node gets significantly fewer than pn copies within a reasonable time interval, then this is a clue that the message is dying out. 20 GOSSIP3(p, k, m) Same as GOSSIP1(p, k) except for the following modification: If a node originally did not broadcast a received message, but then did not get the message from at least m other nodes within some timeout period, then the node will broadcast the message immediately after the timeout period. Usually m = 1. 21 Comparison of GOSSIP3 with GOSSIP1 GOSSIP3 vs. GOSSIP1 on a random network of average degree 8 GOSSIP3(0.65,4,1) has better performance than GOSSIP1(0.75,4), while using 8% fewer messages than GOSSIP1(0.75,4). 22 Contents Introduction Pure Gossip Optimization of Gossip Summary 23 Summary Pure Gossip (GOSSIP1). Optimization of Gossip (GOSSIP2 and GOSSIP3). Integrate Gossip with AODV. 24 Thank you! 25