150 likes | 338 Views
Routing and Localization Services in Self-Organizing Wireless Ad-Hoc and Sensor Networks Using Virtual Coordinates. Gianluca Moro*, Gabriele Monti*, Aris M. Ouksel^ *DEIS, University of Bologna {gmoro, gmonti}@deis.unibo.it ^University of Illinois, Chicago (USA) aris@uic.edu. Summary.
E N D
Routing and Localization Services in Self-Organizing Wireless Ad-Hoc and Sensor Networks Using Virtual Coordinates Gianluca Moro*, Gabriele Monti*, Aris M. Ouksel^ *DEIS, University of Bologna {gmoro, gmonti}@deis.unibo.it ^University of Illinois, Chicago (USA) aris@uic.edu ICPS'06: IEEE International Conference on Pervasive Services 2006
Summary • Introduction to Ad-hoc and sensor networks and to existing routing solutions • Description of W-Grid features and characteristics • Experimental results • Future works ICPS'06: IEEE International Conference on Pervasive Services 2006
Introduction • Recent advances in ICT have led to the rapid development of small, powerful, multi-function devices equipped with interfaces (Bluetooth, Wi-Fi and Wi-Max) • Realization of Ad-hoc and sensor networks has become possible • Devices can communicate without the need of a fixed pre-configured infrastructure • Connectivity is supported by multi-hop transmissions • Devices act both as users and as signal repeaters at the same time ICPS'06: IEEE International Conference on Pervasive Services 2006
Ad-Hoc routing protocols Table-driven protocols (proactive) On-demand protocols (reactive) Geographic protocols DSDV WRP AODV DSR LMR ABR GPSR CGSR TORA SSR Relatedworks Routing protocols for ad-hoc networks can be classified into three main categories • Table-driven (proactive) • Routing information about every possible destination is stored at each device • Changes in network topology trigger propagating updates in order to maintain a Consistent view (heavy bandwidth utilization) • On-Demand (or Reactive) • A path discovery mechanism is initiated whenever destination is not known • Path discovery requires a form of message flooding which causes latency and network overhead • Geographic routing protocols. • Packets are forwarded trying to reduce as much as possible the physical distance to the destination • Good scalability (no flooding is used) • Dead-ends may occur under low density environment or in case of obstacles • Devices must be location aware (requires GPS or another positioning system) ICPS'06: IEEE International Conference on Pervasive Services 2006
W-Grid: Features and characteristics Features: • Allows efficient routing and data management without global knowledge about network and without central coordination • Participants know only about their direct neighbors • Currently we work with networks of static devices Characteristics: • Devices are mapped into nodes of a binary tree • Each device is assigned virtual coordinate(s) • Virtual coordinates correspond to the binary strings that identify nodes of the binary tree • Coordinates represent portions of the data space ICPS'06: IEEE International Conference on Pervasive Services 2006
W-Grid: Coordinates generation Node n1 creates a new coordinate (split) * by concatenating a bit to it Coordinate * cannot be split anymore, therefore *0 is split Node n1 keeps the coordinate *00 Node n2 joins the network, a new coordinate is needed Node n1 keeps the coordinate *0 n1 * *00 n1 * *0 *0 *1 n2 *1 Node n1 turns on and elects itself as root of a new W-Grid network n1 n2 n2 is given coordinate *1 *00 *01 n3 n3 n1 *01 n3 is given *01 Each joining node gets a coordinate as previously described ICPS'06: IEEE International Conference on Pervasive Services 2006
W-Grid: Total order relationship • We can define a total order relationship among coordinates (and consequently among nodes) • By assigning more than one coordinate to each node we reduce effects of mapping a multi-dimensional space into a one-dimensional space Es. 110100 < 1110 ICPS'06: IEEE International Conference on Pervasive Services 2006
n12 *1100111 *101111 *1001101 *1100000 n3 *101100 *100100 *101000 *100111 n9 *100101 *11101 *11110001 *111111 *1001100 n11 *11110000 *100001 *1111010 *101010 n13 *1100011 *1100001 n2 *1100 *1100110 *101101 *11100 *11010 *1100010 *101110 n10 *100000 *111110 *101001 *1000100 *1000110 n5 *11011*0001 *01101 *0111000 n18 *1111011 *1000101 *01111010*10001110 n1 * *001 *110010 *0101 *0000 n20 *1111001*1010110*10001111 *0111010 n17 *0100000110 n6 *01110011 *0100101 *01111111 *01111000 *01111101 n19 *01110110*011110011*01111011 *1010111 *011101111 n16 *010000010 *010001111 *0100000111 n4 *01 *010011 *01100 *0100001 *0100100 n7 *01000 *01000000 *01000100*01000110 n8 *01111110 *011110010 *011111000 n15 *010001 *01000101 *010001110 n14 *011101110 *011111001 *01110010 W-Grid: Network example ICPS'06: IEEE International Conference on Pervasive Services 2006
W-Grid: Routing • Based on the concept of distance between coordinates d(*0011,*011) = 5 • Given a destination coordinate cd, at each step we choose the neighbor which mostly reduces the distance to cd • For each coordinate, a number of coordinates have the same distance, for example: d(*01,*111) = 5; d(*01,*00011) = 5; d(*01,*0100100) = 5 • In general, given a distance d, this number is: where Δ= d – (l – pref) ICPS'06: IEEE International Conference on Pervasive Services 2006
n12 *1100111 *101111 *1001101 *1100000 n3 *101100 *100100 *101000 *100111 n9 *100101 *11101 *11110001 *111111 *1001100 n11 *11110000 *100001 *1111010 *101010 n13 *1100011 *1100001 n2 *1100 *1100110 *101101 *11100 *11010 *1100010 *101110 n10 *100000 *111110 *101001 *1000100 *1000110 n5 *11011*0001 *01101 *0111000 n18 *1111011 *1000101 *01111010*10001110 n1 * *001 *110010 *0101 *0000 n20 *1111001*1010110*10001111 *0111010 n17 *0100000110 n6 *01110011 *0100101 *01111111 *01111000 *01111101 n16 *010000010 *010001111 *0100000111 n4 *01 *010011 *01100 *0100001 *0100100 n19 *01110110*011110011*01111011 *1010111 *011101111 n7 *01000 *01000000 *01000100*01000110 n8 *01111110 *011110010 *011111000 n15 *010001 *01000101 *010001110 n14 *011101110 *011111001 *01110010 W-Grid and GPSR: Routing example ICPS'06: IEEE International Conference on Pervasive Services 2006
W-Grid: Data management • Virtual coordinates implicitly generate a distributed database * n1 * *01 *11 n1 *0 n2 *1 *0 *1 n3 *00 n1 *01 n2 *10 n4 *11 Regions that have been split, they do not manage any data but they may be used for routing *00 *10 Regions that can manage data, they are also used for routing *010 ICPS'06: IEEE International Conference on Pervasive Services 2006
locator mittente destinatario W-Grid: Location service • Corresponds to a data management where data are devices virtual coordinates • Each device has a unique identifier which is used as key for each node search • When a device joins the network it insert in the database information about its virtual coordinates • We define as locator the device which is aware of coordinates of another device • A device that need to contact another device nID • Searches the database for key = ID • Once the locator has been reached the message will be routed to nID ICPS'06: IEEE International Conference on Pervasive Services 2006
Experimental results • Routing performances of W-Grid have been compared to GPSR routing algorithm ICPS'06: IEEE International Conference on Pervasive Services 2006
Future works In order to improve routing efficiency we are currently testing some new solutions: • Coordinate spaces replication • Generation of several coordinate spaces at the same time • Nodes learning • Introducing an efficient and scalable path learning strategy at nodes We are also starting theoretical analysis in order to evaluate the effects of nodes mobility ICPS'06: IEEE International Conference on Pervasive Services 2006
Thank you! ICPS'06: IEEE International Conference on Pervasive Services 2006