«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (9): 120-127, 135  DOI: 10.19678/j.issn.1000-3428.0059016
0

引用本文  

任智, 周舟, 吴本源, 等. 优化链路状态路由协议的低开销拓扑维护算法[J]. 计算机工程, 2021, 47(9), 120-127, 135. DOI: 10.19678/j.issn.1000-3428.0059016.
REN Zhi, ZHOU Zhou, WU Benyuan, et al. Low-Cost Topology Maintenance Algorithm for Optimized Link State Routing Protocol[J]. Computer Engineering, 2021, 47(9), 120-127, 135. DOI: 10.19678/j.issn.1000-3428.0059016.

基金项目

国家自然科学基金(61379159);长江学者和创新团队发展计划(IRT1299)

通信作者

周舟(通信作者), 硕士研究生

作者简介

任智(1971-), 男, 教授、博士, 主研方向为移动自组织网络;
吴本源, 硕士研究生;
陈加林, 博士研究生

文章历史

收稿日期:2020-07-21
修回日期:2020-09-25
优化链路状态路由协议的低开销拓扑维护算法
任智 , 周舟 , 吴本源 , 陈加林     
重庆邮电大学 通信与信息工程学院, 重庆 400065
摘要:优化链路状态路由(OLSR)协议利用多点中继(MPR)节点周期性地泛洪拓扑控制(TC)消息,以实现网络拓扑发现与维护,但其增加了网络的控制开销,并且当拓扑较稳定时固定的泛洪周期导致网络带宽浪费。针对该问题,提出OLSR的低开销拓扑维护(LCTM-OLSR)算法。通过缩减MPR节点个数减少TC消息产生的数量和转发次数,同时对比上一次发送周期MPR选择集的变动情况,在稳定量和变动量中选择较小量作为TC消息进行发送。在此基础上,根据网络拓扑的变化情况动态调整TC消息的发送周期。仿真结果表明,相比传统OLSR和HTR-OLSR算法,LCTM-OLSR算法能够有效降低网络的控制开销和端到端时延,提高网络的吞吐量。
关键词优化链路状态路由协议    拓扑控制消息    多点中继    移动自组织网络    拓扑维护    
Low-Cost Topology Maintenance Algorithm for Optimized Link State Routing Protocol
REN Zhi , ZHOU Zhou , WU Benyuan , CHEN Jialin     
School of Communication and Information Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065, China
Abstract: The Optimized Link State Routing (OLSR) protocol uses Multipoint Relay(MPR) nodes to periodically flood Topology Control (TC) messages for network topology discovery and maintenance.This increases the cost of network control, as the fixed flooding period leads to the waste of network bandwidth when the topology is stable.To this end, a low-cost topology maintenance algorithm, LCTM-OLSR, is proposed for optimized link state routing.This algorithm reduces the number of generated TC messages and the number of forwarding times by reducing the number of MPR nodes.At the same time, by analyzing the changes in the MPR selection set relative to that of the last transmission cycle, the smaller one of the invariant and the variable is selected as the TC message to send.On this basis, the sending cycle of TC messages is dynamically adjusted according to the changes in network topology.Experimental results show that the proposed algorithm can effectively reduce the network control overhead and end-to-end delay, and improve the network throughput.
Key words: Optimized Link State Routing(OLSR) protocol    Topology Control(TC) message    Multipoint Relay(MPR)    Mobile Ad Hoc Network(MANET)    topology maintenance    

开放科学(资源服务)标志码(OSID):

0 概述

移动自组织网络(Mobile Ad Hoc Network,MANET)是一种移动无线设备的自配置动态网络[1],其由一些可自由移动的节点构成,这些节点间通过无线连接进行通信,不需要任何基础网络架构。在MANET中,节点可以任意改变移动的方向和自身位置,使整个网络呈现一种动态的网络拓扑[2-3]。由于MANET路由协议能实现网络的自我创建、组织和管理而无需人为参与,因此其被广泛应用于车联网、无人机和物联网等领域[4-6]

优化链路状态路由(Optimized Link State Routing,OLSR)协议是一种分布式主动路由协议[7],其通过在一跳邻居范围内选取多点中继(Multipoint Relay,MPR)节点来减少拓扑控制消息的发送和转发,进而通过HELLO和拓扑控制(Topology Control,TC)消息发送来实现链路状态和拓扑信息的全网分发[8]。OLSR协议需要频繁地交换控制信息以维持全网拓扑更新。相比动态源路由(Dynamic Source Routing,DSR)协议和无线自组网按需平面距离向量(Ad Hoc On-Demand Distance Vector,AODV)路由协议,OLSR协议具有更高的网络吞吐量和更低的端到端时延,因此适用于网络规模大、节点数目多的大型密集网络[9-11]

