Rumor Routing Algorithm For sensor Networks

advertisement

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 Geo-

Routing

 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

Download