Naming and Routing Using Global Topology...

10
Naming and Routing Using Global Topology Discovery Qing Fang Department of Electrical Engineering Stanford University Stanford, CA 94305 E-mail: [email protected] Jie Gao, Leonidas J. Guibas Department of Computer Science Stanford University Stanford, CA 94305 E-mail: {jgao,guibas}@cs.stanford.edu Li Zhang Information Dynamics Laboratory, HP Labs, Palo Alto, CA 94304 E-mail: [email protected] Abstract—We present a novel approach to providing a naming structure and associated routing algorithms for a network of nodes distributed over a 2-d field. We assume that these nodes communicate wirelessly with some of the other nodes in their proximity but do not know their geographic location; such scenarios are common in sensor networks. In a preprocessing phase we partition the nodes into routable tiles — regions where the node placement is sufficiently dense and regular that local greedy methods can work well. The adjacency relations between these tiles capture the global topology of the field. This includes not just connectivity but also the presence of holes, etc. Each node is named using the name of the tile containing it and a set of local coordinates derived from connectivity graph path distances within its tile and those that form its topological neighbors. We show that efficient and load- balanced global routing can be implemented by using the tile adjacency graph for global route planning and then these local coordinates for realizing actual inter- and intra- tile routes. Keywords: System design, Graph theory, Combinatorics I. I NTRODUCTION The need to impose a network infrastructure on large collections of simple nodes communicating with their neighbors arises in many contexts. For example, in sen- sor networks nodes commonly communicate via wireless links and, in any given deployment, a node can reach some (though typically not all) neighbors within a certain range. Across all of networking, naming schemes and routing algorithms are closely related — appropriate naming schemes enable efficient routing. In more struc- tured settings, such as the Internet, IP addresses exhibit a natural hierarchical structure which is heavily exploited in the data structures (routing tables) and algorithms used by routers. In cases where deployment is more ad hoc and the link state more fragile, as in sensor networks, local greedy forwarding protocols have been proposed based on treating the geographic location of the node as its network address. Such protocols can operate directly using local information and do not need more global state that can be expensive to update and maintain. Although geographical location gives the nodes natu- ral names and enables efficient routing in many cases, it is not always easy or inexpensive to obtain. GPS receivers can be costly and lead to cumbersome form factors; furthermore, they do not work indoors, or in con- ditions under heavy foliage, etc. Since in most settings it is not feasible to have each node be equipped with a GPS receiver, various localization algorithms have been developed [14], [15]. In these methods the geographic location of certain anchor nodes is assumed to be known (either manually, or through GPS). Then other nodes determine their location by estimating their distances to three anchors and become anchors themselves, and so on. Still, such techniques are both expensive and inaccurate. What’s more, geographic information may not correlate that well with communication and connectivity. The assumption that the wireless communication range be modeled by a unit disk is too simple and unrealistic [6], [10]. Interference between wireless channels also plays an important role in determining the available connec- tivity and bandwidth. In in-door situations or for non- uniformly distributed sensors, nodes that are geographi- cally close may actually be distant in the communication graph. That is why simple greedy forwarding schemes may encounter local minima where packets get stuck. When the geographical location of the sensors does not map well to the communication graph, location based routing might be misleading and inefficient. In contrast with geographical location, link infor- mation and connectivity is more reliable in designing routing algorithms. In fact, localization algorithms exist that take link information and predict the geographical location of the sensor nodes [11], [12], which are then used by geographical routing schemes to select routing

Transcript of Naming and Routing Using Global Topology...

Page 1: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

Naming and Routing Using Global TopologyDiscovery

Qing FangDepartment of Electrical Engineering

Stanford UniversityStanford, CA 94305

E-mail: [email protected]

Jie Gao, Leonidas J. GuibasDepartment of Computer Science

Stanford UniversityStanford, CA 94305

E-mail: {jgao,guibas}@cs.stanford.edu

Li ZhangInformation Dynamics Laboratory,

HP Labs,Palo Alto, CA 94304

E-mail: [email protected]

Abstract— We present a novel approach to providing anaming structure and associated routing algorithms for anetwork of nodes distributed over a 2-d field. We assumethat these nodes communicate wirelessly with some of theother nodes in their proximity but do not know theirgeographic location; such scenarios are common in sensornetworks. In a preprocessing phase we partition the nodesinto routable tiles — regions where the node placement issufficiently dense and regular that local greedy methodscan work well. The adjacency relations between these tilescapture the global topology of the field. This includes notjust connectivity but also the presence of holes, etc. Eachnode is named using the name of the tile containing itand a set of local coordinates derived from connectivitygraph path distances within its tile and those that formits topological neighbors. We show that efficient and load-balanced global routing can be implemented by using thetile adjacency graph for global route planning and thenthese local coordinates for realizing actual inter- and intra-tile routes.

