Download presentation
Presentation is loading. Please wait.
Published byLucy Osborne Modified over 8 years ago
1
1 SmartGossip: An Adaptive Broadcast Service for Wireless Sensor Networks Presented By Thomas H. Hand Duke University Adapted from: “ SmartGossip: An Adaptive Broadcast Service for Wireless Sensor Networks ” Pradeep Kyasanur (Google) Romit Roy Choudhury (UIUC) Indranil Gupta (UIUC)
2
2 Statement of the Problem Sensor Network Broadcasting There are some sensor network applications that rely heavily on network-wide broadcasts E.g. Alarms, code-updates Goal: Deliver one copy of the broadcast packet to each sensor in the network, while minimizing the number of transmissions Task: Create a protocol that will be able to efficiently broadcast a message to all nodes in the network, while minimizing number of transmissions
3
3 Deterministic and Probabilistic Approaches Deterministic Approach (Classical): Try to solve the problem by assigning some subset of the network forwarding responsibilities This leads to unfairness and unreliability Unfairness – all of the work is placed on a few nodes Unreliability – if some of these key nodes fail, then many packets will be lost and overall throughput will decrease Probabilistic Approach (Gossip) All nodes in the network must forward messages Each node assigned a gossiping probability, p gossip Choosing p gossip appropriately can lead to better network reliability and better load-balancing
4
4 Static and Adaptive Gossiping Must choose p gossip correctly This depends on the network topology – e.g. number of nodes, node density, etc. Pre-assigning a value to p gossip leads to inefficiency In static gossip, all nodes are given the same gossip probability We need a protocol that can adaptively control p gossip to result in high efficiency and reliability
5
5 Past Static Gossip Methods Adaptive Neighbor Method Allow a node to choose its gossiping probability inversely proportional to the number of neighbors it has (Haas, et al.) Adaptive Overhead Method Allow node to choose its gossip probability based on the number of duplicate messages it receives (Levis, et al.) Large number of duplicate messages means that many nodes depend on it
6
6 Smart Gossip Introduction Aim is to achieve an efficient, fair, and reliable protocol In Smart Gossip, the importance of each node is quantified using an algorithm that takes into account network topology This allows for network adaptation Completely decentralized Node Importance The dissemination of a gossip message will rely more heavily on some nodes more than others Smart Gossip can assign different gossip probabilities to different nodes based on the network conditions
7
7 Smart Gossip Introduction Cont ’ d … Promoting Fairness and Flexibility Instead of having a predetermined subset of the network responsible for the broadcast, the load is shared by all nodes The protocol can adapt to changing network conditions – gossip probability for each node is updated periodically
8
8 How to Implement Smart Gossip … Given some random network topology How do we choose a suitable value of “ p ” ? Even if network topology is homogeneous It may change over time due to failure and mobility Finally, what if topology is not known a priori ? How can you choose “ p ” ?
9
9 We Ask … Given some topology deployment How do we choose a suitable value of “ p ” ? Even if topology is homogeneous It may change over time due to failure and mobility Say computed p = 0.85
10
10 We Ask … Given some topology deployment How do we choose a suitable value of “ p ” ? Even if topology is homogeneous It may change over time due to failure and mobility Fails Say computed p = 0.85
11
11 We Ask … Given some topology deployment How do we choose a suitable value of “ p ” ? Even if topology is homogeneous It may change over time due to failure and mobility Say computed p = 0.85 15% of packets will not reach these nodes
12
12 The Main Idea Behind Smart Gossip Concept Identify which of YOUR friends get to know gossip earlier than you do Request those friends to gossip more Friends who get to know gossip later than you will request you to gossip more You choose your gossip probability as: MAX value of all requests from YOUR friends
13
13 Simple Example … When H spreads a gossip F gets gossip only from G F asks G to always gossip Thus, p G = 1.0 B receives gossip from A,C,D,E,F B also observes that A,C,D,E received gossip from F Indicates that B must depend only on F; A,C,D,E and B are independent B asks F to always gossip, thus p F = 1.0
14
14 For Example … B asks F to always gossip, thus p F = 1.0 B does not require A,C,D,E to gossip at all Thus p A = 0, p C = 0, p D = 0, p E = 0 Observe that only 2 transmissions (from G and F) are sufficient for broadcast
15
15 Average Reception and Forwarding Percentages Reliability Evaluation: Average Reception Percentage: Reception Percentage = % messages received Average Recept. % = Recept. % averaged over all nodes Overhead Evaluation: Average Forwarding Percentage Forwarding Percentage = % gossip messages forwarded Average Fwd. % = Fwd. % averaged over all nodes
16
16 Protocol Details For first gossip pkt, nodes transmit with p=1 Enables nodes to deduce neighbor dependences Transmitters piggyback pkt with parent-id from which it received the pkt Nodes record transmitter-id, and its parent-id, and deduce parent, child, sibling relationships …
17
17 So What is the Parent I.D (pid)? As mentioned previously, it is important for a node to establish neighbor dependences Some nodes might completely rely on another node for the gossip, while other nodes might not Header of each gossip message contains pid and required gossip probability field p required Each node maintains four sets: NeighborSet, ParentSet, SiblingSet, and ChildSet
18
18 Establishing Neighbor Relationships When a node received a gossip message, its relationship with the sender is established in the following way: Node A receives a message from X with pid = Y 1. Add X to NeighborSet 2. If Y is not in NeighborSet, add X to ParentSet 3. If Y is in ParentSet, add X to SiblingSet 4. If Y is in SiblingSet, add X to ChildSet Nodes in NeighborSet also exist in only one of the other 3 sets
19
19 Deducing Relationships Assume gossip sent by node i to node j If parent (i) Neighbor (j) Parent ( j ) i SABC E SA Parent = {A} Child = {A}
20
20 Parent = {A} Child = {A} Deducing Relationships Assume gossip sent by node i to node j If parent (i) Neighbor (j) Parent ( j ) i If parent (i) Neighbor (j) If parent (i) Parent (j), then Sibling ( j ) i If parent (i) Sibling (j), then Children ( j ) i If parent (i) Children (j), then Children ( j ) i SABC E AB Sibling = {B} Child = {B} Parent = {B}
21
21 Parent = {A} Child = {A} Deducing Relationships Assume gossip sent by node i to node j If parent (i) Neighbor (j) Parent ( j ) i If parent (i) Neighbor (j) If parent (i) Parent (j), then Sibling ( j ) i If parent (i) Sibling (j), then Children ( j ) i If parent (i) Children (j), then Children ( j ) i SABC E AE Sibling = {B} Child = {B} Parent = {B} AE
22
22 Parent = {A} Child = {A} Deducing Relationships Assume gossip sent by node i to node j If parent (i) Neighbor (j) Parent ( j ) i If parent (i) Neighbor (j) If parent (i) Parent (j), then Sibling ( j ) i If parent (i) Sibling (j), then Children ( j ) i If parent (i) Children (j), then Children ( j ) i SABC E Sibling = {B} Child = {B,E} Parent = {B,E} Sibling = {E}
23
23 Choosing Probabilities Each node calculates number of parents ( k ) Assume 99% assurance necessary for gossip Node suggests each parent to gossip using ‘ p ’ : 0.99 = ( 1 – (1 - p) k ) Each node receives multiple requests of ‘ p ’ Uses Max { p i } as its own gossip probability SABC E Parent={B,E}
24
24 Choosing Probabilities Each node calculates number of parents ( k ) Assume 99% assurance necessary for gossip Node suggests each parent to gossip using ‘ p ’ : 0.99 = ( 1 – (1 - p) k ) Each node receives multiple requests of ‘ p ’ Uses Max { p i } as its own gossip probability SABC E p = 0.9 p = 1.0
25
25 Choosing Probabilities Each node calculates number of parents ( k ) Assume 99% assurance necessary for gossip Node suggests each parent to gossip using ‘ p ’ : 0.99 = ( 1 – (1 - p) k ) Each node receives multiple requests of ‘ p ’ Uses Max { p i } as its own gossip probability SABC E p = 0 p = 0.9 p = 1.0
26
26 Reliability Node Failures Node failures affect broadcast Source node flags packet periodically (p=1) Allows for updating dependences Link Losses Node requests upstream nodes to retransmit We require each node to buffer few packets Children overhear this request Children do not request retransmissions themselves
27
27 Wireless Losses Resilience toward wireless losses necessary If F does not get a packet, all its dependents will also not get it Smart Gossip: F requests its parents for missing pkt (seq # j) F piggybacks { j } in following gossip packets Nodes A,B,C,D,E do not request for packet j They know that F is trying to retrieve it
28
28 Performance Evaluation Qualnet Simulator, version 3.7 Metrics used Average Reception Percentage Average Forwarding Percentage Resilience to link/node failures Network Information 100 randomly chosen topologies – 50 nodes each Transmission range is 280 meters Nodes placed in a 1000m 2 square, located uniformly at random
29
29 Performance Evaluation Continued Smart Gossip Compared with Static Gossip Compared with Adaptive Overhead and Adaptive Neighbor approaches Topology Aware – minimum p gossip that meets the reliability needs of the network will be used Topology Unaware – Uses one p gossip for ALL topologies tested
30
30 Topology-Aware Static Gossip Results Topology-Unaware Gossip: Must choose p ~ 1 in order to satisfy reliability requirements for all topologies
31
31 Average Forwarding Results For Static Gossip Gossip overhead increases linearly with Gossip Probability For some topologies, it may not be necessary to set p close to 1 This adds overhead and sparks the need for an adaptive protocol
32
32 Average Reception Percentage Comparisons Smart Gossip Adaptive Overhead Adaptive Neighbor
33
33 Forwarding Overhead
34
34 Adaptation to Node Failures
35
35 Conclusion Broadcast is an important problem Gossip is good – but not practical for sensor nets Need to adapt gossip based on topology / failures Smart Gossip Form dependence graphs using distributed protocol Dependence relations suggest suitable probability Results Overheads are low, and yet good percolation Robust to node and link failures
36
36 The End
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.