0% found this document useful (0 votes)
14 views18 pages

An Efficient and Scalable Routing For Manets: Ayaz Ahmad Waqar Mehmood Rui Wang

another p2p paper

Uploaded by

nadir
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views18 pages

An Efficient and Scalable Routing For Manets: Ayaz Ahmad Waqar Mehmood Rui Wang

another p2p paper

Uploaded by

nadir
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

Wireless Pers Commun

DOI 10.1007/s11277-013-1403-6

An Efficient and Scalable Routing for MANETs

Nadir Shah · Ayaz Ahmad · Waqar Mehmood ·


Depei Qian · Rui Wang

© Springer Science+Business Media New York 2013

Abstract Recently, Distributed-Hash-Table (DHT)-based routing protocols have been pro-


posed for large scale mobile ad hoc networks (MANETs). The motive behind using DHT
is to avoid/reduce network wide flooding in MANETs in route discovery phase leading to
achieve more scalable network. The challenge of deploying DHT at network layer for routing
purpose in MANETs is to achieve more matching between logical and physical networks.
The paper describes that existing DHT-based routing protocols for MANETs lack this fea-
ture. The paper presents a new DHT based scheme [called an efficient and scalable routing
for MANETs (ESR)] which reduces the ill-matching between logical and physical networks.
This is achieved be distributing the logical identifier (LID) space of DHT structure among the
nodes such that the physical neighbors have consecutive LID space portions, i.e. all physical
neighbors of a node are also the logical neighbors of the node. Therefore the logical ID space
portion of a node may be non-contiguous. Based on this logical structure, a node builds
up binary-search-tree (BST) using both logical ID space portion of itself and its neighbors.
This BST at the node is traversed to find the next hop for a query/message. Through simula-
tion, the paper shows the proposed approach (ESR) performs better than the existing one in
term of routing overhead, average end-to-end delay, path-stretch values and false-negative
ratio.

Keywords DHT · Scalable routing · MANETs

N. Shah (B) · W. Mehmood


Department of Computer Science, COMSATS Institute of Information Technology,
Wah Cantt, Pakistan
e-mail: [email protected]

A. Ahmad
Department of Electrical Engineering, COMSATS Institute of Information Technology,
Wah Cantt, Pakistan

D. Qian · R. Wang
Sino-German Joint Software Institute, Beihang University, Beijing, China

123
N. Shah et al.

1 Introduction

A mobile ad hoc network (MANET) is formed by connecting mobile devices using the
low radio technology (like WiFi and Bluetooth). The mobile devices in a MANET self-
organize themselves in a distributed fashion, so MANET is infrastructure-less network. Each
node in a MANET functions as both host (for sending/receiving data) and router (main-
tains the routing information for the network to forward data for other nodes). MANET
has various applications in scenarios where spontaneous network deployment is needed. In
case of a disaster, e.g. flooding, earthquake, typhoon etc., the communication infrastructure
(like cellular towers and PSTN) might be destroyed. Users equipped with mobile devices
can form a MANET and communicate with each other for sharing data (text, audio, video
etc.) [1].
A scalable routing protocol is the basic component for any application of MANETs.
Several MANET routing protocols have been proposed by the research community and some
of them are even implemented in the real world to test their viability [2,3]. In the last few
years, researchers have been exploiting the advantages of Distributed Hash Table (DHT)-
based overlay routing by implementing it at the network layer in order to develop scalable
routing protocols for the MANET [4–10].
In DHT-based routing for MANETs, every node computes its logical ID (LID) and nodes
are linked with each other based on nodes’ LIDs, i.e. a logical network is build up over the
physical network. The nodes are linked (based on their LIDs) in the logical network in a
structure, this structure is called logical identifier structure (LIS). The LIS can be a ring [4],
or a cord [6] etc. The LIDs are hashed values drawn from a pre-defined logical identifier space
(LS). The computation of LIDs is different in each DHT-based routing for MANETs. The
packets are forwarded based on nodes’ LIDs rather than nodes’ physical addresses (IP/MAC).
Each node P stores its LID at a designated node, say Q, in the network and the node Q is
called anchor node (AN) for node P. The AN for node P is computed as follows. Node P
applies hash function over its physical address and this hashed value is also drawn from same
LS from which the nodes’ LIDs are drawn. A node Q becomes AN for node P, if node Q’s
LID is closer to this hashed value. Thus a node Q can act as an AN for more than one nodes
in the network. Therefore, every node holds a disjoint portion of the LS, we call this portion
as logical space portion (LSP). And a node Q acts as anchor node for node P if P’s LID lies in
the LSP of node Q. To deliver a packet from node P to a destination node R, node P applies
hash function over the R’s physical address in order to compute the LID of AN for R. Then
node P forwards the query to node R’s AN in order to get R’s LID. After getting R’s LID,
node P can forward the data packet to node R using R’s LID.
The existing DHT-based routings for MANETs [4–10] suffer from a major issue, namely
the mismatch problem. The mismatch problem occurs when a node’s all physical neigh-
bors are not its logical neighbor, i.e. there is ill-matching between the logical and physical
networks. This would results in long routes, high path-stretch ratio, and increased traffic
overhead [4–10]. It’s because DHT-based routing is performed using LIDs of the nodes in
the network. Some existing protocols [4,6] attempt to address the mismatch problem by
maintaining at a node its links with the node’s physical neighbors (those with which the node
is not logically linked) in addition to its links with logical neighbors. Unfortunately, this
approach also results in long routes and high path-stretch values. The mismatch problem is
explained in Sect. 2.
This paper proposes a DHT-based efficient and scalable routing protocol (ESR) for
MANETs. The proposed approach extends our previous approach for peer-to-peer (P2P)
overlay construction over MANETs [11] by implementing at the routing layer for routing

