Aligned Virtual Coordinates for Greedy Geometric

0 downloads 0 Views 1MB Size Report
the void. This approach is continued until a node closer to the destination than the void origin is encountered; at this stage, operation switches back to greedy ...
Aligned Virtual Coordinates for Greedy Geometric Routing in Wireless Sensor Networks Ke Liu and Nael Abu-Ghazaleh* Computer Science Dept., State University of New York at Binghamton E-mail: {kliu,nael}@cs.binghamton.edu *Corresponding author

Abstract: The performance of geographic routing protocols is impacted by physical voids and localization errors. Traversing voids is carried out by a complimentary algorithm, which requires high overhead and results in lower quality paths. Furthermore, localization errors lead to inefficient routes or even misrouting of packets. Accordingly, virtual coordinate systems (VCS) were proposed to be an alternative solution that is resilient to localization errors and naturally traverses physical voids. However, we show that VCS is vulnerable to different forms of anomalies and actually perform worse than physical coordinates. The goal of this paper is to increase the success of greedy forwarding in VCS, to avoid using the expensive complementary algorithm. We identify some of the reasons that cause anomalies in VCS and propose an aligned virtual coordinate system (AVCS) to address them. AVCS aligns the coordinates of nodes by taking into account the coordinates of their neighbors. With AVCS, greedy routing success is significantly improved, approaching perfect delivery for many scenarios. With our approach, and for the first time, we show that greedy routing on VCS out performs that on geographic coordinate systems even in the absence of localization errors. We compare AVCS against some of the most popular geometric routing protocols both on geographic and virtual coordinate systems and show that AVCS significantly improves performance over the best known solutions. Keywords: wireless sensor networks, geographic routing, virtual coordinates Biographical notes: Ke Liu received his B.S. in Computer Science from Fudan University, Shanghai, China, in 2000, and his M.S from the State University of New York at Binghamton in 2005. He is currently working towards his Ph.D. in Computer Science. His research interests include wireless sensor networks: routing, security, and scheduling.

1 Introduction

destinations of active routes; this state may become invalid due to changes that are not near to the node. Finally, because of the need to maintain non-local state, this approach requires that the nodes have globally unique identifiers. As a result, this approach is not ideal for WSNs which favor routing protocols that support datacentric operation (e.g., global identifiers not necessary), localized interactions (e.g., maintaining only local state) and supporting arbitrary data-driven dissemination with in-network processing.

Traditional ad hoc routing protocols, such as Ad hoc On-demand Distance Vector (AODV) Perkins and Royer (1999), are not a good fit for Wireless Sensor Networks (WSN) for the following reasons. WSNs often require data dissemination patterns that are not efficiently mapped to the unicast connections assumed by ad hoc protocols. Further, nodes need to maintain routing state specific to

1

In contrast to traditional ad hoc protocols, Geographical routing algorithms Bose et al (1999); Karp and Kung (2000); Fotopoulou-Prigipa and McDonald (2004); Kim et al (2005), provides attractive properties for WSNs. In these algorithms, nodes exchange location information with their neighbors. Packets addressed to a destination must provide its location. At every intermediate hop, the subset of the neighbors that are closer to the destination is called the forwarding set (FS). Routing simply forwards a packet to one of the nodes in FS. This process is repeated greedily until the packet reaches the destination. Thus, interactions are localized to location exchange with direct neighbors and there is no need for global identifiers. Geographical routing protocols suffer from significant problems under realistic operation. First, voids – intermediate nodes whose FS relative to a destination is empty – can cause the greedy algorithm to fail Bose et al (1999); Karp and Kung (2000); Fang et al (2004); FotopoulouPrigipa and McDonald (2004). Voids require a somewhat complex and inefficient complementary perimeter routing algorithm that is invoked when they are encountered, which requires more information additional to the location of neighbors Kim et al (2005). Moreover, geographic routing has been shown to be sensitive to localization errors He et al (2003), especially in the perimeter routing phase Kim et al (2005); Seada et al (2004); such errors can cause routing anomalies ranging from suboptimal paths to loops and failure to deliver packets. It is very difficult and complicated to make it practical Kim et al (2005) even if it is not impossible. Routing based on Virtual Coordinate Systems (VCS) have been recently proposed Moscibroda et al (2004); Cao and Abdelzaher (2004); Nicol et al (2004); Caruso et al (2005); Fonseca et al (2005). A VCS overlays virtual coordinates on the nodes in the network based on their distance (typically in number of hops) from fixed reference points; the coordinates are computed via an initialization phase. These coordinates serve in place of the geographic location for purposes of Geographic forwarding; that is, in these algorithms the FS is the set of nodes that are closer (based on different types of coordinate distances) to the destination than the current node. Because it does not require precise location information, VCS is not sensitive to localization errors. Further, it is argued that VCS is not susceptible to conventional voids because the coordinates are based on connectivity and not physical distance Cao and Abdelzaher (2004). On the negative side, VCS may be sensitive to collisions and or signal fading effects in the initialization phase. Furthermore, the initialization phase requires a flood from each reference point. Finally, the coordinates should be adapted periodically if the network

is dynamic. These issues are not present in geographical routing. Most existing research work about geographical routing protocols concentrates on how to optimize the complementary routing such as perimeter routing in a physical coordinate system Karp and Kung (2000); Bose et al (1999); Kim et al (2005), or backtracking in VCS Moscibroda et al (2004); Nicol et al (2004); Cao and Abdelzaher (2004); Fonseca et al (2005); Liu and Abu-Ghazaleh (2006a). The dominate part of the geographical routing, greedy forwarding, is ignored. The optimization of the dominate part of a routing would affect the performance much more than any other minor parts. The greedy forwarding should receive more concentration. The first contribution of the paper is to identify virtual anomalies in VCS, as an extension to our previous work Liu and Abu-Ghazaleh (2006a,b). We also analyze the frequency of those anomalies. According to the analysis, we argue that a successful stateless geographical routing should be tolerable for any localization errors with higher ratio of greedy forwarding, leading to a better performance than traditional stateful routing protocols such as AODV Perkins and Royer (1999), especially in terms of path stretch. The second contribution of this paper is to propose an aligned virtual coordinate system (aligned VCS) on which the geographical routing may be a solution for our previous argument. On the aligned VCS, the greedy forwarding dominates in routing decisions more than any other coordinate systems, with a similarly good path stretch as the traditional stateful Shortest Path (SP) routing such as AODV. The path stretch of greedy forwarding is shown to be as good as SP experimentally. We use experiments to compare the performance of geographical routing protocols on different coordinate systems, such as physical coordinate system (GeoCS), VCS and the aligned VCS. The results show that the aligned VCS helps the geographical routing reaching the highest greedy ratio (the portion of greedy forwarding in routing) so as to the similar path stretch to the optimal one (SP). To our knowledge, with AVCS, we demonstrate for the first time a stateless routing protocol that performs at least as well as traditional stateful routing protocols. The remainder of this paper is organized as follows. Section 2 provides an overview of the related works. After analyzing the anomaly problems of existing design of VCS in section 3, we present the design of aligned VCS and impact of different alignment in section 4. In, Section 5 we present an experimental study analyzing the geographical routing on different coordinate systems. Finally, Section 6 presents some concluding remarks.

2

2 Background and Related Work

