Title: Routing Protocols for Ad Hoc Mobile Wireless Network
1Routing Protocols for Ad Hoc Mobile Wireless
Network
2Outline
- Review of routing algorithm for Internet IP
- Distance-vector
- Link-state
- Ad hoc protocol routing requirements
- Categorization of ad-hoc routing protocols
- Ad hoc protocols
- Destination-sequenced Distance-vector (DSDV)
- Ad-hoc On-demand Distance Vector (AODV)
- Dynamic Source Routing (DSR)
3Distance-Vector Routing Algorithm
- Distributed Bellman-Ford
- Each node constructs a one-dimensional array (a
vector) containing the distance(costs) to all
other nodes and next hop id - Routers exchange their routing tables with
immediate neighbors - Information includes the distance and next hop id
- Typical exchange periods (30s-several minutes)
4Distance-vector Routing Example
Initial routing table at A
Final routing table at A
5Slow convergence
B
A
C
E
D
G
F
- Convergence-The process of getting consistent
routing information to all the nodes - A loses contact with E
- A doesnt know if there is another path to E
- In a table exchange it finds B has a route to E
with distance 2 - A advertises that it has route to E with distance
3 - B advertises that it has route to E with distance
4 to A and C - Cycle repeats-count to infinity problem
- Routing tables do not stabilize-slow convergence
6Slow Convergence Solution
- Split Horizon-Dont send those routes it learned
from each neighbor back to that neighbor. - Poison Reverse-Advertise routes with infinite
distance - Hold down-When a major change occurs advertise
the change quickly,but dont accept the new
routes for a period of time
7Routing Information Protocol(RIP)
- A quite popular routing protocol built on the
distance-vector algorithm
RIP packet format
Table from Larry L. Peterson etc, Computer
Networks
8Link-State Routing Algorithm
- Routers broadcast their neighbor connections to
all routers in the network - Information mainly connectivity and cost of the
link to each neighbor - Every node has a complete map of the network.
- Dijkstra's Shortest Path Algorithm can be used to
select the best route to the destination. - No slow convergence problems.
- Somewhat larger capacity requirement.
9Link-State Routing Example
B
5
3
C
10
11
2
D
Link State Database in router D
10Dijkstras Algorithm as Done by D
(0)
2. Place C in path, examine Cs LSP.Better path
to B found
1. Place D in path, examine Ds LSPs (Link State
Packets)
11Dijkstras Algorithm as Done by D(cont.)
(0)
(2)
(10)
4. Place A in path,examine As LSP. No nodes
left.Terminate.
3. Place B in path,examine Bs LSP. Better Path
to A found
12Link-State Routing Algorithm Summary
- Nice properties
- Stabilize quickly, generate not much traffic
- Loop free routing
- Respond rapidly to topology changes or node
failures - Downsides
- Higher memory requirement--the amount of
information stored at each node can be quite
large - Scalability problem
13Open Shortest Path First Protocol(OSPF)
- Most widely used, based on link-state routing
algorithm. Improvements added - Introduces hierarchy into routing by allowing
networks partitioned into areas - Authentication of routing messages
- Allows load balancing
14Ad Hoc Protocol Routing Requirements
- Simple, reliable and efficient
- Distributed but lightweight in nature
- Quickly adapts to changes in topology
- Protocol reaction to topology changes should
result in minimal control overhead - Bandwidth efficient
- Mobility management involving user location and
hand-off management
15Categorization of Ad-Hoc Routing Protocols
Figure from Elizabeth M. Royer, C-K Toh, A
Review of Current Routing Protocols for Ad-Hoc
Mobile Wireless Networks.
16Table Driven Based Routing (Proactive)
- Maintain table of all active links in network
- Calculate the shortest path from table
- Update table whenever nodes move
- Immediate tell if node is reachable
- Data can be sent immediately
- Very high overheads
17On-demand Routing(Reactive)
- Find routes as needed
- Cache information from other nodes requests
- No static overhead
- Slow start before transmitting data
- AODV, DSR
18Representative Ad Hoc Routing Protocols
- Destination-Sequenced Distance-Vector Routing
(DSDV)- Proactive(table driven), next-hop
routing, distance-vector - Ad hoc On-demand Distance-Vector Routing
(AODV)-reactive,next hop routing,distance-vector - Dynamic Source Routing (DSR)-reactive (on
demand),source routing,link state
19DSDV RoutingCharles Perkins Pravin Bhagwat
- Current in use on the MIT GRID projects
- Route advertisements
- Route table entry structure
- Responding to topology changes
- Route selection criteria
- Summary
20Route Advertisements in DSDV
- Each mobile node advertise its own route tables
to its current neighbors - Routing tables update periodically to adapt the
dynamic change and maintain table consistency.
21Route Table Entry Structure in DSDV
- When advertisement, each mobile node contain its
new sequence number and the following information
for each new route - The destinations address
- The number of costs (hops) required to reach the
destination - The sequence number of the information
received,originally stamped by the destination.
22Example of Advertised Table in DSDV
MHi -address for the mobile node, MH4 is the node
advertising the route table update
Table from Charles E.Perkins, AD HOC Networking
23Responding to Topology Changes in DSDV
- Two types of packets defined for route updates
- full dump packets
- Carry all available routing information
- Size of multiple network protocol data units
(NPDUs) - Transmitted infrequently during period of
occasional movement - incremental packets
- Carry only information changed since last full
dump - Size of a NPDU
- Transmitted more frequently
- Additional table maintained to store the data
from the incremental packets
24Route selection criteria
- Routes are preferred if the sequence numbers are
newer - If the sequence numbers are the same, the one
with better metric is preferred - Keep track of the settling time of routes-the
weighted average time that routes to a
destination will fluctuate before the route with
best metric is received (Why?)
25Route Settling Time and Solution
- Problem
- A initiated a route update with a new sequence
number - Update from B arrives D 10 s before update from C
- Metric of update from C is better (less hops)
- Solution
- delay the broadcast of a routing by the length of
the settling time. - ExceptionWhen broken link is found, broadcast
immediately
26Summary of DSDV Routing
- Essentially a modification to Bellman-Ford
routing algorithm - Using sequence number to guarantee loop-free
paths - Relies on periodic exchange of routing
information. - Inefficient due to periodic update transmissions
even no changes in topology - Overhead grows as O(n2) , limiting scalability
27AODV Properties
- Route discovery as needed and routes maintained
as necessary - Guarantee loop free through the use of sequence
number - Able to provide unicast, multicast
- Currently only use the symmetric links
- Nodes maintain only next-hop routing information
28Route Table Information in AODV
- The destination address
- The next hop IP address
- The destination sequence number
- A list of precursor nodes to reach the
destination(for the purpose of route maintenance
if link breaks) - A lifetime for each route(expire the unused route)
29Route Discovery in AODV
- Source Node
- Initiate RREQ, packet contains
- Source node IP address and current sequence
- Destination IP address and last known sequence
- A broadcast ID
- Set a timer to wait for reply
30Route Discovery in AODV
- Intermediate nodes
- Check the unique identifier (Source IP address
broadcast ID)of the RREQ - If already seen, discards the packet
- If not,
- Set up a reverse route for the source node,
associated with a lifetime - Increase the RREQs hop count
- Broadcast the RREQ to its neighbors
31Route Discovery in AODV
- Node responds to the RREQ (not necessary
destination node) - Must have an unexpired entry for destination
- The sequence associated gt the sequence
indicated in the RREQ - Unicasts a RREP back to the source, using the
node from which it received the RREQ as the next
hop
32Route Discovery in AODV
- C responds to the RREQ with RREP, which includes
- Its record of the destinations sequence
- The hop count from C to D
- The lifetime of the route from C to D
- C unicasts the RREP to source node through A
33Forward Path Setup
- A receives RREP, sets up a forward path entry to
D in its route table, includes - IP address of D, IP address of the neighbor this
RREP received (C) - Its hop count to D
- The associated life time as contained in RREP
34Expanding Ring Search in AODV
- To reduce the impact of flooding
- Broadcast a RREQ with low time to live (TTL)
- If no response received, re-transmit request with
increased TTL - Fixed values for TTL start, increment and
threshold - Beyond threshold, the RREQ is broadcast across
the entire network up to rreq-retries times
35Route Maintenance in AODV
- Route maintained as long as needed
- Source nodes moves during an active session,
reinitiate route discovery - Destination or intermediate node moves, Route
Error(RERR) message sent
36Route Maintenance in AODV
3
1
3
S
2
D
4
37Summary of AODV Routing
- On demand, distance-vector routing protocol for
highly mobile wireless nodes - Support both unicast and multicast
- Good chance to scale to large node population
- (Reported results for
- AODV node population as great as 10,000 nodes
- Others of 100 to 200 nodes)
38Dynamic Source Routing Dave Johnson
- Internet drafts available on MANET webpage
- Reactive (on demand)
- Source routing
- Based on link-state routing algorithm
39Route Discovery in DSR
- Sender floods RREQ through the network
- Nodes forward RREQs after appending their names
- Destination node receives RREQ and unicasts a
RREP back to sender node
40Route Discovery in DSR
Represents node that has received RREQ originated
from S to D
RREQ includes the source IP address, the
destination IP, a unique request ID
41Route Discovery in DSR
Y
Broadcast transmission
Z
S
S
E
F
B
C
M
L
J
A
G
H
D
K
I
N
Represents transmission of RREQ
X,Y Represents list of identifiers appended
to RREQ
42Route Discovery in DSR
Y
Z
S
S,E
E
F
B
C
M
L
J
A
G
S,C
H
D
K
I
N
43Route Discovery in DSR
Y
Z
S
E
F
S,E,F
B
C
M
L
J
A
G
H
D
K
S,C,G
I
N
- Node C receives RREQ from G and H, but does not
forward - it again, because node C has already forwarded
RREQ once
44Route Discovery in DSR
Y
Z
S
E
F
S,E,F,J
B
C
M
L
J
A
G
H
D
K
I
N
S,C,G,K
- Nodes J and K both broadcast RREQ to node D
45Target Node Reaction
- Node D examines its route cache, if a route to S
found, use it as source route for RREP.Otherwise, - May perform its own route discovery to S,
piggyback the RREP on its own RREQ to S - Simply reverse the sequence of hops in the route
record - Preferred by IEEE 802.11 that require a
bidirectional frame exchange - Avoids the overhead of a possible second route
discovery - Tests the discovered route
- Advantage support asymmetric link
46Route Reply in DSR
Represents RREP control message
Route reply with its associated route record back
to the source node
47AODV vs. DSR
- DSR
- Potentially larger overhead
- Intended for moderate speed mobile nodes, source
routing, not scalable to large networks - No network topology changes, no overhead
- Support asymmetric link
- Allow nodes keep multiple routes to one
destination in their cache, faster route recovery - AODV
- Less control overhead
- Support multicast
- Require symmetric links between nodes
- Good chance of scalability
48References
- Romit Roy Choudhury and Nitin H. Vaidya, Impact
of Directional Antennas on Ad Hoc Routing. - Elizabeth M. Royer, C-K Toh, A Review of Current
Routing Protocols for Ad-Hoc Mobile Wireless
Networks. - Charles E. Perkins, AD HOC Networking