电子科技大学学报(自然版)  2015, Vol. 44 Issue (3): 403-409
面向DTN感染路由协议的缓存管理算法    [PDF全文]
王慧强, 胡海婧, 朱金美, 张淯舒    
哈尔滨工程大学计算机科学与技术学院 哈尔滨 150001
摘要:延迟容忍网络(DTN)是一种面向移动与极端网络环境的特殊无线自组织网络。相对于传统网络,DTN中节点需要长时间存储/携带消息,进而实现消息的转发,从而使得节点缓存成为影响网络路由性能的重要因素。为优化Epidemic路由协议中缓存管理机制,避免由活跃消息丢弃所引起的路由效率降低的情况,提出了一种基于消息生存属性的缓存管理 (MPBBM)算法。该算法通过综合分析消息转发次数与生存时间等因素对消息传递的影响,制定了优化的缓存替换策略,使得缓存替换过程中有限保留新产生的消息、丢弃即将失效的消息。仿真结果表明,相比于其他缓存管理算法,MPBBM算法能够有效地提升消息交付率,并显著地降低投递时延与网络开销。
关键词缓存管理     DTN     感染路由协议     MPBBM    
Message-Period-Based Buffer Management Algorithm for Epidemic Routing Protocol of DTN
WANG Hui-qiang, HU Hai-jing, ZHU Jin-mei, ZHANG Yu-shu    
College of Computer Science and Technology, Harbin Engineering University Harbin 150001
Abstract: Unlike traditional networks, the nodes in delay tolerant network (DTN) may storage and carry messages for a long time and then forward them somewhere, which makes the buffer sizes of the nodes become an important factor of routing efficiency. For the purposes of optimizing buffer and replacement strategy and avoiding active messages discarded, a message-period-based buffer management (MPBBM) algorithm is proposed. According to the comprehensive analysis of forwarding amount and time to live (TTL) of the messages, MPBBM forms a buffer replacement strategy to make new messages stored and inactive messages dropped. The simulation results show that MPBBM, comparing with other algorithms, can improve the delivery rate and reduce the network overhead.
Key words: buffer management     DTN     Epidemic     MPBBM    

近年来,随着移动自组织网络、空天网络等新兴网络类型的兴起,延迟容忍网络(delay tolerant network,DTN)[1]成为了网络研究领域中的热点,它是一种为实现异构不稳定网络连接而提出的新型网络架构[2]。传统的Internet网络是基于TCP/IP协议簇,该协议的有效运行通常基于端到端存在持续连接,以及较低丢包率、较低传输延时等基本假设之上[3]。然而目前具有无线通信功能的便携智能设备的大量涌现,推动了DTN的发展以及在不同网络中的应用[4]。如在野生动物研究[5]、偏远地区网络[6]、工程项目Wizzy[7]、TIER[8]等方面的应用。由于这类网络中节点移动、链路间歇性连接、不存在端到端路径、数据传输延时大[9]等原因,为完成通信,DTN使用“存储-携带-转发”的机制[10]。节点接收消息后要根据缓存管理策略存储一定的时间,因此缓存管理策略的设计成为DTN路由机制的关键。

DTN网络不会主动丢弃已存储的消息,除非该消息的生存时间(time to live,TTL)到期。因此采用何种策略确定缓存中消息的丢弃顺序,以释放宝贵的缓存资源成为问题的关键。研究发现,已有的缓存管理算法存在两类问题:1) 算法考虑的消息特性单一,不能够很好地掌握网络环境信息;2) 考虑了多个消息特性的算法在应用阶段为网络带来过大的开销。针对这两类问题,本文提出了一种基于消息特性的MPBBM算法,它主要根据消息副本数以及消息生存时间来确定每条消息的重要度,以此确定该消息被丢弃的先后顺序。

1 相关工作

已有的缓存管理算法主要包括DO(drop- oldest)[12]、SHLI(shortest life time)[13]及MOFO(most forwarded)[13]。此类算法的特点是考虑消息的某个单一特性,比较不同消息的特征值,决策消息的替换。优点是计算时间短、空间开销少;缺点是考虑因素单一,性能还有很大提升空间。

目前改进的缓存管理算法有很多。如对消息副本数进行估计的缓存管理EBMP(enhanced buffer management policy)[14]算法,控制节点消息数量的MDC-SR(message drop control source relay)[12]算法。

EBMP算法引入了消息的3个特性。该算法能较好地估计消息在网络中的副本数,并对估计的最多副本数的消息进行替换。然而由于需要大量的计算过程,导致节点缓存及网络开销较大、消息延时较长。

