Grid: Scalable Ad-Hoc Geographic Routing

Slides:



Advertisements
Similar presentations
Scalable Location Service for Geographic Ad Hoc Routing
Advertisements

Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
1 GPSR: Greedy Perimeter Stateless Routing for Wireless Networks B. Karp, H. T. Kung Borrowed slides from Richard Yang.
Rumor Routing Algorithm For sensor Networks David Braginsky, Computer Science Department, UCLA Presented By: Yaohua Zhu CS691 Spring 2003.
Rumor Routing in Sensor Networks David Braginsky and Deborah Estrin LECS – UCLA Modified and Presented by Sugata Hazarika.
Geographic Routing Without Location Information A. Rao, S. Ratnasamy, C. Papadimitriou, S. Shenker, I. Stoica Paper and Slides by Presented by Ryan Carr.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #4 Mobile Ad-Hoc Networks AODV Routing.
Carnet: A Scalable Ad Hoc Wireless Network System SIGOPS European Workshop, Authors: Robert Morris, etc., MIT Library of Computer Science Presenter:
Mesh Networks A.k.a “ad-hoc”. Definition A local area network that employs either a full mesh topology or partial mesh topology Full mesh topology- each.
Distributed Quad-Tree for Spatial Querying in Wireless Sensor Networks (WSNs) Murat Demirbas, Xuming Lu Dept of Computer Science and Engineering, University.
Scalable Ad Hoc Routing: The Case for Dynamic Addressing INFOCOM 2004 Jakob Eriksson, Michalis Faloutsos, Srikanth Krishnamurthy University of California,
CS 672 Paper Presentation Presented By Saif Iqbal “CarNet: A Scalable Ad Hoc Wireless Network System” Robert Morris, John Jannotti, Frans Kaashoek, Jinyang.
1 GPSR: Greedy Perimeter Stateless Routing for Wireless Networks B. Karp, H. T. Kung Borrowed some Richard Yang‘s slides.
Distributed Quad-Tree for Spatial Querying in Wireless Sensor Networks (WSNs) Murat Demirbas, Xuming Lu Dept of Computer Science and Engineering, University.
Beacon Vector Routing: Scalable Point-to-Point Routing in Wireless Sensornets.
Scalable Location Management for Large Mobile Ad hoc Networks Sumesh J. Philip.
A Scalable Location Service for Geographic Ad Hoc Routing Jinyang Li, John Jannotti, Douglas S. J. De Couto, David R. Karger, Robert Morris MIT Laboratory.
Carnet: Scalable Ad-Hoc Mobile Networking Robert Morris with Kaashoek and Karger.
1 Spring Semester 2009, Dept. of Computer Science, Technion Internet Networking recitation #3 Mobile Ad-Hoc Networks AODV Routing.
1 BitHoc: BitTorrent for wireless ad hoc networks Jointly with: Chadi Barakat Jayeoung Choi Anwar Al Hamra Thierry Turletti EPI PLANETE 28/02/2008 MAESTRO/PLANETE.
A Scalable Location Service for Geographic Ad Hoc Routing Jinyang Li, John Jannotti, Douglas S. J. De Couto, David R. Karger, Robert Morris Presented By.
DSR: Introduction Reference: D. B. Johnson, D. A. Maltz, Y.-C. Hu, and J. G. Jetcheva, “The Dynamic Source Routing Protocol for Mobile Ad Hoc Networks,”
SRL: A Bidirectional Abstraction for Unidirectional Ad Hoc Networks. Venugopalan Ramasubramanian Ranveer Chandra Daniel Mosse.
CarNet/Grid: Scalable Ad-Hoc Geographic Routing Robert Morris MIT / LCS
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
Location Directory Services Vivek Sharma 9/26/2001 CS851: Large Scale Deeply Embedded Networks.
Teknik Routing Pertemuan 10 Matakuliah: H0524/Jaringan Komputer Tahun: 2009.
6.964 Pervasive Computing Grid: Scalable Ad Hoc Networking 1 November 2001 Douglas S. J. De Couto Parallel and Distributed Operating Systems Group MIT.
1 Presented by Jing Sun Computer Science and Engineering Department University of Conneticut.
SGPS A Hybrid of Topology and Location Based Protocol for Ad hoc Networks Jingyi Yu Computer Graphics Group.
A Framework for Reliable Routing in Mobile Ad Hoc Networks Zhenqiang Ye Srikanth V. Krishnamurthy Satish K. Tripathi.
LOOKING UP DATA IN P2P SYSTEMS Hari Balakrishnan M. Frans Kaashoek David Karger Robert Morris Ion Stoica MIT LCS.
Energy Efficient Data Management for Wireless Sensor Networks with Data Sink Failure Hyunyoung Lee, Kyoungsook Lee, Lan Lin and Andreas Klappenecker †
Spring 2000CS 4611 Routing Outline Algorithms Scalability.
Improving Fault Tolerance in AODV Matthew J. Miller Jungmin So.
Grid: Scalable Ad Hoc Wireless Networking Douglas De Couto
Grid: Scalable Ad-Hoc Wireless Networking Robert Morris LCS
Grid: Scalable Ad-Hoc Wireless Networking Douglas De Couto
Spatial Aware Geographic Forwarding for Mobile Ad Hoc Networks Jing Tian, Illya Stepanov, Kurt Rothermel {tian, stepanov,
William Stallings Data and Computer Communications
Routing Metrics for Wireless Mesh Networks
CS 5565 Network Architecture and Protocols
IMPROVING OF WIRELESS MESH NETWORKS.
Virtual Direction Routing
A Location-Based Routing Method for Mobile Ad Hoc Networks
Routing Metrics for Wireless Mesh Networks
Lecture 28 Mobile Ad hoc Network Dr. Ghalib A. Shah
MZR: A Multicast Protocol based on Zone Routing
Introduction to Wireless Sensor Networks
The Chord P2P Network Some slides have been borrowed from the original presentation by the authors.
(slides by Nick Feamster)
GPSR Greedy Perimeter Stateless Routing
Internet Networking recitation #4
Introduction to Wireless Sensor Networks
CBRP: A Cluster-based Routing Protocol for Mobile Ad hoc Networks
Net 435: Wireless sensor network (WSN)
Intra-Domain Routing Jacob Strauss September 14, 2006.
Self-Organizing Hierarchical Routing for Scalable Ad Hoc Networking
Plethora: Infrastructure and System Design
Mobile and Wireless Networking
by Saltanat Mashirova & Afshin Mahini
Routing Metrics for Wireless Mesh Networks
Introduction There are many situations in which we might use replicated data Let’s look at another, different one And design a system to work well in that.
High Throughput Route Selection in Multi-Rate Ad Hoc Wireless Networks
Dynamic Routing and OSPF
Motion-Aware Routing in Vehicular Ad-hoc Networks
Routing.
Wide Area Networks (WANs), Routing, and Shortest Paths
Wide Area Networks (WANs), Routing, and Shortest Paths
Routing protocols in Mobile Ad Hoc Network
Presentation transcript:

Grid: Scalable Ad-Hoc Geographic Routing Li, De Couto, Morris, Kaashoek, Karger, and Jannotti http://www.pdos.lcs.mit.edu/grid

Motivation How will my smart camera communicate? How to organize a campus full of smart devices? How to design/choose: Communication hardware. Automatic configuration plan. Scalable routing protocols. Deployment strategy. Why is scalability hard to achieve? When node moves all around, hard to have hierarchy that aggregate routing information which makes active distribution of topology not acceptable for big networks. On-demand routing protocols that flood when size of network gets big, more queries are generated and more expensive the query gets.

Possible Technologies Campus wired ethernet w/ DHCP. Hard to deploy everywhere. Cellular modems / CDPD. Pervasive; but slow, complex per-node setup. 802.11 base stations w/ DHCP. Metricom / Ricochet. Like cellular but faster and less pervasive. Ad-hoc routing. Why is scalability hard to achieve? When node moves all around, hard to have hierarchy that aggregate routing information which makes active distribution of topology not acceptable for big networks. On-demand routing protocols that flood when size of network gets big, more queries are generated and more expensive the query gets.

Ad-Hoc Nets: The Dream Frans Doug Nodes forward each others’ packets. No infrastructure; easy to deploy; fault tolerant. Short hops are good for power and spectrum. Can it be made to work?

Ad-Hoc Nets: The Reality Avg. packets transmitted per node per second The most popular type of routing for ad hoc networks in literature is flooding based on-demand routing. This type of routing handles mobility really well and has been shown to work well in small networks. We simulated the DSR, which is the best known on-demand ad hoc routing protocols for networks with reasonable size and see how it scales. This is the number of packets each node has to forward which grows rapidly. when network gets bigger. When the network size exceeds 300, so many packets are being transmitted in the networks that a lot of them get dropped Number of nodes Flooding-based on-demand routing works best in small nets. Can we route without global topology knowledge?

Geographic Forwarding Scales Well Assume each node knows its geographic location. C’s radio range A D F C G B E In the network of DSR, nodes do not know their geographic location, if nodes could get to know their geographic location via GPS, could we do it better? Yes! In radio networks, it’s very likely that nodes that are closer geographically also tend to be close in the actual routing path. Geographic forwarding makes use of this characteristics of mobile networks to route packets. In the following example, … … We can easily see geographic forwarding is very scalable. But how does A know G’s current location in the first place? There needs to be some sort of location service in order for geographic forwarding to be useful. 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!

Possible Designs for a Location Service Flood to get a node’s location (e.g. 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.

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. Mention the transition to next slide: W e are working on a location service protocol called GLS that satisfies all the listed properties here.

GLS’s Spatial Hierarchy level-0 level-1 level-2 level-3 All nodes agree on the global origin of the grid hierarchy

3 Servers Per Node Per Level sibling level-0 squares sibling level-1 squares sibling level-2 squares This graph shows the distribution of location servers for a particular node n. N will be sending location updates to its servers. N has a location server in each of the 3 sibling squares of different levels. S is n’s successor in that square. Each node has a unique identifier and a successor is the node with “least ID greater than” n. Mention there are lots of servers in areas close to node n which helps location queries from node closer by to hit nearby location servers. Mention fault tolerant: the fact that there are more than one location servers in grid ensures that even if a single location server for n fails, n won’t be unreachable. Mention the number of location server for each node scales as the log of the area of the network. s is n’s successor in that square. (Successor is the node with “least ID greater than” n )

Queries Search for Destination’s Successors x s2 s1 Each query step: visit n’s successor at increasing level. in order to for x to know node n’s current location. X sends out a location query for n and this query packets will visit …. Since n has been sending updates to nodes with closest ID in increasing levels of squares. Query will finally reach a node that n has previously sent updates to. Robert’s comments: Consistent hashing: x and n agree on who n’s server is. Use of squares allows n to move (within limits) without changing servers. Use of IDs allows servers to move (within limits) and still be useful. location query path

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

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

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

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

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

Performance Analysis How scalable is GLS to big mobile ad-hoc networks? Simulations using ns Mobility Model: random way-point with speed 0-10 m/s (22 mph) Area of square universe grows with the number of nodes in the network. Achieve spatial reuse of the spectrum GLS level-0 square is 250m x 250m

GLS Finds Nodes in Big Mobile Networks Number of nodes query success rate Biggest network simulated: 600 nodes, 2900x2900m (4-level grid hierarchy) Re-iterate what the query is. Mention there is no retransmission for failed GLS queries. Failed queries are not retransmitted in this simulation Queries fail because of out-of-date information for destination nodes or intermediate servers.

GLS Protocol Overhead Grows Slowly Avg. packets transmitted per node per second What is protocol packet overhead? GLS update query reply, HELLO measured in the number of packets forwarded as well as initiated. The y-axis shows the average number of packets EACH node has to forward/send per second. Number of nodes Protocol packets include: GLS update, GLS query/reply

Fraction of Data Packets Delivered Successfully delivered data Number of nodes DSR Grid Geographic forwarding is less fragile than source routing. DSR queries use too much b/w with > 300 nodes.

Grid Status Deployed 16 nodes with preliminary software. Mostly stationary nodes Linux, Click, 802.11 radios. Aiming for campus-wide deployment. Currently adding wireless handhelds (iPaq) Will add location sensors

Practical Problems Location sensors add cost, size, and power requirements Connectivity holes The world is not randomly uniform! Radio ranges vary Power: not all devices can expend energy forwarding for others Capacity: does network capacity grow with the number of nodes? This is probably a complete list of the ad hoc problems

Only Some Nodes Know Position E.g. GPS doesn’t work well inside Previous work assumed every node knew position: To choose next forwarding hop To address packet to destination To run GLS

Solution: Location Proxies Nodes that know their location can act as location proxies. Location proxies can communicate with each other using geographic forwarding and local routing protocol (DV: distance vector). Nodes without location select proxies, and communicate through them using only local DV. Proxies are not special besides knowing locations. Mention: local = 2-hop DV

Location Proxies (2) P: location proxies N: nodes without location N3 local DV protocol Geographic forwarding + local DV protocol

Choosing Location Proxies Location ignorant nodes always remember and advertise any routes to location equipped nodes Routes to nodes with location will propagate to all location ignorant nodes Location ignorant nodes choose closest (in hops) location equipped node as proxy Advertise proxy’s location to location service as own Forward all data via proxy

Proxy Example (finding proxies) P: position equipped N: position ignorant Radio range Advertisements: P, hops=4 … P, hops=3 … P, hops=2 … P, hops=1 … P, hops=0 … N1 N2 N3 N4 P Routes: P, 4 P, 3 P, 2 P, 1 … … … … …

Receiving Packets Using Proxies Proxy P will receive packets for N via geographic forwarding. P uses local routing to send packets to N. P will learn the route to N.

How Proxies Learn Routes Radio range Routes: P, 4 N1, 1 … N1, 2 N1, 3 N1, 4 Advertisements: N1, p_h=4 N1, p_h=3 N1, p_h=2 N1, p_h=1 N1’s route should be propagated for 4 hops to reach proxy P.

Proxy Results: scenario 10% know location Nodes with location placed along top edge 10 Knows loc Ignorant 100

Location Proxies are Effective

What is a “hole”? There could be no geographically closer next hop: C’s radio range B A F G C ? D E Next hop D is backwards!

Intermediate Node Forwarding Idea: If geographic route fails, try another route! Select an intermediate location L. Forward packets to destination via L Use geographic forwarding from source to L, and from L to destination L can be backwards, or to the side, avoiding holes.

Implementing INF Select L randomly from circle c about midpoint m: If routes continue to fail, increase radius of circle c, e.g. double the radius, and choose new L. S D m c L In progress!

Intermediate Node Forwarding Example INF through L1 will fail (A-B-C-?) B A G C L1 F L2 INF through L2 will succeed (A-B-C-D-E-F-G) D E

Summary GLS + geographic forwarding is scalable Practical challenges: No location info Geographic connectivity “holes” Power Capacity Basic system is functioning, we are addressing the challenges.