123
An Efficient and Scalable Routing for MANETs

purpose in MANETs. By comparing with an existing DHT-based routing for MANETs, our
proposed protocol performs better in simulation.
The rest of the paper is organized as follows. Section 2 presents the mismatch problem in
DHT-based routing for MANETs. Section 3 explains how the existing DHT-based routings
for scalable MANETs lack to address the mismatch problem. We describe in Sect. 4 the
proposed algorithm. An example scenario of the proposed algorithm is presented in Sect. 5.
The simulation and results are given in Sect. 6. Finally, Sect. 7 concludes the paper with
future work.

2 Mismatch of Logical and Physical Topologies

The mismatch problem can be analyzed in two dimensions, which are presented in Case 1
and Case 2. In DHT-based LIS, each node has an LID that is assigned from the LS and each
node is responsible for maintaining a portion of the LS. Also, the node maintains a connection
to each of its neighbor nodes that have LIDs closer to its LID. These neighbors are called
logical neighbors (LNs) of the node.
Case 1: A node’s logical neighbors are not its physical neighbors, resulting in ill matching
between logical and physical networks. Figure 1 illustrates the mismatch problem between
physical and logical networks, which causes redundant traffic and larger lookup latency.
Figure 1a, b shows the LIS topology and Fig. 1c shows the physical network (PT) for the
LIS. It shows that the neighbors in the LIS are not adjacent in the PT, resulting in mismatch
between LIS and PT. Suppose node 1 initiates an address lookup query for node 5 and it
maintains only its one-hop logical neighbors (LNs), which are node 2 and node 10 as shown
in Fig. 1a. The protocol sends the query towards node 2 using the shortest path according to
the LNs information of node 1. This produces three transmissions in PT after passing through

Fig. 1 An example of long path stretch caused by uncorrelated logical address space and physical network

123
N. Shah et al.

links 1–9, 9–3 and 3–2. Upon receiving the query, node 2 forwards the query toward node 3,
which is one of its LNs. This produces one transmission on the link 2–3. Node 3 then sends
the query to one of its logical neighbors, node 4. This produces two more transmissions (3–9,
9–4). Node 4 has node 5 as its LN, which is the final destination. Node 4 sends the query
towards node 5 and this produces 4 more transmissions (4–9, 9–3, 3–2, 2–5). The overall
transmission for a query from node 1 to node 5 in LIS produces four transmissions as node 5
is four hops away from node 1, shown as the dotted arrows in Fig. 1a. However, to send the
query from node 1 to node 5 produces overall 10 transmissions. In this example, we can see
that the query passes through links 2–3, 3–9 and 4–9 more than once, resulting in redundant
traffic as well as in larger end-to-end delay.
So, the primary requirement in designing DHT-based large scale routing protocol is that
neighbor nodes in the LIS should also be adjacent in the PT to reduce end-to-end latency and
redundant traffic on both the control and data planes.
Case 2: Suppose a node maintains its physical adjacent neighbors in PT along with the
logical adjacent neighbors in LIS to avoid the mismatch problem in case 1. This approach
does not completely avoid ill-matching between PT and LIS in Fig. 1. Suppose node 2 initiates
an address lookup query towards node 9. Node 2 has logical neighbors 1 and 3 represented
by the arrow, and 3 and 8 are its physical neighbors as shown in Fig. 1b, c, respectively. The
protocol sends the query towards node 8 as it is numerically closer to node 9 by using the
greedy approach. In PT, the query moves away from the destination node by generating one
transmission. Node 8 forwards the query towards node 9 and this produces three transmissions
in the PT, 8–2, 2–3, 3–9, shown as the dotted arrows in Fig. 1b. So, the total lookup overhead
is four, which is higher because there is a shorter route from node 2 to node 9 via 2–3, 3–9 in
PT that requires only two transmissions. So, the second requirement to avoid this problem is
that a node in LIS should be logically closer to all its physically adjacent nodes. The lookup
query from any node is always forwarded to the node closer to the destination node in both
PT and LIS, thus, reducing both lookup latency and traffic on the control and data planes.

3 Related Work

In this section, we critically analyze the existing approaches for DHT-based routing for
MANETs in the light of the problems discussed above in order to further elaborate our point
of discussion.
In VRR [4], the adjacent neighbor nodes in the virtual ring (LIS) can be physically far away
because the LIDs are assigned without taking the physical topology into account, which leads
to Case 1. Moreover, a node maintains its physical neighbors along with its LNs, it might cause
the problem discussed in Case 2. Forwarding in VRR is based on logical distance to the LID
of the destination that might incur an unbounded stretch penalty in the worst case. Also, the
protocol might introduce extensive overhead in case link/node failures and node dynamics,
as two logically close nodes may be far away in the underlying physical network. The routing
table overhead might be significant in VRR [4] because a node maintains all routes to its
logical and physical neighbors. DART [5] might suffer from longer routes problem mentioned
in Case 1 as the mechanism does not ensure that neighbors in LIS should also be adjacent in
PT and could result in significant path stretch ratio. The path-stretch ratio is defined in Sect. 6.
The LIS in DART has low fault tolerance capability as only one path is maintained between
a node and each of its siblings that might degrades the performance in terms of resilience
to failures. This scheme could be vulnerable if either the next hop towards the destination
fails. The tree-based LIS in DART suffers from a single point failure and congestion due to