为解决OLSR协议拓扑发现和维护过程中开销过大的问题,文献[10]将MPR集的选择依赖条件扩展到三跳邻居的本地数据库,每个MPR候选节点都被赋予新的信息来进行MPR的选取,从而进一步减少TC消息的冗余转发。文献[12-13]提出使用全局最优MPR集代替局部最优MPR集,优先将已经被其他节点选为MPR的一跳邻居节点选为MPR节点,在不增加控制开销的前提下减少网络中TC消息的数量。文献[14]将传统MPR选择和蚁群算法相结合,在MPR集选取过程中添加信息素并引入补偿-惩罚规则,将节点的当前移动状态信息加入计算过程,有效地降低了MPR集中的冗余。

在稳定性方面,文献[15]提出一种启发式MPR选择算法,节点间通过HELLO消息交互移动状态,优先选择移动性较小的节点作为MPR节点,提升链路的保持时间。文献[16]在HELLO包中加入节点的位置信息,在MPR选择时考虑链路稳定性,减少MPR节点切换次数,增加路由表项的有效时间。PRAJAPATI等[17]在MPR集选择过程中引入能量因素,优先将剩余能量高的节点选为MPR节点,在一定程度上延长网络整体寿命,但选出的MPR节点个数不是最少的。

文献[18]基于OLSR协议提出一种残差预测优化链路状态路由(HTR-OLSR)协议,在相邻节点的状态信息未知时,引入残差预测算法,从其他节点获取所需信息,并将原始协议中的HELLO-Interval和TC-Interval分别下调到1和3。通过频繁获取节点数据信息来降低节点能量级预测时的不准确性。该算法在一定程度上提高了节点寿命和网络吞吐量,但增大了网络开销。

OLSR协议通过广播机制发现节点间链路信息和网络拓扑可能产生的冗余重传和无线电资源浪费等问题,SOUIDI等[19]提出一种基于地理转发规则的OLSR协议。该协议使用节点的地理位置信息将网络分为不同的虚拟区域,在广播控制消息时避免其在不同区域间重复传输。该算法有效减少TC消息的冗余传播,但区域划分和区域间通信增加了算法实现的复杂度。

本文提出一种针对优化链路状态路由的低开销拓扑维护(Low Cost Topology Maintenance based on Optimized Link State Routing,LCTM-OLSR)算法。该算法去除MPR集选取时存在的冗余,进而根据节点MPR选择集的变化情况,在稳定量与变动量之间截取最小量作为TC消息内容进行发送。在此基础上,利用历史变动信息动态调整TC消息的发送间隔,实现网络拓扑的低开销维护。

1 OLSR协议的拓扑发现与维护机制

通过周期性地泛洪TC消息以实现OLSR协议的拓扑发现和维护,相比传统LSR协议,OLSR协议提出的MPR机制极大地减少了TC消息的发送内容和转发数量。由于节点的TC消息需要在全网范围内转发,因此发送TC消息造成的开销将直接影响网络性能。

1.1 TC消息的产生及其交互机制

TC消息发送前需进行MPR集的计算,传统OLSR协议中每个节点独立进行MPR集的选取,选取过程应遵循以下规则:1)源节点的MPR集应当只能从本节点的一跳对称邻居中选取;2)选择出来的MPR集能覆盖本节点所有的两跳邻居,并且MPR集中的元素个数要尽可能少。

OLSR协议中只有当节点的MPR选择集不为空时才允许发送TC消息,消息内容为MPR选择集中节点的地址。整个网络中所有的节点都能接收并处理该消息,但是只有MPR节点才能转发TC消息。参照RFC3626[8]相关协议规范,TC消息的收发和相关处理流程按如下步骤进行。

步骤1   节点判断自己的MPR选择集是否为空,当其不为空时,将MPR选择集中的内容加入到TC消息的消息体中进行广播。

步骤2   当节点收到TC消息后,如果重复表中有一个表项的消息源地址与TC消息的源地址相同,并且其消息序号大于等于当前TC消息的消息序号,说明已经处理过更新的TC消息,则丢弃该消息不作处理,否则,执行步骤3。

步骤3   如果拓扑表中存在表项的“T_last”与TC消息源发送者的地址相同并且对应的序号大于TC消息中的序号,表明该消息已过期,丢弃不作处理,否则,执行步骤4。

步骤4   如果拓扑表中存在表项的“T_last”和TC消息的源发送者地址相同,则按TC消息中的内容对其进行更新;否则,添加新的条目,其“T_last”为TC消息的源地址,“T_dest”为TC消息的内容部分。

步骤5   当TC消息的上一跳地址在MPR选择集中并且消息中的“TTL”字段的值大于等于1时,先将该字段的值减1,进而将该TC消息进行广播转发。