MDC-SR算法通过定义节点丢弃消息数的阈值防止出现过多的消息丢弃,这种控制可以减少不必要的消息转发和丢弃。但其阈值的定义并没有数学方法上的依据,在消息大小等条件发生变化的网络环境下,性能将受到很大影响,网络性能不稳定。

ISM(intelligent subsection management)[15]算法通过引入消息相对存活时间的特性对消息有效性进行分析,而该算法适用于节点分布稠密的网络。

ABMP(area-based buffer management policy)算法[16]是从网络地理环境考虑,通过估计消息在划分区域中数目以及对节点的运动特性进行分析来决定丢弃消息的丢弃顺序,该算法同样存在计算量较大的问题。

DPMQ(dynamic prediction based multi queue)[17]丢弃算法是在节点生成3个动态的队列,根据预测的消息交付概率,在不同限定条件下缓存至不同的消息队列。但该算法只能应用于概率路由,适用场景比较局限。本文提出的MPBBM算法在保证较低计算量的基础上,结合消息特性,提高消息的交付率、网络开销等网络性能,并确保该算法能适用于各类基于Epidemic洪泛思想的多副本路由协议。

2 一种基于消息特性的缓存管理算法MPBBM 2.1 MPBBM算法设计

已有的缓存管理算法中,MOFO在不同网络环境配置下,相比于其他缓存管理算法性能较好,消息的交付率虽然维持在较高水平,但消息的平均

延时较大。针对此问题,本文提出了一种基于消

息特性的缓存管理(message-period-based buffer management,MPBBM)算法。该算法在考虑MOFO算法中消息被转发次数的基础上,引入了消息在网络中的生存时间这一特性。

MPBBM的主要思想是,在节点缓存空间不足以接收新到来的消息时,节点遍历当前缓存中的消息列表。获取缓存中每条消息的生存时间,并获取消息在网络中被转发的次数,将两者进行归一化处理后形成节点中每条消息的MPBBM值:

$M{\rm{mpbbm}} = \log (M{\rm{age}}) + M{\rm{fo}}$ (1)

式中,Mmpbbm表示消息M的MPBBM值;Mage为消息M自创建后在网络中存在的时间;Mfo为消息M被网络中节点转发的总次数。

在DTN的网络环境中,当消息的age值单位为秒时,消息的age值增长速度将远高于消息的fo值,因此为将消息的fo值和age值在数量级上进行归一化,对消息的age值取自然对数log(Mage),利用对数函数的特性使处于不同量纲消息的fo值和age值处于同一数量级。

采用MPBBM算法计算出的Mmpbbm值能反映消息的优先级,值越大,则消息的age值和fo值的归一和的值越大。根据统计规律,在网络中存在时间越长、被转发的次数越多越有可能成功交付,则认为消息的优先级越低。MPBBM算法定义的参数如表 1所示。

表1 MPBBM算法参数表

MPBBM算法在替换消息时,依据每条消息的MPBBM值进行降序排序,该算法认为优先级高的消息为活跃消息,而优先级低的消息为非活跃消息,因此排序的结果为活跃度依次降低的消息队列。表 2为MPBBM算法优先替换非活跃消息的算法伪代码。

表2 MPBBM算法伪代码
2.2 MPBBM算法分析

MPBBM算法考虑了消息的两个特性,即消息在网络中的生存时间和消息被转发的次数,两个参数均能体现消息在网络中的分布情况。消息在网络中的生存时间越长或消息被转发的次数越多,则在网络中可能存在较多的消息副本,替换副本较多的消息将不会对该消息的交付带来过多不良影响,同时为副本数较少的消息提供更多的转发机会。

另在引入新的消息特性时,并没有带来过多额外的存储需求和复杂的计算过程。当节点进行消息替换时,更新消息的age值和fo值,并计算缓存中消息的MPBBM值,不需额外维持消息的MPBBM值列表。MPBBM算法的执行发生在节点间进行消息转发时,由接收消息的节点执行。缓存管理算法是一个循环执行的过程。根据表 2的语句频度计算出该算法的时间复杂度为$T(n) = O({n^2})$,与MOFO的时间复杂度相同。MOFO的空间复杂度为O(1),由于需要临时存储节点携带的消息的MPBBM值,MPBBM的空间复杂度为O(n)。可见MPBBM没有增加额外的时间复杂度,并且未带来过多的空间复杂度。

3 仿真实验及分析 3.1 仿真环境

