Routing in Sensor Networks. –Routing means carrying data packets from a source node to a...

18
Routing in Sensor Networks

Transcript of Routing in Sensor Networks. –Routing means carrying data packets from a source node to a...

Page 1: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Routing in Sensor Networks

Page 2: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

– RoutingRouting means carrying data packets from a source node to a means carrying data packets from a source node to a

destination node (usually called sinks in sensor networks destination node (usually called sinks in sensor networks

terminology)terminology)

– Such routing paths helps to create energy-efficient data Such routing paths helps to create energy-efficient data

dissemination paths between dissemination paths between sourcessources (sensors) and (sensors) and sinkssinks (global (global

processing unit or human interface devices)processing unit or human interface devices)

– Two kinds of routing: single-path and multi-path Two kinds of routing: single-path and multi-path

– Since energy efficiency is the most essential factor, routing Since energy efficiency is the most essential factor, routing

algorithms must be robust to failures and secure against the algorithms must be robust to failures and secure against the

compromised and malicious nodes to ensure data delivery without compromised and malicious nodes to ensure data delivery without

impacting the lifetime of the networkimpacting the lifetime of the network

Why Routing?

Page 3: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

– Probabilistic algorithm and makes packet forwarding decisions based on Probabilistic algorithm and makes packet forwarding decisions based on

localized informationlocalized information

– Based on a tree-like topology rooted at the sink of the networkBased on a tree-like topology rooted at the sink of the network

– Uses Uses forwardforward approach to contribute to end-to-end reliability approach to contribute to end-to-end reliability

– Avoids packet loss by sending multiple packets of the single eventAvoids packet loss by sending multiple packets of the single event

– Three sources of packets loss expected:Three sources of packets loss expected:

Isolated linkIsolated link

Patterned node failuresPatterned node failures

Malicious or misbehaving nodesMalicious or misbehaving nodes

Algorithm for Robust Routing in Volatile Environments (ARRIVE)

[Karlof+, 2002]

Page 4: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

TerminologyTerminology

– EventEvent: Identified by [SourceID, EventID]: Identified by [SourceID, EventID]

– LevelLevel: Each node has unique level indicating distance from source to sink (in terms : Each node has unique level indicating distance from source to sink (in terms

of hops)of hops)

– ParentsParents: Nodes one level closer to the sink: Nodes one level closer to the sink

– Neighbors: Neighbors: Nodes on the same level and be able hear each otherNodes on the same level and be able hear each other

– PushPush: Push packet to one of the neighbors: Push packet to one of the neighbors

– Forward: Forward: Forward packet to one of the parentsForward packet to one of the parents

– Forwarding Probability: Forwarding Probability: Included in the packet header and used to probabilistically Included in the packet header and used to probabilistically

select whether to push or forwardselect whether to push or forward

– Reputation History: Reputation History: Each node keeps this information for each of its parents and Each node keeps this information for each of its parents and

neighbors neighbors

– Convergence: Convergence: Prevents multiple packets of the same event being sent to same Prevents multiple packets of the same event being sent to same

source of failuresource of failure

ARRIVE

[Karlof+, 2002]

Page 5: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

– Achieves Achieves diversitydiversity in paths in two ways: in paths in two ways:

Upon receiving a packet, the next hop is selected probabilistically Upon receiving a packet, the next hop is selected probabilistically

based on link reliability and node reputationbased on link reliability and node reputation

When more than two or more packets of the same event are When more than two or more packets of the same event are

processed, these packets are ensured to follow different outgoing linksprocessed, these packets are ensured to follow different outgoing links

– Takes advantage of passive participation and needs to be used cautiouslyTakes advantage of passive participation and needs to be used cautiously

– Each nodes keeps the following information:Each nodes keeps the following information:

LevelLevel

Neighbors listNeighbors list

Parents listParents list

Reputation history of neighbors and parentsReputation history of neighbors and parents

Convergence history of specific eventsConvergence history of specific events

ARRIVE

[Karlof+, 2002]

Page 6: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

AssumptionsAssumptions

– The networks is assumed to be dense enough that sufficient multiplicity of paths The networks is assumed to be dense enough that sufficient multiplicity of paths

between sources and sink for algorithm to perform wellbetween sources and sink for algorithm to perform well

– The network is almost considered as a static networkThe network is almost considered as a static network

– Sensors are considered to have a low per-node costSensors are considered to have a low per-node cost

– Routes used by the packets are unlikely to be optimal due to the probabilistic nature Routes used by the packets are unlikely to be optimal due to the probabilistic nature