1.2 问题描述

在OLSR的拓扑维护过程中,节点在收到HELLO消息后计算自己的MPR集,当TC消息发送定时器到期时,对自己MPR选择集中的地址进行广播,被其MPR节点进一步转发,直至全网,从而实现了节点本地拓扑信息的全网通告。

1.2.1 传统MPR选择算法

在OLSR协议中,MPR集是采取贪心策略进行计算的,每个节点依次将那些连接两跳邻居数目最多的一跳邻居加入MPR集,直到选出的MPR集能够覆盖所有两跳邻居为止。广播中继泛洪如图 1所示,节点S按传统MPR选择算法计算的MPR集为{b,c,d,f},而实际最小MPR集为{b,d,f},存在冗余。由于只有MPR节点才能发送和转发TC消息,因此MPR集中元素增加将会导致更多的节点发送TC消息,以及TC消息的转发次数会增多,从而造成控制开销增大。

Download:
图 1 广播中继泛洪示意图 Fig. 1 Schematic diagram of broadcast relay flooding
1.2.2 TC消息冗余发送

OLSR协议中由于TC消息的发送周期固定,并且每个周期发送的内容相互独立,因此可能造成拓扑信息冗余发送和带宽资源浪费。拓扑变动前后对比如图 2所示。

Download:
图 2 拓扑变动前后对比 Fig. 2 Comparison before and after topology change

图 2可以看出,带有阴影部分的节点为该网络拓扑下的MPR节点,只有这些节点才产生和转发拓扑控制消息。根据图 2中拓扑变动前后关系计算每个节点的MPR选择集如表 1所示。

下载CSV 表 1 拓扑变动前后节点的MPR选择集 Table 1 MPR selection set of nodes before and after topology change

图 2表 1可以看出,当网络拓扑变化时网络中MPR集的依赖关系也会相应改变。相比网络拓扑变动前,节点A的MPR选择集增加了一个元素;节点D改变了一个元素;节点B和节点E的MPR选择集保持不变。按照OLSR原始协议的TC发送流程,节点A当前发送的TC消息中将包含{B,C,D,E,F,H}的地址,其中{C,D,E,F,H}在上一周期中已经发送过,因此重复发送将导致网络带宽浪费;节点D的MPR选择集变化较小,如果全部发送则会造成网络控制开销增大。

原始协议中TC消息采用固定周期进行发送,将导致以下两方面的问题:1)当网络拓扑变动时,固定的发送间隔不能及时将拓扑变动通告全网,可能导致网络拓扑更新不及时使丢包率增大;2)当节点周围网络拓扑较稳定时,较短的发送周期将会导致网络控制开销和端到端时延增大。

2 LCTM-OLSR算法

为了解决上述问题,本文提出一种低开销的LCTM-OLSR算法。该算法首先去除传统MPR选择算法中存在的冗余,减少了TC消息的产生数量和转发次数;其次LCTM-OLSR算法根据网络拓扑的变动情况自适应地上下调整TC发送间隔以实现网络拓扑维护,并且当节点周围拓扑变动较小时,采用发送变量信息代替全量信息以减少拓扑信息的冗余发送。

2.1 算法流程

综上所述,本文提出一种低开销的拓扑维护算法,该算法流程如图 3所示。

Download:
图 3 LCTM-OLSR算法流程 Fig. 3 Procedure of LCTM-OLSR algorithm

LCTM-OLSR算法先通过最小MPR选择机制,将一跳邻居按照连接度从小到大实行退出MPR选择,进而将关键的一跳邻居节点依次加入MPR集,去除传统MPR选择算法中存在的冗余。在当前MPR选择集不为空时,节点判断当前MPR选择集和上一发送周期相比是否变动,相应地发送TC_KEEP、TC_NORM、TC_DEL消息,并动态地调整发送周期的大小,从而降低网络拓扑信息的冗余发送,提高网络的适应能力。

LCTM-OLSR算法在控制开销较少的情况下使网内的每个节点掌握全网的拓扑信息,由于无线信道的特性,易受到干扰而丢包,可能造成部分TC消息丢失而产生错误迭代。因此在每隔5个TC发送周期后,需发送一次正常的TC消息,即TC重置消息,进行全网拓扑矫正。当有新节点加入时,由于只能获取部分网络拓扑信息,当其有数据进行传输时可先将数据包发送至MPR邻居,然后由MPR邻居转发至全网,待TC重置消息到来后便可获得全网拓扑进行正常流程通信。

2.2 算法设计

为了使全网节点掌握自身的拓扑信息,网络中的MPR节点会周期性地泛洪TC消息,消息内容由所有将自己选为MPR一跳邻居的地址组成并且只能由该节点选择的MPR节点转发。