Keywords: System design, Graph theory, Combinatorics

I. I NTRODUCTION

The need to impose a network infrastructure on largecollections of simple nodes communicating with theirneighbors arises in many contexts. For example, in sen-sor networks nodes commonly communicate via wirelesslinks and, in any given deployment, a node can reachsome (though typically not all) neighbors within a certainrange. Across all of networking, naming schemes androuting algorithms are closely related — appropriatenaming schemes enable efficient routing. In more struc-tured settings, such as the Internet, IP addresses exhibit anatural hierarchical structure which is heavily exploitedin the data structures (routing tables) and algorithms usedby routers. In cases where deployment is more ad hocand the link state more fragile, as in sensor networks,local greedy forwarding protocols have been proposedbased on treating the geographic location of the node as

its network address. Such protocols can operate directlyusing local information and do not need more globalstate that can be expensive to update and maintain.

Although geographical location gives the nodes natu-ral names and enables efficient routing in many cases,it is not always easy or inexpensive to obtain. GPSreceivers can be costly and lead to cumbersome formfactors; furthermore, they do not work indoors, or in con-ditions under heavy foliage, etc. Since in most settingsit is not feasible to have each node be equipped with aGPS receiver, various localization algorithms have beendeveloped [14], [15]. In these methods the geographiclocation of certain anchor nodes is assumed to be known(either manually, or through GPS). Then other nodesdetermine their location by estimating their distances tothree anchors and become anchors themselves, and so on.Still, such techniques are both expensive and inaccurate.What’s more, geographic information may not correlatethat well with communication and connectivity. Theassumption that the wireless communication range bemodeled by a unit disk is too simple and unrealistic [6],[10]. Interference between wireless channels also playsan important role in determining the available connec-tivity and bandwidth. In in-door situations or for non-uniformly distributed sensors, nodes that are geographi-cally close may actually be distant in the communicationgraph. That is why simple greedy forwarding schemesmay encounter local minima where packets get stuck.When the geographical location of the sensors does notmap well to the communication graph, location basedrouting might be misleading and inefficient.

In contrast with geographical location, link infor-mation and connectivity is more reliable in designingrouting algorithms. In fact, localization algorithms existthat take link information and predict the geographicallocation of the sensor nodes [11], [12], which are thenused by geographical routing schemes to select routing

Page 2: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

paths. Obtaining the geographical information is only anintermediate step and an unnecessary detour. Recentlythere is work on geographical routing without locationinformation [13], [16]. However, this approach still triesto embed the sensors in two dimensional Euclideanplane and then use geographic forwarding as the routingscheme.

The key observation we start from is that since nodesonly make local routing decisions, global coordinatesare not necessary for geographic routing. We aim tofurther decouple the dependency of geographic routingon Euclidean coordinates by inventing new local coor-dinates based entirely on the link information of thenode connectivity graph with no attempt to produce a2-d embedding, locally or globally. To do so, we firstneed to discover the global topology of the node field.We do this by partitioning the node field into tiles,and then extracting the adjacency relations among thesetiles. Our local coordinates are defined within a tile,while the global tile connectivity structure provides ahigh-level map of the field. This global understandingallows our naming and routing scheme to avoid someof the common pitfalls and limitations of current globalcoordinate-based schemes, such as the need to constructa planar graph so as to avoid local minima [9], [1], orthe explicit discovery of holes [4], or the limitation totwo dimensions.

In our work we use the local link connectivity relation-ships among the nodes to discover the global topologyof the sensor field. It is a bit unfortunate that thecurrent usage of the termtopology discoveryin thenetworking community refers to just discovering theselocal link relationships among the nodes and only low-order topological invariants such as path connectivity.We use the term topology discovery here to mean un-derstanding the global topology of the field in the senseof algebraic topology, so we also want to obtain higherorder topological features, such as holes (in2-d, andmore in higher dimensions).

Historically, algebraic topology has attempted to char-acterize the connectivity of continuous spaces by focus-ing on discrete invariants, like homology groups. Sincecontinuous spaces are hard to compute with, an essentialstep in deriving these invariants is discretization: thereplacement of the continuous structure by a discretestructure that provably has the same topology. The mostcommonly used discrete structure is that of asimplicialcomplex[8], a collection of simplices (points, segments,triangles, tetrahedra, etc.) of the appropriate dimensionthat are properly glued together — as in the triangle

