动态源路由协议(Dynamic Source Routing, DSR)是在移动自组网(MANET)中使用的一种路由协议。它工作在TCP/IP协议族的网际层。
它的首部采用扩展性良好的TLV格式。除固定部分外,不同类型的选项(option)以TLV格式附加在固定部分之后。
选项的种类包括:
路由请求(Route Request)
路由应答(Route Reply)
确认请求(ACK Request)
确认(ACK)
源路由(Source Route)
Dynamic source routing protocol (DSR) is an on-demand protocol designed to restrict the bandwidth consumed by control packets in ad hoc wireless networks by eliminating the periodic table-update messages required in the table-driven approach.
The major difference between this and the other on-demand routing protocols is that it is beacon-less and hence does not require periodic hello packet (beacon) transmissions, which are used by a node to inform its neighbors of its presence.
The basic approach of this protocol (and all other on-demand routing protocols) during the route construction phase is to establish a route by flooding RouteRequest packets in the network. The destination node, on receiving a RouteRequest packet, responds by sending a RouteReply packet back to the source, which carries the route traversed by the RouteRequest packet received.
当一个节点发包到一个目标节点而且没有到这个点的路径时, 它发出一个RouteRequest包。 RouteRequest涌出到整个网络。每个节点收到RouteRequest后继续广播到它们的相邻的节点,直到发到目标节点为止(在没有超过TTL的情况下)。 每个RouteRequest都含有一个序号sequence number, 这个number由源节点和RouteRequest穿过的路径生成。 当一个几点收到RouteRequest时,它在转发之前先检查这个序号。只有不是重复的RouteRequest(序号不同)才会转发。 当目标节点收到RouteRequest后,通过反转RouteRequest中保存的路径发送回复到源节点。
建立连接还可以通过使用route cache, 当一个中间节点收到RouteRequest而且这个节点的route cache中有到目标节点的路径, 它就直接回复一个包含从源节点到目标节点完整路径信息的RouteReply到源节点
Consider a source node that does not have a route to the destination. When it has data packets to be sent to that destination, it initiates a RouteRequest packet. This RouteRequest is flooded throughout the network. Each node, upon receiving a RouteRequest packet, rebroadcasts the packet to its neighbors if it has not forwarded already or if the node is not the destination node, provided the packet’s time to live (TTL) counter has not exceeded. Each RouteRequest carries a sequence number generated by the source node and the path it has traversed. A node, upon receiving a RouteRequest packet, checks the sequence number on the packet before forwarding it. The packet is forwarded only if it is not a duplicate RouteRequest. The sequence number on the packet is used to prevent loop formations and to avoid multiple transmissions of the same RouteRequest by an intermediate node that receives it through multiple paths. Thus, all nodes except the destination forward a RouteRequest packet during the route construction phase. A destination node, after receiving the first RouteRequest packet, replies to the source node through the reverse path the RouteRequest packet had traversed.
Nodes can also learn about the neighboring routes traversed by data packets if operated in the promiscuous mode (the mode of operation in which a node can receive the packets that are neither broadcast nor addressed to itself). This route cache is also used during the route construction phase. If an intermediate node receiving a RouteRequest has a route to the destination node in its route cache, then it replies to the source node by sending a RouteReply with the entire route information from the source node to the destination node.
Advantages and Disadvantages
This protocol uses a reactive approach which eliminates the need to periodically flood the network with table update messages which are required in a table-driven approach.
In a reactive (on-demand) approach such as this, a route is established only when it is required and hence the need to find routes to all other nodes in the network as required by the table-driven approach is eliminated.
The intermediate nodes also utilize the route cache information efficiently to reduce the control overhead.
The disadvantage
- this protocol is that the route maintenance mechanism does not locally repair a broken link.
- Stale route cache information could also result in inconsistencies during the route reconstruction phase.
- The connection setup delay is higher than in table-driven protocols.
- Even though the protocol performs well in static and low-mobility environments, the performance degrades rapidly with increasing mobility.
- Also, considerable routing overhead is involved due to the source-routing mechanism employed in DSR. This routing overhead is directly proportional to the path length.
与AODV对比
The AODV Routing protocol uses an on-demand approach for finding routes, that is, a route is established only when it is required by a source node for transmitting data packets. It employs destination sequence numbers to identify the most recent path.
The major difference between AODV and Dynamic Source Routing (DSR) stems out from the fact that DSR uses source routing in which a data packet carries the complete path to be traversed. However, in AODV, the source node and the intermediate nodes store the next-hop information corresponding to each flow for data packet transmission.
In an on-demand routing protocol, the source node floods the RouteRequest packet in the network when a route is not available for the desired destination. It may obtain multiple routes to different destinations from a single RouteRequest. The major difference between AODV and other on-demand routing protocols is that it uses a destination sequence number (DestSeqNum) to determine an up-to-date path to the destination. A node updates its path information only if the DestSeqNum of the current packet received is greater than the last DestSeqNum stored at the node.
cont
分享到:
相关推荐
动态源路由协议(Dynamic Source Routing,简称DSR)是一种专为多跳无线自组织网络(MANET)设计的简单且高效的路由协议。在这样的网络环境中,节点通常是移动的,并且没有预先存在的网络基础设施或中央管理机构来...
动态源路由协议(DSR,Dynamic Source Routing)是一种专门设计用于移动自组织网络(MANETs)的路由协议。在MANETs中,节点通过无线通信进行连接,并且网络拓扑是动态变化的,因为节点可能会移动。DSR协议的一大特点...
本文探讨了动态源路由协议(Dynamic Source Routing, DSR)在多跳无线自组织网络中的应用及其性能优化。DSR作为一种简单且健壮的路由协议,被设计用于支持移动节点之间的通信。然而,在高节点移动性和低流量负载的...
本文将详细介绍几种常见的自组织网络路由协议,包括DSDV(Destination-Sequenced Distance Vector)、DSR(Dynamic Source Routing)、ZRP(Zone Routing Protocol)以及LAR(Location-Aided Routing),旨在为自...
标题中的“DSR文件是动态源路由协议仿真和模拟ns-2.you Linux可以使用此文件为Linux操作系统.zip”表明,这是一个与网络通信和路由协议相关的文件,具体来说是动态源路由(Dynamic Source Routing, DSR)协议的仿真和...
动态源路由协议(Dynamic Source Routing, DSR)是一种在移动自组织网络(MANETs)中广泛应用的路由协议。它允许每个节点独立地发现到目的地的路径,并且能够动态地适应网络拓扑的变化。然而,原始的DSR协议在处理...
DSR(Dynamic Source Routing)作为一种广泛研究的无基础设施路由协议,其在无线自组织网络(Ad Hoc Network)中的表现尤为突出。本文将深入探讨DSR协议的原理,并结合OpenT工具,分析其在实际操作中的应用。 DSR...
动态源路由(DSR,Dynamic Source Routing)是一种用于无线自组织网络(Ad Hoc Network)的路由协议。在DSR中,每个节点不仅维护到其邻居的路由信息,还保存了到目标节点的具体路径,因此得名“动态源路由”。OPNET ...
本资料主要探讨了层次移动专门网络(Hierarchical Mobile Ad Hoc Network, HMN)以及动态源路由(Dynamic Source Routing, DSR)在网络游戏中的应用,这两种技术对于优化游戏网络性能、减少延迟和提高稳定性具有积极...
标题提及的是“ad hoc DSR路由协议的源码”,这指的是在无线自组织网络(Ad Hoc Network)中采用的“动态源路由”(Dynamic Source Routing, DSR)协议的源代码。DSR是一种适用于移动Ad Hoc网络的路由协议,它允许...
其次,本文提出了基于DSR协议的能量延迟感知路由协议(Energy Delay aware Dynamic Source Routing,ED-DSR)。在路由选择过程中,ED-DSR路由协议能够保证数据包在延迟期限前能够到达目的节点,否则,就丢弃RREP...
分析了现有动态源路由(dynamic source routing,DSR)协议机制以及在车载通信网路由发现中存在的问题,提出一种基于DSR分层机制的移动代理路由策略(cluster mobile agent-dynamic source routing, CM-DSR),并对...
本文将深入探讨两种按需式(需求驱动或反应式)路由协议:AODV(Ad hoc On-Demand Distance Vector)和DSR(Dynamic Source Routing)。这两种协议都是为了解决自组网中的路由问题而设计的,具有高效和灵活的特点。 ...