of the algorithmof the algorithm

– Messages flow from nodes to sink, not the other way aroundMessages flow from nodes to sink, not the other way around

– There is only one sink availableThere is only one sink available

Performance MetricsPerformance Metrics

– Event delivery ratioEvent delivery ratio

– Three other metrics measuring the cost of deploying ARRIVEThree other metrics measuring the cost of deploying ARRIVE

ARRIVE

[Karlof+, 2002]

Page 7: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Algorithm DescriptionAlgorithm Description

– Bread first search rooted at sink is used to initialize level, parents, neighbors state Bread first search rooted at sink is used to initialize level, parents, neighbors state

information at each nodeinformation at each node

– When a nodes hears a packets, it checks to see if the packet is addressed for itWhen a nodes hears a packets, it checks to see if the packet is addressed for it

– If so, threshold processing takes place. Nodes are filtered by their reputation and If so, threshold processing takes place. Nodes are filtered by their reputation and

convergence history of the neighbors and parentsconvergence history of the neighbors and parents

– A decision needs to be made to either to choose to forward the packet to a parent or A decision needs to be made to either to choose to forward the packet to a parent or

push it to one of its neighbors with the probability value found in the packet header. push it to one of its neighbors with the probability value found in the packet header.

This is randomly determined by the forwarding probability function PThis is randomly determined by the forwarding probability function P rr(f). (f).

– Each node is weighed by their reputation. The destination is randomly selected from Each node is weighed by their reputation. The destination is randomly selected from

the rest of the nodes (since bad reputation nodes are eliminated) the rest of the nodes (since bad reputation nodes are eliminated)

– If the the packet is forwarded to one of the parents, PIf the the packet is forwarded to one of the parents, P rr(f) is not changed; however, its (f) is not changed; however, its

value is increasedvalue is increased

ARRIVE

[Karlof+, 2002]

Page 8: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Algorithm for Robust Routing in Volatile Environments (ARRIVE) [Karlof+, 2002]

Figure 0: Overview of ARRIVEFigure 0: Overview of ARRIVEAdapted from [Karlof+ 2002]

Page 9: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Advantages:Advantages:

– High end-to-end reliabilityHigh end-to-end reliability

– Provides security by eliminating the compromised or malicious nodesProvides security by eliminating the compromised or malicious nodes

– By using multiple paths to forward the same event, the probability of the By using multiple paths to forward the same event, the probability of the

event reaching sink is increased and this also ensures to avoid packets event reaching sink is increased and this also ensures to avoid packets

being forwarded to the same broken linkbeing forwarded to the same broken link

– Reputation history assists in establishing a reliable pathReputation history assists in establishing a reliable path

ARRIVE

[Karlof+, 2002]

Page 10: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Disadvantages:Disadvantages:

– Extra power consumption for inactive nodes (passive listeners) are not Extra power consumption for inactive nodes (passive listeners) are not

consideredconsidered

– Better mechanism to take care problems caused by passive listeningBetter mechanism to take care problems caused by passive listening

– There is only one sink, packets are sent from sources to sink and not the There is only one sink, packets are sent from sources to sink and not the

other way aroundother way around

– Sensor may have storage problems due to maintaining information about Sensor may have storage problems due to maintaining information about

its neighbors and parents (reputation history)its neighbors and parents (reputation history)

– Maintaining multiple paths requires more resourcesMaintaining multiple paths requires more resources

ARRIVE

[Karlof+, 2002]

Page 11: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Suggestions/Improvements/Future WorkSuggestions/Improvements/Future Work::

– Beneficial to measure how much passive listening affects energy useBeneficial to measure how much passive listening affects energy use

– Nodes can be mobile during the simulation instead of staticNodes can be mobile during the simulation instead of static

– If there is a significant mobility, state information should be updated using a If there is a significant mobility, state information should be updated using a

better mechanism than floodingbetter mechanism than flooding

– Explanation of how multiple packets are generatedExplanation of how multiple packets are generated

– How much redundant data is sufficient to optimize the networkHow much redundant data is sufficient to optimize the network

– Energy-awareness needs to be taken into considerationEnergy-awareness needs to be taken into consideration

– Possibly use energy level parameter in the decision makingPossibly use energy level parameter in the decision making

– Include probabilistic analysis of the algorithmInclude probabilistic analysis of the algorithm

– Study the tradeoff the communication cost of ARRIVE vs. its robustnessStudy the tradeoff the communication cost of ARRIVE vs. its robustness

