1 / 58

15-441 Computer Networking

15-441 Computer Networking. Lecture 10 – Geographic Ad Hoc Routing. Readings. [I.1] GPSR: Greedy Perimeter Stateless Routing for Wireless Networks , Karp, B., and Kung. H. T.,   Proc. 6th Annual International Conference on Mobile Computing and Networking (MobiCom 2000), 243-254.

keilah
Download Presentation

15-441 Computer Networking

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 15-441 Computer Networking Lecture 10 – Geographic Ad Hoc Routing

  2. Readings • [I.1] GPSR: Greedy Perimeter Stateless Routing for Wireless Networks, Karp, B., and Kung. H. T.,   Proc. 6th Annual International Conference on Mobile Computing and Networking (MobiCom 2000), 243-254. • [I.7] Jinyang Li, John Jannotti, Douglas S. J. De Couto, David R. Karger, and Robert Morris,  "A Scalable Location Service for Geographic Ad Hoc Routing."  Proceedings of the sixth ACM International Conference on Mobile Computing and Networking (MobiCom '00), July 2000, Boston, Massachusetts. Pages 120-130. • [I.11] Ananth Rao, Sylvia Ratnasamy, Christos Papadimitriou, Scott Shenker, and Ion Stoica. Geographic Routing without Location Information. In Proc. of ACM Mobicom 2003, Sept. 2003. • OPTIONAL • [I.12] Young-Bae Ko and Nitin H. Vaidya, "Location-Aided Routing(LAR) in Mobile Ad Hoc Networks" In Proceedings of the 4th Annual International Conference on Mobile Computing and Networking (MOBICOM'98), October, 1998.

  3. Context • Early 90s: availability of off-the-shelf wireless network cards and laptops • 1994: first papers on Destination-Sequenced Distance Vector (DSDV) routing and Dynamic Source Routing (DSR) spark tremendous interest in routing on mobile wireless (ad hoc) networks • 1998: Broch et al.’s comparison of leading ad hoc routing protocol proposals in ns-2 simulator in MobiCom • [2000: GPSR in MobiCom] • 2000: Estrin et al.’s Directed Diffusion in MobiCom sparks interest in wireless sensor networks

  4. Scaling Routing (cont’d) • Dominant factors in cost of DV, LS, DSR: • rate of change of topology (bandwidth) • number of routers in routing domain (b/w, state) • Scaling strategies: • Hierarchy: at AS boundaries (BGP) or on finer scale (OSPF) • Goal: reduce number of routers in routing domain • Assumption: address aggregation • Caching: store source routes overheard (DSR) • Goal: limit propagation of future queries • Assumption: source route remains fixed while cached

  5. D C S Problem D t0 t1 C C C A S S S X X X D D B E

  6. Route Discovery Using Flooding route request C route reply A S X D B E

  7. Location-Aided Routing • Main Idea • Using location information to reduce the number of nodes to whom route request is propagated. • Location-aided route discovery based on “limited” flooding • Consider a node S that needs to find a route to node D. • each host in the ad hoc network knows its current location • node S knows that node D was at location L at time t0, and that the current time is t1

  8. Location Information • Consider a node S that needs to find a route to node D. • Assumption: • each host in the ad hoc network knows its current location precisely (location error considered in one of their simulations) • node S knows that node D was at location L at time t0, and that the current time is t1

  9. Expected Zone expected zone of D ---- the region that node S expects to contain node D at time t1, only an estimate made by node S

  10. Request Zone • LAR’s limited flooding • A node forwards a route request only if it belongs to the request zone • The request zone should include • expected zone • other regions around the expected zone • No guarantee that a path can be found consisting only of the hosts in a chosen request zone. • timeout • expand request zone • Trade-off between • latency of route determination • the message overhead

  11. Greedy Perimeter Stateless Routing(GPSR) Central idea: Machines can know their geographic locations • by GPS (outdoors) • by surveyed position (for non-mobile nodes) • by short-range localization (indoors, [AT&T Camb, 1997], [Priyantha et al., 2000]) Route using geography. • packet destination field: location of destination

  12. Assumptions • Bi-directional radio links (unidirectional links may be blacklisted) • Network nodes placed roughly in a plane • Radio propagation in free space; distance from transmitter determines signal strength at receiver • Fixed, uniform radio transmitter power

  13. Neighbor must be strictly closer to avoid loops Greedy Forwarding • Nodes learn immediate neighbors’ positions from beaconing/piggybacking on data packets • Locally optimal, greedy next hop choice: • Neighbor geographically nearest destination D x y

  14. In Praise of Geography • Self-describing • As node density increases, shortest path tends toward Euclidean straight line between source and destination • Node’s state concerns only one-hop neighbors: • Low per-node state: O(density) • Low routing protocol overhead: state pushed only one hop

  15. How can we circumnavigate voids? …based only on one-hop neighborhood? Greedy Forwarding Failure Greedy forwarding not always possible! Consider: D v z void y w x

  16. Voids more prevalent in sparser topologies Node Density and Voids

  17. Void Traversal: The Right-hand Rule Well-known graph traversal: right-hand rule Requires only neighbors’ positions z y x

  18. How to remove crossing edgeswithout partitioning graph? And usingonly single-hop neighbors’ positions? Planar vs. Non-planar Graphs On graphs with edges that cross (non-planar graphs), right-hand rule may not tour enclosed face boundary

  19. Euclidean MST (so connected) RNG GG Delaunay Triangulation (so planar) Planarized Graphs Relative Neighborhood Graph (RNG) [Toussaint, ’80] and Gabriel Graph (GG) [Gabriel, ’69]: long-known planar graphs Assume edge exists between any pair of nodes separated by less than threshold distance (i.e., nominal radio range) RNG and GG can be constructed from only neighbors’ positions, and can be shown not to partition network! w w u v u v ? ? GG RNG

  20. Planarized Graphs: Example 200 nodes, placed uniformly at random on 2000-by-2000-meter region; 250-meter radio range GG Subgraph Full Graph RNG Subgraph

  21. Full Greedy PerimeterStateless Routing • All packets begin in greedy mode • Greedy mode uses full graph • Upon greedy failure, node marks its location in packet, marks packet in perimeter mode • Perimeter mode packets follow simple planar graph traversal: • Forward along successively closer faces by right-hand rule, until reaching destination • Packets return to greedy mode upon reaching node closer to destination than perimeter mode entry point

  22. Perimeter Mode Forwarding Example D • Traverse face closer to D along xD by right-hand rule, until crossing xD • Repeat with next-closer face, &c. x

  23. Packet Delivery Success Rate(50, 200; Dense)

  24. How would you expect GPSR’s state size to change the number of nodes in the network increases? Why does DSR hold state for more nodes than there are in the network? State Size (200; Dense)

  25. Evaluation in paper reveals nearly nothing about performance of perimeter mode! Why doesn’t it? Critical Thinking • Based on the results thus far (indeed, all results in the paper), what do we know about the performance of GPSR’s perimeter mode? • Would you expect it to be more or less reliable than greedy mode? • Would you expect use of perimeter mode to affect path length?

  26. Other Issues • How to route geographically in 3D? • Greedy mode? • Perimeter mode? • Effect of radio-opaque obstacles? • Effect of position errors?

  27. Geographic Forwarding Scales Well • A addresses a packet to G’s latitude, longitude • C only needs to know its immediate neighbors to forward packets towards G. • Geographic forwarding needs a location service! C’s radio range A D F C G B E

  28. Possible Designs for a Location Service • Flood to get a node’s location (LAR, DREAM). • excessive flooding messages • Central static location server. • not fault tolerant • too much load on central server and nearby nodes • the server might be far away for nearby nodes or inaccessible due to network partition. • Every node acts as server for a few others. • good for spreading load and tolerating failures.

  29. Desirable Properties of a Distributed Location Service • Spread load evenly over all nodes. • Degrade gracefully as nodes fail. • Queries for nearby nodes stay local. • Per-node storage and communication costs grow slowly as the network size grows.

  30. Grid Location Service (GLS) Overview E H L B D J G A “D?” I F K C Each node has a few servers that know its location. 1. Node D sends location updates to its servers (B, H, K). 2. Node J sends a query for D to one of D’s close servers.

  31. Grid Node Identifiers • Each Grid node has a unique identifier. • Identifiers are numbers. • Perhaps a hash of the node’s IP address. • Identifier X is the “successor” of Y if X is the smallest identifier greater than Y.

  32. level-0 level-1 level-2 level-3 GLS’s spatial hierarchy All nodes agree on the global origin of the grid hierarchy

  33. sibling level-0 squares s n s s s s sibling level-1 squares s s sibling level-2 squares s s 3 Servers Per Node Per Level • s is n’s successorin that square. • (Successor is the node with “least ID greater than” n )

  34. s n s s s s s s s1 x s2 s s3 location query path Queries Search for Destination’s Successors Each query step: visit n’s successor at surrounding level.

  35. 9 location table content 11 6 23 GLS Update (level 0) Invariant (for all levels): For node nin a square, n’s successor in each sibling square “knows” about n. 11 1 2 3 9 23 29 16 7 6 Base case: Each node in a level-0 square “knows” about all other nodes in the same square. 17 5 26 25 4 8 21 19

  36. location table content location update GLS Update (level 1) Invariant (for all levels): For node nin a square, n’s successor in each sibling square “knows” about n. 9 11 1 2 3 2 11 9 6 23 29 2 16 2 23 7 6 17 5 26 25 4 8 21 19

  37. location table content GLS Update (level 1) ... Invariant (for all levels): For node nin a square, n’s successor in each sibling square “knows” about n. 9 ... 11 1 2 ... 3 11,2 9 6 ... 23 29 2 16 ... 23, 2 7 6 ... ... ... 17 5 ... 26 25 ... ... ... 8 21 4 ... 19

  38. location table content location update GLS Update (level 2) ... Invariant (for all levels): For node nin a square, n’s successor in each sibling square “knows” about n. 9 ... 1 11 1 1 2 ... 3 11, 2 9 6 ... 23 29 2 16 ... 23,2 7 6 ... ... ... 17 5 ... 26 25 ... ... ... 8 21 4 ... 19

  39. GLS Query ... 9 ... 1 11 1 1 2 ... 3 11,2 9 6 ... 23 29 2 16 ... 23,2 7 6 ... ... ... 17 5 ... 26 25 location table content ... ... ... 8 21 4 query from 23 for 1 ... 19

  40. Challenges for GLS in a Mobile Network • Slow updates risk out-of-date information. • Packets dropped because we can’t find the destination. • Aggressive updates risk congestion. • Update packets leave no bandwidth for data. • Large mobile ad-hoc nets usually suffer from one or the other.

  41. query success rate Number of nodes GLS Finds Nodes in Big Mobile Networks Biggest network simulated: 600 nodes, 2900x2900m (4-level grid hierarchy) • Failed queries are not retransmitted in this simulation • Queries fail because of out-of-date information for destination nodes or intermediate servers

  42. GLS Protocol Overhead Grows Slowly Avg. packets transmitted per node per second Number of nodes • Protocol packets include: GLS update, GLS query/reply

  43. Why geographic routing without location information • GPS takes power, doesn’t work indoors • Obstacles, non-ideal radios • Coordinates computed will reflect true connectivity and not the geographic locations of the nodes

  44. Step by Step Approach Nothing is known about the perimeter Perimeter node detection Perimeter nodes are known but their locations are not known Balls and Springs Perimeter nodes and their locations are known Relaxation algorithm Degree of Information

  45. Rubber Bands Every node moves to the average of its neighbors coordinates at each step in the iteration

  46. Perimeter nodes are known (10 iterations)

  47. Perimeter nodes are known (100 iterations)

  48. Perimeter nodes are known (1000 iterations)

  49. Perimeter Nodes are Known but Their Locations are not Known • Stage 1 : Each perimeter node broadcasts a HELLO message to the entire network • Stage 2 : Each perimeter node broadcasts its perimeter vector to the entire network • Stage 3 : Every perimeter node uses a triangulation algorithm to compute the coordinates of all other perimeter nodes by minimizing

  50. Balls and Springs • Balls and Springs • Ball : each perimeter node • Spring : each ball is attached by a spring • Spring’s length : the hop count distance • Seen as minimizing the potential energy when a ball attached to every other ball by a spring

More Related