法律状态公告日
法律状态信息
法律状态
2020-07-14
未缴年费专利权终止 IPC(主分类):H04W40/02 授权公告日:20150114 终止日期:20190712 申请日:20120712
专利权的终止
2015-01-14
授权
授权
2012-12-05
实质审查的生效 IPC(主分类):H04W40/02 申请日:20120712
实质审查的生效
2012-10-10
公开
公开
技术领域
本发明涉及机会网络路由算法,作用是使机会网络中节点高效转发数据包,同时尽可能减少节点的转发量,从而减少网络资源消耗。
背景技术
机会网络是一种不需要在源节点和目的节点之间存在完整路径,利用节点移动带来的相遇机会实现网络通信的、时延和分裂可容忍的自组织网络。机会网络不同于传统的多跳无线网络,它的节点不是被统一部署的,网络规模和节点初始位置未进行预先设置,源节点和目的节点之间的路径事先不能确定是否存在。机会网络以“存储-携带-转发”模式逐跳传输信息实现节点间通信,其体系结构与多跳无线网络不同,它在应用层与传输层之间插入一个被称为束层的新的协议层。
由于机会网络能够处理网络分裂、时延等传统无线网络技术难以解决的问题,能满足恶劣条件下的网络通信需要,其主要应用于缺乏通信基础设施、网络环境恶劣以及应对紧急突发事件的场合。
1.对照路由算法
为和本发明路由算法对照,选取了2种典型路由算法作为参照算法。Epidemic算法是基于泛洪策略路由算法的典型代表,很多基于泛洪策略的路由算法都可视为是由该算法衍生而来。Spray and Wait算法是按照一定策略进行泛洪,是基于有限度的泛洪策略,该算法的主要性能指标在多数场景下都具有显著的优势。
(1)Epidemic算法
Epidemic算法的基本思想是当2节点相遇时交换对方没有的数据包,经过足够的交换后,理论上每个非孤立的节点将收到所有的数据包,从而实现数据包的传输。
在Epidemic算法中,每个数据包有一个全局唯一的标识,每个节点中保存一个概要向量用来记录节点中携带的数据包。当2节点相遇时,双方首先交换概要向量,获知对方携带数据包情况后,双方仅传送对方没有的数据包。
Epidemic算法本质上是一种泛洪算法,从理论上讲该算法能最大化数据包传输的成功率,最小化传输延迟,但也会使网络中存在大量的数据包副本,消耗大量的网络资源。
Epidemic算法有3个目标,分别是最大的传输成功率、最小的传输延迟和最小的网络资源消耗。实现上述目标需要特定的场景,在多数场景下,由于过度泛洪导致路由算法的性能显著下降。
(2)Spray And Wait算法
Spray and Wait算法分为2个阶段。首先是Spray阶段,源节点中的部分数据包被扩散到邻居节点;然后进入到Wait阶段,若Spray阶段没有发现目标节点,包含数据包的节点以Direct Delivery方式将数据包传送到目标节点,即只有在遇到目标节点时,发送数据包。该算法传输量显著地少于Epidemic算法,传输成功率高,传输延迟较小,算法适用性强。
(3)Prophet算法
Prophet算法基于概率策略,该路由算法对报文传输成功的概率进行估算,选择性地复制数据包,尽力避免生成低传输效率的副本。该算法定义了一个传输预测值来描述节点间成功传输的概率。当2个节点相遇时,节点更新各自的传输预测值,并利用该值来决定是否转发数据包。
2.度量值
评价机会网络路由算法性能指标的度量值主要有:
(1)传输成功率
传输成功率(Delivery Ratio)是在一定的时间内成功到达目标节点数据包总数和源节点发出的需传输数据包总数之比,该指标刻画了路由算法正确转发数据包到目标节点的能力,是最重要的指标。
(2)传输延迟
传输延迟(Delivery Delay)是数据包从源节点到达目标节点所需的时间,通常采用平均传输延迟来评价。传输延迟小意味路由算法传输能力强、传输效率高,也意味着在传输过程中将会占用较少的网络资源。
(3)路由开销
路由开销(Overhead)是指在一定时间内节点转发数据包的总数,通常用所有成功到达目标节点的数据包数与所有节点转发的数据包总数之比来评价。路由开销高,意味着节点大量地转发数据包,会使网络中充斥大量的数据包副本,增加数据包发生碰撞的概率,也会大量地消耗节点能量。
3.Epidemic算法性能分析
以表1场景为基础,分别对数据包总数为50和每节点生成10个数据包2种情况进行仿真,得到图1、图2所示结果。
图1、图2中以Spray And Wait作为对照算法,该算法在多数场景下可获得接近最优的传输成功率和路由开销,且无论网络的规模大小都能保持较好的性能,有很好的可扩展性。
由图1、图2可得到如下结论:
(1)在一些特定的场景下Epidemic算法的非常高的传输成功率和非常低的传输延迟,在这两个指标上大大好于对照算法;
(2)在数据包数量一定时,网络中节点数量增加会改善路由算法的性能;
(3)在某些场景下,存在一些和网络应用环境紧密相关的因素会导致Epidemic算法的性能显著下降。
图3以表1场景为基础,描述了节点总数一定的情况下,数据包数量和传输成功率之间的关系。由图3可知数据包增加时,传输成功率随之下降。本发明将产生这种现象的原因称之为挤出效应,即当网络中需要传输数据包总数超过节点可存储的数据包总量时,会发生节点缓存饱和现象,此时节点接收到新数据包时,不得不按照一定规则丢弃旧数据包,这种效应的存在导致Epidemic算法性能显著下降。
发明内容
本发明涉及一种新的机会网络路由算法,该算法在Epidemic路由算法基础上引入了自适应机制。该算法可减少无效数据包副本的转发量,获得较高的传输成功率和较低的网络资源消耗。
Epidemic算法中挤出效应是导致算法性能下降的核心原因,减少网络中数据包副本数量,可以抑制挤出效应的发生,但若副本数量过少也会使算法性能下降。若能根据网络中节点缓存当前的状况决定数据包副本发送数量,取得较好折衷,显然可以提高算法性能,拓展算法的适用性。
本发明改进了Epidemic算法,目标是当网络中节点缓存趋于饱满时,主动减少注入网络的数据包副本的数量,抑制挤出效应的发生,即使算法具有自适应能力。具体方案是在Epidemic算法基础上增加下面机制,本发明将其称之为自适应机制,将采用该机制算法称为Adaptive Epidemic算法。
(1)每个节点维护一个字段用来存放阀值λ,λ∈[0,1]。节点缓存中被占用空间的百分比若超过阀值λ,则认为节点缓存区饱和;
(2)节点i和任一节点j相遇时,节点i首先获取j及周围节点缓存状况,统计和节点i接触的节点个数Nai,缓冲饱和节点个数Nei;
(3)计算pi=Nei/Nai,由其定义可知pi∈[0,1];
(4)节点i按照pi值,随机复制数据包并发送到与之接触的节点。
在自适应机制下,p值可以反映周围节点缓存饱和状况,根据p值向网络中注入数据包副本显然可以抑制缓存饱和情况的普遍发生,抑制挤出效应的发生,从而改进路由算法的性能。
附图说明
图1传输成功率比较
图2传输延迟比较
图3数据包数量对传输成功率影响
图4阀值对传输成功率的影响
图5不同场景下改进算法的传输成功率
图6不同场景下改进算法的传输延迟
图7不同场景下改进算法的路由开销
具体实施方式
以下对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
使用ONE(the Opportunistic Networking Environment)仿真平台实施本发明涉及的路由算法。下面的仿真中模拟了携有智能蓝牙设备的行人步行于真实的城市场景中,并以此来实施、分析路由算法的性能。具体场景设置如表1所示。
表1仿真场景设置
(1)阀值的影响
以表1场景为基础,以100节点,800数据包为例,来分析阀值对算法传输成功率的影响,结果如图4所示。图4中数据由(dae-de)/de计算而得,其中dae和de分别是AdaptiveEpidemic和Epidemic算法的传输成功率。
按照Adaptive Epidemic算法机制,阀值为0时,该算法退化为Epidemic算法,图4中结果也验证该结论。由图4可以看出当阀值设置恰当时,算法的传输成功率可以较大幅度的提高,如当阀值为90%时,改善幅度达到了38.9%。
(2)不同数据包数量影响
以表1场景为基础,采用100节点,30-3600个数据包,数据包生存期为3小时,来评价算法的性能。
图5-图7中以Epidemic、Prophet、Spray And Wait作为对照算法。Prophet和AdaptiveEpidemic属同类算法,都可视为在Epidemic算法基础上通过限制数据包副本数量来改善算法性能,2种算法有较高的可比性。和Spray And Wait算法比较的原因是应为该算法适应性较强,在各种网络环境下都可以取得较好的性能。
当数据包数量为30时,由于数据包数量少不会发生节点缓存饱和的情况,在此时Adaptive Epidemic算法退化为Epidemic算法。图5-图7仿真结果显示,2算法的所有指标相同,这与理论分析结果一致。
图5结果表明,在不同数据包数量下Adaptive Epidemic算法的传输成功率均优于Epidemic和Prophet。如在1600数据包时,改善程度分别达到39.3%和25.6%。
图5结果表明,和Spray And Wait算法相比在数据包数量较少时Adaptive Epidemic可充分Epidemic优势,传输成功率大幅领先。而在数据包很多时,由于自适应机制发挥作用抑制了数据包副本的传输,Adaptive Epidemic也可取得优于或接近Spray And Wait算法的性能。
图6结果表明,Adaptive Epidemic算法传输延迟指标较Epidemic算法差,最大的差距发生在800个数据包时,此时传输延迟增加了17.6%,这一结果符合算法机理,当节点缓存区发生饱和时,数据包需要在源节点中等待,从而增加了传输延迟。
图7结果表明,Adaptive Epidemic算法和Epidemic相比全面地降低了路由开销,在节点较多时,尤其显著,如在3600节点时,下降了87.1%;和Spray And Wait算法相比也下降了79.2%
由图5-图7可以看出,Adaptive Epidemic、Epidemic和Prophet算法的各指标趋势高度一致,反映了3种算法内在的联系;也表明Self-adaptive机制并不会改变Epidemic算法的核心机制。
图5-图7仿真结果支持了前面的理论分析,表明在某些场景下,自适应机制可以一定程度地抑制挤出效应,改善算法性能,拓宽算法的适用性。
机译: 用于在移动AD HOC网络中透明地进行第二层路由的设备和方法,特别是用于通过将透明的MANET路由/算法插入到一个MANET路由算法中,使marp连接到任何平台的端口而不会要求改变OS内核。堆栈
机译: 手机约束满足的路由识别方法,如果主动路由协议未找到路由,则涉及在通过反应路由算法计算出的潜在路由中搜索路由
机译: 高速路由器系统中具有三个路由步骤表的地址查找算法的分组转发装置和方法