Rumor Routing Algorithm For sensor Networks

Rumor Routing Algorithm For
sensor Networks
David Braginsky,
Computer Science Department, UCLA
Presented By: Yaohua Zhu
CS691 Spring 2003
Outline









Introduction
Flooding Event
Flooding Query
Rumor Routing Algorithm
Agents
Query
Simulation Results
Related Work
Future Work
Wireless Sensor Network

Wireless communication capability
– Emerging low power
– Small form-factor processors

Sensor
– Allow for larger-scale, extremely dense
network
Design Consideration








Each node does not posses significant
computational power
Sensing highly distributed
Algorithms highly distributed, because local
communication with stringent power requirements
Self-configuring, Highly scalable, redundant
Robust with shifting topologies
Gather data from different parts of network
Without taxing its limited bandwidth and power
Reduce failure rates
Basic Idea

Routing queries to nodes that have observed
a particular event
 Retrieve data on the event
Event and Query

Event
– An abstraction, identifying anything from sensor
readings
– Assumed be localized phenomenon
– Occurring in a fixed region of space

Query
– Be request for information
– Orders to collect more data
– Query arrives destination, begin to flow back to query’s
originator
Flooding Event and Flooding
Query

Flood event
– For few events and many queries
– Set up gradients towards it

Flood query
– For less queries per event
– Less data generated by each event
Query Flooding

Assume no collisions
 For N nodes we must perform N transmissions per
queries
 For Q queries the transmissions total is
N*Q

Energy used is independent of the number of
events tracked by network
 Useful when the number of events is very high,
compared to the number of queries
Event Flooding






When node witnesses an event, it can flood the
network. All other nodes form gradients toward
the event
N is transmissions per event
E is the number of events
The total energy expended by event flooding is
E*N
It is independent of the number of queries
Efficient when the number of events is low,
compared to the number of queries
Query Flooding and Event
Flooding
Idea of Rumor Routing
Algorithm

Fill the region between query flooding and
event flooding
 Only useful if the number of queries
compared to the number of events is
between the two intersection points
 An application of this ratio can use a hybrid
of rumor routing and flooding to best utilize
available power
Algorithm Overview





Assume network consists of densely distributed
wireless sensor nodes with relatively short
symmetric radio range
Nodes records events and able to route queries
Each node maintains a list of neighbors, events
table, forwarding information to all the events it
knows.
Neighbors list created and maintained by actively
broadcasting a request
Since the simulation were static topology, each
node broadcast its id at the beginning
Contd…(node)

When node witnesses an event, it adds it to
its event table, with a distance of zero to the
event
 Node also has a random chance to
generating an agent
 The probability of generating an agent is an
algorithm parameter
Contd…(Agent)

An agent is a long-lived packet
 Agent travels the network
 Propagating information about local events
to distant nodes
 Contains events table
 Synchronizes with every node it visits
 Travels network some number of hops, then
dies
Contd…(query)





Any nodes may generate a query and routed to a
particular event
If node has a route to the event, it will transmit the
query
It it does not, it will forward the query in a random
direction
Continues until the query TTL expired, or query
reaches a node that has observed the target event
If the node originated the query did not reach a
destination, it can always flood the query
Agents

Each agent informs nodes it encounters of
any events along its route
 Carries a list of events
 Along with the number of hops to that event
 When it arrives node A from neighbor B, it
synchronize its list with the nodes list
Contd…(Agents)
A’s route to E1 is
longer than the agent’s
 Agent does not know
to route to E2

Contd…(Agents)

After the table
synchronization
completes, the event
table will contain the
best routs to the event
Contd…(Agents)





Straightening algorithm used to determine the
agent’s next hop
Agent maintains a list of recently seen nodes
When arrives a node, it adds all node’s neighbors
to the list
When picking next hop, it first try nodes not in the
list
It allows agent to create fairly straight paths
Contd…(Agents)

Policy to generate agent
 Node that witnessed an event generate an
agent
 The number of agents depends on the