2.2.1 最小MPR集选择机制

传统MPR选择算法采用贪心策略计算MPR集,以一跳邻居连接的两跳连接度作为MPR选择的唯一依据,没有考虑反向两跳邻居和一跳邻居间的关联性,可能产生冗余的MPR节点,影响网络性能。广播中继泛洪拓扑扁平化如图 4所示。

Download:
图 4 广播中继泛洪拓扑扁平化 Fig. 4 Topological flattening of broadcast relay flooding

在上述分析的基础上,本节提出一种最小化的MPR集选取策略,以图 4为例最小化MPR集的选择步骤如下:

步骤1   统计一跳邻居和两跳邻居的连接关系,可得f={H},a={A,B},b={A,B,C,D},c={B,C,D,E,F},d={E,F,G},e={G},g={}。根据连接两跳邻居的个数从小到大将一跳邻居进行排序并删除连接度为0的节点,可得排序后的一跳邻居为$ {N}_{1}\left(i\right) $={e,f,a,d,b,c}。

步骤2   对两跳邻居$ {N}_{2}\left(i\right) $={A,B,C,D,E,F,G,H}分别计算其连接一跳邻居的数目,得关联度Link={2,3,2,2,2,2,2,1}。

步骤3   如果$ {N}_{2}\left(i\right) $为空,则执行步骤5;否则将$ {N}_{1}\left(i\right) $中的节点按从左到右的顺序试着退出MPR的选取,判断将该节点连接$ {N}_{2}\left(i\right) $中节点对应的Link数组中的计数值减1后,对应元素减完后的值是否都大于等于1。如果是,说明该节点为冗余节点,将其从$ {N}_{1}\left(i\right) $中剔除,Link数组中对应的元素减1,并继续执行步骤3;否则执行步骤4。

步骤4   将该节点加入MPR集并将其从$ {N}_{1}\left(i\right) $中剔除,将该节点连接的两跳邻居从$ {N}_{2}\left(i\right) $中剔除,继续执行步骤3。

步骤5   此时$ {N}_{2}\left(i\right) $为空,最小MPR集计算结束。

步骤3将一跳邻居按连接度从小到大的顺序尝试退出MPR集选取,针对图 4中的拓扑,一跳邻居g、e、a、c依次退出MPR的选取,节点f、d、b依次被选为MPR节点,此时选出的MPR集{b,d,f}是最小MPR集。

2.2.2 TC消息自适应发送机制

TC消息自适应发送机制分为发送内容自适应发送机制和发送周期自适应发送机制。

1) TC消息内容自适应发送机制

在自组织网络中,当前TC发送周期的MPR选择集由在上一发送周期的MPR选择集的基础上减去删减量再加上新增量组成,如式(1)所示:

$\xi_{\mathrm{cur}}=\xi_{\text {last }}-\xi_{\text {del }}+\xi_{\text {add }}=\xi_{\text {keep }}+\xi_{\text {add }} $ (1)

其中:ξlast为上一周期MPR选择集中的内容;ξkeepξaddξdel分别为当前MPR选择集相较于上一周期的不变、增加和删减部分,ξkeep=ξcurξlast。由式(1)可知,当网络拓扑变动不剧烈时,当前TC消息内容和上次发送的内容会有较大的冗余,如果重复发送会造成较多的网络带宽浪费。针对此问题,LCTM-OLSR算法提出了TC内容自适应发送机制,改进后TC消息内容如式(2)所示:

$ \xi _{\mathrm{cur}}=\left\{\begin{array}{c}{\xi }_{\mathrm{k}\mathrm{e}\mathrm{e}\mathrm{p}}+{\xi }_{\mathrm{a}\mathrm{d}\mathrm{d}},{\xi }_{\mathrm{k}\mathrm{e}\mathrm{e}\mathrm{p}}\le {\xi }_{\mathrm{d}\mathrm{e}\mathrm{l}}\\ {\xi }_{\mathrm{d}\mathrm{e}\mathrm{l}}+{\xi }_{\mathrm{a}\mathrm{d}\mathrm{d}},{\xi }_{\mathrm{k}\mathrm{e}\mathrm{e}\mathrm{p}}>{\xi }_{\mathrm{d}\mathrm{e}\mathrm{l}}&\end{array}\right. $ (2)

当前周期TC消息内容可根据网络拓扑的变动情况而动态调整,按MPR选择集的变动情况将TC消息分为3种类型,具体发送步骤如以下2种情况:

(1) 当节点周围拓扑发生变动时,如果ξdel < ξkeep,则由删减量和新增量组成TC_DEL消息进行发送;反之,则由不变量和新增量组成TC_NORM消息进行发送。

(2) 当节点周围拓扑保持不变时,发送消息体为空的拓扑保持消息TC_KEEP,节点接收该消息后更新拓扑表项的生存时间。

为适应改进机制变动,TC消息包格式将Reserved字段划分为TC_Type和Del_len两部分,分别表示当前TC消息的类型和消息体中前Del Len个地址为删减部分,其中Del_len字段的值在消息类型为TC_KEEP和TC_NORM时为0,改进后的TC消息格式如图 5所示。

Download:
图 5 改进后的TC消息包格式 Fig. 5 Improved TC message packet format

对比图 2(a)图 2(b)的拓扑变动,在变动后原始协议和改进协议发送的TC消息内容如表 2所示。

下载CSV 表 2 拓扑变动后原始和改进协议TC消息内容 Table 2 Original and improved protocol TC messages after topology change

表 2可以看出,拓扑变动后只有A、B、D、E 4个节点的MPR选择集不为空,按原始协议它们需要将自己MPR选择集中的地址装入TC消息中发送出去。按照改进机制,节点D的MPR选择集的减少量为{E},不变量为{A,K,M},增加量为{C},减少量小于不变量,故D节点当前发送内容为{E,C};同理,节点A只需发送增加量{B},节点B和E的MPR选择集没有发生变化,只需要发送消息体为空的TC_KEEP消息即可,有效地降低了拓扑维护时的控制开销。

2) TC消息周期自适应发送机制

在RFC3626[8]中,OLSR协议TC消息的发送周期为恒定值$ {T}_{\mathrm{m}\mathrm{i}\mathrm{d}}=5 ~\mathrm{s} $,当网络拓扑变动较频繁时,不能及时更新网络拓扑信息而导致丢包率增大;当网络拓扑较稳定时,较短的发送周期将导致网络控制开销增大,因此固定TC发送周期不能很好地适应自组织网络中网络拓扑的变动。

基于此,LCTM-OLSR算法将当前TC发送间隔(TC Emission Interval,TCEI)以原始发送周期5 s为中点划分为5个层级,从小到大依次为$ {T}_{\mathrm{m}\mathrm{i}\mathrm{n}}\mathrm{、}{T}_{\mathrm{l}\mathrm{e}\mathrm{s}\mathrm{s}}\mathrm{、} $ $ {T}_{\mathrm{m}\mathrm{i}\mathrm{d}}\mathrm{、}{T}_{\mathrm{l}\mathrm{o}\mathrm{n}\mathrm{g}}\mathrm{、}{T}_{\mathrm{m}\mathrm{a}\mathrm{x}} $,并且网络拓扑变动越频繁,TC值设置得越小,由历史上的发送周期大小和链路信息保持状态综合决定当前TC消息的发送频率。其中,触发TC消息发送周期变动的条件为:

(1) 当节点MPR选择集变动,即MPR选择集增加或减少元素时,如果上一次的发送周期$T {}_{\mathrm{l}\mathrm{a}\mathrm{s}\mathrm{t}}^{\mathrm{C}} $ > Tmid,表明历史上至少一个周期内节点周围网络拓扑未变动,此时网络正由较稳定转变为不稳定状态,下一次的发送周期应重置为$T {}_{\mathrm{n}\mathrm{e}\mathrm{x}\mathrm{t}}^{\mathrm{C}} $=Tmid;否则$T {}_{\mathrm{n}\mathrm{e}\mathrm{x}\mathrm{t}}^{\mathrm{C}} $$T {}_{\mathrm{l}\mathrm{a}\mathrm{s}\mathrm{t}}^{\mathrm{C}} $的基础上下降一个层级。

(2) 当节点MPR选择集在一个发送周期内维持不变时,如果此时$T {}_{\mathrm{l}\mathrm{a}\mathrm{s}\mathrm{t}}^{\mathrm{C}} $ < Tmid,表明历史上节点周围拓扑较不稳定,并且此时网络正由不稳定向稳定状态转变,则下一次发送周期$T {}_{\mathrm{n}\mathrm{e}\mathrm{x}\mathrm{t}}^{\mathrm{C}} $应该重置为Tmid;否则$T {}_{\mathrm{n}\mathrm{e}\mathrm{x}\mathrm{t}}^{\mathrm{C}} $$T {}_{\mathrm{l}\mathrm{a}\mathrm{s}\mathrm{t}}^{\mathrm{C}} $的基础上上调一个层级。

在拓扑关系变动时,为了使网络中其他节点感知到拓扑改变,MPR节点应尽快将改变后的拓扑信息发送出去。TC消息快速发送时间分析如图 6所示。

Download:
图 6 TC消息快速发送时间分析 Fig. 6 Analysis on the fast sending time of TC messages