123
An Efficient and Scalable Routing for MANETs

the presence of critical nodes. DART focus primarily on the design of scale-free systems.
Thus, mobility might results in lower throughput, extensive traffic overhead, or lost of system
stability.
In VCP [6], nodes are arranged in a logical cord structure that does not ensure adjacency of
neighbors between LIS and PT. Also, the protocol maintains the logical neighbor information
as well as the information of the local physical neighbors in order to find shorter routes. This
may lead to the problem discussed in Case1 and Case 2, resulting in longer routes, significant
delay, control overhead, and high path-stretch ratio. Node failure could split a cord into two
disconnected partitions. This may cause packet loss, increased end-to-end delay. The protocol
is unsuitable for the networks with high churn rates and high mobility. Moreover, in VCP,
the creation of virtual nodes restricts the distribution of LS evenly among all the nodes that
might leads to extensive loss of information and traffic overhead in case of node failure.
Tribe [7] suffers from the mismatch problem discussed in Case 1. The address assignment
mechanism ensure neither connectivity among the neighbor’s address space portions, nor
the adjacency of neighbors in LIS and PT. Tribe might suffer from longer routes and critical
node problem due to the inherent parent-child relationship. It becomes more vulnerable if
the parent-child address space portions are not contiguous. Moreover, Tribe uses flooding
to find a node with a contiguous portion of LS to that of the leaving node, which could
produce extensive routing overhead in both the control and data planes. Furthermore, Tribe
uses cloning of addresses that is unsuitable for networks with high mobility because it might
cause extensive routing overhead. Tribe is limited by hierarchical structure of tree, there is
only one path between any two nodes that might degrades the performance in terms of path
length, traffic concentration, and resilience to failures.
In PROS [8], LIS uses a parent-child relationship among the nodes that inherently suffers
from longer routes and critical nodes problem. The scheme has partially addressed the adja-
cency problem between LIS and PT as discussed in Case 1. The idea of dual label assignment
in PROS in case a root node moves or fails similar to Tribe [7]. The solution given in [8] is
not optimal as it may cause uneven utilization of LS and increase the number of nodes with
dual labels. If there is no suitable node to hold the root/parent node’s label, it may cause the
reassignment of labels to the whole sub-tree. One of the requirements for any DHT-based
routing is that LS range should be fixed and static. PROSE doe not assume fixed and static
LS.
VIRO [9] might be vulnerable to longer routes as the mechanism does not ensure neighbors
in LIS would also be adjacent in PT, resulting in a significant path stretch ratio. This scheme
would be unsuitable for the applications and scenarios where all nodes are mobile and the
churn rate is significant. The tree-based LIS suffers from a single point failure and congestion
due to the fact that a node maintains only a single next hop to all sibling nodes.
Similarly, EMP [10], follows a tree-based structure and is vulnerable to network partition
and extensive loss of information in case of critical nodes failure, which would affect the
network throughput and delay. Also, the tree-based structure in EMP does not ensure neighbor
adjacency relation between LIS and PT, which produces redundant traffic as discussed in
Case 1.

4 Proposed Algorithm

In our proposed approach (ESR), each node maintains the neighbor nodes up to 2-hops away.
A node P builds up a weighted, undirected, connected graph consisting of P itself, and P’s
neighbor nodes of directly connected and 2-hops away. The distance between two logically

123
N. Shah et al.

Fig. 2 Traversing a BST for


key k m
k<m
k >= m

P1
m+n

k < m+n k >= m+n

P P2

linked nodes is represented as weight of the link (in term of number of hops) in the physical
network. Using this graph, then P executes the minimum spanning tree (MST) algorithm with
itself as the source and removes the far-away redundant links. This ensures that the logical
network well-matches to the physical network. Our system uses M-bit LID thus the value of
LS ranges from 0 to 2M − 1. Each node P stores a disjoint portion of the LS, called logical
ID space portion (LSP), which may be noncontiguous.
For each contiguous portion of LSP (m, P1, P, m + n, P2) at a node P, the node P LID is
m + n/2 therefore a node may have more than one LIDs. To find its AN, a node P applies
hash function over its IP/MAC address producing an M-bit key k drawn from the same LS.
Then the node P stores its LIDs on the node P3 if k lies in P3’s LSP, i.e. P3 would be the
AN for P. The LS is distributed among the peers in such a way that the LSP at node P is
consecutive to the LSP of each P’s directly connected neighbor nodes. The lower end (LE)
of a contiguous portion of the LSP at P points to the neighbor node P1 which stores the LSP
with values lower than the value of LE. The upper end (UE) of a contiguous portion of the
LSP at node P points to its neighbor node P2 which stores the LSP with values greater than
that of UE. A contiguous portion of LSP at peer P is a five-tuple (m, P1, P, m + n, P2). The
lookup query for key k is routed at P using the following rules:
• If k < m then P routes the lookup query to node P1
• If m ≤ k < m + n then P is responsible for key k
• If k ≥ m + n then P routes the query to node P2
This can be represented in the form of binary-search tree (BST) as shown in Fig. 2. Here m
and n are values such that 0 ≤ m, m + n < 2M .
Our distribution of the LS ensures that the physically adjacent nodes are also close to each
other in LIS (DHT structure) so that the packet is always forwarded closer to the destination
node in both physical network and LIS.
In our system each node maintains a routing table containing its LSP and the information
of its directly connected neighbor nodes. The information maintained for a neighbor node P
includes the portion of LSP owned by P, the directly connected neighbor nodes of P and the
distances of the directly connected neighbor node from P.
Each node periodically exchanges the HELLO messages with each of its directly con-
nected neighbor nodes. The HELLO message from a node P contains the list of P’s directly
connected neighbor nodes and P’s portion of LSP in the form of five-tuple. Receiving updated
information, the node identifies its direct connected neighbors. This can be achieved by build-
ing up an MST consisting of its neighbor nodes up to 2-hops away and changes the logical