in a loop. Thus, a technique for planarizing the graph to avoid the use of intersecting edges is needed: Relative Neighborhood Graph (RNG) and Gabriel Graph (GG) are two such planarization techniques (details may be found in the original paper Karp and Kung (2000)). Geographic routing assumes the network is a Unit Disk Graph (UDG) where all transmissions cover a perfect unit disc, and that the location of each node in the network is known accurately. Thus, it is vulnerable to localization errors that arise from the tolerances of the localization mechanisms or from mobility. Since GPS devices are costly, they may not be feasible for sensor networks; often, localization algorithms are employed that significantly increase the uncertainty in the location estimate Niculescu and Nath (2001); Hightower and Borriella (2001); Doherty et al (2001); Haeberlen et al (2002). The degree of error in the location estimate depends on the localization mechanism (an error up to 40% of the radio range is common for distributed localization algorithms). Both GF and face routing are susceptible to localization errors He et al (2003); Seada et al (2004). While some approaches to tolerate location errors have been suggested, in general, this remains a weakness of this class of protocols. Geographic routing protocols also suffer from voids. The paths constructed by face routing are typically not the best path available to cross the void. Thus, additional routing protocols have attempted to optimize the face routing phase of operation Fotopoulou-Prigipa and McDonald (2004); Fang et al (2004, 2005). However, most of these works optimize face routing in term of path quality, but tend to increase the overhead and the complexity. They do not address the effect of location errors on the improved schemes. A more practical solution of GPSR is proposed by Y. Kim et al Kim et al (2005), which adapts more control packets to planarizing the network based on the communication other than the local computing. It requires more resources and makes the practical GPSR not stateless.

Shortest Path (SP), which adapts shortest path routing protocols such as AODV Perkins and Royer (1999), are commonly-used for sensor networks. In this protocol, data sinks send periodic advertisements that propagate throughout the network using some network wide broadcast mechanism (typically flooding). As nodes receive the beacon, they set their next hop to the sink to be the node from which they received the beacon with the shortest number of hops to the sink. Thus, with a single network wide broadcast, all nodes can construct routes to the originating node. This functionality is convenient for data gathering applications where there is a single data destination. SP can provide the optimal path in terms of path length. However, it is a stateful and reactive protocol: for each data sink, the forwarding path is needed before data transmission can begin. The storage it requires increases with the number of sinks in the network. Furthermore, it is vulnerable to mobility or other changes in the topology. 2.1 Geographic Routing To counter these disadvantages, the stateless and localized geographic routing protocols were proposed. GFG (and the very similar GPSR) Bose et al (1999); Karp and Kung (2000) are the earliest and most widely used examples of this class of protocols. They consist of a Greedy Forwarding (GF) phase where each node forwards packets to the neighbor that will bring the packet closest to the destination. More specifically, each node tracks only the location information of its neighbors. Based on this information, for a packet with a given destination location, a node can determine which of the neighbors can bring the packet closer to the destination than itself; this set is called the forwarding set for this destination. GF proceeds by picking a node from this set; typically the closest one to the destination is picked. It is possible for GF to fail when a node has an empty forwarding set: a void is encountered. A complementary algorithm is then invoked to traverse the void. Typically, face routing or perimeter routing is used; this is an approach based planar graph theory. The general idea in face routing is to attempt to route around the void using a right hand rule that selects node around the perimeter of the void. This approach is continued until a node closer to the destination than the void origin is encountered; at this stage, operation switches back to greedy forwarding. However, a problem arises if the perimeter routing intersects itself – there is a danger that the packet gets stuck

2.2 Virtual Coordinate Routing VCS was first proposed by Rao et al Rao et al (2003). However, this approach requires a large number of nodes to serve as virtual coordinate anchor nodes (sufficient to form a bounding polygon around the remaining sensors). The resulting approach can be considered as a ndimensional virtual coordinates system with a large n. The drawback of having many dimensions is that forming coordinates requires a long time to converge. Instead of directly using the virtual coordinates, this approach is

3

more accurately described as a localization mechanism for use in an otherwise geographically based algorithm. Reachability is expected to be an issue in this protocol as geographic location is approximate; it is unclear if face routing will be effective with a coarse-grained location estimate. However, the authors only compared their protocol to greedy forwarding on geographic coordinates. VCS aided localization has been also used by other works Nagpal et al (2003); Niculescu and Nath (2001). Routing based on a Virtual Coordinate System (VCS) has been proposed as a possible solution to the two shortcomings of geographic routingCaruso et al (2005); Moscibroda et al (2004); Nicol et al (2004); Cao and Abdelzaher (2004); Fonseca et al (2005); Liu and Abu-Ghazaleh (2006a). In this approach, coordinates are constructed in an initialization phase relative to a number of reference points. Following this initialization phase, packets can be routed using the Greedy Forwarding principles, replacing node location with its coordinates: the forwarding set consists of neighbors whose coordinates are closer to the destination than the current node according some distance function applied to the coordinates. Since it is based on connectivity, VCS has the promise of addressing the weaknesses of geographic routing (localization errors and voids). However, we show that VCS suffers its own anomalies that can lead to a packet being received by a node whose forwarding set is empty. Both Geographic routing and VCS routing are instances of geometric routing, with different coordinate systems. Geographic routing, the coordinates are geographic (GeoCS). The VCap system Caruso et al (2005) suggests using three reference points to assign the virtual coordinates, constructing a 3-dimensional VCS. However, a 3D VCS may not enough to map the network in Liu and Abu-Ghazaleh (2006a), unless the triangle formed by the reference points bounds the area of interest. As evaluated in that paper, VCap was shown to be worse than GPSR both in delivery ratio (node pair reach-ability) and path stretch. We also demonstrate and experimentally show that Greedy Forwarding on 3D VCap is significantly worse than normal geographically based Greedy Forwarding. Qing et al proposed a similar protocol, called Logical Coordinate Routing (LCR), with four reference nodes (4D) each located at a corner for a rectangular area Cao and Abdelzaher (2004). The authors suggest a backtracking approach to delivery packet when facing any routing anomalies, which requires each hop in the forwarding path of each packet to be recorded. However, this backtracking algorithm is extremely expensive: it requires every node to record every packet that pass through it.

Most VCS works use Euclidean distance as the distance metric defining the distance between any two points in the coordinate space. One exception is the Manhattanstyle distance proposed by Rodrigo et al in BVRFonseca et al (2005). Using a VCS with a large number of reference nodes (typically 10 to 80), BVR suggests a different backtracking approach to back-forward packets to the reference node closest to the destination when greedy forwarding fails. As we show in this paper, neither Manhattan distance or the one proposed in BVRFonseca et al (2005) (we called semi-Manhattan distance) offer advantages in comparison to Euclidean distance. A drawback of BVR is the high number of anchors required. Another effort describing routing on virtual coordinates is reported by Nicol et al Nicol et al (2004), who compare SP and GF using both geographic and virtual coordinates in term of the path quality (path length). This work does not analyze the reachability of routing using VC. Thus, no solution is offered when routing fails. GEM Newsome and Song (2003) proposed the routing based on a virtual coordinate system. A virtual polar coordinate space (VPCS) is used for localizing each node in network. A tree-style overlay is then used for routing. Thus, GEM is not stateless. Further, using the tree overlay results in poor path quality. Since it uses the VPCS to localize the network first, it tolerates only up to 10% localization error Newsome and Song (2003). Papadimitriou and Ratajczak Papadimitriou and Ratajczak (2004) conjecture that every planar 3-connected graph can be embedded on the plane so that greedy routing works. If this conjecture holds, then for planarized networks, a guaranteed greedy routing may exist. We believe that aligned virtual coordinates may be a first step towards deriving such node enumeration for guaranteed greedy routing.

3 Greedy Forwarding in VCS

VCS is attractive for use in environments where the advantages of geographic routing are desired, but are not possible due to localization errors. While VCS can overcome physical voids since coordinates are based on connectivity, it suffers from its own forms of anomalies. In this section, we show several routing problems arising with VCS, and provide explanations for the reasons behind them. In all these problems, the result is that a packet reaches a node with no neighbors closer to the destination than itself; a local minimum is reached and greedy forwarding fails.

4

3.1 Number of Anchors

21 Ο

5

22 Ο

(4 4 2)