meshes used in graphics, for example. Because of recentinterest in shapes described by point cloud data (scatteredcollections of point samples), the same paradigm hasbeen extended to capturing the topology of discrete pointcollections. When we talk of the topology of a pointcloud, we really mean the topology of the underlyingspace from which those points were sampled. That canbe captured by fattening the points into small balls andthen defining a combinatorial complex according to theintersection patterns of these balls. In this approachthe issue of what ball size to use is crucial. This istypically addressed by considering several sizes at onceand looking at the persistence of topological features asthe size changes [2]. These same ideas can be appliedto a field of communication nodes, to learn its globaltopology. However, the lack of positional information,the need to further reduce computational costs, and thedesire to perform the topology estimation in a distributedway all make the network case more challenging.

II. OVERVIEW

We construct arouting complexbased on the commu-nication graph of the nodes. A routing complex consistsof routable tiles, whose topological adjacencies definethe global tile connectivity graph. Each tile itself hastrivial topology, so that simple greedy routing schemeswork well within the tile. Our particular routing complexis based on using Voronoi cells of landmark nodes, andis denoted as thelandmark Voronoi complex (LVC). Thecorresponding tile connectivity graph is denoted as thecombinatorial Delaunay triangulation. The idea is thata small subset of the nodes are declared as landmarksand these are used to partition the remaining nodesaccording to the nearest landmark. Within the routingcomplex, we give each node a topology-aware name,which has acombinatorial partand anumerical part.The combinatorial part of the name is based on theglobal topology of the communication graph. Each nodeis given the name of the landmark to whose tile thisnode belongs. The numerical part of the naming schemeis a set of local coordinates of a node within its tile,which is defined by graph distances to certain nearbylandmarks. Specifically, the coordinates are the squaresof the distances to the landmarks in the containing tileand its neighbors in the tile connectivity graph. Such atiling with a local landmark distance coordinate systemwithin each cell is analogous to an atlas with local chartstructures in differential topology [7].

With the global topology discovered and captured bythe landmark Voronoi complex, we design topology-

Page 3: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

time: 0 time: 0

(i) (ii)

Fig. 1. Landmarks are shown by triangles. The nodes are divided into tiles. The gray nodes are the boundaries of the tiles. (i) The landmarkVoronoi complex; (ii) The combinatorial Delaunay triangulation.

aware routing protocols. Inside a tile all the nodes sharea common local coordinate system. We design a simplelocal greedy algorithm by using only local landmarkdistance coordinates to deliver a packet inside a tile. Ourvirtual distance between two nodes in the same tile isdefined as the sum of squared differences between cor-responding ‘coordinates’. The greedy algorithm simplyselects the neighbor closer to the packet’s destinationunder this distance measure. Since a tile usually hassmoothly distributed nodes and trivial topology, such agreedy approach rarely stuck. By switching landmarksproperly, we modify this greedy approach for routingacross tiles and produce natural and near optimal globalrouting paths.

Our naming and routing scheme are designed to per-form well for dense node distributions over a field with afew large holes [5]. That is, nodes are densely distributedexcept in a few number of large areas where node densityis substantially smaller. Such kind of node distributionsappear naturally in real settings where obstacles orocclusions can create large areas without enough nodecoverage. Because we assume that the global topology isrelatively simple, the number of landmark nodes neededto capture it is also relatively small.

In summary, our naming and routing protocol has twophases. The preprocessing phase discovers the global

topology by constructing the landmark Voronoi complex.Every node is given a name, and everyone knows theglobal field topology – a compact, lightweight structure,because the number of landmark nodes is small. When anode has a routing request, it first uses the combinatorialstructure, the landmark Voronoi complex, to determine ashort sequence of tiles that the routing path is going tocross. Then the Voronoi landmark-based routing protocolis deployed to actually guide a packet across tiles andtowards the destination.

III. L ANDMARK VORONOI COMPLEX (LVC)

For a set of nodesS and a communication graphG, the landmark Voronoi complex is a combinatorialstructure that captures the global topology of the networkby using only local link connectivity. We denote byτ(u, v) the topological length (hop count) of the shortestpath betweenu, v in the communication graph.

A. Topology-based tiling

A tiling is a subdivision of the nodes into a smallnumber of tiles, each of them with trivial topology.The adjacency of the tiles reflects the topology of thecommunication graph. We make use of thecombinatorial

Page 4: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

Delaunay triangulation[3] to obtain such a tiling1.A combinatorial Delaunay triangulation is defined

