一种基于模糊推理的容忍延迟网络路由方法
技术领域
本发明涉及计算机通信技术领域,具体的说是一种在传输成功率和平均延迟方面取得好效果、基于模糊推理的容忍延迟网络路由方法。
背景技术
路由算法是影响整个通信系统有效通信的首要前提。传统的路由算法假设在数据包传递前,源节点和目的节点间已存在了一条端到端的路径,而这样的路径并不一定总是可用的。本研究中,节点在三维空间飞行时通常有着较快的速度和较大的惯性,加之可能部署在敌对环境中,不可预测的外部条件和故意的人为干扰都可能使得刚刚稳定的连接变得不可靠和难以信赖。在分布式的任务执行过程中,节点个体也很容易与节点群脱离开来。因此,可用通信链路的产生总是不确定的,需要一种自适应的动态路由算法来维持正常的网络通信。
图1表示的是一次简单的部署过程示意图。8个空中节点分为两组悬停在不同的高度,如图1(a)。每个球的球心表示了悬浮的节点个体。球半径表示个体通信距离的一半。当两个球相交时,表示个体之间距离满足通信条件,从而产生了一条可用的链路连接。该立方体结构收到来自基站的“环状感知”命令后,将会执行一个自我规划部署的过程,如图1(b)-图1(f)。尽管是一个简单的部署命令,可以看到空中载体比起地面的移动单元,更加容易形成不稳定的拓扑结构。除了空中不可控的高速度带来的惯性等内部原因外,GPS设备的误差偏移以及突然的空气扰动环境都有可能对拓扑结构产生影响。
容迟容断网络(Delay/ Disruption Tolerant Network,DTN)的提出就是为了解决此类问题:(1)在数据源和目的地之间并不总是存在可用的端到端路径;(2)节点对之间的最大往返时间有时候太长;(3)端到端的分组丢失率较大。Kenvin Fall在SIGCOMM’03提出了该种面向受限网络的“容忍延迟的面向消息的覆盖层体系结构”,简称容迟网络。DTN网络适用于那些由于节点分布稀疏,或者快速移动造成的拓扑结构变化剧烈,端到端路径不稳定的情景。
DTN是基于消息(Message)交换的。它的体系结构不同于传统的Internet体系结构,引入了一个所谓的“捆绑层”,以此来解决容迟网络中的问题。DTN是面向异步消息传输的覆盖网,捆绑层操作在不同网络的传输层上,提供和Internet网关相似的功能,但有很大区别,因为它聚集在虚消息转发而不是分组交换。
由于传统的网络协议都基于端到端的通信机制,也就是说两个节点在开始通信之前已经搭建起了一条完整的通信链路,同时这些协议都假定数据帧在节点间的往返时间不能太长以及数据包或分组的丢失率较小。但是在新型的容忍延迟网络中,由于节点不断快速移动,拓扑结构处于不稳定的状态,节点通信时很难搭建起完整的通信链路。因此数据的传输只能采用“存储-携带-转发”(Store-Carry-and-Forward)的模式进行,类似于容迟容断网络(Delay/Disruption Tolerant Network)。
容迟网络将链路的断开和拓扑结构的分割看成是一种协议前提和规则,而不是一种偶然异常。空中移动的传感器节点需要在链路不稳定的恶劣环境下通信。移动节点进入对方的射频范围内,便有了交换数据包的机会。路由模块检测节点本身是否已经收到该数据包或者本身就是数据包的目的地。若是,则选择丢弃或接收;否则,根据路由策略进行转发。本发明提出的模糊路由算法(Fuzzy Routing Algorithm, FRA)也是基于容迟网络的背景,提出了新的路由策略。
发明内容
本发明的技术任务是解决现有技术的不足,提供一种降低企业运营成本、节约存储空间的基于模糊推理的容忍延迟网络路由方法。
本发明的技术方案是按以下方式实现的,该一种基于模糊推理的容忍延迟网络路由方法,其实现过程为:
一、每个节点动态维护着一张邻居节点表NNT,存放着当前在节点通信范围内的邻居节点,并按照启发式信息值的大小对其进行排序,每当有节点进入或者离开自己的通信范围,该表都会自动按照模糊推理系统的规则更新;
二、网络中每产生一个数据包,源节点便拥有该数据包的个备份,此后每当有接触发生时,当前节点选择其NNT中的前个节点作为接收节点进行数据包的转发;若表中节点总数,则所有个邻居节点都将得到转发的机会,整个过程中,每个节点传递个数据包的备份,自己的副本数更新为;
三、若节点自身副本数小于欲传递邻居节点数,则从NNT选择个最大值的邻居节点,每个节点传递一个数据包的副本;当时,则采取直接交付策略,即直到遇见目的节点才进行数据包的传递。
所述步骤二的传递过程中,若有新的邻居节点移动到自身的通信范围内,且它能排入NNT的前N位,则NNT动态更新,节点停止对第位邻居,即处于转发过程中的启发式信息值最小的节点的传递,并转发给新节点;如果正在接受数据包的邻居节点由于拓扑变化的原因中止了当前正在进行的传递,则发送节点动态更新NNT,原来处于第位的节点前移至第位并获得转发机会。
所述步骤一中模糊推理系统的规则建立包括以下步骤:
1)输入输出变量模糊化:
选取两个易获取的参数做为局部网络状态的度量值,然后根据似然推理求出局部启发式信息,并做为路由决策的评判标准;
将启发式信息HI作为模糊推理系统的输出,该启发式信息从高到低,依次分为5级:非常高、高、中、低、非常低;
2)建立模糊控制规则:该规则使用Mamdani模型,每一条控制规则都是一条模糊条件语句;
3)模糊输出清晰化:选取中位数法来获得启发式信息的精确值。
所述步骤1)中易获取的参数是指聚集度CD和相对速度RVD,其中聚集度CD表示了以候选节点为中心的局部密度,该聚集度CD的取值为该节点的邻居节点总数,该聚集度的选取过程为:首先确定CD的论域;然后采用梯形隶属函数,将CD分级,并确定每级对应该论域上的模糊集,即低、中、高;相对速度表示节点之间速度的空间夹角,其中发送节点和候选节点的速度夹角越小,RVD值越小,当方向完全相反,成180度时,RVD值达到最大值,该相对速度的选取过程为:将节点对速度方向平移到同一平面内计算它们的夹角,便可得到RVD值,该RVD值采用三角形隶属函数,将RVD分为5级,每级对应论域上的模糊集,即非常低、低、中、高、非常高。
所述步骤2)中模糊条件语句是指:
若CD是低,且RVD是非常低,则HI是非常低;
若CD是低,且RVD是低,则HI是非常低;
若CD是低,且RVD是中,则HI是低;
若CD是低,且RVD是高,则HI是中;
若CD是低,且RVD是非常高,则HI是高;
若CD是中,且RVD是非常低,则HI是非常低;
若CD是中,且RVD是低,则HI是低;
若CD是中,且RVD是中,则HI是中;
若CD是中,且RVD是高,则HI是高;
若CD是中,且RVD是非常高,则HI是非常高;
若CD是高,且RVD是非常低,则HI是低;
若CD是高,且RVD是低,则HI是中;
若CD是高,且RVD是中,则HI是高;
若CD是高,且RVD是高,则HI是非常高;
若CD是高,且RVD是非常高,则HI是非常高。
本发明与现有技术相比所产生的有益效果是:
本发明的一种基于模糊推理的容忍延迟网络路由方法适用于新动态环境的通信协议,来屏蔽底层的网络细节,为上层的协同应用程序提供统一的接口,以便于节点更好地进行信息方面的交互,而不要因为高耦合特性使得任务分配失败或者执行发生偏差,实用性强,易于推广。
附图说明
附图1为本发明的实现流程示意图。
附图2为本发明的网络结构转换示意图。
附图3为本发明的聚集度计算示意图。
附图4为本发明的相对速度计算示意图。
具体实施方式
下面结合附图对本发明的一种基于模糊推理的容忍延迟网络路由方法作以下详细说明。
如附图2所示,现提供一种基于模糊推理的容忍延迟网络路由方法,其实现过程为:
当节点互相进入对方的无线射频范围内,便有了传递转发数据包的机会。选择哪一个邻居节点作为下一跳,是路由算法的核心内容。在本新型算法中,由模糊推理系统计算得到的启发式信息值将作为参考标准来进行转发节点的选择。
每个节点动态维护着一张邻居节点表(Neighbor Nodes Table,NNT),存放着当前在节点通信范围内的邻居节点,并按照启发式信息值的大小对其进行排序。每当有节点进入或者离开自己的通信范围,该表都会自动按照模糊推理系统的规则更新。
网络中每产生一个数据包,源节点便拥有该数据包的个备份。此后每当有接触发生时,当前节点选择其NNT中的前个节点作为接收节点进行数据包的转发;若表中节点总数,则所有个邻居节点都将得到转发的机会。整个过程中,每个节点传递个数据包的备份,自己的副本数更新为。
传递过程中,若有新的邻居节点移动到自身的通信范围内,且它能排入NNT的前N位,则NNT动态更新,节点停止对第位邻居(即处于转发过程中的启发式信息值最小的节点)的传递,并转发发给新节点;类似地,如果正在接受数据包的邻居节点由于拓扑变化的原因中止了当前正在进行的传递,则发送节点动态更新NNT,原来处于第位的节点前移至第位并获得转发机会。
若节点自身副本数小于欲传递邻居节点数,则从NNT选择个最大值的邻居节点,每个节点传递一个数据包的副本。当时,则采取直接交付策略,即直到遇见目的节点才进行数据包的传递。
其中,上述步骤中提到的模糊推理系统的规则建立包括以下步骤:
一、输入输出变量的模糊化。
在强干扰环境下的移动网络中,局部的启发式信息,在一定程度上比历史经验更能反映临时性的链路情况,它反映了当下每个潜在路径的可用性。若邻居节点有着更大的启发式信息值,就认为它有着更高的传输可靠性,反之亦然。引入模糊集理论来解决问题,选择启发式信息的评价度量值,必须符合两个条件:
(1)该度量值必须能反映待选节点的可靠信任度。即请求者为什么相信该候选解比起自身或者其他解空间的候选者具有更高的传递概率。
(2)该度量值必须是易得到且易计算的。节点自身的计算和感知能力有限,花费大量资源在度量值的获得上是不明智的。
因此,选取了两个易获取的参数做为局部网络状态的度量值,然后根据似然推理求出局部启发式信息,并做为路由决策的评判标准。
这两个参数是指聚集度和相对速度,其中:
聚集度CD为Crowd Density的缩写。聚集度表示了以候选节点为中心的局部密度,为了方便,取值为该节点的邻居节点总数。以图3为例,是携带转发数据包的源节点,现在它需要在和两个邻居节点之间选择候选节点。自然地,拥有更多邻居节点的候选节点会有更多的机会将消息数据包传给目的节点,因为它有更多的选择。在图3中,的CD值为1而的CD值为3。因此从的角度来看,拥有更好的启发式信息。 首先确定CD的论域。在2000×2000的平面内,采用random walk和random waypoint移动模型进行仿真,确定边界值为9。采用梯形隶属函数,将CD分为3级,每级对应论域[0,9]上的模糊集:低(low,简记为L),中(medium,简记为M),高(high,简记为H)。
对应隶属函数为:
, , 。
相对速度RVD为Relative Velocity Direction的缩写。相对速度定义为节点之间速度的空间夹角。发送节点和候选节点的速度夹角越小,RVD值越小。当方向完全相反,成180度时,RVD值达到最大值。因为节点对的速度方向越接近,候选节点在将来一段时间内遇到的移动节点也有越大的可能性被发送节点本身遇见。而理想情况下,我们希望将消息的副本转发给那些会碰到不同节点的邻居节点以增加传递成功率。图4表示了这样的一个例子。是携带转发数据包的源节点,和是候选节点。显然地,的RVD值比更大,从而获得了转发资格。这样,最终和都有机会得到该消息副本。
将节点对速度方向平移到同一平面内计算它们的夹角,便可得到RVD值。采用三角形隶属函数,将RVD分为5级,每级对应论域[0,180]上的模糊集:非常低(very low,简记为VL),低(low,简记为L),中(medium,简记为M),高(high,简记为H),非常高(very high,简记为VH)。对应隶属函数为:
, ,
, , 。
启发式信息HI作为模糊推理系统的输出,是Heuristic Information的缩写。该启发式信息是路由算法中的重要度量因素。从高到低,依次分为5级:非常高(very high,简记为VH),高(high,简记为H),中(medium,简记为M),低(low,简记为L),非常低(very low,简记为VL)。对应隶属函数为:
, ,
, ,
二、建立模糊控制规则。
控制规则是模糊系统的核心,其形式为“若…,则…”。考虑到两个输入和一个输出,其规则一般用复合模糊条件语句表示,如:
若CD是H,且RVD是VH,则HI是VH。
若CD是L,且RVD是M,则HI是L。
该模糊推理系统采用了Mamdani模型,每一条控制规则都是一条模糊条件语句,所有规则组成多重复合模糊条件语句。采用的控制规则表如下表所示。
若CD是低,且RVD是非常低,则HI是非常低;
若CD是低,且RVD是低,则HI是非常低;
若CD是低,且RVD是中,则HI是低;
若CD是低,且RVD是高,则HI是中;
若CD是低,且RVD是非常高,则HI是高;
若CD是中,且RVD是非常低,则HI是非常低;
若CD是中,且RVD是低,则HI是低;
若CD是中,且RVD是中,则HI是中;
若CD是中,且RVD是高,则HI是高;
若CD是中,且RVD是非常高,则HI是非常高;
若CD是高,且RVD是非常低,则HI是低;
若CD是高,且RVD是低,则HI是中;
若CD是高,且RVD是中,则HI是高;
若CD是高,且RVD是高,则HI是非常高;
若CD是高,且RVD是非常高,则HI是非常高。
三、模糊输出清晰化。
通过似然推理得到的输出是论域上的模糊集,要化为确定数才能作为启发式信息值比较候选节点的优劣。众多的解模糊方法中,选取中位数法COA即center of area来获得启发式信息的精确值。
随着CD和RVD取值的增大,节点得到更大的HI值;也就是说,得到更高的信任度作为转发节点去转发数据包。
以上所述仅为本发明的实施例而已,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。