图 6可以看出,t1为上次发送TC消息的时间,t2为当前时间,t3为当前时间加上变动后T C的时间点,t4为预计下次发送时间。假设节点在t2时刻MPR选择集发生改变,按LCTM-OLSR算法将TC下一周期发送时长下调一级,如果t3 < t4,为尽快将变化后的拓扑信息发送出去,可将下一次的TC消息从t4时刻提前到t3时刻发送。

2.3 LCTM-OLSR算法的性能分析

在自组织网络中由于网络拓扑的动态变化,影响网络性能指标的因素主要有网络中节点的总数、节点的发包速率、包的大小、节点的移动速度等[20]。在OLSR协议中,路由信息主要通过节点周期性地交互HELLO和TC消息来进行更新维护。网络相关运行参数的定义如下:

N:整个自组织网络中节点的总数;

NMS:网络中选取MPR节点的总数,其值与网络规模N和MPR选择算法相关;

Nm:网络中每个节点平均选取MPR节点的个数;

$S {}_{\mathrm{h}\mathrm{e}\mathrm{l}\mathrm{l}\mathrm{o}}^{} $:发送的HELLO消息的单条平均长度;

$S {}_{\mathrm{T}\mathrm{C}}^{} $:发送的TC消息的单条平均长度;

Thello:HELLO消息的发送周期;

TTC:TC消息的发送周期。

因此,自组织网络运行时网络中某个节点i在单位时间内总共产生的HELLO消息长度如式(3)所示:

$ L_{\text {hello }}=S_{\text {hello }} \times \frac{1}{T_{\text {hello }}} $ (3)

同理,MPR节点j单位时间内可产生TC消息的长度如式(4)所示:

$ L_{\mathrm{S}_{-} \mathrm{TC}}=S_{\mathrm{TC}} \times \frac{1}{T_{\mathrm{TC}}} $ (4)

考虑到多点中继,同一条TC消息需要向其Nm个MPR邻居节点进行转发,因此在单位时间内MPR节点j需转发总的TC消息长度为:

$ L_{\mathrm{T}_{-} \mathrm{TC}}=\left(N_{\mathrm{Ms}}-1\right) \times N_{\mathrm{m}} \times S_{\mathrm{TC}} \times \frac{1}{T_{\mathrm{TC}}} $ (5)

只有MPR节点才产生和转发TC消息,那么单位时间内整个自组织网络所产生的总路由开销为:

$ \begin{array}{l} {T_{\rm{o}}} = \sum\limits_{i = 1}^N {{L_{{\rm{hell}}}}} + \sum\limits_{j = 1}^{{N_{{\rm{MS}}}}} {\left( {{L_{{{\rm{S}}_ - }{\rm{TC}}}} + {L_{{{\rm{T}}_ - }{\rm{TC}}}}} \right)} = \sum\limits_{i = 1}^N {{S_{{\rm{hell}}}}} \times \frac{1}{{{T_{{\rm{hell}}}}}} + \\ \sum\limits_{j = 1}^{{N_{{\rm{MS}}}}} {\left( {1 + \left( {{N_{{\rm{MS}}}} - 1} \right) \times {N_{\rm{m}}}} \right)} \times {S_{{\rm{TC}}}} \times \frac{1}{{{T_{{\rm{TC}}}}}} \end{array} $ (6)

由式(6)可知,降低HELLO和TC消息的长度或减少网络中MPR节点个数均可以降低OLSR协议的控制开销。本文提出LCTM-OLSR算法采用TC消息自适应发送的方法降低了$S {}_{\mathrm{T}\mathrm{C}}^{} $,增大了TTC,并且最小MPR集选择机制有效地减少了网络中MPR节点的个数,有效地降低了OLSR协议拓扑维护的控制开销,提升了网络的吞吐量。

3 实验与结果分析

选取标准OLSR协议,参考文献[18]中的HTR-OLSR协议与本文的LCTM-OLSR协议作为分析比较对象,通过仿真实验对比分析它们之间的发包成功率、端到端时延、吞吐量。

3.1 仿真参数设置

本文使用Windows XP平台上OPENT Modeler 14.5仿真软件,对OLSR、HTR-OLSR和LCTM-OLSR协议进行仿真对比,设置5个仿真场景。假设实验中每个节点的发射和接收功率都相同,节点的最大通信距离为200 m,TC消息的发送周期变动范围{TminTlessTmidTlongTmax}在本次仿真实验中分别设置为{3 s,4 s,5 s,6 s,7 s}。仿真具体参数如表 3所示,本实验每个场景实验做5次,取实验结果的平均值,主要考察不同移动速度对网络性能的影响。

下载CSV 表 3 仿真参数设置 Table 3 Simulation parameters setting
3.2 仿真结果分析 3.2.1 吞吐量

