Balancing the tradeoffs between scalability and availability in mobile ad hoc networks with a flat...

18
Balancing the tradeoffs between scalability and availability in mobile ad hoc networks with a flat hashing-based location service Abdelouahid Derhab a, * , Nadjib Badache b a Department of Computer Engineering, CERIST, 3 Rue des fre `res Aissou, Ben-Aknoun, Algiers, Algeria b Computer Science Department, USTHB, BP 32 El-Alia, Bab-Ezzouar, 16111 Algiers, Algeria Received 7 June 2006; received in revised form 2 July 2007; accepted 3 October 2007 Available online 12 October 2007 Abstract In this paper, we propose FSLS (Flat-based Some-for-some Location Service), a new location service for ad hoc mobile networks. The location service is based on the hash-based sets system that can offer a high location information availability. The network area is divided into non-overlapping zones. A node identifier is mapped to a set of home zones, each of which contains a unique location server, which makes FSLS works as a some-for-some approach. Using cross-layer design, the service can tolerate server mobility and server failures, and last for a long time period. We analyze FSLS and six other existing location services. The theoretical analysis as well as simulation results show that FSLS offers a good trade-off between location availability and scalability. It comes second after a quorum-based location service in terms of location availability and it is the closest competitor to a hierarchical location service in terms of scalability. Ó 2007 Elsevier B.V. All rights reserved. Keywords: Location service; Hash-based set; Availability; Reliability; Scalability 1. Introduction A mobile ad hoc network is a collection of mobile nodes forming a temporary network without any form of centralized administration or prede- fined infrastructure. Each node acts both as a host and a router. Due to node mobility, the network topology changes frequently, which makes the design of a scalable and robust routing protocol with low message overhead one of the challenging task in such a network. In recent years, location-awareness is increas- ingly becoming an important feature of routing pro- tocols and applications. Position-based routing protocols [3,19,17,14,22,23,15,31,6] use the geo- graphic position of nodes available from positioning systems such as GPS [16] or other type of position- ing service [1,34,7,2] to forward data packets. The forwarding decision at each node is based on the destination’s position and the position of the neigh- boring nodes. Typically, the packet is forwarded to 1570-8705/$ - see front matter Ó 2007 Elsevier B.V. All rights reserved. doi:10.1016/j.adhoc.2007.10.001 * Corresponding author. Tel.: +213 21 91 62 05; fax: +213 21 91 21 26. E-mail addresses: [email protected] (A. Derhab), bada- [email protected] (N. Badache). Available online at www.sciencedirect.com Ad Hoc Networks 6 (2008) 1013–1030 www.elsevier.com/locate/adhoc

Transcript of Balancing the tradeoffs between scalability and availability in mobile ad hoc networks with a flat...

Available online at www.sciencedirect.com

Ad Hoc Networks 6 (2008) 1013–1030

www.elsevier.com/locate/adhoc

Balancing the tradeoffs between scalability and availabilityin mobile ad hoc networks with a flat hashing-based

location service

Abdelouahid Derhab a,*, Nadjib Badache b

a Department of Computer Engineering, CERIST, 3 Rue des freres Aissou, Ben-Aknoun, Algiers, Algeriab Computer Science Department, USTHB, BP 32 El-Alia, Bab-Ezzouar, 16111 Algiers, Algeria

Received 7 June 2006; received in revised form 2 July 2007; accepted 3 October 2007Available online 12 October 2007

Abstract

In this paper, we propose FSLS (Flat-based Some-for-some Location Service), a new location service for ad hoc mobilenetworks. The location service is based on the hash-based sets system that can offer a high location information availability.The network area is divided into non-overlapping zones. A node identifier is mapped to a set of home zones, each of whichcontains a unique location server, which makes FSLS works as a some-for-some approach. Using cross-layer design, theservice can tolerate server mobility and server failures, and last for a long time period. We analyze FSLS and six otherexisting location services. The theoretical analysis as well as simulation results show that FSLS offers a good trade-offbetween location availability and scalability. It comes second after a quorum-based location service in terms of locationavailability and it is the closest competitor to a hierarchical location service in terms of scalability.� 2007 Elsevier B.V. All rights reserved.

Keywords: Location service; Hash-based set; Availability; Reliability; Scalability

1. Introduction

A mobile ad hoc network is a collection ofmobile nodes forming a temporary network withoutany form of centralized administration or prede-fined infrastructure. Each node acts both as a hostand a router. Due to node mobility, the networktopology changes frequently, which makes the

1570-8705/$ - see front matter � 2007 Elsevier B.V. All rights reserved

doi:10.1016/j.adhoc.2007.10.001

* Corresponding author. Tel.: +213 21 91 62 05; fax: +213 2191 21 26.

E-mail addresses: [email protected] (A. Derhab), [email protected] (N. Badache).

design of a scalable and robust routing protocolwith low message overhead one of the challengingtask in such a network.

In recent years, location-awareness is increas-ingly becoming an important feature of routing pro-tocols and applications. Position-based routingprotocols [3,19,17,14,22,23,15,31,6] use the geo-graphic position of nodes available from positioningsystems such as GPS [16] or other type of position-ing service [1,34,7,2] to forward data packets. Theforwarding decision at each node is based on thedestination’s position and the position of the neigh-boring nodes. Typically, the packet is forwarded to

.

1014 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

a neighbor that is closer to the destination than theforwarding node itself, thus making progresstoward the destination. In order to inform all neigh-bors within transmission range about its own posi-tion, a node transmits beacons at regular intervals.In contrast with topology-based category, they donot need to keep global states for routing data pack-ets. They have the advantage to scale to a largernumber of nodes. To enable position-based routing,a node must be able to discover the location of thenode whom it wants to communicate with. Locationinformation are provided by a so-called locationservice. The use of location services extends to otherlocation-aware applications, e.g., location trackingand navigation, geocasting, or a tour guide thatcan provide location-dependent information totourists (such as map, traffic, and site information).

The role of a location service is to map the ID of anode to its geographical position. Each location ser-vice performs two basic operations: the locationupdate and the location query. The location updateis responsible for replicating information about thecurrent location of a given node D to a set of nodescalled location servers. If a node S wants to knowthe location of node D, it sends a location query mes-sage to some or all D’s location servers. According toMauve classification [26], the location services areclassified according to how many nodes host the ser-vice (i.e., some or all nodes). Furthermore, each loca-tion server may maintain the position of some specificnodes or all nodes of the network. Thus, the four pos-sible combinations are as follows: some-for-some,some-for-all, all-for-some, and all-for-all.

To design a location service, we need to answerthe following basic question: (1) When should a nodeupdate its location information? (2) to whom shoulda node send its position information? and (3) howshould a node find the appropriate servers to queryfor a location. Ad hoc networks characteristicsimpose different challenges on designing locationservices. First, dynamic topology leads that there isno static relation between a node and its location.To distribute location information to a set of servers,the location service utilizes a routing protocol, butthe routing protocol requires the location informa-tion of these servers in first place, which results ina functional deadlock. Second, the location servicemust incur low overhead in order that the serversdo not quickly drain out their batteries. Third, net-work partitioning would make the location serversunreachable to some nodes, and hence it consider-ably decreases the availability of location informa-

tion. In other words, the location service thatwould be deployed in the ad hoc networks needs tobe scalable and provide high location availability.A location service is said to be scalable if it has theability to adapt to increased demands in terms ofnetwork size and node speed without the need forsignificant additional overhead. The location avail-ability is defined as the probability to access locationinformation when needed under dynamic environ-ment caused by node mobility and node failures.Recently, many location services for ad hoc net-works have been proposed [32,9,21,33,35,28,10,30].Many of which have only focused on designing scal-able solutions without paying too much attention totheir location availability.

In this paper, we propose a location service thatbalance the tradeoffs between scalability andlocation availability. In the paper, our original con-tributions are the following. First, we propose thehash-based sets system that achieves a higher avail-ability of location information than the currentflat-hashing approaches. Second, while the majorityof location services proposed in the literature areclassified as all-for-some approach, we propose asome-for-some location service called Flat-based

Some-for-some Location Service (FSLS). Third, wepropose a cross-layer framework that helps the ser-vice to estimate when a server will run out of batterypower or leave its zone. In doing so, the server willseamlessly replicate its stored location informationon an alternative node before it disappears fromits actual zone, and hence increases considerablythe service lifetime, and improve the service reliabil-ity. Fourth, we analyze the scalability and the avail-ability of FSLS as well as six other location services.The analysis shows that FSLS comes second afterthe Column/Row quorum-based location service[30] in terms of location availability, and it is theclosest competitor to HIGH-GRADE [35] andHGRID [27] in terms of scalability.

The rest of the paper is organized as follows: Sec-tion 2 presents related work. A detailed description ofthe location service and the system framework arepresented in Section 3. In Section 4, we analyze FSLSand six other location services in terms of scalabilityand location availability. Section 5 presents simula-tion results. Finally, Section 6 concludes the paper.

2. Related work

Fig. 1 shows the classification of the locationservices proposed so far. Location services can be

Flooding-based Rendezvous-based

Location Services

Quorum-based Hashing-basedDissemination Reactive

Hierarchical Flat

Fig. 1. Location services classification.

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1015

divided into flooding-based and rendezvous-based

approaches. Flooding-based protocols can be fur-ther divided into dissemination and reactiveapproaches. In the dissemination approach [8,24],each node periodically floods its location to allnodes in the network. Thus, when a given noderequires location information on another node, theinformation is found in the node’s location table,i.e., the dissemination services usually do not sendquery messages. They can be classified as an all-

for-all approach. In the reactive approach [8], nodesdo not send update messages, instead they querylocation information of a specific node only ifneeded. The location query is flooded to the wholenetwork. The reactive services belong to all-for-

some category. In rendezvous-based approach, allnodes agree on the set of location servers. As reac-tive and dissemination services represent the twoextremes of the update strategy and they are notscalable, we focus in the following on the rendez-vous-based services. Two approaches are used toselect the location servers, quorum-based and hash-ing-based. Fig. 2 depicts four structures to deploylocation servers, in which the solid line representsthe location update path and the dashed line repre-sents the location query path.

A

BA

B

Fig. 2. Location serve

2.1. Quorum-based location services

Quorum-based approach for information replica-tion at multiple nodes acting as repositories is thebasic principle of several location services[18,20,13,25]. A location update is sent to a subsetof nodes called update quorum, and a location queryis sent to a subset of nodes called query quorum. Thesubsets are designed such that each query quorumfor a node intersects an update quorum for anyother node, and the probability of a query successis maximized. The quorum-based location servicecan be configured to operate as all-for-all, all-for-some, or some-for-some approach, depending onhow the size of the quorum is chosen.

In the Column/Row Location Service (CRLS)[30] (see Fig. 2a), the location of each node is prop-agated in the north–south direction, while anylocation queries are propagated in the east–westdirection. When a node decides a location updateis needed, it propagates the location update alongthe north–south direction, i.e., with the goal ofreaching all the nodes in the same column in thegeographic area. Each node selected as a locationserver in the north or south direction broadcaststhe update to its one hop neighbors. The update

A

B

r organizations.

1016 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

contains the identifier of the next location server inthe update direction. When a source node initiates alocation request for a destination node, the query ispropagated along the east–west direction, i.e., alongits row of nodes in the geographic area. The querycontains the time of the most recent location knownto the source. If a node along the row has a cachedlocation for the destination node that is more recentthan the time in the query, it sends a reply packetvia geographic forwarding back to the source. Theintersection of row and column can be guaranteedby adding outer face [6] of the ad hoc network toboth of them.

2.2. Hashing-based location services

The home location register (HLR) technique [29],in which a well-known hash function is used to mapeach node’s identifier to a home region, is employedin SLURP [32]. In SLURP, the network area isdivided into a flat grid of squares. Node A selectsits location servers by applying a hash function toA’s ID and obtains the (x, y) coordinate of a pointin the entire area. The square containing that pointis called the home square for node A. All nodes inthat square store A’s exact location information.Every time node A moves to a different square, itupdates its home square with new location informa-tion. For any node B wishes to communicate withnode A, the same hash function is applied to nodeA’s ID to obtain A’s home square. A query packetis then forwarded to A’s home square to retrieveA’s location information. This is illustrated inFig. 2b. One of the major drawback of this designis that the query latency grows as the network sizegrows. Even if the querying node B is relatively closeto the target node A, node B may still need to queryA’s home region that is far away. Furthermore,nodes may be far away from their home squareand their updates may have to travel long distances.

To address the problems of the flat-basedapproach, SLALoM [9] uses a two-level structure.The entire network is first divided into a flat gridof level-1 squares as in SLURP. The network is thenpartitioned into various level-2 squares with eachlevel-2 square containing many level-1 squares.Node A selects its location servers by hashing tothe same point in each of the level-2 squares. NodeA thus has a home square in every level-2 square asshown in Fig. 2c. SLALoM defines home squaresnear A as the nine level-1 home squares closest toA (i.e., the home square in the level-2 square where

A is in, plus the eight home squares in the surround-ing level-2 squares). It employs a two-level grainedlocation information, i.e., all the home squares ofA know which level-2 square A resides in, and allthe home squares near A know the exact locationof A. As A moves around, only closer servers needto be updated frequently, whereas remote serversrequire only infrequent updates. To query node A,node B sends query packet to A’s home square inthe level-2 square B is in. If that home square isthe one near A, B can retrieve A’s exact location.Otherwise, the servers in that home square knowwhich level-2 square A is in. The two-level structurereduces the location query cost but increases thecost of updating location servers.

The alternative structure, which is the multi-levelstructure, is employed by GLS [21], DLM [33], andHIGH-GRADE [35]. In HIGH-GRADE, the entirenetwork area is called a level H square. The level H

square is divided into four quadrants, called thelevel-(H � 1) squares, each of which is furtherdivided into four quadrants as well, so and so onforth, until the entire region is divided into 4H

level-0 square. Servers in HIGH-GRADE storemulti-grained information, i.e., each level-i server(0 6 i 6 H) stores the information of ‘‘which level-(i � 1) square A is in’’, and only level-0 servers storethe exact location of A. To determine the relativelocation of A’s servers in each level-i square,HIGH-GRADE applies (H + 1) hash functions onA’s ID. The set of hash points are called LocationServer Points (LSPs), denoted by LSPA, i for eachlevel-i square, and are shown as white circles inFig. 2d. The location servers are a set of nodes thatare closest to each LSPA, i. As multi-grained infor-mation is stored at each level of LSP, update aremade on level-i only when a node traverses level-(i + 1). When a node B wants to find A’s location,it obtains sequentially the level-i potential LSP(pLSPB, A, i) by applying the same hash functionsto A’s ID in B’s level-i square. These points areshown as black circles in Fig. 2d. IF B and A areco-located in the same level-0 square (i.e.,pLSPB, A, 0 = LSPA, 0), B can retrieve A’s exact loca-tion information from the server at LSPA, 0. Other-wise, the nodes at pLSPB, A, 0 re-forward the querypacket to pLSPB,A,1. This process continues untilpLSPB, A, i = LSPA, i for some i, where the first loca-tion server of A is found. Then, the query is re-for-warded to lower levels LSPs sequentially, i.e.,LSPA,i�1, . . . ,LSPA,0, where the exact location of A

is finally retrieved.

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1017

2.3. Discussion

In the literature, two metrics are used to assessthe efficiency of any location service: the scalabilityin terms of communication cost and location avail-

ability. The communication cost is defined to bethe average number of messages a node generatesper unit time to perform an update or a query oper-ation, and the location availability is already definedin Section 1.

Yu et al. [36] have analyzed the scalability ofSLURP, SLALoM, GLS, DLM, and HIGH-GRADE. The analysis has shown that the commu-nication cost of HIGH-GRADE scales linearly withthe node speed v and logarithmically with the num-ber of nodes in the network n. HGRID [27] also hasan asymptotic communication cost of O(vlog(n)).They outperform the other location services. SLA-LoM has an asymptotic communication cost ofOðv ffiffiffi

n3p Þ, versus Oðv ffiffiffi

np Þ for SLURP and the CRLS.

Fig. 3 presents the above location services alongtwo dimensions: scalability and location availabil-ity. Fig. 2d shows that HIGH-GRADE imposeson querying nodes to contact a chain of servers ina certain order so as to retrieve the queried node’sexact location. If one of these servers is unreachableor the area, which is supposed to contain a locationserver is empty, the query operation cannot be per-formed. From the figure, we can intuitively con-clude that the location availability of multi-levellocation services is low. This intuition is proven inSection 4. The same thing can be said about GLSand DLM as they are also multi-level location ser-vices. SLALoM has better location availability thanHIGH-GRADE since it needs to contact at mosttwo location servers. As query packets in SLURP

SLURP

GLS DLM HIGH-GRADE

SLALoM

CRLS

)( nvO )( 3 nvO )log( nvO Scalability(packets/sec/node)

Loc

atio

n av

aila

bilit

y

HGRID

Fig. 3. Location services along two metrics.

do not need to contact many servers in a certainorder or to traverse specific areas to reach their tar-get regions, its location availability is higher thanthat of SLALoM. However, it still suffers fromunsuccessful location query due to empty regions.CRLS outperforms the other location services interms of location availability because the intersec-tion of row and column is guaranteed. As both met-rics are important for ad hoc networks, we proposea location service that balance the tradeoffs betweenscalability and availability.

3. Flat-based some-for-some location service (FSLS)

3.1. System framework

The architecture of the proposed system frame-work is shown in Fig. 4. It consists of four layers:the application layer, the middleware layer, therouting layer and the mac layer. As part of theframework, the routing and the mac layers providean estimation of the residual node lifetime and theavailable bandwidth respectively.

When a location-aware application such as thetour guide wants to obtain the position of a certainnode D, it contacts the location service. This latterwill check if such a position is available in its ownlocation table. If so, it will directly respond to theapplication. Otherwise, it will demand the posi-tion-based routing protocol to find at least one ofthe location servers of D. The location serversshould respond with the current location of D. Onthe other hand, when a node S wants to communi-cate with D, it first contacts the routing protocol,which in turn contacts the location service. Thelocation servers of D should respond with an

Location-awareApplication

Networkapplication

Location Service

Position-basedRouting Protocol

Available BandwidthEstimation

Residual nodelifetime Estimation

Location Table

IEEE 802.11

App

licat

ion

Mid

dlew

are

Rou

ting

Mac

Cross-LayerInformation

Fig. 4. System framework.

1018 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

approximative location information, i.e., the geo-graphic area where D is located. In the cross-layerinformation, the routing layer estimates the residualbattery lifetime by recording the different packetsthat pass through it. It can be used to determinethe time at which the location information table willbe replicated onto another node, in order to main-tain location information availability for a long timeperiod. The available bandwidth estimation pro-vided by the mac layer is used to derive an upper-bound on the replication time.

3.2. Definitions

That maps each node identifier to a fixed setcalled a hash-based set. A hash-based set for a nodeA is obtained by applying a known hash mappingalgorithm that maps each node A to a set HA.

We define the bi-set BA as a couple (UA,QA), suchthat UA = HA, and Uq � UA. UA and QA are calledthe hash-based update set (HUS) and the hash-based

query set (HQS) of node A, respectively.The hash-based sets system S is a set of bi-sets,

i.e., S ¼ fB1; � � � ;Bmg. We consider that m 6 n

because two nodes may map to the same hash-basedset.

3.3. Area partitioning and location server selection

The first design choice we adopts is structuringthe location servers as a flat-based approach. Thearea covered by the ad hoc network is partitionedinto G square zones of equal-sizes. All of these zoneshave well-known identifiers (IDs) distributed overthe range [0, � � � ,G � 1]. We assume that there exists

0 21 3 4

5 76 8 9 dN (i) dW (i)

dE (i) dS (i)

10 1211 13 14

15 1716 18 19

A

Fig. 5. Area partitioned according to the flat-based approach.

a static function f that maps a node’s ID into a spe-cific zone. Formally, f(node ID)! zone ID. Fig. 5depicts the partitioning scheme, in which the respec-tive zones’ identifier are shown in the upper-left cor-ner of each zone, and the location servers arecolored gray. Each node is assigned a hash-basedupdate set (HUS) consisting of a zones. a is a systemparameter upper-bounded by G. A well-known hashalgorithm HðA;G; aÞ constructs a HUS for node A

(Algorithm 1), where UA represents the set of zones’identifier. An example of a function f is:f(ID) = (ID%G). Nodes that return the same valueof f() are assigned to the same HUS. In Fig. 5,f(A) = 0, G = 20, and a = 3. So, UA = {0,6,12}.

Unlike other flat-based location services, the hashalgorithm maps a node identifier to a set of homezones. Moreover, only a unique node from each zoneis selected as a location server. In real mobility pat-terns, node density may not be uniform across thenetwork, which results in multiple empty zones. Inthis scheme, a query operation fails only if the que-rying node cannot access any of its location servers.

Algorithm 1. The hash algorithm HðA;G; aÞ1: UA = ;;2: k: = 0;3: for j = 1 to a do

4: UA = UA [ {f(id(A) + k)};5: k :¼ k þ ½Ga�;6: end for7: return UA;

We propose the stability of a node as a metric forthe location server selection criterion. The metricpredicts the time period during which the node willremain in its zone. It is based on the residual batterypower and the current positions of the node. A nodedisappears from its zone either: (i) if it moves out ofits current zone, or (ii) or it drains out of its energypower. Each node i estimates its stability as follows:First, it calculates the rate of its battery powerdepletion Ri for every time period nT, then it esti-mates the residual time before it runs out of energypower, as shown in Eq. (1), such that Ei denotes i’sresidual battery power. Second, it calculates theremaining time before it moves out of its currentzone, T mobi (Eq. (2)). Where dN(i), dS(i), dE(i),and dw(i) are the distances that separate node i fromthe north, south, east, west sides of its current zone,and V maxi is the node i’s maximum velocity. Therespective distances are depicted in Fig. 5

0 21 3 4

5 76 8

10 1211 13 14

15 1716 18 19

A

B

(1)

(2)

Fig. 6. An example of executing a query operation.

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1019

T powi¼ Ei

maxðRiÞðsÞ; ð1Þ

T mobi ¼minðdNðiÞ; dSðiÞ; dEðiÞ; dW ðiÞÞ

V maxi

ðsÞ: ð2Þ

Eq. (2) derives a conservative estimate on T mobi . Itassumes that the node is moving toward the nearestside. Finally, the stability of node, denoted by i ni isgiven by the following equation:

ni ¼ minðT powi; T mobiÞ: ð3Þ

Initially, the node with the highest value of stabilitywill be selected as the location server of its zone.Ties are broken by comparing node identifiers.

The Combination of the hash-based sets con-struction, the flat-based approach, and the locationserver selection procedure leads to the creation of G

servers. We assume that G < n. Each server nodestores the location information of ða�n

G Þ nodes. AsðaGÞ < 1, the proposed location service (FSLS) canbe classified as a some-for-some approach.

3.4. Service operations

Nodes perform two types of operations: update

and query. Each operation has its correspondingresponse, ack for update and reply for query. Eachlocation server holds a location table, which recordsfor each stored node the following fields: (1) its id,(2) the zone id where that node is in, and (3) its time-stamp (i.e. the latest update time known by the loca-tion server). As we can see, FSLS adopts a two-levelgrained strategy. We assume that the position-basedrouting protocols are much more invoked than thelocation-ware applications, and they aim to deliverdata packets to the destination nodes, and not toknow the exact location of those nodes. The exactlocation of node is only known by the node itselfand its neighbors.

3.4.1. Location update

When a node i moves out of its current zone andinto a new one Zn, it sends an update messagetoward the center of each zone 2(Ui [ Zn). Theupdate packet contains the following information:hsrc id, seq, src zone, target zone, new zone, new

timestampi. The pair (src id, seq) denotes the sourcenode and the sequence number of the packet. Ituniquely identifies the update packet. src zone isthe id of the source node’s zone and target zone isthe server node’s zone. new zone is the node’s newzone. The update packet also includes the new time-

stamp which is obtained by increasing the currenttimestamp by one.

When the packet reaches a node in the targetzone, two cases can occur. If that node has a cachedroute to the location server, the packet is immedi-ately routed toward the server. Otherwise, a routediscovery packet is broadcasted in the zone to finda route to the location server. Upon receiving theupdate packet, the location server sends back anack packet to the source node.

3.4.2. Location query

According to users and applications require-ments, query packets can be sent with two levelsof accuracy: high, and low:

• High accuracy: The exact position of the targetnode is needed by the location-awareapplications.

• Low accuracy: It is required by the position-based routing protocols that aims to know thezone id where the target node resides in and notto know its exact location.

The major disadvantage of the flat-based loca-tion services is that a query packet sent by a nodemay need to traverse long distances to retrieve thelocation of nearby destinations, therefore increasingquery latency. To deal with this issue, we propose tolimit the distance that the query packet traverses. Asource node B wishing to obtain the position of a

1020 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

node A, firstly sends a query packet to the locationserver of the zone where it resides, denoted by LB

(arrow (1) in Fig. 6). If LB holds the location infor-mation of D, then S will obtain D’s location within atime proportional to the side length of the zone. Ifnode B receives no response, it will execute Algo-rithm 2 to obtain the QA set. QA is first defined tobe the set of zones that belong to UA such that thephysical distance between node B and the centerof each zone is bounded by dth (arrow (2) inFig. 6). If the resulting QA is empty, QA will be setUA. Then, B will send a query packet toward thecenter of each zone 2(QA [ Zc).

Algorithm 2. Construction of QA set

1: QA: = ;2: UA :¼HðA;G; aÞ;3: for all Z in UA do

4: if (distance(B,Z) < dth) then

5: QA: = QA [ {Z};6: end if

7: end for8: if (QA = ;) then

9: QA: = UA

10: end if

11: return QA;

1 Localized means that queries are from nearby nodes.

3.4.3. Unreachable zones

If a node i fails to contact the server of a certainzone, it considers that the zone is unreachable. Azone is called unreachable if either it is empty orthe location server in that zone is unreachable dueto network partitioning. To avoid unnecessary mes-sage overhead, each node keeps a set, called theUnreachable zone list (UZL). This latter includesthe zones’ ID which are unreachable. When a givenzone is declared as unreachable, it will be added tothe Unreachable zone list for a period of time T.During that period, update and query packets aresent to (Ui � UZLi) and (Qi � UZLi) respectively.After the expiration of T, the zone in question willbe removed from the list.

3.4.4. Handling mobility and failure of location

servers

When a location server becomes no longer avail-able, queries that arrive between the time that theserver is unavailable and the next updates fromnodes whose locations are stored at the server willfail. To address this issue, the location server node

that is about to cross the boundary of its zone or itis about to run out of battery power, has to replicatethe location information table onto a new nodebefore it leaves the zone or it dies. The service repli-cation is triggered when the following constraint isverified: (ni � DT) < time of replication process. Letus consider that D denotes the size of location infor-mation table to be replicated and transmitted overan end-to-end wireless connection with an availablebandwidth of Bw bits/s. The replication processneeds ð D

BwÞ seconds in order to be achieved. The oldserver i and the new server j must fulfill the followingrequirements: (1) ðniðtÞ � DT Þ < ð D

BwÞ and (2) nj(t) isthe maximum among the nodes of its zone.

The problem that can occur when tracking theresidual lifetime of a node in its zone, is its disap-pearance during the interval Dt. No warning is gen-erated until the next period. By that time, the servermay be already disappeared or not enough time isleft to carry out the replication process. To effi-ciently track the node in its zone, the followingproperty must hold true Dt < maxð 1

V maxi; 1

maxðRiÞÞ. Thistechnique ensure any-time service availability aslong as the zone is not empty.

It is possible all the a zones of a node are empty,and thus the update and the query operations failbecause the querying node node does not receiveany response. To deal with this problem, and inorder to reduce the effect of such cases on dataavailability, we propose a known rescue hash map-ping algorithm that maps each node A to a new setdenoted by H r

A.

4. Analysis

In this section, we use a common theoreticalframework to compare the scalability and the avail-ability of FSLS, HIGH-GRADE, GLS, DLM,SLURP, SLALoM, and CRLS under: (1) uniformand localized1 traffic patterns. The notations usedin this section are summarized in Table 1. We definefour metrics: location update cost, location quercost, storage cost and availability degree, whichare formally defined as follows:

• Location update cost (cu): The average number ofone-hop transmissions each node needs to per-form in a second to maintain fresh location infor-mation on the location servers.

Table 1Notations

pm Prob. that distance between 2 nodes is 6r

pa Prob. that a node is aliveC Battery power capacityg Prob. of establishing a link between 2 nodesPi Prob. of establishing a path of i hops between

two nodesmi Average number of nodes that are located in the same level-i square as A but

not in the same level-j such that j < i

qi Level-i square boundary crossing ratedi Distance between two random points in a level-i squareni Number of hops between two random points in a level-i squarez Average progress of each forwarding stepc1 Constant of random distance within a squarer0 The minimum transmission range for which the network

is connectedR Side length of a level-0 square

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1021

• Location query cost (cq): The average number ofone-hop transmissions due to location querieseach node needs to perform in a second.

• Storage cost (cs): The number of location recordsall the location servers store.

• Location availability (Ad): The probability that aquery operation acquires the location informa-tion of the queried node.

4.1. Scalability analysis

Woo and Singh [32] have proposed a theoreticalframework to analyze the scalability of a locationmanagement. Under this framework, n nodes arerandomly distributed in a region of area A. Nodesselect a random direction to move in, chosen uni-formly between [0,2p], and a random distance forwhich the move. each node also selects its speed v,chosen uniformly between [v � c,v + c]. The averagedegree of a node (i.e., node density) is constant, thearea A must grow with n. The area of each zone is a.Thus, The ad hoc network region is divided intoG ¼ ðAaÞ zones. The main observations from [32]are the following:

(1) The cost of broadcasting in a square by anode, b, is proportional to the number oftransmissions needed to cover the said square.Thus, b ¼ ð a

r2Þ, where r is the transmissionradius of a node.

(2) The distance a node has to cover to cross anunit square is proportional to the side of thatunit square. Thus, the number of zones a nodecrosses per second, q, is proportional to vffiffi

ap .

(3) Given two nodes separated by distance d, thenumber of hops needed to send a packet fromone node to the other is given by u ¼ d

z, wherez is the average forward progress made towarda destination in the course of one transmis-sion. z depends on rt and the average degreeof a node.

4.1.1. Location update cost

When a node moves out of its current zone andinto a new one, it generates an update message thatis sent to X ¼ ðp � aÞ zones. In addition, the updatepacket is sent to the server of its new zone. Whenthe update packet reaches a node of one of thosezones. If that node has not a cached route to thelocation server, it broadcasts a route discoverypacket to all nodes within the zone to establish aroute to the server. The cost of updating one serveris (b + u). The location update cost can be written as

cu ¼ Oðqðaðbþ uÞ þffiffiffiapÞÞ packets=s=node: ð4Þ

The average distance between two random points ina square of area A (i.e., u) is proportional to

ffiffiffiAp

[11]. The location servers incur additional overhead,since before they move into a new zone, they have toelect a new server. The election procedure requiresO(a) broadcasts. The total location update cost(cTu) is

cTu ¼ O q aAaðuþ 2bÞ þ n� A

a

� �ðuþ bÞ

� ���þ n

ffiffiffiap ��

packets=s: ð5Þ

Substituting q, u and b, we have

1022 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

cTu ¼ Oavffiffiffi

ap A

a

ffiffiffiApþ 2a

� �þ n� A

a

� � ffiffiffiApþ a

� �� ��þ v� n

�packets=s:

Recall that A is proportional to n, therefore, we get

cTu

¼ O ðavÞ nffiffiffiap þ n

32ffiffiffiap þ n

ffiffiffiap

!v� n

!packets=s:

We hold a as constant, therefore, we get

cTu ¼ O vnffiffiffiap þ n

32ffiffiffiap þ n 1þ

ffiffiffiap ! !

packets=s:

Minimizing cTu with respect to a, we havea ¼ Oð ffiffiffinp Þ and thus the total location update cost is

cTu ¼ O v n54 þ nþ n

34

� �� �¼ Oðvn

54Þ packets=s:

Therefore, the location update cost isOðv

ffiffiffin4pÞ packets=s=node.

4.1.2. Location query cost

When a node wishes to find the location of a spe-cific target node, it sends a query packet to b zones.When a node of the target zones receives the packet,and it has not cache to its location server, it broad-casts a route discovery packet to all nodes withinthe zone. The cost of performing this query is(u + b). If the query packet is of high accuracy,the location servers need to contact the queriednode itself. We assume that queries with high andlow accuracy are issued by each node at a Poissonrate of kH query/sec and kL query/s respectively.The query cost (cq) is

cq ¼ OðbðkLðuþ bÞ þ 2kHðuþ bÞÞÞ� packets=s=node; ð6Þ

cq can be written as

cq ¼ OðbðkL þ 2kHÞðffiffiffinpþ aÞÞ packets=s=node;

kH, and kL are constant, therefore, eliminating termsand substituting a with

ffiffiffinp

, we get

cq ¼ bffiffiffinp

¼ Offiffiffinp

packets=s=node:

If the querying node and the target node both residein the same zone, The query packet traverses a dis-tance of Oð ffiffiffiap Þ. So, the query cost for localized traf-fic is Oð ffiffiffin4

p Þ packets=s=node.

4.1.3. Storage cost

Each location server stores ða�nG Þ records, and

there exist G location servers. As a is constant, thestorage cost is proportional to n.

4.2. Availability analysis

4.2.1. ModelThe probability density function (pdf) of the dis-

tance S between two nodes with uniformly distrib-uted node is given by [5]:

fSðsÞ ¼bs

9p18p� 36 arcsin

bs2

� �� 9bs ffiffiffiffiffiffiffiffiffiffiffiffiffi

4� bs2p� �

;

where bS ¼ Sa, and a ¼

ffiffiAp

q.

We assume that all nodes have the same trans-mission radio range. Two nodes establish a link ifthey are located within distance of r of each other.The probability that the distance between two nodesis less than or equal to r is given by [12]:

pm ¼ PðS 6 rÞ ¼Z r

0

fSðsÞds:

We use a birth–death process for modeling changesin the amount of residual battery power at a mobilenode. We denote with Qk the state of the systemwhen the residual battery power R is k Joules. Fromthe state Qk, birth-death process may transit only instate Qk+1 and state Qk�1, or remain in the state Qk

during time interval Dt. R is increased with the rateof kJ/s, and it is decreased with the rate of lJ/s, suchthat k < l. The battery power capacity is denoted byC.

Using Kendall’s notation [4], we describe the sys-tem by using M/M/1/C queuing system. By assum-ing equilibrium in the system, we may apply globalbalance equations. We denote by Pi the steady stateprobability that the system is at state Ei.

Pi ¼1� k

l

1� kl

� �Cþ1

kl

� �i

0 6 i 6 C

The probability that a node is alive is given by

pa ¼XC

i¼1

Pi ¼ 1�P0 ¼kl� ðkl Þ

Cþ1

1� ðkl ÞCþ1

A link (X,Y) is formed if both endpoints X and Y

are alive and they are within the transmission rangeof each other. The probability of establishing a linkis obtained as: g ¼ pm � p2

a.If the two nodes are not neighbors, they can indi-

rectly communicate with each other by using theintermediate nodes. Two arbitrary nodes in the

4

n

4

n

4

n

4

n

4

n

4

n

Level-3 squareBoundary

Level-2 squareBoundary

FSLS's zone Boundary

Level-0 squareBoundary

Fig. 7. Node distribution in the network.

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1023

network with n nodes connected by i hops through(i � 1) intermediate nodes. There are (n � 2) waysthat any arbitrary (source, destination) pair canset up a path of two hops, (n � 2)(n � 3) ways toset up a path of three hops, and(n � 2)(n � 3) . . . (n � i) ways to set up a path of i

hops. Thus, the probability of establishing a pathof i hops is given by

P i ¼ Kigi; 1 6 i 6 n� 1;

where

gi ¼ paðpapmÞi

K1 ¼ 1

Ki ¼ ðn� iÞKi�1; 2 6 i 6 n� 1:

The network is connected if and only if there is apath between each pair of nodes. The probabilitythat the network is connected is then obtained asPc ¼

Pn�1i¼1 P i.

For a given, n, there is r0 such that:Pn�1i¼1 Kigiðr0Þ ¼ 1, where r0 is the minimum trans-

mission range for which the network is connected.For any r > r0, there is a n 0 < n � 1 such that:Pn0�1

i¼1 P i < 1, andPn0

i¼1P i P 1. Therefore, Pi is givenby

P i ¼

KigiðrÞ if 1 6 i 6 n0 � 1

1�Pn0i¼1

KigiðrÞ if i ¼ n0

0 if n0 < i 6 n� 1:

8>>><>>>:In [12], it is shown that the pm is increasing functionof the transmission radio range r. It is easy to seethat Pi is dependent on the number of nodes n,and the transmission range.

Here we can distinguish two cases: {Pi} is adecreasing or an increasing sequence.

We will prove by induction that if (n � 2)g < 1,then {Pi} is a decreasing sequence for everyi 2 [2,n 0 � 1].

Proof. Base case: i = 2, we get P2 = (n � 2)P1 < 1,and hence P2 < P1.

Inductive Hypothesis: Let us assume that {Pi} is adecreasing sequence for every l such that: 2 6 l 6 i.We shall now prove that {Pl} is a deceasingsequence for l = i + 1.

Pi can be written as follows: Pi = (n � i)g Pi�1.As Pi < Pi�1, then (n � i)g < 1. We have also:Pi+1 = (n � (i + 1))g Pi, and as (n � (i + 1))g <(n � i)g < 1, then Pi+1 < Pi. Therefore, {Pi} is adeceasing sequence for every l such that: 2 6 l 6

n 0 � 1. h

We can easily show that if (n � i)g > 1 for everyi 2 [2,n 0 � 1], then {Pi} is an increasing sequence.

In hierarchical-based location services (HIGH-GRADE, DLM, and GLS), the entire network areais called a level H square. The level H square isdivided into four quadrants, called the level-(H � 1) squares, each of which is further dividedinto four quadrants as well, so and so on forth, untilthe entire region is divided into 4H level-0 square.The side length of a level-0 square is denoted byR ¼

ffiffiAp

2H .The average number of nodes mi (see Fig. 7) that

are located in the same level-i square as A but not inthe same level-j such that j < i, can be easilyobtained as follows:

mi ¼3n

4H�iþ1 if 1 6 i 6 Hn

4H � 1 if i ¼ 0:

(

We can obtain that:PH

i¼0mi ¼ n� 1.In [12], the expected distance between two ran-

dom points in a level-i square is

EðdiÞ ¼ 2iRR 1

0

R 1

0

R 1

0

R 1

0

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiðx1 � x2Þ2 þ ðy1 � y2Þ

2q

�dx1dx2dy1dy2

¼ c12iR � 0:5214� 2iR:

The average number of hops a query packet takesfrom node B to level-i location server is

1024 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

EðniÞ ¼EðdiÞ

z¼ c1R

z

� �� 2i ¼ /2i:

4.2.2. HIGH-GRADE

In HIGH-GRADE, If nodes A and B are co-located in the same level-i square, the query is for-warded sequentially from pLSP0,pLSP1,� � � up topLSPi (LSPi) then to LSPi�1 until LSP0. In thiscase, the probability AdHG

i that a node B obtainsA’s exact location information is

AdHGi ¼

Qj¼i

j¼0

P/2j �Qj¼1

j¼iP/2j ;

¼ P/

Qj¼i

j¼1

P 2/2j :

4.2.3. GLSIn GLS, each mobile node may designate nodes

in each sibling region with IDs closest to its ownID to serve as its location servers. When a node B

wants to find the location of A, it sends a querypacket toward a node whose ID is the least greaterthan or equal to the A’s ID within the order-1square. The query packet is then re-sent to the nodein the next order square in the grid hierarchy, whoseID is the least greater than or equal to the A’s IDwithin the order-2 square, and so on.

If i is the level of the minimum common square A

and B are co-located, the probability AdGLSi that a

node B obtains A’s exact location information.

AdGLSi ¼

Yj¼i

j¼0

P/2j :

4.2.4. DLM

DLM partitions the entire network like GLS.There are H + 1 levels of squares. The location serv-ers are distributed uniformly across the network,one server in every level-k square. If the server islocated in the same level-k square as A, the completelocation information is stored. When a node Bwants to find the location of A, and the partialaddress policy is used, a query packet is sent towardthe location server of its level-k square. If the com-plete address of A is found, the query is complete.Otherwise, the server of A indicates which level-jsquare A is in such that j > k.

If i is the level of the minimum common square A

and B are co-located, the probability AdDLMi that a

node B obtains A’s exact location information is

AdDLMi ¼ P/2k

Yj¼H

j¼k

P/2j :

4.2.5. SLURP

In SLURP, the query packet is forwarded to A’shome square. The probability to retrieve A’s loca-tion information is AdSLURP ¼ P/2H .

4.2.6. SLALoM

The probability that a node B obtains A’s exactlocation such that A’s home square is in the level-1 square B is in, is given by AdSLALoM

1 ¼ P K/ffiffiGp 2H .

If A’s home square is in the level-2 square B is in,then AdSLALoM

2 ¼ P K/ffiffiGp 2H � P/2H .

4.2.7. CRLS

The FACE algorithm guarantees that that readand the write quorums will intersect if the networkis connected. Therefore, the probability to retrieveA’s location information is AdCR = Pc. If r > r0,then AdCR = 1.

4.2.8. FSLS

If B and A are not in the same zone (i.e., farawaydestination nodes), B sends a query packets to (b)zones. The average number of hops each querypacket traverses to reach each of the b servers isE(nH). The probability that B accesses a single far-away server is: P/2H , and the probability that at leastone zone responds is

AdFSLS ¼Xk¼b

k¼1

b

k

� �P k

/2H ð1� P/2H Þb�k

¼ 1� ð1� P/2H Þb:

We can use a Taylor series approximation forAdFSLS, we obtain

AdFSLS ¼ bP/2H :

B retrieves A’s location information from the serverof its current zone only if B and A are located in thesame zone (i.e., nearby destination nodes), and theserver is reachable. The probability that both nodesare in the same zone is 1

G, and the average number ofhops between two nodes in a zone is ð c1R

zffiffiffiGp Þ2H , and

therefore, AdFSLS ¼ P /ffiffiGp 2H .

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1025

AdFSLS ¼

P /ffiffiGp 2H if B is in A’ s zone

ðnearby destinationsÞbP/2H if B is not in A’s zone

ðfaraway destinationsÞ:

8>>>><>>>>:

4.3. Comparison

We will compare the availability degree of FSLSwith that of HIGH-GRADE, GLS, DLM, SLURP,SLALoM, and CRLS when {Pi} is a decreasing andan increasing sequence.

We note that AdFSLS > AdSLURP, andAdFSLS < AdCR in both cases: decreasing andincreasing sequence.

4.3.1. Case 1: {Pi} is an increasing sequence

P/2H > P/2j80 < j < H � 1, and hence AdFSLS isgreater than AdHG

j , AdGLSj , and AdDLM

j 8j 2 ½0;H �.In case of nearby destinations: AdSLALoM

1 >AdFSLS. Thus, for

ffiffiffinp

nodes, the probability thatFSLS obtains A’s location information is less thanthat of SLALoM.

4.3.2. Case 2: {Pi} is a decreasing sequence

We assume that the FSLS’s zone is less than thelevel � (H � 1) square, and greater than the level-0square. For the sake of simplicity, FSLS’s zone isdepicted as level-1 square in Fig. 7.

If A is located in the same level-H as B (farawaydestination), we have

AdHGH ¼ P/

Yj¼H�1

j¼1

P 2/2j

!� P 2

/2H ¼ CHG � P 2/2H ;

AdGLSH ¼ P/2H �

Yj¼H�1

j¼0

P/2H ¼ CGLS � P/2H ;

AdDLMH ¼ P/2k

Yj¼H�1

j¼k

P/2j

!� P/2H ¼ CDLM � P/2H :

AdFSLS is greater than AdHGH , AdGLS

H , and AdDLMH ,

since b is greater than CHG, CGLS, and CDLM.Therefore, for ð3n

4Þ nodes (i.e., 75% of nodes), the

probability that FSLS obtains A’s location informa-tion is higher than that of HIGH-GRADE, GLS,and DLM.

If A is located in B’s zone (i.e., nearby destination),AdFSLS is greater than AdHG

/ffiffiGp , AdGLS

/ffiffiGp , and AdDLM

/ffiffiGp .

A zone containsffiffiffinp

nodes, so for 3ffiffinp

4, the

probability that FSLS obtains A’s location informa-

tion is higher than that of HIGH-GRADE, GLS,and DLM.

As for SLURP, we can easily deduce that theavailability degree of SLURP is lower than that ofFSLS.

As for SLALoM, we have two cases:

• In case of faraway destination nodes: AdSLALoM2 <

AdFSLS.• In case of nearby destination nodes, AdSLALoM

1 <AdFSLS.

4.4. Discussion

We summarize the scalability metrics of the sevenlocation services in Table 2. The different costs ofHIGH-GRADE, GLS, DLM, SLURP, and SLA-LoM are provided in [36]. The update location costin FSLS is asymptotically better than GLS, DLM,SLURP and SLALoM, and CRLS. It is also asymp-totically better than HIGH-GRADE whenn 2 [5,5500]. We observe that FSLS improves thequery location cost over SLURP, GLS, DLM,and SLALoM. It reduces query latency by limitingthe distance a query packet traverses. Locationinformation of nodes residing in the same zone asthe querying nodes can be obtained within time per-iod lower than that of SLURP. Using the unreach-able zone list, FSLS reduces the number ofmessages generated to perform an update or a queryoperation. Moreover, it can incurs low query cost(i.e.,

ffiffiffin4p

) if the faraway servers are unreachable,and the querying and the queried nodes are in thesame zone. FSLS outperforms the other five loca-tion services in terms of storage cost, since it is clas-sified as a some-for-some approach.

Table 3 gives the number of queried nodes forwhich the location availability of each location ser-vice is less than that of FSLS. The two-level andhierarchical approaches gives lower availabilitydegree than FSLS for the majority of queried nodes,because they impose on querying node to contact achain of servers in a certain order. If one of theseservers are unreachable, the query operation cannotbeing carried out, whereas in FSLS, it is sufficientthat at least one server responds to get the locationinformation of the queried node. SLURP gives lowlocation availability in comparison with FSLS sinceit queries only one region. CRLS outperforms theother location services in terms of location availabil-ity. However, this comes at the cost of increasingupdate, query, and storage costs.

Table 2Location service performance comparison

HIGH-GRADE GLS DLM SLURP SLALoM CRLS FSLS

Location O(vlogn) OðvffiffiffinpÞ Oðv

ffiffiffin3pÞ Oðv

ffiffiffinpÞ Oðv

ffiffiffin3pÞ Oðv

ffiffiffinpÞ Oðv

ffiffiffin4pÞ

Update cost

Location OðffiffiffinpÞ Oð

ffiffiffinpÞ Oð

ffiffiffin3pÞ Oð

ffiffiffinpÞ Oð

ffiffiffin3pÞ Oðv

ffiffiffinpÞ Oð

ffiffiffinpÞ

Query cost (Uniform) (Uniform) (Both) (Both) (Both) (Both) (Uniform)O(logn) O(logn) Oð

ffiffiffin4pÞ

(Localized) (Localized) (Localized)

Storage cost O(nlogn) O(nlogn) Oðnffiffiffiffiffin23pÞ Oðn

ffiffiffinpÞ Oðn

ffiffiffin3pÞ Oðn

ffiffiffinpÞ O(n)

Table 3Number of nodes for which the location Availability of the service is less than that of FSLS

HIGH-GRADE GLS DLM SLURP SLALoM CRLS

Case 1 n n n n n� ffiffiffinp

0Case 2 3

4 ðnþffiffiffinpÞ 3

4 ðnþffiffiffinpÞ 3

4 ðnþffiffiffinpÞ n n 0

1026 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

5. Simulation results

In this section, we study the performance of theproposed service using GloMoSim simulator [37].All nodes have a transmission range of 250 m. Theymove according to the waypoint mobility model. Inthis model, a node randomly selects a location andmoves toward it with a constant speed uniformlydistributed between zero and a maximum speedVmax, then it stays stationary during a pause timeof 1 second before moving to a new randomlocation. Initially, each mobile node has a batterycapacity of 400 J. We have implemented three loca-tion services, which are: (1) CRLS [30], (2) HIGH-GRADE [35], and (3) FSLS. We have also imple-mented a geographic routing protocol called GFGin [6], and GPSR in [17].

Since the performance of FSLS is dependant onthe selection of a, we decided to simulate threeversions of FSLS, with a = 2, a = 4 and a = 6 (here-after called FSLS-2 and FSLS-4, and FSLS-6)respectively.

More than the update location cost and the querylocation cost defined in Section 4, the following met-rics are evaluated for the location service protocols.

(1) Location availability: is defined as the percent-age of success queries over the total number ofqueries issued.

(2) Service lifetime: The time until all the locationservers run out of power.

All of our simulations are conducted without anydata traffic, which discard the factors affecting node

lifetime, and hence allows us to better judge the per-formance of services. To study the performance ofthe service for network scalability and node mobil-ity. We have carried out two sets of simulations.The first study fixes the node density to be 100nodes/km2 and Vmax to be 10 m/s while varying hetotal number of nodes in the network. In FSLS, anetwork size of 2 km2 is divided into zones of500 m. The length of the zone is increased by 50 mas the network length is increased by 1000 m. Thesecond study evaluates the location services in asquare of 3 km2 consisting of 300 nodes by varyingthe average node speed.

Fig. 8a shows the location update cost as a func-tion of n. Location update cost is the number oflocation update packets that are originated at orare forwarded by a node per second. CRLS hasthe highest overhead among all three protocols.This is primarily due to the fact that the length ofrows and columns is increased. HIGH-GRADEhas a lower number of updates than CRLS. How-ever, it incurs more update than FSLS-2, andFSLS-4 because as network size is increased from2 km2 to 6 km2, the hierarchical level H is increasedfrom 3 to 5. In HIGH-GRADE, whenever a nodecrosses level-i square boundary, it needs to updateall its level-j servers for i P j � 1, and as H

increases, HIGH-GRADE needs to update moreservers. In FSLS, as the network size is increased,the zone size is increased, which decreases the fre-quency at which each node generates an updatepacket, but update packets take longer paths whichmakes FSLS grows as n increases. Since the updatecost of HIGH-GRADE increases only logarithmi-

0

0.5

1

1.5

2

2.5

3

200 250 300 350 400 450 500 550 600

Upd

ate

cost

(pa

cket

s/no

de/s

ec)

Number of nodes

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

0

0.5

1

1.5

2

2.5

3

3.5

5 10 15 20 25

Upd

ate

cost

(pa

cket

s/no

de/s

ec)

Vmax (m/s)

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

Fig. 8. Update cost.

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1027

cally with the number of nodes, it performs betterthan FSLS-6.

Fig. 8b shows the location update cost as a func-tion of maximum node speed. CRLS scales worseasymptotically than FSLS and HIGH-GRADE.This can be explained as follows: as nodes movemore rapidly, the network topology changes morefrequently, and CRLS generates update packets ata higher frequency than that of HIGH-GRADEand FSLS. HIGH-GRADE generates an updatepacket each time it crosses a level-0 square bound-ary (i.e., side length is 182.5 m), whereas FSLS gen-erates an update packet each time it crosses a zoneboundary (side length is 600 m). We can notice thatthe update frequency of FSLS is less three timesthan that of HIGH-GRADE. For this reason,FSLS-2 and FSLS-4 perform better than HIGH-GRADE, but FSLS-6 performs worse thanHIGH-GRADE since it sends each update packetto six zones.

Fig. 9a shows the location query cost as a func-tion of n. Location query cost is the number of loca-

0.02

0.04

0.06

0.08

0.1

0.12

0.14

200 250 300 350 400 450 500 550 600

Que

ry c

ost (

pack

ets/

node

/sec

)

Number of nodes

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

Fig. 9. Quer

tion query packets that are originated at or areforwarded by a node per second. CRLS has thehighest overhead among all three protocols for thesame reason discussed in reference to Fig. 8a.HIGH-GRADE transmits more query packets thanFSLS because the majority of the queried nodes arenot close to the querying node, and the query packethas to travel high up and low down in the hierarchyto retrieve the queried node’s location information.On the other hand, FSLS tries to reduce the numberzones targeted by each query operation.

Fig. 9b shows the location query cost as a func-tion of maximum node speed. From the figure, wecan notice that node speed has much effect on thequery cost. This validates our analytic results.

Fig. 10a shows the location availability as a func-tion of n. CRLS outperforms FSLS and DLMbecause the intersection of row and column isguaranteed if the network is not partitioned. FSLSoutperforms HIGH-GRADE because its locationservers replicates their location tables onto a newnode before they leave their zones or run out of

0.02

0.04

0.06

0.08

0.1

0.12

5 10 15 20 25

Que

ry c

ost (

pack

ets/

node

/sec

)

Vmax (m/s)

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

y cost.

0.75

0.8

0.85

0.9

0.95

1

200 250 300 350 400 450 500 550 600

Loca

tion

avai

labi

lity

Number of nodes

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

0.75

0.8

0.85

0.9

0.95

1

1.05

5 10 15 20 25

Loca

tion

avai

labi

lity

Vmax (m/s)

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

Fig. 10. Location availability.

1

2

3

4

5

6

200 250 300 350 400 450 500 550 600

Ser

vice

life

-tim

e (h

rs)

Number of nodes

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

1

1.5

2

2.5

3

3.5

4

5 10 15 20 25

Ser

vice

life

-tim

e (h

rs)

Vmax (m/s)

RCLSHIGH-GRADE

FSLS-2FSLS-4FSLS-6

Fig. 11. Service life-time.

1028 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

power. This technique improve the service reliability.The location information in this case is more likely tobe available in the zone. In contrast to FSLS, HIGH-GRADE does not deal with the depletion of node’spower. Moreover, To obtain the exact location of anode, HIGH-GRADE has to access a chain of loca-tion servers in a certain order. If any single square inthis chain is empty, the query operation fails. Thelocation availability of CRLS is slightly affected byincreasing number of nodes, whereas that of FSLSand HIGH-GRADE decreases as n increases. Thisis due to the fact that the query packets in FSLStakes longer routes and that in HIGH-GRADEhas to reach more location servers. We can alsonotice, that as a increases, the location availabilityof FSLS also increases. Fig. 10b shows the locationavailability as a function of maximum node speed.Location availability of the location servicesdecreases as n increases because it might happen thatquery packets do not reach their location servers, orsome servers have stale information because of miss-

ing location information on these servers.HIGH-GRADE is more affected by node mobility thanthe other protocols, because the mobility of locationservers of a certain level increases query failures. Todeal with this case, the departed server replicates itslocation information on another node.

Fig. 11 shows the service lifetime experienced bythe location services. As CRLS generates morepackets, its location servers will die earlier thanthose of HIGH-GRADE and FSLS. FSLS per-forms better than HIGH-GRADE because the loca-tion servers replicate their location tables onto anew elected location server before they disappearfrom their zones, which considerably increases thelifetime of FSLS.

6. Conclusion

In this paper we have presented (FSLS), a newlocation service aiming at making tradeoffs betweenscalability and location availability. FSLS combines

A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030 1029

the hash-based sets system and a flat hashing-based structure to select zones where location infor-mation will be stored. A new server is elected whenthe current server is about to leave the zone or runout of power, which improves the service reliability,and increases significantly the service lifetime. Wehave analyzed the scalability and the availabilityof FSLS as well as six other location services. Anal-ysis has shown that FSLS offers a good trade-offbetween location availability and scalability. Itcomes second after CRLS in terms of location avail-ability, and it is the closest competitor to HIGH-GRADE in terms of scalability. The analysis resultshave been further supported by simulationexperiments.

References

[1] S. Apkun, M. Hamdi, J. Hubaux, Gps-free positioningin mobile ad hoc networks, in: Proceedings of the 34thHawaii International Conference on System Sciences,2001.

[2] S. Apkun, M. Hamdi, J.P. Hubaux, Gps-free positioning inmobile ad-hoc networks, Cluster Computing Journal 5 (2)(2002).

[3] S. Basagni, I. Chlamtac, V.R. Syrotiuk, B.A. Woodward, Adistance routing effect algorithm for mobility (dream), in:Proceedings of the ACM/IEEE International Conference onMobile Computing and Networking (MOBICOM), 1998,pp. 76–84.

[4] Gunter Belch, Stefan Greiner, Hermann de Meer, Kishor S.Trivedi, Queueing Networks and Markov Chains: Modelingand Performance Evaluation with Computer Science Appli-cations, John Wiley & Sons, Inc., 1998.

[5] Christian Bettstetter, Topology properties of ad hoc net-works with random waypoint mobility. In MOBIHOC03,June 2003.

[6] Prosenjit Bose, Pat Morin, Ivan Stojmenovic, Jorge Urrutia,Routing with guaranteed delivery in ad hoc wirelessnetworks, in: Third International Workshop on DiscreteAlgorithms and Methods for Mobile Computing and Com-munications, 1999.

[7] N. Bulusu, J. Heidemann, D. Estrin, GPS-less low-costoutdoor localization for very small devices, IEEE PersonalCommunications 7 (5) (2000) 28–34.

[8] T. Camp, J. Boleng, L. Wilcox, Location informationservices in mobile ad hoc networks, in: Proceedings of theIEEE International Conference on Communications (ICC),2001, pp. 3318–3324.

[9] C.T. Cheng, H.L. Lemberg, S.J. Philip, E. van den Berg, T.Zhang, Slalom: a scalable location management scheme forlarge mobile ad-hoc networks, in: Proceedings of IEEEWireless Communications and Networking Conference,March 2002.

[10] Saumitra M. Das, Himabindu Pucha, Charlie Hu, Perfor-mance comparison of scalable location services for geo-graphic ad hoc routing, in: Proceedings of IEEE INFOCOM2005, March 2005.

[11] S.R. Dunbar, The average distance between points ingeometric figures, College Mathematics Journal 28 (3)(1997) 187–197.

[12] Golnaz Farhadi, Norman C. Beaulieu, On the connectivityand average delay of mobile ad hoc networks, in: IEEEInternational Conference on Communications (ICC 2006),2006.

[13] Zygmunt J. Haas, Ben Liang, Ad hoc mobility managementwith uniform quorum systems, IEEE/ACM Transactions onNetworking 7 (2) (1999) 228–240.

[14] R. Jain, A. Puri, R. Sengupta, Geographical routing usingpartial information for wireless ad hoc networks, IEEEPersonal Communications (2001) 48–57.

[15] M. Joa-Ng, I.-T. Lu, A peer-to-peer zone-based two-levellink state routing for mobile ad hoc networks, IEEE Journalon Selected Areas in Communications 17 (1999) 14151425.

[16] E. Kaplan, Understanding GPS, Artech House, Norwood,MA, 1996.

[17] B. Karp, H.T. Kung, Gpsr: Greedy perimeter statelessrouting for wireless networks, in: Proceedings of the ACM/IEEE International Conference on Mobile Computing andNetworking (MOBICOM), 2000, pp. 243–254.

[18] Goutham Karumanchi, Srinivasan Muralidharan, RaviPrakash, Information dissemination in partitionable mobilead hoc networks, in: Symposium on Reliable DistributedSystems, 1999, pp. 4–13.

[19] Y. Ko, N.H. Vaidya, Location-aided routing (lar) in mobilead hoc networks, in: Proceedings of the ACM/IEEEInternational Conference on Mobile Computing and Net-working (MOBICOM), 1998, pp. 66–75.

[20] Hyunyoung Lee, Jennifer L. Welch, Nitin H. Vaidya,Location tracking with quorums in mobile ad hoc networks,Ad Hoc Networks, Elsevier Science, November 2003, 1(4),pp. 371–381.

[21] J. Li, J. Jannotti, D. De Couto, D. Karger, R. Morris, Ascalable location service for geographic ad hoc routing, in:Proceedings of the ACM/IEEE International Conference onMobile Computing and Networking (MOBICOM), 2000,pp. 120–130.

[22] W.-H. Liao, Y.-C. Tseng, J.-P. Sheu, Grid: a fully location-aware routing protocol for mobile ad hoc networks, Tele-communication Systems 18 (2001) 6184.

[23] X. Lin, I. Stojmenovic, Edir: Loop-free location basedrouting in wireless networks, in: Proceedings of IASTEDInternational Conference on Parallel and Distributed Com-puting and Systems, 1999, pp. 1025–1028.

[24] Xinwei Luo, Tracy Camp, William Navidi, Predictivemethods for location services in mobile ad hoc networks.in: Proceedings of 19th IEEE International Parallel andDistributed Processing Symposium (IPDPS’05), 2005.

[25] Dahlia Malkhi, Michael K. Reiter, Avishai Wool, RebeccaN. Wright, Probabilistic quorum systems, Information andComputation 170 (2) (2001) 184–206.

[26] M. Mauve, J. Widmer, H. Hartenstein, A survey on position-based routing in mobile ad hoc networks, IEEE Network 15(6) (2001) 30–39.

[27] Sumesh J. Philip, Joy Ghosh, C. Qiao, Performance evalu-ation of a multilevel hierarchical location managementprotocol for ad hoc net works. Elsevier Computer Commu-nications, Special issue on Performance Issues of WirelessLANs, PANs, and Ad Hoc Networks, 8(10):1110–1122,2005.

1030 A. Derhab, N. Badache / Ad Hoc Networks 6 (2008) 1013–1030

[28] Boon-Chong Seet, Yan Pan, Wen-Jing Hsu, Chiew-TongLau, Multi-home region location service for wireless ad hocnetworks: An adaptive demand-driven approach. in: Pro-ceedings of the Second Annual Conference on Wireless On-demand Network Systems and Services (WONS’05), 2005,pp. 258–263.

[29] I. Stojmenovic, Home agent based location update anddestination search schemes in ad hoc wireless networks.Technical Report TR-99-10, University of Ottawa, Septem-ber 1999.

[30] I. Stojmenovic, A scalable quorum based location updatescheme for routing in ad hoc wireless networks. TechnicalReport TR-99-09, University of Ottawa, September, 1999.

[31] I. Stojmenovic, X. Lin, Loop-free hybrid single-path/flood-ing routing algorithms with guaranteed delivery for wirelessnetwork, IEEE Transactions on Parallel and DistributedSystems 12 (2001).

[32] S.-C. Woo, S. Singh, Scalable routing protocol for ad hocnetworks, ACM Wireless Networks 7 (5) (2001) 513–529.

[33] Y. Xue, B. Li, K. Nahrstedt, A scalable location manage-ment scheme in mobile ad-hoc networks. in: Proceedings ofthe IEEE Conference on Local Computer Networks(LCN2001), Tampa, FL, November 2001.

[34] L. Blazeviyc, L. Buttyyan, S. apkun, S. Giordano, J.-P.Hubaux, J.-Y. Le Boudec, Self organization in mobile ad hocnetworks: the approach of terminodes, IEEE Communica-tions Magazine 39 (6) (2001) 166–174.

[35] Yinzhe Yu, Guor-Huar Lu, Zhi-Li Zhang, Enhancinglocation service scalability with high-grade, in MASS, 2004.

[36] Yinzhe Yu, Guor-Huar Lu, Zhi-Li Zhang, Location servicein ad-hoc networks: Modeling and analysis. in: InternationalWorkshop on Theoretical Aspects of Wireless Ad hoc,Sensor and Peer-to-Peer Networks, June 2004.

[37] X. Zeng, R. Bagrodia, M. Gerla. Glomosim: A library forparallel simulation of large-scale wireless networks. in:

Workshop on Parallel and Distributed Simulation, pages154–161, 1998.

Nadjib Badache obtained the EngineerDegree in computer science from Uni-versity of Constantine, Algeria in 1978,and the Master Degree from University ofSciences and Technology Houari Boum-mediene (USTHB), Algiers, in 1982. In1995, he joined The ADP research groupat the IRISA institute in France, where heprepared a PhD Thesis on causal orderingand fault tolerance in mobile environ-ment. He obtained his PhD from USTHB

in 1998. He is currently a Professor at the computer sciencedepartment of USTHB, where he is also the head of the LSI lab-

oratory. He is author of many papers, and he supervised manythesis and research projects. His research interests are distributedmobile systems, mobile ad hoc networks and security.

Abdelouahid Derhab received the Engi-neer, Master, and PhD degrees in com-puter science from University ofSciences and Technology HouariBoummediene (USTHB), Algiers, in2001, 2003, and 2007 respectively. He iscurrently an associate researcher in theDepartment of Computer Engineeringat CERIST (CEntre de Recherche surl’Information Scientifique et Technique),Algiers. His interest research areas are

distributed algorithms in ad-hoc networks, data replication, andsecurity.