123
An Efficient and Scalable Routing for MANETs

Start

Node waits for


certain time for
Hello messages

No
If the node receives
at least a Hello Acquire the whole
message ID space

Yes

Connect with
directly connected
neighbors and get
a LID
Execute Recovery
operation for
neighbor P

Yes

Connected If Hello messages have not


Now the node has been received for a certain time
to send and from a direct neighbor P
Compute the LID receive Hello
of its Anchor node messages
periodically

If the node want to leave the


network No

Execute Reduce
Table Operation
Executethe
Node_departure
procedure

Fig. 3 The flow chart of ESR algorithm

network accordingly. Our approach attempts to maintain the logical network topology closer
to the physical network when the physical network topology changes due to node mobility.
When a node joins the network, it is placed in the logical network in a systematic way dis-
cussed in Sect. 4.1. In our system, a node builds up the MST and distributes the LS by using
local information from 2-hops away neighbor nodes, and the operation has only local effect
in the system. This makes our system distributed in nature. The flowchart of the proposed
approach is given in Fig. 3. The detail of our system is discussed in the following sections.

4.1 Node-Joining

To join the network, a node Pj waits for a certain time to receive HELLO broadcast message
from the existing nodes. This is to find the nodes which are physically adjacent to Pj in the
network.
After the expiry of waiting time, there is one of the following cases.

123
N. Shah et al.

– The join node Pj does not receive any HELLLO message. Pj assumes that there exists no
other node in the network so it acquires the whole LS 0 − 2M − 1.
– The join peer receives HELLO message from at least one physically adjacent node and
performs the following actions.

Upon receiving HELLO message, Pj stores the information of the message in its routing table.
Then Pj identifies its directly connected neighbor nodes and its 2-hops away neighbors. Then
Pj sends a connection-request message (CRQST) to each of its directly connected neighbors
to establish the neighbor connection. CRQST from node Pj contains the list of Pj’s directly
connected neighbor peers. When a node receives CRQST, it stores the information of CRQST
in its routing table and distributes the LSP to Pj using the following rules.

– Whenever a node P learns from its routing table that it can reach one of its current directly
connected neighbor nodes, say P2, only through Pj, P searches the five-tuple list in its
LSP to find the one having P2 as an element, e.g., (P3, m, P, m + n, P2). P splits the
ID space portion represented by that five-tuple into half and assigns one half having P2
as an element to Pj and sends a connection-reply message (CRPLY) to Pj (the format
of CRPLY will be explained late in the paper). P does the same to each of its directly
connected neighbor peers.
– Whenever node P finds from its MST that Pj is its neighbor and there is no common
neighbor between P and Pj, P searches the five-tuple list of its LSP and finds the one
with the largest range. P splits the LSP represented by that five-tuple in a way that its
connectivity with the existing neighbor nodes is not damaged, and then assigns half of the
range along with the corresponding index information to Pj. The LSP splitting process
can be one of the following cases depending on the values of the five-tuple to be split.
• If the five-tuple to be split at P is of the form (m, NULL, P, m + n, NULL), this range
is split into (m, NULL, P, m + (n/2), Pj) and (m + (n/2), P, Pj, m + n, NULL). Then
node P assigns the LSP five-tuple (m + (n/2), P, Pj, m + n, NULL) to Pj and sends
CRPLY to Pj.
• If the five-tuple to be split at P is of the form (m, NULL, P, m + n, P3), this range
is split into (m, NULL, Pj, m + (n/2), P) and (m + (n/2), Pj, P, m + n, P3). Then P
assigns (m, NULL, Pj, m + (n/2), P) to Pj by sending the corresponding CRPLY to
Pj.
• If the five-tuple to be split at P is of the form (m, P3, P, m + n, NULL), this range is
split into (m, P3, P, m + (n/2), Pj) and (m + (n/2), P, Pj, m + n, NULL). Then node P
assigns (m + (n/2), P, Pj, m + n, NULL) to Pj and sends the corresponding CRPLY
to Pj.
• If the five-tuple to be split at node P is of the form (m, P3, P, m + n, P4), this range is
split into (m, P3, P, m + (n/4), Pj), (m + (n/4), P, Pj, m + (3n/4), P) and (m + (3n/4),
Pj, P, m + n, P4). Then P assigns (m + (n/4), P, Pj, m + (3n/4), P) to Pj by sending Pj
a CRPLY message.
– Otherwise P removes Pj from its routing table and discards the CRQST. This is because
P can access Pj through another current directly connected neighbor in the physical
network.

