You are on page 1of 52

13.61 13.62 13.63 13.

64

CROSS LAYER ROUTING DESIGN BASED ON


RPL FOR MULTI-HOP COGNITIVE RADIO
NETWORKS
THESIS
Submitted in partial fulfilment of the requirements
for the award of the Degree of Master of Technology
in Electronics and Communication Engineering
(Advanced Communication and Information Systems)
of Mahatma Gandhi University, Kottayam
Submitted by

IRIN SAJAN

Department of Electronics and Communication


Engineering
Rajiv Gandhi Institute of Technology
Kottayam 686 501
August 2014

CROSS LAYER ROUTING DESIGN BASED ON


RPL FOR MULTI-HOP COGNITIVE RADIO
NETWORKS
THESIS
Submitted in partial fulfilment of the requirements
for the award of the Degree of Master of Technology
in Electronics and Communication Engineering
(Advanced Communication and Information Systems)
of Mahatma Gandhi University, Kottayam
Submitted by

IRIN SAJAN
Under the guidance of

Mr. EBIN M. MANUEL


(Assistant Professor)

Department of Electronics and Communication


Engineering
Rajiv Gandhi Institute of Technology
Kottayam 686 501
August 2014

Department of Electronics and Communication


Engineering
Rajiv Gandhi Institute of Technology
Kottayam-686 501

Certificate
This is to certify that this thesis report entitled CROSS LAYER
ROUTING DESIGN BASED ON RPL FOR MULTI-HOP COGNITIVE RADIO NETWORKS is a bonafide record of the works done
by IRIN SAJAN (20508), under our guidance towards partial fulfilment
of the requirements for the award of the degree of Master of Technology
in Electronics and Communication Engineering ( Advanced Communication and Information Systems), of Mahatma Gandhi University, Kottayam, during the year 2012-2014 and that this work has not been
submitted elsewhere for the award of any degree.

Guide

PG Co-ordinator

Head of Dept.

Mr. Ebin M. Manuel


Assistant Professor
Dept. of ECE
RIT
Kottayam

Dr. David Solomon George


Associate Professor
Dept. of ECE
RIT
Kottayam

Dr. Leena Mary


Professor
Dept. of ECE
RIT
Kottayam

Acknowledgement

The success accomplished in this thesis would not have been possible
without the timely help and guidance rendered by many people to whom I
feel obliged and grateful.
First of all, I would like to express my sincere thanks to our beloved
principal Dr. K P INDIRADEVI, for her support and encouragement.
I use this occasion to express my thanks to Prof. GEETHARANJIN P. R.,
PG Dean and Dr. LEENA MARY, Head of Electronics and Communication
Department, for their continuous encouragement to fulfil my thesis.
I am thankful to Dr. RENU JOSE, staff advisor and Dr. DAVID
SOLOMON GEORGE, PG Co-ordinator for their valuable suggestions, inspiration and motivation to develop the thesis.
I sincerely extend my gratitude to Mr. EBIN M. MANUEL, my guide for
his cooperation, encouragement and guidance for completing and presenting
the thesis.
I am also thankful to all the teaching and non teaching staffs in Electronics
and Communication Department for their timely assistance.
I thank my parents and friends for their kind co-operation and suggestions
which helped me very much for the accomplishment of my thesis.
Finally, I would like to express my sincere thanks to the ALMIGHTY
GOD, who empowered me to fulfil this work, by showering his abundant
grace and mercy.

Rajiv Gandhi Institute of Technology


August, 2014

Irin Sajan

Abstract

Cognitive Radio (CR) is viewed as a revolutionary potential radio technology capable of offering dynamic spectrum access. CR Networks (CRNs) with
such spectrum aware devices is a hopeful solution to the spectrum scarcity
issue faced in the wireless communication sector. In this work, an effective
routing solution with a cross layer design is proposed for the multi-hop CRNs.
Most of the existing work uses AODV (Ad-hoc On-demand Distance Vector)
protocol as the routing protocol for CRNs. A new routing protocol named
RPL (Routing Protocol for Low power and lossy networks (LLNs)) is being
introduced into the CRN scenario in this work. It is the primary candidate
for acting as the standard routing protocol for IP (Internet Protocol) smart
object networks. The CRs being smart, RPL can be effectively implemented
in its network. Dynamic spectrum allocation is also done along with routing
with the help of RPL. Routing is accomplished through the formation of colored Destination Oriented Directed Acyclic Graphs (DODAGs) of which the
link frequencies are represented using colors. Hop count and adjacent link
interference are counted as the routing metrics. The CRN scenario is vulnerable to link failures due to the appearance of Primary Users (PUs). So route
repairing using the Trickle algorithm offered by RPL is also implemented in
this work. To implement this algorithm, a traffic aware scheduling is used.
Simulation results show that the routing design can perform efficiently with
minimum overhead under different network conditions.

ii

Contents
Acknowledgement

Abstract

ii

List of Figures

List of Tables

vii

1 Introduction

2 Literature Survey

3 Routing Model
3.1 Network Model . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Cross Layer Design . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Routing Metrics . . . . . . . . . . . . . . . . . . . . . . . . . .

11
11
12
12

4 Overview of RPL
4.1 RPL Terminology . . . . . . . . . . . . . . . .
4.2 Features of RPL . . . . . . . . . . . . . . . . .
4.3 RPL Control Messages . . . . . . . . . . . . .
4.3.1 DODAG Information Object (DIO) . .
4.3.2 DODAG Information Solicitation (DIS)
4.4 DODAG Construction / Routing Algorithm .

14
14
15
16
16
20
20

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

5 Route Repair Using Trickle Algorithm


24
5.1 Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.2 Trickle Parameters and Variables . . . . . . . . . . . . . . . . 25
5.3 Repairing Algorithm . . . . . . . . . . . . . . . . . . . . . . . 26
6 Simulation Results and Analysis
29
6.1 Routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
iii

6.2
6.3

Route Repairing . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Performance Analysis . . . . . . . . . . . . . . . . . . . . . . . 36

7 Conclusion

38

Reference

39

List of Publications

41

iv

List of Figures
2.1
2.2
2.3
2.4

Spectrum utilisation. . . .
Dynamic spectrum access.
Cognitve Cycle. . . . . . .
CRN Architecture. . . . .

.
.
.
.

.
.
.
.

3.1

Network Model. . . . . . . . . . . . . . . . . . . . . . . . . . . 12

4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12

Colored DODAG. . . . . . . . . . . . .
RPL Control Message Format. . . . . .
DIO Base Object Format. . . . . . . .
Local RPLInstanceID. . . . . . . . . .
DIO Options Field. . . . . . . . . . . .
DAG Metric Container Object Format.
Hopcount Object Body Format. . . . .
Link Color Object Body Format. . . .
Type-I sub-object. . . . . . . . . . . .
Type-II sub-object. . . . . . . . . . . .
DIS Base Object Format. . . . . . . . .
Operation of a Router During Routing

5.1

Operation of a Router During Route Repairing . . . . . . . . . 28

6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
6.10

