A routing protocol based on node density for ad hoc networks Alejandro Quintero * , Samuel Pierre, Benjamin Macabeo Department of Computer Engineering, Mobile Computing and Networking Research Laboratory (LARIM), Ecole Polytechnique de Montreal, C.P. 6079, Succ. Centre-Ville, Quebec, Montreal, Canada H3C 3A7 Available online 17 April 2004 Abstract Ad hoc networks are a type of mobile network that functions without any fixed infrastructure. One of the weak- nesses of ad hoc networks is that a route used between a source and a destination is likely to break during commu- nication. To solve this problem, one approach consists of selecting routes whose nodes have the most stable behavior. Another strategy aims at improving the route repair procedure. This paper proposes a method for improving the success rate of local route repairs in mobile ad hoc networks. This method is based on the density of the nodes in the neighborhood of a route and on the availability of nodes in this neighborhood. Theoretical computation and simulation results show that the data packet loss rate decreased significantly compared to other methods which are well-docu- mented in the literature. In addition, the time required to complete a local route repair following a failure was sig- nificantly reduced. Ó 2004 Elsevier B.V. All rights reserved. Keywords: Mobile ad hoc networks; Route repair; AODV 1. Introduction In recent years, we have witnessed considerable accomplishments in the design, development, and deployment of wireless communication networks. Personal and mobile communications are made possible by the convergence of several different technologies, specifically computer networking protocols, wireless/mobile communication sys- tems, distributed computing and Internet [6,14,25]. The mixed wired and wireless network topologies that are becoming so common, including fixed and ad-hoc connection types, create the need to ratio- nally exploit dynamically variable routing as a function of network conditions [10]. At the same time, a phenomenal growth in data traffic and a wide range of new requirements of emerging applications call for new mechanisms for the control and management of communication networks [20]. The emergence of real-time appli- cations and the widespread use of wireless and mobile devices have generated the need to provide quality of service (QoS) support in wireless and mobile networking environments [24]. A mobile ad hoc network (MANETs) is a mobile wireless network composed of several mobile nodes, likely to communicate among themselves * Corresponding author. Tel.: +1-514-340-3240x4685; fax: +1-514-340-3240. E-mail addresses: [email protected](A. Quin- tero), [email protected] (S. Pierre), benjamin.maca- [email protected] (B. Macabeo). 1570-8705/$ - see front matter Ó 2004 Elsevier B.V. All rights reserved. doi:10.1016/j.adhoc.2004.03.003 Ad Hoc Networks 2 (2004) 335–349 www.elsevier.com/locate/adhoc
15
Embed
A routing protocol based on node density for ad hoc networks
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Ad Hoc Networks 2 (2004) 335–349
www.elsevier.com/locate/adhoc
A routing protocol based on node density for ad hoc networks
Alejandro Quintero *, Samuel Pierre, Benjamin Macab�eo
Department of Computer Engineering, Mobile Computing and Networking Research Laboratory (LARIM),�Ecole Polytechnique de Montr�eal, C.P. 6079, Succ. Centre-Ville, Quebec, Montreal, Canada H3C 3A7
Available online 17 April 2004
Abstract
Ad hoc networks are a type of mobile network that functions without any fixed infrastructure. One of the weak-
nesses of ad hoc networks is that a route used between a source and a destination is likely to break during commu-
nication. To solve this problem, one approach consists of selecting routes whose nodes have the most stable behavior.
Another strategy aims at improving the route repair procedure. This paper proposes a method for improving the
success rate of local route repairs in mobile ad hoc networks. This method is based on the density of the nodes in the
neighborhood of a route and on the availability of nodes in this neighborhood. Theoretical computation and simulation
results show that the data packet loss rate decreased significantly compared to other methods which are well-docu-
mented in the literature. In addition, the time required to complete a local route repair following a failure was sig-
nificantly reduced.
� 2004 Elsevier B.V. All rights reserved.
Keywords: Mobile ad hoc networks; Route repair; AODV
1. Introduction
In recent years, we have witnessed considerable
accomplishments in the design, development, and
deployment of wireless communication networks.
Personal and mobile communications are made
possible by the convergence of several different
technologies, specifically computer networking
protocols, wireless/mobile communication sys-
tems, distributed computing and Internet [6,14,25].
when it is needed. The reactive class of protocols, as
opposed to proactive protocols, reduces the workrequired to maintain routes as ad hoc network
topologies may change dynamically and arbitrarily.
Destination Sequenced Distance Vector
(DSDV) is a best effort protocol designed specially
for MANETs [21]. It belongs to the class of pro-
active protocols and uses a version of the Bellman–
Ford distributed algorithm adapted to ad hoc
networks. Each mobile station maintains a routingtable which contains routing information for each
node in the network:
• The number of hops necessary to reach a node.
• The sequence number corresponding to a desti-
nation node. This number is used to distinguish
old routes from more recent ones. Hence, this
helps prevent the formation of routing loops.
When a mobile station A initiates communica-
tion with a mobile station B, A can easily reach B
through the information included in its routing
table. In order to update a node’s routing table in
a context of dynamic topological changes, each
node in the network periodically sends an update
message with routing information to its neighbors.Updates depend on two criteria: periodicity of
updates and events occurrence, such as the arrival
of a new node in the neighborhood. Its goal is to
make it possible for a mobile host to locate any
other unit in the network at any time. These up-
dates can be carried out either in a complete or an
incremental way. The main weakness of this pro-
tocol is the enormous bandwidth consumed byrouting traffic control. Furthermore, DSDV is
slow; a mobile unit must wait to receive routing
information to update the corresponding entry in
its routing table.
Ad hoc On Demand Vector (AODV) represents
an improvement of DSDV [22,23]. In fact, in a
nutshell, it takes the advantages of DSDV while
limiting bandwidth consumption. It functions on
demand, i.e., it builds a route to a destination only
if a source node needs to reach it. Each mobile
host operates as a router, and routes are obtained
as needed (i.e., on demand) with little or no reli-
ance on periodic advertisements. AODV provides
loop-free routes even while repairing broken links.
Since the protocol does not require global
periodic routing advertisements, the demand forthe overall available bandwidth is substantially
less than in the protocols that require such
338 A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349
advertisements. Nevertheless, it can still maintain
most of the advantages of basic distance-vector
routing mechanisms. Although AODV does not
depend specifically on particular aspects of the
physical medium across which packets are dis-
seminated, its development was largely motivatedby limited range broadcast media such as those
utilized by infrared or radio frequency wireless
communications adapters. Routing tables are or-
ganized as to optimize the response time to local
movements and provide quick response times for
requests regarding the establishment of new routes
[23].
Johnson and Maltz [17] proposed a DynamicSource Routing (DSR) protocol for ad hoc wire-
less networks. To send a packet to another host,
the sender constructs a source route in the packet’s
header, with the address of each host in the net-
work through which the packet should be for-
warded in order to reach the destination host.
Then, the sender transmits the packet over its
wireless network interface to the first hop identi-fied in the source route. When a host receives a
packet, if this host does not constitute the final
destination of the packet, it simply transmits the
packet to the next hop identified in the source
route of the packet’s header. Once the packet
reaches its final destination, it is delivered to the
network layer software on that host [17].
Several papers discuss QoS routing in ad hocnetworks [1,9,16,18,27,35]. Quality of service
(QoS) consists of a collection of characteristics or
constraints between a source and a destination
that a connection must guarantee during the
communication to meet the requirements of an
application [2]. QoS routing is a procedure that
identifies the routes, between a source node and its
destination node, which obey the constraints re-quired by the source application and selects be-
tween these routes the one to be used. QoS routing
protocols must work in conjunction with resource
management mechanisms to establish paths
through the network that meet end-to-end QoS
requirements, such as delay, jitter, available
bandwidth, packet loss rate, hop count and path
reliability. Furthermore, a routing algorithmwhich takes QoS into account must also deal with
the maintenance of the routes. Indeed, route fail-
ure probabilities are high in MANETs mainly due
to the mobility of nodes. Wang and Crowcroft [30]
showed that if QoS contains at least two metrics
(e.g., delay, delay jitter, cost), then QoS routing is
an NP-complete problem.
With the increasing number of applicationsrequiring QoS, the success of mobile ad hoc net-
works relies heavily on their ability to provide
routing protocols that take into account QoS.
However, providing QoS in such a dynamic envi-
ronment is not an easy task. Indeed, ad hoc net-
works impose multiple constraints that need to be
addressed: the wireless medium is unreliable, the
topology is entirely dynamic and the computingcapacity of the mobile units is very limited.
Moreover, the available bandwidth is too precious
to authorize heavy use of control messages. Fi-
nally, QoS routing is a distributed problem.
The idea is to provide QoS in a closely knit two-
step process: first, the routing protocol detects the
routes that can fulfill the desired QoS, and, second,
it reserves these routes. Furthermore, it is neces-sary to integrate route maintenance in a QoS
routing protocol so that it can deal with route
breakdowns during communication. The current
literature on the topic suggests reusing the tech-
nologies engineered for traditional networks in
order to preserve certain compatibility, but also to
simplify as much as possible those technologies
and to adapt them to the requirements of ad hocnetworks [7,15,31,34].
Sinha et al. [29] proposed a core-extraction
distributed ad-hoc routing algorithm (CEDAR),
which can react effectively to the dynamics of
ad hoc networks. It includes three main compo-
nents: core extraction, link state propagation and
route computation.
Chen and Nahrstedt [5] presented a ticket-basedprobing algorithm for QoS routing in ad hoc
networks. The idea is to use tickets to limit the
number of candidate paths. When a source node
wants to find QoS paths to a destination, it sends a
message that contains a certain number of tickets.
The number of tickets contained in the message is
a function of the difficulty of finding a QoS path in
the network. When a message is sent on more thanone path, the tickets are divided between the
messages on each path so as the total number of
A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349 339
tickets in the network is equal to the sum of tickets
on each path.
Wen-Hwa et al. [31] proposed a TDMA-based
bandwidth reservation protocol for QoS routing in
MANETs. They assume a simpler TDMA model
that uses a single common channel shared by allhosts and consider the bandwidth reservation
problem in such environment. A route discovery
protocol that is able to find a route with a given
bandwidth is proposed.
Chen [4] presented a routing algorithm initiated
by the source, a reactive protocol. This protocol
uses local state maintained in each node. Infor-
mation about the global state of the network orthe topology is not necessary. When a source
wants to reach a destination node with given
constraints of service, it initiates a route discovery
procedure by diffusing a request for connection to
all of its neighbors. This connection request is
similar to the one used by AODV.
Hongxia and Hughes [16] proposed an adaptive
QoS routing scheme based on the prediction of thelocal performance in ad hoc networks. It is
implemented using a link performance prediction
strategy. Lower layer parameters are translated
into link state information and used to estimate
the integrated QoS performance in each local area.
Predicting node location is another feasible way
to enhance QoS in mobile networks [28]. However,
this is not suitable for most indoor environments,and only a few existing protocols provide routing-
based location [33].
3. Routing protocol for ad hoc networks
This section presents some of the mechanisms
that can be used to improve QoS communicationin MANETs. The proposed routing protocol is
based on a routing algorithm initiated by the
source that takes into account QoS in terms of
bandwidth consumption.
3.1. Route repair
If a failure occurs during communication be-tween two nodes, two scenarios can be used to
repair the route:
• A global route repair initiated from the source of
communication. This solution is used in most
routing protocols, even if it requires significant
time and consumes much bandwidth.
• A local route repair initiated from a node in theneighborhood of the link where the failure oc-
curred. This local route repair has the advanta-
ges of being fast and consuming little
bandwidth.
Global route repair: If a link failure were de-
tected during the transmission of a packet from
source A to destination B, the node that detectedthe failure would return an error message to the
source. Then, the source initiates a new route
discovery phase to find a new path between A and
B. This phase requires much time to complete and
overloads the network with many routing mes-
sages. This results in bandwidth waste that is
detrimental to the overall performance of the
network.Local route repair: When a node detects a link
failure, it does not systematically send an error
message to the source. First, it attempts to repair
the route itself. It only sends an error message to
the source if this first attempt fails. Consider the
case presented in Fig. 1. Step (a) represents the
route before failure detection. In step (b), Node D
detects a link failure between D and G. Accordingto the local route repair procedure of step (c), D
diffuses a route request (RREQ) packet which is
propagated across the network. When it receives
this packet, J returns a route reply (RREP) packet
to D. This packet is forwarded by I, G and F.
When D finally receives it, the route is repaired
and communication can carry on.
3.2. A new protocol for route discovery
Our objective aims to insure the selection of the
most easily reparable route among those extracted
from the route discovery phase. To achieve this
goal, we recommend taking into account the nat-
ure of the neighborhood of the nodes composing
the network, and in particular the density of nodesand their availability. The reparation of a route in
the case of failure can be carried out through local
route repair.
BA
C
D
E
F
G
H
I
J
BA
C
D
E
F
G
H
I
J
B
A
C
D
E
F
G
H
I
J
BA
C
D
E
F
G
H
I
J
RREQ
RREQRREQ
RREQRREP
RREP
RREPRREP
(a)
(c)
(b)
(d)
Fig. 1. Local route repair: (a) initial route, (b) ruptured initial route, (c) local repair procedure and (d) new repaired route.
340 A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349
We use the availability parameter to establish
the ability of Node A to replace Node B. The
availability of a node depends on the nature of the
node (laptop, PDA, etc.), the number of packets
that are forwarded by the node on its communi-
cation channels as well as their capacity. To sum-
marize, we can say that the availabilitycorresponds to the available bandwidth of a node
for each of its communication channels. Since each
node needs to be aware of the availability of all of
the other nodes in its neighborhood, our algorithm
provides periodic availability information ex-
changes within the nodes of a neighborhood.
We define the density of a node k as the number
of direct neighbors of k (that is, the number ofnodes in the k radio range) whose available
bandwidth is higher than that required by the
connection. The density parameter is completely
specified by a node and the bandwidth associated
with that node. Thus, upon receiving a route re-
quest, each node evaluates its density by deducting
the number of neighbors whose availability is
higher than that required by the connection.Strangulation occurs when the density of a node in
the route is equal to two (that is, a node for which
the redundancy is null as the only neighbors of the
node are its predecessor and successor nodes on
the route). The higher the instances of strangula-
tion, the more difficult the restoration through
local route repairs.
The discovery phase: We use the route discovery
phase as described in the AODV protocol for
which we add provisions for the availability and
density parameters. These two parameters need to
be taken into account in order for our protocol toprovide QoS. Thus, in our protocol, the source
initiates the routing process upon receiving a con-
nection request. Then, it sends a route request for
this connection to all of its neighbors. The nodes
that receive the message for the first time and that
fulfill the QoS requirements propagates the request
message towards the destination only after having:
• incremented by one unit the number n of nodes
of the route in the message of route request;
• evaluated the density of the neighborhood
(nodes whose availability is sufficient to enable
them to replace a node in case of failure);
• updated the fields average density and strangu-
lation number of the route in construction in
the RREQ packet that is propagated towardsthe destination. The update of the average den-
sity is expressed as follows:
Dm ¼ Dmðn� 1Þ þ Dn
; ð1Þ
BA
C
D
E
F
G
H
I
J
RREP
RREQ
BA
C
D
E
F
G
H
I
J
RREP
RREQ
Fig. 2. Local route repair.
B
A
C
D
E
F
G
H
I
J
Routage
RERR
Fig. 3. Global route repair.
A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349 341
where Dm is the average density along the route,
D is the density, and n the number of nodes in
the route.
The request message is gradually propagatedtowards the destination following the aforemen-
tioned scenario. Finally, when it arrives at its
destination, the destination node initiates a
countdown and records all of the incoming mes-
sage requests. Each of these messages corresponds
to a detected route between the point of failure and
the destination. At the end of the countdown, the
destination selects the easiest route to repair andthen sends a confirmation packet to reserve the
needed resources.
To select a route, the parameters contained in
each message request that arrived at the destina-
tion are necessary. It is important to note that a
route containing long sequences of high density
nodes will be easier to repair with the local route
repair procedure than a route that does not holdthat property. The repair fitness F associated with
a given route is expressed as
F ¼ Dm
nþ 1þ eð5=2� 1=2nÞ ; ð2Þ
where e is the number of strangulations on the
route. We select the route whose repair fitness is
the highest among all routes.
We now present a theoretical justification to
improve on the protocol described above. The
mean duration of the route repair procedure for
a given route and a given link failure was evalu-ated.
Duration of a local route repair: Let s be the
propagation delay of a notification message from a
node to another. Let Trl;i be the duration of a local
route repair at node i, where i is the distance be-
tween the source of the communication and the
node that is responsible for the route repair (Fig.
2). Trl;i can be expressed as
Trl;i ¼ 2sðn� iÞ: ð3Þ
Duration of a global route repair: Let Trg;i be theduration of a global route repair started at node i(Fig. 3). Trg;i can then be expressed as follows:
Trg;i ¼ s½iþ 2n�: ð4Þ
Duration of a route repair for any node i: Let Tibe the duration of a route repair for node i and let
pi be the success probability for a local route repairat node i. We have
pi ¼ 1� en: ð5Þ
Thus, the probability of a successful local route
repair decreases with the strangulation number,
although it is independent of the position i wherethe local route repair was initiated.
Since we first proceed by systematically initiat-
ing a local route repair, and if this route repair is
unsuccessful, we initiate a global route repair, we
can easily deduce that
Ti ¼ pi � Trl;i þ ð1� piÞ � ½Trl;i þ Trg;i�: ð6ÞMean duration of a route repair: we assume that
the failure probability of a node is independent of
its position on the route. If we let T be the mean
duration of a local route repair, we now have
T ¼ sn
Xn�1
i¼0
2ðnh
� iÞ þ enðiþ 2nÞ
i; ð7Þ
thus
T ¼ s½ðnþ 1Þ þ eð5=2� 1=2nÞ�: ð8Þ
342 A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349
We notice that T increases as e, the number of
strangulations and n, the length of the route, in-
crease. This observation is confirmed by the defi-
nition of the repair fitness stated in Eq. (3). Indeed,
the repair fitness associated with a route is in-versely proportional to these two parameters.
If a node detects that the link between itself and
its successor is broken for a given route, it may be
useless, even a waste of time, to proceed to a local
route repair. For example, imagine that the density
of the aforementioned node is two or less, meaning
that the only neighbors of the node are its prede-
cessor and successor nodes on the route. Theprobability of success of a local route repair initi-
ated by the node that detected the link failure is
almost null. Indeed, given its density, we know the
node does not have any neighbors in its neigh-
borhood, i.e., in its transmission range, that can be
used to relay the communication to the destina-
tion. In this case, we entrust the source with the
route repair procedure which is simply a globalroute repair.
4. Implementation and results
The implementation of AODV used under
OPNET Modeler was developed in March 2001 by
the National Institute of Standards and Technol-ogy (NIST) according to version 08 of the Internet
draft published by the Mobile Ad Hoc Network-
ing Working Group (MANET-WG) of the Inter-
net Engineering Task force (IETF). It is of
primary importance to specify that the version of
AODV used already supported local route repairs.
We implemented the following two modifications:
• selection of the most robust route;
• systematic global route repair if the density is
insufficient to ensure a successful local route re-
pair.
4.1. Implementation of the protocol
The protocol includes four types of packets thatcan be exchanged between the topology nodes:
RERR, REEQ, RREP and DATA.
RERR: This type of packet is used to indicate
errors. RERR packets are sent to the source of a
communication to signal that the route to the
destination is broken and that the local repair
mechanism, built in the protocol, has failed to
restore the route. When a source node receives thiskind of packet, it immediately invalidates the sta-
tus of the route corresponding to the destination,
interrupts packet transmission to that destination,
and places them in a waiting queue.
RREQ: These packets are generated when a
source node needs to transmit data to a certain
destination, although active routes to that desti-
nation are unavailable. The source broadcastsRREQ packets to all of its neighbors which in
turn, broadcast them to all their neighbors until
either a route to the destination node is found or
the packet TTL field expires.
RREP: When a RREQ packet finally reaches
the destination node, a RREP packet is generated
and sent back to the node that initiated the route
discovery process by reversing the route that hasjust been found. Upon receiving such a packet, the
source node can start transmitting data.
DATA: These packets simply carry the data
from the source node to the destination node.
4.2. The finite state machine model of the protocol
A finite state machine is defined by states andtransitions between those states. Two types of states
are possible: blocking and non-blocking states.
When the machine enters a non-blocking state, a
transition occurs automatically and the machine
immediately exits that state. On the other hand, a
transition from a blocking state can only be trig-
gered by a specific event defined by the designers of
the machine. As Fig. 4 clearly shows, the finite statemachine modeling the AODV protocol revolves
around nine states amongst which, only one is a
blocking state.
The initial state of the machine, or Init, initial-
izes the state variables of each of the mobile units
in the network. Furthermore, the Init state also
specifies the first few interruptions that will be
used to broadcast HELLO messages to a node’sneighbors. The only blocking state of the machine
(Idle), corresponds to a state where the system is
Fig. 4. Finite state machine of the AODV protocol.
A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349 343
idle. Each transition to a non-blocking state nec-
essarily passes through the Idle state. The Den-
sity_Timeout state, shown on the top of Fig. 4,
periodically calculates the density state variable.
The density of a node is evaluated by couting thenodes in its neighborhood whose availability is
greater than 100. The availability of a node can be
found in the neighbors table which is another state
variable. Once the density is evaluated, the neigh-
bors table is re-initialized to take into account only
the nodes who broadcasted their availability in the
specified time interval. Before exiting the Den-
sity_Timeout state, an interrupt that will triggerthe next density evaluation is programmed.
Our protocol implementation includes a mech-
anism that periodically exchanges the nodes
availability between the nodes of a neighborhood
and calculates the resulting density for each node.
The state variables associated with each mobile
unit in the network are
• Availability: since AODV does not provide a
bandwidth reservation mechanism, the update
of the availability variable does not depend on
the congestion present in the network. This
variable is parametrized individually for each
node.
• Neighbor_availability: the Neighbor_availability
variable gathers in a table the availability
broadcasted by each node of the neighborhood.Only the latest (since the last update of the den-
sity variable) availability information is stored
in the table.
• Density: the variable is updated periodically
(every 20 s). The time interval chosen to update
the density is a trade off between the quality of
information collected and the overhead im-
posed on the network by exchanging messagesbetween nodes of a neighborhood.
Route selection: The state machine has a non-
blocking state that is responsible for selecting a
route at the end of the route discovery process. A
transition to this state automatically occurs once
the waiting period that follows the reception of the
first RREQ packet at the expired destination. Thiswaiting period is proportional (with a waiting
coefficient x) to the time taken by the first RREQ
packet to propagate from source to destination.
While this waiting period increases the time taken
344 A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349
by the route discovery process to find a feasible
route, it may also improve the success rate of a
local route repair. Given that Tr is the time taken
to initialize the route discovery process (in a con-
figuration where there is no route selection), it is
possible to modify the duration of the routingprocess using Eq. (9):
Trx ¼ Tr � ð1þ xÞ: ð9ÞPreventing local route repair from a low density
node: Our modified protocol attempts to execute a
local route repair only if the density is strictlygreater than two (density > 2). If the node has a
lower density, a RERR packet is sent back to
the source to indicate that a global route repair
should be undertaken. This condition is added
in AODV’s route repair mechanism: aodv_link_
repair_attempt. If the density of the node which
initiated the local route repair is too low, the route
repair procedure is bound to fail. In this situation,it is preferable to turn over directly to the source
after the detection of a link failure and to proceed
to a global route repair. Hence, we accelerate the
restoration of the route by avoiding the delays
associated with a failed local route repair.
4.3. Example
Here is a detailed example to emphasize the
reasons why the initial protocol was subject to
Fig. 5. The topology us
such modifications. Consider the case of the
topology presented in Fig. 5.
Update of the density: For every HELLO_
INTERVAL time interval, each of the 19 nodes of
the network diffuses a special kind of RREP
message where the destination node is the source.The diffusion of RREP messages is not simulta-
neous for all of the 19 nodes. Each node diffuses its
RREP messages at a random time, thus avoiding a
situation where the network is saturated due to the
simultaneous diffusion of RREP by all of the
nodes.
These RREP messages are diffused by a node to
announce its presence to all its possible neighbors.When the message is created, the node assigns its
availability field the value of its availability state
variable at that moment. When a node receives
such a RREP message, it updates its neigh-
bor_availability[N] table. A new interruption is
programmed for every DENSITY_INTERVAL
time intervals. A node which enters this state
counts the nodes for which the availability storedin its availability table is higher than 100, and as-
signs the density the value it found. Before leaving
this state, we program the next interruption and
reinitialize each entry of the neighbor_availabil-
ity[N] table.
To clearly explain the procedure presented
above, let us illustrates how it works by using the
ed in simulations.
A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349 345
scenario shown in Fig. 5. Mobile node 6 receives
RREP messages sent by its five neighbors: 14, 16,
13, 11 and 8. It extracts the availability informa-
tion of these nodes and assigns it to the corre-
sponding neighbor_availability[N] table entry.
During the interruption used to calculate thedensity of each node, the node enters in the
DENSITY_TIMEOUT state and determines that
five nodes in the neighbor_availability[N] table
have availability fields higher than 100. The den-
sity of Node 6 is thus equal to 5.
Initial route search: the source node (mobile_
node_0_X) generates data messages in its appli-
cation layer for an application running on thedestination node (mobile_node_5_X). At the net-
work layer of the source, the first data packet is
queued as no route is available for the destination
in its routing table. Then, the source initiates a
route discovery procedure for the destination by
diffusing a RREQ message with the source and
destination fields respectively assigned 0 and 5.
The average density and strangulation number areassigned the local node’s density. The nodes that
receive the RREQ message for the first time up-
date their local database for the destination 0 (by
recording the identity of the next node in the
route) and further propagate the RREQ after
having updated the average density and incre-
mented the strangulation number according to
their local density.Thus, Node 6 (mobile_node_6_X) receives a
RREQ message for destination 5 that has been
forwarded by Nodes 17 and 14. In this RREQ
message, the average density field has value 3 while
the strangulation number has value 1. Node 6 adds
in its database an entry for the destination 0 by
indicating that the next node for this destination is
14. Then, it updates the average density field byaffecting it the value 3.5 and the strangulation
numbers field by assigning it the value 1. Finally,
the RREQ message can finally be sent.
The first message that arrives at the destination
is the one that was forwarded by Nodes 1, 2, 3 and
4. A pointer on this message is stored in the first
element of the RREQ_received[0] table. We also
evaluate the repair fitness of the correspondingroute using the formula established in the previous
section. We obtain 0.095. This grade is stored in
the first element of the repair_fitness[0] table.
Then, the Nb_RREQ_received[0] variable is
incremented, which makes it possible to point to
the following element in the table if a new RREQ
message arrives. A countdown, whose value de-
pends on the delay taken by the packet to reachthe destination, is launched. During this interval,
the destination stores each new RREQ packet that
reaches it in the next elements of the table fol-
lowing the same process. Hence, a second RREQ
packet that was forwarded by Nodes 17, 14, 6, 8,
12 and 7 is processed in the same manner by the
destination. The length of the detected route is
equal to 7. The repair fitness associated to thisroute is: 0.28 (average density: 3.625 and 2 stran-
gulations).
At the end of the countdown period, an inter-
ruption is generated. We determine, among the
two repair fitness value stored in the repair_fit-
ness[0] table, the one with the highest value. We
identify the number of the corresponding route: 2.
The pointer stored in RREQ_received allows thegeneration of the RREP message which will be
sent back to the source (mobile_node_0_X). Each
intermediate node that receives the RREP message
updates its local database towards Destination 5
by recording the next hop in the route towards
Node 5. When the RREP message arrives at the
source, the queued data packets can be sent to the
destination along this new route.Local route repair: Let us now have a look at
the route repair procedure in the event that Node
12 fails. Node 8, which precedes Node 12 on the
route, detects its failure (at the MAC layer) as it
does not receive the acknowledgement from 12
that necessarily follows the reception of a data
message. A NACK packet is then returned to the
network layer. Node 8 queues the correspondingdata packet and attempts a local route repair. In-
deed, its density is higher than two. It starts by
passing the current status of the route towards 5 to
UNDER_REPAIR in the routing table so that
new data packets that arrive at later time are
queued. Node 8 makes provision for the case
where the local route repair does not succeed by
initializing an interruption timer. Then, it sendsRREQ packets towards 5 following the same
principle as the one used for the initial routing, but
346 A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349
with the notable difference that this time the
Density_Mode field is switched off. The messages
are thus propagated through the network without
taking into account the average density and the
strangulation number. The first RREQ that arrives
at destination triggers the generation of a RREPaddressed to Node 8. This packet is returned back
to Node 8. Once the packet arrives at Node 8, the
status of the corresponding route is switched back
to ACTIVE and the queued packets are sent to the
destination along the new route.
4.4. Experiments and results
In our approach, we want to benefit from the
heterogeneity of the distribution of the mobile
units in the network by taking into account the
density parameter. We consider that it would be
useless to test our improvements on a statistically
homogeneous random configuration of mobile
units. Nevertheless, we carried out several simu-
lations in such configurations to conclude that, forthese configurations, our contribution does not
increase (nor decrease) the performance of the
protocol compared to its traditional implementa-
tion. The duration of simulations was set to four
minutes each. To test our assumptions, we plan the
‘‘departure’’ of a given node at a precise moment;
many nodes may depart during a simulation, each
at a predetermined moment. We initiated a nodedeparture from the network by moving it out of
the range of every other mobile unit in the net-
work. Then, we analyze the network evolution,
Fig. 6. ETE delay––node departure
more specifically the ensuing route repair proce-
dure.
We observed the evolution of the network fol-
lowing the departure of different mobile nodes.
For each simulation, we consider the following
three cases:
Case 1: AODV without taking into account the
density parameter and without local route
repair.
Case 2: AODV with local route repair (original
AODV protocol).
Case 3: Our improved AODV protocol.
The results presented correspond to average
results on a series of 100 simulations. We do not
consider the cases where the source and/or desti-
nation nodes fail, since this case cannot be medi-
ated through a route repair procedure. We assume
that each node in the network has the same failure
probability.
Fig. 6a shows the end-to-end (ETE) delays forCases 1 and 2, and Fig. 6b shows the ETE delay
for Case 3. Table 1 summarizes the results for the
node departure. Table 1 also indicates that a local
route repair was undertaken successfully. We can
further note that this local route repair lasted
0.00782 s, compared to the 0.018 s needed for the
total route repair obtained in Case 1. Hence, we
deducted that our protocol clearly improves thetime required to complete a route repair, com-
pared to Case 1. Table 2 summarizes the global
results.
: (a) cases 1 and 2, (b) case 3.
Table 1
Numerical results for node departures
Case 1 Case 2 Case 3
Number of lost packets 0 0 0
Duration of the initial routing (s) 0.00855 0.00855 0.022013
Duration of local route repair (s) 0 0 0.00782
Total duration for route repair (s) 0 0 0.00782
Average ETE delay before route repair (s) 0.0095 0.0095 0.014
Average ETE delay after route repair (s) 0.0095 0.0095 0.016
Average route length (nodes) 5 5 8.261543
Table 2
Global results
Case 1
(AODV without local
repair)
Case 2
(AODV with local
route repair)
Case 3
(AODV with route
selection)
Number of lost packets 0.6 1.8 0
Duration of the initial routing (s) 0.00878 0.008632 0.0205
Total duration of the route repair (s) 0.039 0.22561 0.0058
Average ETE delay before route repair (s) 0.0095 0.0095 0.014
Average ETE delay after route repair (s) 0.119 0.0113 0.0146
Average route length (nodes) 5.63 5.47 7.52
A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349 347
We notice in this table that Case 3 (i.e., the caseutilizing our improved version of AODV) cancels
completely the packets loss rate normally associ-
ated with the departure of a node in the network.
This result puts forward the increased reliability of
our routing protocol as compared to the cases
where local repair is not implemented nor realized
with the selection of the most robust route (Cases 1
and 2). The departure of a given node of the net-work generates an average loss rate of 0.6 data
packet for case 1 and 1.8 data packets for Case 2.
However, we notice that the duration of the
initial routing procedure is systematically and sig-
nificantly longer for Case 3. On average, this initial
routing time is increased by 137% compared to
Cases 1 and 2. That consists in the main disad-
vantage of our improvements. Longer time is nec-essary to establish an initial route as a reparable
route is selected. Furthermore, the average dura-
tion of a local route repair caused by the departure
of a node in the network (Case 3) is far better than
in Cases 1 and 2. Indeed, our local route repair
procedure is on average 6.7 times shorter than in
Case 1, and 38 times shorter than in Case 2.
Another weakness of our improved protocol isthe average length of the initial route. We notice
that the average length of a route in Case 3 is 7.52nodes while the average length of a route is
approximately 5.5 nodes long for the two other
cases.
Finally, the ETE average delay of data packets
is longer in our improved version of AODV than
in the original one. For Case 3, the ETE delay
before a failure is 0.014 s compared with 0.0095 s
for the two other cases. On the other hand, we seethat this delay does not increase significantly after
the occurrence of a failure and remains relatively
stable at about 0.0146 s, compared to the delays
observed for Cases 1 and 2, which are 0.0119 and
0.0113 s respectively. Thus, we can conclude that
the ETE delay obtained in Case 3 is more stable
than that the ones observed in the other two cases.
5. Conclusion
The routing method presented in this paper aims
to improve QoS management in MANETs by
taking into account the density of a node, defined as
the number of mobile units available in the radio
range of the node. Our approach was based on athorough analysis of the available mechanisms and
348 A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349
tools that take into account quality of service in ad
hoc networks. Then, we introduced the concept of
density and described how the network could ex-
ploit this information to improve the QoS offered.
The method can be subdivided into two parts: a
selection mechanism that chooses the most robustroute available, and a mechanism to forecast the
failure of a local route repair before it occurs.
The route selection mechanism described aims
at selecting among several routes, the one whose
maintenance is the easiest to realize. The simula-
tion results confirmed our hypothesis: the duration
of a route repair after a failure is improved. In
addition, our mechanism drastically reduced thedata packet loss rate.
We also highlighted a situation where an at-
tempt to repair a route locally could be useless and
even harmful for the network: if the density
around the node which initiated the local route
repair is too low, the route repair procedure is
bound to fail. In this situation, it is preferable to
turn over directly to the source after having de-tected the failure of the link and to proceed to a
global route repair. To validate our work, we
implemented our improvements of the AODV
protocol in Opnet Modeler. Then, we tested our
protocol for a given configuration. The results
obtained are encouraging: the data packet loss rate
is strongly reduced compared to the initial version.
In addition, the time required to complete a localroute repair following a failure decreased signifi-
cantly.
References
[1] G. Aggelou, R. Tafazolli, QoS support in 4th generation
mobile multimedia ad hoc networks, in: Second Interna-
tional Conference on 3G Mobile Communication Tech-
nologies, 2001, pp. 412–416.
[2] S. Chakrabarti, A. Mishra, QoS issues in ad hoc wireless
networks, in: IEEE International Conference on Commu-
nications, February 2001, pp. 142–148.
[3] S. Chakrabarti, A. Mishra, QoS issues in ad hoc wireless
NIA: An IP-based quality of service framework for mobile
ad hoc network, Journal of Parallel and Distributed
Computing, Special issue on Wireless and Mobile Com-
puting and Communications (2000) 374–406.
[19] S. Nelakuditi, S. Varadarajan, Z. Zhi-Li, On localized
control in QoS routing, IEEE Transactions on Automatic
Control 47 (6) (2002) 1026–1032.
A. Quintero et al. / Ad Hoc Networks 2 (2004) 335–349 349
[20] A. Orda, A. Sprintson, Precomputation schemes for QoS
routing, IEEE/ACM Transactions on Networking 11 (4)
(2003) 578–591.
[21] C. Perkins, P. Bhagwat, Highly dynamic destination-
sequenced distance-vector routing for mobile computer,
in: ACM Conference on Communications Architectures,
1994, pp. 234–244.
[22] C. Perkins, E. Royer, S. Das, Ad hoc on demand distance
Vector routing, IETF, Internet Draft, March 2000.
[23] C. Perkins, E. Royer, Ad hoc on demand distance vector
algorithm, in: IEEE Workshop on Mobile Computing
Systems and Applications WMCSA ’99, 1999, pp. 90–
100.
[24] D. Perkins, H. Hughes, A survey of quality-of-service
support for mobile ad hoc networks, Wireless Communi-
cations and Mobile Computing 2 (2002) 503–513.
[25] S. Pierre, Mobile computing and ubiquitous networking:
concepts, technologies and challenges, Telematics and
Informatics 18 (2001) 109–131.
[26] K. Phanse, L. DaSilva, Addressing the requirements of
QoS management for wireless ad hoc networks, Computer
Communications 26 (12) (2003) 1263–1273.
[27] G. Raju, G. Hernandez, Q. Zou, Quality of service routing
in ad hoc networks, in: IEEE Conference on Wireless
Communications and Networking, vol. 1, 2000, pp. 263–
265.
[28] S. Shah, K. Nahrstedt, Predictive location-based QoS
routing in mobile ad hoc networks, in: IEEE International
Conference on Communications, vol. 2, 2002, pp. 1022–
1027.
[29] P. Sinha, R. Sivakumar, V. Bharghavan, CEDAR: a core-
extraction distributed ad hoc routing algorithm, in: IEEE
Infocom’99, vol. 1, New York, 1999, pp. 202–209.
[30] Z. Wang, J. Crowcroft, QoS routing for supporting
resource reservation, IEEE Journal on Selected Areas in
Communications 14 (7) (1996) 1228–1234.
[31] L. Wen-Hwa, T. Yu-Chee, S. Kuei-Ping, A TDMA-based
bandwidth reservation protocol for QoS routing in a
wireless mobile ad hoc network, in: IEEE International
Conference on Communications, vol. 5, 2002, pp. 3186–
3190.
[32] S. Woo, S. Singh, Scalable routing protocol for ad hoc
networks, Wireless Networks 7 (2001) 513–529.
[33] L. Xiao, J. Wang, K. Nahrstedt, The enhanced ticket-
based routing algorithm, in: IEEE International Confer-
ence on Communications, vol. 4, 2002, pp. 2222–2226.
[34] H. Xiao, W.K.G. Seah, A. Lo, K. Chua, A flexible quality
of service model for mobile ad hoc networks, in:
IEEE Vehicular Technology Conference, 2000, pp. 445–
449.
[35] H. Xiaoyan, K. Xu, M. Gerla, Scalable routing protocols
for mobile ad hoc networks, IEEE Network 16 (4) (2002)
11–21.
Alejandro Quintero received the engi-neer degree in computer engineeringfrom Los Andes, Colombia, in 1983.In June 1989, and in 1993, he receivedthe diploma of advanced studies, andthe Ph.D. degree in computer engi-neering, respectively, from the JosephFourier University, Grenoble, France.He is currently an associate professorat the Department of ComputerEngineering of �Ecole Polytechnique deMontreal, Canada. His main researchinterests include mobile computingand 3rd generation wireless infra-
structures. He is the co-author of one book, as well as over 40other technical publications including journal and proceedingspapers. He is a member of ACM and IEEE CommunicationsSociety.
Samuel Pierre received the B.Eng.degree in civil engineering in 1981 from�Ecole Polytechnique de Montr�eal,Qu�ebec, the B.Sc. (1984) and M.A.Sc.(1985) degrees in mathematics andcomputer science from the UQAM(Montr�eal), the M.Sc. degree in eco-nomics in 1987 from the Universit�e deMontr�eal, and a Ph.D. in ElectricalEngineering in 1991 from �Ecole Poly-technique de Montr�eal. He is currentlya Professor of Computer Engineeringat �Ecole Polytechnique de Montr�ealwhere he is Director of the Mobile
Computing and Networking Research Laboratory (LARIM)and NSERC/Ericsson Industrial Research Chair in Next-gen-eration Mobile Networking Systems.
Dr. Pierre is the author of four books, co-author of twobooks and six book chapters, as well as over 240 other technicalpublications including journal and proceedings papers. He re-ceived the Best Paper Award of the Ninth International Work-shop in Expert Systems & their Applications (France, 1989),a Distinguished Paper Award from OPNETWORK’2003(Washington, USA). One of these co-authored books,T�el�ecommunications et Transmission de donn�ees (Eyrolles,1992), received special mention from Telecoms Magazine(France, 1994). He is a Fellow of Engineering Institute ofCanada. His research interests include wireline and wirelessnetworks, mobile computing, performance evaluation, artificialintelligence, and electronic learning. He is an Associate Editorof IEEE Communications Letters and IEEE Canadian Review.He also serves on the editorial board of Telematics and Infor-matics published by Elsevier Science.
Benjamin Macab�eo received M.A.Sc.degrees in Electrical Engineering in2003 from �Ecole Polytechnique deMontr�eal. His research interests in-clude wireless networks and ad-hocnetworks.