本文采用ONE(opportunistie networking environment)[18]仿真工具,结合典型洪泛算法Epidemic[19],对MPBBM与其他缓存管理算法分别进行了仿真和对比分析。仿真中共投放了5组节点模拟行人、车辆的移动,为了充分模拟现实生活的场景,在地图中设置了兴趣点,兴趣点即节点趋于移动到达的目的地,具体的环境参数设置如表 3所示。

表3 仿真参数表
3.2 仿真结果与分析

本文使用4个性能评价指标:消息交付率、网络开销、平均延时和平均缓存时间。

消息交付率为最终交付的消息数与产生的消息数的比值;网络开销为未成功交付的消息数与成功交付的消息数之比;平均延时为消息从产生到成功递交到目的节点的消息的延时平均值;平均缓存时间为所有消息在网络中占用缓存时间的平均值[11]

3.2.1 消息大小变化的性能比较

图 1显示了消息大小变化时,各缓存管理算法的性能表现。

图 1 消息大小对缓存管理算法性能的影响

图 1a、图 1b所示,不同缓存管理下的Epidemic路由协议消息交付率、网络开销普遍降低。MPBBM算法的消息交付率一直保持最高,消息交付率相比MOFO算法平均提高8.14%,网络开销平均值降低了9.82%,同与MOFO算法性能表现相近的SHLI算法相比,MPBBM算法消息交付率平均高出11.22%,网络开销平均值降低10.42%。EBMP和DO算法性能较差,其中DO算法的传输成功率最低,数据波动较小,说明消息大小对DO算法的消息交付率的影响不大。EBMP算法网络开销最大,原因是在该仿真环境下,应用EBMP算法缓存管理算法的Epidemic协议时,参与网络中被中继传输的消息数量远大于应用其他缓存管理算法的情况,且传输成功消息的数量更低,导致网络开销远大于应用其他它缓存管理算法时的网络开销。

图 1c所示,MOFO算法的平均延时最大,MPBBM相比MOFO算法,平均延时降低了31.59%,且消息越大时,平均延时比MOFO算法下降的越快,说明MPBBM算法缓存管理算法使得消息传输具有更好的实时性,但MPBBM算法的平均延时略高于SHLI算法,通过分析仿真实验数据发现,采用MPBBM算法缓存管理算法的Epidemic协议仿真时中继转发的消息数量更多,需要消耗额外的时间,而且MPBBM算法中涉及的计算过程也要比SHLI算法额外消耗一定的时间。

图 1d所示,MPBBM算法的平均缓存时间比MOFO算法平均增长了7.53%,通过分析仿真实验数据发现,MPBBM算法丢弃消息的数量与MOFO算法相比有所减少,也相应地降低了网络开销。DO算法的平均缓存时间最大,平均缓存时间过大,说明消息占用缓存时间过长,会造成转发消息数量减少,降低消息转发成功率。

3.2.2 节点缓存变化的性能实验

图 2显示了节点缓存大小变化时,各缓存管理算法的性能表现。

图 2 节点缓存大小对缓存管理算法性能的影响

由图可知,MPBBM算法的消息交付率最高。与MOFO算法相比,MPBBM算法的消息交付率平均增长了7.57%,网络开销平均降低了10.97%,平均延时显著降低了44.06%。然而MPBBM算法的平均缓存时间与MOFO算法相比平均提高了5.36%,可见MPBBM算法没有带来过多额外的平均缓存时间,且适当地减少了消息的过度丢弃,相应地降低了网络开销。

3.2.3 产生频率变化的性能实验

图 3 消息产生频率对缓存管理算法性能的影响

图 3显示了消息产生频率变化时,各缓存管理算法的性能表现。与MOFO算法相比,MPBBM算法的消息交付率提高了4.93%,网络开销平均降低了3.34%,平均延时减少了29.10%。然而MPBBM算法与MOFO算法相比平均缓存时间平均提高了6.67%,说明在保证消息交付率、降低网络开销和平均延时的同时,未过度占用节点缓存。

3.2.4 通信范围变化的性能实验

图 4显示了节点通信范围变化时,各缓存管理算法的性能表现。

图 4 节点通信范围对缓存管理算法性能的影响

图 4中,MPBBM算法持续保持较高的消息交付率。与MOFO算法相比,MPBBM算法平均提升了5.49%,网络开销平均降低了5.41%,平均延时平均降低了47.74%。然而平均缓存平均提高了8.50%,表明MPBBM算法在提升其他性能的同时,不过度地带来额外的缓存时间,不会过度损耗节点的缓存资源。

4 结 论