Network Topology. . . . . . . . . . . . . . . . . . . . .
Topology Showing Multiple Paths. . . . . . . . . . . .
Topology Showing Default Route. . . . . . . . . . . . .
DODAG Formed. . . . . . . . . . . . . . . . . . . . . .
Locally Repaired Route with Alternate Channel . . . .
Locally Repaired Route with Alternate Path. . . . . . .
Locally Repaired Route with Alternate Channel. . . . .
New Topology. . . . . . . . . . . . . . . . . . . . . . .
Topology Showing Multiple Paths After Global Repair.
New Route After the Global Repair. . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

3
5
6
8

15
17
17
18
18
19
19
19
20
20
20
22

29
31
31
32
32
33
33
34
34
35

6.11 New DODAG Formed. . . . . . . . . . . . . . . . . . . . . . . 35


6.12 Data and Control Packet Flow Comparison. . . . . . . . . . . 36
6.13 Control Packet Overhead Under Different Routing Conditions. 37

vi

List of Tables
2.1

Spectrum Allocation in India

6.1

Topology and Spectrum Availability . . . . . . . . . . . . . . . 30

vii

. . . . . . . . . . . . . . . . . .

Chapter 1
Introduction
Todays wireless networks face the issue of spectral congestion problem
due to the fixed spectrum allocation policy. Cognitive Radio (CR), proposed
by Joseph Mitola III[1], is an emerging wireless communication paradigm
that can significantly improve the spectrum usage efficiency by offering dynamic spectrum access. CR is an intelligent radio that can change its transmitter parameters based on the interaction with the radio environment in
which it operates[2]. CR Networks (CRNs) with such spectrum aware devices is the obvious eminent future of todays wireless networks.
In multi-hop CRNs, routing is the most significant problem to be addressed as it determines the performance of the network. Development of a
spectrum agile routing solution for CRNs is a major challenge[5]. CR devices become aware of their radio environment through its spectrum sensing
functionality. Several spectrum sensing algorithms are available in the literature with the energy detector, the cyclostationary feature detector, and
the matched filter detector being the mostly discussed among them[2]. In
a network, the spectrum opportunities of each CR device will be location
dependent. In such a scenario, an effective routing solution is a cross layer
design where dynamic spectrum allocation is done along with routing[5].
Considering this, a cross layer routing solution is proposed in this work.
Routing protocol being used in most of the existing work is the Adhoc On-demand Distance Vector (AODV) protocol and its variations[5]. In
AODV, the Route Request (RREQ) messages, which are sent via broadcasting, contain locally obtained network state and deliver this detailed information to the destination, where they are processed to compute paths[4]. And
the routing decisions being adopted at the destination are then forwarded
in the reverse path using the Route Reply (RREP) messages. Here comes
1

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks
the need for a protocol in CRN that can perform the routing as the control packet moves from one point to another. Such a routing protocol is the
RPL (Routing Protocol for Low power and lossy networks (LLNs)). Once
the control packet reaches the end node, the routing is completed and data
transmission can be initiated in the next instant. This work proposes to use
RPL as a routing protocol in a CRN routing scenario.
RPL is actually a routing protocol developed for the LLNs. It is the main
candidate for acting as a standard routing protocol for IP (Internet Protocol)
smart object networks[6]. CRs being smart, it can be effectively implemented
as a promising routing solution for a CRN. As the name suggests, it can prove
worthy for those networks with frequent link outages and CRN is one among
them. RPL is based on the topological concept of Directed Acyclic Graphs
(DAGs). In a CRN scenario, routing is performed through the construction
of a colored Destination Oriented DAGs (DODAGs) with destination as the
root and source(s) as the leaf node(s). Link frequencies are represented using
different colors which make the DODAG a colored one.
For any routing algorithm, routing metric is of paramount importance as
it determines the quality of the resulting route. It determines the best route
from a source to destination. This RPL based algorithm chooses the path
with the minimum hop count and the minimum adjacent link interference
as the best path. Also, two nodes will communicate in a CRN only if there
exists a common channel between them.
Unpredictable link failures due to the appearance of primary users (PUs)
are common in a CRN. Unquestionably, a repairing algorithm is essential to
be defined when a routing algorithm is proposed. It should allow a rerouting
in terms of channels and/or nodes. This routing design uses Trickle algorithm for route repair which is actually a part of RPL[6]. Trickle algorithm
optimizes the control plane overhead based on network conditions[9].
This report is structured as follows. Chapter 2 gives a brief account
of the literature survey behind this work. Chapter 3 depicts the routing
model being used in this work which introduces the network model, the cross
layer design and the routing metrics. Chapter 4 gives an overview of the
RPL and Chapter 5 describes the implementation of route repair using the
Trickle algorithm in CRNs. Chapter 6 presents the simulation results and
the analysis. Finally, Chapter 7 provides the concluding remarks.

Dept. of ECE, RIT Kottayam

Chapter 2
Literature Survey
According to [1], current wireless networks are characterized by a static
spectrum allocation policy, where governmental agencies assign wireless spectrum to license holders on a long-term basis for large geographical regions.
Recently, because of the increase in spectrum demand, this policy faces spectrum scarcity in particular spectrum bands.
Table 2.1 shows the spectrum allocations in India. According to the report published by the Federal Communications Commission (FCC), a large
portion of the assigned spectrum is used sporadically, leading to underutilization of a significant amount of spectrum. Figure 2.1 clearly shows this.
Hence, dynamic spectrum access techniques were recently proposed to solve
these spectrum inefficiency problems.

Figure 2.1: Spectrum utilisation.

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Table 2.1: Spectrum Allocation in India


Frequency Band (MHz)
0-87.5
87.5 -108
109- 173, 230-450
585-698
806-960
960-1710
1710-1930
1930-2010
2025-2110, 2170- 2300
2400-2483.5
2483.5-3300
3600-10000
10000 onwards

Services
Mobile, aeronautical navigation, Cordless phones
FM Radio Broadcast
Broadcast vans, aeronautical navigation
TV Broadcast
GSM, CDMA mobile services
Aeronautical and Space Communication
GSM mobile services
Used by Defence forces
Satellite and Space
Wi-Fi, Bluetooth
Space communication
Space research, radio navigation
Satellite broadcasts, DTH services

The key enabling technology of dynamic spectrum access techniques is