We illustrate the impact of the number of anchors on anomalies using an example. The authors of the VCap system Caruso et al (2005) argues that a 3-dimensional (3D) VCS is sufficient to accomplish effective Greedy Forwarding (GF) of a two-dimensional network. We show that in practice this number is not sufficient and VCS is susceptible to routing problems resulting in suboptimal paths, packet misrouting, or routing failure. These problems do not necessarily coincide with geographic voids: for example, we show that GF based on VCS may fail in a network without geographic voids. Figure 1(a) shows a 3D VCS for a network where 25 nodes are deployed along the vertices of a grid. The radio range makes each internal node have 9 one-hop neighbors. For example, node 13 has neighbors 7, 8, 9, 12, 14, 17, 18 and 19. Perimeter node 1 has 3 neighbors: 2, 6 and 7. The numbers at the left of each node are IDs, and the triples in brackets under each node represent their coordinate values. VCS anchors are chosen consistent with the requirement described by the VCap designers Caruso et al (2005).

4

3

16 Ο (3 4 2)

17 Ο

11 Ο (2 4 2)

12 Ο

6

2

7

X

(4 4 1) 19 Ο

13 Ο

14 Ο

Ο

2Ο (1 3 4)

25 Ο (4 4 2) 20 Ο (4 3 2)

(3 3 1)

(2 2 2)

(1 3 3)

1Ο (0 4 4)

24 Ο

18 Ο (3 3 1)

(2 3 2)

Ο

Z

(4 4 0)

(3 3 1)

(1 4 3)

1

23 Ο

(4 4 1)

(3 2 2)

8 Ο (2 2 3)

9 Ο (3 1 3)

3Ο (2 2 4)

4 Ο (3 1 4)

15 Ο (4 2 2)

10

Ο (4 1 3)

5 Ο (4 0 4)

Y

2 Units > Radio Range > 1.414 Units 0

1

2

3

4

5

6

Virtual Distance (3D) to Node (1, 50)

(a) 3-D VC for a Grid Deployment

3.2 Expanded VC Zone Problem

Virtual Voids 60 40 20 0 50

0 45

10 40

35

30

X

Consider a packet P at node 11 destined to node 15. Table 1 shows the distances of each neighbors to the destination node 15. P is first forwarded to node 17 greedily. However, among the one-hop neighbors of 17 (node 11, 12, 13, 16, 18, 21, 22, 23), there are none with a shorter distance to node 15 measured in virtual coordinates – greedy forwarding fails. Nodes with the same virtual coordinate value are called a VC Zone. This problem occurs when VC Zones cross a contour line (the lines connecting of the VCS anchors). Around these contour lines, the possibility of VC Zones that are larger than 2-hop across arises. The routing algorithm cannot deliver packets through the VC zone: we call this problem the Expanded VC Zone problem. One possible solution is to broadcast a path request within the VC zone.

20 25

20

30 15

10

40 5

0

50

Y

Radio Range 1.5 Unit

(b) Disconnected VC Zone

Figure 1: Routing Anomalies caused by VC Zone (3D VCS)

are in the same situation. These nodes occur symmetrically around the contour line in a uniform deployment such as the grid. Note that the Expanded Zone problem is an instance of the Disconnected Zone problem where the two disconnected zones are neighbors. If a data packet produced by node 21 needs to be delivered to node 25, GF will obviously fail. Further, data packets produced by any one-hop neighbors of node 21 can not be routed to node 25 either. Broadcasting within a VC zone cannot solve this problem because the VC zone is not connected. Even if the Z anchor goes to infinity (is arbitrarily far), a disconnection remains whose size is larger than the limit argued in the original VCap paper (2.3 times the radio range) Caruso et al (2005). Note that the limit in the original paper is derived under infinite density assumptions. We visualize this problem in figure 1(b), where 2500 nodes are deployed in 50 × 50 grids, each per one. 3 reference nodes are located at grid (1,1),

3.3 Disconnected VC Zone Problem The second problem occurs because it is possible for nodes with equal coordinates to occur in geographically disparate locations. Consider node 21 and 25; they have the same virtual coordinates but are not connected by any other nodes with the same virtual coordinates. We call this the Disconnect VC Zone problem. Node 22 and 24

5

Table 1: The Euclidean distances of node 11, 17 and their neighbors on VCS to node 15 node 11 12 13 √ 16 √ 17 √ 18 21 √ 22 23 √ √ √6 √7 √ distance 14 11 2 2 5 2 5 3 3 2 5 2 2 (50, 1), (25, 50). For each point on the surface in figure no physical void in this scenario. If some physical voids 1(b), x and y values denote their physical location, z val- are present, a much bigger portion of node pairs would ues denote the Euclidean distances on VCS of each node fail in greedy forwarding. to the node located in grid (1,50). The virtual distances to node(1,50) of node (50, 50) is 0, which leads to a virtual void caused by disconnected VC Zone. And there are still other virtual voids caused by expanded VC Zone. These problems arise because the number of anchors is insufficient to form a bounding polygon of the network area. If this property occurs, then nodes occur only on one side of the contour line making both problems above impossible. Thus, a 4-dimensional (4D) VCS can provide a bounding polygon for rectangular areas (and in general, better bounds than just using 3 anchors). We note that these problems are exacerbated by physical voids. Voids represents additional internal boundaries to the area, giving rise to more instances of the above problems (Unless additional anchors are placed at void boundaries to continue to bound the network.). Figure 2: 400 nodes grid deployment 20 18 16 14 12 10

8 6 4 2 0

0

3.4 Forwarding Anomaly

4

6

8

10

12

14

16

18

20

For example, the virtual coordinates of A, B and C are

Consider a 4D VCS, set up according to the VCap scheme Caruso et al (2005); Cao and Abdelzaher (2004); Liu and Abu-Ghazaleh (2006a). Further, consider a set of nodes A, B and C with virtual coordinates as V(A), V(B) and V(C), where A and B are neighbors, and B and C are also neighbors. According to the design of VCS, we have 0≤ 0≤

2

V (A)

= [3, 9, 7, 11]

V (B) = [2, 9, 8, 11] V (C) = [3, 8, 8, 11] √ √ The Distance(A, B) = 2 and Distance(A, C) = 2 measured in Euclidean Distance, while the Distance(A, B) = 2, and Distance(A, C) = 2 measured in Manhattan distance. Even though the virtual coordinates of A, B and C satisfy the design of VCS and they are in the same neighboring chain, greedy forwarding fails at node C. We demonstrate this problem as a distance map in figure 3, where the X and Y denotes the physical location of each node same as it in figure 2, and Z denotes the Euclidean distance of each node of virtual coordinates to the node locates at (2, 8) (node A). As we can see, the node located at (5, 4) (node C) has no neighbor closer to the destination (node A) per either the Euclidean or Manhattan distance. We call this problem a VCS forwarding void. A more serious forwarding void may be found around location (19,6) where the virtual coordinates of all node around it are further away from the destination than itself.

abs(V (A)i − V (B)i ) ≤ 1 abs(V (B)i − V (C)i ) ≤ 1

If we also have Distance(A, B) = Distance(A, C) where Distance(N ode1, N ode2) can be measured in different ways such as Euclidean distance Caruso et al (2005); Cao and Abdelzaher (2004) and Manhattan-style distance Fonseca et al (2005), then a packet from node C may not be delivered to node A even if there is a path through node B. In simulations, we observed such conditions arising often, and in many scenarios are the primary cause of undeliverable packets. For example, in a simulation where 400 nodes are deployed in a 20x20 grid as shown in Figure 2, greedy forwarding between 2% pairs of nodes will fail due to this situation. Recall that there is

6

Euclidean Distance to Node (2, 8)

VCS Forwarding Void

6 D

16

12 [4 8 4 0]

4

10 [3 7 5 1]

3

