Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes...

33
Routing in Sensor Networks

Transcript of Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes...

Page 1: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Routing inSensor Networks

Page 2: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Sensor Networks vs. Ad hoc Networks

– Higher number of sensor nodes (several orders of magnitude) Higher number of sensor nodes (several orders of magnitude)

– Dense deploymentDense deployment

– Prone to failuresProne to failures

– Limited in power, computation and memoryLimited in power, computation and memory

– May not have global identification (ID) due to high overhead and May not have global identification (ID) due to high overhead and the total number of sensorsthe total number of sensors

Deployment:Deployment:

– RandomlyRandomly

– Pre-determined or engineeredPre-determined or engineered

Page 3: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Sensor Networks Preliminaries

– For large scale environment monitoring applications, dense For large scale environment monitoring applications, dense

sensor networks are mainly used sensor networks are mainly used

– Sensing capabilities should be distributed and coordinated Sensing capabilities should be distributed and coordinated

amongst the sensor nodesamongst the sensor nodes

– Algorithms deployed should be localized since transmissions Algorithms deployed should be localized since transmissions

between large distances are expensive and lowers networks life between large distances are expensive and lowers networks life

timetime

– These networks should be self-configuring, scalable, redundant These networks should be self-configuring, scalable, redundant

and robust during topology changesand robust during topology changes

Page 4: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

– 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 5: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

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

Page 6: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

– 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

Page 7: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

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

Page 8: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

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

Page 9: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

ARRIVE

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

Page 10: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

ARRIVE

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

Page 11: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

ARRIVE

Suggestions/Improvements/Future Work:Suggestions/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

Page 12: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Rumor Routing Algorithm

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.

Page 13: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Rumor Routing Algorithm

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’s 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.

Page 14: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Rumor Routing Algorithm

Adapted from [Braginsky+ 2002]

Page 15: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Rumor Routing Algorithm

Adapted from [Braginsky+ 2002]

Page 16: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Rumor Routing Algorithm

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.

Page 17: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

Rumor Routing Algorithm

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

Page 18: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

– SERSER protocol allows sources to choose the routes based on the instruction protocol allows sources to choose the routes based on the instruction

(or task) provided by the sinks(or task) provided by the sinks

– An instruction is a predefined as an identifier value instead of attributes being An instruction is a predefined as an identifier value instead of attributes being

assigned to task as in the case of directed diffusion [Intanagonwiwat + 2000]. assigned to task as in the case of directed diffusion [Intanagonwiwat + 2000].

Therefore, only identifier is sent rather than the attribute list, resulting in Therefore, only identifier is sent rather than the attribute list, resulting in

memory conservationmemory conservation

– It takes into account the available energy of the sensor nodes, QoS It takes into account the available energy of the sensor nodes, QoS

requirements of the instruction, memory limitation of nodes, and the localized requirements of the instruction, memory limitation of nodes, and the localized

effect of dense nodeseffect of dense nodes

– Sinks can give new instructions to the sources without establishing another Sinks can give new instructions to the sources without establishing another

pathpath

A Stream Enabled Routing (SER) Protocol for Sensor Networks[Weilian+ 2002]

Page 19: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

SER

– Benefits of dynamic set-up of routes include:Benefits of dynamic set-up of routes include: Periodic updates of routes is not needed Periodic updates of routes is not needed

Adapts to failures and cope with topology changesAdapts to failures and cope with topology changes

No routing table is needed at each sensor nodeNo routing table is needed at each sensor node

New sensor nodes can be added into the route selectionNew sensor nodes can be added into the route selection

The routes are determined based on the QoS requirements of sourcesThe routes are determined based on the QoS requirements of sources

Four types of communications are allowed: one-to-one, one-to-many, Four types of communications are allowed: one-to-one, one-to-many,

many-to-one and many-to-manymany-to-one and many-to-many

– Four types of messages are used:Four types of messages are used: Scout messageScout message (S-message) (S-message)

Information messageInformation message (I-message) (I-message)

Neighbor-neighbor messageNeighbor-neighbor message (N-message) (N-message)

Update messageUpdate message (U-message) (U-message)

Page 20: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

SER OverviewSER Overview

– SER has seven phases:SER has seven phases:

Source Discovery Source Discovery

Route SelectionRoute Selection

Route EstablishmentRoute Establishment

Route ReconnectionRoute Reconnection

I-message TransmissionI-message Transmission

Instruction UpdateInstruction Update

Task TerminationTask Termination

– S-message is used during the source discovery to determine sources that will S-message is used during the source discovery to determine sources that will

process the instruction (or task) specified in the S-messageprocess the instruction (or task) specified in the S-message

– Sources decide the type and level of the routes needed by the instructionSources decide the type and level of the routes needed by the instruction

– There are four types of routes, each with two levels (i.e., level-1 and level-2)There are four types of routes, each with two levels (i.e., level-1 and level-2)

