David Braginsky,
Computer Science Department, UCLA
Presented By: Yaohua Zhu
CS691 Spring 2003
Introduction
Flooding Event
Flooding Query
Rumor Routing Algorithm
Agents
Query
Simulation Results
Related Work
Future Work
Wireless communication capability
– Emerging low power
– Small form-factor processors
Sensor
– Allow for larger-scale, extremely dense network
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
Routing queries to nodes that have observed a particular event
Retrieve data on the event
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
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
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
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
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
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
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
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
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
A’s route to E1 is longer than the agent’s
Agent does not know to route to E2
After the table synchronization completes, the event table will contain the best routs to the event
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
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
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
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
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
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
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
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
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
GRAdient Broadcast
Gossip Routing
Ant Algorithm
Directed Diffusion and Geo-Routing
Data-Centric Storage in Sensornets
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
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
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
Future Work
Conclusion
References
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