8 [2 6 6 2]

2

6 [1 5 7 3]

1

1 2 [0 4 8 4] [1 3 7 5] A

8 0 20 16 12 8

Y

4 0

0

2

4

6

8

18 20 14 16 10 12

0

X (RR = 2.5 Units)

C 13 14 15 16 [8 4 0 4] [5 7 3 1] [6 6 2 2] [7 5 1 3]

5

0

1

11

Radio Range: 1 Unit

9 7

3 4 [2 2 6 6] [3 1 5 7]

2

3

4

5

[7 3 1 5] [6 2 2 6] [5 1 3 7] [4 0 4 8] B 5

6

(a) 4D VCS with physical void

Figure 3: Euclidean Distance Map: Forwarding Void in 4D VCS

Radio Range 1.5 Units 4D Manhattan Distance to Node 0

3.5 Effect of Distance Metric

Virtual Voids

120

100 One may question whether the anomalies are related to the 80 distance metric used. Instead of using Euclidean distance 60 to measure the distance between nodes in VCS, BVR Fon40 seca et al (2005) proposed a variant of Manhattan dis20 tance. We compare the effect of the different distance 0 metrics using an example (Figure 4(a)). Nodes 1, 5, 12, 50 40 16 are 4 reference nodes. In this example, node 14 is the 30 50 40 45 20 source, while node 3 is the destination. All the distances 30 35 10 20 25 Y 15 10 0 5 X of any type of the neighbors of node 14 is far away from 0 the destination than itself, shown in Table 2. We also visualize this problem in Figure 4(b) with similar scenario (b) Virtual Voids with Manhattan Distance as Figure 1(b) except a physical hole in the center. As we can see, the Manhattan-style distance does not help in Figure 4: Anomaly despite of Diversity of Distances (4D avoiding anomalies; in fact, it makes the problem worse. VCS) Euclidean distance performs better than Manhattan-style distance, but both suffer anomalies (Figure 5). equal distance to the destination. The quantization noise is bound by as follows. 3.6 Explaining Anomalies – Quantization Error  0 < Dis ≤ RR for x = 1 The reason behind the VCS forwarding void is the vir1 x × RR < Dis ≤ x × RR for x≥2 2 tual coordinate quantization error. When VCS setting up procedure tries to map the physical locations of sen- where the RR denotes radio range. For each hop (1 in x sor nodes into a higher dimensional virtual space, only value), the noise would be at most 21 RR under unit disc the number of hops is used to measure the connectivity of assumptions. As the value of x goes higher, the noise neighborhood. Since virtual coordinates are quantized in is bigger. In addition, as RR is increased, the noise inintegral units representing hop-count to the anchors, mul- creases as well. Finally, the quantization noise has higher tiple nodes at different locations receive the same virtual effect in networks with high density. coordinate value in a given dimension. All nodes in range For example, in Figure 1(a), although the physical dis√ with a node sending out the minimum distance to an an- tance from node 1 to node 25 is 7 times of that from chor will have the same coordinate, regardless of their dis- node 1 to node 21, the virtual distance (number of hops) tance from the transmitting node. Thus, multiple nodes are both 4. The quantization error problem is presented in may receive virtual coordinates that are equal, or that have more detail in Figure 6. The quantization error affects the

7

Radio Range 1.5 Unit

Virtual Voids

70

0 50 40 30 20

Y

10 0

0

5

15

10

25

20

50

45

40

35

30

X

Figure 5: Virtual Voids measured in Euclidean Distance (4D VCS) virtual distance significantly, leading to possible routing failures even without any physical voids.

15 10 5 0 20 16 12 8

Y

4

70

0 50 40 30 20

Y

10 0

0

5

50 40 45 30 35 20 25 10 15

Virtual Distance to Node 0

Virtual Distance to Node 0

0 Radio Range 2 Units

15 10 5 0 50 40

Figure 7: Distance Map of Aligned VCS Example

20 15 10 5 0 50 40 30 20 10 0

0

5

50 40 45 30 35 20 25 10 15

X

4 Aligned Virtual Coordinates

Radio Range 5 Units

20 16

In this section we present the proposed Aligned Virtual Coordinate Systems (AVCS) idea. We first build the intuition behind the idea, and then present its working details and design space.

12 8 4 0 50 40 30

Y

20 10 0

0

5

10

15

20

25

30

35

40

45

X

(c) Radio Range 4 Units

50

X (RR = 2.5 Units)

25

30 20

6

30

Y

Virtual Distance to Node 0

Virtual Distance to Node 0

20

4

35

(b) Radio Range 3 Units

Radio Range 4 Units

2

18 20 14 16 10 12

40

X

25

0

8

Radio Range 3 Units

(a) Radio Range 2 Units

30

Node √ 16 80 16 8 8

imate continuous physical locations. The virtual coordinate value should reflect not only the distance to the anchor nodes, but also the connectivity of the neighborhood. We propose such an approach which we call aligned VCS (described in the next Section). Using aligned VCS on a network shown in figure 2 results in the distance map in Figure 7 where the distances of all nodes to the destination node is continuously decreasing, and no anomalies are encountered.

Euclidean Distance to Node (2, 8)

4D Euclidean Distance to Node(21,20)

Table 2: Different types of Distances to Node 3 Distance Diversity Node √ 12 Node √ 13 Node √ 14 Node √ 15 Euclidean (VCap, LCR) 80 68 50 68 Manhattan 16 16 16 16 Semi-Manhattan (BVR) δ+ 8 8 8 8 Semi-Manhattan (BVR) δ− 8 8 8 8

Y

10 0

0

5

10

15

20

25

30

35

40

45

50

X

(d) Radio Range 5 Units

4.1 Intuition

For the geometric routing protocols on GeoCS, higher node density helps resolve anomalies as less voids occur. The virtual coordinate noise comes from the hop-count In contrast, a higher density tends to exacerbate anomanature of the VCS which uses integer values to approx- lies in VCS because of the quantization error giving rise to Figure 6: Quantization Error: impact on Virtual Distance

8

This information is critical for greedy forwarding. The overall connectivity of a node would reflect its location more precisely than only that to the anchor node.

forwarding voids. The quantization error is more emphasized under higher densities as more nodes are reachable in a single hop and therefore share the same coordinate. When voids are encountered in VCS, the complementary algorithm is typically based on backtracking. Existing solutions tend to be expensive and inefficient. Due to the high number of anomalies, leading to frequent use of the inefficient complimentary algorithm, the performance of geometric routing protocols on VCS is poorer than that on GeoCS (with precise location information) or any stateful routing protocols. To address the quantization error, we proposed the aligned Virtual Coordinate System (aligned VCS). The intuition is to reflect connectivity information in node coordinates; connectivity information is essential for routing.

4.3 Alignment Functions The virtual coordinates of each node in the VCS are set up through a hop-counter from several anchor nodes incrementally. For any node A with a virtual coordinate vector V (A), the virtual coordinate vector V (N ) of any neighbor N of it would satisfy 0 ≤ abs(V (N )i − V (A)i ) ≤ 1 for all i

The integral value of virtual coordinate at dimension i can not discriminate between these two nodes that have the same value. AVCS overcomes this problem by aligning a 4.2 Incorporating Connectivity node’s coordinates to a point that takes into account the location of a nodes neighbors. For example, a potential The virtual coordinates of each node in each dimension alignment function may simply compute the centroid of depends on the node’s physical distance to the anchor. As the neighbors and average it with the coordinates of the shown in Figure 8, both the node A and B would obtain a node being aligned. virtual coordinate value as 2, since their distances to anPn d−1 chor node are both between 1 radio range and 2. However, j=1 AV (Nj )i + AV (A)d−1 i d n AV (A)i = (1) 2 Anchor 1