on an abstract graphG. A few vertices of graphGare marked aslandmarksL. A combinatorial Delaunaytriangulation is an abstract graph on the landmarks.Two landmarksu, v are connected by an edge in thecombinatorial Delaunay triangulation if there exists avertexw, calleda witness, such thatu, v are the ‘closest’two landmarks ofw. More precisely, we denote byN1(w) the set of closest landmarks, i.e., no landmark hasa hop count strictly smaller than the landmarks inN1(w).We denote byN2(w) the set of second closest landmarkssuch that no landmark other than nodes inN1(w) has ahop countw strictly smaller than those inN2(w). Thenw is a witness of edgeu, v if u, v ∈ N1(w) or u, v belongto N1(w) and N2(w) respectively. An edge forms a 1-simplex, and higher order abstract simplices are definedanalogously.

In view of the landmark Voronoi complex, a tileconsists of all nodes nearest to a particular landmark.Adjacency between tiles is defined via the combinatorialDelaunay triangulation: two tiles are neighbors if andonly if their landmarks are joined by and an edge in thecombinatorial Delaunay. Figure 1 shows an example of acombinatorial Delaunay triangulation and a correspond-ing tiling.

For dense distribution of nodes with a small numberof large holes, the combinatorial Delaunay triangulationon a few number of landmarks fully captures the globaltopology of the communication network. In the follow-ing theorem we show that the combinatorial Delaunaytriangulation maintains connectivity.

Theorem 3.1. If graph G is connected, then the com-binatorial Delaunay triangulation on an arbitrary andnonempty subset of landmarks is also connected.

Proof: We prove by contradiction. Assume that thecombinatorial Delaunay triangulation is not connected,i.e., there exist two landmarks in different connectedcomponents although in graphG they are connected bya path. We take the ‘closest’ disconnected landmarksu, v such that the shortest pathP to connect them inGis the shortest among all such pairs.P doesn’t containany other landmarks. There must exist a nodew suchthat the hop count betweenw, u doesn’t differ fromthe hop count betweenw, v by more than1 (w might

1Our definition of the combinatorial Delaunay triangulation isdifferent from the definition in [3]. We made the modification withthe intention of maintaining the same connectivity with the originalgraph.

be u or v themselves). See Figure 2. We assume that

u v

x

w

Fig. 2. The combinatorial Delaunay triangulation onG keepsthe connectivity of graphG.

τ(w, u) ≤ τ(w, v) ≤ τ(w, u) + 1. Since w does notwitness the edgeuv, w is closer to another landmark,say x. Therefore the hop count fromu, v (say u) to wmust be strictly greater than the hop count fromx tow. Therefore the shortest paths betweenw, v and w, uare shorter than the shortest path betweenu, v. By thehypothesis,w andu, as well asw andv, must be in thesame connected component. Sou, v must be connected.This contradicts with the assumption. ¤

Although the combinatorial Delaunay triangulationon any set of landmarks keeps the same connectivityof the original graph, we do need enough landmarksso that the Voronoi cells of the landmarks and theiradjacencies correctly capture the global field topology.Especially we want a few landmarks that are closeto topological features, such as hole boundaries. Handpicked landmarks are one option, since in may case thepresence of holes is known a priori to those deployingthe network. We can also discover the boundaries ofholes automatically [5], or at least some nodes on theboundary [13]. Then we can make the probability ofa node being selected as a landmark high if it is nearthe boundary. Since the node distribution we are mostlyinterested in has a small number of large holes, thenumber of landmarks necessary is proportional to thenumber of holes. The landmark Voronoi complex, as acombinatorial summarization of the global sensor field,has small size and can be made available to each node.

IV. NAMING AND ROUTING STRUCTURES

In this section we introduce a naming and routingstructure by using the landmark Voronoi complex. Howto construct the LVC and the routing structures will bedescribed in the next section.

A. Naming of nodes

A node is named by two parts. Firstly a node isassociated with the tile that it lies in. This tile is denotedas theresident tile. The landmark of the tile is denotedas the home landmark. A node also calculates andstores the hop count to the landmark of its resident

Page 5: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

tile and the landmarks adjacent to its resident tile. Suchlandmarks are calledreference landmarks. Specifically,the second part of the name of nodex is actually ak-tuple: (d1, d2, · · · , dk), wheredi = τ(ui, x)2, τ(ui, x) isthe minimum number of hops fromx to a reference land-markui. This k-tuple forms the virtual local coordinatesof x, called thelocal landmark distance coordinates. Fornodes within the same resident tile, their coordinates arewith respect to the same set of landmarks.

We note that in continuous domain, if we have atleast three reference landmarks, the node defined bythe distances to its reference landmarks is uniquelydetermined. However, such naming may have ambiguityin the discrete domain. Different nodes might have thesame names. If the graph connectivity maps well withthe underlying Euclidean space, we can expect that nodeswith the same names are also close in space.