The CRPLY message from node P contains P’s directly connected neighbors, P’s LSP in
five-tuple form and the portion of LSP in five-tuple form assigned to the requesting node Pj.
Receiving CRPLY, the join node Pj stores the information in its routing table. Any change to
the routing table at a node triggers updating of information to its directly connected neighbors.

123
An Efficient and Scalable Routing for MANETs

Pj also executes the reduce-table-entries operation to remove the redundant entries in its
routing table.
After joining the network, Pj computes the LID of its anchor node by applying the hash
function on Pj’s IP/MAC address. The anchor node for Pj stores Pj’s LID. Then Pj stores its
LID (its LSP information) in the similar way as in forwarding the lookup query, which will
be discussed in Sect. 4.6.

4.2 Reduce Table Entries

A node keeps its LSP five-tuples in ascending order of the first element. Whenever a node P
has two five-tuples of the form (m, P1, P, m + n, P2) and (m + n, P2, P, m + n + n1, P3), the
node P combines them into a single five-tuple (m, P1, P, m + n + n1, P3). A node P examines
its routing table for redundant entries of its LSP five-tuple in the following steps. Node P
first makes two sets, X and Y. The first set X consists of the directly connected neighbors of
P. The second set Y arranges P’s LSP five-tuples so that a five-tuple pointing to two different
neighbors is kept in the order of the first element. P links the members of set Y with the
members of set X by connecting the second element and the last element of a Y’s member
(five-tuple) with the members in the set X such that this connects at least one new member
in the set X. The unlinked members in set Y are the redundant entries so they are returned to
their corresponding neighbors.

4.3 Update

When a node P has not received any HELLO message from a neighbor node P1 for a certain
period of time, P invokes the recovery operation for P1. Due to node mobility in MANET,
the distances among nodes may change. Therefore each time a node P receives the updated
information in a HELLO message from a new neighbor node P1, P connects with P1 by
sending CRQST to it. If a peer P2 remains no more directly connected neighbor of P, P
removes P2 from its routing table and then executes the reduce-table-entries operation. Each
node in the network also periodically refreshes its LID (LSP) by sending the probe messages
to its corresponding anchor node. Similarly, if an anchor node P3 does not receive the probe
message for a LID stored in its LSP and the lifetime of the LID information expires, P
removes that LID information from its LSP. In addition to these periodic updates, the change
of a node’s LID also triggers to send the updated information to the corresponding anchor
node i.e. if LID of a node P changes then P sends the updated LID to its anchor node.

4.4 Node-Departure

When a node P wants to leave the network, it can inform its neighbors about its leaving
and transfers its portion of LID space as well as the indexes of its LIDs to the corre-
sponding neighbor nodes. Normally, a node does not have to inform its neighbors about its
leaving.

4.5 Recovery

When a node P detects that one of its directly connected neighbors, say P1, is disconnected,
it waits for a random period of time and then invokes the recovery operation if it does not
hear any recovery action about P1. Setting the random waiting time is to avoid redundant
simultaneous recoveries issued by multiple directly connected neighbors of the disconnected

123
N. Shah et al.

one. Disconnection of P1 may have different causes, for example, P1 has left the network or
it has been turned off or it has moved away. In any case, P sends the recovery request message
(RRQST) to each of the directly connected neighbors peers of the disconnected peer P1 using
the underlying routing algorithm. The RRQST message from P contains the disconnected
neighbor peer and the list of current direct neighbors of P. If more than one node initiates
the RRQST for the same disconnected neighbor node then the one having the lowest node
LID succeeds and takes over the portion of LSP of the disconnected node. When receiving
RRQST, the receiving node, say P2, treats RRQST in the same way as CRQST, but in addition,
it removes the disconnected node P1 from its routing table and sends the recovery-reply
message (RRPLY) to the requesting node P. RRPLY from P2 contains the acknowledgment
to RRQST. In addition, RRPLY from P2 also contains the same information as in CRPLY
if P2 can accommodate the sender node of RRQST, P in this case, in its routing table to
establish the neighbor connection. Upon receiving the updated information, P executes the
reduce-table-entries operation.

4.6 Routing

After receiving a packet (say Pkt) at routing agent from the upper layer destined to node Q, the
source node P applies the hash function to Q’s IP/MAC address, producing a key/identifier
K in the range from 0 to 2M − 1. Then P builds up the lookup query (LRQST) for key K.
LRQST contains the requesting node LID and the key K. Then P builds up the BST from its
LSPs as discussed in Sect. 4. After traversing the BST according to key K, P finds the node,
say P1, which is responsible for key K. If P1 is in fact P itself, P examines its routing table for
index information matching K. Otherwise P forwards the lookup query to P1. This process
is repeated on each node. When the anchor node responsible for key K receives the lookup
query, it sends the reply message (LRPLY) to the requesting node P. LRPLY contains either
the LID for Q or a NULL value in case there is no LID of Q at the anchor node. The NULL
values indicates that the node Q no more exist in the network. To have a limit on the lifetime,
the lookup query is associated with a TTL value.
After receiving the LID of node Q, the source node P forwards the packet Pkt to Q based
on Q’s LID. This forwarding is same as the forwarding for lookup query in the network.
One of disadvantages of a DHT-based routing protocol as compared to the proactive routing
protocol (e.g. OLSR [14]) is the delay involved in retrieving the LID of destination node
from the anchor node before sending the data packet.