– Consider load balancing issues such that nodes near the sink deplete their Consider load balancing issues such that nodes near the sink deplete their

resources sooner than nodes farther awayresources sooner than nodes farther away

– Lack of quantitative analysis of passive participation for security reasonsLack of quantitative analysis of passive participation for security reasons

– Experiment with larger number of eventsExperiment with larger number of events

ARRIVE

[Karlof+, 2002]

Page 12: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Preliminaries

Each node has its neighbor list, and an events table, with forwarding information to all the events it knows.

After a node witnesses an event, an agent may be created, which is a long-lived packet and travels around the network. Each agent contains an events table, including the routing information for all events it knows.

Since an event happens in a zone, composed of several or many nodes, it’s possible more than one agents are created from the zone and moving in the network.

Rumor Routing Algorithm for Sensor Networks

[Braginsky+ 2002]

Page 13: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Algorithm DescriptionAlgorithm Description

When a node observes an event, it will add the event to its event table and may also create an agent

An agent will travel in the network and its routing table will be updated if there is a shorter path to an event within the routing table of the node it is visiting

In a similar way, the routing table of the currently visited node will be updated if its route to an event is more costly than the agent’s

Any node may generate a query for a particular event. If it knows the route to the event, it will transmit the query. Otherwise, the query will be sent in a random direction, and this continues until the query reach a node which has a route to the event

Rumor Routing Algorithm for Sensor Networks

[Braginsky+ 2002]

Page 14: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Adapted from [Braginsky+ 2002]

Rumor Routing Algorithm for Sensor Networks

[Braginsky+ 2002]

Page 15: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Adapted from [Braginsky+ 2002]

Rumor Routing Algorithm for Sensor Networks

[Braginsky+ 2002]

Figure 3: The agent modifies the exist path (left) Figure 3: The agent modifies the exist path (left) to a more optimal one (right)to a more optimal one (right)

Page 16: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Advantages:Advantages:

Deliver queries to events in large networks with less average cumulative hops and lower energy requirements than simple flooding.

The algorithm can handle node failure gracefully, degrading its delivery rate linearly with the number of failed nodes.

Rumor Routing Algorithm for Sensor Networks

[Braginsky+ 2002]

Page 17: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

Disadvantages:Disadvantages:

The path found by the agent sometimes is not the shortest and could be unavailable if one of the links of the path is broken.

The agent may carry lots of routing information of events even some events have disappeared.

No hints from the paper about the number of agents which should be created from the event zone.

Can the nodes make a query for an event if no such event is existing in the network?

It seems that each event should have an id, but no information is provided in the paper.

Optimization is not considered

Rumor Routing Algorithm for Sensor Networks

[Braginsky+ 2002]

Page 18: Routing in Sensor Networks. –Routing means carrying data packets from a source node to a destination node (usually called sinks in sensor networks terminology)

[Braginsky+ 2002] D. Braginsky and D. Estrin, Rumor Routing Algorithm for Sensor Networks, First Workshop on Sensor Networks and Applications (WSNA), September 28, 2002, Atlanta, Georgia, pp. 22-31.

[De+ 2003] S. De, C. Qiao, and H. Wu, Meshed multipath routing with selective forwarding: an efficient strategy in wireless sensor networks, Computer Networks, 43, Elsevier Journal, 2003, pp. 481-497.

[Ganesan+ 2002] D. Ganesan,  R. Govindan, S. Shenker and D. Estrin, Highly Resilient, Energy Efficient Multipath Routing in Wireless Sensor Networks,  Mobile Computing and Communications Review (MC2R) Vol 1., No. 2. 2002.

[Intanagonwiwat + 2000] C. Intanagonwiwat, R. Govindan and D. Estrin, Directed Diffusion: A Scalable and Robust Communication Paradigm for Sensor Networks, In Proceedings of the Sixth Annual International Conference on Mobile Computing and Networks (MobiCOM 2000), August 2000, Boston, Massachusetts.

[Karlof+ 2002] C. Karlof, Y. Li and J. Polastre, ARRIVE: Algorithm for Robust Routing in Volatile Environments, UC Berkley, Tech Report, May 2002.

[Pottie+ 2000] G. Pottie, W. Kaiser, L. Clare, and H. Marcy, Wireless Integrated Sensor Networks, Communications of the ACM, Vol. 43, No. 5, pp. 51-58, May 2000

[Weilian+ 2002] W. Su and I. Akyildiz, A Stream Enabled Routing (SER) Protocol for Sensor Networks, Med-hoc-Net 2002, Sardegna, Italy, September 2002.

References