B. Routing within a tile – greedy routing via distancesto landmarks

By subdividing the node regions into tiles, the nodeswithin a tile are generally nicely distributed. Thereforewe can expect greedy routing schemes to work well sincethe sensor field is rather smooth. The greedy methodwe adopt here is different from the previously pro-posed greedy schemes, which are all based on Euclideancoordinates. Our greedy method uses the coordinatesystem based on distances to landmarks, such that thedistances (hop counts) between nodes and their referencelandmarks are sufficient.

1) Continuous version:Our greedy routing algorithmis motivated by the following result that shows thecontinuous version will never get stuck under certaincircumstances. Precisely, consider a destination andklandmarks{ui} (not necessarily in convex position) inthe Euclidean plane. A pointp in the Euclidean plane hasvirtual coordinatesC(p) = (|pu1|2, |pu2|2, · · · , |puk|2),where |pui| is the Euclidean distance betweenp andthe i-th landmarkui. The virtual distancebetweenp, qunder this coordinate system is defined asd(p, q) =∑k

i=1(|pui|2−|qui|2)2. Given a destinationq, the greedyrouting algorithm follows the gradient such that thevirtual distance toq is minimized.

Lemma 4.1. In continuous domain, the greedy routingalgorithm will never stuck, if3 ≤ k ≤ 9, and thedestinationq is inside the convex hull of the referencelandmarks.

Proof: All we need to prove is that for any pointp in the Euclidean plane, there is always a direction

such that the virtual distance toq is decreasing. Infact, we’ll show that if we move along the straight lineconnectingp, q, the virtual distance to the destinationqis monotonically decreasing.

We can transform the coordinate system so that thedestinationq stays at the origin andp = (x, 0). Supposethe reference landmarkui has Euclidean coordinate(xi, yi). The virtual distance betweenp andq is:

d(p, q) =∑k

i=1(|pui|2 − |qui|2)2=

∑ki=1(x

2 − 2xxi)2.

Then its partial derivative with respect tox is:

∂d(p, q)/∂x = 4∑k

i=1 x(x− 2xi)(x− xi)= 4x(kx2 − 3(

∑ki=1 xi)x + 2

∑ki=1 x2

i ).

Next we show that for anyx > 0, ∂d(p, q)/∂x is notzero. That is,(3

∑ki=1 xi)2 − 4k · 2∑k

i=1 x2i < 0.

Sinceq = (0, 0) is inside the convex hull of the land-marks,xi’s cannot be all positive or all negative. There-fore, by Cauchy-Schwartz inequality:(3

∑ki=1 xi)2 <

9(k− 1)∑k

i=1 x2i . As long as9(k− 1) ≤ 8k, i.e. k ≤ 9,

the virtual distance toq is always decreasing on thestraight line fromp to q. Therefore the greedy algorithmwill never get stuck. ¤

2) Discrete version:In a graph setting, the discreteversion of the greedy routing algorithm uses the hopcounts to the landmarks as a replacement to the Eu-clidean distances. In situations where nodes are denselydistributed, the minimum number of hops to the land-mark approximates the Euclidean distance well.

Given two nodes p, q with virtual coordin-ates (τ(p, u1)2, τ(p, u2)2, · · · , τ(p, uk)2) and(τ(q, u1)2, τ(q, u2)2, · · · , τ(q, uk)2) respectively,we define their (discrete) virtual distance to bed(p, q) =

∑ki=1(τ(p, ui)2 − τ(q, ui)2)2. Given a

destination t, our greedy routing algorithm alwayschooses the neighborq of p such that d(q, t) isminimized. In other words, we move the packets byminimizing the Euclidean distance under the virtualcoordinate system greedily. This greedy algorithm islocal and efficient such that only the virtual coordinatesof the neighbor nodes are needed.

The discrete version of the greedy routing algorithmno longer guarantees that a packet will be deliveredwithout getting stuck. So a packet may hit a localminimum such that all the neighbor nodes have virtualdistances further away from the destination. A backupmethod at the local minimum is to flood within the tile.

Page 6: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

C. Routing across tiles

After the initial preprocessing stage, the landmarkVoronoi complex is constructed and stored at each node.Upon a routing request, the landmark Voronoi complexdetermines the sequence of tiles that a routing pathshould cross. If the destination and the source are insidethe same tile, greedy routing via distances to landmarksas described previously is used. If the destination is ina different tile other than the source, we propose a wayto construct natural routing paths across tiles.

u1

p

q

u2 u3

Fig. 3. Routing across tiles.