where the i is the ith virtual dimension, the Nj is the jth neighbor, n is the number of neighbors of node A and d 3 is the depth of aligned virtual coordinates. The depth deA termines the distance in hop-count of neighbors being inB cluded in the alignment. Thus, AVCS with depth 0 stands for the original unaligned VCS. Depth 1 reflects 1 hop neighbor connectivity information. Alternative alignment functions may be considered. For example, we consider another function which focuses Figure 8: Accounting for Connectivity more on connectivity. Pn it is clear that the two nodes are different in terms of locad−1 + AV (A)d−1 i j=1 AV (Nj )i tion and connectivity. The integral value 2 does not pro(2) AV (A)i = n + 1 vide information regarding their different nature in physical distance, which may lead to anomalies. This function gives more weight to connectivity–it comWe propose Aligned Virtual Coordinate System putes the centroid of the neighbors, including the node be(AVCS) which works by aligning a node to a point closer ing aligned, and uses that as the AVCS. The alignment of to its neighbors using an alignment function. As we can the distance map shown in figure 5 is shown in the figure see in Figure 8, among all one-hop neighbors, node A has 9. 3 neighbors with VC value as 1, 3 neighbors with VC AVCS provides significant reduction in the quantizavalue as 2 and only one neighbor with VC value as 3. In tion error. The distance maps for figure 6 can be aligned contrast, node B has only one neighbor with VC value as to more smooth ones shown in figure 10. 1, 3 neighbors with VC value as 2 and 5 neighbors with VC value as 3. Even if the physical locations of the nodes 4.4 Distance Measurement on Aligned VCS are unknown, the number of neighbors with different VC values provide information about their relative location: In the geographical routing, each data packet has to carry node B is farther away from anchor node than node A. the coordinates value of the destination node all the time. 2

9

plement this look up mechanism is beyond the scope of this paper. But the necessity of the look up mechanism requires stability of the virtual coordinates of any node. For a network where nodes do not move frequently, the stability of nodes would keep the aligned VCS stable. So for routing decision, the updated aligned virtual coordinates of destination is not difficult to obtain. But if nodes with high mobility are common, the aligned virtual coordinates of nodes would turn to stale quickly. For this consideration, the aligned virtual coordinates of any node as destination is not used for routing, which means that each data packet carries only the integer value virtual coordinate of the destination (V (dst) or say, AV (dst)0 ). The aligned virtual coordinates are used only for distance measurement locally. So the Euclidean distance from a given node X to the destination dst is measured as v u n uX d (AV (X)di − V (dst)i )2 (3) EDis(X, dst) = t

Euclidean Distance on AVCS to Node (21,20), Depth 1

Radio Range 1.5 Units

70 60 50 40 30 20 10 0 50 45 40 35 30 25 20 15

Y

10 5 0

0

15

10

5

25

20

35

30

45

40

50

X

Aligned Virtual Distance to Node 0

Aligned Virtual Distance to Node 0

Figure 9: Aligned VCS without Virtual Voids

Radio Range 2 Units

70 60 50 40 30 20 10 0 50 40

Radio Range 3 Units 35 30 25 20 15

i=1

10 5 0 50 40 30

30

20

20 10

Y

0

0

5

10

15

20

25

30

35

40

45

Y

50

0

X

0

5

10

15

20

25

30

35

40

45

50

X

Radio Range 4 Units 30 25 20 15 10 5 0 50 40 30

M Dis(X, dst)d =

0

5

10

15

20

30

35

40

45

X

50

abs(AV (X)di − V (dst)i ) (4)

Other Manhattan-style distance such as that used by BVR Fonseca et al (2005) can be measured in a similar way.

10

0 50 40 30 20

0

25

n X i=1

Radio Range 5 Units 20

20 10

For a 4D VCS, n = 4. And the Manhattan distance can be measured by

(b) Radio Range 3 Units Aligned Virtual Distance to Node 0

Aligned Virtual Distance to Node 0

(a) Radio Range 2 Units

Y

10

Y

10 0

0

5

10

15

20

25

30

35

40

45

50

4.5 Alternative Alignment Functions

X

Although we propose to use average based alignment functions, other alignment methods may also work. One alternative we consider is to minimize the differences Figure 10: Aligned VCS (Depth 1) reduces Quantization among a node’s neighborhood. The distribution of virtual Error coordinates of the neighborhood may reflect the accuracy. Intuitively, minimizing the distribution of neighborhood nodes makes the coordinates more continuous and accuTo make a routing decision in greedy forwarding, the dis- rate. So we also proposed to align the VCS according to tance from current node to the destination is compared the following equations as alternative. If we have the avto those of one-hop neighbors. The closest neighbor to erage of alignment in depth d − 1 as the destination would be chosen as next hop to which the Pn d−1 + AV (A)d−1 packet would be forwarded. This process repeats until the i j=1 AV (Nj )i d−1 (5) ni = packet arrives at the destination. n+1 Most of the geographical routing assume the availabil- and the standard deviation of the alignment in depth d − 1 ity of any intended destination. Other than the GeoCS as v u where the location of the destination is easy to obtain by u (AV (A)d−1 − nd−1 )2 + Pn (AV (N )d−1 − nd−1 )2 j i j=1 i i i guessing the direction and physical Euclidean distance, σid−1 = t n+1 the virtual coordinates of any node is hard to guess even (6) the physical location is known. So for geographical rout- then we would align VCS in depth d as ing on VCS, a look up by name mechanism such as DHT AV (A)di = AV (A)d−1 + α · σid−1 (7) is necessary for geographical routing on VCS. How to imi (c) Radio Range 4 Units

(d) Radio Range 5 Units

10