OLSR、HTR-OLSR和LCTM-OLSR算法的吞吐量对比如图 7所示。LCTM-OLSR算法的吞吐量比文献[18]中的HTR-OLSR算法平均提高了7.84%,比标准OLSR平均提高了10.14%。因最小MPR选择算法减少了MPR节点个数,从而减少了TC消息的发送和转发次数,同时TC自适应发送机制通过对发送内容进行优化,减少了网络控制开销,提高了吞吐量。当节点速度加快时,网络拓扑变动加快,数据包丢失概率增大,吞吐量明显下降。此时LCTM-OLSR算法会自适应地降低TC消息发送间隔,及时更新变化后的网络拓扑,进而提高数据包接收的成功率;并且该算法TC数据包比其他两种算法小,有效降低了冗余拓扑信息的传输,所以在节点移动速度加快时,该算法相较于其他两种算法能够一直维持较高的网络吞吐量。

Download:
图 7 OLSR、HTR-OLSR和LCTM-OLSR算法吞吐量对比 Fig. 7 Throughput comparison of OLSR, HTR-OLSR and LCTM-OLSR algorithms
3.2.2 端到端平均时延

OLSR、HTR-OLSR和LCTM-OLSR算法的端到端时延对比如图 8所示。改进后的LCTM-OLSR算法具有更低的端到端传输时延,相比HTR-OLSR算法平均降低了10.24%,比标准OLSR平均降低了19.87%。当节点移动速度加快时,网络拓扑变动更频繁,此时LCTM-OLSR算法会自适应地加快TC消息的发送频率,使网络中的节点能更及时地获取到其他节点最新的拓扑信息,从而计算出当前时间到达目的节点的最佳路由,因而LCTM-OLSR算法仍然能够维持较低的端到端时延。HTR-OLSR算法虽然通过减少HELLO和TC消息的发送间隔能在一定程度上降低端到端传输时延,由于该算法在MPR选取时考虑节点的能量因素,使节点计算出的路径不是最短,导致时延增大。

Download:
图 8 OLSR、HTR-OLSR和LCTM-OLSR算法端到端时延对比 Fig. 8 End-to-end delay comparison of OLSR, HTR-OLSR and LCTM-OLSR algorithms
3.2.3 发包成功率

OLSR、HTR-OLSR和LCTM-OLSR算法的发包成功率对比如图 9所示。LCTM-OLSR算法的发包成功率高于其他两种算法,相比文献[18]中的HTR-OLSR算法平均提高了3.37%,比标准OLSR平均提高了8.63%,并且当节点移动速度变快时三种算法的发包成功率均明显下降。当节点移动速度加快时,网络拓扑变化加快,节点的拓扑信息和路由信息的有效时间缩短,从而导致数据包丢包率增加。LCTM-OLSR算法根据节点周围网络拓扑的历史变动信息,自适应地调节TC消息的发送周期,在网络拓扑变动频繁的情况下通过加快TC消息的发送,及时更新节点路由表中因为拓扑变动而失效的路由表项,从而有效提升了数据包的发包成功率。

Download:
图 9 OLSR、HTR-OLSR和LCTM-OLSR算法发包成功率对比 Fig. 9 Contract success rate comparison of OLSR, HTR-OLSR and LCTM-OLSR algorithms
4 结束语

本文通过对OSLR协议中MPR集的选取过程进行优化,提出一种低开销拓扑维护算法。该算法在稳定量与删减量中选择较小量与新增量组成TC消息进行发送,并根据拓扑变动消息能自适应地调整TC消息发送。实验结果表明,相比OLSR和HTR-OLSR算法,LCTM-OLSR算法减少了网络控制开销同时提高了网络吞吐量和网络应对拓扑变化的适应能力。下一步将对邻居发现机制进行研究以减少网络中因邻居发现而产生的冗余,提高网络性能。