本文结合Epidemic路由协议,提出了一种基于消息特性的缓存管理MPBBM算法。该算法结合了消息在节点缓存中存在的时间及消息转发次数两个特征值,能够较好地估计消息在网络中的分布情况。该算法的时间复杂度$T(n) = O({n^2})$,空间复杂度为$O(n)$。与MOFO算法相比,MPBBM算法没有增加时间复杂度,也未带来过多的空间复杂度。通过仿真发现,在不同消息大小、消息产生频率、节点缓存大小、节点通信范围的影响下,MPBBM算法明显优于其他缓存管理算法,显著地降低了消息的延时,在提高消息交付率的同时降低了网络开销。它适用于网络区域中消息较小的场景,并可适应消息产生较为频繁的网络。如何进一步降低该算法平均缓存时间是下一步工作方向之一。

参考文献
[1] FALL K. A delay-tolerant networking architecture for challenged internets[C]//International Conference on ACM Special Interest Group on Data Communication. [S.l.]: ACM, 2003.
[2] DENG Guang-hong, CAO Wan-hua, ZHANG Jian, et al. Method of dynamic random network coding in DTN environment[J]. Journal on Communications, 2014, 35(2): 76-86.
[3] ZHANG Long, ZHOU Xian-wei, WANG Jian-ping, et al. Routing protocols for delay and disruption tolerant networks[J]. Journal of Software, 2010, 21(10): 2554-2572.
[4] JUANG P, OKI H, WANHG Y, et al. Energy-efficient computing for wildlife tracking: Design tradeoffs and early experiences with ZebraNet[C]//ACM Sigplan Notices. [S.l.]: ACM, 2002, 37(10): 96-107.
[5] DORIA A, UDEN M, PANDEY D. Providing connectivity to the saami nomadic community[J]. Generations, 2009, 1(2): 3-11.
[6] AKYILDIZ I, AKAN B, CHEN C, et al. InterPlaNetary Internet: State-of-the-art and research challenges[J]. Computer Networks, 2003, 43(2): 75-77.
[7] EDMUNDO C, XOLUQOBO M. Ad hoc wireless mesh network and data mules for rural communication[EB/OL]. [2014-08-01]. http://shenzi.cs.uct.ac.za.
[8] SHEK D T L, SUN R C F. Effectiveness of the tier 1 program of project PATHS: findings based on three years of program implementation[J]. The Scientific World Journal, 2010, 10(1): 1509-1519.
[9] LONG Ke, LU Hui-mei, YIN Lei, et al. Scene-aware self-adaptive routing in DTN[J]. Journal of Computer Research and Development, 2010, 47(10): 189-193.
[10] YU Zhen, XU Jing-dong, ZHANG Jian-zhong, et al. IEDR: an infrastructure enhanced DTN routing protocol[J]. Journal on Communications, 2013, 34(8): 44.
[11] PENG Min, HONG Pei-lin, XUE Kai-ping, et al. Delivery probablility prediction based efficient routing in DTN[J]. Chinese Journal of Computers, 2011, 34(1): 174-181.
[12] RASHID S, AYUB Q, ZAHID M S M, et al. Message drop control buffer management policy for DTN routing protocols[J]. Wireless Personal Communications, 2013, 72(1): 653-669.
[13] ANDERS L, KAUSTUBH P. Evaluation of queueing policies and forwarding strategies for routing in intermittently connected networks[C]//Communication System Software and Middleware. New Delhi, India: IEEE, 2006: 1-10.
[14] SHIN K, KIM S. Enhanced buffer management policy that utilises message properties for delay-tolerant networks[J]. IET Communications, 2011, 5(6): 753-759.
[15] WANG Zhen, WANG Xin-hua. ISM: a strategy of buffer management for next-generation green opportunistic network equipment[J]. Computer Application and Software, 2011, 28(11): 193-196.
[16] BO Ya-ping, WANG Qing-shan,SUN Xue-lian. Area-based buffer management policy in delay-tolerant networks[J]. Journal of Hefei University of Technology, 2013, 36(9): 1063-1066.
[17] SULMA R, ABDUL H A, QAISAR A, et al. Dynamic prediction based multi queue (DPMQ) drop policy for probabilistic routing protocols of delay tolerant network[J]. Network and Computer Applications, 2013, 36(5): 1395-1408.
[18] ARI K, JORG O, TEEMU K, et al. The one simulator for DTN protocol evaluation[EB/OL]. [2014-08-15]. http:// www.netlab.tkk.fi/tutkimus/dtn/theone.
[19] MUNDUR P, SELIGMAN M, LEE G. Epidemic routing with immunity in delay tolerant networks[C]//Military Communications Conference. Baltimore, USA: IEEE, 2008.