where the α is obtained according to ( ≥ AV (A)d−1 1 if nd−1 i i α= −1 otherwise

use the more expensive and less efficient complimentary perimeter routing.

Aligned Virtual Distance to Node 0

Aligned Virtual Distance to Node 0

As we can see in the figure 11, the alternative alignment shows a different view of the impact of the quantization error. When network density is not very high (radio range is small), this alignment does not outperform the previous one in reducing the quantization error. But when the network density is higher, it performs much better. Upon this observation, we argue that alignment of VCS may need to be designed more complicated to deal with the quantization error, which would be our future work.

Radio Range 2 Units

70 60 50 40 30 20 10 0 50 40

Radio Range 3 Units 35 30 25 20 15 10 5 0 50 40

5.1 Experimental Setup and Preliminaries To enable scalability, we use a custom simulator written for this study; the simulator abstracts away the details of the channel and the networking protocols. Since our work targets functionality in the control plane (not the data plane), we believe that hiding the modeling details at that level is appropriate. Furthermore, by abstracting away the networking protocols, we avoid obtaining results that are specific to a particular set of protocols. The results of the simulator validate well with the NS-2 simulator NS2 (2006). However, NS-2 does not allow scaling the simulation size to the network sizes we want to study.

30

30

20

We study the impact of physical voids on geometric routing with different coordinate systems using a num(a) Radio Range 2 Units (b) Radio Range 3 Units ber of scenarios. For every scenario, the greedy ratio and path stretch are determined as the average of these values for every pairwise permutation of the nodes in the network; that is, one test is done for sending a packet from every node to every other node. If the packet is delivered through greedy forwarding, it is counted towards the greedy ratio. We use SP, which finds the optimal routing in terms of number of hops, as the baseline for measuring path stretch. Note that SP is stateful and expensive espe(c) Radio Range 4 Units (d) Radio Range 5 Units cially if the network is dynamic or the number of destinaFigure 11: Standard Deviation Alignment for VCS (depth tions large. 1) We implemented GPSR (with both GG and RNG planarization) Karp and Kung (2000); Kim et al (2005), Shortest Path (SP), Greedy Forwarding on VCS Caruso et al (2005), LCR Cao and Abdelzaher (2004) and 5 Experimental Evaluation BVR Fonseca et al (2005) on 4D VCS, to study their performance against Aligned VCS (AVCS). In fairness to BVR, the original specification suggests 10 to 80 referIn this section, we present an experimental evaluation of ence points; however, we are interested in evaluating it Aligned Virtual Coordinates in comparison to a range of against the other schemes with similar assumptions on the existing geometric protocols. These protocols include number of beacons. In addition, we believe that such a those using geographic coordinates (GeoCS), as well as large number of reference points is impractical in many virtual coordinates (VCS). The evaluation tracks metrics settings. The aligned VCS uses the alignment function in such the greedy ratio (portion of paths that can be routed Equation (2). The simulation results show that the two using greedy forwarding only) and the path stretch (av- alignment functions (Equation 1 and Equation 2) perform erage path length normalized to the best possible). The almost identically, with less than 0.5% difference. The greedy ratio reflects both the overhead and the perfor- distance between any two nodes is measured through a mance of a stateless routing protocol such as GPSR; the Euclidean manner as per Equation (3), with the exception lower the greedy ratio, the more frequently we need to of BVR where we use its semi-Manhattan distance metric. 20

10

0

0

5

10

15

20

25

30

35

40

45

Y

50

0

0

Radio Range 4 Units

30 25 20 15 10

5 0

50

40

30

5

10

15

20

25

30

35

40

45

50

X

Radio Range 5 Units

20

10

0

50

40

30

20

20

Y

10

X

Aligned Virtual Distance to Node 0

Aligned Virtual Distance to Node 0

Y

10

0

0

5

10

15

20

25

30

X

35

40

45

50

Y

10

0

0

5

10

15

20

25

30

35

40

45

50

X

11

Table 3: Path stretch of shortest path (SP) and greedy forwarding (on GeoCS, 4D VCS and 4D Aligned VCS) Neighbors # SP GeoCS 4D VCS 4D AVCS (d 1) 3.92 1.0000 1.0000 1.0000 1.0000 7.76 1.0000 1.0000 1.0000 1.0000 11.60 1.0000 1.0000 1.0000 1.0000 19.13 1.0000 1.0000 1.0494 1.0073 26.57 1.0000 1.0000 1.0251 1.0010 33.94 1.0000 1.0000 1.0409 1.0050 44.84 1.0000 1.0000 1.0545 1.0035 62.66 1.0000 1.0000 1.0850 1.0100 73.17 1.0000 1.0000 1.0926 1.0074 Table 4: Path stretch of backtracking phase Neighbor # Perimeter Routing BVR BT LCR BT 3.92 16.9200 2.1903 1.0000 7.76 13.1800 2.0996 1.0000 11.60 18.0365 2.1875 1.0000 19.13 23.7324 2.1411 1.0525 26.57 29.7087 2.1459 1.0277 33.94 31.7657 2.1609 1.0480 44.84 37.4030 2.1512 1.0564 62.66 41.9031 2.1342 1.1198 73.17 46.2990 2.1311 1.0982 5.2 Greedy Forwarding vs Shortest Path

Usually, the complementary solution for voids such as perimeter routing and backtracking cause a significant path stretch relative to SP. The path stretch of the complimentary algorithms in the previous scenario is shown in Table 4. The path stretch of perimeter routing is extremely high but it is stateless, requiring no more information than greedy forwarding. BVR’s stretch considerably better, but still quite high, without requiring more information. However, almost every time that backtracking was invoked BVR required a scoped flood from the beacon which may cover half of the network in a 4D VCS. Although the path stretch of LCR is the best and approaches SP, it requires each data packet to be recorded by each node in its forwarding path; this solution is impractical for all but very lightly loaded networks. From this study, we can conclude that if the stateless routing can keep using greedy forwarding, it can provide performance close to stateful routing protocols while maintaining their desirable properties (statelessness and low overhead).

The first study shows the performance of geographic Greedy Forwarding (GF) and Shortest Path (SP) routing in terms of path length. These results form part of the intuition for our work. More specifically, the greedy component of geographic and VCS routing is close to the optimal SP performance. Thus, increasing the success of the greedy phase leads to improving the effectiveness of geographic and VCS routing. Since voids cause non-greedy routing, in this study we use a grid deployment of 2500 nodes in a 50x50 units area. Each node is placed at the center of one grid. The impact of the density is studied by varying the transmission range. The path lengths of SP, GF on GeoCS (greedy phase of GPSR), 4D VCS and 4D Aligned VCS with depth 1 (AVCS d1) are shown in Table 3. GF on GeoCS performs the same as SP routing which indicates that for this topology without physical voids, stateless routing performs as well as stateful one as the costly void traversal phase is never invoked. When the radio range becomes higher, the greedy forwarding on VCS becomes worse 5.3 Effect of Voids than GF due to the increased quantization noise and the VCS forwarding anomalies. Aligned VCS does not suffer First, we study the impact of the size of a single physical void on performance. We use a uniform grid deployment from this problem.

12

20

Original BVR on 4D VCS BVR on 4D Alinged VCS −− depth 1 BVR on 4D Alinged VCS −− depth 2 BVR on 4D Alinged VCS −− depth 3 BVR on 4D Alinged VCS −− depth 4

100%

18

90%

Greedy Ratio

16 14 12 10 8

80% 70% 60% 50%

6

40%

4

30%

2

5/400

0 0

2

4

6

8

10

12

14

16

18

20

Path Stretch to SP (=1.0)

1.35

Greedy Ratio

29/400

49/400

81/400

Figure 14: Impact of void size on BVR: greedy ratio

Figure 12: Example of Physical Void: circular hole 29/400

GF on GeoCS GF on GeoCS with 20% Loc Error GF on GeoCS with 40% Loc Error GF on 3D VCS (VCap) GF on 4D VCS (LCR) GF on 4D Aligned VCS −− depth 1 GF on 4D Aligned VCS −− depth 2

100%

13/400

Hole (cycle) Size (RR = 1.5 units)

90% 80%

Shortest Path GPSR on GeoCS GPSR with 20% Loc Error GPSR with 40% Loc Error GR on 4D VCS (LCR) GR on 4D Aligned VCS (depth=1)

1.30 1.25 1.20 1.15 1.10 1.05 1.00

70% 5/400 5/400

13/400

29/400

49/400

13/400

29/400

49/400

81/400

Physical (cycle) Void Size (RR=1.5 units)

81/400

Hole (cycle) Size (RR = 1.5 units)

Figure 15: Impact of void size: path stretch Figure 13: Impact of void size: greedy ratio

of 400 nodes. The physical voids are created by taking away some nodes in the center of area. An example of such a physical void is shown in figure 12 where 29 nodes in the center are taken away. Later, we study random deployment scenarios. The greedy ratios of the geographical routing on different coordinate systems are shown in Figure 13. GF on 4D VCS is able to use greedy forwarding more often than GF on GeoCS. The greedy ratio on 3D VCS is stable no matter what the size of the void is. The reason may be that the anomalies of greedy forwarding on 3D VCS arise not from voids primarily. Although a localization error of around 20% of transmission range does not significantly affect the greedy ratio on GeoCS, a 40% localization error causes greedy ratio to drop considerably which leads to higher path lengths and even routing failure. Meanwhile, the geographical routing on VCS does not suffer from localization errors. The greedy ratios of BVR on 4D VCS

is shown in figure 14. As we can see, since the original BVR is designed on a VCS with a relative higher dimensions (usually 10 ∼ 80), its greedy ratio with only four dimensions is very low. However, increasing the number of coordinates higher, comes at a cost of increased overhead in constructing the coordinates. Even with aligned VCS depth 3, its greedy ratio remains lower than the other approaches. Figure 15 shows the path length of geographical routing on different coordinate systems. The primary observation from this figure is that the greedy routing on VCS is better than that on GeoCS even without any localization error, especially with a bigger physical void. It can provide path stretch close to the optimal one even with a large physical void. The path stretch of BVR is shown in figure 16. Similar to the study of greedy ratio, deeper aligned VCS is, smaller path stretch is. The impact of size of the void on AVCS for different alignment depths is shown in Figure 17. As expected,

13

2.0

100% 90%

Greedy Ratio

Path Stretch to SP (=1.0)

Original BVR on 4D VCS BVR on 4D Alinged VCS (depth 1) BVR on 4D Alinged VCS (depth 2) BVR on 4D Alinged VCS (depth 3) BVR on 4D Alinged VCS (depth 5) BVR on 4D Alinged VCS (depth 5)

2.2

1.8 1.6

80% 70% 60% GF on GeoCS GF on GeoCS with 20% Loc Error GF on GeoCS with 40% Loc Error GF on 3D VCS (VCap) GF on 4D VCS (LCR) GF on 4D Aligned VCS −− depth 1 GF on 4D Aligned VCS −− depth 2

50% 40%

1.4

5/400

13/400

29/400

49/400

81/400

1

2

3

4

5

16

Physical (cycle) Void Size (RR=1.5 units)

Number of Holes

Figure 16: Impact of void size on BVR: path stretch

Figure 19: Impact of multiple physical voids: greedy ratio 1.40

Path Stretch to SP (=1.0)

Greedy Ratio

100% 97.5% 95% 92.5% 90%

Depth 1 Depth 2 Depth 3 Depth 4

5/400

GPSR on GeoCS GPSR on GeoCS with 20% Loc Error GPSR on GeoCS with 40% Loc Error GR on 4D VCS (LCR) GR on 4D Aligned VCS (depth 1)

1.35 1.30 1.25 1.20 1.15 1.10 1.05

13/400

29/400

49/400

1.00

81/400

1

Hole (cycle) Size (RR = 1.5 units)

2

3

4

5

16

Number of Physical Voids

Figure 17: Impact of void size on 4D Aligned VCS depth Figure 20: Impact of multiple physical voids: path stretch 40

30

20

10

0

0

10

20

30

40

Figure 18: Example of 5 physical holes in 40x40 grid area the deeper the alignment, the higher the greedy ratio. Although deeper than 3 aligned VCS may still help, it may not be practical if node mobility is present. Next, we study the effect of multiple voids. In a 40x40 area with grid deployment, nodes are removed to create

different number of holes. An example of 5 holes in such an area is shown in Figure 18. Figure 19 shows the greedy ratio of geometric routing on different coordinate systems as the number of physical voids is increased. GF on 4D VCS has a similar performance as it does on a GeoCS. The result does not support the use of VCS over GeoCS. However, the greedy ratio using aligned VCS even with only depth 1 approaches 100%, especially when the deployment of nodes is very complicated (note the one with 16 physical voids). The study of path length in these scenarios is shown in Figure 20. The path stretch of greedy routing on 4D VCS (either aligned or not) is just a little smaller than it on a GeoCS for a small number of voids. As the number of voids increases, the greedy ratio of GeoCS drops, leading to a much higher path stretch. Meanwhile, the greedy ratio of VCS is still high, and it achieves good path quality as a result. With a 40% localization error, VCS significantly outperforms GeoCS.

14

100% 90% 80%

60%

Greedy Ratio

Greedy Ratio

Original BVR on 4D VCS BVR on 4D Alinged VCS −− depth 1 BVR on 4D Alinged VCS −− depth 2 BVR on 4D Alinged VCS −− depth 3

50% 40% 30%

70% 60% 50%

GF on GeoCS GF on GeoCS with 20% Loc Error GF on GeoCS with 40% Loc Error GF on 3D VCS (VCap) GF on 4D VCS (LCR) GF on 4D Aligned VCS −− depth 1

40%

20% 10% 1

2

3

4

5

16

12

14

16

18

20

Normalized Density

Figure 21: Impact of multiple physical voids on BVR: greedy ratio

Figure 23: Greedy ratio, random deployment

2.2

1.50

2.1

1.45

Path Stretch to SP (=1.0)

Path Stretch to SP (=1.0)

Number of Holes

2.0 1.9 1.8 1.7 1.6 1.5 BVR on 4D VCS BVR on 4D Alinged VCS (depth 1) BVR on 4D Alinged VCS (depth 2) BVR on 4D Alinged VCS (depth 3) BVR on 4D Alinged VCS (depth 4) BVR on 4D Alinged VCS (depth 5)

1.4 1.3 1.2 1.1 1

2

3

4

GPSR on GeoCS GPSR on GeoCS with 20% Loc Error GPSR on GeoCS with 40% Loc Error GR on 4D VCS (LCR) GR on 4D Alinged VCS (depth 1)

1.40 1.35 1.30 1.25 1.20 1.15 1.10 1.05

5

1.00 11

16

12

13

14

15

16

17

18

19

20

21

Number of Physical Voids

Normalized Density

Figure 22: Impact of multiple physical voids on BVR: path stretch

Figure 24: Path stretch, random deployment

The performance of BVR in these scenarios is shown in Figure 21 and 22. Although the aligned VCS greatly helps the performance of BVR , it is still worse than other routing protocols which means its design requires a large number of dimensions (anchor nodes).

which may mean that in reality, VCS routing may be not as good as GeoCS even with some localization errors. However, the greedy ratio with aligned VCS (even only with depth 1) is higher than any other and approaches 100% much quicker than the others. In our opinion, this result argues strongly in favor of VCS, especially when localization errors are common. In a relatively sparse net5.4 Random Deployment work, the high quality of aligned VCS makes it an attracIn unplanned ad hoc and sensor network deployments, tive solution for geometric routing. Figure 24 shows the the placement of nodes is not structured (e.g., uniformly path length. Aligned VCS performs better than others exdistributed in the area). We study scenarios where 1600 cept shortest path routing. nodes are deployed in a 30x30 area uniformly. The reFigure 25 shows the greedy ratio of BVR in random sults shown represent the mean of 20 randomly generated deployments, to tightly bind the confidence intervals. We scenarios. BVR with aligned VCS significantly outperforms the standard BVR with 4 anchors. Even with a study the impact of density by increasing radio range. The greedy ratio is shown in Figure 23. GeoCS per- depth 1 AVCS, BVR receives a large enhancement, even forms very well even with 20% localization error. 4D with a small number of anchors relative to the original VCS does not provide a higher greedy ratio than GeoCS specification (which requires 10 to 80 anchors).

15

the first time that VCS (with alignment) can outperform GeoCS even without localization errors of geographical routing.

100%

Greedy Ratio

80%

60% Original BVR on 4D VCS BVR on 4D Alinged VCS −− depth 1 BVR on 4D Alinged VCS −− depth 2 BVR on 4D Alinged VCS −− depth 3

40%

7 Acknowledgment

20%

Most of the figures shown in this paper are generated by Scilab (2006). Thank all contributors to this open source and great mathematical tool.

0.0 11.0

15.0

19.0

23.0

27.0

30.0

Normalized Density

Figure 25: Greedy ratio of BVR, random deployment

REFERENCES

6 Conclusion

In this paper, we first analyze the reasons why stateless routing protocols such as GPSR can not approach the performance traditional stateful routing protocols such as DSR and AODV. Specifically, since geographic routing protocols require precise location information, it is suceptible to localization errors. Further, the presence of voids requires an expensive complementary algorithm to be invoked. We also analyze why geometric routing on VCS may not be a replacement, since it also faces routing anomalies and its own complimentary algorithms are inefficent. The simulation shows that the greedy forwarding phase of the stateless geographical routing leads to a performance comparable with stateful routing protocols. Thus, instead of targetting more efficient complimentary algorithms, as most existing work does, we attempt to reduce the occurrence of anomalies in VCS. To this end, we first describe the causes underlying anomalies in VCS and show that many anomalies arise due to quantization noise present due to the integral nature of VCS coordinates. To address this effect, we propose an aligned virtual coordinate system which significantly reduces the quantization noise in traditional VCS and greatly increases the greedy ratio of these protocols. AVCS is shown to considerably outperform GeoCS, basic VCS, and also the BVR in terms of greedy ratio and path stretch. It is widely accepted that stateless routing protocols offer desirable properties over stateful ones. However, it is also accepted that these come at a price in terms of performance. In this paper, we show that the performance of stateless routing can approach that of stateful routing protocols, even in the presence of voids. Further, we show for

Perkins, C.E. and Royer, E.M. (1999), ’Ad hoc OnDemand Distance Vector Routing’, the 2nd IEEE Workshop on Mobile Computing Systems and Applications (WMCSA’99), New Orleans, Louisiana, USA, February 25-26, 1999 Bose, P., Morin, P., Stojmenovic, I. and Urrutia, J. (1999), ’Routing with guaranteed delivery in ad hoc wireless networks’, the 3rd ACM International Workshop on discrete Algorithms and Methods for Mobile Computing and Communications (DIAL M99), Los Angeles, CA, USA, August 1999 Karp, B. and Kung, H.T.(2000), ’GPSR: Greedy Perimeter Stateless Routing forWireless Networks’, the Sixth Annual International Conference on Mobile Computing and Networking (MobiCom’2000), Boston, Massachusetts, USA, August 6-11, 2000 Fang, Q., Gao, J. and Guibas, L. (2004), ’Locating and Bypassing Routing Holes in Sensor Networks’, the 23rd Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM 2004), Hong Kong, China, March 7-11, 2004 Fotopoulou-Prigipa, S. and McDonald, A.B. (2004), ’GCRP: Geographic Virtual Circuit Routing Protocol for Ad Hoc Networks’, the 1st IEEE International Conference on Mobile Ad-hoc and Sensor Systems (MASS 2004), Fort Lauderdale, Florida, USA, October 24-27, 2004 Kim, Y., Govindan, R., Karp, B. and Shenker, S., ’Geographic Routing Made Practical’, the Second USENIX/ACM Symposium on Networked System Design and Implementation (NSDI’05), Boston, Massachusetts, USA, May 2-4, 2005

