250 likes | 354 Views
Self-Organizing Hierarchical Routing for Scalable Ad Hoc Networking. David B. Johnson Department of Computer Science Rice University dbj@cs.rice.edu. Monarch Project. Introduction. Safari project goals: Self-organizing, adaptive network hierarchy
E N D
Self-Organizing Hierarchical Routing for Scalable Ad Hoc Networking David B. Johnson Department of Computer ScienceRice University dbj@cs.rice.edu Monarch Project
Introduction Safari project goals: • Self-organizing, adaptive network hierarchy • Scalable ad hoc network routing (10s of thousands of nodes) • Self-organizing higher layer network services and applications • Integrated with Internet infrastructure where it exists Safari leverages and tightly integrates two areas of research: • Ad hoc networking • Peer-to-peer networking Builds an adaptive, proximity-based hierarchy of cells and leverages this for scalable routing and higher layer services Funded by NSF Special Projects in Networking Research (January 2004)
Safari Hierarchy Self-Organization All nodes are equivalent – no specialized nodes assumed:
Safari Hierarchy Self-Organization Nodes self-elect to become a buoy:
Safari Hierarchy Self-Organization Buoy nodes send limited propagation beacon floods:
Safari Hierarchy Self-Organization Other nodes associate with a buoy to form cells:
Safari Hierarchy Self-Organization Buoys at one level self-elect to become buoy at next higher level:
Safari Hierarchy Self-Organization Forming cells at each higher level too:
B C b A.a a A.b e d A c A.d A.e A.c Safari Coordinates A node’s coordinates = associated cell id at each hierarchy level
Safari Routing Overview Destination node coordinates: • Stored and looked up in Distributed Hash Table (DHT) using embedded peer-to-peer system Hybrid routing protocol components: • Route to destination cell following beacons (proactive routing) • Incremental local repair in this path (reactive routing) • Route to destination node within final cell (reactive routing) Routing table at a node: • Remembers information from beacons received: • Coordinates of buoy sending beacon • Previous hop node from which beacon received • Hop count back to the buoy • Sequence number of most recent beacon from that buoy
Proactive Inter-cell Routing Range of beacons from a buoy node: • Nodes in the cell associated with that buoy • Nodes a few hops away, giving them a chance to join that cell • Nodes in the containing cell one level up in the hierarchy Routing table lookup algorithm: • Nodes outside the cell hear the beacons: • Reasons described above • Wireless propagation allows nearby nodes to hear too • Longest common prefix matching (similar to Internet!): • Compare your own coordinates to each entry in routing table • As soon as packet comes to node with more detailed table entry, packet starts following lower in routing hierarchy Packets are routed toward buoys, notthrough buoys!
Routing Example Source node S is sending a packet to destination node D: S D
Routing Example Follow beacon path toward level 3 cell in which D is located: S D
Routing Example Follow beacon path toward level 2 cell in which D is located: S D
Routing Example Follow beacon path toward level 1 cell in which D is located: S D
Reactive Intra-cell Routing Dynamic Source Routing protocol (DSR): • Discovers routes only as needed, on demand (Route Discovery) • Detects when links being used for routing are broken, on demand only as they are used (Route Maintenance) • Very low overhead, scalable to mobility and traffic needs • Zero overhead until new route is needed Using DSR in Safari routing: • DSR originally designed for small or medium sized networks • Safari intended to scale to much larger sizes • Safari uses DSR only within destination fundamental cell • Size of fundamental cells created by Safari balance two things: • Small enough for very easy efficient reactive routing • Large enough to minimize when nodes move to new cells
Routing Example On-demand DSR routing to destination node D: S D
Reactive Inter-cell Route Repair Beacons are sent only periodically: • Long interval between beacons important for low overhead • The higher the level in hierarchy, the less frequent the beacon • Following beacon reverse path may fail if nodes have moved Safari local route repair in the beacon paths: • Limited-hop on-demandRoute Discovery • Flood flows “downhill” withlimited “uphill” allowed • “Altitude” is prefix lengthmatched, sequence #, hop count • Result reestablishes new pathas if original beacon path Increasing “altitude”with hops awayfrom buoy A node hasmoved awayfrom buoy Buoy node
Simulation Evaluation • Simulated using ns-2, includes detailed physical model • IEEE 802.11 at 2 Mbps, nominal range 250 m • Studied scale from 50 to 1000 nodes: • Randomly distributed in space • Density maintained equivalent to 50 nodes in 10001000 m • Studied percentage of nodes being mobile from 0% to 100% • Moving with Random Waypoint model, average 5 m/s • Data traffic is Constant Bit Rate (CBR): • Flows with randomly chosen source and destination • 4 packets/second, 64 bytes/packet • Metrics shown: • Packet Delivery Ratio: percentage of packets delivered • Overhead: individual transmissions of routing packets
PDR vs. Percentage of Mobile Nodes (1000 nodes total)
Overhead vs. Percentage of Mobile Nodes (1000 nodes total)
Conclusion Safari is highly scalable and provides a basis for services: • Forms an adaptive, proximity-based hierarchy of cells • PDR and routing overhead change little with scale or mobility • Performance studied through both simulation and analysis Ongoing and future work: • Further optimization and evaluation of beaconing, cell membership, routing, local repair • Interconnection to traditional Internet infrastructure • Higher layer services exploiting the hierarchy and P2P • Testbed and experimentation