|
SECAN-Lab Home News Projects SECAN-LAB Mesh Sequencer U-2010 NARTUS EFIPSANS IRMA SECRICOM The Group Members Publications Theses Teaching Presentations Topics Mobile Computing Ad-Hoc Networks Ad-Hoc Protocols Mesh Computing Trust Related Stuff L-101 Laboratory Systems AS28 Systems 802.11 Network Simulator Internships Conferences Publications Standards Projects Links Partners OSTN Miscellaneous Contact About Job Opportunities Search |
Dynamic Source Routing
DSRDSR is a reactive routing protocol which is able to manage a MANET without using periodic table-update messages like table-driven routing protocols do. DSR was specifically designed for use in multi-hop wireless ad hoc networks. Ad-hoc protocol allows the network to be completely self-organizing and self-configuring which means that there is no need for an existing network infrastructure or administration.For restricting the bandwidth, the process to find a path is only executed when a path is required by a node (On-Demand Routing). In DSR the sender (source, initiator) determines the whole path from the source to the destination node (Source-Routing) and deposits the addresses of the intermediate nodes of the route in the packets. Compared to other reactive routing protocols like ABR or SSA, DSR is beacon-less which means that there are no hello-messages used between the nodes to notify their neighbors about her presence. DSR was developed for MANETs with a small diameter between 5 and 10 hops and the nodes should only move around at a moderate speed. DSR is based on the Link-State-Algorithms which mean that each node is capable to save the best way to a destination. Also if a change appears in the network topology, then the whole network will get this informations by flooding. Importent termsRoute Source & Route CacheDSR contains 2 phases
Route Discovery![]() Example 1 If node A has in his Route Cache a route to the destination E, this route is immediately used. If not, the Route Discovery protocol is started:
Path-finding-process: RouteRequest & RouteReply![]() ![]() Example 2 Route MaintenanceIn DSR every node is responsible for confirming that the next hop in the Source Route receives the packet. Also each packet is only forwarded once by a node (hop-by-hop routing). If a packet can’t be received by a node, it is retransmitted up to some maximum number of times until a confirmation is received from the next hop.Only if retransmission results then in a failure, a RouteError message is sent to the initiator, that can remove that Source Route from its Route Cache. So the initiator can check his Route Cache for another route to the target. If there is no route in the cache, a RouteRequest packet is broadcasted. ![]() Example 3
AdvantagesReactive routing protocols have no need to periodically flood the network for updating the routing tables like table-driven routing protocols do. Intermediate nodes are able to utilize the Route Cache information efficiently to reduce the control overhead. The initiator only tries to find a route (path) if actually no route is known (in cache). Current and bandwidth saving because there are no hello messages needed (beacon-less).DisadvantagesThe Route Maintenance protocol does not locally repair a broken link. The broken link is only communicated to the initiator. The DSR protocol is only efficient in MANETs with less then 200 nodes. Problems appear by fast moving of more hosts, so that the nodes can only move around in this case with a moderate speed. Flooding the network can cause collusions between the packets. Also there is always a small time delay at the begin of a new connection because the initiator must first find the route to the target.Reference[Johnson1996] Original Paper[Johnson2004] Picture of Example 1 [Bahr2002] Picture of Example 2 [Johnson2001] Picture of Example 3 [Wetjen2004] [Broch1998] "Dynamic Source Routing" is mentioned on: Ad-Hoc Protocols (Classification) | Ad-Hoc Protocols (History) | Ad-Hoc Workshop Winter 04/05 (Termine) | Location-Aided Routing Protocol | Signal Stability-based Adaptive Routing Protocol |