390 likes | 576 Views
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.
E N D
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
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
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
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