Professional Documents
Culture Documents
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
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
An abstraction, identifying anything from sensor
Query
Be request for information Orders to collect more data Query arrives destination, begin to flow back to querys
originator
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
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
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
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
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
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
Network dynamics Consider collisions Asynchronous event Non localized event Non random query pattern