一种基于DSR协议的多路径改进方法技术

技术编号:12298158 阅读:54 留言:0更新日期:2015-11-11 09:17
一种基于DSR协议的多路径改进方法,包括数据结构的改进和改进后的路由发现算法,与DSR协议相比,本发明专利技术协议在一次路由发现过程中可以产生两条路由线路,加上交替使用两条路由的路由选择方式,能够很好的改善网络局部拥塞状况,提高分组接收率和减少网络时延。

【技术实现步骤摘要】

本专利技术涉及无线自组织网络领域,具体涉及一种基于DSR协议的多路径改进方 法。
技术介绍
近年来,无线组组织网络广泛应用于军事国防、移动办公、工业控制等诸多领域。 无线自组织网络是指通信节点可以随意移动的网络,由于拓扑结构的不稳定性,无线自 组织网络要求路由协议具有快速建立路由、快速适应拓扑结构变化的特点。动态源路由 (Dynamic Source Routing,DSR)协议能够很好地满足移动自组织网络的要求,被广泛使 用。但是DSR协议是一种单路径路由协议,一次路由发现过程只能获得一条路由。单路径 路由协议的缺点是可靠性不高,一旦路由中的部分链路断开,只能启动路由发现过程,这会 导致较大的网络传输时延与较高的丢包率。此外,对于目的节点相同的数据分组,源节点总 是使用相同的路由进行发送,路由线路中的节点总是处于繁忙状态,会导致网络局部拥塞。
技术实现思路
鉴于上述不足之处,为了克服DSR协议单路径的缺点,本专利技术提供了一种基于DSR 协议的多路径改进方案MSDSR。 本专利技术采用的技术方案: 改进1、中间节点转发RREQ (路由请求)分组的条件修改为: Φ该节点不是目的节点; S没有达到最大跳数; 參RREQ中的源路由域中不存在本节点地址; ?Φ本节点第一次收到该RREQ分组,或者已经收到该RREQ分组,但该RREQ分组中的源 路由域中的结点序列不在本节点的路由缓冲器中。 改进2、中间节点与目的节点收到RREQ分组后,提取RREQ分组的源路由域中已发 现的结点序列,添加到本地路由缓冲器中。 改进3、目的节点在第一次收到RREQ分组后,启用定时器。定时器超时后,从本节 点的路由缓冲器中选取两条路由,分别制作RREP (路由回复)分组传送到源节点。两条路 由分别为:游:最短路径,傲_与最短路径差异最大的路径。这里差异最大是指,路径中相同节 点数最少。 改进4、改进数据分组选择路由的方式,使两次选择的路由不同,实现节点交替使 用两条路由发送数据。 与DSR协议相比,MSDSR协议在一次路由发现过程中可以产生两条路由线路,加上 交替使用两条路由的路由选择方式,能够很好的改善网络局部拥塞状况,提高分组接收率 和减少网络时延。【附图说明】 图I MSDSR协议路由发现流程图。 图2 MSDSR与DSR协议分组接收率对比图。 图3 MSDSR与DSR协议传输时延对比图。【具体实施方式】 下面我们将结合附图对本专利技术作进一步的说明。 一种基于DSR协议的多路径改进方法,包括以下步骤: 1、关于数据结构的改进: _在路由申请表项类中加入区分RREQ分组转发次数的标志变量flag,flag在类的构 造函数中被初始化为0。该标志用来指示RREQ分组被本节点转发的次数。更新方式为:本 节点转发源节点发送过来的RREQ分组后,flag的值增加1。 _在路由缓冲器类中加入记录上次使用的路由的变量last_route,last_route 初始化为空。该变量的作用是辅助路由选择函数,使每次从路由缓冲器中选择的路由都与 上次使用的路由不同(除非路由缓冲器中只有一条可用路由)。路由选择函数判断与最短路 径差异最大的路径的方法是:两条路径的相同节点数最少。 觀在协议类中加入定时器timer。当收到目的节点为本节点的RREQ分组时,开启 定时器。定时器的超时函数中组织两个RREP分组,分别携带两条路由:最短路由和与最短 路由差异最大的路由。 2、改进后的路由发现算法,其流程如图1 : 步骤1、源节点查询路由缓冲器中是否有到达目的节点的路由,如果没有转到步骤2。 否则转到步骤12。 步骤2、源节点生成RREQ分组,并在分组的源路由域中添加本节点地址,将RREQ分 组广播出去。 步骤3、收到RREQ分组的节点是中间节点转到步骤4,是目的节点则转到步骤7。 步骤4、判断该RREQ分组是否满足转发条件,满足转发条件转到步骤5,否则转到 步骤6。 转发条件为: ① 节点不是目的节点; ② 没有达到最大跳数; ③ RREQ分组的源路由域中不存在此节点; ④ 本节点第一次收到该RREQ分组,或者已经收到该RREQ分组,但该RREQ分组中的源 路由域中的结点序列不在本节点的路由缓冲器中; 步骤5、向RREQ分组中添加本节点地址,将该RREQ分组的源路由域中的结点序列提取 出来,倒序后添加到路由缓冲器中。将RREQ分组广播出去,同时更新对应路由申请表项的 标志flag。转到步骤3。 步骤6、丢弃路由请求分组,转到步骤3。 步骤7、将本节点地址添加到RREQ分组的源路由域中,并将RREQ分组的源路由域 中节点序列倒序后添加到路由缓冲器中。 步骤8、判断该RREQ分组是否是第一次收到,如果是第一次收到转到步骤9 步骤9、开启定时器,定时器超时转入步骤10. 步骤10、在路由缓冲器中选择两条到达源节点的路由,一条是最短路径,另一条是与最 短路径差异最大的路由,将两条路由封装到RREP分组中,发送到源节点。 步骤11、源节点收到RREP分组,提取路由,添加到路由缓冲器中。 步骤12、源节点从路由缓冲器中选择到目的节点的路由,将数据分组发送出去。选 择路由的方式如下: 选出到达目的节点的最短路由与上次使用的路由做对比,如果相同,则在路由缓冲器 中寻找与最短路径差异最大的路由,并返回该路由;如果不同,则返回最短路由。 步骤13、结束。 与DSR协议相比,MSDSR协议在一次路由发现过程中可以产生两条路由线路,加上 交替使用两条路由的路由选择方式,能够很好的改善网络局部拥塞状况,提高分组接收率 和减少网络时延。如图2、图3所示。图2、图3的实验是通过在NS中仿真得到的,仿真场 景是一个2000mX 500m的矩形区域;在此区域中设置60个节点,节点在此区域中随机运动, 最大运动速度20m/s。仿真时间为100s,暂停时间分别为20s、40s、60s、80s、100s,暂停时间 是指网络中节点静止的时间,暂停时间20s,则场景中的节点前20s静止,20s后运动;暂停 时间Os和IOOs是仿真中的两个极端情况,分别指网络中所有节点在仿真时间内不停运动 和静止。在仿真时间内随机选择30对接点在随机时刻进行通信。【主权项】1. 一种基于DSR协议的多路径改进方法,包括以下步骤: 步骤1、源节点查询路由缓冲器中是否有到达目的节点的路由,如果没有转到步骤2, 否则转到步骤12 ; 步骤2、源节点生成RREQ分组,并在分组的源路由域中添加本节点地址,将RREQ分组广 播出去; 步骤3、收到RREQ分组的节点是中间节点转到步骤4,是目的节点则转到步骤7 ; 步骤4、判断该RREQ分组是否满足转发条件,满足转发条件转到步骤5,否则转到步骤 6 ; 转发条件为: ① 节点不是目的节点; ② 没有达到最大跳数; ③ RREQ分组的源路由域中不存在此节点; ④ 本节点第一次收到该RREQ分组,或者已经收到该RREQ分组,但该RREQ分组中的源 路由域中的结点序列不在本节点的路由缓冲器中; 步骤5、向RREQ分组中添加本节点地址,将该RREQ分组的源路由域中的结点序列提取 出来,倒序后添加到路由缓冲器中,将RREQ分组广播出去,同时更新对应路由申请本文档来自技高网...