5 An Example Scenario

In this section we present the joining process and routing process through an example. Let’s
the LID is 10-bits long (i.e. M = 10), so the LS ranges from 0 to 1,023. Figure 4a shows
that a node P1 wants to join the network. After switching on, node P1 waits for a certain
time to receive a HELLO message. As the P1 is the first node to join, therefore P1’s timer
gets expired and P1 assumes itself as the first node by acquiring whole LS range from 0 to
1,024. We take the maximum range 1,024 for M = 10 because the condition for checking
that a node P with LSP (m, P1, P, m + n, P2) is responsible for range ≥m and range <m + n.
Suppose again that P2 wants to join the network. After switching on, P2 receives HELLO
message from P1. Therefore P2 sends the CRQST message to P1 and P2 gets the LSP (512,
P1, P2, 1,024, NULL) according to the rules described in Sect. 4.1, the resulting routing table
is shown in Fig. 4b. Similarly, when node P3 joins the network, the resulting routing tables

123
An Efficient and Scalable Routing for MANETs

Routing table on P2
The LSP at P2 (512, P1, P2, 1024, NULL)
Neighbor Its LSP five_tuple Its neighbors
P1 (0,NULL, P1, 512, P2) P1

P1 P2
P1

Routing table on P1
Routing table on P1 The LSP at P1 (0, NULL, P1, 512, NULL)
The LSP at P1 (0, NULL, P1, 1024, NU Neighbor Its LSP five_tuple Its neighbors
Neighbor Its LSP five_tuple Its neighbors P2 (512,P1, P2, 1024, NULL) P1

(a) (b)
P3
Routing table at P3
(0, NULL, P3, 256, P1),
The LSP at P1
(768,P2,P3, 1024, NULL)
Neighbor Its LSP five_tuple Its neighbors
P2 P2 (512,P1, P2, 768, P3) P1
P1
P1 (256, P3, P1, 512, P2) P2

The LSP space at P2 (512, P1, P2, 768,


The LSP at P1 (256, P3, P1, 512, Neighbor Its LSP five_tuple Its neighbors
Neighbor Its LSP five_tuple Its neighbors P1 (256,P3, P1, 512, P2) P3
P2 (512,P1, P2, 768, P3) P3 P3 (0, NULL, P3, 256, P1), P1
P3 (0, NULL, P3, 256, P1), P2 (768, P2, P3, 1024, NULL)
(768, P2, P3, 1024, NULL)

(c)
Routing table at P4
The LSP at P4 (0, NULL, P4, 128, P3)
Neighbor Its LSP five_tuple Its neighbors
P3 (128, P4, P3, 256, P1), P1, P2
(768,P2,P3, 1024, NULL)

P4

Routing table at P3
P3 (128, P4, P3, 256, P1),
The LSP at P3
(768,P2,P3, 1024, NULL)
Neighbor Its LSP five_tuple Its neighbors
P4 (0, NULL, P4, 128, P3)
P2 P2 (512,P1, P2, 768, P3) P1
P1
P1 (256, P3, P1, 512, P2) P2
Routing table at P1
The LSP at P1 (256, P3, P1, 512, P2)
The LSP at P2 (512, P1, P2, 768, P3)
Neighbor Its LSP five_tuple Its neighbors
Neighbor Its LSP five_tuple Its neighbors
P2 (512,P1, P2, 768, P3) P3
P1 (256,P3, P1, 512, P2) P3
P3 (0, NULL, P3, 256, P1), P2, P4
P3 (0, NULL, P3, 256, P1), P1, P4
(768, P2, P3, 1024, NULL)
(768, P2, P3, 1024, NULL)

(d)
Fig. 4 A sample scenarios

are shown in Fig. 4c. In the same way, node P4 joins the network and the resulting routing
tables are given in Fig. 4d.
Taking the network in Fig. 4d, suppose node P1 wants to send a packet Pkt to the destination
node P4. After applying hash function over the P4’s IP/MAC address, suppose P1 gets key
600. So P1 sends a lookup query with key 600 in order to get the LID of P4. The BST at P1
for the five-tuples of P1, and P2 and P3 (the direct neighbors of P1) is shown in Fig. 5. So P1

123
N. Shah et al.

Fig. 5 Traversing BST at


node P1 0
k = 600

NULL
256
k = 600

P3 512 k = 600

P1
k =600 768

P2
1024

P3 NULL

traverses the BST accordingly and finds that the responsible node for key 600 is P2. P1 then
forwards the lookup query for key 600 to P2. Receiving the lookup query for key 600, P2
identifies that key 600 is within its LSP range and sends the LID of P4 for key 600 to P1, say
for example the P4’s LID is 63. Therefore P2 sends the lookup reply to P1 after including
LID 63 for P4 in the lookup reply. After receiving the lookup reply from P2, node P1 sends
the Pkt to node P4 by including LID (key) 63. Now the message would be forwarded based
on key 63 by making the BST at each node.

6 Simulation

We use NS-2 [12] simulator for comparison between the proposed approach (ESR) and VCP
[6]. The simulation environment is given in Table 1. The mobility scenario is generated using
Bonnmotion [13] to ensure that the network is connected, because network partitioning and
merging would be considered in our future work. Ten randomly selected nodes transmit data
to respective destination nodes using CBR application agent in NS-2. CBR application agent
runs on the top of UDP agent. The nodes move according to RandomWayPoint mobility
model. We executed a scenario for four times and then get the average results of these four
executions of the scenario. The metrics used for comparison are

– Routing overhead: The total number of packets transmitted by the routing agent for
control purpose.
– Average end-to-end latency: The average time elapsed from the moment when a data
packet is transmitted to the routing agent at the source node to the moment when the
packet is transferred to the application layer agent by the routing agent at the destination
node.

123
An Efficient and Scalable Routing for MANETs

Table 1 Simulation environment


Parameter Value Parameter Value

MAC layer IEEE 802.11 Propagation model Two ray ground


Radio range 100 m Maximum 0.4–2 m/s
node moving
speed
Total number 100 LID size 10 bits, so space range
of nodes from 0–1,024
Simulation area 1, 000 × 1, 000 CBR packet size 100 bits
Total simulation time 1,000 s CBR interval 5s
Mobility model Random way point

– False-negative ratio: The ratio between the number of unresolved lookup queries for
nodes that do exist in the network and the total number of queries initiated for destination
lookup.
– Path-stretch: The ratio of the path length followed by the routing protocol (for the data
packet delivery to the destination node from the source node) to the length of the shortest
path in the network between the source and destination nodes.
Figure 6a shows that our approach (ESR) has lower routing overhead as compared to VCP.
The reason is that our approach maintains the logical topology closer to the physical network.
VCP also attempts to maintain logical topology closer to the physical network by maintaining
redundant physical neighbors at a node. However, in VCP, these all physical neighbors of
a node are not necessary to be also logically closer. This leads to longer route and more
routing overhead in VCP. Our approach also has lower overhead as compared to that of VCP
due to following two reasons. First, our approach has closer matching between physical and
logical topologies as compared to VCP which results in shortest route between source and
destination. Second, our approach has lower routing overhead reducing the contention delay
at the MAC layer.
Figure 6b shows the average end-to-end delay is lower in the proposed approach (ESR)
than that of VCP. Its reason is the lower routing overhead in ESR. Its second reason is, by
avoiding mismatch problem in ESR, the shorter route is followed to deliver a data packet
which leads to shorter end-to-end delay. Similarly our approach outperforms VCP in term of
false-negative ratio as shown in Fig. 6c. The reason for this is that VCP reacts very slowly
if the physical topology gets changes. While our approach only maintains local neighbor
information therefore our approach converges quickly in case of topology change. Due to
low routing overhead in ESR, the probability of packet collision get reduced which leads to
more reliable transmission. Thus this decreases the false-negative ratio in our approach as
compared to that of VCP.
Our protocol attempts to build the logical network closer to the physical network than
VCP by maintaining all physical neighbors of a node as logical neighbors of the node. This
leads to lower path-stretch values in our approach as compared to that of VCP, shown in
Fig. 6d.
Figure 7 shows the routing traffic for constructing and maintaining the topology connected.
The amount of routing traffic increases with the increase of node mobility. Its reason is that
the topology frequently changes with increased node moving speed. One can notice in the
figure this increase in routing traffic is less in the proposed approach (ESR) as compared to
that of VCP.

123
N. Shah et al.

Fig. 6 Comparison of simulation results between our Approach and VCP

Fig. 7 Number of messages transmitted for construction and maintanance of logical network

Figure 8 shows the results for best case and worst case scenario from VCP point of
view. For best case scenario from VCP point of view, we arrange the node in a chord shape
by reducing the radio range of the node to 50 m. The nodes arekept static. In this case,
the proposed approach (ESR) performance as almost same to that of VCP in term of routing
overhead, average end-to-end delay and path-stretch ratio. False-Negative ratio parameter has
been evaluated in this case because False-negative ratio occurs mainly due to node mobility.

123
An Efficient and Scalable Routing for MANETs

Fig. 8 Best case and worst case from VCP point of view

Worst-case from VCP point of view arises when a node has more than two physical
neighbors. This is because VCP cannot assign consecutive LIDs to more than two direct
neighbors of a node. In this case the mismatch between physical and logical networks would
get worse. For the worst-case scenario from VCP point of view, we arrange the nodes statically
in such a way that each node has more than two direct neighbors. This creates worse ill-
matching between physical and logical networks in VCP. The radio range of a node is 250 m.
Figure 8 shows that ESR approach’s performance is far better than the VCP in term of routing
overhead, average end-to-end delay and path-stretch ratio.

7 Conclusion

The paper described the limitations of existing distributed hash table (DHT)-based routing
approaches for scalable mobile ad hoc networks (MANETs). Then we present a new DHT-
based routing for MANETs which avoids ill-matching between logical and physical networks.
Through simulation, the paper showed that the proposed approach (ESR) outperforms the
existing approach (VCP) in term of routing overhead, path-stretch values, false-negative ratio
and average end-to-end delay.
As a future work, we would like to address network partitioning and merging, and load
balancing.

123
N. Shah et al.

References

1. http://thelifenetwork.org/about.html.
2. Kiess, W., & Mauve, M. (2007). A survey on real-world implementations of mobile ad-hoc networks. Ad
Hoc Networks, 5(3), 324–339.
3. Kulla, E., et al. (2012). A survey on MANET testbeds and mobility models. Computer Science and
Convergence, Lecture Notes in Electrical Engineering, 114(4), 651–657.
4. Caesar, M., et al. (2006). Virtual ring routing: Network routing inspired by DHTs. In Proc. ACM. Conf.
SIGCOMM, NY, USA (pp. 351–362).
5. Eriksson, J., Faloutsos, M., & Krishnamurthy, S. V. (2007). DART: Dynamic address routing for scalable
ad hoc and mesh networks. IEEE/ACM Transactions Networking, 15(1), 119–132.
6. Awad, A., German, R., & Dressler, F. (2011). Exploiting virtual coordinates for improved routing perfor-
mance in sensor networks. IEEE Transactions on Mobile Computing, 10(9), 1214–1226.
7. Viana, A. C., et al. (2003). Indirect routing using distributed location information. In Proc. 1st IEEE.
Conf. Pervasive Computing and Communications. PerCom, March. 2003 (pp. 224–231).
8. Sampath, D., & Garcia-Luna-Aceves, J. J. (2009). PROSE: Scalable routing in MANETs using prefix
labels and distributed hashing. In Proc. 6th IEEE Int. Conf. Sensor, Mesh and Ad Hoc Communications
and Networks, SECON, CA, USA, June 2009 (pp. 1–9).
9. Lu, G.-H., et al. (2008). Virtual id routing: A scalable routing framework with support for mobility and
routing efficiency. In Proc. 3rd ACM Int. Wksp. Mobility in the evolving internet architecture, MobiArch,
New York, USA (pp. 79–84).
10. Jha, S. C., Jouaber, B., & Ahmed, K. M. (2008). Dynamic-address allocation based scalable routing
protocol in context of node mobility. In Proc. IEEE. Conf. Wireless Hive Networks Conference. WHNC,
Aug. 2008 (pp. 1–6).
11. Shah, N., Qian, D., & Rui, W. (2012). MANET adaptive structured P2P overlay. Springer. Peer-to-peer
Networking and Applications, 5(2), 143–160.
12. www.isi.edu/nsnam. 20 June 2013.
13. http://net.cs.uni-bonn.de/wg/cs/applications/bonnmotion/. 20 June 2013.
14. Clausen, T. & Jacquet, P. (2003). Optimized link state routing protocol. IETF RFC3626. Available at
http://www.ietf.org/rfc/rfc3626.txt.

Author Biographies

Nadir Shah is serving as an Assistant Professor at the Department


of Computer Science, COMSATS Institute of Information Technol-
ogy, Wah Cantt, Pakistan. He has obtained Ph.D degree in Computer
Systems and Architecture from Sino-German Joint Software Institute,
Beihang University, Beijing, China. He has earned M.S. in Computer
Science from International Islamic University, Islamabad, Pakistan in
2007. He has received both B.Sc. and M.Sc. in Computer Science from
Peshawar University, Peshawar, Pakistan in 2002 and 2005, respec-
tively. His current research interests include mobile ad hoc networks,
peer-to-peer network, and delay/disruption tolerant networks. He has
published about 15 papers in international conferences and journals.

123
An Efficient and Scalable Routing for MANETs

Ayaz Ahmad is currently serving as an Assistant Professor in the


Department of Electrical Engineering, COMSATS, Wah Campus,
Pakistan. He obtained his Ph.D. on Resource Optimization in Wire-
less Communication Systems from Supélec, France in 2011. He has
done M.S. in Wireless Communication Systems from Supélec, France
in 2008. He did his B.Sc. in Electrical Engineering from University of
Engineering and Technology, Peshawar, Pakistan in 2006. His research
interests include resource optimization in wireless communication sys-
tems, signal processing for wireless systems, and stochastic optimiza-
tion, and its application to wireless networks.

Waqar Mehmood is an Assistant Professor at the Department of


Computer Science in Comsats Institute of Information Technology.
He received his Ph.D. degree in computer science from the Inns-
bruck University Austria in 2011 for his thesis on “A Generic Model
Configuration Management Approach for MOF-Compliant DSLs”. His
research interest includes model-based software configuration man-
agement, model transformation, model versioning, graph transforma-
tion, domain-specific languages, and model evolution in the context of
model-driven engineering. For further information about his research
activities, please contact him at email: [email protected].

Depei Qian professor at State Key Laboratory of Software Develop-


ment Environment, Beihang University, Beijing, China. His current
research interests include high performance computer architecture and
implementation technology, distributed systems, and network perfor-
mance measurement. He has published more than 100 papers.

123
N. Shah et al.

Rui Wang received the B.S. and M.S. degrees from Xi’an Jiaotong
University, Xi’an, China, in 2000 and 2003, respectively, and the Ph.D.
degree from Beihang University, Beijing, China, in 2009, all in electri-
cal engineering. His research interests are in the area of P2P networks
and multimedia social network. He is currently an Assistant professor
at Beihang University.

123

You might also like