smartgossip an adaptive broadcast service for wireless sensor networks n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
SmartGossip: An Adaptive Broadcast Service for Wireless Sensor Networks PowerPoint Presentation
Download Presentation
SmartGossip: An Adaptive Broadcast Service for Wireless Sensor Networks

Loading in 2 Seconds...

play fullscreen
1 / 36

SmartGossip: An Adaptive Broadcast Service for Wireless Sensor Networks - PowerPoint PPT Presentation


  • 189 Views
  • Uploaded on

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).

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'SmartGossip: An Adaptive Broadcast Service for Wireless Sensor Networks' - clove


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
smartgossip an adaptive broadcast service for wireless sensor networks

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)

statement of the problem
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
slide3
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, pgossip
      • Choosing pgossip appropriately can lead to better network reliability and better load-balancing
slide4
Static and Adaptive Gossiping
    • Must choose pgossip correctly
      • This depends on the network topology – e.g. number of nodes, node density, etc.
      • Pre-assigning a value to pgossip leads to inefficiency
    • In static gossip, all nodes are given the same gossip probability
    • We need a protocol that can adaptively control pgossip to result in high efficiency and reliability
past static gossip methods
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
smart gossip introduction
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
smart gossip introduction cont d
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

how to implement smart gossip
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” ?
we ask
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

we ask1
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

we ask2

15% of packets

will not reach

these nodes

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

the main idea behind smart gossip
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
simple example
Simple Example …
  • When H spreads a gossip
    • F gets gossip only from G
    • F asks G to always gossip
    • Thus, pG= 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 pF = 1.0
for example
For Example …
  • B asks F to always gossip,

thus pF = 1.0

  • B does not require A,C,D,E

to gossip at all

  • Thus pA = 0, pC = 0, pD = 0, pE = 0

Observe that only 2 transmissions

(from G and F) are sufficient for broadcast

average reception and forwarding percentages
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
protocol details
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 …
so what is the parent i d pid
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 prequired
    • Each node maintains four sets: NeighborSet, ParentSet, SiblingSet, and ChildSet
establishing neighbor relationships
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
deducing relationships

SA

SA

SA

Parent = {A}

Child = {A}

Parent = {A}

Deducing Relationships
  • Assume gossip sent by node i to node j
    • If parent (i)  Neighbor (j)
      • Parent ( j )  i

S

A

B

C

E

deducing relationships1

AB

AB

AB

Parent = {A}

Parent = {B}

Child = {A}

Child = {B}

Parent = {A}

Sibling = {B}

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

S

A

B

C

E

deducing relationships2

AE

AE

AE

Parent = {A}

Parent = {B}

Child = {A}

Child = {B}

Parent = {A}

Sibling = {B}

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

S

A

B

C

E

deducing relationships3

Parent = {A}

Parent = {B,E}

Child = {A}

Child = {B,E}

Parent = {A}

Sibling = {B}

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

Sibling = {E}

S

A

B

C

E

choosing probabilities
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 { pi } as its own gossip probability

S

A

B

C

Parent={B,E}

E

choosing probabilities1
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 { pi } as its own gossip probability

p = 1.0

p = 1.0

p = 0.9

S

A

B

C

p = 0.9

p = 1.0

E

choosing probabilities2
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 { pi } as its own gossip probability

p = 1.0

p = 1.0

p = 0.9

p = 0

S

A

B

C

E

p = 0.9

reliability
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
wireless losses
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
performance evaluation
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 1000m2 square, located uniformly at random
performance evaluation continued
Performance Evaluation Continued
  • Smart Gossip Compared with Static Gossip
    • Compared with Adaptive Overhead and Adaptive Neighbor approaches
      • Topology Aware– minimum pgossip that meets the reliability needs of the network will be used
      • Topology Unaware– Uses one pgossip for ALL topologies tested
topology aware static gossip results
Topology-Aware Static Gossip Results
  • Topology-Unaware Gossip:
  • Must choose p ~ 1 in order to satisfy reliability requirements for all topologies
average forwarding results for static gossip
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
average reception percentage comparisons
Average Reception Percentage Comparisons

Smart Gossip

Adaptive Overhead

Adaptive Neighbor

conclusion
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