380 likes | 493 Views
Hop ID: A Virtual Coordinate-Based Routing for Sparse Mobile Ad Hoc Networks. BY: YAO ZHAO, YAN CHEN, BO LI, AND QIAN ZHANG PRESENTATION PREPARED BY: BABAN MAHMOOD. Organization: . Introduction Algorithm description Evaluation. Organization: . Introduction
E N D
Hop ID: A Virtual Coordinate-Based Routing for Sparse Mobile Ad Hoc Networks BY: YAO ZHAO, YAN CHEN, BO LI, AND QIAN ZHANG PRESENTATION PREPARED BY: BABAN MAHMOOD
Organization: • Introduction • Algorithm description • Evaluation
Organization: • Introduction • Algorithm description • Evaluation
Introduction • Geographic routing requires location information • It achieves excellent scalability • Does not rely on flooding • Limitations: • Dead end problem • Requires location device like GPS
Organization: • Introduction • Algorithm description • Evaluation
Algorithm description • Design new routing protocol to solve the dead end problem keeping efficiency even for sparse network • The algorithm utilizes a new virtual coordinates called Hop ID • A Hop ID is a multidimensional coordinates assigned based on node’s distance to landmark nodes. • Hop ID coordinates constructed base on network topology • The construction has no requirements on network density • Each node maintains a Hop ID • Each node uses a predefined hash function to hash its IP address to one of the landmarks (Location servers). • In greedy routing, a node forwards packets to a neighbor that is “nearest” to the destination in the Hop ID space.
Distance metric • Is the key to obtain scalability • So that minimal or no flooding is necessary • Hop ID uses proposed distance function • The Hop ID distance (vector) between two nodes is calculated from the relative hop distance to the set of landmarks
Hop ID description • Let Lhbe the hop distance between nodes N1 and N2 • Assume • Hop ID of N1 is (H1(1), H2(1),…, Hm(1) ) and • Hop ID of N2is (H1(2), H2(2),…, Hm(2) ) Then Max(|Hk(1) - Hk(2)|) <= Lh <= Min(|Hk(1)+ Hk(2)|) * The inequalities yield LOWER BOUND and an UPPER BOUND k k
Lower bound and Upper bound • Upper bound U is not good for greedy routing • Lower bound L is good but can easily get a tie when comparing its L with the L of its neighbors. • In fig 1, B,H, and D have a tie.
Power distance (Dp) • Is a modification to L to utilize more information • Dp has continuous values ,so it breaks the tie
Deviation from shortest path Where: N is the paths L is the lower bound Lh is the shortest path
Distance functions vs. shortest path Fig 2: Distance functions vs. shortest path. 3200 nodes used
Landmark Selection • Random Landmark Selection • Peripheral Landmark Selection
1- Random Landmark Selection • Using hash function to select landmarks randomly. • For m landmarks, generate m random IDs for landmark selectioncalled ( landmark IDs) • Unique node ID can be hashed from IP address • If node’s ID is the closest one to the landmark ID, it becomes a landmark
1- Random Landmark Selection (continued) • To prevent overhead, a coordinator node C is first selected based on node stability. • Building the shortest path tree. • C generates m random landmark IDs. • Floods CENTER packet including these m IDs. • Every node adds its upstream node ID before rebroadcasting. • Aggregate landmark candidates. • The leaf node sends a CANDIDATE packet to its upstream nodes • The upstream node collects all the CANDIDATE packets and finds the best one for each landmark ID. • Iteratively, the upstream node repots to its upstream and, at last, the coordinator C will get the best candidates of the whole network.
1- Random Landmark Selection (continued) • Inform landmarks. • Now, C sends m packets instead of flooding • Each non-leaf node N knows its sub-tree, so it knows the children nodes from which each of N’s candidates are recommended. • Build Hop ID. • Each landmark floods a LANDMARK packet with its landmark ID • On receiving LANDMARK packets, each node records its hop distance to the corresponding landmark to compose its Hop ID
2- Peripheral Landmark Selection • Simple modification of Random Landmark Selection. • Detect the perimeter of the network. • C floods a CENTER packet to the entire network. • Every node finds its distance and its neighbors hop distance to the C • If the node’s hop distance is bigger than its neighbors’, it becomes a perimeter node. • So this build shortest path tree rooted at C • Similar to Random Landmark Selection (Except) • The perimeter nodes can become landmarks.
Random or Peripheral Landmark Selection • Peripheral is more appealing as it requires less Landmarks • However, in high mobility, performance degrades. • Random seems to be more robust to mobility. • So, based on application: • Slow or no mobility applications like sensor net prefer Peripheral. • Otherwise, Random Selection is used.
Hop ID Adjustment • In mobile environment, node may move • Hop ID has to be updated • Periodic flooding (cost and scalability) • Proposed adjustment algorithm is by applying distance vector principles • Utilizes periodic HELLO messages • Slow convergence and count to infinity problem • Split horizon with poison reverse is used. • This makes convergence faster and helps in disappearing count to infinity problem
Hop ID Adjustment (Continued) • Assume N has n neighbors N1, N1, …, Nn and neighbor Ni’s Hop ID is (H1(i), H2(i), …, Hm(i)) • Then N’s new Hop ID is • Node N first calculates its new Hop ID (H1, H2, …, Hm) then broadcasts HELLO message.
Hop ID Adjustment (Continued) • Each node N stores the latest Hop ID sent to the location server. • After adjustment, if the (Hop ID distance between the N’s new Hop ID and latest Hop ID > t), then N sends update packet to its location server (landmark).
Landmark Management • Landmarks maintain Hop ID coordinates, so they are important nodes. • So, maintaining active landmarks is done through an algorithm: • Dealing with landmark failure or leaving. • The coordinator uses PING/PONG messages to query the landmarks • On leaving a landmark, the Coordinator uses initial landmark selection to select a new landmark. • Dealing with network partition. • Landmark HELLO messages contain timestamp • On receiving or sending HELLO messages, nodes record or include the latest timestamp of the landmark nodes. • If a node has not received a new update for a long time, then there is network partition. • New landmark can be selected as network initialized.
Hop ID Greedy Routing Algorithm • Similar to geographic routing • It uses different distance metric
Hop ID Greedy Routing Algorithm (continued) • Assumptions • Source knows destination’s node Hop ID and the Hop ID is included in each packet’s header • Each node know the Hop ID of its neighbors • Min(Dnd) is the minimal distance for a node R among node’s neighbors to the destination.
Hop ID Greedy Routing Algorithm (continued) • Using the distance function Dp: • Source or relay (S) calculates its distance to destination (Dsd) • S calculates Min(Dnd) for R • If Min(Dnd) < Dsdthen S forwards the data packet to R. Otherwise, S is a dead end and Greedy Routing stops.
Solution to The Dead End Problem • Landmark-Guided Routing Algorithm. • The Algorithm attempts to send packet toward closest landmark to the destination. • When a node E finds it’s a dead end, • It records its distance to destination (De) • Finds the nearest landmark to destination • Forwards the packet towards the landmark hop by hop letting the route entering detour mode
Solution to The Dead End Problem (Continued) • The detour process continues until: • The current node is closer to the destination than E • Returning to Greedy mode • Packet reaches guiding-landmark • Landmark tries to deliver it to destination. • Packet has been forwarded more than t hops before reaching the landmark • In this case Algorithm fails
Dead End Still exists !!! • The detour algorithm cannot completely resolve all dead ends • Expanding Ring flooding is used. • Floods to search some node an increases the flooding range by increasing TTL until the destination is reached.
Organization: • Introduction • Algorithm description • Evaluation
Evaluation • Pure Greedy Routing Algorithm is called HIR-G • Detour algorithm is called HIR-D • Expanded Ring is called HIR-E • Implemented geographic routing without location information GWL • Pure greedy geographic routing GFR
Experiment Design • Most scenarios include N (N from 200 to 5100) nodes. • 2D square area (C x C) • Density λ=π x N/(C x C) is average number neighbors of node. • For 3D λ=π x N/C3 • Random Selection used. • Simulations used • NS-2 which is slow if the network size is large (e.g., 3200) • Simple scalable simulator (their simulator)
Simulation results • Density • Number of nodes is 3200 • Density is from 2π to 3π
Simulation results • Scalability
Simulation results • Mobility
Summary • Overall routing algorithm is loop-free • Hop ID system has the following steps • Voluntary node floods and builds SPF • Landmark nodes are selected randomly • Each node obtains its Hop ID • Common greedy routing algorithm