Cognitive Radio (CR) technology, which provides the capability to share
the wireless channel with licensed users in an opportunistic manner. The
term was coined by Joseph Mitola III in his doctoral dissertation[2]. It was
given a communication perspective by Simon Haykins[2]. Cognitive radio is
an intelligent wireless communication system that is aware of its surrounding environment (i.e., outside CRNs with such spectrum agile CR devices
are envisioned to provide high bandwidth to mobile users via heterogeneous
wireless architectures and dynamic spectrum access techniques. Figure 2.2
shows this dynamic spectrum access. This goal can be realized only through
dynamic and efficient spectrum management techniques.
The term, cognitive radio, can formally be defined as follows[1]: Cognitive radio is an intelligent wireless communication system that is aware of
its surrounding environment (i.e., outsideworld), and uses the methodology
of understanding-by-building to learn from the environment and adapt its
internal states to statistical variations in the incoming RF stimuli by making
corresponding changes in certain operating parameters (e.g., transmit-power,
carrier-frequency, and modulation strategy) in real-time, with two primary
objectives in mind:
highly reliable communications whenever and wherever needed;
Dept. of ECE, RIT Kottayam

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Figure 2.2: Dynamic spectrum access.

efficient utilization of the radio spectrum.


From this definition, two main characteristics of the cognitive radio can be
defined[3]:
Cognitive capability: Cognitive capability refers to the ability of the
radio technology to capture or sense the information from its radio environment. This capability cannot simply be realized by monitoring
the power in some frequency band of interest but more sophisticated
techniques are required in order to capture the temporal and spatial
variations in the radio environment and avoid interference to other
users. Through this capability, the portions of the spectrum that are
unused at a specific time or location can be identified. Consequently,
the best spectrum and appropriate operating parameters can be selected. The tasks required for adaptive operation in open spectrum are
shown in Fig. 2.3 which is referred to as the cognitive cycle. It involves
spectrum sensing, spectrum analysis and spectrum decision.
Reconfigurability: The cognitive capability provides spectrum awareness whereas reconfigurability enables the radio to be dynamically programmed according to the radio environment. More specifically, the
cognitive radio can be programmed to transmit and receive on a variety of frequencies and to use different transmission access technologies
supported by its hardware design.
Dept. of ECE, RIT Kottayam

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Figure 2.3: Cognitve Cycle.

CR networks, however, impose unique challenges due to the high fluctuation in the available spectrum, as well as the diverse quality of service (QoS)
requirements of various applications. In order to address these challenges,
each CR user in the CR network must perform the following functions[3]:
Determine which portions of the spectrum are available (Spectrum Opportunities) - Spectrum sensing
Select the best available channel - Spectrum management
Coordinate access to this channel with other users - Spectrum sharing
Vacate the channel when a licensed user is detected - Spectrum mobility
[3] gives a clear description of the Cognitve Radio Network (CRN) architecture which is essential to understand the performance of the routing
design. The components of the CRN architecture, as shown in Fig. 2.4, can
be classified in two groups as the primary network and the CRN. The basic
elements of the primary and the CRN are defined as follows:
Primary network: An existing network infrastructure is generally referred to as the primary network, which has an exclusive right to a
certain spectrum band. Examples include the common cellular and
TV broadcast networks. The components of the primary network are
as follows:

Dept. of ECE, RIT Kottayam

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Primary user: Primary user (or licensed user) has a license to


operate in a certain spectrum band. This access can only be controlled by the primary base-station and should not be affected by
the operations of any other unlicensed users. Primary users do
not need any modification or additional functions for coexistence
with CR base-stations and CR users.
Primary base-station: Primary base-station (or licensed base-station)
is a fixed infrastructure network component which has a spectrum
license such as base-station transceiver system (BTS) in a cellular
system. In principle, the primary base-station does not have any
cognitive capability for sharing spectrum with CR users.
CRN: CRN does not have license to operate in a desired band. Hence,
the spectrum access is allowed only in an opportunistic manner. CRNs
can be deployed both as an infrastructure network and an ad hoc network. The components of the CRN are as follows:
CR user: CR user (or unlicensed user, secondary user) has no
spectrum license. Hence, additional functionalities are required
to share the licensed spectrum band.
CR base-station: CR base-station (or unlicensed base-station, secondary base-station) is a fixed infrastructure component with cognitive capabilities. CR base-station provides single hop connection
to CR users without spectrum access license. Through this connection, a CR user can access other networks.
Spectrum broker: Spectrum broker (or scheduling server) is a central network entity that plays a role in sharing the spectrum resources among different CRNs. Spectrum broker can be connected
to each network and can serve as a spectrum information manager
to enable coexistence of multiple CRNs.
The reference network architecture is shown in Fig. 2.4, which consists
of different types of networks: a primary network, an infrastructure based
CR network, and an ad-hoc CR network[3]. CRNs are operated under the
mixed spectrum environment that consists of both licensed and unlicensed
bands. Also, CR users can either communicate with each other in a multihop
manner or access the base-station. Thus, in CRNs, there are three different
access types:
CR network access: CR users can access their own CR base-station
both on licensed and unlicensed spectrum bands.
Dept. of ECE, RIT Kottayam

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

CR ad hoc access: CR users can communicate with other CR users


through ad hoc connection on both licensed and unlicensed spectrum
bands.
Primary network access: The CR users can also access the primary
base-station through the licensed band.

Figure 2.4: CRN Architecture.

According to [5], effective routing solutions for multi-hop CRNs are required fully unleash the potentials of the cognitive networking paradigm. In
a nutshell, the main challenges for routing information throughout multi-hop
CRNs include[5]:
Challenge 1: the spectrum-awareness; designing efficient routing solutions for multi-hop CRNs requires a tight coupling between the routing
module(s) and the spectrum management functionalities such that the
routing module(s) can be continuously aware of the surrounding physical environment to take more accurate decisions.
Dept. of ECE, RIT Kottayam

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Challenge 2: the set up of qualityroutes in dynamic variable environment; the very same concept of route qualityis to be re-defined under
CRN scenario. Indeed, the actual topology of multi-hop CRNs is highly
influenced by PUs behaviour, and classical ways of measuring/ assessing the quality of end-to-end routes (nominal bandwidth, throughput,
delay, energy efficiency and fairness) should be coupled with novel measures on path stability, spectrum availability/PU presence. As an example, if the PU activity is moderate- to-low, the topology of the secondary usersa network is almost static, and classical routing metrics
adopted for wireless mesh networks could be leveraged.
Challenge 3: the route maintenance/reparation; the sudden appearance of a PU in a given location may render a given channel unusable
in a given area, thus resulting in unpredictable route failures, which
may require frequent path rerouting either in terms of nodes or used
channels. In this scenario, effective signalling procedures are required
to restore broken paths with minimal effect on the perceived quality.
Also according to [5], routing protocol being used in most of the existing
work is the Ad-hoc On-demand Distance Vector (AODV) protocol or its
variation. In AODV, the Route Request (RREQ) messages, which are sent
via broadcasting, contain locally obtained network state and deliver this
detailed information to the destination, where they are processed to compute
paths[5]. And the routing decisions being adopted at the destination are then
forwarded in the reverse path using the Route Reply (RREP) messages. Here
comes the need for a protocol in CRN that can perform the routing as the
control packet moves from one point to another. According to [7], such
a routing protocol is the RPL (Routing Protocol for Low power and lossy
networks (LLNs)). Once the control packet reaches the end node, the routing
is completed and data transmission can be initiated in the next instant.
This paper proposes to use RPL as a routing protocol in a CRN routing
scenario. RPL is actually a routing protocol developed for the LLNs. It is the
main candidate for acting as a standard routing protocol for IP smart object
networks. CRs being smart, it can be effectively implemented as a promising
routing solution for a CRN. It is based on the topological concept of Directed
Acyclic Graphs (DAGs). In a CRN scenario, routing is performed through
the construction of a colored Destination Oriented DAGs (DODAGs) with
destination as the root and source(s) as the leaf node(s). Link frequencies are
represented using different colors which make the DODAG a colored one[6].
As the name suggests, it can prove worthy for those networks with frequent
Dept. of ECE, RIT Kottayam

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

link outages and CRN is one among them. This paper uses Trickle algorithm
for route repair which is actually a part of RPL. Trickle algorithm optimizes
the control plane overhead based on network conditions[10].
As found in [8], RPL can achieve the three design challenges mentioned
in [5] and hence it is suggested and analysed in this work.

Dept. of ECE, RIT Kottayam

10

Chapter 3
Routing Model
Effective routing solutions for multi-hop CRNs are required fully unleash
the potentials of the cognitive networking paradigm.

3.1

Network Model

In this routing design, the CRN is assumed to be deployed as an infrastructure network. It consists of CR users (CRUs) (referred also as nodes in
this work) and CR base station (CBS). Each user has a single-hop connection to its base station. It co-exists with the primary network with PUs and
primary base station (PBS). The PUs access the PBS through the licensed
spectrum bands. CRUs can access the PBS in the band licensed to PUs
without interfering them. The reference network model used in this design
is shown in Fig. 3.1.
Typically the PUs are assumed to be static while the CRUs may vary their
position, but CRU mobility is only partially considered in this design. This
routing design is applied to a slowly varying spectrum environment. Also the
channel frequencies available in the area are represented using colors in this
design[5]. Always two CRUs can communicate only if they hold a common
channel in their spectral map. The transmission range of all the CRUs, is
considered to be the same in the process of neighbor discovery. Also, a kind of
scheduling is assumed in this design to implement the repairing algorithm[10].
The network management information flows through the Common Control Channel (CCC) available in the network. A reliable CCC is important
for this design performance. It is another research challenge in CRN scenario which yet to be addressed seriously. UWB based design of CCC can
11

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

be assumed to be used in this design as it offers large bandwidth[4].

Figure 3.1: Network Model.

3.2

Cross Layer Design

Several spectrum bands (1, . . . , M) may exist in the area and the
CRUs may have different views of the available spectrum bands[5]. So it is
necessary that each CRU in the network to be spectrum agile. The CRUs
become aware of the spectrum opportunities at every instant through their
spectrum sensing functionality. The CRUs communicate with each other
in a multi-hop fashion which requires an effective spectrum aware routing
design. The problem of routing in multi-hop CRNs targets the creation and
the maintenance of wireless multi-hop paths among CRUs by deciding both
the relay nodes and the spectrum to be used on each link of the path[5]. Such
a routing solution, typically known as a cross layer design, is proposed in this
paper. This design is also defined to deal with the simultaneous transmissions
of PUs which dynamically change the spectrum availability.

3.3

Routing Metrics

In a routing algorithm, the routing metrics play the role of the criteria
based on which the best route for forwarding packets from source to destination is found. This routing design makes use two simple metrics to calculate
the route:
Hop count: It is defined as the total number of hops between two nodes.
According to this design, that route with the minimum hop count from
source to destination is chosen as the best route.
Dept. of ECE, RIT Kottayam

12

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Adjacent link interference: It is obvious that if two adjacent links use


the same frequency channel for communication, they will interfere with
each other. According to this design, that route in which adjacent links
do not use the same frequency is chosen as the best route.
RPL allows to use routing metrics and constraints[8]. Hop count is taken
as the routing metric. Link color/frequency choice is constrained by adjacent
link interference so it forms the link color constraint.

Dept. of ECE, RIT Kottayam

13

Chapter 4
Overview of RPL
RPL is the acronym for Routing Protocol for Low power and lossy networks (LLNs). The key feature of RPL is that it is designed for networks
with lossy links, which are those exposed to high Packet Error Rate (PER)
and link outages[7]. It has been developed by Internet Engineering Task
Force (IETF) Routing Over Low Power and Lossy (ROLL) group. It is still
an RFC (Request For Comments), a draft published to seek improvement
through the comments of experts. It is the main candidate for acting as the
standard routing protocol for IP smart object networks. RPL is a distance
vector routing protocol for LLNs that specifies how to build a Destination
Oriented Directed Acyclic Graph (DODAG) using an objective function and
a set of metrics/constraints[8]. DAG is a directed graph with no cycles and
with all edges oriented towards one or more root nodes. DODAG is a DAG
rooted at a single root node. A DAG root is a node within the DAG that has
no outgoing edge and all paths terminate at it. RPL constructs DODAGs
with destination as the root node and the source(s) as the leaf node(s). Intermediate nodes in a route are the routers. Once the DODAG is constructed
routing is completed and the parent of each node is a potential next hop to
the root node. In the CRN scenario, a colored DODAG is constructed where
the links are represented in different colors representiong different channel
frequencies[6]. An example of the coloured DODAG is shown in Fig. 4.1.

4.1

RPL Terminology

Some new terms in RPL protocol are,


Rank of a Node in DODAG: A nodes Rank is defined as the nodes
individual position relative to other nodes with respect to a DODAG
root. It strictly increases in the downstream direction of the DAG. The
14

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Figure 4.1: Colored DODAG.

routing algorithm begins at the root whose rank is zero always. The
exact way it is computed depends on the DAGs Objective Function.
Objective Function: It dictates how nodes select parents and thus the
DODAG formation itself. It is responsible for rank computation based
on specific routing metrics and constraints. The design of efficient
Objective Functions is still an open research issue[8]. It is not formally
defined in this design.
RPL Instance: A network may consist of one or several DODAGs,
which form together an RPL instance. All the DODAGs in an RPL
Instance use the same objective function. A network may run multiple
RPL instances concurrently; but these instances are logically independent. A node may join multiple RPL instances, but must only belong
to one DODAG within each instance. There are two types of RPL Instances: local and global. Local RPL Instances always have only a single DODAG with a single root node; for on-demand discovery of routes
to specific destinations. Global instance consists of many DODAGs.
DODAG Version: A specific iteration (Version) of a DODAG. Whenever a global repair which results in complete rerouting occurs, the root
node upgrades the DODAG version.

4.2

Features of RPL

The features of RPL are[7],


Auto-configuration: Supports dynamic discovery of network paths and
destinations. This feature is guaranteed by the use of the Neighbor
Discovery mechanisms.

Dept. of ECE, RIT Kottayam

15

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Self-healing: RPL proves its ability to adapt to logical network topology changes and node/link failures. RPL implements mechanisms that
choose more than one parent per node in the DAG to eliminate/ decrease the risks of failure. RPL triggers recovery mechanisms (global
and local repair) when failures occur.
Loop avoidance and detection: A DAG is acyclic by nature as a node
in a DAG must have a higher rank than all of its parents. RPL includes
reactive mechanisms in order to detect loops in case of topology change.
Independence and Transparency: As in the IP architecture, RPL is
designed to operate over multiple link layers. RPL is able to operate in constrained networks, or in conjunction with highly constrained
devices. Thus, RPL is then independent from data-link layer technologies.
Multiple edge routers: It is possible to construct multiple DAGs in
an RPL network and each DAG has a root. A node may belong to
multiple instances, and may act different roles in each instance. Thus,
the network will benefit from high availability and load balancing.

4.3

RPL Control Messages

RPL uses several control messages to perform routing. In this routing


design, only two RPL control messages are considered, DODAG Information
Object (DIO) and DODAG Information Solicitation (DIS)[8]. A typical RPL
control message has the format as shown in Fig. 4.2. It consists of a header
with three fields namely, type, code, and checksum and a message body
with a message base, and a number of options. RPL is an IPv6 protocol,
so type is set as 155 (by Internet Assigned Numbering Authority (IANA)).
Code determines the type of the control message. Checksum helps in error
checking.

4.3.1

DODAG Information Object (DIO)

Type is 0x01 (by IANA). The DIO carries information that allows a
node to discover a RPL Instance, learn its configuration parameters, select
a DODAG parent set, and maintain the DODAG[]. It is the root that starts
issuing the DIO which passes through the network via multicast to form the
DODAG. DIO base object format is shown in Fig. 4.3. The fields in DIO
can be explained as, (i) RPLInstanceID: It is a unique identifier. DODAGs
Dept. of ECE, RIT Kottayam

16

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Figure 4.2: RPL Control Message Format.

with the same RPLInstanceID share the same Objective Function. A local
RPLInstanceID has the format as shown in Fig. 4.4. D Flag is set to 0 to
indicate that the DODAG ID is the source address. (ii) DODAGVersionNumber: It is the identifier of a DODAG Version. (iii) Rank: Indicates the
rank of the node sending the DIO. (iv) G Flag: Set to 1 if a DODAG is
expected to satisfy a specific goal; grounded DODAG. (v) MOP: Defines the
mode of a operation of an RPL instance. It is set to 000 if only upward
routes are supported. (iv) Prf: Preference level of the current DODAG root;
veries from 0x01 to 0x07. (v) DTSN: Destination Advertisement Trigger Sequence Number: Used to maintain downward routes. (vi) DODAGID: It is
the source address; unique within the scope of an RPL instance.
Finally DIO contains the options field whose format is given in Fig. 4.5.
The main fields in it include, (a) Type: Different Option Types are available
according to the requirement. When type = 2, it becomes a DAG metric
container object. (b) Length gives the length of the options field data. (c)
Data is the variable length field that contains data specific to the option.

Figure 4.3: DIO Base Object Format.

Dept. of ECE, RIT Kottayam

17

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Figure 4.4: Local RPLInstanceID.

Figure 4.5: DIO Options Field.

DAG Metric Container Object


It holds the metrics and constraints used for routing using the RPL[9]. It
is contained in the DIO options fields which is propagated through the network to accomplish routing. The format of a DAG metric container object
is shown in Fig. 4.6. The main fields are, (i) Type: Indiactes the specific
object (routing metric/constraint)as confirmed by IANA. (ii) Length gives
the length of the object body. (iii) Object body can carry one or more subobjects. (iv) P flag: Set as 0/1 implies whether all the metrics are recorded
along the path/one or more are not recorded. (v) C flag: Set as 0/1 if the
object is a routing metric/constraint. (vi) O flag: Set as 0/1 if the routing constraint is mandatory/optional; considered only when C = 1. (vii) R
flag: Set as 0/1 if the metrics are recorded along the path/not recorded but
aggregated. (viii) A Flag represents whether metric is additive (0x00), multiplicative(0x01), reports a maximum(0x02) or minimum(0x03). (ix) Prec
indicates precedence of the Routing Metric/Constraint object. Flags field is
reserved. The object body varies with the type of objects. The used objects
are of two types,
Hopcount Object: Used to report the number of nodes traversed along
the path. Type value is 3. It is used as a metric. The object body
format is shown in Fig. 4.7. Each visited node simply increments the
hopcount field. It helps in finding the shortest path and it determines
the rank of a node.
Link Color Object: It is used as a metric (can only be recorded) and a
constraint. Type value is 8. Its format is shown in Fig. 4.8. When used
Dept. of ECE, RIT Kottayam

18

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Figure 4.6: DAG Metric Container Object Format.

Figure 4.7: Hopcount Object Body Format.

as a metric it cannot be called as routing metric. It is just a metric


that helps to implement RPL in the CRN scenario. When a node is
visited, the channels available at the node are recorded in the object
body as different Type-I sub-objects. This helps to find out whether
there exists a common channel between two neighboring nodes so that
a connectivity can be established. The format of Type-I sub-object
is as shown in Fig. 4.9. The fields are, (i) Link color: Holds the
channel/color. (ii) Counter: Set as 0/1 if the color is absent/present
at the node. When used as a constraint, the object body contains
Type-II sub-objects of the format as shown in Fig. 4.10. It is a routing
constraint which helps to reduce adjacent link interference. The fields
are, (i) Link color: Holds the channel/color used by the sending node
to communicate with its parent. (ii) I flag: Set to 0/1 to indicate
whether the color specified must be included/excluded while forming a
communication link with the sending node. In this design, it is set to
1. It is used as an optional constraint here.

Figure 4.8: Link Color Object Body Format.

Dept. of ECE, RIT Kottayam

19

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Figure 4.9: Type-I sub-object.

Figure 4.10: Type-II sub-object.

4.3.2

DODAG Information Solicitation (DIS)

Type is 0x00. It is used by a node to retrieve DIO from another neighboring node. DIS base object format is shown in Fig. 4.11.

Figure 4.11: DIS Base Object Format.

4.4

DODAG Construction / Routing Algorithm

DODAG construction starts at the destination. The source node sends


a beacon to the CR base-station with the request of data transmission to
a particular destination node. The CR base-station can be considered as
the Virtual DODAG Root that has control over every actions in its range
of control. It intimates the destination about the request and conveys the
Dept. of ECE, RIT Kottayam

20

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

source address to it through a beacon. To initiate the construction the root,


which is the destination node, broadcasts the DIO control message to all
its neighboring nodes. The nodes receiving it will either act as a router or
a leaf node. A router will process the DIO and rebroacast it with sufficient
modifications. DODAG construction ends upon reaching the leaf node, which
is the source node, so is the routing. In the DODAG formed, each node will
have a parent list, but the potential next hop to the root for each node
will be the most prefered parent from it. And the most preferred parent is
that one which mandatorily obeys the link color constraint. When a DIO
is being multicasted many neighboring nodes receive it. But different nodes
act differently to the received DIO.
When a node that is not yet associated with any DODAG receives the
DIO, it will accept the DIO and proceed further only if there exists a common
channel to communicate with the sender node. If passed in this criteria, it
will (i)add the DIO sender address to its parent list, (ii) compute its rank
by adding one to the sender nodes rank, (iii) allocate a channel for the link
with the sender node, and (iv) forward the DIO message with the updated
rank information.
When a node that is associated with a DODAG receives the DIO, it will
accept the DIO and proceed further only if the DIO has the same RPLInstanceID, VersionNumber, and DODAGID as the DIO it previously received.
Once it also passes the common channel check, DIO is processed. Here it
will compute its rank according the received DIO and compare it with its
own rank. If own rank is greater than the newly computed one, the sender
is discarded and the location in DODAG is maintained. If own rank is equal
to the newly computed one, the sender is added to the parent list but the
location in DODAG is maintained. If own rank is less than the newly computed one, the sender is added to the parent list, the existing list is discarded
and the node moves to an improved location in DODAG and finally allocates
a channel for the link with the sender node based on the constraint. The
operation of a router can be summarized in a flow chart as shown in Fig.
4.12. and also as an algorithm as shown in Algorithm 1.

Dept. of ECE, RIT Kottayam

21

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Receive DIO

Receive DIO
the 1st time

no

Satisfy the
criteria

yes

Discard
the packet

no

no

Discard
the packet

yes

Any common
channel?

no

Any common
channel?

yes

yes
Add sender
to parent list

Rank < Own


Rank

no

Rank = Own
Rank

yes

Compute
the rank

Improve
its location
and get the
lower rank

Allocate
a channel
based on the
constraint

Discard the
parents with
higher rank

Forward DIO
to others in
multicast

Allocate
a channel
based on the
constraint

Figure 4.12: Operation of a Router During Routing

Dept. of ECE, RIT Kottayam

22

no

Maintain the
location in
the DODAG

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Algorithm 1 Operation of a Router in Routing


1: Receive a DIO
2: if Receive a DIO the first time then
3:
if A common channel exists then
4:
Add sender to the parent list
5:
Compute the rank
6:
Allocate a channel based on the constraint
7:
Forward DIO to others in multicast
8:
else
9:
Discard the packet
10:
end if
11: else if Satisfy required criteria then
12:
if A common channel exists then
13:
if Rank < Own Rank then
14:
Improve its location and get the lower rank
15:
Discard the parents with higher rank
16:
Do steps 6-7
17:
else if Rank = Own Rank then
18:
Do steps 4-7
19:
else
20:
Maintain the location in the DODAG
21:
Forward DIO to others in multicast
22:
end if
23:
else
24:
Discard the packet
25:
end if
26: else
27:
Discard the packet
28: end if

Dept. of ECE, RIT Kottayam

23

Chapter 5
Route Repair Using Trickle
Algorithm
Route repair is an eminent feature required whenever a routing protocol
is defined. It refers to the capability of repairing a defined route when a
link/node failure occurs. In a CRN scenario, link outages are so common
due to channel unavailability upon the appearance of PUs in their licensed
bands when they are being used by the CR users. Link failures are only
considered in this design. RPL offers two types of repair mechanisms[8]
which are made possible through the trickle algorithm[10],
Local repair: Triggered by a node when it detects a link failure. This
design offers two types of local repair mechanisms upon the failure
of the link with its default parent, (i) find another available common
channel/color to be used in the link, (ii) find an alternate parent with
an available channel/color from the parent list. Performance of both
the mechanisms depend on the efficiency of the CR users spectrum
sensing functionality.
Global repair: Triggered by the DODAG root if local repairs are not
efficient for network recovery due to several inconsistencies. The whole
route is repaired by initiating a new DODAG version for the global
repair operation. Nodes in the new DODAG version can choose a new
position whose rank is neither constrained by nor dependent on their
previous rank within the old DODAG version[].
These mechanisms are made possible through the Trickle algorithm. The
Trickle algorithm allows nodes in a lossy shared medium (e.g., LLNs) to exchange information in a highly robust, energy efficient, simple, and scalable

24

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

manner[10]. Each node periodically generates DIO messages, the trickle messages, triggered by the Trickle timer which helps in identifying the network
inconsistencies and hence trigger a repair operation. The message transmission frequency is optimised based on network conditions. The frequency is
increased whenever an inconsistency is identified for faster recovery from the
failure, and decreased in the opposite condition. This helps in optimizing the
control plane overhead based on network conditions.

5.1

Scheduling

Some kind of scheduling is required in implementing the Trickle algorithm


(in designing the Trickle parameters). It is the process of assigning a schedule for the transmission of data packets without collision. A traffic aware
scheduling is considered here[11]. According to this scheduling, a route can
be even scheduled (all nodes with even rank transmit in even time slots) or
odd scheduled (all nodes with even rank transmit in odd time slots). This
helps to avoid collision. The nodes transmit and receive in alternate timeslots. Source sends the hop count and total estimated packet number to the
base station so that it can decide on the scheduling. If the rank of source is
even, the route is odd scheduled. The schedule length can be calculated as,
Ls = (2 Qs) + (Hopcount 2)

(5.1)

where Qs is the number of scheduled packets and Hopcount gives the number
of hops from source to destination. In this scheduling, the transmission time
of a packet can be calculated as,
T xn time = timeslotlength Hopcount

(5.2)

where timeslotlength gives the length of the time slot allocated per packet.

5.2

Trickle Parameters and Variables

There are certain parameters and variables based on which a Trickle timer
performs its fuction[11]. The timer runs for a defined interval and has three
configuration parameters,
The minimum interval size, Imin: Two or three times the transmission
time for k data packets.
Imin = 2 T xn time k
Dept. of ECE, RIT Kottayam

25

(5.3)

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

The maximum interval size, Imax, number of doublings of the Imin


required to reach the maximum interval time:
M aximum interval time, I max = Imin 2Imax

(5.4)

It is actually given by,


I max = Ls/4

(5.5)

Imax = log2 (I max/Imin)

(5.6)

The redundancy constant, k, is a natural number: Atleast a consistent


DIO from the default parent must arrive at a node in an interval, so k
= 1.
The variables are,
I, the current interval size.
t, a time within the current interval.
c, a counter.
Initially, the timer duration is set to Imin, which will be doubled Imax
times until it reaches the maximum value. For any detected change in the
DODAG, the timer duration is reset to Imin to overcome the situation as
fast as possible.

5.3

Repairing Algorithm

The Trickle algorithm starts execution with the data transmission. At the
beginning, interval size is set at I = Imin. At a particular scheduled time,
t [I/2, I), the CR base-station intimates the DODAG root to transmit the
DIO. The root then multicasts the DIO to all its neighbors after modifying it
according to the results of channel sensing. Among the neighbors receiving
it, only those involved in current data transmission and those with root as
default parent will only accept the DIO. On accepting the DIO it will go
for the consistency check (whether the channel color used with the parent is
present in the set of common colors between the nodes) using the spectrum
sensing functionality.
If the color is found absent upon the consistency check, the node calls for
a local repair. If an alternate common channel is found absent between the
nodes, the node sends a DIS message to the alternate parents in its parent list
Dept. of ECE, RIT Kottayam

26

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

to find a credible path to the root. Now if in all ways the local repair is found
insufficient, the algorithm calls for a global repair, which is intimated by the
node to the base-station. After global repair, data transmission is restarted
for the remaining number of packets to be delivered to the destination.
If the DIO found consistent, the node will just multicast its modified DIO
to its neighbors, after incrementing its consistency counter (c) by one. And
the next node in the route will perform the same steps as the previous node
upon the receival of the new DIO. The interval ends at I and each node will
send its c value to its default parent which ultimately reaches the root. The
base-station will check whether at any node c < k. If found so, it will reset
the trickle timer interval to Imin, else the interval time is doubled. If the
new I > I max, the I is set at the maximum interval time. The new interval
then starts and the process repeats. The function of a router in the repairing
is summarized as an algorithm in Algorithm 2 and a flow chart given in Fig.
5.1.
Algorithm 2 Operation of a Router in Route Repairing
1: c = 0
2: Receive a DIO
3: if A node in route then
4:
if Received DIO consistent then
5:
c=1
6:
Multicast the modified DIO
7:
else if Alternate common channel exists then
8:
Local repair occurs
9:
c=0
10:
Multicast the modified DIO
11:
else if Valid alternate parent exists then
12:
Do steps 8-10
13:
else
14:
Global repair occurs
15:
end if
16: else
17:
Discard the packet
18: end if

Dept. of ECE, RIT Kottayam

27

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Receive
a DIO

Discard no
the packet

Node in
route

yes

Consistent

no

yes

Common
color
between
nodes

no

Valid
alternate
parent

no

Global
repair

yes

c=1

Local
repair

Multicast
the
modified
DIO

c=0

yes

Figure 5.1: Operation of a Router During Route Repairing

Dept. of ECE, RIT Kottayam

28

Chapter 6
Simulation Results and
Analysis
This section highlights the results obtained through a MATLAB simulation. The topology and channel availability of each node used in this
simulation are as shown in Table 6.1. The topology obtained from simulation is shown in Fig. 6.1. Over an area of 200m x 200m, about 21 nodes
(A, B, C,... U) are homogeneously distributed. Also six frequency channels
are allocated randomly over the area which are represented using the colors
red, green, blue, yellow, black and magenta. It is assumed that this channel
availability at each node is obtained through any efficient spectrum sensing
algorithm available in literature[2].
Topology Plot
200

180

E
J

B
Q

160

S
140
120
Y

P
U

100

T
80

F
D

60
M

40

20
0

20

40

60

80

100
X

120

140

160

Figure 6.1: Network Topology.

29

180

200

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Table 6.1: Topology and Spectrum Availability


Node
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U

6.1

Position
Channel Availability
(48.5,10.6) red,yellow,green,black
(2.8,52.3)
magenta,blue
(6.4,29.7)
magenta,blue,black
(39.6,18.5) red,green,yellow,black
(19.4,56.1)
magenta,blue
(17.8,22.7)
blue,black
(53.3,12.8)
red,yellow
(8.6,11.2)
blue,magenta,black
(11.8,18.4)
magenta,blue,black
(45.1,52.4)
red,green
(8.7,58.3)
magenta,blue
(49.0,41.3)
red,green
(2.3,13.5)
magenta,blue,black
(41.7,41.3)
red,green
(52.1,47.9)
red,green,yellow
(25.0,40.0)
red,blue
(33.3,48.5)
red,blue
(35.0,33.3)
red,green
(15.0,45.0)
magenta,blue
(29.1,25.8)
red,black
(19.5,34.2)
red,blue,black

Routing

Among the nodes, assume the source node to be M and the destination
node to be J. Fig. 6.2. shows all the possible paths from M to J formed
using the routing metrics mentioned in Chapter 3. Fig. 6.3. shows the default
route (that route which mandatorily obeys the link color constraint) used for
traffic flow chosen from the possible paths. It can be observed from the figure
that adjacent links do not use the same color leading to a minimum adjacent
link interference. Fig. 6.4. shows the corresponding DODAG formed. The
default route is only highlighted using different colors in the DODAG. It can
be seen that destination is the root node and source is a leaf node.

Dept. of ECE, RIT Kottayam

30

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Topology showing multiple paths


200

180

E
J

B
Q

160

S
140
120
Y

P
U

100

T
80

F
D

60
M

40

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.2: Topology Showing Multiple Paths.

Topology with default route


200

180

E
J

B
Q

160

S
140
120
Y

P
U

100

T
80

F
D

60
M

40

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.3: Topology Showing Default Route.

Dept. of ECE, RIT Kottayam

31

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

DODAG
1
0.9

0.8

0.7
R
0.6
T

0.5

0.4

0.3

0.2
L

0.7

0.8

0.9

0.1
0

0.1

0.2

0.3

0.4

0.5
0.6
height = 6

Figure 6.4: DODAG Formed.

6.2

Route Repairing

It is presumed in the simulation that a single packet is sent in a time


slot. Accordingly, all the trickle parameters are estimated before the execution starts. To understand route repairing, first assume that the channel
magenta becomes unavailable during the data transmission. Channel magenta forms the route between the nodes, M and H. It gets repalced by
another channel black which is common between these nodes through local
repair. It is shown in Fig. 6.5.
Locally repaired route with alternate channel
200

180

E
J

B
Q

160

S
140

120

100

T
80

F
D

60
M

40

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.5: Locally Repaired Route with Alternate Channel

Dept. of ECE, RIT Kottayam

32

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

Then assume that the channel black becomes unavailable during the data
transmission. Channel black forms the route between the nodes, F and
T. Local repair takes place here by choosing an existing alternate path as
the default route which is shown in Fig. 6.6.
Locally repaired route with alternate path
200

180

E
J

B
Q

160

S
140

120
Y

100

T
80

F
D

60
M

40

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.6: Locally Repaired Route with Alternate Path.

Now assume that the channel red becomes unavailable during the data
transmission. Channel red forms the route between the nodes, T and
R and N and J. Between J and N, an alternate channel, green is
found through sensing to continue the transmission as shown in Fig. 6.7.
Locally repaired route with alternate channel
200

180

E
J

B
Q

160

S
140

120
Y

100

T
80

F
D

60
M

40

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.7: Locally Repaired Route with Alternate Channel.

Dept. of ECE, RIT Kottayam

33

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

But between T and R, local repair cannot find a channel or an alternate


path to continue transmission. In such a case, global rapir occurs. When
the global rapair occurs, it is assumed that the topology changes as the CR
users are mobile and complete rerouting occurs with an upgraded version of
DIO. It is also assumed that the topology changes randomly when this repair
occurs. The new topology is shown in Fig. 6.8. Fig. 6.9. shows the multiple
paths formed. And the route formed after global repair is shown in Fig. 6.10.
and Fig. 6.11. shows the corresponding DODAG formed.
New topology
K

200
180

E
J

160
S
140

120

100

80

60
M

40

H
A

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.8: New Topology.

Topology showing multiple paths after global repair


K
E

200
180

160
S
140

120

100

80

60
M

40

H
A

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.9: Topology Showing Multiple Paths After Global Repair.

Dept. of ECE, RIT Kottayam

34

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

New default route after global repair


K

200
180

E
J

160
S
140

120

100

80

60
M

40

H
A

20
0

20

40

60

80

100
X

120

140

160

180

200

Figure 6.10: New Route After the Global Repair.

New DODAG after global repair


1
0.9

0.8

0.7
R
0.6
D

0.5
0.4

0.3

0.2
A

0.1
0

0.1

0.2

0.3

0.4

0.5
0.6
height = 6

0.7

0.8

0.9

Figure 6.11: New DODAG Formed.

Dept. of ECE, RIT Kottayam

35

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

6.3

Performance Analysis

In this design, routing is performed through the transmission of a number


of control packets. The control plane overhead is an important routing characteristic in RPL. It is imperative to bound the control plane overhead[12].
And it is made possible by the use of trickle timers by eliminating the redundant messages. Fig 6.12. shows the data and control packet comparison for
each in the topology in normal routing and data transmission condition with
zero link outage. The x axis indicates the node ID in the network and the y
axis indicates the number of packets through each node. It is clear from the
result that the control packet overhead is negligible when compared to the
data packtes being transmitted through the nodes.

Data and control packet flow comparison


600
Data packets
Control Overhead

Number of packets

500

400

300

200

100

10
12
Node Id

14

16

18

20

Figure 6.12: Data and Control Packet Flow Comparison.

Several conditions may occur in the network during transmission. Fig.


6.13. shows the comparison of control plane overhead under different conditions. The x axis indicates the node ID in the network and the y axis
indicates the number of packets through each node. It is clear from the figure that the control plane overhead is the maximum through the network
when the global repair occurs. When a local repair occurs by finding the alternate path, there is an increase in control plane overhead due to the extra
Dept. of ECE, RIT Kottayam

36

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

flow of DIS messages to retrieve DIO from nodes in alternate path.

Control Packet Overhead


50
Zero outage transmission
Local channel repair
Local path repair
Global repair

45
40

Number of packets

35
30
25
20
15
10
5
0

10
12
Node Id

14

16

18

20

Figure 6.13: Control Packet Overhead Under Different Routing Conditions.

Dept. of ECE, RIT Kottayam

37

Chapter 7
Conclusion
In this work, a new routing protocol based on RPL is being introduced
into the CRN scenario. It is found that CRs being smart, RPL could be
effectively implemented in a CRN. It also supports the cross layer design
which is widely accepted as an effective CRN routing solution. An efficient
route repairing algorithm has also been implemented. Route repairing is
always a relevant part of routing algorithms in a CRN scenario. Simulation
results show that the proposed routing design works efficiently in the CRN
scenario with minimum control packet overhead. Overall, RPL is found to
be a suitable routing protocol that can be carried out into the real CRN
scenario.
This work implements RPL using very simple routing metrics and constraints. RPL is flexible enough to allow the designer to use any metric based
on the network requirement. Future work of this thesis work lies in developing efficient routing metrics and constraints suitable for both RPL and CRN
scenario.

38

Bibliography
[1] Haykin S., Cognitive radio:

Brain-empowered wireless communications,IEEE Journal Selected Areas in Communicationsvol.23, no.2, Feb. 2005,
pp. 201-220.

[2] J. Mitola et al., Cognitive radio: Making software radios more personal,IEEE
Pers. Commun., vol. 6, no. 4, Aug. 1999, pp. 13-18.

[3] I. F. Akyildiz,W. Y. Lee, M. C. Vuran, S. Mohanty, NeXt generation/dynamic


spectrum access/cognitive radio wireless networks: a survey,Computer Networks, Elsevier, May 2006, pp. 2127-2159.

[4] Brandon F. Lo, A survey of common control channel design in cognitive radio
networks, Physical Communication, Elsevier vol. 4, no. 1, March 2011, pp.
26-39.
[5] Matteo Cesana, Francesca Cuomo, Eylem Ekici, Routing in cognitive radio
networks: Challenges and solutions,Adhoc Networks, Elsevier, vol. 9, no. 3,
May 2011, pp. 228-248.

[6] Xianwei Zhou, Lin Lin, Jianping Wang, Xuesong Zhang,, Cross-layer Routing
Design in Cognitive Radio Networks by Colored Multigraph Model,Wireless
Personal Communications, vol. 49, no. 1, April 2009, pp. 123-131.

[7] Olfa Gaddour, Anis Koubaa, RPL in a nutshell: A survey,Adhoc Networks,


Elsevier, vol. 56, no. 14, Sept. 2012, pp. 3163-3178.

[8] T. Winter, P. Thubert, A. Brandt, J. Hui, R. Kelsey, RPL: IPv6 Routing


Protocol for Low Power and Lossy Networks,IETF Internet Draft: draft-ietfroll-rpl-11, July 2010. <http://tools.ietf.org/html/draft-ietf-roll-rpl-19>

[9] J. Vasseur, M. Kim, K. Pister, N. Dejean, D. Barthel, Routing Metrics used for Path Calculation in Low Power and Lossy Networks,IETF
Internet Draft: draft-ietf-roll-routing-metrics-09, Sept. 2010. <http://
tools.ietf.org/html/draft-ietf-roll-routing-metrics-09>

39

Cross Layer Routing Design Based on RPL for Multi-hop Cognitive Radio
Networks

[10] P. Levis, T. Clausen, J. Hui, O. Gnawali, J. Ko, The Trickle Algorithm,IETF Internet Draft: draft-levis-roll-trickle-08, March, 2011.
<http://tools.ietf.org/html/draft-ietf-roll-trickle-08>

[11] Nicola Accettura, Maria Rita Palattella, Gennaro Boggia, Luigi Alfredo
Grieco, Mischa Dohler, Decentralized Traffic Aware Scheduling for Multihop Low Power Lossy Networks in the Internet of Things, in Proceedings of
14th International Symposium and Workshops on a World of Wireless, Mobile
and Multimedia Networks (WoWMoM), June 2013, pp. 1-6.

[12] J. Tripathi, J. de Oliveira, JP. Vasseur, Performance Evaluation of


Routing Protocol for Low Power and Lossy Networks (RPL),IETF
Internet Draft:
draft-tripathi-roll-rpl-simulation-07,
August,
2011.
<http://tools.ietf.org/html/draft-tripathi-roll-rpl-simulation-07>

Dept. of ECE, RIT Kottayam

40

List of Publications
[1] Irin Sajan, Ebin M. Manuel, Cooperative Jarque-Bera Statistic Based
Spectrum Sensing Using MIMO Decision Fusion, in Proceedings of
Fourth International Conference on Advances in Computing and Communications (ICACC), 27-29 Aug., 2014, pp.274-277.
[2] Irin Sajan, Ebin M. Manuel, Cross Layer Routing Design Based on RPL
for Multi-hop Cognitive Radio Networks, in International Conference on
Contemporary Computing and Informatics,November, 2014.[Accepted]
[3] Irin Sajan, Ebin M. Manuel, Cross Layer Routing Design Based on RPL
for Multi-hop Cognitive Radio Networks, in IEEE International Conference on Signal Processing, Informatics, Communication and Energy
Systems (IEEE SPICES), February, 2015.[Communicated]
[4] Irin Sajan, Ebin M. Manuel, Cross Layer Routing Algorithm Based on
RPL for Multi-hop Cognitive Radio Networks, in International Journal
of Networking and Communication (IJNC), December, 2014.[Communicated]

41