Pro-Active Route Maintenance in DSR
Thomas Kunz
Systems and Computer Engineering
Carleton University
http://kunz-pc.sce.carleton.ca/
tkunz@sce.carleton.ca

Mobile Ad Hoc Networks
Infrastructure-less, wireless links, may need to traverse multiple links to reach a destination

Mobile Ad Hoc Networks
Mobility causes route changes

Why Ad Hoc Networks ?
Ease of deployment
Speed of deployment
Decreased dependence on infrastructure

Many Applications
Personal area networking
cell phone, laptop, ear phone, wrist watch
Military environments
soldiers, tanks, planes
Civilian environments
taxi cab network
meeting rooms
sports stadiums
boats, small aircraft
Emergency operations
search-and-rescue
policing and fire fighting

Motivation
Routing protocols (both “pro-active” and “on-demand” protocols) keep using a route until a link breaks
Result:
Rebuild the route (takes time)
Packets are dropped

Related Work
Lots of work on ROUTING PROTOCOLS, though very little on avoiding packet loss due to route failure
Flow Oriented Routing Protocol (FORP): destination predicts topology change based on the Link Expiration Time
Associativity Based Routing (ABR), Signal Stability-Based Adaptive Routing (SSA) favor longer-live routes
Paper in MobiCom 2001
Also uses signal power strength
But uses different metrics: preemptive zone, packet latency etc.
At least 2 times increase in routing protocol overhead for DSR

Prediction Algorithm
Basic Idea:
Predict the link breakage time (prediction algorithm)
Rebuild a route before link breaks (pro-active route maintenance)
Prediction Algorithm
Monitor unicast packets from neighboring nodes
Using signal power strength to predict the link breakage time

Prediction Algorithm (continued)

Simulation Environment
The Network Simulator (NS2)
Open Source
Trace file
AODV, DSR, etc. have been implemented
Simulation metrics:
Dropped Packets: total, due to no route
Normalized Routing Load
Hop count ratio
Packet latency
Simulation parameters
50 mobile nodes, 1500x300 m area, 4 data packets per second

Prediction Algorithm Simulation
Implemented in NS2 to validate the algorithm
No modification to the routing protocol yet
Compare the predicted and “real link breakage time”
Parameter setting
Critical Time: the time needed to rebuild a new route
Result:
Nodes with active link have above 90% prediction accuracy
Node movement pattern changes may cause false prediction

Dynamic Source Routing Protocol
Why DSR
Popular on-demand protocol
Good performance, complex, packet salvaging
Route Discovery and Route Maintenance
When node S wants to send a packet to node D, but does not know a route to D, node S initiates a route discovery
Source node S floods Route Request (RREQ)
Each node appends own identifier when forwarding RREQ

Route Discovery in DSR

Route Discovery in DSR

Route Discovery in DSR

Route Reply in DSR
Route Reply can be sent by reversing the route in Route Request (RREQ) only if links are guaranteed to be bi-directional
To ensure this, RREQ should be forwarded only if it received on a link that is known to be bi-directional
If unidirectional (asymmetric) links are allowed, then RREP may need a route discovery for S from node D
Unless node D already knows a route to node S
If a route discovery is initiated by D for a route to S, then the Route Reply is piggybacked on  the Route Request from D.
If IEEE 802.11 MAC is used to send data, then links have to be bi-directional (since Ack is used)

Route Reply in DSR

Route Reply in DSR
Node S, on receiving RREP, caches the route included in the RREP
When node S sends a data packet to D, the entire route is included in the packet header
hence the name source routing
Intermediate nodes use the source route included in a packet to determine to whom a packet should be forwarded

Route Error in DSR

Pro-active Route Maintenance in DSR
D calculates predicted link breakage time upon receiving packet from J
Send Prediction Route Error message to source node if link in critical state
Source node can rebuild the route
Maintain source-previous hop node table to limit number of Prediction Route Error messages (up to 3)
Block Route Request from bad link
Bad link will not appear in new route
Timeout mechanism
Nodes may move closer later

Simulation Results
Simulation parameters:
Critical Time: 1s, maximum 3 Prediction Route Error messages
Simulation length: 900 seconds
Mobility scenarios: mostly high mobility, averages of seven cases each (95% confidence intervals confirm that results are statistically significant)
x-y-z: number of senders – pause time – maximum speed

Simulation Results (continued)
27% to 43% improvement in number of dropped packets due to link breakage
The number of control messages increased by less than 25% (remember MobiCom paper: 200%)
High mobility scenarios show consistent improvement (across all seven repetitions)
Average packet latency not worse (though often better)
No change to hop count ratio: paths as good as in unmodified version of DSR (metric: shortest path)

Conclusions
Proposed & implemented Prediction Algorithm
Proposed & implemented pro-active route maintenance in DSR
Significant reduction in dropped packets due to link breakage
Increased number of control messages does not cause network congestion
No negative impact on other routing protocol metrics (hop count, packet latency)

Future Work
Pro-active route maintenance in AODV (ongoing): AODV supports multicasting (tree-based), preventing packet drop even more crucial in this case
Non-constant transmit power levels
Monitor multicast packets: increase prediction accuracy,  deal with non-constant transmit power
Remove stale routes in route cache using prediction algorithm
“Soft handoff”: use old route while source node finds new route
Impact on TCP (evidence so far is mixed)
Other ways to predict/monitor/deal with link availability