250 likes | 361 Vues
The Safari project focuses on self-organizing, adaptive networks that can scale to tens of thousands of nodes. It integrates ad hoc and peer-to-peer networking to build a proximity-based hierarchy for efficient routing and higher-level network services. With nodes autonomously forming cells and electing buoy nodes, the project utilizes proactive and reactive routing techniques including Distributed Hash Tables (DHT) for destination lookups and Dynamic Source Routing (DSR) for on-demand route discovery. The research aims to improve routing protocols' scalability to support a high number of mobile nodes in diverse traffic conditions.
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