Title: Geometry Aided Routing Algorithm GARA for Mobile Adhoc Networks
1Geometry Aided Routing Algorithm (GARA)for
Mobile Ad-hoc Networks
- Karthik Haridoss
- Department of Computer Science
- University of Texas, Dallas
2Overview
- Introduction to MANETS
- Proposed GARA's outline
- Eppstein's KSP algorithm
- Modified KSP algorithm
- Proposed probability model
- Implementation details Results
- Conclusion
3Introduction to MANETS
- Mobile Ad-hoc Network
- No fixed infrastructure
- Nodes may move
- Anywhere, Anyplace, Anyone
- All nodes transmit over a range and move at a
speed - Efficient usage of Battery power bandwidth
needed - Applications - Importance Need
4An example Scenario
C
B
A
Graph A - B - C
5Routing in MANETS
6Where we are ?
- Introduction to MANETS
- Proposed GARA's Outline
- Eppstein's KSP Algorithm
- Modified KSP Algorithm
- Proposed Probability Model
- Implementation Details Results
- Conclusion
7Outline of GARA
- Location Awareness
- Each node transmits its GPS data proportional to
its speed - GPS data contains
- GPS data is flooded efficiently across the
network - Each node stores the GPS data of other nodes in
its cache
ID
Lon
Lat
Tx
Vel
Time
8Outline (Cont.)
- A snapshot of the network topology can be
constructed at the source node
A
B
C
- So a link exists between two nodes (A,B) iff
- Dist (A,B) lt min (tx(A),tx(B))
9Outline (Cont.)
- The constructed graph is undirected unweighted
- The source Node computes K-Shortest Paths to the
destination using the Proposed KSP Algorithm - Then it computes the probability of each path to
exist using probability model proposed - Routes through the most probable path, which is
more stable.
10Characteristics of GARA
- Location based routing
- Flat routing - No hierarchy
- Location service - All to All
- Explicit routing
- Distributed control
- Multiple routes
- Routes on more stable path
- Improves reliability
11Where we are ?
- Introduction to MANETS
- Proposed GARA's Outline
- Eppstein's KSP Algorithm
- Modified KSP Algorithm
- Proposed Probability Model
- Implementation Details Results
- Conclusion
12Eppstein's KSP Algorithm
- K - shortest paths to reach the destination
- Eppstein's KSP - Directed and Weighted Graph
- Not simple
- Running Time O( m n log n k ) Linear in
number of paths - Outline Finds shortest path from source to any
other node, then adds that to the shortest path
from that node to the destination
13Eppstein's KSP Algorithm
- Reversed Dijkstra's shortest path algorithm
Shortest Path Tree
Example Graph
F
G
F
G
2
B
D
A
B
D
A
C
C
3
2
2
E
E
14Shortest Path Tree
Example Graph
F
G
(1)
(2)
F
G
2
A
C
D
B
(3)
(1)
(0)
(2)
A
B
D
C
3
3
2
E
(4)
E
Deviations
F
G
Path 1 A -B-C-D (Cost 3) Path 2 A-B-G-D (Cost
4) Path 3 A-B-F-G-D (Cost 4) Path 4 A-E-C-D
(Cost 6) Path 5 A-B-E-C-D (cost 6)
(1)
(1)
B
A
C
D
(3)
(3)
E
15Hg(B) 1 (B-G) 1 (B-F) 3 (B-E)
Hg(A) 1 (B-G) 3 (A-E)
1 (B-F) 3 (B-E)
F
G
(1)
(2)
(1)
(1)
A
C
D
B
(3)
(1)
(0)
(2)
(3)
3
(3)
E
(4)
Hout(B) 1 (B-G) 1 (B-F) 3 (B-E)
Hout(A) 3 (A-E)
Path 1 A-B-C-D (Cost 3) Path 2 A-B-G-D
(Cost 4) Path 3 A-B-F-G-D (Cost 4) Path 4
A-E-C-D (Cost 6) Path 5 A-B-E-C-D
(cost 6)
16Where we are ?
- Introduction to MANETS
- Proposed GARA's Outline
- Eppstein's KSP Algorithm
- Modified KSP Algorithm
- Proposed Probability Model
- Implementation Details Results
- Conclusion
17Modified Eppstein's Algorithm
- Need - graph is undirected unweighted
- We can use BFS instead of Dijkstra
- BFS - running time O(V E)
- Properties of Undirected graph
- dv du a, dv -gt 0,1,2 a -gt -1,0,1,
- du - weight of u and u,v - neighbors
- At a time only three lists exists
- No need to have Heaps
- Each delete operation O(log n)
18Example Graph
Shortest Path Tree
F
G
F
G
(1)
(2)
B
D
A
C
A
C
D
B
(3)
(1)
(0)
(2)
E
(2)
E
Deviations
F
G
(1)
(2)
F
G
(1/1)
(1/1)
(0/2)
(0/2)
A
C
D
B
(3)
(1)
(0)
(2)
B
D
A
C
(1/1)
(1/1)
(0/2)
(0/2)
E
E
(2)
19F
G
(1)
(2)
Only three lists are maintained
(1/1)
(0/2)
Min (0)
0 (A-E) , 0 (B-G)
A
C
D
B
(3)
(1)
(2)
(0)
Mid (1)
1 (B-F), 1 (B-E),
1(E-B) (PA-E)
(1/1)
(0/2)
Max (2)
2 (G-B) (P B-G)
E
(2)
Deviations of each node
3 Paths (i.e. k3) Path1 A-B-C-D (Cost 3)
B
1 (B-F), 0 (B-G), 1 (B-E)
A
0 (A-E)
Path2 A-E-C-D (Cost 3)
E
1 (E-B), 2 (E-A)
Path3 A-B-G-D (Cost 3)
F
1 (F-B)
2 (G-B)
G
20Running Time Graph
- Eppstein's running time O(m n log n k)
- Modified Algo running time O(m n k)
- Improvement by O(log n)
- Due to removal of heaps
- Each removal in heaps, results in O(log n)
21Running Time graph
22Where we are ?
- Introduction to MANETS
- Proposed GARA's Outline
- Eppstein's KSP Algorithm
- Modified KSP Algorithm
- Proposed Probability Model
- Implementation Details Results
- Conclusion
23Node Characteristics
- Each node's position is seen relative to one node
- Each node has two circles
- Transmission Circle
- Movement Circle
tx
mv
A
A
mv(A) speed(A) (current time - GPS time(A)
24Link Characteristics
- A Path is made of one or more links
- Dependence of existence of links
- Existence of a link is not independent
- Therefore, a links existence is dependent on the
links being shared by its end points
A B C D E
- However here its just dependent only on the
previous link
25Probability Model
26Computing Individual Probability
tx(A)
A
B
mv(A) mv (B)
27Computing Conditional Probability
tx(B)
mv(C)
C
A
B
B
28Unobserved Case
C
B
A
B
29Computing Individual Probability
min(tx(A),tx(B))
A
B
mv(A) mv (B)
30Computing Conditional Probability
min(tx(A),tx(B))
tx(C)
mv(A) mv(C)
C
C
A
B
mv(A) mv(B)
31Where we are ?
- Introduction to MANETS
- Proposed GARA's Outline
- Eppstein's KSP Algorithm
- Modified KSP Algorithm
- Proposed Probability Model
- Implementation Details Results
- Conclusion
32Implementation
- Implemented Eppstein's KSP
- Implemented Modified KSP - Using STL
- Running Time Comparison
- Probability Model
- Nodes
- Transmission Range - 250 m/s
- Speed - 30 m/s
- Three circle intersection
- Using Monte Carlo method
33Results
- Details
- Number of Nodes 100
- Area 100 x 100 m
34Results (Cont)
35Where we are ?
- Introduction to MANETS
- Proposed GARA's Outline
- Eppstein's KSP Algorithm
- Modified KSP Algorithm
- Proposed Probability Model
- Implementation Details Results
- Conclusion
36Future Work
- Implementing the protocol in a Network Simulator
and analyzing the performance - No of times the computed path failed
- Path re-computation rate with mobility rate
- Loss with mobility rate
- Varying speed transmission
- Providing the probability into the network and
designing a shortest path Algorithm for that.