– The The µµ value is the radius of the level-2 routes value is the radius of the level-2 routes

SER

Page 21: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

SER OverviewSER Overview

– StreamStream: Identified by both the type and the level of route: Identified by both the type and the level of route

– Each level-2 stream includes level-1 streamEach level-2 stream includes level-1 stream

– In level-2, the size of the radius In level-2, the size of the radius µµ of the stream can be determined based on QoS of the stream can be determined based on QoS

specified in the instructionspecified in the instruction

– Combination of types and levels creates different kinds of QoS for a streamCombination of types and levels creates different kinds of QoS for a stream

– After streams are chosen, the source sends N-message to establish the streams After streams are chosen, the source sends N-message to establish the streams

back to the sinkback to the sink

– The repairs of streams are accomplished via N-message and S-messageThe repairs of streams are accomplished via N-message and S-message

– Once the streams are accomplished, data travels from sources to the sink through Once the streams are accomplished, data travels from sources to the sink through

either level-1 or level-2 stream with I-messageeither level-1 or level-2 stream with I-message

– The sink can update the instruction (or task) at the sources through either level-1 or The sink can update the instruction (or task) at the sources through either level-1 or

level-2 stream using U-messagelevel-2 stream using U-message

– Both sources and sink can terminate the streams using U-messageBoth sources and sink can terminate the streams using U-message

SER

Page 22: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

1. Source Discovery1. Source Discovery

– A sink broadcasts an S-message to find routes from sink to sourceA sink broadcasts an S-message to find routes from sink to source

– S-message contains the following fields:S-message contains the following fields:

SER

TID NAP LID NH AE

TIDTID: Task ID: Task ID

NAPNAP: Network Access Point (indicates where the instruction is originated; represents a : Network Access Point (indicates where the instruction is originated; represents a

unique sink)unique sink)

LIDLID: Local ID (each node has a local ID that is randomly selected from a set): Local ID (each node has a local ID that is randomly selected from a set)

NHNH: Number of hops from the sink: Number of hops from the sink

AEAE: Average energy of a route: Average energy of a route

AE = NHi-1 * AEi-1 + Ei

NHi-1 + 1

Page 23: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

1. Source Discovery1. Source Discovery

– TID has the following fields:TID has the following fields:

SER

LI MT INS TLOC

LILI: Length indicator: Length indicator

