You are on page 1of 52

IOT ROUTING

PROTOCOLS
Chapter 5
Introduction
• Routing in WSNs is challenging due to distinguish to the
inherent characteristics from other wireless networks like
mobile ad hoc networks or cellular networks.
• First, it is not possible to build a global addressing scheme
for a large number of sensor nodes. Thus, traditional IP-
based protocols may not be applied to WSNs. In WSNs,
sometimes getting the data is more important than knowing
the IDs of which nodes sent the data.
• Second, in contrast to typical communication networks,
almost all applications of sensor networks require the flow of
sensed data from multiple sources to a particular BS(Sink
node).
Introduction
• Third, sensor nodes are tightly constrained in terms of
energy, processing, and storage capacities. Thus, they
require carefully resource management.
• Fourth, in most application scenarios, nodes in WSNs are
generally stationary after deployment except for, may be, a
few mobile nodes.
• Fifth, sensor networks are application specific, i.e., design
requirements of a sensor network change with application.
• Sixth, position awareness of sensor nodes is important since
data collection is normally based on the location.
• Finally, data collected by many sensors in WSNs is typically
based on common phenomena, hence there is a high
probability that this data has some redundancy.
Introduction
• The task of finding and maintaining routes in WSNs is
nontrivial since energy restrictions and sudden changes in
node status (e.g., failure) cause frequent and
unpredictable topological changes.
• To minimize energy consumption, routing techniques
proposed for WSNs employ some well-known routing
strategies, e.g., data aggregation and in-network
processing, clustering,
Introduction
• how do we send?
• what should be the
path?
• what should be the
route?
• what a routing
protocol has to look
into.
• So, this is what the
different routing
protocols for sensor
networks,
Issues
These factors must be overcome before efficient communication can be
achieved in WSNs
Node deployment
Energy considerations
Data Delivery
Fault tolerance
Scalability
Connectivity
Coverage
Data aggregation
Quality of service
7

Node Deployment
• Node deployment in WSNs is application
dependent and affects the performance of the
routing protocol.
• The deployment can be either deterministic or
randomized.
• In deterministic deployment, the sensors are
manually placed and data is routed through pre-
determined paths.
• In random node deployment, the sensor nodes
are scattered randomly creating an infrastructure
in an ad hoc manner.
8

Energy Considerations
• Sensor nodes can use up their limited supply of
energy performing computations and transmitting
information in a wireless environment. Energy
conserving forms of communication and
computation are essential.
• In a multi-hop WSN, each node plays a dual role
as data sender and data router. The
malfunctioning of some sensor nodes due to
power failure can cause significant topological
changes and might require rerouting of packets
and reorganization of the network.
9

Data Delivery Model


• Time-driven (continuous)
• Suitable for applications that require periodic data
monitoring
• Event-driven
• React immediately to sudden and drastic changes
• Query-driven
• Respond to a query generated by the BS or another
node in the network
unit disk graph model
multi-hop communication
Means that the message needs to hop over several nodes until it
reaches the final destination within this transmission range
we have multiple options for
sending the packet. One is
basically shown using the
red colour. This is one
option. But, there were
other options like this path,
which could have also been
adopted
So, how do I know? How do I know that which path the source node which
has sent the, sensed the data, through which path it is going to send the
packet containing the sensed information? How do I know? So, basically a
routing protocol will enforce
Routing with / without position information
through the discovery process, these nodes, they know who are
there different neighbours. And that way, any sensor node which
is acting like a source node can send the packet to the
neighbour.! But is it efficient?
13

Routing Protocols in WSNs: A taxonomy

Routing protocols in WSNs

Network Structure Protocol Operation


Flat routing Negotiation based routing
• SPIN • SPIN
• Directed Diffusion (DD) Multi-path network routing
Hierarchical routing • DD
• LEACH Query based routing
• PEGASIS • DD, Data centric routing
• TTDD QoS based routing
Location based routing • TBP, SPEED
• GEAR Coherent based routing
• GPSR • DD
Aggregation
• Data Mules, CTCCAP
Flat Routing
• Flat routing protocol is implemented in flat networks where
each node routinely collects and distributes routing
information with its neighboring nodes
• In flat network, each node typically plays the same role and
sensor nodes collaborate together to perform the sensing
task.

• e.g., SPIN and Directed Diffusion, were shown to save


energy through data negotiation and elimination of
redundant.
Sensor Protocols for Information via Negotiation(SPIN )

