You are on page 1of 39

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 querys

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)
As route to E1 is longer than the agents 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 agents next hop Agent maintains a list of recently seen nodes When arrives a node, it adds all nodes 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 nodes 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

You might also like