Title: Ad hoc On-demand Multipath Distance Vector (AOMDV) Routing
1Ad hoc On-demand Multipath Distance Vector
(AOMDV) Routing
- Mahesh Marina Samir Das
- University of Cincinnati
2On-demand Multipath Routing
- In each route discovery, find multiple routes
between source and destination. - Use alternate routes on a route failure.
- New route discovery needed only when all routes
fail. - Fewer number of route discoveries.
- Reduction in delay and routing overhead.
3Main Question
- In the AODV framework, how to compute multiple
paths between source and destination during route
discovery? - With minimal additional overhead.
4Basic AODV Route Discovery
RREQ (broadcast)
A
E
D
S
B
C
- When a route is needed, source floods a route
request for the destination.
5Basic AODV Route Discovery
RREQ (broadcast)
Reverse Path
A
E
D
S
B
C
- Reverse path is formed when a node hears a
non-duplicate route request. - Each node forwards the request at most once (pure
flooding).
6Basic AODV Route Discovery
RREQ (broadcast)
Reverse Path
A
E
D
S
B
C
- Reverse path is formed when a node hears a
non-duplicate route request. - Each node forwards the request at most once (pure
flooding).
7Basic AODV Route Discovery
Reverse Path
A
E
D
S
B
C
- Observation Duplicate RREQ copies completely
ignored. Therefore, potentially useful alternate
reverse path info lost.
8Alternate Reverse Paths A Naïve Approach
Reverse Path
A
E
D
S
B
C
- Form reverse paths using all duplicate RREQ
copies. - Causes routing loops.
9Alternate Reverse Paths A Naïve Approach
Reverse Path
A
E
D
S
B
C
- Question how to form alternate loop-free
reverse paths using some duplicate RREQ copies?
Which some?
10Loop Freedom
- Key idea Impose ordering among nodes in every
path. - Notion of upstream/downstream nodes.
i
j
d
j is downstream to i w.r.t d
- General loop-freedom rule Never form a route at
a downstream node via an upstream node.
11AODV Loop Freedom
- Destination sequence numbers to order routing
events in time. - Ordering among ltseqno, hop countgt tuples at
different nodes on a path. - higher seqno has precedence
- if same seqno, lower hop count has precedence
- Cant we use the same idea in AOMDV?
- No. Because hop count rule restricts us to a
single path. - But can use a similar idea though!
12AOMDV Loop Freedom
- Sequence number rule Keep only routes for the
highest dest seqno (like in AODV). - For the same dest seqno,
- Route advertisement rule Keep multiple routes
but always advertise only one of them to others.
Hop count of that path is the advertised hop
count - Which one? Longest path at the time of first
advertisement. - Why? Maximize chances of forming more paths.
- Route acceptance rule Accept a route from a
neighbor only if it has a smaller or equal
advertised hop count. Break ties using node ids. - No need for coordination with upstream nodes.
13AOMDV Loop Freedom
- Sequence number rule Keep only routes for the
highest dest seqno (like in AODV). - For the same dest seqno,
- Route advertisement rule Keep multiple routes
but always advertise only one of them to others.
Hop count of that path is the advertised hop
count - Which one? Longest path at the time of first
advertisement. - Why? Maximize chances of forming more paths.
- Route acceptance rule Accept a route from a
neighbor only if it has a smaller or equal
advertised hop count. Break ties using node ids. - No need for coordination with upstream nodes.
14AOMDV Loop Freedom
- Sequence number rule Keep only routes for the
highest dest seqno (like in AODV). - For the same dest seqno,
- Route advertisement rule Keep multiple routes
but always advertise only one of them to others.
Hop count of that path is the advertised hop
count - Which one? Longest path at the time of first
advertisement. - Why? Maximize chances of forming more paths.
- Route acceptance rule Accept a route from a
neighbor only if it has a smaller or equal
advertised hop count. Break ties using node ids. - No need for coordination with upstream nodes.
15AOMDV Routing Table Entry
Dest
Seqno
Advertised hop count
Hop count 1
Next hop 1
Hop count 2
Next hop 2
16AOMDV Loop Freedom
- Sequence number rule Keep only routes for the
highest dest seqno (like in AODV). - For the same dest seqno,
- Route advertisement rule Keep multiple routes
but always advertise only one of them to others.
Hop count of that path is the advertised hop
count - Which one? Longest path at the time of first
advertisement. - Why? Maximize chances of forming more paths.
- Route acceptance rule Accept a route from a
neighbor only if it has a smaller or equal
advertised hop count. Break ties using node ids. - No need for coordination with upstream nodes.
17Multiple Loop-free Reverse Paths
?
?
RREQ (broadcast)
A
E
D
S
?
0
B
C
?
?
- Suppose RREQ from S includes highest seqno for
itself.
18Multiple Loop-free Reverse Paths
?
1
RREQ (broadcast)
Reverse Path
A
E
D
S
?
0
B
C
1
?
19Multiple Loop-free Reverse Paths
2
1
RREQ (broadcast)
Reverse Path
A
E
D
S
?
0
B
C
1
2
20Multiple Loop-free Reverse Paths
2
1
Reverse Path
A
E
D
S
?
0
B
C
1
2
21Multiple Loop-free Forward Paths
1
2
Forward Path
A
E
D
S
0
?
B
C
2
1
- Another modification to basic AODV route
discovery multiple replies from destination.
22How Many Paths?
- Too many paths are not useful.
- Overhead proportional to paths.
- Diminishing utility with larger paths.
Analytical study in Nasipuri-Das IC3N-99, ACM
MONET J. 01 - Solution Disjoint paths.
- Automatically fewer paths.
- Paths fail independently. Better utility.
- Node or link disjoint?
- Too few node disjoint paths in dense networks
using flooding.
23Finding Link-disjoint Paths
Examples
How?
- Maintain last hop info in routing table.
- Ensure that next hops and last hops before
destination are unique. - This requires route request and replies to carry
first hop info.
D
S
D
S
D
S
24Performance Evaluation
- Ns-2 with CMU wireless extensions.
- 100 nodes in a 1000m x 1000m field.
- Random way point mobility model
- 25 CBR/UDP sources each sending 512 byte packets
_at_ 2 packets/s.
25Route discovery frequency/Average delay
26Packet delivery fraction/Routing load
27Summary
- AOMDV - a multipath extension to AODV
- multiple loop-free and link-disjoint paths.
- AOMDV performance relative to AODV
- more than factor of two improvement in delay.
- about 25 reduction in routing load.