16

Sensor Networks’, the 24th Annual Conference SponHe, T., Huang, C., Blum, B., Stankovic, J.A. and Abdelzasored by IEEE Communications Society (INFOCOM her, T. (2003), ’Range-Free Localization Schemes for 2005), Miami, Florida, USA,March 13-17, 2005 Large Scale Sensor Networks’, the 9th Annual International Conference on Mobile Computing and Networking (MobiCom 2003), San Diego, California, USA, Fonseca, R., Ratnasamy, S., Zhao, J., Ee, C.T., Culler, D., Shenker, S. and Stoica, I. (2005), ’Beacon Vector RoutSeptember 14-19, 2003 ing: Scalable Point-to-Point Routing in Wireless SenSeada, K., Helmy, A. and Govindan, R. (2004), ’On the sornets’, the Second USENIX/ACM Symposium on NetEffect of Localization Errors on Geographic Face Routworked System Design and Implementation (NSDI’05), ing in Sensor Networks’, the Third International SymBoston, Massachusetts, USA, May 2-4, 2005 posium on Information Processing in Sensor Networks (IPSN 2004), Berkeley, California, USA, April 26-27, Fang, Q., Gao, J., Guibas, L.J., de Silva, V. and Zhang, 2004 L. (2005), ’GLIDER: Gradient Landmark-Based Distributed Routing for Sensor Networks’, the 24th Annual Rao, A., Ratnasamy, S., Papadimitriou, C., Shenker, S. Conference Sponsored by IEEE Communications Sociand Stoica, I. (2003), ’Geographic Routing without Loety (INFOCOM 2005), Miami, Florida, USA, March cation Information’, the 9th Annual International Con13-17, 2005 ference on Mobile Computing and Networking (MobiCom 2003), San Diego, California, USA, September Nagpal, R., Shrobe, H. and Bachrach, J. (2003), ’Orga14-19, 2003 nizing a global coordinate system from local information on an ad hoc sensor networks’, the Second InterNewsome, J. and Song, D. (2003), ’GEM: Graph EMbednational Workshop on Information Processing in Sending for Routing and Data-Centric Storage in Sensor sor Networks (IPSN 2003), Palo Alto, CA, USA, April Networks Without Geographic Information’, the 1st in22-23, 2003 ternational conference on Embedded networked sensor systems (SenSys’03), Los Angeles, California, USA, Niculescu, D. and Nath, B. (2001), ’Ad Hoc PositionNovember 4-7, 2003 ing System (APS)’, the IEEE Global Telecommunications Conference (GlobeCom 2001), San Antonio, Papadimitriou, C.H. and Ratajczak, D. (2004), ’On a ConUSA, November 25-29, 2001 jecture Related to Geometric Routing’, the First International Workshop on Algorithmic Aspects of Wireless Hightower, J. and Borriella, G. (2001), ’Location SysSensor Networks (ALGOSENSORS 2004), Turku, Fintems for Ubiquitous Computing’, the IEEE Computer land, July 16, 2004 Magzine, Vol 34, Page 57-66, 2001 Moscibroda, T., O’Dell, R., Wattenhofer, M. and WattenDoherty, L., Pister, K.S.J. and El Ghaoui, L. (2001), hofer, R. (2004), ’Virtual Coordinates for Ad hoc and ’Convex position estimation in wireless sensor netSensor Networks’, the ACM Joint Workshop on Founworks’, the 20th Annual Joint Conference of the IEEE dations of Mobile Computing (DIAL M-POMC 2004), Computer and Communications Societies (INFOCOM Philadelphia, Pennsylvania, USA, October 1, 2004 2001), Anchorage, Alaska, USA, April 22-26, 2001 Cao, Q. and Abdelzaher, T. (2004), ’A Scalable Logical Coordinates Framework for Routing in Wireless Sensor Haeberlen, A., Flannery, E., Ladd, A.M., Rudys, A., Wallach, D.S. and Kavraki, L.E. (2001), ’Practical Robust Networks’, the 25th IEEE International Real-Time SysLocalization over Large-Scale 802.11 Wireless Nettems Symposium (RTSS 2004), Lisbon, Portugal, Deworks’, the 8th Annual International Conference on cember 5-8, 2004 Mobile Computing and Networking (MobiCom 2002), Atlanta, Geogia, USA, September 23-28, 2002 Nicol, D.M., Goldsby, M.E. and Johnson, M.M. (2004), ’Simulation Analysis of Virtual Geographic Routing’, the 2004 Winter Simulation Conference (WSC’04), Liu, K. and Abu-Ghazaleh, N. (2006a), ’Virtual Coordinate Backtracking for Void Traversal in Geographic Washington D.C., USA, December 5-8, 2004 Routing’, the 5th International Conference on AD HOC Caruso, A., Chessa, S., De, S.and Urpi, A. (2005), ’GPS Networks and Wireless (Ad-Hoc Now 2006), Ottawa, Free Coordinate Assignment and Routing in Wireless Canada, August 17 - 19, 2006

17

Liu, K. and Abu-Ghazaleh, N. (2006b), ’Aligned Virtual Coordinates for Geographic Routing in WSNs’, the 3rd IEEE International Conference on Mobile Adhoc and Sensor Systems (MASS 2006), Vancouver, Canada, October 9-12, 2006 NS2 (2006), ’The Network Simulator - ns-2’, version 2.29, http://www.isi.edu/nsnam/ns/ Scilab (2006), ’Scilab: The open source platform for numberical computation’, version 4.0, http://www. scilab.org/

18