Dynamic Source Routing (DSR) is a routing protocol for wireless mesh networks. It is similar to AODV in that it forms a route on-demand when a transmitting computer requests one. However, it uses source routing instead of relying on the routing table at each intermediate device. This article discusses routing in computer networks. ... Wireless mesh networking is mesh networking implemented over a Wireless LAN. This type of Internet infrastructure is decentralized, relatively inexpensive, and very reliable and resilient, as each node need only transmit as far as the next node. ... The Ad-hoc On-demand Distance Vector (AODV) routing algorithm is an algorithm for routing data across Wireless Mesh Networks. ...
Determining source routes requires accumulating the address of each device between the source and destination during route discovery. The accumulated path information is cached by nodes processing the route discovery packets. The learned paths are used to route packets. To accomplish source routing, the routed packets contain the address of each device the packet will traverse. This may result in high overhead for long paths or large addresses, like IPv6. To avoid using source routing, DSR optionally defines a flow id option that allows packets to be forwarded on a hop-by-hop basis.
For information on other similar protocols, see the ad hoc protocol list. An Ad hoc protocol is a convention or standard that controls how nodes come to agree which way to route packets between computing devices in a mobile ad-hoc network (MANET). ...
David B. Johnson. Routing in Ad Hoc Networks of Mobile Hosts. Proceedings of the Workshop on Mobile Computing Systems and Applications, pp. 158-163, IEEE Computer Society, Santa Cruz, CA, December 1994.
Many successive refinements have been made to DSR, including DSRFLOW. DSRFLOW, the Flow-State extensions to Dynamic Source Routing (DSR), are a set of extensions that provide all of the benefits of source routing, without most of the per-packet overhead that is associated with source routing. ...
In table driven routing protocols consistent and up-to-date routing information to all nodes is maintained at each node whereas in on-demand routing the routes are created only when desired by the source host.
The source of the packet transmits the packet to its cluster-head.
It also uses route shortening that is on receiving a sourceroute packet, the node tries to find the farthest node in the route that is its neighbor (this could have happened due to a topology change) and sends the packet to that node thus reducing the route.