Download presentation
Presentation is loading. Please wait.
Published byNiina Salminen Modified over 6 years ago
1
Self-Organizing Hierarchical Routing for Scalable Ad Hoc Networking
At Ad/Hoc Networks, Elsevier, 2007 Or Computer Science Technical Report Rice University, 2004 Slides by Ece Gelal and M. Faloutsos
2
Problem Use of wireless devices is rapidly increasing
Decentralized, self organizing systems Current ad hoc routing protocols are limited in scalability Mobility increases routing overhead Success of the protocols is challenged in large networks Need for routing protocols that scale
3
Contribution Self-organizing hierarchical routing
Proximity-based multi-level hierarchy of cells Address = concatenation of cluster ids Hybrid Routing using this hierarchy Proactive hierarchical, among cells On-demand, within cell Mapping of unique IDs to hierarchical addresses using a distributed hash table Nodes make individual decisions to provide and preserve the hierarchy
4
The Main Idea Level Each node belongs to a cluster of level L, or is clusterhead (Drum) for that level Drums broadcast their existence with beacons Nodes hear beacons and Join cluster Take over drum role 3 2 1
5
DART versus SAFARI What is common? Difference from DART
Hierarchical addressing Map IDs to addresses via a hash table Difference from DART Explicit group names (instead of prefixes) Reactive Routing within same level-1 cell
6
Safari Overview: Hierarchy
Nodes organized in multi-level cells Level k cells grouped into Level k+1 cells Cells are identified by drums (= head) Automatic self-selected Drums are the backbone of the hierarchy Nodes choose a 1-level higher drum The one closest in hops
7
Safari Overview: Routing
Self-organize into clusters: Drums transmit periodic beacons Nodes keep DHTs (distr. hash tables) Look up ID of node to find its address Route towards the drum of the cell of dest. Up: Follow the reverse path of most recent beacon Down: Seek a lower-level cell s.t. dest. is its member Within: Any node in cell of dest. initiates on-demand route discovery
8
Beaconing Protocol Beacons help establish the drums
Drums broadcast beacons periodically: Seq #, coordinate, beacon level, hop count Forwarded by all nodes within Dn hops D_n increases with n: higher level, larger cell Higher level beacons w/ lower freq. Assumes:Topology changes less frequent at higher level A beacon of level n transmits beacon of level n in every tn seconds
9
Clusterhead and hierarchy
k-level clusterheads “rule” a D_k radius area At k+1-level we have fewer clusterheads D_k D_k D_k+1
10
Beacons: Rules of Hierarchy
DART = Dynamic Address Routing Table A node at level n, must have a leader at level n+1 There is no other n-level node near by There is a reason why you are at level n At least two clusters near you at level n-1
11
Drum Level Selection Algorithm runs at each node, after each change in DART New entry or timer expiry Assure DART satisfies certain conditions If violated, change the node level appropriately Aids efficiency under dynamic changes Algorithm runs after each change in DART
12
Membership Algorithm Invoked after drum level selection
Nodes choose a unique drum in 1-higher level (closest drum) Whose DART entry has not expired Then each node is assigned a coordinate, based on its drum Consider Di is a drum, L is a leaf node COORD(Di)=COORD(PARENT(Di))RAND(b) COORD(L)= COORD(PARENT(L)) Coordinate is vital in routing
13
The Routing Table: DART
Drum Ad Hoc Routing Table (DART) Nodes store beacons they forwarded Store: beacon contents, time_rcvd, Drum_ID A timer starts with each new entry When expired,I rethink my membership drum level selection algorithm and membership algorithm invoked
14
Addressing -- Implications
COORD(Di)=COORD(PARENT(Di))Rand(b) if b then Pr{2 nodes get same coordinate} COORD(L)= COORD(PARENT(L)) All leafs in a cell have the same coordinate Drum IDs at each level create a hierarchical address (coordinate) for each node that is a member. Each node associates itself with the coordinate of its drum.
15
Proposed Routing Protocol
1. Proactive Inter-Cell Routing Deliver pkts from src to level-1 cell of dest Drums broadcast info to All its nodes All nodes of its sibling cells (same parent at n+1) By following the reverse path of beacons 2. On-demand (Reactive) Intra-Cell Routing Deliver pkts to final dest. within level-1 cell Via any on-demand routing protocol
16
Proactive Inter-Cell Routing
Unlike conventional clustering Clusterheads suffer bottleneck Drums need not be along the path at all Extract coordinate from pkt, Lookup DART Longest prefix matching between two coordinates Get the sequence # of the longest prefix match Compare with sequence # in pkt header If not worse, replace entry in pkt with DART info
17
Reactive Intra-Cell Routing
Each node, upon receiving a pkt, checks if the dest is in same level-1 cell as itself Coordinates are the same If coordinates match, use DSR within cell If prefix matching = n, then use DSR, intra-cell routing. COORDINATE S ARE THE SAME!
18
Example Safari Routing overview
19
Address Resolution Senders wish to send pkts to an ID
But protocol forwards to a coordinate Map nodeID to its current coordinate Implemented like DHTs Each node inserts (ID,coordinate) pair at a set of k nodes Node reinserts whenever its coordinate changes Any node can lookup the coordinate by hashing the ID No additional maintenance overhead
20
Address Resolution - Locality?
We don’t want to look up a coordinate in LA from a node in Japan! Store hash not only in random k nodes; but also in closest k nodes Insert, with i least significant coordinate components replaced by random hash value When coordinate changes in i least significant coordinates, reinsert at a subset of nodes only When A looks up B’s coordinates Iteratively query all nodes at greater distances Lookup of a nearby node does not necessitate communication with a distant node
21
Performance Evaluation
Dn= 3 hops Transmission range = 250 m. Topology: fixed density: 50 nodes in 1000m x1000m area Mobility: random waypoint
22
Scalability PDR versus network size
PDR: fraction of application layer packets successfully rcvd PDR versus network size
23
Overhead Overhead asymptotically approaches a constant value.
Overhead due to drum floods Overhead asymptotically approaches a constant value.
24
Path Lengths Avg # of hops btwn a random src and a random dest.
25
Mobility 1000 nodes. 95% PDR with 100% mobile nodes.
Total overhead almost same as in the static case.
26
DHT Scalability Avg. # of hops to LOOK UP a coordinate in DHT.
Avg. # of hops for all pkts to STORE a coordinate in DHT. Avg. # of hops to LOOK UP a coordinate in DHT.
27
Conclusions Proposed routing algorithm scales well.
Periodic beacons are an overhead. A lot of patch-like details create complication Beacon period Beacon forwarding Drum level selection: complicated Coordinate caching in DHTs Choose a random number, Listen for collision, if there is collision choose another random number
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.