190 likes | 308 Views
Rumor Routing Algorithm For Sensor Networks. David Braginsky, Deborah Estrin. Property and Assumption. Property Power saving, improve network longevity Robust in dealing nodes failure Tunable, allow tradeoff between setup overhead and delivery reliability Assumption
E N D
Rumor Routing Algorithm For Sensor Networks David Braginsky, Deborah Estrin
Property and Assumption • Property • Power saving, improve network longevity • Robust in dealing nodes failure • Tunable, allow tradeoff between setup overhead and delivery reliability • Assumption • No coordinate system is available so location information is not known by nodes • Static topology
Application Area • Environment monitoring • Scatter thousands of nodes in areas that are difficult to access for study. • Events – localized phenomenon occurring in a fixed region of space • Queries – a request for information or order to collect data. • Traditional methods – query flooding or event flooding trying to find the best path and collect data to sink.
Shortest path always efficient? • Looking for shortest path by flooding consumes a lot of energy • Flooding causes a lot of collisions • Many applications only request a small amount of data back.
Basic Idea of Rumor Routing • Agent creates paths leading to each event • Query is sent on a random walk until it finds the event path • Setting path is important
Related Work • Directed Diffusion and Geo-Routing • Gossip Routing (query flooding) • Data –Centric Storage in sensornets • GRAdient Broadcast (event flooding) • Ant Algorithm
Algorithm Overview • Each node maintains a list of neighbors and its event table. • An agent is a long-lived packet, propagating information about local events to distant nodes. • Any node can generate a query, then forward the query in a random direction to find the path. The query keep going until its TTL expires or it finds the path. • If the node that originated the query determines the query died, it can retransmit, give up or flood the query.
Agent • Set up path by random walk • Aggregate paths
Agent contd. 1 • Optimize the paths in the network
Agent contd. 2 • Each agent carries a list of all the events it encountered among with the number of hops to that event. • Each node among the path maintains a table of events, the number of hops to that event and the next node in the path toward the event.
Agent contd. • A straightening algorithm is used when determining the agent’s next hop • Agent maintains a list of recently seen nodes. When it decides the next hop, it tries the nodes not in the list. When it passes a node, the node’s neighbors are added to the list. • A node that witnessed an event would generate an agent at a fixed probability in the simulation • The future work can do better by generating agents according to number of events, event size and node density. • For applications where events are temporal, the event table may have an expiration timestamp associated with each event
Query • A query can be generated at any time by any node. • Before reaching the path, nodes forward queries using the same straightening algorithm – keep a list of recently seen nodes and avoid visiting them. • Each query has a TTL. If the query dies, the node originating the query detects the failure and decide to retransmit it or flood the query.
Simulation • A network of N= {3000, 4000, 5000} nodes scattered randomly on a field of 200*200 m^2 • Each node can reliably send packets to any node within 5m from it • E = {10, 50, 100} events of circular shape with radius of 5m. 1000 queries are generated, each from a random node to a random event.
Compare to Event Flooding and Query Flooding N nodes, Q queries, E events: Rumor routing(we simply flood undelivered queries) Et = Es + Q*(Eq + N*(1000-Qf)/1000) Qf – number of delivered queries Es – setup energy Eq – the average energy per query Query flooding (Gossip) Et = Q*N Event flooding (GRAB) Et = E*N
Comparing contd. 1 Set up other parameters: • Variable agent numbers • Agent TTL (La) was tested for 100, 500, and 1000hops • Query TTL (Lq) was tested for 1000 and 2000 hops. • The best result requires only a small number of agents with a high TTL
Fault Tolerance • 0-5% nodes failure, above 90% of successful query delivery. • After 5% failure, delivery rate decreases dramatically.
Future Work • Network dynamics – events occurring at different time • Consider collisions • Non-random query pattern • Non Random Next Hop Selection • Parameter Setting Exploration – finding optimal parameters for a particular application