System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于节点稳定性的MPR选择方法技术_技高网

一种基于节点稳定性的MPR选择方法技术

技术编号:44733514 阅读:5 留言:0更新日期:2025-03-21 17:58
本发明专利技术涉及无线自组织网络领域,具体涉及一种基于节点稳定性的MPR选择方法。在运行MPR选择算法时,先从稳定的一跳节点中挑选MPR,如果仍然不能覆盖所有二跳节点,再从不稳定的一跳节点中挑选。因此,算法中需要构造稳定的一跳节点集合和不稳定的一跳节点集合。从第一个集合开始,先选择意愿为WILL_ALWAYS的节点,再选择对两跳节点提供唯一通路的节点,接下来按照意愿最优先、可达性其次和连接度再次的筛选顺序选择MPR,直到该集合所能到达的二跳节点全被覆盖。如果还存在其他二跳节点,则继续在第二个集合里,仍按照上述方法进行选择,直到所有二跳节点都被覆盖。本发明专利技术可以有效防止连接中断导致的拓扑信息失效和路由计算问题,减少数据传输时延,降低丢包率。

【技术实现步骤摘要】

本专利技术涉及无线自组织网络领域,针对olsr协议提出了一种基于节点稳定性的mpr选择方法。


技术介绍

1、olsr协议中,每个节点从自己的相邻节点中选择mpr节点。被选为mpr的节点基于自己的相邻节点定期生成并广播tc消息,同时还负责转发从自己的mpr selector节点收到的tc消息。通过这种方式,网络中的所有节点都能获得各个mpr节点生成的tc消息。接下来,每个节点根据这些tc消息中的拓扑信息计算出到网络中所有其他节点的路由。

2、现有mpr选择算法中,并没有考虑到节点的稳定性。如果所选择的mpr节点与其相邻节点的连接很快断开,则会导致如下几个问题:

3、tc消息内容失效:mpr节点生成的tc消息中记录了通过该节点可达的相邻节点,但连接中断可导致这些相邻节点实际上不可达。

4、tc消息发送和转发失败:mpr节点应向相邻节点发送它的tc消息,也应转发从它的mpr selector节点收到的tc消息,但连接中断可能导致它无法收到tc消息,或者所发送和转发的tc消息无法到达相邻节点。因此网络中将会有部分节点收不到这些tc消息,只能使用旧的拓扑信息计算路由。

5、路由计算结果有误:因为上述两个问题的影响,路由计算将会得到非最优的或者错误的结果。对于非最优结果,数据传输时延将会增大;对于错误结果,数据传输丢包率将会增加。


技术实现思路

1、当前olsr协议中的mpr选择算法,没有考虑节点不稳定导致的拓扑失效和传递失败。针对这个问题,本专利技术设计了一种评估节点稳定性的方法,同时修改mpr选择算法,增加稳定性作为选择的参考条件,保证了拓扑信息和路由计算的有效性。

2、本专利技术采用的技术方案为:

3、一种基于节点稳定性的mpr选择方法,包括以下步骤:

4、步骤1,节点和它的相邻节点之间建立起对称连接后,通过收发hello消息感知连接的状态变化,并统计和相邻节点的连接上未收到hello消息的次数,然后计算稳定性度量值sta;

5、步骤2,若sta大于节点稳定性判断的百分比高阈值,则节点为不稳定状态,若sta小于节点稳定性判断的百分比低阈值,则节点为稳定状态,否则节点稳定性维持不变;节点通过hello消息广播自己的稳定性;

6、步骤3,初始化mpr集合为空,构造稳定的一跳节点集合nstable、不稳定的一跳节点集合ninstable和二跳节点集合n2,并计算各个节点的连接度;其中不稳定的一跳节点包括不稳定的节点以及连续未收到hello消息的次数大于等于th_low_for_lost_hello的节点;th_low_for_lost_hello为连续未收到hello消息次数的低阈值;

