Beruflich Dokumente
Kultur Dokumente
Project Title -
Evaluating the performance of routing protocols for
Mobile Ad Hoc Networks
Name: XXXX
Supervisor: XXXXXXX
Abstract
E fficient routing in mobile ad hoc networks is very important due to rapid changes in
network topology. Three routing protocols specifically designed for mobile ad hoc networks,
namely AODV, DSR and OLSR are compared. Simulation studies using OPNET modeller show
that AODV and OLSR perform better than DSR in highly mobile and dense networks, with DSR
showing a slight performance improvement in networks with light to medium traffic load, but still
cannot be compared to that shown by AODV and OLSR.
Details of the simulation experiments and analysis of the results obtained are contained in this
report.
I would like to thank my Supervisor XXXXXXXXX for all her support during the
implementation of this project, and for taking time out from her busy schedule to offer her
assistance and guidance. I am very grateful to my parents for their support, financial and
otherwise in the pursuit of my MSc degree, my sisters, brother and friends, for putting up with me
during my most trying moments. I would also like to thank the technicians at Queen Mary
hardware laboratory 440 for all their help and assistance.
ABSTRACT ................................................................................................................................................. II
ACKNOWLEDGEMENTS .......................................................................................................................III
LIST OF TABLES...................................................................................................................................... VI
LIST OF FIGURES...................................................................................................................................VII
1 INTRODUCTION .....................................................................................................................................1
1.1 EVOLUTION OF MANET (MOBILE AD HOC NETWORK) IN BRIEF ....................................................1
1.2 AIM AND OBJECTIVES ..........................................................................................................................2
1.3 PROJECT ROAD MAP............................................................................................................................2
2 LITERATURE REVIEW ..........................................................................................................................3
3 MOBILE AD HOC NETWORKS .........................................................................................................11
3.1 CONCEPTS ..........................................................................................................................................11
3.1.1 Usage and Applications..............................................................................................................12
3.1.2 Characteristics and Challenges .................................................................................................12
3.2 ROUTING.............................................................................................................................................13
3.2.1 Mechanism and Activities ..........................................................................................................13
3.2.2 Metrics ........................................................................................................................................14
3.2.3 Algorithms ..................................................................................................................................14
3.2.4 Desirability and Goals................................................................................................................15
3.3 AD HOC ROUTING PROTOCOLS .........................................................................................................16
3.3.1 Desirable Qualitative Properties ................................................................................................17
3.3.2 Ad Hoc On Demand Distance Vector Protocol – AODV ..........................................................18
3.3.2.1 Mode of Operation ............................................................................................................................ 18
3.3.2.1.1 Message types ............................................................................................................................ 18
3.3.2.1.2 Route Discovery and Requests ................................................................................................. 18
3.3.2.1.3 Sequence Number Maintenance............................................................................................... 20
3.3.2.1.4 Route Replies............................................................................................................................. 21
3.3.2.1.5 Route Maintenance ................................................................................................................... 22
3.3.2.1.6 Maintaining Connectivity............................................................................................................ 23
3.3.3 Dynamic Source Routing Protocol – DSR ................................................................................24
3.3.3.1 Mode of Operation ............................................................................................................................ 24
3.3.3.1.1 Route Discovery......................................................................................................................... 24
3.3.3.1.2 Route Maintenance ................................................................................................................... 26
3.3.3.2 Additional Features........................................................................................................................... 26
3.3.3.2.1 Caching Overhead Routing Information ................................................................................ 26
3.3.4 Optimized Link State Routing Protocol.....................................................................................27
3.3.4.1 Mode of Operation ............................................................................................................................ 28
3.3.4.1.1 Multi Point Relays..................................................................................................................... 29
3.3.5 Topology Dissemination Based On Reverse-Path Forwarding (TBRPF)................................29
3.3.5.1 Mode of Operation ............................................................................................................................ 29
3.3.5.1.1 Neighbour Discovery................................................................................................................. 29
3.3.5.1.2 Routing Module......................................................................................................................... 30
3.4 ROUTING PROTOCOL COMPARISON ..................................................................................................30
4 SIMULATION OVERVIEW ..................................................................................................................32
4.1 PRACTICES AND TECHNIQUES ...........................................................................................................33
4.2 OPNET MODELLER ...........................................................................................................................34
4.2.1 OPNET Architecture..................................................................................................................34
5 SIMULATION MODELS AND STUDY................................................................................................36
T he interest in Mobile ad hoc networks has become very widespread due to the wide
availability of devices that can communicate using wireless means such as PDAs’ (Personal
Digital Assistants) and laptops. This has led to the realisation that traditional routing methods
used in wired networks, as good as they are will not be appropriate for ad hoc networks, where
there is no centralized authority like access points or dedicated routers, to handle the routing of
packets and making decisions on best routes, based on different routing metrics such as hop
count, link cost, load, reliability and bandwidth, to name but a few.
As wireless devices become more and more available, a number of routing protocols have been
proposed. [2] The IETF set up the MANET working group in 1997 to review and standardise
routing protocols suitable for ad hoc networks due to their wireless transmissions, dynamic
topologies and mobility. Quite a number of routing protocols have been proposed to date, [3]
presents a long but comprehensive list on information about the protocols available, including
links to IETF drafts, RFCs’ where applicable, and other useful links that apply. The exact number
cannot be determined currently. Only a few as listed in [4] have been accepted for publication as
experimental RFC’s (Request For Comments). The MANET WG has made the RFCs’ for these
protocols available at their website. The protocols available are Ad hoc On Demand Distance
Vector (AODV) Routing (RFC 3561), Optimized link State routing Protocol (RFC 3626) and
Topology Dissemination Based on Reverse-Path Forwarding (TBRPF) (RFC 3684).
This chapter presents a critical evaluation of scholarly journals, articles, and other sources
relevant to this project. Descriptions and summaries are provided for each work reviewed and the
purpose is to give an overview of noteworthy literature on the project topic area.
This chapter deals with mobile ad hoc networks, its concept, characteristics, usage and
applications and detailed features and mode of operation of ad hoc routing protocols. General
routing concepts are also discussed briefly.
The principles and techniques of best simulation practices involved in carrying out successful
simulation and modelling studies are covered here. This includes the simulation life cycle and
modelling process. Also contained in this chapter is a short description of OPNET, the simulation
tool used in the implementation phase.
The implementation stage is covered here, describing the implementation decisions and
methodology. Model descriptions and parameters used are presented explicitly, as well as the set
up of the variety of network conditions i.e. scenarios. The summary and analysis of results
obtained as well as observations, round up this chapter.
Chapter 6: Conclusion
A summary of the main points from the study, personal reflection and critical assessment of work
done, problems encountered and self development during the duration of the project, are
presented in this concluding chapter. Also recommendations for future work and extensions to
current study, come under this chapter.
T he need to communicate on the fly is growing at a fast rate and the availability of
inexpensive wireless communication capable devices has led to the increasing interest in the
research of mobile ad hoc networking. The National Institute of Standards [5] reckon that
wireless networks are swiftly moving towards an era where situations will need swift deployment
of mobile infrastructure with example scenarios such as disaster relief efforts, emergency rescue
and military operations. The realisation that traditional routing methods and protocols used in
wired networks would not be ideal for such dynamic networks as ad hoc, has led to the proposal
of a number of ad hoc routing protocols. [2]The IETF set up the MANET working group in 1997
to review and standardise routing protocols, since then quite a number of them have been
proposed. [3] Presents quite a long but comprehensive list on information about the protocols
available, including links to IETF drafts, RFCs’ where applicable, and other useful links that
apply. It is interesting to note that most of the protocols presented in that list do not seem to have
enough information apart from their author’s details. The only ones with useful information are
those with RFCs and links to the IETF website. The exact number cannot be determined currently
but only a few as listed in [4] have been accepted for publication as experimental RFC’s (Request
for comments). Owing to this, researchers are able to use the information available to evaluate
and compare the performances of these protocols, under varying conditions.
Corson and Macker [6] have come up with an interesting outline to evaluate the performance of
routing protocols, using qualitative and quantitative metrics, as well as networking metrics. They
believe these metrics are needed to determine the suitability of a routing protocol. Properties such
as distributed operation, loop free, demand and proactive based operations, security, sleep period
and unidirectional link support are some of the desirable qualitative properties, quantitative
metrics such as end to end throughput and delay, route acquisition time and network metrics like
network size, link capacity etc. In their view, the good and bad points of a protocol should be put
forward so as to aid in the identification and classification as per its usage.
The beauty of Corson and Macker’s [6] outline is that it makes clear what parameters that can and
should be incorporated while evaluating a routing protocol.
Simulation plays an important role in understanding and evaluating the performances of routing
protocols on networks, which is why it is quite important that simulation tools models, default
parameters, scenarios and assumptions are carefully described and understood. Perrone et al [8]
expressed the above using 3 case studies and were concerned with how initial transient problem
affects simulations and how not incorporating “the best practices of simulation techniques”[8]
does not help the “advancement of scientific contributions” [8], as it makes it quite difficult for
others to replicate or build on existing work. They also pointed out that the well known practice
of using “warm up models”[8] which avoids the “initial transient” problems mostly associated
with mobility models are hardly mentioned in most scientific publications, and authors do not
give a listing of simulation parameter values due to lack of space, and this should be addressed by
providing further information on websites.
Several authors have gone ahead to research the performances of several routing protocols
through simulation.
Broch et al [9] and Das et al [10] incorporated the radio propagation model of 2 ray ground
model (1/r4) for far distances and the Friss-space attenuation (1/r2) model for near distances, in
their physical layer model while evaluating the AODV, DSR, DSDV, and TORA routing
protocols. Ramachandra et al [11] focused on evaluating and comparing the protocols’
performance on 3 different Ad hoc architectures [9], including the ARP protocol in their protocol
stack modelling, and their reasoning behind this is all routing protocols operate at the network
layer; therefore IP addresses will need resolution. Boukerche [13] presented the main differences
in a tabular form in evaluating the performance of AODV, PAODV, CBRP, DSR and DSDV, and
It is quite important to model a realistic physical layer model during simulations and not many
performance studies do this, as rightly pointed out by Gauthier et al [12] while evaluating the
performances of AODV, DSR, LANMAR and OLSR using a radio propagation model with and
without interferences. Their conclusion was that “the amount of interferences is directly related to
the quality of the route and more specifically to the number of hops and the quality of traffic”
[12].
Some researchers have addressed the problem of not evaluating protocols in a realistic
environment to analyze their performances. Marinoni and Kari [15], Jardosh et al [16] reason that
most simulation studies do not consider the fact that obstacles such as buildings can act as sources
of obstruction and interference. Moreover this should be the case since ad hoc networks are
usually deployed in areas such as cities, campuses and the like.
Choi and Ko [17], Marinoni and Kari [15], Jardosh et al [16] and Johansson et al [14], evaluated
different routing protocols in various simulated realistic environment.
Choi and Ko [17] employed a realistic military scenario with a physical layer model which they
felt was more appropriate and reflected a typical military environment. They argued that most
simulation studies usually make use of parameters that reflect a more “commercial setting” [17]
where they make use of the 2.4GHz ISM band and its associated parameters, which is far
removed from a military setting with typical ranges of 100MHz frequency band more likely VHF
or HF, and with low data transmissions rates within the range 384Kbps. Below is a table from
their journal, with summary of the parameters.
Marinoni and Kari [15] and Jardosh et al [16] focused on studying and analyzing the protocols in
scenarios involving the presence of obstacles. Both authors proposed realistic mobility models
that model realistic user behaviour and compared results of their mobility model with the random
waypoint model. [15] proposed the Urban Mobility Model (UMM) which “describes real world
details of a city-like environment that demonstrates the impact of realistic mobility patterns and
radio propagation models on the performance of MANET routing protocols” [15], while [16]
proposed the Object Mobility model (OM) which focuses on obstacle scenarios specifically on
building type obstacles of varying sizes, using polygons to represent the obstacles. Both
researchers came to the conclusion that obstacles do have an impact on the performance of
routing protocols.
Johansson et al [14] simulated 3 different realistic scenarios of conference, event coverage and
disaster area to analyse the AODV, DSR and DSDV protocols. They discovered that the protocols
were more challenged in the disaster area scenario, because of frequent network partitioning.
Oliveira et al [18] and Campos and Elias [19] both studied and analyzed protocol performance
over application programs. [18] “conducted a detailed study of a Gnutella like application (peer-
to-peer) running over a MANET” [18] using the DSDV, DSR and AODV routing protocols.
Results showed that protocols performed well depending on the qualitative metric under which
the protocol is being analyzed, and came to the conclusion of the “importance of considering
characteristics of both application and network in order to have the best integrated solution”
[18].
[19] studied the DSDV, DSR, AODV and TORA routing protocols in a “hybrid ad hoc network
scenario used by mobile users to establish videophone sessions” [19]. It was discovered that the
reactive protocols performed better than the proactive protocols reason being due to their on
demand and route maintenance properties. They came to the conclusion that “the adoption of a
given routing protocol ought to be guided by a comparative analysis that evaluates the particular
network scenario and the interested application class” [19].
Mobility is another important simulation area and most researchers are interested in how this
parameter affects the performance of routing protocol, since it is the basis of ad hoc networks.
Marinoni and Kari [15], Jardosh et al [16], Ishibashi and Boutaba [21], Lenders et al [22],
Bettstetter [23], Stepanov et al [24] and Sirivianos and Leontaris [25], all studied the impact of
mobility in their performance evaluation of routing protocols under different environments.
The UMM (Urban Mobility Model) model was proposed by [15] to model realistic user
behaviour in a city like scenario complete with obstacles and are of the mind that “topology and
movement are key simulation factors that affect protocol performance” [15].
[16] Proposed the OM (Obstacle Mobility) model to reflect a realistic college campus scenario
based on the location of buildings in a selected area of the University of California. They believe
that “simulations should reflect realistic mobility behaviour since it is important in order to carry
out meaningful performance analysis of routing algorithms” [16].
Ishibashi and Boutaba [21] and Lenders et al [22] focused on how mobility affected links and
route life time which is “considered important in designing MAC and network layer protocols”
[22].
Lenders et al [22] were of the opinion that no “real-life measurements have been used to study the
effects of node mobility on link and route lifetime” [22]. Hence they created a real ad hoc network
of 20 PDAs’ “connected via 802.11b wireless interfaces”, [22] to analyse this issue. It was
discovered that the failures associated with links was also caused by other factors such as
collisions and interferences apart from human mobility. They also conducted simulations using
the 2 popular mobility models, random way point and random reference point.
A comparison of results from both the simulations and empirical study was possible due to the
“isolation and separation of link failures caused by mobility and collisions or interferences” [22]
and the conclusion arrived at was that the results were close and that user mobility was modelled
the same, in both situations.
Ishibashi and Boutaba [21] tackled the issue by studying their features through parameters such as
node density, network dimension, radio transmission range and mobility settings of maximum
speed and wait times. They discovered that “many links break after a relatively short time period”
[21] and that node density can be an asset as well as a liability in regards to how it creates
wireless medium contention while at the same time providing multiple routes, which helps in the
reduction of broadcast messages.
Bettstetter [23] proposed a 2 dimensional SMM (Smooth Random Mobility model) which is
halfway between a realistic mobility model and the random waypoint model that reflects
smoother user movement than in well known mobility models. He was of the view that not
making the right choice in mobility model “could lead to incorrect simulation results.”[23]
Stepanov et al [24] focused on modelling mobility that reflected user behaviour in out door
scenarios, describing the “main factors that influence user movement” [24]. They base their
mobility model on a user oriented mobility meta-model which is a generic mobility model”.
Sirivianos and Leontaris [25] based their research on studying protocol performance “under
extreme mobility (over 20m/s)” [25]. Results show that out of the 3 protocols i.e. AODV, DSR
and FSR studied, AODV performed best.
A few researchers have gone further by analysing protocol performance through conducting test
bed emulations. Haq and Kunz [26] and Chin et al [27] focused their attention on this area. [26]
Were interested in the extent to which simulation and emulation differ, in terms of results
Chin et al [27] argued that their work was a necessity due to a “lack of published results on the
implementation of routing protocols on actual wireless networks”. [27] They emulated the
AODV and DSDV protocols on a 5 hop 4 node test bed on Linux workstations equipped with
802.11b wireless LAN NICs, and discovered that “neither protocol could provide a stable route
over any multi-hop network connection”.[27]
They came to the conclusion that contrary to what was reported in most publications, routing
protocols were not up to scratch in their performance when emulated rather than simulated. They
highlighted the following areas for improvements:
During the review of literature for this project it was discovered that researchers’ all used
different simulation tools in their evaluation of routing protocols. The table below gives the
statistics of the tool usage.
As can be seen, most researchers favoured the ns-2 simulator, which could be due to the fact that
it is an open source tool. Comparing results from each work could prove a difficult task since
there is a possibility that results could vary since modelled scenarios and their associated
parameters, differ from researcher to researcher, depending on the area of interest under study. As
reported by Cavin et al [28] during a study carried out on 3 popular simulators (OPNET, NS-2
and GloMoSim) to simulate a simple flooding algorithm involving 50 nodes, it was discovered
that there was a “significant divergence” [28] in results obtained and in some cases,
incomparable.
Haq and Kunz [26] further buttress the above during their study that “despite all the cutting edge
and technological achievement in the mobile wireless network field, there are growing concerns
about the reliability of simulation results”.[26]
Owing to these studies and discoveries above it follows that there would be considerable
difficulty in comparing evaluation results as noted by Ishibashi and Boutaba [21].
Another area of discovery during the review was that some researchers do not include in their
work the all important simulation parameter values used during their study. Only a few bother to
state them and even at that it is either they give a mention of the protocol simulation parameters
and not mention the MAC and Physical model parameters or vice versa. Broch et al [9] and
Sirivianos, Leontaris [25] and Johansson et al [14] outshone the others in this very important
aspect of simulation as stressed by Perrone et al [8].
On discarding the transient results during simulation, only Marinoni and Kari [15] kept to this
practice in their work.
This project will focus on evaluating ad hoc routing protocols using the OPNET simulator, and
will try as much as possible to incorporate all the good practices of simulation techniques, in
order to allow others to build and improve on.
As rightly pointed out by Ishibashi and Boutaba [21], a “better understanding of MANET
parameters and characteristics will:
3.1 Concepts
A n ad hoc network also known as wireless ad hoc network is a network with a collection of
nodes or devices with wireless capabilities. They are formed out of a need to communicate on the
fly hence are different from conventional wired networks. They have no dedicated or centralized
authority, all nodes are peers. Since there are no dedicated routers or central servers, all nodes in
the network act as routers, hence the term multi-hop, meaning transmissions are relayed by
several nodes along the path from the source to the final destination.
When the nodes in an ad hoc network are mobile, then it is referred to as a mobile ad hoc
network. [30] Devices could be laptops, and PDAs’ (personal digital assistant). [6] Nodes can be
found in or on aeroplanes, ships, cars, and individuals.
The presence of no central authority ensures network availability and the chances of
unavailability of resources are reduced in the event that a node suddenly moves out of
transmission range of the others. Nodes are free to enter and leave the network whenever they
wish since communications only last for specific time periods; therefore the network should
ideally be able to adapt to the new conditions.
Wireless network links are prone to certain factors such as interference, noise, signal fading, and
congestion due to the constrained link capacity, which will always be a problem since mobile
networks are seen as extensions [6] of fixed networks hence users’ demands and expectations in
terms of network services will be the same. Nodes also suffer from limited CPU, storage capacity
and battery power, and have to conserve energy. The limited battery power also affects the
transmission range capabilities of the nodes. The links between communicating nodes are usually
[30] bi-directional but could also be uni-directional which tends to happen when the transmission
power between communicating nodes are different. Another important feature is that of security,
since the wireless links are virtually in open air, they can easily be tapped into and transmissions
intercepted.
The MAC protocol scheme of CSMA/CD (Carrier Sense Medium Access Collision Detection)
applied in wired networks cannot be used in wireless networks, since it involves medium
contention which is not desirable in wireless networks since signal strength decreases as distance
increases and a signal on the medium arriving at the receiving end may not be sensed by other
nodes that are out of range.
Several MAC protocol schemes have been developed for wireless networks, and can be classified
into contention-free and contention-based. S. Kumar et al (2006) [30] used a hierarchical
organizational chart to classify some of the various MAC schemes as reproduced below.
3.2 Routing
Routing [31] refers to a means by which information is transmitted from a given source to a
destination in an internetwork. Routing is often mixed up with bridging, while the latter operates
in layer 2 of the OSI reference model using MAC addresses’, the former operates at layer 3 of the
OSI reference layer using IP addresses. Routing involves maintaining what is known as a routing
table containing a list of known IP addresses of various network destinations. Each router in a
network maintains a routing table which is used to make forwarding decisions when a packet is
received for a given destination. The tables contain a listing of destination IP addresses - next hop
mappings. The next hop could either be indicated by the outgoing interface number of the router
or its IP address.
• Hop Count is the most common metric and refers to how far away a given destination is
based on the number of intermediate routers a packet will have to go through, between
the source and destination.
• Load refers to how busy a network is, in terms of the amount of work the devices in the
network have to perform. Load could be calculated as the number of packets being
processed per second, CPU utilization, or memory usage.
• Bandwidth refers to the capacity of a link in terms of the amount of data in bits, and how
fast in terms of seconds a data packet can be transmitted, in other words the traffic
capacity of a link.
• Delay refers to the time it takes for a packet to travel from the source to the destination
while taking into consideration factors such as congestion at the intermediate devices on
the path between the source and destination, the distance and also queues at in-going
router ports.
• Reliability refers to how dependable a network link is in terms of how often it fails, how
quickly it is repaired and how often it is utilized in routing packets. These factors are
taken into account during the assignment of link reliability ratings which are numeric
values that are arbitrarily decided on by the network administrator.
3.2.3 Algorithms
Routing protocols use the mathematical rules as dictated by the algorithms to maintain their tables
and choose the best route for packet forwarding from source to destination, and can be classified
according to the type of algorithm used and other properties. They are either classified as distance
vector or link state. The distance vector algorithm is based on the Bellman Ford algorithm [31].
Protocols based on this algorithm are aware of only neighbouring routers, and the routers
exchange all or a portion of their routing tables with neighbouring routers only, periodically. The
time interval between the exchanges of routing tables updates differ depending on the distance
vector routing protocol in use. For example RIP uses an interval of 30 seconds and IGRP 90
seconds.
Link State algorithm [31] also known as the shortest path first algorithm, is based on the Djikstra
algorithm [31] where each router builds a complete view of the entire network. Updates are sent
to all routers in the network only when a change in the network status occurs. The updates are
small when compared to that of distance vector. At the initial network configuration the updates
are flooded throughout the network, and then are only triggered when link state changes occur.
These updates are also known as link state advertisements (LSA).
Other routing algorithm types besides the popular 2 described above are listed below.
• Optimality Being able to select the best route which depends on one or more metric used
by the algorithm.
• Simplicity and low overhead Routing algorithms should be simple to ensure they
perform efficiently and with little or no overheads, especially when faced with limited
hardware and software resources.
• Robustness and stability Algorithms should be able to perform reasonably in the event
of circumstances such as hardware failure, increased load. The best algorithms are those
that can remain stable and reliable no matter the network condition.
• Rapid convergence Routing algorithm should be able to converge quickly i.e. where all
routers have the same knowledge of the network topology and are in agreement. Slow
convergence could lead to routing loops and network outages.
• Flexibility Routing algorithms should be flexible in the sense that they can be able to
respond to and adapt to changes in the network topology. Such changes could be in the
form of network bandwidth, delay and so on.
Routing in mobile ad hoc networks is quite different from conventional routing in wired networks
because it is more complex and challenging, and therefore requires special routing protocols to
handle the challenges.
Quite a number of MANET routing protocols have been proposed, with only a few published as
experimental protocols using the Request For Comments documents, while others are available as
Internet drafts. A full list of protocols, as regards their documentation and statuses, i.e. published,
active, Internet drafts, expired etc, are available on the Internet Engineering Task Force (IETF)
MANET status pages.[33].
Ad hoc routing protocols can be classified into reactive, proactive or hybrid as illustrated below
in figure 2, depending on their mode of operation.
Only some of the protocols have been discussed in this chapter to avoid going over the project
documentation limit. More focus has been paid to the currently published protocols, and some of
the more popular Internet draft protocols, as listed on the IETF MANET charter website. The
three protocols to be evaluated in this project are also part of the discussion below, hence more
detail has been provided compared to the others.
• Demand-based Operation. [6] Routing protocols should only react when there are
changes in the network e.g. ideally they should only provide routes as and when needed
instead of maintaining routes to destinations at all times. This operation will help
conserve network resources such as bandwidth and energy, although at the cost of delays
in discovering routes.
• Security. [6] Wireless networks are prone to attacks due to their open air medium of
communication. MANET routing protocols are open to attacks such as packet sniffing,
packet header re-ordering, and transmission interception, to name but a few. Although
these security issues are still an integral part of wired networks, but at least there is
physical protection in wired networks, herein lays the difference between the wired and
wireless environment. It goes without saying that wireless media are more difficult to
protect since they are not seen physically. Security measures are needed and desired to
prevent the disruption of routing activities. Techniques such as IPSec using transport or
tunnel mode for protecting IP headers can be used to achieve the security requirements.
• “Sleep” period operation. [6] Energy is needed for both signal transmission and
reception. To conserve energy, MANET nodes may suspend these activities at
intermittent periods. Routing protocols should be able to adapt to such situations without
having too much effect on network operations.
• Unidirectional link support. [6] Bi-directional links are always implied and seen as the
de facto standard in terms of connection, in routing algorithms. But there are cases often
in wireless networks, where links could be uni-directional especially where transmission
capabilities differ between source and destination. Some routing algorithms cannot
perform well, using uni-directional links. Sometimes the only connection available in a
network, could be two uni-directional links but in opposite directions. Routing protocols
should be able to utilize these connections.
AODV has three message types namely Route Requests (RREQs), Route Replies (RREPs) and
Route Errors (RRERs). These messages use UDP port 654, as the transport layer protocol.
Although RREQ messages are broadcasted, the extent to which the broadcast is heard depends on
the TTL (Time To Live) value in the IP header.
Route Request messages are broadcasted when a new route is needed to a destination and there is
no current known route entry for that destination. A route is established when the destination
receives a RREQ message or an intermediate node, that has a more current entry to the said
destination and this can only be acceptable if the sequence number associated with the route entry
for that destination, is at least as great as the one in the RREQ message. All nodes that receive the
RREQ [32] message as it is broadcasted, keep a copy and set up a reverse path back to the
originator of the request message. This path is used to send back a reply i.e. RREP [32] message,
which is a unicast type message, from the destination or any intermediate node capable of
providing a reply.
Every RREQ message has an identifier, i.e. RREQ ID, which is unique to each message. The ID
value is incremented by a node each time a new RREQ is generated. A node maintains only one
RREQ ID, and sets the hop count field to zero. An originating node usually uses the FIFO (First
In First Out) technique to buffer its own IP address and RREQ ID, before broadcasting the
request message. This is to avoid processing the packet again, when received from a neighbouring
node.
Reverse path
RREQ
S E
FF
B
C M
M LL
JJ
AA GG
HH D Destination
KK
II N
Originating nodes use what is known as the “expanding ring search” [32] technique, to avoid
unnecessary propagation of RREQ in the network. In this technique, the TTL value in the RREQ
packet IP header is initially set to a start value, and the maximum period for the reception of a
RREP is also set i.e. timeout period. If no corresponding RREP message is received and the
RREQ message times out, the node will re-broadcast the RREQ message and increment the TTL
value. This operation continues until the TTL value reaches the threshold.
When nodes receive RREQ messages, they check the source IP address and RREQ ID to ensure
they have not been processed previously, if true then the messages are discarded, otherwise the
hop count value is increased by one to account for the new hop through the node.
Nodes other than the intended destination node that generate RREP messages in reply to RREQ
messages, due to the fact that they possess an up to date route, must also in addition send back
what is known as a gratuitous RREP message which is unicast to the original intended
destination. This is done by setting the ‘G’ flag in the message. Originating nodes can also set the
‘G’ flag in RREQ messages, to ensure that intended destinations are aware of a route back to
sources if and when needed.
Every node maintains a route table entry containing IP addresses of known destinations; the latest
sequence number of the destinations is also included in the entry. This must be updated whenever
a node receives new information about a sequence number related to a given destination, either
from a RREQ, RREP or RERR message. Sequence numbers are updated in any of the following
circumstances
• Immediately before a RREQ message is sent, the source must increase its own sequence
number. This is to avoid confusion as per reverse routes already known towards the
source.[32]
Before updating sequence numbers, a comparison must be carried out between the stored
sequence number and the received one from any AODV message i.e. RREQ, RREP and RRER.
This is to ensure that the information about a destination is current and not stale. The current
sequence number is subtracted from the incoming received one and if the result is less than zero,
then the information for the destination as reported by the message must be discarded since it is
old compared to the information currently stored or known by the node. This process described is
better known as sequence rollover.
A route reply message is generated in response to a corresponding route request message. A node
will reply to a RREQ message in the below circumstances:
Before sending out a RREP message, a node will copy the source IP address and sequence
number from the RREQ message into their corresponding fields in the RREP message.
If it is the intended destination that generates a RREP in reply to a RREQ message, then it must
increment its own sequence number by one, if it is equal in value to the one in the RREQ
message, otherwise it will generate the RREP message. If it is an intermediate node that generates
a reply, the RREP message is processed differently. The intermediate node copies the sequence
number as it is known to it, of the original intended destination, into the destination sequence
number field in the RREP message, updates the forward route entry and also its route table entry
for the source, of the RREQ message.
A forward path is set up by each node that receives a RREP message. This path points towards
the destination or originator of the RREP message.
Forward
path
S E
F
B
C M L
J
A G
H D
K
I N
RREP
A reverse path is set up by each node that receives a RREQ message, pointing back towards the
source of the RREQ message.
If a node sends or forwards a RREP message over a link it feels may be unidirectional or be
unreliable, the node should appropriately set the ‘A’ flag which will require that the recipient of
the RREP message sends back an acknowledgment i.e. RREP-ACK. This acknowledgment
packet does not necessarily contain any important information about which RREP message it is
acknowledging. The information contained is just enough to provide assurance to the source of
the RREP message, about the current status of the link; this assurance is not permanent.
When links are broken on a route that is active, Route Error (RERR) messages are sent out to
inform nodes. These messages indicate destinations that are no longer reachable by way of the
broken link, and are sent via nodes listed in the precursor list. A RERR message may be
broadcasted or unicasted, depending on the number of nodes in the precursor list, and there is a
limit to the amount of RERR messages a node can generate per second. Below are the conditions
under which a RERR message is appropriate:
S E
F
B
C M L
J
A G
H D
K
I N
RERR
New route after rediscovery
Nodes use Hello messages to offer connectivity and they are broadcasted locally. Only nodes that
are part of an active route may use Hello messages. A node will check at time intervals usually in
milliseconds, to see if it has sent a broadcast and if not, it may then broadcast a RREP with the
TTL value set to 1, which implies a Hello message. A node may listen for packets from its
neighbours to ensure that there is connection. If it has received a hello message within what is
known as the delete period and does not receive any packets whether hello or otherwise for more
than the specified hello period, then the link is assumed to be unavailable.
The benefit of the above is that although DSR has a considerable amount of routing overhead, it
still performs well when nodes are stationary as well as mobile because it only keeps track of
active routes and does not react to network changes involving inactive routes.
DSR supports multiple routes to destinations because nodes use a caching mechanism to maintain
multiple routes. These routes are learnt either during a route discovery or from other control
packets, they overhear. Multiple route support implies that there is instant reaction to changes and
if one route fails, a node can quickly pick another from its cache. Caching also reduces the added
overhead of performing a new route discovery every time a route fails. The source is responsible
for determining the route a packet will take to its intended destination. This allows for loop free
routing since the source can generate and avoid duplicates in the route selected.
The source determines the path a packet will take to its destination by placing what is known as
the “source route” [33] in the header of the packet. The source route contains all intermediate
nodes between the source and destination, a packet will traverse. The source route is gotten from
the route cache of the sender, if one is available for the intended destination; otherwise a route
discovery is initiated by the sender to find one to the destination.
A route discovery request is a broadcast message and all nodes that are within the wireless
transmission range of the originator, will receive this request. As illustrated below each route
request is unique with an identification number determined by the originator. Each route request
message also identifies the source and destination of the route discovery.
As illustrated above, at the beginning of the route discovery, the route request message set up by
the originator node A, contains an empty list. Each route request is made up of a record list. This
list is initially empty, containing only the originator node. As the route request message is
forwarded towards the destination, the record list gets populated with the address of each
intermediate node through which the message is forwarded.
When a node receives a route request and it is the intended destination, it sends back a route reply
to the originator. The route reply message also includes the route record accrued during the route
request. On reception of the route reply, the originator caches the accrued route record in its
route cache to be used as future reference in sending packets to that destination.
On the other hand, if the node receiving the route request notices it has previously received the
same message with same ID and destination credentials, from the originator, or its own address is
listed in the route record in the route request, the node will discard the request. Otherwise it will
add its address to the route record of the route request and re-broadcast the message onwards.
In sending back a route reply to a route request message, a node will first consult its route cache
to determine if there is a route back to the originator. If true then, it is used to deliver the reply
packet. Otherwise the node will initiate a route discovery for the originator node. To avoid
continuous repetition of the route discovery, the node must carry the route reply on the back of its
route request, en route back to the originator.
During the route discovery process by a source node, it maintains a buffer called the send buffer
where it keeps a copy of all packets that currently do not have source routes to their intended
destinations. Each packet placed in the buffer is time stamped and flushed out when the timeout
period is reached. But while still in the buffer, it is the responsibility of the source node to
periodically initiate a route discovery for each packet’s destination but there is a limit to the rate
at which route discoveries for a particular address can be made since the destination may be
unreachable which may be due to node mobility or limited coverage range.
Every time a node originates, forwards or transmits a packet, it is in charge of ensuring that the
link over which the packet will traverse to the next hop is reliable and that data can be carried on
that link. For example as illustrated below:
A B C ? D E
A is responsible for the link between itself and B; B is responsible for the link between itself and
C and so on. Acknowledgements can be used to provide assurance that a given link is reliable.
The acknowledgement could either be part and parcel of the MAC protocol in use, or nodes
operate in some form of promiscuous state where they listen and overhear transmissions. For
example, if B transmits or forwards a packet to C, to confirm that C received the packet, B will
attempt to overhear C forwarding the packet on, to D. This operation is known as “passive
acknowledgement” [33].
Ideally a node should fill up its cache with useful routing information gathered from packets
forwarded or overheard but this also depends on the situation and characteristics of the link and
the MAC protocol in use. There are 3 cases where the above applies.
The first case is where the link is unidirectional only and the MAC protocol is only able to
transmit unicast packets over unidirectional links. In this case a node should cache the source
route carried in the packet, the accrued route record in the route request or the source route in a
route reply provided the node is in the “forward direction”. In addition it is irrelevant if the packet
was initially addressed to the node broadcaster or overheard, but the “reverse direction” in the
packet header should not be cached. Using the example below to illustrate:
A B C D E
The second case is when links may be unidirectional but not permanently so. In this case links
should be cached both in the forward and reverse directions.
The third case is where the MAC protocol can only transmit unicast packets over unidirectional
links. Links in both directions should be cached with an exception where the packet carries a
route reply as well which implies that travelled links only, should be cached and non travelled
links should not.
MPR nodes are selected by their one-hop neighbours on the basis of bi-directional links. This
automatically implies that routes through MPRs’ will not have the problems associated with
unidirectional links such as non acknowledgement of packets. The use of MPRs’ allows OLSR to
scale well in large, mobile and densely populated networks. Each node in an OLSR network
routes or forwards packets based on the local information known to it.
OLSR is also applicable in networks where traffic is erratic and irregular and where
communication between a set of nodes is not permanent, but changes constantly.
The OLSR protocol can also be extended to include support for important protocol characteristics
such as sleep mode operation and multicast routing. These additions can be implemented in a way
so as not to interfere with any backward compatibility issues of earlier versions of the protocol.
Nodes in an OLSR network appoint specific nodes known as MPRs’ to forward traffic on their
behalf. The concept of MPRs’ is that they reduce the need for data re-transmission in a network
since only designated nodes are responsible for this operation. The selected MPR nodes are
usually selected based on a symmetric 1-hop distance. The MPR nodes are responsible for the set
of nodes that selected them as MPRs’, and keep information pertaining to these nodes. They
obtain node specific information from periodic Hello messages.
Nodes only exchange this partial tree which helps to reduce overhead. Neighbouring nodes keep
each other informed by sending out their partial source tree. They do so either differentially and
periodically. Neighbours are discovered with the help of Hello messages using the differential
method. These Hello messages only report recent changes in neighbour status making them more
compact compared to other link state protocols such as OSPF.
TBRPF neighbour discovery protocol also known as TND, discovers neighbours using
“differential” [35] hello messages and these messages mention only recent changes in neighbour
link status. Due to this, the hello messages are more compact, therefore can be sent out regularly
allowing for rapid detection to changes in network topology. TND is only involved in neighbour
discovery that are 1-hop away. Neighbours that are 2-hops away are discovered using the routing
module hence TND is said to work independently of the routing module therefore can be utilized
by other routing protocols. In fact TBRPF can replace TND with any other neighbour discovery
protocol.
TND operates on a per interface basis, therefore for each interface on a node there exist a
neighbour table which implies then that a hello message from an interface will only have
information about neighbours overheard on that interface. Since messages can be received from
multiple interfaces of a neighbour node, hello messages also include the interface address.
TBRPF nodes build a tree that provides shortest paths to destinations that are reachable. The tree
also known as the source tree is updated using only part of the topology information in a node’s
routing table, by applying the Djikstra algorithm. Nodes only exchange this partial source tree
with neighbours, which reduces network overhead.
The partial source tree also known as the sub-tree is reported by nodes, to their neighbours
periodically while changes to the sub-tree are reported more regularly using differential updates.
On the other hand, periodic updates are meant for disseminating information to new neighbours
about reported sub-trees, ensuring they are aware even though they may more than likely not
receive all updates. Differential updates ensure that network topology updates are quickly spread
out to the nodes concerned. These topology updates when received do not get propagated but
could amount to modifications or alterations in the reported sub-tree, which is announced in the
subsequent periodic or differential update.
Topology updates are as much as possible made a part of hello messages to help in the reduction
of routing control message overheads.
The above can be achieved through the simulation techniques of model validation, verification
and testing. The definition of model validation, according to Sargent (Sargent 2003) “is usually
defined to mean substantiation that a computerized model within its domain of applicability
possesses a satisfactory range of accuracy consistent with the intended application of the model”
[37]. Balci’s (Balci 1995) explanation of model validation involves “building the right model”
[38].
Model verification involves ensuring that a model performs as it should with as much accuracy as
possible. Verification involves “building the model right” [38] (Balci 1995).
Model testing involves showing that there are possibilities of errors in a model. During testing, a
model is fed with test data in other to see if it functions as it should.
Models should be set up depending on what purpose they are trying to achieve, so that the
validation can be based on the purpose. A model may be set up to answer several questions;
hence its validity should be able to answer each of the questions. A model may be valid for the
experimental purpose it has been set up for, therefore will be considered invalid and not apply to
any other experimental condition. Model validity is also based on the accuracy of the results
obtained if they are within the acceptable range of the model’s purpose. However the fact that a
model is accurate in several experimental conditions, does not guarantee that it is applicable in all
conditions.
Determining the absolute validity of a model as regards its intended purpose is often a costly and
time consuming operation. The best that can be achieved is to carry out as much rigorous testing
and evaluation up to the point where some confidence in the model’s intended purpose is reached.
As illustrated by Sargent below (Sargent 2003) [37], validation costs are considerably higher in
cases where high confidence in the model is a requirement.
During the development of a model, determining what and what not to include in a bid to
represent the real system as much as possible is an important issue. One method would be to
include all details as humanly known to ensure important bits are not left out. As good as this
sounds it is quite time consuming as per model building, and also in terms of simulation time
runs. Deciding on what behavioural aspects to represent in a model is quite a difficult task since
major aspects of the system, which accounts for the system behaviour may not be known in
advance. Hence assumptions or theories should be made to answer relevant questions, and further
down the study, can be changed and more sophisticated models built to highlight the different
areas of the system. This approach helps in broadening knowledge as to the important aspects of a
system with respect to a simulation study objectives.
An important simulation practice as pointed out by Perrone et al (Perrone 2003) [8] is the use of
warm up models to avoid the initial transient problem. The initial transient problem usually rears
its head in the simulation of wireless networks, which affects the outcome of results if not taken
into account.
OPNET simulations support code in C and C++ and Proto-C, as well as the host operating
system. Results from simulations are stored on the host computer file system either as vector,
scalar or animation history, and can be displayed using the appropriate tool e.g. Analysis tool.
Results depend on the type of statistic chosen, prior to running simulations; this could be global,
local or both.
The Discrete Event Simulation provides the most detailed results of a simulation and will be used
as the analysis type for this project. Although it takes up much longer simulation run times, this is
due to the fact that it performs an exhaustive analysis as regards explicit traffic, traffic between
node pairs and link loads.
T he protocols to be simulated at this time are the AODV, DSR and OLSR. The structure of
a MANET node is as shown below:
The routing protocols operate at the IP layer with a root process called ip_dispatch, which in turn
has a sub process called manet_mgr as shown in the figure above. The manet_mgr is a common
interface to most MANET routing protocols, and produces the desired routing protocol child
process as needed, depending on which protocol is configured on a node. Below the IP layer, is
the ARP layer (Address Resolution Protocol) which maps known IP addresses to their
corresponding unknown MAC addresses by performing network wide ARP broadcasts. A
MANET node comes with a receiver and a transmitter represented in the above figure at the
physical layer.
The maximum communication distance between 2 nodes is 300m which is in accordance with the
IEEE 802.11 standard limits. Nodes operate at the ISM 2.4GHZ frequency band, with a transmit
power of 0.03W (15dBm) which is the typical output from Wireless LAN devices. The reception
threshold or receiver sensitivity of each node is set at -95dBm. Packets with reception power
lower than the threshold will be treated as noise packets since the receivers cannot detect their
signals. Packets are transmitted at 11Mbps, below is a table summarizing the physical and MAC
layer model parameters.
Parameter Value
Frequency 2.4GHz
Communication 300m
distance
Transmit Power 0.03W (15dBm)
Receiver Sensitivity -95dBm
MAC Protocol 802.11 DCF
without RTS/CTS
Data rate 11Mbps
• Throughput – this refers to the amount or ratio of data packets delivered to their
destinations to those generated by the sources.
• Average end to end delay – the amount of time in seconds it takes for a packet to get to
its destination, and usually includes delays caused by buffering, retransmissions, and
interface queues.
• Packet delivery ratio – the fraction of data packets successfully received over the
number of data packets generated. This metric measures the reliability of a protocol.
• Routing overhead – the number of routing packets transmitted over the number of data
packets delivered, and is a reflection of how efficient a routing protocol is.
Parameter Value
Route Request Retries 5
Route Request Rate Limit (pkts/sec) 10
Active Route Timeout 3secs
Hello Interval 1000ms(1sec)
Allowed Hello Loss 2
Network Diameter 35
Node Traversal Time 0.04secs
TTL start 1
TTL Increment 2
TTL Threshold 7
A node will try a maximum of 5 times to rediscover a route, before broadcasting another route
request. The rate at which a node generates route request packets is set at 10packets/second.
Every routing table entry has an active route lifetime, and if a route is not used within the active
route timeout period it is marked as invalid. If a node loses more than 2 hello packets, then it has
to announce a link breakage.
Parameter Value
Route Cache Expiry 300secs
Send Buffer Timeout 30secs
Request table Size 64 nodes
Initial Interval between Route 500ms
Discovery attempts(aka Initial Request
Period)
Maximum Buffer Size (packets) 50
Maximum Number of attempts to 2
confirm next hop reachability
Maintenance Acknowledgement Timer 0.5secs
Routes in the route cache expire after 300secs; packets in the send buffer expire after 30secs
counting from when it was placed in the buffer initially.
Parameter Value
Willingness Willingness
Default
(value =3)
Hello Interval 2secs
Topology Control Interval 5secs
Neighbour Hold Time 6secs
Topology Hold Time 15secs
Duplicate Message hold Time 30secs
Maintenance Acknowledgement Timer 0.5secs
The willingness value for all nodes was set to the default with a value of 3. The willingness value
can be set to any integer starting from 0 up to 7. The willingness feature indicates the extent to
which a node is ready to forward traffic on behalf of other nodes. Willingness Never specifies a
node not willing to forward traffic, while a node with the Willingness Always attribute set
specifies a node that will always be picked to forward traffic.
A total of 225 simulations were run, each with 3 random seed values to ensure accuracy and
validation in results obtained. This amounts to 36 simulations for each scenario, breaking down to
9 simulations for each of the varied parameters, with 3 runs i.e. 3 random seeds for each protocol
under study. 108 simulations with the same breakdown as above, was also carried out for the
varied mobility against varied longer pause times, and an additional 9 runs for the realistic
scenario, hence the grand total of 225.
The first 10 seconds of each simulation run was discarded to account for the initial transient
problem inherent in wireless networks. After 10 seconds of simulated time, a steady state is
obtained. This decision was reached after observing the results. As shown in the graph below, it
can be seen that the model attains a steady state after the first 10 seconds of the simulation.
95% confidence interval was set for each result obtained. A sample screenshot of how the
confidence interval was set can be found in Appendix B.
Simulation results were collected and collated using standard techniques and tools, and are
available on the P (Project) drive, and also uploaded as supporting material with this report.
0.006
0.005
0.004
delay(secs)
0.003
0.002
0.001
0
0
63
126
189
252
315
378
441
504
567
630
693
756
819
882
Simulation time(secs)
Delay at 5m/s Delay at 10m/s Delay at 15m/s Delay at 20m/s Delay at 50m/s Delay at 80m/s
The simulation parameters used in this scenario are shown in the table below:
Parameter Value
No of Nodes 25
Pause Time 1sec
Packet rate 5pkts/sec
Packet Size 512bits
No of Nodes generating traffic 25
Bandwidth 11Mbps
Speed(m/s) 5,10,15,20,50,80m/s
Throughput with varied mobility End to end delay with varied mobility
500000 0.0006
450000
0.0005
Throughput(bits/sec)
400000
350000
0.0004
delay(sec)
300000
250000 0.0003
200000
150000
0.0002
100000
0.0001
50000
0 0
5 10 15 20 50 80 5 10 15 20 50 80
mobility(m/s) moblity(m/s)
Packet delivery ratio with varied mobility Routing Overhead with varied mobility
1.002 0.3
packet delivery ratio(%)
1 0.25
routing overhead
0.998
0.2
0.996
0.994 0.15
0.992 0.1
0.99
0.05
0.988
0.986 0
5 10 15 20 50 80 5 10 15 20 50 80
mobility(m/s) moblity(m/s)
As shown in the graphs above each protocol maintains an average throughput range despite the
increasing mobility. OLSR is the clear winner, as it has the highest throughput average which is
due to the fact that it is a proactive table driven protocol and does not have the extra overhead
involved in route discovery, since routing information is readily available. DSR has the lowest
average throughput at 0.1 Mbps when compared to its reactive counterpart, AODV at 0.3Mbps.
Both AODV and OLSR use Hello messages to maintain links and determine neighbour
OLSR and AODV have the lowest average end to end delay of 3.6 milliseconds and 3
milliseconds respectively, when compared to DSR, which is as a result of OLSR and AODV
using Hello messages to determine link outages. AODV has the advantage over DSR with the use
of Hello messages to find short, optimal and faster routes.
AODV and OLSR maintain a 100% packet delivery rate average, despite the increasing mobility.
DSR comes behind with an average packet delivery rate of 99%. Again this is as a result of
AODV and OLSR using Hello messages to maintain neighbour connectivity during the routing
process.
DSR exhibits the highest routing overhead as expected, due to its source routing mechanism,
where every packet header carries the entire source route which includes all intermediate nodes,
en route to the final destination. OLSR has a slightly higher overhead due to its use of both Hello
messages and Topology control messages, despite the 1 second Hello interval advantage over
AODV. Clearly AODV and OLSR tend to perform better in environments where there is high
degree of mobility, than DSR.
Below are the graphs showing the effects of end to end delay on the maximum achievable
throughput for the protocols, for each mobility factor. As expected, in the case of AODV and
OLSR, the lower the delay, the higher the throughput and vice versa. With DSR on the other
hand, a decrease in throughput leads to a decrease in delay, which is expected due to its source
routing mechanism.
0.000318 0.0005645
0.000316 0.000564
0.0005635
0.000314
0.000563
delay(secs)
delay(secs)
0.000312 0.0005625
0.00031 Delay(secs) 0.000562 Delay(secs)
0.000308 0.0005615
0.000561
0.000306
0.0005605
0.000304 0.00056
0.000302 0.0005595
299569 299776 299705 299336 297415 300023 101824 102219 102219 102165 102176 101720
0.000368
0.000367
0.000366
delay(secs)
0.000365
0.000364 Delay(secs)
0.000363
0.000362
0.000361
0.00036
444053 443402 443402 443319 443315 443551
Figure 23: Effect of end to end delay on throughput - Mobility scenario simulation results
The simulation parameters used in this scenario are shown in the table below:
Parameter Value
No of Nodes 25
Pause Time 1sec
Packet rate 5pkts/sec
Packet Size(bits) 512,1024,2048,4096,8192bits
No of Nodes generating traffic 25
Bandwidth 11Mbps
Speed(m/s) 5m/s
0.0016
1600000
0.0014
1400000
throughput(bits/sec)
1200000 0.0012
delay(secs)
1000000 0.001
800000 0.0008
600000 0.0006
400000 0.0004
200000 0.0002
0 0
512 1024 2048 4096 8192 512 1024 2048 4096 8192
packet size(bits) packet size(bits)
Packet delivery ratio with varied packet Routing overhead with varied packet
size size
1.005 0.3
routing overhead
packet delivery
0.25
1
ratio(% )
0.2
0.995 0.15
0.99 0.1
0.05
0.985
0
512 1024 2048 4096 8192
512 1024 2048 4096 8192
packet size(bits) packet size(bits)
All protocols perform well as can be seen from the graph there is a steady increase in throughput
as packet size increases, due to low mobility, and hence less time spent in re-establishing links.
DSR still trails behind with the lowest average throughput, when compared to OLSR and AODV.
DSR still has the highest average delay when compared to OLSR and AODV, and this is due to
the fact that DSR queues packets that have no known routes yet, while it attempts to route
discovery, hence the increased delay. The increase in end to end delay is expected since an
AODV and OLSR yet again outperform DSR with 100% packet delivery rate even with the 10%
increase in the offered network load.
As seen from the graph above routing overhead reduces as packet size increases. AODV and
OLSR once again exhibit similar behaviour, both having smaller routing overhead compared to
DSR. It is interesting to see how the overhead for all protocols converge to an average of
approximately 0.19, at the highest offered load. This is due to the low mobility factor hence
optimal routes are discovered faster. This average corresponds to the average routing overhead of
the 3 protocols at 5m/s of the mobility scenario.
It can be seen that routing overhead is lowest at low mobility rates because more routes are
discovered, since there would be less link outages due to rapid movement.
As shown in the graphs below, the higher the throughput, the higher the end to end delays, for all
protocols. This is expected as packet size is increased gradually.
0.0008 0.0016
0.0007 0.0014
0.0006 0.0012
d e l a y (s e c s )
d e la y (s e c s )
0.0005 0.001
0.0004 Delay(secs) 0.0008 Delay(secs)
0.0003 0.0006
0.0002 0.0004
0.0001 0.0002
0 0
299569.3 362901.7 501006.5 743530.8 1249183 101824 164832 291314 538426 1052942
Average throughput based on varied Average throughput based on varied
offered load(bits/sec) offered load(bits/sec)
0.001
0.0008
delay(secs)
0.0006
Delay(secs)
0.0004
0.0002
0
444052.9 507898.9 632717.8 632717.8 1401419
Average throughput based on varied offered
load(bits/sec)
Figure 25: Effect of end to end delay on throughput – Offered load scenario simulation
results
Parameter Value
No of Nodes 25,30,40,50
Pause Time 1sec
Packet rate 5pkts/sec
Packet Size 512bits
No of Nodes generating traffic 25
Bandwidth 11Mbps
Speed(m/s) 5m/s
Average throughput w ith varied node density End to end delay with varied node density
3000000 0.0016
average throughpput(bps)
0.0014
2500000
0.0012
delay(secs)
2000000 0.001
1500000 0.0008
0.0006
1000000
0.0004
500000
0.0002
0 0
25 30 40 50 25 30 40 50
Packet delivery ratio with varied node Routing overhead with varied node
density density
0.4
1.002 0.35
1
routing overhead
0.3
packet delivery
0.998 0.25
ratio(%)
0.996
0.2
0.994
0.992 0.15
0.99 0.1
0.988 0.05
0.986 0
25 30 40 50 25 30 40 50
As expected, DSR has the lowest average throughput when compared to AODV and OLSR and
this is due to its lack of sensing neighbour connectivity despite the increase in the number of
nodes in the network. AODV and OLSR on the other hand both have dramatic increase in
throughput as node density increases. This is expected since both make use of the Hello message
mechanism, therefore as the number of nodes increases, more nodes are available to offer routes
and route packets to their destination, hence route discovery time is reduced dramatically, in the
case of AODV. The routing overhead for AODV had a dramatic increase and this is attributed to
the fact routing packets are sent 10 per second, hence as the number of nodes increases so does
the number of routing packets and hence the increase in routing overhead. The number of OLSR
MPR count against Node density MPR count against Node density: Case study
35 nodes
3
3.5
2.5
3
2
MPR coun t
2.5
M PR coun t
0 0
25 30 40 50 25 30 35 40 50
Node density Node density
Below are the graphs of end to end delay against throughput, and as expected all protocols exhibit
similar behaviour, with an increase in delay as throughput increases. This is due to the increasing
load on the network due to the number of nodes transmitting.
0.0016 0.001
0.0014 0.0009
0.0008
0.0012
0.0007
d elay(secs)
d elay(secs)
0.001 0.0006
0.0008 Delay(secs) 0.0005 Delay(secs)
0.0006 0.0004
0.0003
0.0004
0.0002
0.0002 0.0001
0 0
299569.33 413842.06 704908.13 1195035.8 101823.92 122786.35 163475.87 205110.07
0.0006
0.0005
0.0004
delay(secs)
0.0003 Delay(secs)
0.0002
0.0001
0
444052.9383 692551.174 1439378.433 2601523.78
Figure 28: Effect of end to end delay on throughput – Network node density scenario
simulation results
Parameter Value
No of Nodes 25
Pause Time 300sec
Packet rate 5pkts/sec
Packet Size 512bits
No. of Nodes generating traffic 6
Bandwidth 11Mbps
Speed(m/s) 1m/s
0.0025
500000
th r o u g h p u t(b its /s e c )
en d to en d delay(secs)
400000 0.002
300000 0.0015
200000 0.001
100000 0.0005
0 0
18
72
126
180
234
288
342
396
450
504
558
612
666
720
774
828
882
18
81
4
7
0
3
6
9
2
5
8
1
4
7
14
20
27
33
39
45
52
58
64
71
77
83
simulation time(secs) simulation time(secs)
4
1 AODV OLSR DSR
3.5
average routing
0.99 3
overhead
0.98
2.5
2
0.97 1.5
DSR
1 AODV
0.96 OLSR
0.5
0.95 0
18 27 36 18 27 36
simulation time(secs) simulation time(secs)
AODV Average route discovery time DSR Average route discovery time
0.09 16
0.08 14
route discovery tim e(secs)
route discovery tim e(secs)
0.07
12
0.06
10
0.05 Average route
Average route
8
0.04 discovery time discovery time
6
0.03
4
0.02
0.01
2
0 0
Node Offered Mobility Realistic Node Offered Mobility Realistic
density load density load
scenarios scenarios
6.1 Conclusion
T he aim of this study to compare 3 ad hoc routing protocols under a variety of conditions,
has been successful with reasonable conclusions drawn, from observations and results obtained.
• In particular AODV and OLSR perform better and are ideal in environments where there
is high degree of mobility, compared to DSR.
• DSR performs better in networks with light to medium traffic or load, in terms of
achievable throughput and routing overhead, but still nowhere near the performances of
AODV and OLSR.
• As expected DSR does not perform well in a dense network which is in line with its RFC
specification which states “that the DSR implementation is suitable for networks with
nothing less than 200 nodes” [33]. The degradation in performance becomes apparent as
node density begins to increase.
• The use of the “expanding ring search”[32] mechanism by AODV accounts for its low
routing overhead, since it helps in reducing the flooding of route requests.
• The impressive performance of both AODV and OLSR is attributed to their use of Hello
messages to maintain link status and neighbour connectivity. The same cannot be said of
DSR whose overall poor performance is largely due to its use of source routes carried in
every packet header. It’s caching mechanism although useful in providing multiple routes
to destinations, also leads to the existence and use of stale routes.
A more believable realistic scenario or several scenarios could have been implemented to
evaluate protocol performance, but time constraint and OPNET restrictions in terms of available
models, made it a bit difficult to achieve to an acceptable, personal level.
It has to be said here that the licensing issues experienced with OPNET during the course of this
study, slowed down the rate of work, but all in all time frames set, were still on target.
This is the first major project undertaken, that involved conducting extensive background
research on an important topic area in terms of advances in current technologies. Running large
scale simulations and analyzing the results obtained, has been quite a novelty experience.
Although not a software engineering based project, it is quite interesting to observe how some of
the steps in the process, specifically 2 -5, were part of this project, during the implementation
decisions and simulation phases.
The learning curve was quite steep, when it came to improving on skills such as planning, time
and project management. Also the technical skills of making assumptions, understanding and
reading between the lines when there was lack of explicit information, was challenging and
rewarding and is regarded as a merit in the learning and development process.
Extending the study by introducing more protocols is another; this could not be achieved as at the
time of this project due to limitations in model availability in OPNET.
Comparing energy efficiency ratios of protocols as well as implementing higher layer protocols
over Ad hoc routing protocols will be considered.
It would be interesting to observe how the results of this study would have turned out if a radio
propagation model had been incorporated in the design. This could not be included in this study,
due to the non availability of a TMM (Terrain Modeling Module) license.
Studying protocol performance using a real life Ad hoc network is also an area of high interest for
future work.
[6] Corson S.M. and Macker J. (1999), Mobile Ad hoc Networking (MANET): Routing Protocol
Performance Issues and Evaluation Considerations. IETF RFC 2501 / RFC2501.
http://www.rfc-archive.org/getrfc.php?rfc=2501. January 1999, Pages 1-11 (Work in progress).
[7] Mehran Abolhasan et al (2004), A Review of Routing Protocols for Mobile Ad hoc Networks,
Vol. 2, Issue 1, January 2004, Pages 1-22.
[8] Perrone L.F. et al (2003), Modelling and Simulation Best Practices for Wireless Ad hoc
Networks. In Proc. 2003 Winter Simulation Conference, December 2003, Pages 685-693.
[10] Das S.R. et al (2000), Simulation-based Performance Evaluation of Routing Protocols for
Mobile Ad hoc Networks, Vol. 5, Issue 3, September 2000, Pages 179-189.
[12] Gauthier V. et al, On a Comparison of four Ad-hoc Routing Protocols when taking into
account the Radio Interferences, Pages P42/1-P42/10.
[13] Boukerche A. (2004), Performance Evaluation of Routing Protocols for Ad hoc Wireless
Networks, Vol. 9, Issue 4, August 2004, Pages 333-342.
[15] Marinoni S. and H.H. Kari Ad Hoc Routing Protocol Performance in a Realistic
Environment. Pages 1-10.
[17] Choi J. and Ko Y. (2003), A Performance Evaluation for Ad Hoc Routing Protocols in
Realistic Military Scenarios. Pages 1-5.
[18] Oliveira L.B. et al (2005) On the Performance of Ad Hoc Routing Protocols Under a peer-to-
peer Application, Vol. 65, Issue 11, November 2005, Pages 1337-1347.
[19] Campos G. and Elias G. (2005), Performance Issues of Ad Hoc Routing Protocols in
a Network Scenario used for Videophone Applications, Proc. 38th Hawaii International
Conference on System Sciences, Pages 1-10.
[20] Pandey A.K. and Fujinoki H. (2005), Study of MANET Routing Protocols by GloMoSim
Simulator, Vol. 15, Issue 6, November 2005, Pages 393-410.
[21] Ishibashi B. and Boutaba R. (2005), Topology and Mobility Considerations in Mobile Ad
Hoc Networks, Vol. 3, Issue 6, November 2005, Pages 762-776.
[22] Lenders V. et al (2006), Analyzing the Impact of Mobility in Ad hoc Networks. In Proc. 2nd
International Workshop on Multi-hop Ad hoc Networks: From theory to reality, May 2006, Pages
39-46.
[24] Stepanov I. et al (2005), Mobility Modelling of Outdoor Scenarios for MANETs. In Proc.
38th annual symposium on simulation, April 2005, Pages 312-322.
[26] Haq F. and Kunz T. Simulation vs. Emulation: Evaluating Mobile Ad Hoc Network
Routing Protocols. Pages 1-6.
[27] Chin K. et al (2002), Implementation Experience with MANET Routing Protocols, Vol. 32,
Issue 5, November 2002, Pages 49-59.
[28] Cavin D. et al (2002), On the Accuracy of MANET Simulators. In Proc. 2nd ACM
International Workshop on Principles of Mobile Computing, October 2002, Pages 38-43.
[30] Kumar S. et al (2006), Medium Access Control Protocol for Ad Hoc Wireless networks: A
Survey, Vol. 4, Issue 3, May 2006, Pages 326-358.
[31] Cisco Internetworking Technologies Handbook (2002), Routing Basics, February 2002,
Chapter 5, Pages 1-10. http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/routing.htm
[33] Johnson et al (2004), Dynamic Source Routing Protocol for Mobile Ad hoc Networks
http://www.ietf.org/internet-drafts/draft-ietf-manet-dsr-10.txt July 2004, Pages 1-111 (Work in
progress).
[34] Clausen T. and Jaquet P. (2003) Optimized Link State Routing Protocol RFC 3626
http://www.ietf.org/rfc/rfc3626 October 2003, Pages 1-75 (Work in progress).
[35] Ogier R. et al (2004) Topology Dissemination Based on Reverse-Path Forwarding RFC 3684
http://www.ietf.org/rfc/rfc3684 February 2004, Pages 1-46 (Work in progress).
[37] Sargent R.G. (1998), Verification and Validation of Simulation Models. In Proc. 30th
Conference on Winter Simulation, December 1998, Pages 121-130.
[38] Balci O. (1995), Principles and Techniques of Simulation Validation, Verification and
Testing. In Proc. 27th Conference on Winter Simulation, December 1995, Pages 147-154.
[39] Yihu Li Performance Evaluation for an Ad Hoc Routing Protocol (Presentation from 2003)
http://www.mast.queensu.ca/~math484/projects/projects.shtml
http://www.mast.queensu.ca/~math484/projects/projects/Yihu03.ppt (Presentation)
[40] MANET Status Pages, Mobile Ad-hoc Networks (Active WG) http://tools.ietf.org/wg/manet
Page last updated June 30 2006, (Work in Progress).
1. Mobility Scenario
Figure (B.1) above shows the setup used for the Mobility scenario which is a 25 node network.
Figure (B.2) above shows the Mobility Config Utility profile used in configuring the Random
Waypoint parameters for nodes in the network. Parameters such as the speed, pause time, the
maximum and minimum distance within the defined area where nodes can be mobile, are
specified here. Right clicking the Mobility Profile Definition utility icon and choosing the edit
attributes option from the menu brings up the above dialog box.
Figure (B.3) above illustrates how the Ad hoc routing protocol and packet generation parameters
are assigned on nodes. The OLSR protocol has been assigned in the example above. Nodes start
generating packets 10 seconds into the simulation and stop at the end of the simulation. Right
clicking on any node and choosing edit attributes will bring up the above dialog box.
Figure (B.4) above illustrates how the Physical and MAC layer parameters are assigned on nodes.
Parameters such as the transmit power, bandwidth or data rate, receiver sensitivity are specified
under the WLAN attribute.
The figure above illustrates the WLAN channel attributes. These parameters are auto assigned by
the application. Double clicking a node will bring up these channel attributes, where the
minimum frequency can be specified. As shown above the ISM license free band of 2.4 GHz has
been auto assigned.
Figure (B.6) above shows the scenario setup for the offered load scenario which is also a 25 node
network.
Figure (B.7) above shows the RWP parameters used in the offered load scenario.
The figure above shows the packet generation parameters used for the offered load scenario
where the packet size was set at 8192 bits.
Figure (B.12) above shows the traffic generation parameters used in the node density scenario.
Figure (B.13) above illustrates the scenario with 25 nodes, with 6 random nodes starting
transmissions at different time intervals.
Figure (B.14) above shows the random waypoint parameters specified for the realistic scenario
environment, with a speed of 1m/s and pause time of 300 seconds.
Confidence intervals can be set by right clicking on any graph display panel and choosing edit
graph properties, as shown below in figure (B.16).
Figure (B.17) above illustrates the internal structure of a MANET node. Double clicking on a
MANET node from the Process model editor, will open up the above structure display, in the
Node model editor.
Figure (B.18) illustrates the random seed values generated for the simulation implementation.
Multiple random seed values are generated from the Configure/run DES dialog box. Multiple
seed values allow for multiple simulation runs.
1. Glossary of Abbreviations
GHz – Gigahertz
IP – Internet Protocol
WG – Working Group