• SPIN is a Negotiation-Based Protocols for Disseminating


Information in Wireless Sensor Networks.
• Dissemination is the process of distributing individual sensor
observations to the whole network, treating all sensors as sink
nodes
• Flooding is the classic approach for dissemination
• Source node sends data to all neighbors
• Receiving node stores and sends data to all its neighbors
• Disseminate data quickly
• Deficiencies
• Implosion
• Overlap
• Resource Blindness
16

SPIN (cont.)-Implosion

Node
x x
The direction
of data sending
The connect B C
between nodes

x x
D
17

SPIN (cont.)- Overlap

r
q s
Node
The direction
of data sending
The connect
between nodes
The searching A B
range of the
node
(q, r) (s, r)

C
18

SPIN (cont.)- Resource blindness


• In flooding, nodes do not modify their activities
based on the amount of energy available to them.

• A network of embedded sensors can be resource-


aware and adapt its communication and
computation to the state of its energy resource.
19

SPIN (cont.)
• Negotiation
• Before transmitting data, nodes negotiate with each
other to overcome implosion and overlap
• Only useful information will be transferred

• Resource adaptation
• Each sensor node has resource manager
• Applications probe manager before transmitting or
processing data
• Sensors may reduce certain activities when energy is
low
20

SPIN (cont.)- Three-stage handshake


protocol
• SPIN-PP: A three-stage handshake protocol for
point-to-point media
• ADV – data advertisement
• Node that has data to share can advertise this by
transmitting an ADV.
• REQ – request for data
• Node sends a request when it wishes to receive some
actual data
• DATA – data message
• Contain actual sensor data with a meta-data header
• Usually much bigger than ADV or REQ messages
21

SPIN (3-Step Protocol)

B
22

SPIN (3-Step Protocol)

Notice the color of the data packets sent by node B


23

SPIN (3-Step Protocol)

SPIN effective when DATA sizes are large :


REQ, ADV overhead gets amortized
Hierarchical Routing
• In a hierarchical architecture, higher energy nodes can be
used to process and send the information while low
energy nodes can be used to perform the sensing of the
target.
• Hierarchical routing is mainly two-layer routing where one
layer is used to select cluster heads and the other layer is
used for routing.
• Hierarchical routing (or cluster-based routing), e.g.,
LEACH, PEGASIS, TTDD, is an efficient way to lower
energy consumption within a cluster and by performing
data aggregation and fusion in order to decrease the
number of transmitted messages to the base stations.
26

LEACH
• LEACH (Low-Energy Adaptive Clustering Hierarchy), a
clustering-based protocol that minimizes energy
dissipation in sensor networks.
• LEACH outperforms classical clustering algorithms by
using adaptive clusters and rotating cluster-heads,
allowing the energy requirements of the system to be
distributed among all the sensors.
• LEACH is able to perform local computation in each
cluster to reduce the amount of data that must be
transmitted to the base station.
.
27

LEACH (cont.)
• Sensors elect themselves to be local cluster-
heads at any given time with a certain probability.
• Each sensor node joins a cluster-head that
requires the minimum communication energy.
• Once all the nodes are organized into clusters,
each cluster-head creates a transmission
schedule for the nodes in its cluster.
• In order to balance the energy consumption, the
cluster-head nodes are not fixed; rather, this
position is self-elected at different time intervals.
28

LEACH
100 m
叢集區

觀測區域

~100m

Sensor (Non Cluster Head)


Sensor (Cluster Head)
Initial Data
Aggregated Data

Base Station
29

LEACH: Adaptive Clustering


• Periodic independent self-election
• Probabilistic
• CSMA (Code-division multiple access)/MAC used to advertise
• Nodes select advertisement with strongest signal strength
• Dynamic TDMA(Time-division multiple access) cycles

All nodes marked with a given symbol belong to the same cluster, and
the cluster head nodes are marked with a ●.
30

Algorithm
• Periodic process
• Two phases per round:
• Setup phase
• Advertisement: Execute election algorithm
• Members join to cluster
• Cluster-head broadcasts schedule

• Steady-State phase
• Data transmission to cluster-head using TDMA(Time-
division multiple access)
• Cluster-head transfers data to BS (Base Station)
31

An Example of a LEACH Network

• While neither of these diagrams is the optimum scenario,


the second is better because the cluster-heads are
spaced out and the network is more properly sectioned

Good case scenario Bad case scenario