【技术保护点】
一种基于DSR协议的多路径改进方法,包括以下步骤:步骤1、源节点查询路由缓冲器中是否有到达目的节点的路由,如果没有转到步骤2,否则转到步骤12;步骤2、源节点生成RREQ分组,并在分组的源路由域中添加本节点地址,将RREQ分组广播出去;步骤3、收到RREQ分组的节点是中间节点转到步骤4,是目的节点则转到步骤7;步骤4、判断该RREQ分组是否满足转发条件,满足转发条件转到步骤5,否则转到步骤6;转发条件为:①节点不是目的节点;②没有达到最大跳数;③RREQ分组的源路由域中不存在此节点;④本节点第一次收到该RREQ分组,或者已经收到该RREQ分组,但该RREQ分组中的源路由域中的结点序列不在本节点的路由缓冲器中;步骤5、向RREQ分组中添加本节点地址,将该RREQ分组的源路由域中的结点序列提取出来,倒序后添加到路由缓冲器中,将RREQ分组广播出去,同时更新对应路由申请表项的标志flag,转到步骤3;步骤6、丢弃路由请求分组,转到步骤3;步骤7、将本节点地址添加到RREQ分组的源路由域中,并将RREQ分组的源路由域中节点序列倒序后添加到路由缓冲器中;步骤8、判断该RREQ分组是否是第一次收到,如果是第一次收到转到步骤9;步骤9、开启定时器,定时器超时转入步骤10;步骤10、在路由缓冲器中选择两条到达源节点的路由,一条是最短路径,另一条是与最短路径差异最大的路由,将两条路由封装到RREP分组中,发送到源节点;步骤11、源节点收到RREP分组,提取路由,添加到路由缓冲器中;步骤12、源节点从路由缓冲器中选择到目的节点的路由,将数据分组发送出去,选择路由的方式如下:选出到达目的节点的最短路由与上次使用的路由做对比,如果相同,则在路由缓冲器中寻找与最短路径差异最大的路由,并返回该路由;如果不同,则返回最短路由;步骤13、结束。...

【技术特征摘要】

【专利技术属性】
技术研发人员:李迅波郑亚飞王振林何长江
申请(专利权)人:成都芯联电科科技技术有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1