number of event, event size, and the node
density
 Event table have expiration timestamp
Queries





A query can be generated at any time by any nodes
and target to an event
If a node has a route toward target event, it
forwards the query along the route
If it does not, forward to random neighbor and
assume the query has not exceeded its TTL
Query employs same mechanism as the agent,
keep list of recently seen nodes
Some queries may not reach their destination,
application must detect the failure, flooding query
again or increase the queries TTL
Rumor Routing






Create paths leading to each event
Event flooding creates a network-wide gradient
field
Query sent random walk until find the event path
No flooding event across the network
Query discovers event path, then route directly to
the event
If path cannot be found, application re-submitting
the query, flooding it
Set up Path
Contd…

Agent A1 create path
state leading to E1
 Agent A2 create path
state leading to E2
 When A2 crosses the
path created by A1, it
create aggregate path
state leading to E1 and
E2
Contd…

Agent optimize the path if they find shorter ones
 When agent find a node route to event is more
costly than its own, it will update the node’s
routing table to efficient path
Comparison Event Routing
and Query Routing

Query flooding: Et = Q * N
 Event flooding: Et = E * N
 The algorithm has addition energy for path
setup and query routing
Et = Es + Q * (Eq + N * (1000 – Qf) / 1000 )
– N * (1000 – Qf) additional send
– Qf is the number of delivered queries
– Eq is the energy spent routing queries
Simulation Results
Simulation Results
Algorithm Stability

Because this algorithm relies on random
decision(agent and queries)
 Performance not vary significantly over several
runs is important
 To test same set of parameters run 50 simulations,
Average Te 118, 99% of the values for Te will be
found between 104 and 131
 Algorithm is stable for particular configuration
Fault Tolerance

After the routes were established some of
the nodes were disabled
 Probability of delivery degraded slowly for
0-20% node failure
 Over 20% node failure, the performance
degraded more severely
Related Work

GRAdient Broadcast
 Gossip Routing
 Ant Algorithm
 Directed Diffusion and Geo-Routing
 Data-Centric Storage in Sensornets
GRAdient Broadcast(GRAB)





Build a cost field toward a particular node, then
reliably routing queries across a limited size mesh
toward that node
With overhead of network flood
Queries route along short paths
Delivered cheaply and reliably
Not designed specifically to support the network
process, influenced the work of event-centric
routing state in network
Gossip Routing

Nodes flood by sending message to some of
neighbors
 By the redundancy in the link, most nodes
receive the flooded packed
 Used to deliver query or flood events
 Less overhead than conventional flooding
 Not be designed specifically for energy
constrained contexts
Ant Algorithm





Agent traverse the network encoding the quality of
the path they have traveled, and leave it the
encoded path as state in the nodes
At every node, an agent picks its next hop
probabilistically, biased toward already know
good paths
Faster and more through exploration good regions
Very effective in dealing with failure, because
always some amount if exploration
But due to large number of nodes, the ant agents
required to achieve good results
Directed Diffusion and GeoRouting

Provide a mechanism for doing a limited
flood of a query toward the event
 Set reverse gradients to send data back
along the best route
 Results in high quality paths
 But requires an initial flood of the query for
exploration
Data-Centric Storage in
Sensornets

Allow access to named data by hashing the
name to a geographic region in the network
 Used to efficiently deliver queries to named
events by storing the location of the events
 Relies on a global coordinate system
Rumor Routing Algorithm





Presents good alternative to event and query
flooding
Performance depend on event distribution,
guarantee better results than event flooding
Successful under all simulated node and event
densities
Difficult to predict the max query to event ratio
No reliable trend has been found in the max query
to event ratio with increasing node and event
densities
Summary Slide

Future Work
 Conclusion
 References
Future Work

Wider range of simulation scenarios
–
–
–
–
–

Network dynamics
Consider collisions
Asynchronous event
Non localized event
Non random query pattern
Algorithm design alternatives
– Non random next hop selection
– Use of constrained flooding
– Parameter setting exploration