Node
Cluster-Head Node
X Node that has been cluster-head in the last 1/P rounds
Cluster Border
32

Conclusions
• advantage:
✓Increase the life of your network.
✓Uniform energy consumption.

• Disadvantages:
✓Highly dynamic environments will add too much overhead,
such as: advertisements, etc.
✓Nodes use single-hop communication, so it is not suitable
for large sensor networks, because if the cluster-head is
very far from the BS, it will be very energy-intensive.
RPL
• Routing over Low-Power and Lossy Networks is a routing
solution for IP smart objects.
• RPL is new distance-vector routing protocol was named the
IPv6 Routing Protocol for Low Power and Lossy Networks.
• In an RPL network, each node acts as a router and becomes
part of a mesh network.
• Routing is performed at the IP layer. Each node examines
every received IPv6 packet and determines the next-hop
destination based on the information contained in the IPv6
header.
• No information from the MAC-layer header is needed to
perform next-hop determination.
RPL
• To cope with the constraints of computing and memory that are
common characteristics of constrained nodes, the protocol defines
two modes:
• Storing mode: All nodes contain the full routing table of the RPL
domain. Every node knows how to directly reach every other node.
• Non-storing mode: Only the border router(s) of the RPL domain
contain(s) the full routing table. All other nodes in the domain only
maintain their list of parents and use this as a list of default routes
toward the border router. This abbreviated routing table saves
memory space and CPU. When communicating in non-storing mode,
a node always forwards its packets to the border router, which knows
how to ultimately reach the final destination.
RPL
LBR-1
1 2
3

1 1
A B C
1
1 1

1
F D 4 E
1
1 1 1

1
G H I
RPL
RPL is based on the concept of a directed acyclic graph (DAG). A DAG is a
directed graph where no cycles exist.
This means that from any vertex or point in the graph, you cannot follow an
edge or a line back to this same point. All of the edges are arranged in paths
oriented toward and terminating at one or more root nodes
RPL
A basic RPL process involves building a destination-oriented directed
acyclic graph (DODAG). A DODAG is a DAG rooted to one destination.
In RPL, this destination occurs at a border router known as the DODAG
root. Figure 5-9 compares a DAG and a DODAG. You can see that that a
DAG has multiple roots, whereas the DODAG has just one.
RPL
The routing graph created by the set of DODAG parents across all nodes
defines the full set of upward routes. RPL protocol implementation should
ensure that routes are loop free by disallowing nodes from selected
DODAG parents that are positioned further away from the border router

Upward routes in RPL are discovered and configured using DAG


Information Object (DIO) messages. Nodes listen to DIOs to handle
changes in the topology that can affect routing. The information in DIO
messages determines parents and the best path to the DODAG root.

Nodes establish downward routes by advertising their parent set


toward the DODAG root using a Destination Advertisement Object
(DAO) message. DAO messages allow nodes to inform their parents
of their presence and reachability to descendants.
RPL
RPL messages, such as DIO and DAO, run on top of IPv6. These messages
exchange and advertise downstream and upstream routing information
between a border router and the nodes under it. As illustrated in Figure 5-
10, DAO and DIO messages move both up and down the DODAG,
depending on the exact message type.
RPL Objective Function (OF)

• An objective function (OF) defines how metrics are used


to select routes and establish a node’s rank
• For example, nodes implementing an OF based Minimum
Expected Number of Transmissions (METX) advertise the
METX among their parents in DIO messages. Whenever
a node establishes its rank.
• it simply sets the rank to the current minimum METX
among its parents
RPL Rank

• The rank is a rough approximation of how “close” a node


is to the root and helps avoid routing loops and the count-
to-infinity problem.
• Nodes can only increase their rank when receiving a DIO
message with a larger version number. However, nodes
may decrease their rank whenever they have established
lower-cost routes. While the rank and routing metrics are
closely related, the rank differs from routing metrics in that
it is used as a constraint to prevent routing loops.
Metrics
• RPL defines a large and flexible set of new metrics and
constraints for routing :
✓ Expected Transmission Count (ETX): Assigns a discrete value to
the number of transmissions a node expects to make to deliver a
packet.
✓ Hop Count: Tracks the number of nodes traversed in a path.
Typically, a path with a lower hop count is chosen over a path with a
higher hop count.
✓ Latency: Varies depending on power conservation. Paths with a
lower latency are preferred.
✓ Link Quality Level: Measures the reliability of a link by taking into
account packet error rates caused by factors such as signal
attenuation and interference.
Metrics
✓ Node Energy: Avoids nodes with low power, so a battery-powered
node that is running out of energy can be avoided and the life of that
node and the network can be prolonged.
✓ Throughput: Provides the amount of throughput for a node link.
Often, nodes conserving power use lower throughput. This metric
allows the prioritization of paths with higher throughput.
Slide #44 IETF 75 – Roll WG – July 2009