Assume that the sequence of tiles,{Ti}, that a packetwill cross is generated by using LVC. If the packetis currently residing at nodep, which is in a tile Ti

different than the resident tile of the destination, we usethe landmarkui+1 in the next tileTi+1 as a temporarydestination and send the packet along the shortest pathfrom p to ui+1. Once the packet is inside the tileTi+1,we switch the temporary destination to the landmark inTi+2 until the packet is in the same tile as the destination,where the greedy routing scheme is used to deliver thepacket to the destination. We note that when a packettravels through the intermediate tile, it will never getstuck.

V. PROTOCOLS

Our topology based routing include two phases: topol-ogy discovery and routing. Corresponding to the twophases, we introduce theNaming Protocol and theVoronoi Landmark-based Routing Protocol (VLRP).

A. Naming protocol

After landmarks are selected, the network starts topol-ogy discovery phase. The naming protocol is designedto carry out the following tasks:

1. Construct the Landmark Voronoi Complex (LVC)in a distributed fashion;

2. Compute routing table on the dual graph of thelandmark voronoi complex, the combinatorial delaunaytriangulation (CDT);

3. Assign each node its local landmark distance coor-dinate from its reference landmarks;

The number of landmarks is small compared to thetotal number of nodes in the network. In the simulationresults shown in this paper, out of 2000 nodes, 23landmarks are elected. In the topology discovery phase,each landmark floods the whole network. After theflooding, each node learns its minimal path distanceto the landmarks. Such information enables a node todetermine if it is on the boundary of a tile, i.e. a nodeis on the boundary of a tile if and only if it is awitness. If a node identifies itself as a witness of, forexample, landmarku1 and u2, it sends a packet tou1

andu2. Whenu1 receives the packet, it marksu2 as itsneighbor on the CDT, andvice versa. This concludesthe distributed construction of the CDT and its dual, theLVC.

In the process of landmark flooding, each landmarklearns its hop distance to any other landmark in thenetwork. After the CDT is constructed, each landmarkdeletes its distance entries to the other landmarks that arenot its neighbors in the CDT. We designated one node topoll the landmark nodes and collect their CDT neighborinformation. After this node gathers such informationfrom all the landmarks, it floods these information toall the nodes in the network. Therefore every node inthe network has the combinatorial Delaunay Triangu-lation, which captures the global topology. Each nodethen computes the global routing table on landmarksusing Dijkstra’s algorithm. Alternatively, computation oflandmark routing table can also be carried out at thepolling node. The polling node floods the computationresult back to all the other nodes in the network.

For each node, the home landmark is the landmarkthat is closest to it. Therefore, each node knows itslandmark ID. After CDT is constructed, each landmarkfloods its own tile to distribute the IDs of all the referencelandmarks of this tile. Using these information, eachnode deletes its distance entries that record hop countsto landmarks that are not its reference landmarks.

B. Voronoi landmark-based routing protocol

At the preprocessing stage, the network builds neces-sary infrastructure to support routing. After successfulcompletion of the Naming Protocol, the global topologyof the network is captured by the CDT, and the landmarkdistance coordinates of each node with respect to its localreference landmarks are stored at each node. VLRP runson top of the infrastructure built by the Naming Protocol.

Page 7: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

In VLRP, when the destination of a packet is given,by comparing the destination landmark with the homelandmark of the current tile, a node can decide if thedestination is within the same tile. If the destination isnot within the same tile, the current node can decidethe virtual landmark route, i.e. a sequence of tiles, toreach the resident tile of the destination by checking itslandmark routing table. This is expressed asR =u1, ...,ui, whereR is the route given by the landmark routingtable. u’s are the landmark IDs on the route. VLRP isdesigned to handle the following routing scenarios:

• Routing within a tile.When the destination is within the current tile, ourgreedy routing algorithm is used to route to thedestination node.

• Routing across tiles.If the destination is in a tile that is not the currenttile, the method shown in section IV-C is usedto help routing. For example,R = u1, u2, u3 isobtained from the landmark routing table. Thismeans that the destination is in the tile of landmarku3. In addition, the routing path to reach that tileis to transit through tileu1 and u2. Before thepacket reaches tileu1, it usesu1 as its temporarydestination. The greedy routing now is carried outby choosing one of the current node’s neighborswhich has the shortest path distance tou1. This isalways possible because the two tiles are adjacentand u1 is always a CDT neighbor of the node’shome landmark.

We showed in Section IV-B, that the distance functionof our greedy routing algorithm has no local minimalwhen the number of landmarks is greater or equal to3and less or equal to9 in continuous domain. Therefore,local greedy routing always makes progress. However,in discrete case, it is possible for a packet to get stucksimply due to the lack of neighbors to chose from inrouting. When this happens, local flooding within a tileis used to help deliver the packet to the destination.

