System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于路由协议,特别是一种基于距离预测的olsr协议自适应参数调整方法。
技术介绍
1、移动自组织网络由于其具有无需基础设施、抗摧毁性高、可以自我配置、易于扩展等优点,一直在应急服务、军事行动、林业、医疗等领域发挥着重要的作用。
2、olsr协议作为移动自组网主要协议之一,得益于其mpr技术,使之特别适合用于大型移动自组织网络。而不同应用环境下,移动自组网中节点运动速度表现出巨大差异,如乡村道路环境下车辆自组网中车辆节点运动速度较慢,高速环境下车辆自组网中车辆节点运动速度较快。而即使是处于一个移动自组网中的各个节点运动速度也有巨大差异,如应急救援网中手持设备运动速度较小,而直升机、救援车运动速度较快。运动速度的差异会直接导致节点邻域拓扑波动快慢的差异。
3、传统olsr协议中所有节点采用固定时间间隔,周期性发送hello消息来检测邻居节点信息的机制,并维护一张邻居拓扑表,此表是路由表计算的一个重要输入。而移动自组网中每个节点面对的环境都不相同,当节点周围拓扑波动频率较快时,较长的hello消息发送间隔会导致节点感知邻域拓扑信息不及时,导致路由计算时不能选择合适的下一跳节点,从而导致大量数据包被丢弃。而当节点周围拓扑波动频率较小时,过小的heelo消息发送间隔会导致大量重复的数据包被注入网络,从而增加网络负载,降低网络服务质量。
技术实现思路
1、本专利技术的目的在于针对上述现有技术存在的问题,提供一种使移动自组网中使用olsr路由协议的节点可以根据感
2、实现本专利技术目的的技术解决方案为:一种基于距离预测的olsr协议自适应参数调整方法,所述方法包括以下步骤:
3、步骤1,修改hello消息格式,新建并初始化“预期邻居断开连接时刻表”,声明两个参数tmin和tmax,设定节点初始参数值;
4、步骤2,基于“预期邻居断开连接时刻表”,修改两跳路由计算方法;
5、步骤3,进行节点发送hello消息前的预处理;
6、步骤4,节点利用gps获取自身经纬度信息和速度信息,并发送hello消息;
7、步骤5,节点对接收到的hello消息中的信息进行读取并处理。
8、进一步地,步骤1具体过程包括:
9、步骤11,修改hello消息的格式,新增4个字段,分别为:当前节点在x轴方向坐标,当前节点在y轴方向坐标,当前节点在x方向速度分量,以及当前节点在y轴方向速度分量;
10、步骤12,每个节点新建并维护一个“预期邻居断开连接时刻表”,其中包含三个属性,分别为“邻居节点ip地址”,“当前距离”和“预期断开连接时刻”;之后将每个表初始化为空;
11、步骤13,声明两个参数tmin和tmax,分别表示发送hello消息的最小时间间隔和发送hello消息的最大时间间隔;
12、步骤14,设定初始hello消息发送时间间隔,并将neighb_hold_time值设置为hello消息发送时间间隔的3倍长度,同时对参数tmin和tmax赋任意值,需保证tmax的值大于tmin的值。
13、进一步地,步骤2所述修改两跳路由计算方法,具体为:计算两跳路由时,根据“预期邻居断开连接时刻表”,优先选取在下次计算路由的最迟时间之前,一直与当前计算路由的节点保持连接且相对距离最远的邻居节点作为下一跳;所述最迟时间等于下次发送hello消息的时间。
14、进一步地,步骤3所述进行节点发送hello消息前的预处理,具体过程包括:
15、步骤31,统计“预期邻居断开时连接时刻表”中时间早于当前时刻的所有邻居,将准备发送hello消息的节点与这些邻居之间的关系调整为非对称邻居,由此修改“邻居链路集合”;并更新维护当前准备发送hello消息的节点的其他数据结构;所述更新维护具体包括:在两跳邻居表中删除以已更改关系为非对称邻居的邻居节点为一跳邻居的条目,若邻居节点将准备发送hello消息的节点选择为mpr,则在mpr选择者集合中将该邻居节点删除;
16、步骤32,计算下次需要发送hello消息的时间,该值为“预期邻居断开连接时刻表”中迟于当前时刻的最小值,若此值大于(当前时刻+tmax),则将此值设为(当前时刻+tmax),若此值小于(当前时刻+tmin),则将此值设为(当前时刻+tmin);设置hello消息发送时间间隔值为下次hello消息发送时间减去当前时间;同时相应地,neighb_hold_time的值自动调整为最新的hello消息发送时间间隔值的3倍;
17、步骤33,若步骤31中有主动调整为非对称邻居的节点,则计算更新mpr表和路由表。
18、进一步地,步骤4具体包括:
19、步骤4-1,节点利用gps获取自身经纬度信息和速度信息;
20、步骤4-2,根据高斯投影将步骤4-1的信息转换为西安80坐标系下投影坐标,原点为西安大地原点,x轴正方向为北,y轴正方向为东;
21、步骤4-3,将当前准备发送hello消息的节点在x轴方向坐标,当前节点在y轴方向坐标,当前节点在x方向速度分量,当前节点在y轴方向速度分量这四个信息与其他相关信息填充到格式修改后的hello消息中,之后发送hello消息。
22、进一步地,步骤5具体过程包括:
23、步骤51,当节点收到邻居节点发送的hello消息后,计算与其预估的剩余保持双向通信的时间t;
24、步骤52,计算步骤51中两节点之间的距离l;
25、步骤53,填充“预期邻居断开连接时刻表”条目,填充值包括步骤51中计算的预期与邻居节点断开连接的时刻,该时刻值为(t+当前时间)、步骤52中计算的距离l和相应的邻居节点的ip地址。
26、进一步地,步骤51的具体计算过程包括:
27、步骤51-1,根据两节点的位置和速度预测t秒后它们在当前坐标系下的位置:
28、
29、其中,pos_x_a(t),pos_y_a(t),pos_x_b(t),pos_y_b(t)分别表示t秒后,当前节点位置横坐标、当前节点位置纵坐标、发送hello消息的邻居节点的横坐标,以及发送hello消息的邻居节点的纵坐标;pos_x_a,pos_y_a分别表示当前时刻即收到hello消息并且开始计算的时刻,当前节点位置横坐标和当前节点位置纵坐标;pos_x_b,pos_y_b分别表示当前时刻的邻居节点位置横坐标、邻居节点位置纵坐标;v_x_a、v_y_a、v_x_b本文档来自技高网...
【技术保护点】
1.一种基于距离预测的OLSR协议自适应参数调整方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的基于距离预测的OLSR协议自适应参数调整方法,其特征在于,步骤1具体过程包括:
3.根据权利要求2所述的基于距离预测的OLSR协议自适应参数调整方法,其特征在于,所述初始HELLO消息发送时间间隔为2秒。
4.根据权利要求1所述的基于距离预测的OLSR协议自适应参数调整方法,其特征在于,步骤2所述修改两跳路由计算方法,具体为:计算两跳路由时,根据“预期邻居断开连接时刻表”,优先选取在下次计算路由的最迟时间之前,一直与当前计算路由的节点保持连接且相对距离最远的邻居节点作为下一跳;所述最迟时间等于下次发送HELLO消息的时间。
5.根据权利要求1所述的基于距离预测的OLSR协议自适应参数调整方法,其特征在于,步骤3所述进行节点发送HELLO消息前的预处理,具体过程包括:
6.根据权利要求1所述的基于距离预测的OLSR协议自适应参数调整方法,其特征在于,步骤4具体包括:
7.根据权利要求6所述的基于距离
8.根据权利要求7所述的基于距离预测的OLSR协议自适应参数调整方法,其特征在于,步骤51的具体计算过程包括:
9.根据权利要求8所述的基于距离预测的OLSR协议自适应参数调整方法,其特征在于,步骤52的计算公式为:
10.基于权利要求1至9任意一项所述方法的基于距离预测的OLSR协议自适应参数调整系统,其特征在于,所述系统包括:
...【技术特征摘要】
1.一种基于距离预测的olsr协议自适应参数调整方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的基于距离预测的olsr协议自适应参数调整方法,其特征在于,步骤1具体过程包括:
3.根据权利要求2所述的基于距离预测的olsr协议自适应参数调整方法,其特征在于,所述初始hello消息发送时间间隔为2秒。
4.根据权利要求1所述的基于距离预测的olsr协议自适应参数调整方法,其特征在于,步骤2所述修改两跳路由计算方法,具体为:计算两跳路由时,根据“预期邻居断开连接时刻表”,优先选取在下次计算路由的最迟时间之前,一直与当前计算路由的节点保持连接且相对距离最远的邻居节点作为下一跳;所述最迟时间等于下次发送hello消息的时间。
5.根据权利要求1所述的基...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。