230 likes | 394 Views
Online Multi-Path Routing in a Maze. Christian Schindelhauer joint work with Stefan Rührup Workshop of Flexible Network Design Bertinoro, 1.-6.10.2006 to appear at ISAAC 2006. Position based Routing. Target: geographic position instead of network address
E N D
Online Multi-Path Routing in a Maze Christian Schindelhauer joint work with Stefan Rührup Workshop of Flexible Network Design Bertinoro, 1.-6.10.2006 to appear at ISAAC 2006
Position based Routing • Target: geographic position instead of network address • Idea: Iteratively choose neighbor closest to the target(Greedy-Strategie) • Advantages: • local decisisions • no routing tables • scalable (4,2) 13,5 (2,5) s t (13,5) (5,7) (0,8) (3,9)
Position based Routing Prerequisits: • All nodes know their positions (e.g. GPS) • Position of all neighbors are known (Beacon Messages) • Target position is known (Location Service) (4,2) 13,5 (2,5) s t (13,5) (5,7) (0,8) (3,9)
First Works (1) • Routing in Packet Radio Networks • Greedy-Strategies: • MFR: Most Forwarding within Radius [Takagi, Kleinrock 1984] • NFP: Nearest with Forwarding Progress [Hou, Li 1986] NFP t s MFR Transmission radius
First Works (2) • Cartesian Routing [Finn 1987] • Routing with geographic Coordinates • n-hop Cartesian regular: Every node has a node in its n-hop-neighborhood which is closer to an arbitrary target • Greedy-Routing and Limited Flooding (restricted to n Hops)
X Position based Routing • Problems: Greedy routing may end in local minima • No neighbors closer to the target available • Recovery-strategy necessary (e.g. GPSR [Karp, Kung 2000]) • Example: Advance circle Right hand rule s t ?
Lower bound for position based routing [Kuhn et al. 2002]: Alternative strategyy: flooding Time: O(d) Traffic: O(d2) Position based single-path routingstrategies Time and traffic: O(d2) Is Flooding more efficient? Worst case analysis not useful Lower bounds und alternatives s t Time: Ω(d2) d = length of shortest path (distance) Time = #Hops, Traffic = #Messages
Grid networks and Unit-Disk Networks • Online routing in grid network with faulty nodes is equivalent to position based routing in wireless ad-hoc networks • Implicit geographic clustering • Partitioning of the plane into cells, empty regions = barriers • Distributed protocol for construction and routing
Finding Cells for a Unit-Disk Graph • Cell size ≤ 1/3 • transmission-distance=1 • Cell is NOT a barrier if • it is inside of a circle around a node with radius 1/2 • if an edge (u,v) with |u,v| ≤ 1 touches this cell • Cell clustering • Gateways (and leader) • Two-hop communication gives a complete local view of the cell network x u v w
Ω(d + p) lower bound for traffic (online) Instead of worst-case-analysis:Compare the algorithm with the best online-algorithm for the class of problems Characterize the class of problems by the perimeter p and the distance d Lower bound for Online Navigation [Lumelsky, Stepanov 1987]: Lower bounds and comparative analysiss p s t p Path length: Ω(d + p) d = length of shortest path p = Perimeter of the barriers
The Network Model • Grid network with faulty nodes • Faulty blocks = barriers • Barriers are unkown (a priori),decisions need to be madeonline • Comparative analysis • Competitive time-ratio • Comparatives traffic-ratio Perimeter Start Time (# Hops) Target Messages Barrier
max{Rt,RTr} O(d) O(d) Single-Path versus Flooding No Barriers (p<d) Maze (p=d2) A B Start Start d = length ofthe shortest path Target Target Is there a strategy, as fast as flooding and with as low traffic as single-path ... for all scenarios ? Perimeter A B Time: O(d + p) Rt = O(d) Single-Path (sequential) Traffic: O(d) Traffic: O(d2) RTr= O(d) Flooding (parallel) Time: O(d)
Lucas Algorithm[Lucas 88] 1: repeat 2: Follow the straight line connecting source and target. 3: if a barrier is hit then 4: Start a complete right-hand traversal around the barrier and remember all points where the straight line is crossed. 5: Go to the crossing point that is nearest to the target. 6: end if 7: until target is reached Time: d + 3/2 p Traffic: d + 3/2 p
Expanding Ring Search [Johnson, Maltz 96] • Start flooding with restricted search depth • Repeat flooding while doubling the search depth until the destination is reached • Time: O(d) • Traffic: O(d2)
Continuous Ring Search • Modification of Expanding Ring Search: • Source starts flooding • but with a delay of σ time steps for each hop • If the target is reached, a notification message is sent back to the source • Then the source starts flooding without slow-down a second time • Second wave is sent out to stop the first wave • Time: O(d) • Traffic: O(d2)
The JITE Algorithmus • Message efficient parallel BFS (breadth first search) • using Continuous Ring Search • Just-In-Time Exploration (JITE) and Construktion of search path insteadflooding • Search paths surround barriers • Slow Search:slow BFS on a sparse grid • Fast Exploration:Construction of the sparsegrid near to the shoreline Start Barrier Target Shoreline
Slow Search visits only explored paths Fast Exploration is started in the vicinity of the BFS-shoreline Exploration must be terminated before a frame is reached by the BFS-shoreline Slow Search & Fast Exploration Exploration E E E E E E E E E E Shoreline E E E E E E
Construction of a path network for the BFS Partition into „Frames“ Frame borders provide an approximation of the shortest path tree Fast Exploration (1) • Frame traversal(Right hand rule) • Time limit: If the traversal takes too long then the fram is divided into smaller frames entrypoint Detour
Problems: Exploration causes traffic explore only frames in the vicinity of the shoreline Small barriers cause further subdivision (traffic!) Allow small detours Exploration needs time Slow down BFS-Shoreline by a constant factor Size limit for new neighbor frames Multiple entry points Coordinate exploration Fast Exploration (2) allowed detour: g/(t) g E E E E E E E E E
Frame Exploration • A frame can be explored in parallel from different sides (entry points) • All messages stop after at most 2g+g/(t) rounds • If a message is stopped then no messages of type 3 or 4 occured after a specific time • further subdivision is triggered when the messages of type 3 do not occur in time • Wake up: Tell all frame border nodes about the exploration in progress Find a coordinator • Count: Coordinator sends counting messages • Stop: Frame has been explored (in time) • Close: Stop exploration within frame • Notify Shoreline enters frame: Start exploration in neighbor frames
Slow Search • Path network/frame network gives a constant factor approximation of the shortest path tree • Constant factor slow down of the BFS-Shoreline • Allowed detours of g/(t) per gg-frame. Choose (t)= log t.For a portion of 1-1/log d of all frames we observe g/(t) = O(g/log d) (log g = 1..log d) • Target is reached in time O(d) (constant competitive ratio) • Traffic O(d + p log2 d) • O(p log d) is the size of the path network/frame network • further logarithmic factor for allowed detours
Summary • New efficient strategy for position based routing • Comparative analysis for time and traffic • Lower bounds, linear trade-off • Single-Path versus Flooding • JITE Algorithm • asymptotical as fast as flooding • small polylogarithmic overhead for traffic • Results applicable for wireless ad-hoc-networks
Thank you Position based Routing Strategies Christian Schindelhauer joint work with Stefan Rührup Workshop of Flexible Network Design Bertinoro, 1.-6.10.2006 to appear at ISAAC 2006