C. Data structures

Landmark are used as reference in determining nodes’local coordinates. However, from programming point ofview, they are just ordinary nodes. No extra processingpower or memory are required. Each node stores locallythe information as shown in Figure 4.

VI. SIMULATIONS

We implemented the Naming protocol and VLRP us-ing C++. Although our simulations do not take into con-

Node{the global routing table on landmarks;hop counts to its reference landmarks;a bit to record if the node is on the boundary of a tile;the ID of its 1-hop neighbors;

}

Fig. 4. Information stored at a node.

sideration detailed networking behaviors, such as packetloss, packet delay and timing, etc., our simulations verifythe correctness of the algorithm and feasibility of theprotocols. As our routing scheme is designed to bepractical for real world deployment, we intend to donetwork level simulations using ns-2 in the future.

We simulated a network with 2000 nodes, of which 23are landmarks. The landmarks are chosen randomly with5 boundary nodes added after the random selection. Thecommunication graph is the unit disk graph on the nodes.Two nodes can communicate directly if their Euclideandistance is within1. After the communication graph isgenerated, the Euclidean coordinates are discarded sinceour protocols only require a communication graph. Al-though this work is intended for dense sensor field withlarge holes, we actually find out that our algorithms arepretty tolerant to sparse nodes with lots of small holes. Inour simulation, on average each node has only4.5 1-hopneighbors. We also created tougher and more interestingscenarios to show the power of our routing algorithms. Inall the figures, we show landmarks by big triangles. Graylandmarks are nodes on the boundaries of Voronoi cells,i.e., witnesses of the edges in combinatorial Delaunaytriangulation.

By simulation we find out that our routing algorithmgenerates natural, near optimal and load balanced routingpaths. Figure 5 shows the routing algorithm for caseswhere the destination is within the same tile and wherethe destination is inside a different tile. Figure 6 showstwo parallel routing paths.

The landmark Voronoi complex indeed captures thetrue topology of the network. Therefore our routingalgorithm is very powerful in discovering routes in veryhard situations. In the scenario as shown in Figure 7,two big rooms are connected by a narrow and longcorridor. Landmarks are selected randomly. The routingpath that goes from one room to the other through thecorridor is correctly discovered by using our routingalgorithms. We further notice that we do not actuallyneed landmark nodes be placed in the corridor (Forrandomly selected landmarks, the chance that a landmarkis placed in the corridor is small.). As long as the original

Page 8: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

time: 0 time: 0

(i) (ii)

Fig. 5. (i) Routing within a tile; (ii) Routing across tiles.

time: 0 time: 0

(i) (ii)

Fig. 6. Two parallel paths.

Page 9: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

network is connected, its connectivity is inherited by thecombinatorial Delaunay triangulation.

Fig. 7. A narrow corridor connects two rooms. Our routingalgorithm discovers a route that goes through the corridor.

VII. D ISCUSSIONS

A. Quality of routes

The routing scheme proposed in this paper producesnatural and load balanced routes that get around rout-ing holes. Previous geographic routing schemes eitheruse planar graphs [9], [1] or explicitly discovered holeboundaries [4] to get around holes. When a packet getsstuck, it is then routed along the boundary of a hole untilgreedy forwarding can be done again. Such methods tendto overload the nodes on the boundaries of holes andincrease the size of holes. Our topology based routingalgorithm keeps in mind the global topological featuresand derives natural and load balanced routes to getaround holes.

q′

p

p′

q

q′

p

p′

q

(i) (ii)

Fig. 8. (i) Paths generated between two pairsp, q and p, q′ bythe Voronoi landmark-based routing protocol; (ii) Paths generatedbetween two pairsp, q andp, q′ by geographical routing algorithms.Nodes along the boundaries of holes tend to be overloaded.

B. Multi-resolution LVC hierarchies

In this paper we focus on dense node distributions witha small number of large holes. However, the techniquescan be generalized to multi-resolution hierarchies tocapture holes with different sizes. The landmark Voronoicomplex is just a2-level hierarchy. If the tile of thelandmark Voronoi complex has non-trivial topology suchthat local greedy routing gets stuck frequently, we canpick a set of 2-nd level landmarks and construct 2ndlevel landmark Voronoi complex. In other words, smallerholes inside a tile is captured by the 2nd level landmarkVoronoi complex. In summary, a LVC hierarchy can beconstructed to capture multi-resolution holes.

VIII. S UMMARY AND FUTURE WORK

