1
Landmark Selection and Greedy Landmark-Descent
Routing for Sensor Networks
An Nguyen†
Nikola Milosavljević†
Qing Fang∗
Jie Gao‡
Leonidas J. Guibas†
† Department of Computer Science, Stanford University. {anguyen,nikolam,guibas}@cs.stanford.edu
∗ Department of Electrical Engineering, Stanford University. jqfang@stanford.edu
‡ Department of Computer Science, Stony Brook University. jgao@cs.sunysb.edu
Abstract—We study the problem of landmark selection for
landmark-based routing in a network of fixed wireless communication nodes. We present a distributed landmark selection
algorithm that does not rely on global clock synchronization,
and a companion local greedy landmark-based routing scheme.
We assume no node location information, and that each node
can communicate with some of its geographic neighbors. Each
node is named by its hop count distances to a small number
of nearby landmarks. Greedy routing at a node is performed
to equalize its vector of landmark distances to that of the
destination. This is done by following the shortest path to the
landmark that maximizes the ratio of its distances to the source
and the destination. In addition, we propose a method to alleviate
the difficulty in routing to destinations near the boundaries by
virtually expanding the network boundaries. The greedy routing,
when combined with our landmark selection scheme, has a
provable bounded path stretch relative to the best path possible,
and guarantees packet delivery in the continuous domain. In
the discrete domain, our simulations show that the landmark
selection scheme is effective, and the companion routing scheme
performs well under realistic settings.
Both the landmark selection and greedy routing assumes no
specific communication model and works with asymmetric links.
Although some of the analysis are non-trivial, the algorithms are
simple, flexible and cost-effective enough to warrant a real-world
deployment.
I. I NTRODUCTION
The applications emerging from the sensornet community
will depend, in part, on good design and implementation of
scalable point-to-point routing. In this space, both geographic
location-based and location-free methods have been proposed.
In geographic routing, the node currently holding the packet
forwards the packet to its neighboring node that is “closest”
to the destination. Various meanings of “closest” are possible.
The presence of holes in the sensor field can cause these
greedy methods to fail at nodes with no neighbor closer to the
destination. The failure of greedy forwarding is mainly due
to the mismatch between naming/routing rules and the actual
network connectivity when the node distribution is sparse,
having holes or of complex shape.
A variety of methods have been proposed to overcome this
difficulty and to guarantee packet delivery, if at all possible.
Probably the best known approach among these, the scheme of
greedy routing combined with face routing [1], [2], [3] builds
a planar subgraph of the connectivity graph and uses perimeter
Acknowledgment: The authors wish to acknowledge the support of NSF
grants CNS-0435111, CNS-0626151, ARO grant W911NF-06-1-0275, and
the support of DoD Multidisciplinary University Research Initiative (MURI)
program administered by ONR under Grant N00014-00-1-0637.
forwarding when greedy forwarding gets stuck. While greedy
forwarding is quite robust to sensor location inaccuracies,
perimeter routing fails in practice — a delivery rate of only
68% is observed [4], [5]. The problem comes from the failure
of the planarization of the communication graph in real world
deployment. The relative neighborhood graph and the Gabriel
graph are both connected planar subgraphs of unit disk graphs
(UDG) in theory. In reality they turn out to be disconnected
due to directional or crossing edges, as the consequence of
location inaccuracy and the deviation of the real connectivity
model from the UDG model.
To solve this problem despite the fact that accurate geographic location information is difficult and expensive to
obtain, several location-free routing schemes have been developed [6], [7], [8], [9]. These schemes build virtual coordinate
systems, respecting the true network connectivity, on which
greedy message delivery rules are developed.
Several virtual coordinate routing systems are landmarkbased [7], [8], [9]. Generally speaking, a subset of the nodes
are selected as landmarks. Every node records its hop count
distances to these landmarks. The landmark distances are then
used to generate virtual coordinates for the nodes. Routing is
typically guided in a greedy way by a potential function on
the landmark-based distances. The major differences among
these schemes are mostly in their potential functions.
Take two landmark-based schemes as examples. Gradient
Landmark-based Routing (GLIDER) [7] separates global and
local routing by partitioning the network into combinatorial
Voronoi tiles such that the nodes inside the same tile are closest
to the same landmark. The tile adjacency graph is used to
guide global routing across tiles. Local routing within a tile is
done by greedy descending on a potential function constructed
using distances to a set of local landmarks (the landmarks in
the adjacent tiles). Such a potential function is local minimum
free in the continuous domain. In another scheme, Beacon
Vector Routing (BVR) [8] takes a similar but more heuristic
approach and designs a potential function that depends on the
distances to the k landmarks closest to the destination, where
k is a system parameter. Out of the k landmarks, the ones
that are closer to the destination than to the source impose a
“pulling” force while the rest impose a “pushing” force. The
potential function is a combination of the two.
Landmark-based schemes are favored by their simplicity
and independence on the dimensions of the network. Unlike
face routing in planar graphs that requires a planar deployment
of sensor nodes, landmark-based routing schemes can be easily
extended to sensors deployed in 3D.
performance of BVR consistently and significantly compared
to that using a random landmark selection.
II. L ANDMARK S ELECTION
Fig. 1.
A typical sensor field and routing paths between 2 nodes in it.
An important issue in all landmark-based schemes that has
not been addressed is landmark selection. Obviously, poorly
selected landmarks can result in poor routing performance.
Simulations often assume that landmarks are randomly selected or manually placed along network boundaries [7], [8].
It remains a challenging open problem, both in theory and in
practice, to understand the criteria for landmark selection and
their influence on routing performance.
In this paper we propose a distributed landmark selection protocol and an accompanying simple routing scheme,
Greedy Landmark Descent Routing (GLDR). In the continuous
domain, GLDR guarantees packet delivery with provably
bounded path stretch relative to the best path possible. It
exhibits good routing performance in networks, as verified by
our simulations. In our scheme, landmarks are selected by a
randomized and distributed process that ensures approximately
uniform spacing and good separation of landmarks, for a given
separation parameter.
We show that only a constant number of nearest landmarks
of a node, denoted by the addressing landmarks, is needed
to address the node for routing. In practice, as few as 6
nearest landmarks are enough to obtain a high routing success
rate. The routing is simple: intuitively, when the source is far
away, the addressing landmark that is closest to the destination
applies a pulling force until the packet gets close to the
destination. At this point, the algorithm routes the packet
towards a single landmark selected by a local rule until
the distance to the landmark equals the distance from the
destination to that landmark. Then a new landmark is selected
and the above process repeats. We evaluated the performance
on low-degree graphs on randomly placed nodes and observed
favorable performance in both routing stretch and delivery rate
compared to BVR.
The proposed landmark selection protocol can be combined
with other landmark-based routing methods. We show by
simulation that our landmark selection protocol improves the
The success of GLDR depends on making good choices of
the set of landmarks. We build a shortest path tree rooted
at each landmark via flooding in the initialization phase.
Intuitively, GLDR allows the landmarks near the destination to
impose a “pulling force” on the packet following the shortest
path. A packet en route is therefore under the forces from
a set of nearby landmarks. By choosing only one pulling
force at a time according to a local rule, and with a set of
well selected landmarks, we can navigate the packet in the
network. Therefore, a desirable landmark selection algorithm
should give a set of landmarks that are evenly spread out, and
each node in the network, if not near a field boundary, is well
“surrounded” by a small set of nearby landmarks.
We show that we can use an r-sampling to select a ‘good’
set of landmarks. We show, in the next section, how the
r-sampling properties are essential to guarantee the greedy
routing success, and to yield a theoretically bounded per-hop
stretch factor (of 5 for realistic settings). In fact, by incurring
higher cost in node address composition, even lower stretch
could be achieved. For details, see section III-B. We propose a
distributed protocol to implement an approximate r-sampling
in a practical setting.
A. r-sampling in the Continuous Domain
Let B(p, r) denote the ball (disk) of radius r centered at p.
Definition 1: Given a continuous domain S, an r-sampling
of S is a set of points R ⊂ S such that each point in S is
within distance r of some point in R, i.e. S ⊆ ∪p∈R B(p, r).
Definition 2: We call a point p an interior point if a ball
centered at p with radius 4r is completely inside S, i.e.
B(p, 4r) ⊆ S.
We are interested in landmarks that form an r-sampling and
would like to reduce the total number of landmarks needed for
a given sensor field.
For a 2-D infinite continuous domain, the best result possible is to place landmarks at points such that they form a
hexagonal sampling pattern [10]. This could be achieved by a
global sequential algorithm.
Another strategy is to use random sampling. How many
independent samples (in fact landmarks), selected uniformly
at random from S, are sufficient to yield an r-sampling with
a confidence level s? We divide the domain into square grid
cells of area Θ(r2 ) and solve for the number of landmarks
necessary to guarantee at least one landmark in each grid cell.
This reduces our question to the coupon collector’s problem.
By a well known result [11], for m equally sized grid cells, the
expected number of landmarks needed is m(ln m+O(1)). The
logarithmic factor characterizes the expected non-uniformity
of a uniform random distribution. In other words, the oversampling rate of the randomized landmark selection algorithm
with respect to the deterministic optimal algorithm is about
logarithmic in the number of grid cells.
B. r-sampling in the Discrete Case
Definitions 1 and 2 have their discrete-case analogs, with
the distance between a pair of nodes defined as the length of
the shortest path between them.
Definition 3: The r-neighborhood of node c, denoted by
B(c, r), is the set of nodes at most r hops away from c.
We assume in this subsection that the sensor field is nice, in
a sense that any neighborhood of radius r in the sensor field
contains at least αr2 nodes for some constant α.
To obtain an r-sampling, we need to have at least one
landmark in every r-neighborhood of any interior node. One
way to carry out the sampling is to use the following sequential
greedy procedure.
Algorithm 1: All nodes are initially unmarked. While there
are unmarked nodes, repeatedly pick an unmarked node, make
it a landmark, and mark all nodes in its r-neighborhood.
This algorithm produces a set of landmarks with a minimum
distance of r-hops apart, and each non-sampled node being
in the r-neighborhood of at least one landmark. Since the
landmark’s r/2-neighborhoods are disjoint, there are at most
4n/(αr2 ) landmarks.
On the other hand, in an ad hoc network, any sequential
algorithm is prohibitively expensive. A parallel algorithm is
thus much more preferable. This motivates the following
randomized algorithm that could be executed in parallel.
Algorithm 2: Each node makes itself a landmark with a
probability p where p is some constant.
We have the following result:
Theorem 1: The set of landmarks produced by Algorithm 2
4
αr2
is an r-sampling with probability s if p ≥ 1 − (1 − s 16n ) αr2 .
Proof: First select a subset of nodes which we call
centers by following the procedure described in Algorithm 1,
substituting the r-neighborhood with r2 -neighborhood. By the
previous analysis, there are at most m = 16n/(αr2 ) centers.
If we make sure that there is a landmark in each center’s 2r -neighborhood, the set of landmarks would be an rsampling. Let Ei be the event that no node is sampled in
2
center i’s 2r -neighborhood, then Pr[Ei ] ≤ (1 − p)αr /4 . The
probability that Algorithm 2 produces an r-sampling is given
αr 2 /4 n/(αr 2 /16)
by Pr [∩m
)
. Setting this
i=1 (¬Ei )] ≥ (1 − (1 − p)
probability to be at least s and solve for p we obtain the desired
result.
Corollary 1: The expected over-sampling rate of the parallel random sampling algorithm to that of the sequential
deterministic algorithm is therefore at least:
"
4 #
4
αr2
αr2
n · [1 − (1 − s 16n ) αr2 ]
1 − s αr2
· 1−
≈
4n
16n
4
αr 2
αr 2
"
1/k #
f
=k· 1−
4m
Where k = αr2 /4 is the lower bound on the number of
nodes in an 2r -neighborhood, f = 1 − s.
For a fixed confidence level and a large network, as the rneighborhood size grows, the over-sampling rate of the parallel
algorithm to that of the sequential algorithm grows linearly
with the local neighborhood size (which is quadratic in r).
The performance gap between the sequential algorithm and
the randomized parallel algorithm is rather significant. This
result motivated us to design a protocol that finds the middle
ground between the two algorithms.
C. The Protocol
During the network initialization phase, we select a set
of landmarks by computing an approximate r-sampling of
the network nodes, and the shortest path trees rooted at
these landmarks. We propose to use a randomized, distributed
scheme that combines both processes. First, each node in the
network generates a number v uniformly at random in [0, 1).
Each node then waits for Kv time, where K is a network
parameter, and the unit of time is the time it takes to send
a packet from a node to its neighbor. If during this waiting
period, a node is not suppressed by any other node, it declares
itself a landmark. The new landmark broadcasts its status to
its r-neighborhood, suppressing all non-landmark nodes in it.
When K is large, the above scheme effectively gives us
a sequential algorithm for computing an r-sampling. When
K is small, some supressing messages arrive too late due to
the delay incurred in communication. Consequently, additional
landmarks are selected. When the nodes are distributed
approximately regularly (as defined below), we can upper
bound the expected number of landmarks.
Definition 4: We say that the node distribution is (α, β)regular (β ≥ α ≥ 1) if the ⌊r⌋-neighborhood contains between
αr2 and βr2 nodes, for any r ∈ R.
Theorem 2: If the node distribution is (α, β)-regular,
then any r-neighborhood contains, in expectation, at most
(9β/Kr2 + 16β − 1) landmarks.
Proof: See Appendix VI-A.
Theorem 2 shows that by adjusting K, we can tradeoff
between the over-sampling rate and the time requires to
complete the sampling process. For K = Θ(r), the oversampling rate grows linearly with r. To have a constant oversampling rate, we need K = Θ(r2 ).
III. L ANDMARK - DESCENT —
THE
G REEDY RULE
To route a packet to a destination, the source node selects,
out of the landmarks that address the destination, the one that
maximizes the ratio of distances to source and destination.
It then moves towards this landmark along the shortest path,
until the landmark becomes equally distant from the source
and the destination, at which point, the process repeats.
Effectively, the source is trying to equalize its vector of
landmark distances to that of the destination, by only reducing
the distances, i.e. going toward landmarks, not away from
them. If the source and the destination coincide, these vectors
are indeed equal. However, the converse is not true because
multiple nodes may have the same hop count distances to
the same set of landmarks. Nevertheless, in the continuous
domain we will show that not only does the converse hold,
but the distance vector can be made equal using a simple
greedy strategy, i.e. decreasing the coordinate that maximizes
the discrepancy (the ratio to the corresponding destination
coordinate).
In the discrete domain, our experimental results show that
such a greedy strategy succeeds with high probability. However, it is possible that the packet gets stuck into a loop
before reaching its destination. Based on our simulations, by
remembering the IDs of the last 8 extreme nodes (nodes at
which the packet stopped proceeding to its current landmark),
we can detect such a situation and declare the packet gets
stuck.
Once a packet gets stuck, it is greedily forwarded to the
destination using L1 and L∞ norms, and if the destination
is still not reached, a scoped flooding is used to deliver the
packet.
In the following sections, we first describe the continuous
version of the landmark descent routing and provide theoretical
results. We then describe the routing algorithm in a discrete
network. We assume continuous, simply connected (without
“holes”) sensor domain with an outer boundary in the form of
a closed curve.
d
l
d
s
4r
s
s′
l
Fig. 2.
Landmark descent can Fig. 3.
Landmark descent always
always proceed if d is an interior makes progress if |sl| > |dl|.
point.
A. Greedy Success in the Continuous Domain
Fig. 5.
Suppose there is a set of landmark nodes in the domain.
The algorithm will use only distances to landmark nodes for
routing to non-landmark points. Each destination is addressed
by the vector of distances from a subset of landmarks. We will
see later, by theory and simulation, that this number can be
made small (independent of the network size).
In landmark-descent, the source is trying to equalize its
vector of landmark distances to that of the destination. If the
source and the destination coincide, these vectors are indeed
equal. In this section we show that under certain conditions
on the landmark placement the converse is also true, i.e. the
destination is the only point with this property. Furthermore,
we show that the vector can be made equal using a simple
greedy strategy.
For simplicity of notation, throughout we use s, d and l
to denote the source, destination and landmark points that are
used in one routing step. Furthermore, we denote by s′ the
point to which the source moves after the step has been taken.
The following lemma says that unless it has reached the
destination, the source can always find a discrepancy in the
coordinates, i.e. the process can never terminate prematurely.
This is under the condition that the destination be an interior
point.
Lemma 1: If d is an interior point, then as long as s 6= d,
there is a landmark l that satisfies |sl| > |dl|.
Proof: Assume s 6= d, and consider the intersection of
B(d, 4r) and the open halfplane defined by the line through d
perpendicular to sd, and not containing s (Figure 2). This area
is contained in the domain, since d is an interior point, and it
contains a ball of radius r. Therefore it contains a landmark
l, by the r-sampling condition. Clearly ∠sdl > 90◦ > ∠dsl,
so |sl| > |dl|.
The next result says that by equalizing the coordinates, the
source indeed gets closer to the destination in terms of the
straight-line distance.
Lemma 2: If |sl| > |dl|, then |s′ d| < |sd|.
Upper bound on R/r for various κ.
Proof: Refer to Figure 3. Since △ds′ l is isosceles,
∠ds l < 90◦ , so ∠ss′ d > 90◦ . This implies ∠dss′ < 90◦ ,
hence |s′ d| < |sd|.
From the previous two results it is obvious that the routing
process eventually terminates by reaching the destination, if
the latter is an interior point. We summarize this part in the
following theorem.
Theorem 3: If d is an interior point, the landmark descent
routing to d is always successful.
′
B. Bounded Stretch in the Continuous Domain
In this section, we analyze
l
the theoretical performance of
α
our routing approach. Let s be
the current point, d the desρx
tination, l a landmark, ρ =
x
|sl|/|dl|, and φ = π − ∠sdl
s′
s′′′ s′′
(see Figure 4). Assume that
φ
ρ > 1 and let s′ be the
s
d
point on the line sl such that
|s′ l| = |dl|. The ratio κ = Fig. 4. Bounding the one-step
|ss′ |/(|sd| − |s′ d|) we call the stretch κ by a function of ρ or φ.
one-step stretch factor of routing from s to d using l.
We first relate κ to the minimum distance between d and
its addressing landmarks (including l).
Lemma 3: If the landmarks form an r-sampling and the
distance between d and its addressing landmarks is at least R,
then f (κ) ≥ R/r, where
1
1
,
v =1− ,
κ2
κ
p
w = (1 − u2 ) + 2u2 (1 − v 2 ) + 2u (1 − v 2 )(1 − u2 v 2 ) .
f=
4
√ ,
1+u− w
u=1−
Proof: See Appendix VI-B
It is straightforward to show that for κ > 1, f (κ) is
monotonically decreasing with range (2, ∞). It follows that its
inverse f −1 exists, and κ ≤ f −1 (R/r) for R > 2r. The plot
of f is shown in Figure 5. Apparently, the lower the stretch
upper-bound, the farther away the addressing landmarks need
to be. To have an upper bound of 5 on the per-hop stretch, we
need each node to be addressed by its distances to landmarks
that are at least 5r away. We will show in the next corollary
that the number of addressing landmarks for each node is an
scale-free constant. We have thus proved:
Theorem 4: If R > 2r, then κ is bounded.
In the rest of the paper we assume R = 2r for simplicity.
Now we can bound the number of addressing landmarks,
a quantity essential for scalability of the system, under the
regularity assumption of node distribution in the previous
section.
Corollary 2: If the node distribution is (α, β)-regular, then
the expected number of addressing landmarks for any node is
at most (144β/Kr2 + 16β − 1)p.
Proof: Not difficult, but omitted for brevity.
C. Greedy Landmark Descend Routing (GLDR) in Networks
Each GLDR packet carries in its header, (i) the address of
the destination, (ii) the ID of the landmark toward which the
packet is forwarded, (iii) a list of recently encountered extreme
nodes.
The address of a destination is a vector of distances to its
addressing landmarks, together with its ID (multiple nodes
may have the same set of nearest landmarks). A packet’s
header is updated only at extreme nodes, nodes with the same
distance to the current landmark as the destination. At an
extreme node, if there is no landmark that is farther from
the node than from the destination or if the extreme node is
found in the packet header, the packet is stuck. If not, the
current extreme node is added to the header. The packet is
then forwarded toward the landmark that maximizes the ratio
of distances to the current node and to the destination.
If a packet gets stuck, we resort to flooding. As this is
expensive, we actually forward the packet greedily using L1
norm, then using L∞ norm. If the destination is still not
reached, we perform scoped flooding. The pseudo code to
implement the algorithm is shown in III-C.
To keep the packet header small, we do not store all extreme
nodes that we encountered and only keep the last 8 recently
encountered extreme nodes in the header. While there is no
theoretical proof that such a short list suffices to detect looping,
in our extensive simulation we never encountered a loop. This
is because looping is usually caused by too small a number
of landmarks being available for routing.
We would like to emphasize that GLDR is simple and easy
to implement. A local greedy rule guides the greedy routing
at each step. The protocol is stateless unless loop occurs in
the route, which rarely happens.
D. Handling the Boundary Effect
Recall that the results we discussed up to now apply to
interior nodes only. For the non-interior nodes, the routing
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
if p.mode = GLDR then
if dist(p.bestBase) > dist(p.dest) then
FORWARD p toward p.bestBase
else
if current node is in p.extremeNodes then
SET p.mode = L1
else
RECORD current node into p.extremeNodes
COMPUTE new base p.bestBase
if p.bestBase = null then
SET p.mode = L1
else
FORWARD p toward p.bestBase
end if
end if
end if
end if
if p.mode = L1 then
if some neighbor nb is closer to p.dest using L1 then
FORWARD p to nb
end if
SET p.mode = L∞
end if
if p.mode = L∞ then
if some neighbor nb is closer to p.dest using L∞ then
FORWARD p to nb
end if
FLOOD to find p.dest
end if
Algorithm 1.
Pseudocode for routing a packet p.
is more challenging. Intuitively speaking, for virtual coordinate based methods, routing to destinations near the network
boundaries is more difficult because there are less and/or only
one-sided reference points to navigate the packets. Specifically
in our case, the assumptions of our continuous domain results
(Lemma 2, Theorems 3, and 4) are not even approximately
satisfied near the boundary. This setback is common in all
virtual coordinate based methods.
To alleviate this “boundary effect”, we propose to virtually
expand the sensor field. Suppose that we duplicate the noninterior part of the network, and place it immediately below
the original so that they meet along the boundary. The expanded network is obtained by “unfolding” the replica. This
effectively provides “pulling forces” on packets towards the
boundary.
We first extend the definitions of shortest paths and distances. Paths between the original (real) and replicated (virtual) nodes are required to visit a boundary node, and are
thus called reflected paths. The distance between two such
nodes (reflected distance) is the length of shortest reflected
path connecting them. The reflected and the standard straightline distance between x and y are denoted by hxyi and |xy|,
respectively.
Now we can define an augmented landmark selection procedure and the matching routing algorithm to be essentially
the same as in the base case. This is possible because the
algorithms operate only on shortest paths.
If the boundary is not very curved compared to r, it locally
looks like a straight line (Figure 6 left). Thus using a virtual
landmark is almost the same as using its “mirror image” with
respect to the boundary, viewed as a real landmark.
A. Default simulation setup
s
R
x
x
l
l′
R
Fig. 6. Left: When the boundary is “locally straight”, replacing a virtual
landmark l by a “reflected” real landmark l′ preserves the distances involved
(e.g. |sl′ | = hsli), and does not change the routing step. For a general
low-curvature boundary, the change will be small. Right: Assumption on the
curvature of the boundary.
From the above discussion it should be clear that the results
will depend on some measure of curvature of the boundary.
As the boundary is not always known in a realistic setting,
and even more complex issues arise when there are large
‘holes’ [12], [13] in the network, we at this stage study this
method more or less as a theoretic interesting possibility rather
than a practical solution to ad-hoc networks. In particular, we
assume that the boundary is a smooth curve such that the two
tangential balls of radius R at any point x on on the curve, do
not intersect the curve anywhere except in x (Figure 6 right).
In practice the boundary can often be approximated by such a
curve to within an accuracy comparable to discretization error.
Theorem 5: If R is large enough compared to r, the
augmented-GLDR guarantees packet delivery along a path
of bounded stretch factor. In particular, if R ≥ 320r, and
the stretch factor of the base case routing is κ < 2.5 (cf.
Theorem 4), then the stretch factor of the augmented-GLDR
is at most 7κ/(5 − 2κ).
Proof: The key idea is to replace a virtual landmark used
in a given routing step by a carefully designed real landmark
which results in a similar routing step. The base case results
can then be applied to the latter. For technical details, see
Appendix VI-C.
The reason for using virtual landmarks is to compensate for
the lack of addressing landmarks for non-interior nodes along
the field boundary. They are used, and only incur extra storage
cost, in a local neighborhood along the boundary. Specifically,
virtual landmarks need only to flood 12r hops inward from
the boundary, to let nodes in this region learn their distances
to virtual landmarks, and non-interior nodes learn their local
addresses. It is easy to see that only nodes within 12r hops
away from the boundary need to learn their distances to virtual
landmarks: all the other nodes are interior, so they must have
at least one real addressing landmark; after only one step of
landmark descent (always to a real landmark), the new source
position s′ will be within 8r hops from d (for it suffices to
pick any of d’s real addressing landmarks, which are all at
most 4r hops away from d), i.e. at most 12r hops away from
the boundary.
IV. S IMULATIONS
We implemented our landmark selection and routing algorithms in java, for heuristic study. We simulate the network at
the network level, not taking into account networking issues
such as packet loss or delay.
In our simulations, we generated 3200 nodes randomly in
a unit square, see Figure 1. The communication radius was
set to make the average node degree roughly 10. The field
was fairly dense, but still had many small holes, which made
greedy routing challenging.
We generated the landmarks to form an 10-sampling. The
default K was 1200. For a given sensor field, we ran our
landmark selection schemes 100 times, and for each set of
landmarks obtained, we generated 320 pairs of random source
and destination points and computed the routes between them
using that set of landmarks. When routing, we used the
distance to the nearest 10 landmarks of a node as its address.
In each simulation, we varied a single parameter and kept
the other parameter as in the above default setting. We collected statistics on all the 32000 paths computed for different
parameters we were interested in. For comparison, we ran
BVR and computed statistics on the same 32000 paths on
the same sensor field.
In this default setup, there were on average 28.2 landmarks.
Our routing algorithm achieved a success rate of 90.9% without flooding. When the routing failed, the hop distance from
the node where the algorithm terminated to the destination was
4.47 on average, with a standard deviation of 2.34.
B. Successful delivery rate
We considered the performance of the routing algorithm
by varying the number of routing landmarks, the r-sampling
parameter (landmark separation distance, roughly), and the
average network degree. The success rate is shown in Figure 7.
First we gradually increased the number of routing landmarks and found that, as expected, the success rate also
increased, from 85% with only 6 landmarks, up to 92% with
18 landmarks. We observed that the nodes where GLDR failed
to delivered were often near the boundary so that they were
not “well surrounded” by their routing landmarks. GLDR must
often rely on greedy routing using L1 norm and L∞ norm to
reach boundary nodes, and increasing the number of routing
landmarks does little to help for this phase.
When the number of routing landmarks was small, GLDR
was more successful than BVR; as the number increased, the
performance gap narrowed. BVR’s random landmark selection
often produces highly irregular landmarks and may not work
well when only a few routing landmarks are used.
We also examined the influence of the total number of
landmarks. We varied the separation distance r in the landmark
selection algorithm between 6 and 18, and the number of
landmarks from around 60 to around 20. The performance
improved with more landmarks, mostly because more nodes
near the boundary were “well covered” by the extra landmarks.
Finally, we varied the communication radius so that the
number of communication neighbors, averaged over all nodes,
was between 6 and 18. As the average degree increased, fewer
landmarks were used, so that the landmark density remained
relatively fixed. GLDR performance improved when network
degree was high, as the network became more regular.
Fig. 7.
The success rate of GLDR is high for various settings. GLDR compares favorably to BVR.
In all cases, the success rate of GLDR was consistently over
80%, and frequently over 90%, which is good, considering the
relatively low degree of the network.
C. Remaining paths and stretch factors
We varied the density of the landmarks by changing the
landmark separation distance parameter between 6 and 18
in the landmark selection algorithm. For pairs of nodes on
which the routing got stuck, we computed the hop count
from the terminating nodes to the destinations. This measure
gave us some idea on how much we need to flood in order
to reach the destination. When we could route successfully,
we also computed the shortest path between the source and
the destination, and computed the stretch factor. The average
remaining path (Figure 8) was comparable with the separation
distance between landmarks. The stretch factor of the path
(Figure 9) was quite small, between 1.04 and 1.09. A typical
route was about 30 hops, which means that our routes were
only 1 − 3 hops longer than the shortest paths.
GLDR compared favorably to BVR in these measures.
D. Landmark selection
We measured the effectiveness of the landmark selection
algorithm in GLDR. For this purpose, we ran the selection
algorithms for various values of K, see Table I.
As K increased, the number of landmarks decreased, as
landmarks had more time to suppress nearby nodes, preventing
them from becoming landmarks. From Table I, we noted that
when K increased from 600 to 3, 000, the number of landmarks increased, but the routing performance stayed relatively
constant. This suggests that tightly clustered landmarks might
not contribute much to the routing quality, and that the K
value should not be too small. On the other hand, when K
increased above 1, 200, the number of landmarks started to
stabilize. As the network initialization time was dominated
by K, K should be small, at the expense of having more
landmarks in the network.
We compared the performance of GLDR with landmarks
chosen uniformly at random, and according to II-C. The
success rate degraded significantly with random landmarks,
as there were more nodes that are not “surrounded” well
by landmarks. Thus, our landmark selection is crucial for
effectiveness of GLDR.
E. Improving BVR with r-sampling landmark selection
Our landmark selection scheme can be used to improve
other landmark-based algorithms. For example, it helped improve the success rate of BVR (Figure 10). The performance
Fig. 11.
Virtual landmarks improve routing performance.
of BVR with our landmark selection scheme is very similar
to GLDR.
F. Improving routing performance using virtual landmarks
We tested the idea of virtual nodes and landmarks for
routing to nodes near the sensor field boundary (Section III-D).
To simplify the implementation, we selected virtual landmarks
to coincide with real landmarks which are near the boundary
(instead of choosing them in the same way as in the base case,
only using a different notion of distance for some landmark
pairs). We found that the virtual landmarks improve the routing
quality of GLDR, see Figure 11.
V. C ONCLUSION
We proposed a practical landmark selection protocol that
uniformly samples a network of sensors. Combined with a
simple greedy routing based on distances to landmarks, we
can achieve good routing performance which is provable in the
continuous domain and manifested in our extensive network
simulations. GLDR, while comparable to BVR in performance
categories such as packet delivery rate and routing path length,
has lower routing overhead. Further, the landmark selection
algorithm is also beneficial to some other landmark-based
routing schemes. Our experiments showed that BVR’s performance improves significantly with a set of landmarks/beacons
selected using this algorithm.
Landmark selection is seldom a stand-alone problem, but
rather strongly tied to the overlying application, be it point-topoint network routing or robot navigation. This paper provides
a practical solution in the context of routing in wireless
ad-hoc networks. The general problem remains important
and challenging. We hope this paper could encourage more
research interest in this direction in the networking community.
Fig. 8. Unsuccessful routes ended up near the
destination.
Fig. 9.
Successful routes had low stretch factor.
TABLE I
T HERE ARE FEWER LANDMARKS WHEN K
K
#LM
GLDR
No LMS
300
57.1
0.921
0.861
600
37.5
0.904
0.841
900
30.7
0.901
0.831
1200
27.6
0.904
0.832
1500
25.8
0.906
0.828
Fig. 10. Good landmark selection scheme can be
used to improve the performance of BVR.
INCREASES .
1800
24.5
0.904
0.822
2100
23.7
0.906
0.814
2400
23.2
0.906
0.808
3000
22.4
0.905
0.800
VI. A PPENDIX
R EFERENCES
[1] P. Bose, P. Morin, I. Stojmenovic, and J. Urrutia, “Routing
with guaranteed delivery in ad hoc wireless networks,” Wireless
Networks, vol. 7, no. 6, pp. 609–616, 2001. [Online]. Available:
citeseer.ist.psu.edu/bose01routing.html
[2] B. Karp and H. Kung, “GPSR: Greedy perimeter stateless routing for
wireless networks,” in Proc. of the ACM/IEEE International Conference
on Mobile Computing and Networking (MobiCom), 2000, pp. 243–254.
[3] F. Kuhn, R. Wattenhofer, Y. Zhang, and A. Zollinger, “Geometric ad-hoc
routing: Of theory and practice,” in Proc. 22 nd ACM Int. Symposium
on the Principles of Distributed Computing (PODC), 2003, pp. 63–72.
[4] Y.-J. Kim, R. Govindan, B. Karp, and S. Shenker, “Geographic routing
made practical,” in Proceedings of the 2nd USENIX Symposium on
Networked Systems Design and Implementation (NSDI ’05), Boston,
MA, USA, May 2005.
[5] B. K. S. S. Young-Jin Kim, Ramesh Govindan, “On the pitfalls of
geographic face routing,” in Proceedings of the Third ACM/SIGMOBILE
International Workshop on Foundations of Mobile Computing, September 2005.
[6] A. Rao, S. Ratnasamy, C. Papadimitriou, S. Shenker, and I. Stoica,
“Geographic routing without location information,” in Proc. 9th Annual
International Conference on Mobile Computing and Networking (MobiCom 2003). San Diego: ACM Press, September 2003, pp. 96–108.
[7] Q. Fang, J. Gao, L. Guibas, V. de Silva, and L. Zhang, “GLIDER:
Gradient landmark-based distributed routing for sensor networks,” in
Proc. of the 24th Conference of the IEEE Communication Society
(INFOCOM), March 2005.
[8] R. Fonesca, S. Ratnasamy, J. Zhao, C. T. Ee, D. Culler, S. Shenker,
and I. Stoica, “Beacon vector routing: Scalable point-to-point routing in
wireless sensornets,” 2005.
[9] A. Caruso, A. Urpi, S. Chessa, and S. De, “GPS free coordinate
assignment and routing in wireless sensor networks,” in Proc. of the 24th
Conference of the IEEE Communication Society (INFOCOM), March
2005.
[10] R. Williams, The Geometrical Foundation of Natural Structure: A Source
Book of Design. New York: Dover Publications, 1979.
[11] R. Motwani and P. Raghavan, Randomized Algorithms. Cambridge
University Press, 1995.
[12] A. Kroller, S. Fekete, D. Pfisterer, and S. Fischer, “Deterministic
boundary recognition and topology extraction for large sensor networks,”
in SODA ’06: Proceedings of the seventeenth annual ACM-SIAM symposium on Discrete algorithm. New York, NY, USA: ACM Press, 2006,
pp. 1000–1009.
[13] Q. Fang, J. Gao, and L. J. Guibas, “Locating and bypassing holes in
sensor networks,” Mobile Networks and Applications, vol. 11, no. 2, pp.
187–200, 2006.
[14] N. Amenta and M. W. Bern, “Surface reconstruction by Voronoi
filtering,” in Symposium on Computational Geometry, 1998, pp. 39–48.
[Online]. Available: citeseer.ist.psu.edu/article/amenta98surface.html
2700
22.8
0.905
0.805
A. Proof of Lemma 2
Consider any node c. Let T be the number √
of landmarks in B(r, c).
β
(3 + α)2 . Let 2ρ + 1 be the
Suppose that T ≥ t, where t ≥ t∗ := α
smallest odd upper bound on the minimum inter-landmark distance.
ρ-neighborhoods of the landmarks are disjoint, and contained in
, by a standard packing
B(c, r + ρ). It follows ρ ≤ √ r
αt/β−1
“p
”
√
2
argument. Using t ≤ βr we find 1 ≤ αr/
αt/β − 1 , hence
√
(2 + α)r
.
2ρ + 1 ≤ p
αt/β − 1
(1)
Since t ≥ t∗ , the right hand side of (1) is at most r, so the
two landmarks p and q which realize the minimum inter-landmark
distance are at most r hops from each other. Hence
√
(2 + α)r
p
|vp − vq | ≤
.
(2)
K( αt/β − 1)
The probability of this event is at most the value of the right hand
side (which is at most 1, assuming K ≥ r). By definition, E[T ] ≤
P 2
(t∗ − 1) + βr
t=t∗ Pr[T ≥ t]. We bound the sum using (2).
2
βr
X
t=t∗
2
βr
√
√
Z
(2 + α)r
(2 + α)r
dt
p
p
≤
K
αt/β
−1
K( αt/β − 1)
t=t∗
√ «
2β( √2α + 1)r 2 „
ln(r α)
√
≤
.
1+
K
r α
We can simplify the expression using r ≥ 1, α ≥ 1, and
(for x > 0), to obtain the desired result.
ln x
x
≤
1
2
B. Proof of Lemma 3
p
Lemma 4: κ ≤ ρ/(ρ − 1).
Proof: Without loss of generality assume |sd| = 1. Let |dl| = x
and ∠sld = α. It follows |sl| = ρx and |s′ d| = 2x sin(α/2) (see
Figure 4). We have
(ρ − 1)x
κ=
1 − 2x sin α2
h
αi
1 = ρ2 x2 + x2 − 2ρx2 1 − 2 sin2
2
(definition of κ) ,
(cosine law △sdl) .
l
s
s′
x
l′′
τ
φ φ′
d d′
a
s
g
o
s′′
b
θ
≥R
Fig. 12.
l
θ
l′
d
Bounding the one-step stretch factor.
y
z
Eliminating sin(α/2),
κ=
1−
p
(ρ − 1)x
.
(1 − (ρ − 1)2 x2 )/ρ
(3)
1
1
Triangle inequality |ρx − 1| ≤ x implies x ∈ [ ρ+1
, ρ−1
]. Tedious
but straightforward calculations show thatpthe right hand side of (3)
is minimized
over this interval for x = 1/ ρ(ρ − 1), at which point
p
κ = ρ/(ρ − 1).
Lemma 5: If φ < π/2, then κ ≤ 1/(1 − sin φ).
Proof: Let s′′′ be such that ss′′′ is parallel to dL and s′′′ d is
perpendicular to both ss′′′ and dL. Let s′′ be the intersection of s′′′ d
and ss′ , see Figure 4. Note that ∠ds′ L = ∠s′ dL < π/2, and when
when φ < π/2, it is easy to see that s′′ is between s′′′ and d, and
s′′ is also between s and s′ .
From triangle inequality, |ss′ | = |sL| − |dL| ≤ |sd|. We also have
that |s′ d| ≤ |s′′ d| ≤ |s′′′ d| = |sd| sin φ. Thus κ = |ss′ |/(|sd| −
|s′ d|) ≤ 1/(1 − sin φ).
Note that as s approaches d, ρ approaches 1 and φ may or may
not be acute. Thus both Lemma 4 and 5 do not yield any bound on
κ. We now restrict the routing landmarks of d to only landmarks that
are further than some threshold distance R from d. We also assume
that we select the landmark L such that the ratio ρ for L is the largest
among those.
Let o be the center and τ be the radius of the Apolonius circle of
sd with ratio ρ, the circle C of all points p satisfying |ps|/|pd| =
|ls|/|ld| = ρ. It is well-known that o is on the line sd. Let a and b be
the intersection of this circle with sd, with a is between sd and b is
outside (Figure 12). By the choice of l, there is no routing landmark
of d inside C.
From ρ = |ss|/|sd| = |bs|/|bd|, it is easy to see that |da|/|db| =
(ρ − 1)(ρ + 1) < 1, and thus d is between a and o. By Lemma 4,
|da|/|db| ≤ 1/(2κ2 −1) = (1−u)/(1+u), and thus |da| ≤ τ (1−u),
|do| ≥ τ u, |db| ≥ τ (1 + u).
Let d′ be between d and o such that |d′ b| = τ (1 + u). Let g =
(|db| − |dl|)/2. Since there is a disk of radius g empty of landmarks
(Figure 12), we have r ≥ g ≥ (|d′ b| − |d′ l|)/2 = τ (1 + u − x)/2,
where x = |d′ l|/τ can be bounded as follows.
√
Lemma 6: For w as in√
the statement of Lemma 3, x ≤ w.
Proof: Suppose x > w. Then
x2 − (1 − u2 )
> 0,
2x
so φ < π/2. By Lemma 5, sin φ ≥ 1 − 1/κ = v, and thus
cos φ ≥ cos φ′ =
sin2 φ + cos2 φ ≥
(x2 − (1 − u2 ))2
+ v2 > 1 ,
4x2
a contradiction.
Since R ≤ |dl| ≤√2τ , r ≥ R(1 + u − x)/4. From Lemma 6,
R/r ≤ 4/(1 + u − w) =: f (κ).
C. Proof of Theorem 5
We give only the proof for the case when s, d, s′ are real and l
is virtual (Figure 13), the other cases are similar.
Let x and y be the boundary points where the shortest paths sl and
dl cross the boundary. Let l′ be such that |sl′ | = hsli and |dl′ | = hdli
Fig. 13.
virtual.
Analysis of the augmented-GLDR when s, d, s′ are real, and l is
(in general, there are two such points symmetric with respect to the
line sd, but we define l′ the be the one on the same side of the line
as the local boundary).
Notice that l was picked as a routing landmark because the distances (possibly reflected) among s, d and l satisfy certain relations.
By construction, s, d and l′ preserve this set of distances. It follows
that if the base case protocol is applied to s, d and l′ , then Theorem 4
provides a stretch guarantee, but for a “new source position” s′′ ,
which is different than s′ in general. The “true” one-step stretch is
|ss′ |
|ss′′ | + |s′ s′′ |
|ss′′ | + |s′ s′′ |
,
≤
≤ |ss′′ |
′
′′
′
′′
|ds| − |ds |
|ds| − |ds | − |s s |
− |s′ s′′ |
(4)
κ
which tends to κ as |s′ s′′ |/|ss′′ | becomes smaller. Thus if we prove
that |s′ s′′ |/|ss′ | ≪ 1, we are done.
We bound the ratio as follows. Let θ be the (small) angle between
the boundary normals at x and y. Let l′′ and z be the mirror images
of l about the tangents to the boundary at x and y, respectively. We
find that |dl′′ | ≈ hdli, specifically
||dl′′ | − |dz|| ≤ |zl′′ | (triangle inequality)
⇒ ||dl′′ | − hdli| ≤ max{|ll′′ |, |lz|}θ ≤ 2hsliθ .
Now, △sdl′′ and △sdl′ have two pairs of sides of the same lengths
(|sd| and hsli) and one which differs only slightly (at most 2hsliθ).
The small change in the length implies a small change in the internal
angles, more precisely
∠l′ sl′′ ≤ 2 ·
2hsliθ
||dl′′ | − |dl′ ||
≤2·
≤ 4θ .
|sl′′ |
hsli
(multiplying the fraction by 2 is far too sloppy, but illustrates the
point). Hence |s′ s′′ | ≤ 4θ · |ss′ |.
So we have bounded the ratio by a multiple of the angle θ between
the normals, which we expect to be small if the curvature is low.
Formally, we know that x and y are close – at most 8r apart (both
are within 4r from l) – and we invoke the following well known
geometric lemma.
Lemma 7 (Amenta and Bern [14]): The angle between the normals whose footpoints are at most ρ ≤ R/4 apart is at most 4ρ/R.
It follows that if R ≥ 320r, then θ ≤ 4 · 8r/(320r), hence
|s′ s′′ |/|ss′ | ≤ 0.4. Substituting into (4) we find that the one-step
stretch is bounded.
Notice that the proof so far did not assume (or require) guaranteed
delivery, as it was concerned only with a single routing step. However,
we can use the single-step analysis to prove that even in the
augmented case the destination is always reached. As in the onesided case, it suffices to prove, in the same setting as above, that
|sd| > |s′′ d|. But this simply follows by the following chain of
inequalities
|sd| − |s′′ d| ≥ |sd| − |s′ d| − |s′ s′′ | ≥ (κ − 4θ)|ss′ | ,
which is positive, under our low curvature requirement.
Once we have the delivery guarantee, we can extend the one-step
stretch bound to the entire path. This completes the proof.