Title: Self-Organizing Hierarchical Routing for Scalable Ad Hoc Networking
1Self-Organizing Hierarchical Routing for Scalable
Ad Hoc Networking
- David B. Johnson
- Department of Computer ScienceRice University
- dbj_at_cs.rice.edu
Monarch Project
2Introduction
- 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)
3Safari Hierarchy Self-Organization
- All nodes are equivalent no specialized nodes
assumed
4Safari Hierarchy Self-Organization
- Nodes self-elect to become a buoy
5Safari Hierarchy Self-Organization
- Buoy nodes send limited propagation beacon floods
6Safari Hierarchy Self-Organization
- Other nodes associate with a buoy to form cells
7Safari Hierarchy Self-Organization
- Buoys at one level self-elect to become buoy at
next higher level
8Safari Hierarchy Self-Organization
- Forming cells at each higher level too
9Simulation Example
10Safari Coordinates
- A nodes coordinates associated cell id at each
hierarchy level
11Safari 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
12Proactive 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, not through
buoys!
13Routing Example
- Source node S is sending a packet to destination
node D
S
D
14Routing Example
- Follow beacon path toward level 3 cell in which D
is located
S
D
15Routing Example
- Follow beacon path toward level 2 cell in which D
is located
S
D
16Routing Example
- Follow beacon path toward level 1 cell in which D
is located
S
D
17Reactive 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
18Routing Example
- On-demand DSR routing to destination node D
S
D
19Reactive 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 altitudewith hops awayfrom buoy
A node hasmoved awayfrom buoy
Buoy node
20Simulation 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
1000?1000 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
21PDR vs. Number of Nodes
22PDR vs. Percentage of Mobile Nodes
(1000 nodes total)
23Overhead vs. Number of Nodes
24Overhead vs. Percentage of Mobile Nodes
(1000 nodes total)
25Conclusion
- 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