Geometric Routing without Geometry Mirjam Wattenhofer Roger Wattenhofer Peter Widmayer
What are Ad-Hoc/Sensor Networks? Radio Power Processor Sensors Memory In the spring of 2002, the Intel Research Laboratory at Berkeley initiated a collaboration with the College of the Atlantic in Bar Harbor and the University of California at Berkeley to deploy wireless sensor networks on Great Duck Island, Maine. These networks monitor the microclimates in and around nesting burrows used by the Leach's Storm Petrel. Our goal is to develop a habitat monitoring kit that enables researchers worldwide to engage in the non-intrusive and non-disruptive monitoring of sensitive wildlife and habitats. At the end of the field season in November 2002, well over 1 million readings had been logged from 32 motes deployed on the island. Each mote has a microcontroller, a low-power radio, memory and batteries. For habitat monitoring , we added sensors for temperature, humidity, barometric pressure, and mid-range infrared. Motes periodically sample and relay their sensor readings to computer base stations on the island. These in turn feed into a satellite link that allows researchers to access real-time environmental data over the Internet. In June 2003, we deployed a second generation network with 56 nodes. The network was augmented in July 2003 with 49 additional nodes and again in August 2003 with over 60 more burrow nodes and 25 new weather station nodes. These nodes form a multihop network transferring their data back "bucket brigade" style through dense forest. Some nodes are more than 1000 feet deep in the forest providing data through a low power wireless transceiver. http://www.greatduckisland.net/ http://www.greatduckisland.net
Ad-Hoc/Sensor Networks: Abstraction Unit Disk Graph: Link if and only if Euclidean distance at most 1.
Overview Introduction Routing in Ad-hoc networks What are sensor networks? Abstraction Routing in Ad-hoc networks With/Without position information The nuts and bolts of obtaining position information Pseudo geometric routing The grid: naming and routing The UDG: naming and routing Summary of results & related work
Routing in Ad-Hoc Networks: with/without position information Flooding does not scale Distance Vector Routing does not scale Source Routing increased per-packet overhead no theoretical results, only simulation With position information: Greedy Routing may fail: message may get stuck in a “dead end” Geometric Routing It is assumed that each node knows its position source routing has the disadvantage of increased per-packet overhead. With source routing, the size of each packet is increased in order to carry the source route of hops through which the packet is to be forwarded. Since the source route is always present in the packet, the extra network overhead caused by the presence of the source route is incurred not only when the packet is originated, but also each time it is forwarded to the next hop. This extra network overhead decreases the bandwidth available for transmission of data, increases the transmission latency of each packet, and consumes extra battery power in the network transmitter and receiver hardware.
Overview Introduction Routing in Ad-hoc networks What are sensor networks? Abstraction Routing in Ad-hoc networks With/Without position information The nuts and bolts of obtaining position information Pseudo geometric routing The grid: naming and routing The UDG: naming and routing The hypercube: naming and routing Summary of results & related work
Obtaining Position Information Attach GPS to each sensor node Often undesirable or impossible GPS receivers clumsy, expensive, and energy-inefficient Equip only a few designated nodes with a GPS Anchor (landmark) nodes have GPS Non-anchors derive their position through communication (e.g., count number of hops to different anchors) Anchor density determines quality of solution
What about no GPS at all? In absence of GPS-equipped anchors... ...nodes are clueless about real coordinates. For many applications, real coordinates are not necessary Virtual coordinates are sufficient 90 44' 56" East 470 30' 19" North 90 44' 58" East 470 30' 19" North (2,1) (1,0) 90 44' 55" East 470 30' 19" North 90 44' 57" East 470 30' 19" North (0,0) (1,1) vs. real coordinates virtual coordinates
What are „good“ virtual coordinates? Given the connectivity information for each node and knowing the underlying graph is a UDG find virtual coordinates in the plane such that all connectivity requirements are fulfilled, i.e. find a realization (embedding) of a UDG: each edge has length at most 1 between non-neighbored nodes the distance is more than 1 Finding a realization of a UDG from connectivity information only is NP-hard... [Breu, Kirkpatrick, Comp.Geom.Theory 1998] ...and also hard to approximate [Kuhn,Moscibroda, Wattenhofer, DIALM 2004]
Geometric Routing without Geometry For many applications, like routing, finding a realization of a UDG is not mandatory Virtual coordinates merely as infrastructure for geometric routing Pseudo geometric coordinates: Select some nodes as anchors: a1,a2, ..., ak Coordinate of each node u is its hop-distance to all anchors: (d(u,a1),d(u,a2),..., d(u,ak)) Requirements: each node uniquely identified: Naming Problem routing based on (pseudo geometric) coordinates possible: Routing Problem (0) (1) (2) (3) (4)
Overview Introduction Routing in Ad-hoc networks What are sensor networks? Abstraction Routing in Ad-hoc networks With/Without position information The nuts and bolts of obtaining position information Pseudo geometric routing The grid: naming and routing The UDG: naming and routing The hypercube: naming and routing Summary of results & related work
Pseudo geometric routing in the grid: Naming Anchor 1 Anchor 2 (4,4) (4,2) (4,6) (4,8) (4,10) (4) (4) (4) (4) Lemma: The naming problem in the grid can be solved with two anchors. (4) grid a special unit disk graph… [R.A. Melter and I. Tomescu, Comput. Vision, Graphics. Image Process., 1984]: landmarks in graphs
Pseudo geometric routing in the grid: Routing Anchor 1 Anchor 2 Rule: pass message to neighbor which is closest to destination (5,5) (6,4) (3,9) (4,8) (5,7) (6,6) (4,10) (5,9) (6,8) (7,7) (5,11) (6,10) (7,9)
Pseudo geometric routing in the grid: Routing Anchor 1 Anchor 2 Lemma: The routing problem in the grid can be solved with two anchors. real ad hoc networks not so regular, more holes, some places denser -> next example of a real bad unit disk graph
Overview Introduction Routing in Ad-hoc networks What are sensor networks? Abstraction Routing in Ad-hoc networks With/Without position information The nuts and bolts of obtaining position information Pseudo geometric routing The grid: naming and routing The UDG: naming and routing The hypercube: naming and routing Summary of results & related work
Pseudo geometric routing in the UDT: Naming recursive construction of a unit dist tree (UDT) which needs (n) anchors: k
Pseudo geometric routing in the UDT: Naming # nodes in distance k from root: L(k) L(k) = 4 L((k-3)/2) L(k) = (k+3)2/8 # nodes in tree of depth k: N(k) N(k) < 4 N((k-3)/2)+2k N(k) < 9k2 k Lemma: in a unit disk tree on n nodes there are (n) leaf-siblings leaf-siblings
Pseudo geometric routing in the UDT: Naming Leaf-siblings can only be distinguished if one of them is an anchor: Anchor 1..Anchor k (a,b,c,...) (a+1,b+1,c+1,...) (a+1,b+1,c+1,...) Anchor k+1
Pseudo geometric routing in the UDT: Naming Leaf-siblings can only be distinguished if one of them is an anchor: Anchor 1..Anchor k (a,b,c,..,1) (a+1,b+1,c+1,...,0) (a+1,b+1,c+1,...,2) Anchor k+1 Corollary: we need (n) anchors to solve the naming problem in the UDT
Pseudo geometric routing in the UDT: Routing Invariant: coordinate of destination t is smaller than coordinate of node u t in at least one position ci (2,2,2,2) Rule: pass message to neighbor which decreases ci ( 1,1,3,3) ( 3,3,1,1) (0,2,4,4) (2,0,4,4) Anchor 1 A. 2 A. 2 A. 3 we checked that with the such chosen anchors also routing is possible [Khuller, Raghavachari, Rosenfeld, Discrete Applied Mathematics 1996]: optimal anchor selection algorithm for trees
Pseudo geometric routing in the Ad-hoc networks Naming and routing in grid quite good, in previous UDT example very bad Real-world Ad-hoc networks are very probable neither perfect grids nor naughty unit disk trees Truth is somewhere in between... GPS Free Coordinate Assignment and Routing in Wireless Sensor Networks [Caruso et al., Infocom 2005] GLIDER: Gradient Landmark-Based Distributed Routing for Sensor Networks [Fang et al., Infocom 2005] practical approach to pseudo geometric routing in Ad-hoc networks unsolved problems: algorithmic anchor selection, partly very high density required, nodes have no unique name
Overview Introduction Routing in Ad-hoc networks What are sensor networks? Abstraction Routing in Ad-hoc networks With/Without position information The nuts and bolts of obtaining position information Pseudo geometric routing The grid: naming and routing The UDG: naming and routing The hypercube: namig and routing Summary of results & related work
Pseudo geometric routing in the hypercube: Naming Lemma: To solve the naming problem in a d-dimensional hypercube at least log n/log log n anchors are needed. Proof: each anchor can subdivide the nodes in at most d classes k anchors can differentiate between at most dk nodes to differentiate between all n nodes it must hold that dk >= n k >= log n/ log log n grid a special unit disk graph… [Beerliova et al., WG 2005]: network discovery and verification
Pseudo geometric routing in the hypercube: Routing Lemma: The routing problem in the hypercube can be solved with log n anchors. Proof: choose all nodes with distance one to the origin as anchors each node in the hypercube can obtain its (real) coordinate as a function of its pseudo coordinate rule: pass message to neighbor with smallest Hamming distance to destination grid a special unit disk graph…
Overview Introduction Routing in Ad-hoc networks What are sensor networks? Abstraction Routing in Ad-hoc networks With/Without position information The nuts and bolts of obtaining position information Pseudo geometric routing The grid: naming and routing The UDG: naming and routing The hypercube: naming and routing Summary of results & related work
Geometric Routing without Geometry: Facts & Figures min any local shortest path Line 1 2 Ring 3 Grid (n) Tree mc(T) UDG Butterfly n/ log n Hypercube log n/log log n
Pseudo geometric routing in general graphs: Related Work Landmarks in Graphs [Khuller, Raghavachari, Rosenfeld, Discrete Applied Mathematics 1996] results (a.o.): optimal anchor selection algorithm for trees (also routing feasible with this selection) NP-hardness proof for optimal anchor selection in general graphs O(log n)-approximation algorithm for anchor selection in general graphs Network Discovery and Verification [Beerliova et al., WG 2005] for general graphs there is no o(log n)-approximation algorithm for anchor selection unless P = NP there must be a selection of log n/log log n anchors solving the naming problem in the hypercube, yet proof not constructive
Pseudo geometric routing in general graphs: Related Work GPS Free Coordinate Assignment and Routing in Wireless Sensor Networks [Caruso et al., Infocom 2005], GLIDER: Gradient Landmark-Based Distributed Routing for Sensor Networks [Fang et al., Infocom 2005] practical approach to pseudo geometric routing in Ad-hoc networks unsolved problems: algorithmic anchor selection, partly very high density required, nodes have no unique name
Questions? Comments?