MTMT: Message type (MT=0 (S-message); MT=1 (I-message); MT=2 (U-message); : Message type (MT=0 (S-message); MT=1 (I-message); MT=2 (U-message);

MT=3 (N-message); MT=3 (N-message);

INSINS: Instruction (Maps a numeric value to a specific instruction): Instruction (Maps a numeric value to a specific instruction)

TLOCTLOC: Targeted location: Targeted location

– When a sensor node receives an S-message, it determines if the instruction (INS) When a sensor node receives an S-message, it determines if the instruction (INS)

is intended for the nodeis intended for the node

– If the INS in the S-message is not intended for the node, the node stores the fields If the INS in the S-message is not intended for the node, the node stores the fields

of S-message in a connection-tree (C-tree)of S-message in a connection-tree (C-tree)

Page 24: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

1. Source Discovery1. Source Discovery

– C-tree is a logical tree which represents possible connections through the node. C-C-tree is a logical tree which represents possible connections through the node. C-

tree maintains the node’s neighbors that can participate in a routing back to sinktree maintains the node’s neighbors that can participate in a routing back to sink

– DSPDSP: Downlink Sensor Problem (indicates if the downlink sensor node is having : Downlink Sensor Problem (indicates if the downlink sensor node is having

problem in routing I-message)problem in routing I-message)

– NSNS: Node Selected (indicates if the node is selected for routing): Node Selected (indicates if the node is selected for routing)

– DLIDDLID: LID of downlink sensor node (store the LID value of neighbor node which will : LID of downlink sensor node (store the LID value of neighbor node which will

route the I-message back to sink)route the I-message back to sink)

– ULIDULID: LID of uplink sensor node (U-message can be forwarded to sources from the : LID of uplink sensor node (U-message can be forwarded to sources from the

sink or route reconnection is possible using N-message)sink or route reconnection is possible using N-message)

– A sensor node in an established route knows the LID values of both uplink and A sensor node in an established route knows the LID values of both uplink and

downlink nodesdownlink nodes

– Initially, DLID and ULID values are not set and DSP and NS values are set to OFFInitially, DLID and ULID values are not set and DSP and NS values are set to OFF

– Updated values of AE, NH and LID fields of S-message is broadcast to neighborsUpdated values of AE, NH and LID fields of S-message is broadcast to neighbors

SER

Page 25: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

1. Source Discovery1. Source Discovery

– If sensor node receive the same S-message from its neighbors, it dismisses itIf sensor node receive the same S-message from its neighbors, it dismisses it

– The sources store S-message in a task-tree (T-tree)The sources store S-message in a task-tree (T-tree)

– T-tree has T-tree has XXDLID values since source can select up to DLID values since source can select up to XXLIDs to route I-message LIDs to route I-message

back to the sink based on QoS requirementback to the sink based on QoS requirement

– The max value of The max value of xx is the number of neighbor nodes is the number of neighbor nodes

– Each DLID value corresponds to a DSP indicatorEach DLID value corresponds to a DSP indicator

– In the T-tree, the leaf nodes has no ULID and NS indicator since sources are In the T-tree, the leaf nodes has no ULID and NS indicator since sources are

destination of S-messagedestination of S-message

– A source can receive A source can receive xxS-message since it has S-message since it has xx neighbors neighbors

– Route associated with the first received S-message is considered shortest routeRoute associated with the first received S-message is considered shortest route

– Sources selects neighbor node to send I-message back to sink based on the QoS Sources selects neighbor node to send I-message back to sink based on the QoS

requirement of INSrequirement of INS

SER

Page 26: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

2. Route Selection2. Route Selection

– Once the sources receive the S-message, they determine the QoS requirement of Once the sources receive the S-message, they determine the QoS requirement of

task in the S-messagetask in the S-message

– There are four types of streams for communication between sources and sinks and There are four types of streams for communication between sources and sinks and

each stream can either be level-1 or level-2:each stream can either be level-1 or level-2:

Type 1: Time Critical But Not Data CriticalType 1: Time Critical But Not Data Critical

Type 2: Data Critical But Not Time CriticalType 2: Data Critical But Not Time Critical

Type 3: Not Time and Data CriticalType 3: Not Time and Data Critical

Type 1: Data and Time CriticalType 1: Data and Time Critical

– After the sources select the neighbor nodes, the sources broadcast an N-message After the sources select the neighbor nodes, the sources broadcast an N-message

to their neighbors indicating the level and size of the streamto their neighbors indicating the level and size of the stream

– N-message contains the following fields:N-message contains the following fields:

SER

TID NAP LID SLID MES SLID: Selected IDMES: Message

Page 27: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

2. Route Selection2. Route Selection

– If stream is level-1, If stream is level-1, µµ = 0 (width of the stream) = 0 (width of the stream)

– At level-1, messages are routed back to the sink via hop-by-hop At level-1, messages are routed back to the sink via hop-by-hop

communication. Message are sent to only one nodecommunication. Message are sent to only one node

– Level-2 stream contains level-1 stream which serves as a backbone in setting up Level-2 stream contains level-1 stream which serves as a backbone in setting up

level-2 streamlevel-2 stream

– The value of The value of µµ is the number of hops away from the nodes in the level-1 stream is the number of hops away from the nodes in the level-1 stream

– Messages can flow downhill to the sink or uphill to the sources by flooding through Messages can flow downhill to the sink or uphill to the sources by flooding through

only the nodes that are part of the streamonly the nodes that are part of the stream

– I-message flows downhill from sources to sink by using NH value stored in each I-message flows downhill from sources to sink by using NH value stored in each

node in the C-treenode in the C-tree

– The nodes near to the sources have higher NH valuesThe nodes near to the sources have higher NH values

– U-message flows uphill from sink to sources by using the negative of NH valueU-message flows uphill from sink to sources by using the negative of NH value

– The nodes near to the sources have higher negative NH valuesThe nodes near to the sources have higher negative NH values

SER

Page 28: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

3. Route Establishment3. Route Establishment

– N-message is used by a sensor node to inform neighbors about its local informationN-message is used by a sensor node to inform neighbors about its local information

– The source sends an N-message to establish stream back to the sinkThe source sends an N-message to establish stream back to the sink

– Sensor nodes that are not part of a stream delete all data associated with N-Sensor nodes that are not part of a stream delete all data associated with N-

message from C-treemessage from C-tree

– If intermediate nodes between the sources and sinks have not received an N-If intermediate nodes between the sources and sinks have not received an N-

message in response to S-message in a set time interval, the sensor node deletes message in response to S-message in a set time interval, the sensor node deletes

the C-tree branch that is associated to S-messagethe C-tree branch that is associated to S-message

– After the N-message arrives to the sink, the minimum delay or maximum average After the N-message arrives to the sink, the minimum delay or maximum average

energy stream is establishedenergy stream is established

– Sources can start sending I-messages to the sinkSources can start sending I-messages to the sink

– I-message contains the following fields:I-message contains the following fields:

SER

TID FI CNH PayloadFI: Flow Indicator (message going uphill or downhill)CNH: Current number of hopsPayload: Description

Page 29: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

4. I-message Transmission4. I-message Transmission

– The neighbor nodes can determine if they need to route the I-message by the TID The neighbor nodes can determine if they need to route the I-message by the TID

since each neighbor nodes maintain a C-treesince each neighbor nodes maintain a C-tree

– When a source broadcasts I-message, it sends CNH field with the value from T-treeWhen a source broadcasts I-message, it sends CNH field with the value from T-tree

– Intermediate nodes between sources and sink use C-treeIntermediate nodes between sources and sink use C-tree

– FI and CNH fields are only used when the stream is level-2FI and CNH fields are only used when the stream is level-2

– Each node only rebroadcasts once to avoid a node from broadcasting the same Each node only rebroadcasts once to avoid a node from broadcasting the same

message over againmessage over again

– After an I-message is received, the sensor nodes turns OFF the receiver for some After an I-message is received, the sensor nodes turns OFF the receiver for some

amount of time if the sleep mode operation is ON such that the node can avoid amount of time if the sleep mode operation is ON such that the node can avoid

listening neighbors broadcasting the same I-messagelistening neighbors broadcasting the same I-message

– C-tree indicates which instructions the sensor nodes need to routeC-tree indicates which instructions the sensor nodes need to route

SER

Page 30: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

5. Route Reconnection5. Route Reconnection

– If a sensor node is low on energy or there is too much noise around when If a sensor node is low on energy or there is too much noise around when

transmitting at level-1, it can broadcast an N-message by setting up reconnect transmitting at level-1, it can broadcast an N-message by setting up reconnect

message indicatormessage indicator

– Once the neighbors receive N-message, they check their C-tree to decide if there Once the neighbors receive N-message, they check their C-tree to decide if there

are possible alternate routesare possible alternate routes

– N-message will be broadcasted until the alternate route is foundN-message will be broadcasted until the alternate route is found

Sudden Death of RouteSudden Death of Route

– If the stream suddenly terminates, sink cannot get the I-messagesIf the stream suddenly terminates, sink cannot get the I-messages

– The sink sends out a new S-message with higher QoS requirement version of the The sink sends out a new S-message with higher QoS requirement version of the

same instruction (higher QoS INS value)same instruction (higher QoS INS value)

– New streams can be found to avoid broken pathsNew streams can be found to avoid broken paths

– Multiple streams of level-2 can be setup between source and sink to improve Multiple streams of level-2 can be setup between source and sink to improve

robustness of I-message routingrobustness of I-message routing

SER

Page 31: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

6. Instruction Update6. Instruction Update

– U-message allows sink to update its instruction to the sourcesU-message allows sink to update its instruction to the sources

– The U-message from the sink to the sources flow uphill while it flows downhill from The U-message from the sink to the sources flow uphill while it flows downhill from

sources to the the sink when streams are level-2sources to the the sink when streams are level-2

– U-message contains the following fields:U-message contains the following fields:

SER

TID FI CNH NINS NINS: New INS

7. Task Termination7. Task Termination

– A task at the sources are terminated in two ways:A task at the sources are terminated in two ways:

– Sources have finished the task associated with the instruction given by sinkSources have finished the task associated with the instruction given by sink

– U-message with the task completed instruction indicator is broadcast by sourcesU-message with the task completed instruction indicator is broadcast by sources

– Sink decides to terminate the instructionSink decides to terminate the instruction

– U-message with the task termination instruction indicator is set by the sinkU-message with the task termination instruction indicator is set by the sink

– The streams are torn down by removing C-tree braches at the intermediate nodes and T-The streams are torn down by removing C-tree braches at the intermediate nodes and T-

tree at the sourcestree at the sources

Page 32: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

SER

Advantages:Advantages:

– QoS requirements of the instruction is consideredQoS requirements of the instruction is considered

– Average energy of the routes are taken into consideration in routingAverage energy of the routes are taken into consideration in routing

– Robustness is achieved through selection of level-1 and level-2 streamsRobustness is achieved through selection of level-1 and level-2 streams

– After the route is established, sink can give new instructions to the After the route is established, sink can give new instructions to the

sources without setting up another routesources without setting up another route

– Four types of communication is supported: one-to-one, one-to-many, Four types of communication is supported: one-to-one, one-to-many,

many-to-one, and many-to-manymany-to-one, and many-to-many

Disadvantages:Disadvantages:

– Storage and computation cost at the nodes Storage and computation cost at the nodes

– Loops can form in level-2 streamsLoops can form in level-2 streams

– How to set the value of How to set the value of µµ

Page 33: Routing in Sensor Networks. Sensor Networks vs. Ad hoc Networks –Higher number of sensor nodes (several orders of magnitude) –Dense deployment –Prone.

References [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.

[Karlof+ 2002] C. Karlof, Y. Li and J. Polastre, ARRIVE: Algorithm for Robust Routing in Volatile Environments, UC Berkley, Tech Report, May 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

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