In this paper we propose a topology-based namingand routing structure by using only the link connectivityof the network. We partition the network into tiles byusing the landmark Voronoi complex such that withineach tile local greedy routing expects to work well. Wecompletely discard the Euclidean coordinates and inventmore robust local landmark coordinate system withineach tile. Our Voronoi landmark-based routing protocolgenerates natural, near optimal and load balanced routingpaths. The algorithms and protocols we propose in thispaper work for sensor nodes in three dimensions as well.In fact, what underlying space the sensors lie in doesn’treally matter.

We also note that this paper is very preliminary work.Network dynamics (node addition and failure) and athorough network-level simulation will be presented inthe near future. Furthermore, it opens a door to a bigspace where we should and will explore. Within thistopology-based naming and routing framework, a fewquestions need to answered. For example, what’s the bestway to select landmarks? Are there other local coordinatesystems with good properties within a tile? With so littleinformation such as only the connectivity graph of thenetwork, what’s the limitation that we can do? All thesequestions will be studied and addressed in the future.

REFERENCES

[1] P. Bose, P. Morin, I. Stojmenovic, and J. Urrutia. Routingwith guaranteed delivery in ad hoc wireless networks. In3rd Int. Workshop on Discrete Algorithms and methods formobile computing and communications (DialM ’99), pages 48–55, 1999.

[2] G. Carlsson, A. Collins, L. Guibas, and A. Zomorodian. Per-sistence barcodes for shapes. InSymposium on GeometryProcessing, 2004. to appear.

[3] G. Carlsson and V. de Silva. Topological approximation bysmall simplicial complexes, 2003. preprint.

Page 10: Naming and Routing Using Global Topology Discoverygraphics.stanford.edu/~jgao/routingstructure.pdf · 2004-07-06 · balanced global routing can be implemented by using the tile adjacency

[4] Q. Fang, J. Gao, and L. Guibas. Locating and bypassing routingholes in sensor networks. InIEEE INFOCOM, 2004.

[5] S. P. Fekete, A. Kroeller, D. Pfisterer, S. Fischer, andC. Buschmann. Neighborhood-based topology recognition insensor networks. InAlgorithmic Aspects of Wireless Sensor Net-works: First International Workshop (ALGOSENSOR), pages123–136, 2004.

[6] D. Ganesan, B. Krishnamachari, A. Woo, D. Culler, D. Estrin,and S. Wicker. Complex behavior at scale: An experimentalstudy of low-power wireless sensor networks. Technical ReportUCLA/CSD-TR 02-0013, UCLA, 2002.

[7] V. Guillemin and A. Pollack.Differential Topology. PrenticeHall, Englewood Cliffs, NJ, 1974.

[8] A. Hatcher. Algebraic Topology. Cambridge University Press,2001.

[9] B. Karp and H. Kung. GPSR: Greedy perimeter stateless routingfor wireless networks. InProc. of the ACM/IEEE InternationalConference on Mobile Computing and Networking (MobiCom),pages 243–254, 2000.

[10] D. Kotz, C. Newport, R. S. Gray, J. Liu, Y. Yuan, and C. Elliott.Experimental evaluation of wireless simulation assumptions.Technical Report TR2004-507, Dept. of Computer Science,Dartmouth College, June 2004.

[11] R. Nagpal, H. Shrobe, and J. Bachrach. Organizing a globalcoordinate system from local information on anad hocsensornetwork. InProc. 2nd International Workshop on InformationProcessing in Sensor Networks (IPSN03), Palo Alto, CA, April.Springer.

[12] D. Niculescu and B. Nath.Ad hocpositioning system (APS).In IEEE Global Telecommunications Conference (GlobeCom),pages 2926–2931, 2001.

[13] A. Rao, C. Papadimitriou, S. Shenker, and I. Stoica. Geographicrouting without location information. InProceedings of the9th annual international conference on Mobile computing andnetworking, pages 96–108. ACM Press, 2003.

[14] A. Savvides, C.-C. Han, and M. B. Strivastava. Dynamic fine-grained localization inad-hoc networks of sensors. InProc.7th Annual International Conference on Mobile Computing andNetworking (MobiCom 2001), pages 166–179, Rome, Italy, July2001. ACM Press.

[15] A. Savvides and M. B. Strivastava. Distributed fine-grainedlocalization inad-hocnetworks. submitted to IEEE Trans. onMobile Computing.

[16] Y. Shang, W. Ruml, Y. Zhang, and M. P. J. Fromherz. Lo-calization from mere connectivity. InProceedings of the 4thACM international symposium on Mobile ad hoc networking &computing, pages 201–212. ACM Press, 2003.