200 likes | 329 Views
GeoGrid: A scalable Location Service Network. Authors: J.Zhang, G.Zhang, L.Liu Georgia Institute of Technology presented by Olga Weiss Com S 587x, Fall 2007. Overview. Introduction Problem addressed What is GeoGrid? Existing solutions review Design of GeoGrid Basic GeoGrid system
E N D
GeoGrid: A scalable Location Service Network Authors: J.Zhang, G.Zhang, L.Liu Georgia Institute of Technology presented by Olga Weiss Com S 587x, Fall 2007
Overview • Introduction • Problem addressed • What is GeoGrid? • Existing solutions review • Design of GeoGrid • Basic GeoGrid system • Construction • Routing • Dual peer and Dynamic work load adaptation techniques • Experimental results and conclusion
Introduction • Problem addressed • serving a large and growing number of mobile users • continious delivery and dissemination of location-based information in real time • GeoGrid – a geographical location service overlay network system • Decentralized • Geographical location aware • Techniques to improve fault-tolerance and workload balance
Existing solutions review • Current location-based services are • constrained to fixed set of moving objects • expensive to maintain and expand • One approach • Create and maintain a centralized graphical location service. Drawbacks: • Response time • Expensive access to infrastructure communication service • Not robust • No model for such large scale location-based service
Challenges • Can we organize nodes into efficient service network that is geographical proximity aware? • End-to-end communication b/w any two nodes is bounded • How to handle workload imbalance (hot spots)? How to minimize the possible service interruption? • Ex. Highway system can be heavily loaded during the rush hours
GeoGrid Design • Basic GeoGrid system • GeoGrid construction • Routing • Dual peer and Dynamic work load adaptation techniques
Basic GeoGrid • A network of N nodes interconnected using GeoGrid topology and routing protocol • A node is a point in 2dim geographical coordinate space • Space is dynamically partitioned into N disjoint rectangle • Each node “owns” a rectangular region
Basic GeoGrid • Nodes self-organize into an overlay network • Connectivity is established through immediate neighbors of a node • A mobile user connects his mobile device to one of the nodes • Each node runs GeoGrid middleware and serves as a proxy for the mobile user
Basic GeoGrid • Assumptions • Information services existence (provide geographical info) • User can be either from outside of the network or from inside it • Network nodes are not mobile
GeoGrid Construction • Plane is divided among N nodes into a set of rectangular regions r = <x,y,width,height> • A node p is identified by a tuple <x,y,IP, port,properties> • Each node maintains a list of its neighbors
GeoGrid Construction • GeoGrid is constructed incrementally • Start from one node owning the entire GeoGrid space • Split the space upon new nodes joining • decide which region the new node q belongs (say, of node p) • split the region in half • hand one half to node q • notify neighbors (they must add q into their lists) • create a list for q from the list of p
GeoGrid Construction Basic bootstrapping process for a new node • Obtain geographical coordinate from a service • Obtain a list of existing nodes from a bootstrapping server • Randomly chose an entry node from the list • Initiate a joining request contacting to the entry node
Routing in GeoGrid • Location query • Request is tagged with (x,y) • p issues a query (x,y); q = p • if q does not own (x, y) then forward the request to a neighbor closest to (x,y)
Routing in GeoGrid • Two critical issues: • Load balancing • Routing efficiency • Solution:heuristic load balance scheme - workload dynamic adjusting • Dual peer technique • Load adaptation technique
Dual peer technique • Improves the overall system reliability • Maps region sizes to the capacities of region owner nodes • 2 nodes share a region ownership • Primary owner node is a node with the larger capacity • Secondary owner node is a backup node
Dual peer technique • Node join: • First 3 steps are the same as in basic GeoGrid • Chose a neighbor region that has one owner and the least capacity • If no such region exist, chose the region with the least primary node capacity • Split the region and becomes a primary owner node of the region • Node departure • Secondary owner departure causes no change • Primary owner must inform neighbors
Dual peer technique • Failure recover • Status information is periodically synchronized b/w primary and secondary nodes Failure of a node: • If the primary node leaves, the secondary node becomes the primary • If the secondary node leaves, the region becomes half-full • If both nodes die, what happens?
Dual peer technique • Avantages • Improves the fault resilience • Reduces the number of region split operations • Improves the system load balance
Dynamic workload adaptation • Main idea: balance workload distribution by selectively assigning new nodes to the most heavily loaded regions in its neighborhood • Three basic rules: • Use local adaptation instead remote one (less operation overhead) • Use secondary peer switching/moving (for primary peer the ops costs more) • Region split/merge are expensive – should be used with less priority
Conclusion • Experimental results show that GeoGrid can reduce the workload load imbalance by an order of magnitude • Unique design: • Use of geographical mapping of nodes to regions; improved routing • Dual peer and Dynamic workload adaptation techniques reduce load imbalance and improve fault-tolerance