7、步骤4,在稳定的一跳节点集合nstable中选择意愿为will_always的节点加入mpr集合中,将所选节点从nstable移除,将所选节点对应的二跳节点从n2中移除;如果n2为空,则结束,否则执行步骤5;

8、步骤5,将为n2中的某个节点提供唯一通道的节点加入mpr集合中,将所选节点从nstable移除,将所选节点对应的二跳节点从n2中移除;如果n2为空,则结束,否则执行步骤6;

9、步骤6,计算nstable中各个节点的可达性,即reachability值;从可达性非0的节点中,按照设定规则选出一个节点,然后将所选节点从nstable移除,将所选节点对应的二跳节点从n2中移除;

10、步骤7,重复步骤6,直到nstable为空或其中没有可达性非0的节点,或者n2为空;如果n2为空,则结束,否则执行步骤8;

11、步骤8,在不稳定一跳节点集合ninstable中将意愿为will_always的节点加入mpr集合中,将所选节点从ninstable移除,将所选节点对应的二跳节点从n2中移除;如果n2为空,则结束,否则执行步骤9;

12、步骤9,将为n2中的某个节点提供唯一通道的节点加入mpr集合中,将所选节点从ninstable移除,将所选节点对应的二跳节点从n2中移除;如果n2为空,则结束,否则执行步骤10;

13、步骤10,计算ninstable中各个节点的可达性,即reachability值;从可达性非0的节点中,按照设定规则选出一个节点,然后将所选节点从ninstable移除,将所选节点对应的二跳节点从n2中移除:

14、步骤11,重复步骤10,直到n2为空。

15、进一步的,步骤1中稳定性度量值sta的计算公式为:

16、sta=(scale_factor*nlost1+nlost2)/ntotal*100%

17、式中,nlost1为连续未收到hello消息的次数大于等于th_low_for_lost_hello但小于th_high_for_lost_hello的sym_link类型连接的数量;nlost2为连续未收到hello消息的次数大于等于th_high_for_lost_hello但小于t的sym_link类型连接的数量;t为olsr现有参数neighb_hold_time对参数refresh_interval的倍数;ntotal为sym_link类型的连接总数;th_low_for_lost_hello为连续未收到hello消息次数的低阈值;th_high_for_lost_hello为连续未收到hello消息次数的高阈值。

18、进一步的,步骤6和步骤10中按照设定规则选出一个节点具体为:

19、按照下列顺序选出一个节点:

20、①选择意愿最高的节点;

21、②如果有多个节点的意愿相同,则选择可达性最高的节点;

22、③如果有多个节点的可达性相同,则选择连接度最高的节点;

23、④如果有多个节点的连接度相同,则任意选择一个节点。

24、本专利技术与现有技术相比优点为:

25、与现有的mpr选择算法相比,本专利技术引入了对节点稳定性的处理,优先选择稳定的节点,可以有效防止连接中断导致的拓扑信息失效和路由计算问题,减少了数据传输时延,降低了丢包率。

26、本专利技术统计节点的丢失hello消息达到一定数量的连接数,据此评估节点的稳定性,然后改进mpr的选择算法,优先选择稳定节点作为mpr,从而有效地防止拓扑信息失效,避免了路由计算问题导致的数据传输时延增大和丢包率增加。

本文档来自技高网...

【技术保护点】

1.一种基于节点稳定性的MPR选择方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于节点稳定性的MPR选择方法,其特征在于,步骤1中稳定性度量值STA的计算公式为:

3.根据权利要求1所述的一种基于节点稳定性的MPR选择方法,其特征在于,步骤6和步骤10中按照设定规则选出一个节点具体为:

【技术特征摘要】

1.一种基于节点稳定性的mpr选择方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于节点稳定性的mpr选择方法,其特征在于,步骤1中稳定...

【专利技术属性】
技术研发人员:韦宇解炜俞春祥韩宝磊郭超
申请(专利权)人:中国电子科技集团公司第五十四研究所
类型:发明
国别省市:

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

1