DAG Construction
• LLN links are depicted
LBR-1
1 2 • Links are annotated w/ ETX
3
• It is expected that ETX
1 1
A B C variations will be
1 averaged/filtered as per
1 1
[ROLL-METRICS] to be
F
1
D 4 E stable enough for route
1
computation
1 1 1
• Nodes are also to observe the
1
metric and gain confidence
G H I before use
Slide #45 IETF 75 – Roll WG – July 2009

DAG Construction
• Objective Code Point for
LBR-1
1 2
example
3 • Metric: ETX
1 1 • Objective: Minimize ETX
A B C
• Depth computation: Depth ~
1
1 1 ETX
• Note that a practical computation
1 may be more coarse
F D 4 E
1
1 1 1

1
G H I
Slide #46 IETF 75 – Roll WG – July 2009

DAG Construction
• LBR-1 multicasts RA-DIO
LBR-1 • Nodes A, B, C receive and
1 2 process RA-DIO
3
• Nodes A, B, C consider link
1 1
A B C metrics to LBR-1 and the
1
1
1
optimization objective
1
• The optimization objective
F D 4 E can be satisfied by joining
1 1
1
1
the DAG rooted at LBR-1
• Nodes A, B, C add LBR-1 as
1
G H I a DAG parent and join the
DAG
Slide #47 IETF 75 – Roll WG – July 2009

DAG Construction
LBR-1 • Node A is at Depth 1 in the
1 2
DAG, as calculated by the
3
routine indicated by the
1 1
A B C example OCP (Depth ~
1
1
1
ETX)
• Node B is at Depth 3, Node
1
4
F D E C is at Depth 2
1 1
1
1
• Nodes A, B, C have
installed default routes (::/0)
1
G H I with LBR-1 as successor
Slide #48 IETF 75 – Roll WG – July 2009

DAG Construction
LBR-1 • The RA timer on Node C
1 2
expires
3
• Node C multicasts RA-DIO
1 1
A B C
• LBR-1 ignores RA-DIO from
1
1 1 deeper node
1
4
• Node B can add Node C as
F D E
alternate DAG Parent,
1
1 1 1 remaining at Depth 3
1
• Node E joins the DAG at
G H I
Depth 3 by adding Node C
as DAG Parent
Slide #49 IETF 75 – Roll WG – July 2009

DAG Construction
LBR-1 • Node A is at Depth 1, and
1 2
can reach ::/0 via LBR-1
3
with ETX 1
1 1
A B C • Node B is at Depth 3, with
1
1
1
DAG Parents LBR-1, and
can reach ::/0 via LBR-1 or
1
4
F D E C with ETX 3
1 1
1
1
• Node C is at Depth 2, ::/0
via LBR-1 with ETX 2
1
G H I • Node E is at Depth 3, ::/0
via C with ETX 3
Slide #50 IETF 75 – Roll WG – July 2009

DAG Construction
LBR-1 • The RA timer on Node A
1 2 expires
3
• Node A multicasts RA-DIO
1 1
A B C • LBR-1 ignores RA-DIO from
1 deeper node
1 1
• Node B adds Node A
1
F D 4 E • Node B can improve to a
1
more optimum position in
1 1 1
the DAG
1 • Node B removes LBR-1,
G H I
Node C as DAG Parents
Slide #51 IETF 75 – Roll WG – July 2009

DAG Construction
LBR-1 • Node A is at Depth 1, ::/0
1 2
via LBR-1 with ETX 2
3
• Node B is at Depth 2, ::/0
1 1
A B C via A with ETX 2
1
1 1 • Node C is at Depth 2, ::/0
1
via LBR-1 with ETX 2
F D 4 E
• Node E is at Depth 3, ::/0
1
1 1 1 via C with ETX 3
1
G H I
Slide #52 IETF 75 – Roll WG – July 2009

DAG Construction
LBR-1 • DAG Construction
1 2
continues…
3

1 1
A B C
1
1 1 • And is continuously
1
4
maintained
F D E
1
1 1 1

1
G H I

You might also like