文献标识码: A
文章编号: 0258-7998(2013)07-0100-03
随着无线移动网络的发展,基于固定通信设备的移动通信网络得到了普遍的应用,如无线局域网和移动蜂窝网等。而对于没有事先布置好网络装置并且多变的场合,就需要一种没有固定通信设备也能快速组网的网络体系。Ad Hoc网络就是一种不依赖于固定通信设施的移动自组织网络,具有动态的拓扑结构、能够迅速地展开使用。Ad Hoc网络中的节点既可当作终端,也可作为路由器使用,主要完成网络中路由的建立、选择和维护。对于不能直接到达的两个节点,需要经过中间节点通过多跳的方式转发数据,因此又叫多跳网。目前已有10~20种移动Ad Hoc网络路由协议,每种路由协议都有各自的特点和适应的场合。一般可以将Ad Hoc网络路由协议分为表驱动路由和按需驱动路由协议两类。DSR协议是一种典型按需驱动路由协议,相比之下,DSR协议是Ad Hoc网络路由协议中与传统路由差别最大且整体性能最优的路由协议,对DSR协议的研究具有重要的意义。
1 DSR协议概述
动态源路由协议DSR(Dynamic Source Routing Protocol)是专门为Ad Hoc网络设计的、具有多跳无线、简单且高效的路由协议。DSR是基于源路由方式的,即在每一个传输分组的头部插入完整的源路由信息,以保证分组按照指定的路径传送。这种方法有效地避免了环路的出现,且在节点移动或者网络发生变化的情况下也能将分组正确地传送,提高了移动通信节点对于网络拓扑动态变化的适应能力。DSR协议包括两大机制:路由发现和路由维护。
(1)路由发现:DSR是一种按需路由协议,只在节点发送数据时才启动路由发现过程。节点接收到数据后,先查找自己的路由缓存表,如果路由表中不存在可到达目的节点的路由信息,就使用洪泛技术向邻居节点广播路由请求报文(RREQ),邻居节点在接收到请求报文后,缓存表存在到达目的节点的路由或者本身是目的节点,就发送一个路由应答包(RREP),并把路由信息反馈给源节点供其使用。若没有到达目的节点的路由或本身不是目的节点,则继续向自己的邻居节点发送RREQ包。
(2)路由维护:DSR的路由维护过程是在发送数据的过程中才进行的。在分组转发过程中如果发现某一跳链路不可达,中间节点向源节点发送路由出错报文(RERR),源路由在收到出错报文后,当再有发往该目的节点数据包时重新发起路由发现过程,且所有收到RERR报文的源节点和中间节点都将删除包含该跳链路的缓存路径。
DSR路由协议作为按需路由协议,具有开销小、简洁高效等特点。DSR协议也有一些缺点,主要表现在以下几方面:(1)采用源路由方式,储存报文传输过程中整个路径节点的路由信息,浪费了宽带资源。(2)其路由缓存机制,将导致在广播路由请求报文时,有许多中间节点同时应答,这可能会引起“应答风暴”,还可能导致过时的路由在网路中大量扩散。(3)为满足节点快速传送信息需求,没有考虑无线节点的能量问题。这会导致整个网络的能量或某些重要节点的能量很快被消耗,最终造成网络较快地分裂,影响了数据的传输效率,缩短了网络的生存时间。
2 DSR协议的改进设计
针对DSR路由协议存在的不足,本文对DSR路由协议进行了改进。针对DSR缓冲器先引入以下三个参数:
(1)形成时间路由参数:定义加入路由最晚的节点的时间为形成时间路由参数,记为TB。t表示DSR缓冲器中路由的某一节点加入到路由中的时间,则TB=max(t)。
(2)生存时间路由参数:定义路由中相邻的节点之间构成的链路从形成到失效的时间为生存时间路由参数,记为TL。
(3)剩余生存时间路由参数:定义生存时间路由参数与路由已存活的时间参数之差为剩余生存时间路由参数,记为TR。TC表示当前时间,则TR=TL-(TC-TB)。
针对DSR缓冲策略存在的不足,对DSR的缓冲策略进行以下改进:选择最佳路径时,首先选择路由长度最短的路由,在最短路由不止一条的情况下,则选择最短路径中剩余生存时间最长max(TR)的一条路由。当缓存器满时,就舍弃剩余生存时间路由参数最小min(TR)的路由。
优化DSR路由的自动缩短机制:主要进行以下两方面改进。
(1)寻找跳数最小、所产生的新路由的路由质量最好的路由。TL决定路由的质量,取TL最大值的路由。
(2)通过新形成链路的移动节点速度、移动方向、位置估算出新形成链路的TR,来判断是否要让节点使用新的链路路由。如果产生的新链路的剩余时间参数TR小于原来链路的TR,则路由缩短机制产生的路由是没有意义的,这条新链路被判断为失效。采用本方案设计的路由自动缩短机制不仅能产生跳数尽可能小的路由,同时还确保了新形成路由的TR不会很小。
3 改进DSR协议的ns2仿真
3.1 仿真条件的设置
仿真实验所用网络参数的设置如下:在一个总共由180个节点组成的宽带无线自组网上进行。接入设备由36个节点均匀分布在6×6的网格空间,所有节点的传输距离和干扰距离都相同,节点间的空间距离为200 m。MAC层协议采用CSMA接入,网络环境为IEEE 802.11,传输速率为1.6 Mb/s,功率衰减参数为2,网络协议为IP协议。传输半径为250 m,干扰半径为550 m,两者比例为2.2。网络采用的路由协议为DSR协议以及改进的DSR协议,具体参数如表1所示。
3.2 改进的DSR协议性能仿真分析
本文将改进的DSR协议与NS2现有的DSR协议的性能进行对比,所有的仿真都是在NS2仿真平台上进行的。在该仿真过程中,网络使用一条恒定速率(CBR)的数据流,由节点0在0~1 s之间随机选择一个时间往节点24发送数据流。仿真时间为100 s,画出网络吞吐量和时间的关系图,进行对比,如图1所示。
由图1可知,在数据传输期间,改进的DSR的吞吐量略微高于原DSR。这是因为在改进的DSR协议中,对DSR协议的缓冲策略以及路由缩短机制进行了优化。当有多条最短路由时,选择剩余时间最大的一条;在选择跳数较小的路由时,必须保证所选的路由的剩余时间不小于它所代替的路由,从而保证了路由选择的质量。而原DSR协议中,把所有跳数最小的路由都加入路由缓存表,用跳数小的路由代替跳数大的路由。因此改进的DSR协议实现路由切换的代价比DSR协议小。
测试网络时延的仿真环境配置与网络吞吐量比较时的配置完全一致,网络时延的情况结果如图2所示。
由图2可知,在数据传输期间,采用改进DSR协议的网络时延略低于采用DSR协议的网络时延。由此说明,在网络路由路径发生变化时,采用改进DSR协议的网络能够保证修改后路由的质量,从而保持较低的时延,避免网络性能在切换路由时恶化的情形。
测试网络丢包率的仿真环境配置与网络吞吐量比较时的配置完全一致,网络丢包率对比图如图3所示。
上面的仿真实验表明,与DSR协议相比,改进的DSR协议能够使网络获得更高的吞吐量以及更低的丢包率,且其时延相应减少。其原因是在其他设置一样的情况下,改进的DSR协议可以迅速地选择跳数少、质量高的路由,这样可减少切换所需要的时间,提高网络的吞吐量并减少丢包率,进而提高宽带无线自组网的性能。
本文阐述了基于路由缓冲优化的路由协议,并在路由缩短机制的基础上,对现有的按需路由协议提出了一种通用改进方法,同时讨论比较了DSR协议与改进的DSR协议,并具体地实现了改进的DSR协议在NS2的仿真实验。实验仿真结果证明了对于DSR协议的改进协议确实具有优于传统DSR协议的特性,让明了改进算法的可行性。
参考文献
[1] MATSUO H, MORI K. Accelerated ants routing in dynamic networks[C]. International Conference On Software Engineering, Artificial Intelligence, Networking and Parallel/Distri-buted Computing, 2001,8:333-339.
[2] CHOUDHARY R R, BHANDHOPADHYAY S, PAUL K. A distributed mechanism for topology discovery in Ad Hoc wireless networks using mobile agents[M]. Procedings of Mobicom, 2000:145-146.
[3] HAAS Z J, PEARLMAN M R, SAMAR P. The zone routing protocol(ZRP) for Ad Hoc Networks[M]. IETF Internet Draft, 2002.
[4] PERKINS C E. Ad Hoc networking[M]. Addison-Wesley, Boston,2001:139-172.
[5] BROCH J, JOHNSON D B, MALTZ D A. The dynamic source routing protocol for mobile Ad Hoc networks[M].IETF Internet-Draft, 1998.
[6] 吴东亚,侯朝桢,侯紫峰,等.移动自组网路由协议DSR性能评价[J]. 计算机应用与软件,2004,21(12):66-68.
[7] 刘丽,郭中华,雍辉.一种基于权重的DSR路由改进算法[J]. 微型机与应用, 2010,28(13):57-59,62.