参考文献
[1]
MOHANDAS G, SILAS S, SAM S. Survey on routing protocols on mobile ad hoc networks[C]//Proceedings of 2013 International Multi-Conference on Automation Computing, Communication, Control and Compressed Sensing. Washington D.C., USA: IEEE Press, 2013: 514-517.
[2]
PATHAK S, DUTTA N, JAIN S. An improved cluster maintenance scheme for mobile ad hoc networks[C]//Proceedings of 2014 International Conference on Advances in Computing, Communications and Informatics. Washington D.C., USA: IEEE Press, 2014: 2117-2121.
[3]
MATRE V, KARANDIKAR R. Multipath routing protocol for mobile ad hoc networks[C]//Proceedings of 2016 Symposium on Colossal Data Analysis and Networking. Washington D.C., USA: IEEE Press, 2016: 1-5.
[4]
FAROOQ W, KHAN M A, REHMAN S, et al. A survey of multicast routing protocols for vehicular ad hoc networks[J]. International Journal of Distributed Sensor Networks, 2015, 11(8): 1-12.
[5]
BEKMEZCI İ, SAHINGOZ O K, TEMEL S. Flying Ad-hoc Networks (FANETs): a survey[J]. Ad Hoc Networks, 2013, 11(3): 1254-1270. DOI:10.1016/j.adhoc.2012.12.004
[6]
WANG H R, XU T R, HUANG S Y. Performance analysis of ad hoc routing protocol under two node configuration models[J]. Journal of Chinese Computer Systems, 2012, 33(5): 1068-1074. (in Chinese)
王宏瑞, 徐汀荣, 黄胜宇. Ad Hoc路由协议在两种节点配置模型下的性能分析[J]. 小型微型计算机系统, 2012, 33(5): 1068-1074. DOI:10.3969/j.issn.1000-1220.2012.05.027
[7]
LOUTFI A, ELKOUTBI M. Enhancing performance OLSR in MANET[C]//Proceedings of Multimedia Computing and Systems. Washington D.C., USA: IEEE Press, 2012: 505-509.
[8]
CLAUSEN T, JACQUET P. Rfc3626: Optimized Link State Routing protocol (OLSR)[EB/OL]. [2020-06-15]. http://www.ietf.org/rfc/rfc3626.
[9]
YAN C F. Research on OLSR routing protocol of mobile ad-hoc networks[J]. Information and Communication, 2019(10): 177-179. (in Chinese)
闫朝峰. 移动自组网OLSR路由协议研究[J]. 信息通信, 2019(10): 177-179.
[10]
BOUSHABA A, BENABBOU A, BENABBOU R, et al. Multi-point relay selection strategies to reduce topology control traffic for OLSR protocol in MANETs[J]. Journal of Network & Computer Applications, 2015, 53: 91-102.
[11]
REDDY T S, DEVSEKHAR V, RAVI A. A study of dynamic routing protocols in mobile adhoc networks[J]. Information and Communication, 2015, 5(1): 23-27.
[12]
AL-AREEQI W A J, ISMAIL M, NORDIN R, et al. EMA-MPR: energy and mobility-aware multi-point relay selection mechanism for multipath OLSRv2[C]//Proceedings of the 13th Malaysia International Conference on Communications. Washington D.C., USA: IEEE Press, 2017: 1-10.
[13]
CHEN L, REN Z, GE L J, et al. An adaptive MPR set selection algorithm based on optimized link state routing protocol[J]. Computer Engineering, 2017, 43(10): 68-71, 76. (in Chinese)
陈炼, 任智, 葛利嘉, 等. 基于优化链路状态路由协议的自适应MPR集选择算法[J]. 计算机工程, 2017, 43(10): 68-71, 76.
[14]
ZHANG H L, XIONG Y, MIAO F Y. Improved ant colony optimization algorithm for the selection of minimum MPR set[J]. Journal of Chinese Mini-Micro Computer Systems, 2012, 33(1): 126-129. (in Chinese)
张禾良, 熊焰, 苗付友. 最小MPR集选取问题的改进蚁群优化算法[J]. 小型微型计算机系统, 2012, 33(1): 126-129.
[15]
MOSTAFAEI Y, PASHAZADEH S. An improved OLSR routing protocol for reducing packet loss ratio in ad-hoc networks[C]//Proceedings of the 8th International Conference on Information and Knowledge Technology. Washington D.C., USA: IEEE Press, 2016: 12-17.
[16]
LI C, ZHENG L, XIE W, et al. Ad hoc network routing protocol based on location and neighbor sensing[C]//Proceedings of 2018 IEEE International Conference on Computer and Communication Engineering Technology. Washington D.C., USA: IEEE Press: 2018: 1-5.
[17]
PRAJAPATI S, PATEL N, PATEL R. Optimizing performance of OLSR protocol using energy based MPR selection in MANET[C]//Proceedings of the 5th International Conference on Communication Systems and Network Technologies. Washington D.C., USA: IEEE Press, 2015: 268-272.
[18]
SAKTHIVEL M, PALANISAMY V. Enhancement of accuracy metrics for energy levels in MANETs[J]. Asian Journal of Information Technology, 2014, 33(9): 545-551.
[19]
SOUIDI M, HABBANI A, BERRADI H, et al. Geographic forwarding rules to reduce broadcast redundancy in mobile ad hoc wireless networks[J]. Personal and Ubiquitous Computing, 2019, 23: 765-775. DOI:10.1007/s00779-018-1137-2
[20]
BOUKERCHE A, TURGUT B, AYDIN N, et al. Routing protocols in ad hoc networks: a survey[J]. Computer Networks, 2011, 55(13): 3032-3080. DOI:10.1016/j.comnet.2011.05.010