rumor routing algorithm for sensor networks
Post on 12-Feb-2016
99 Views
Preview:
DESCRIPTION
TRANSCRIPT
Rumor Routing Algorithm For Rumor Routing Algorithm For sensor Networkssensor Networks
David Braginsky, Computer Science Department, UCLA
Presented By: Yaohua Zhu
CS691 Spring 2003
OutlineOutline Introduction Flooding Event Flooding Query Rumor Routing Algorithm Agents Query Simulation Results Related Work Future Work
Wireless Sensor NetworkWireless Sensor Network
Wireless communication capability– Emerging low power– Small form-factor processors
Sensor– Allow for larger-scale, extremely dense
network
Design ConsiderationDesign 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 IdeaBasic Idea
Routing queries to nodes that have observed a particular event
Retrieve data on the event
Event and QueryEvent 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 Flooding Event and Flooding QueryQuery
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 FloodingQuery 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 FloodingEvent 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 Query Flooding and Event FloodingFlooding
Idea of Rumor Routing Idea of Rumor Routing AlgorithmAlgorithm
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 OverviewAlgorithm 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)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)Contd…(Agent)An agent is a long-lived packetAgent travels the networkPropagating information about local events
to distant nodesContains events tableSynchronizes with every node it visitsTravels network some number of hops, then
dies
Contd…(query)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
AgentsAgents
Each agent informs nodes it encounters of any events along its route
Carries a list of eventsAlong with the number of hops to that eventWhen it arrives node A from neighbor B, it
synchronize its list with the nodes list
Contd…(Agents)Contd…(Agents)
A’s route to E1 is longer than the agent’s
Agent does not know to route to E2
Contd…(Agents)Contd…(Agents)
After the table synchronization completes, the event table will contain the best routs to the event
Contd…(Agents)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)Contd…(Agents)
Policy to generate agentNode that witnessed an event generate an
agentThe number of agents depends on the
number of event, event size, and the node density
Event table have expiration timestamp
QueriesQueries 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 RoutingRumor 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 PathSet up Path
Contd…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…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 Comparison Event Routing and Query Routingand Query Routing
Query flooding: Et = Q * NEvent flooding: Et = E * NThe algorithm has addition energy for path
setup and query routingEt = 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 ResultsSimulation Results
Simulation ResultsSimulation Results
Algorithm StabilityAlgorithm 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 ToleranceFault 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 WorkRelated Work
GRAdient BroadcastGossip RoutingAnt AlgorithmDirected Diffusion and Geo-Routing Data-Centric Storage in Sensornets
GRAdient Broadcast(GRAB)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 RoutingGossip RoutingNodes flood by sending message to some of
neighborsBy the redundancy in the link, most nodes
receive the flooded packedUsed to deliver query or flood eventsLess overhead than conventional floodingNot be designed specifically for energy
constrained contexts
Ant AlgorithmAnt 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-Directed Diffusion and Geo-RoutingRouting
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 pathsBut requires an initial flood of the query for
exploration
Data-Centric Storage in Data-Centric Storage in SensornetsSensornets
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 AlgorithmRumor 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 SlideSummary Slide
Future WorkConclusionReferences
Future WorkFuture 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
top related