![Page 1: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/1.jpg)
DSR: The Dynamic SourceRouting Protocol for Multi-Hop
Wireless Ad Hoc NetworksDavid B. Johnson David A. Maltz
Josh Brochslides: Patrick
![Page 2: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/2.jpg)
DSR Goals/Assumptions
• Multihop wireless networks– (as opposed to 802.11 infrastructure mode)
• Dynamic topology• Find shortest path (number of hops)
– Question: is this the right metric?• Uni-directional or bi-directional links• Promiscuous mode for optimisations
![Page 3: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/3.jpg)
Why a new routing protocol?
• “Conventional” wired routing protocols:– E.g.: link-state, distance-vector– Pro-active– Hop-by-hop
• DSR:– On-demand– Source-routed
Why?
![Page 4: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/4.jpg)
Pro-active vs. On-demand
• Pro-active:– Continuously maintains routes to all destinations– Creates a lot of overhead– But capacity is precious
• On-demand:– Routing packets exchanged only when route is needed– Overhead scales to routes currently in use– Aside: inspired by ARP
• Disadvantages? What about latency?
![Page 5: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/5.jpg)
Source-routing vs. Hop-by-hop
• Hop-by-hop:– Intermediate nodes know nexthop for a destination– Potential for routing loops during convergence,
especially if nodes move around• Source-routing:
– Sender includes list of hops in each data packet– Enables aggressive snooping of routes– But: overhead in each data packet
![Page 6: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/6.jpg)
Other reasons..
..why wired protocols don’t cut it?
![Page 7: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/7.jpg)
DSR
• Route discovery– “Give me a route”– Snooping
• Route maintenance– “Your route is broken”– “Here is a shorter route”
![Page 8: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/8.jpg)
Route Discovery
• Three cases:– Case 1: answered by destination– Case 2: overhear and cache– Case 3: answered from other node’s cache
![Page 9: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/9.jpg)
Route Discovery (Case 1)Route Reply: “A,B,C,D”
Route Request: “A,B,C,D”
•Sender uses exponential back-off for same target
![Page 10: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/10.jpg)
Route Discovery (Case 2)
• Aggressive caching of overheard routes• Anything goes:
– Source routes in data packets– Routes in route requests– Routes in route replies
![Page 11: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/11.jpg)
Route Discovery (Case 2)
• What if caches get stale?• Route error (discussed later) clears caches
![Page 12: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/12.jpg)
Route Discovery (Case 3)
Route Reply: “A,B,C,D”
Route Request: “A,B,C,D”
From cache
![Page 13: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/13.jpg)
Route Discovery (Case 2)
• Corner cases, e.g.:
![Page 14: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/14.jpg)
Route Discovery
• What if MAC requires bi-directionality?– Note: route request is broadcast– 802.11 broadcasts are not acked– Solution: Route Reply uses reverse route
![Page 15: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/15.jpg)
Route Discovery
• Multiple routes may result:– Good, allows fail-over– How: destination may return multiple routes
• Intermediate nodes cannot return multipleroutes– Req id prevents this– What about unidirectional links?
![Page 16: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/16.jpg)
Route Discovery
• Other features:– Prevent route reply storms– Non-propagating route requests
![Page 17: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/17.jpg)
Route Maintenance
• Each node ensures next-hop receives, e.g.:– 802.11 ACK– Passive acknowledgement– Software acknowledgement
• Trigger route error if not acked
![Page 18: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/18.jpg)
Route MaintenanceRoute Error
• Retransmission by higher layer (TCP)
![Page 19: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/19.jpg)
Route Maintenance
• Route error responsible for clearing caches• Piggyback route error on route requests• Forward router error along error path
![Page 20: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/20.jpg)
Route Maintenance
• Other features:– Packet salvaging– Automatic route shortening
• Gratuitous route reply– Caching negative information
![Page 21: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/21.jpg)
Protocol stack
• Layer 3– Support multiple link layer types– Seamless interoperation with Internet– Mobile IP
• Support multicast functionality– But implemented as broadcast
![Page 22: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/22.jpg)
Simulation
• Ns-2:– Implemented detailed physical/link-layer model– 802.11 DCF– ARP
![Page 23: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/23.jpg)
Simulation
• 50 mobile nodes in 1500m x 300m area• Of which 10, 20, 30 traffic sources• Constant bit rate UDP• 4 packets/second• Movement: random waypoint model
![Page 24: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/24.jpg)
Simulation
• Evaluation:– Loss rate– Routing overhead– What about latency?
![Page 25: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/25.jpg)
![Page 26: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/26.jpg)
Testbed
![Page 27: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/27.jpg)
Testbed
• 5 mobile nodes, 10 meters/second• 2 stationary nodes, 700 meters distance• WaveLAN PCMCIA PC Cards, 900 MHz• Variety of data traffic tyepes and loads• No evaluation presented
![Page 28: DSR: The Dynamic Source Routing Protocol for Multi-Hop ...€¦ · DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks David B. Johnson David A. Maltz](https://reader034.vdocuments.net/reader034/viewer/2022052006/6019c2cfe88234659f7721c6/html5/thumbnails/28.jpg)
Summary
• Novel approach: on-demand, source routing• Metric (shortest path) may not be optimal• Not evaluated:
– Latency may be a weak point– Cache miss rate– Behaviour under congestion, lossy links, etc.