一种基于相遇频率的机会网络路由方法技术

技术编号:15898890 阅读:63 留言:0更新日期:2017-07-28 21:37
本公开揭示了一种基于相遇频率的机会网络路由方法,通过计算和评估任意两个节点之间的相遇频率来选择下一个转发节点,进行数据传输。该路由方法在执行前需要进行网络初始化,即以某一特定节点为起点,沿着与该节点连接的所有边逐渐向其他节点扩展,计算和更新所加入的节点与该特定节点的相遇频率。此方法通过节点之间的相遇频率选择中继节点,最终将数据包传输到目标节点,而相遇频率的计算过程考虑了节点之间的传递性,增加了路由过程中下一跳节点选择的准确率,从而有利于选择在全局角度上更优的中继节点,增加了投递率并减少数据传输时延。

【技术实现步骤摘要】
一种基于相遇频率的机会网络路由方法
本公开属于机会网络的应用领域,特别涉及一种基于相遇频率的机会网络路由方法。技术背景如何充分利用设备的通信功能,在不需要进行预先部署和建设基础设施的情况下,快速完成这些不同设备之间的自动组网,达到网内信息传递以及信息共享的目的,成为当前无线自组织网络领域内的热点问题。另外,在救灾区域等场合,经常会遇到无可靠的预先部署的基础通讯设施的情况,如何在这些场合下进行有效地通信是目前急需解决的一个问题。为了有效地解决上述问题,研究人员结合DTN(delay-tolerantnetwork)网络和MANET(mobileadhocnetwork)的特点,提出机会网络(opportunisticnetwork)的概念。机会网络是一种在源节点和目的节点之间不需要存在完整的路径,利用节点移动带来的相遇机会,以“存储-携带-转发”模式,在网络局部连通条件下,进行数据传输的自组织网络。机会网络的目标是解决实际自组织网络中由于网络无法保持长时间连通的情况下的数据通信问题,作为一种新型网络,机会网络能够在无线链路断开和网络分裂情况下完成通信任务,实现消息的逐跳转发,并最终传送到目的节点。机会网络中的相遇是指节点进行数据传输的前提,这样的前提条件由于节点的移动而存在不确定性。某一时刻,在节点之间的距离小于彼此的通信范围(即相遇)时发生通信;下一时刻随着节点的移动,节点之间的距离可能大于彼此的通信范围(没有相遇),此时通信将中断。由于机会网络在数据的传输过程中,不需要存在稳定的一条或者多条源端到目的端的路径,因此具有更强的环境适应性。在不同的机会网络路由方法中,根据消息的副本数,可以分为单副本路由方法和多副本路由方法。一般情况下,单副本路由方法具有开销率低、网络耗能少的优点,但投递率较低并且时延较大,多副本路由方法往往能保证较高的投递率和较小的时延,但通常网络开销率和耗能较大。但我们发现,在网络节点能量有限和被传输的消息的生存期(TimeToLive,以下简称TTL)有限的条件下,一些单副本路由方法的优势并不能得以发挥,往往还会因为网络中的节点盲目地转发数据包给邻居节点造成投递率低的情况。
技术实现思路
基于此,本公开揭示一种基于相遇频率的机会网络路由方法,所述方法包括以下步骤:S100、转发数据包:S1001、判断持有数据包的节点vs的邻居节点中是否包含数据包的目标节点vd,若是,则将节点vs的数据包直接转发给节点vd,跳转至步骤S300;否则进行下一步;S1002、节点vs选择其邻居节点中与目标节点vd的间接相遇频率最大的节点作为中继节点,设为vt,其间接相遇频率为节点vs与目标节点vd的间接相遇频率为比较是否大于若是,vs等待与新的邻居节点相遇,跳转至步骤S100;否则vs将数据包转发给vt,进行下一步;S200、中继节点vt接收和转发数据包:S2001、中继节点vt收到持有数据包的邻居节点vs发来的数据包的传输请求时,检查其剩余缓存空间是否大于数据包的大小,若是,节点vt接收和存储该数据包,并跳转至步骤S100,节点vt充当新的持有数据包的节点vs;否则进行下一步;S2002、中继节点vt比较其缓存中所有数据包的TTL与来自邻居节点vs的数据包的T'T'L,若中继节点vt中缓存的所有数据包的TTL都大于来自vs的数据包的TTL,节点vt则不接收来自vs的数据包,跳转至步骤S100;否则进行下一步;S2003、中继节点vt删除其缓存中TTL最小的数据包,并检查其剩余缓存空间是否大于数据包的大小,若是,中继节点vt接收和存储该数据包,并跳转至步骤S100,节点vt充当新的持有数据包的节点vs;否则,中继节点vt不接收来自vs的数据包,vs等待与新的邻居节点相遇后,跳转至步骤S100;S300、目标节点vd接收数据包:S3001、目标节点vd收到持有数据包的邻居节点vs发来的数据包的传输请求时,检查其剩余缓存空间是否大于数据包的大小,若是,目标节点vd接收并存储该数据包;否则进行下一步;S3002、目标节点vd删除其缓存中TTL中最小的数据包,并检查其剩余缓存空间是否大于数据包的大小,若是,目标节点vd接收并存储该数据包;否则不接收来自邻居节点vs的数据包,节点vs等待与新的邻居节点相遇后,跳转至步骤S100。本公开具有以下技术效果1、相遇频率的计算过程考虑了节点之间的传递性,增加了路由过程中下一跳节点选择的准确率,从而有利于选择在全局角度上更优的中继节点,增加了投递率并减少数据传输时延。2、相遇频率计算算法的时间复杂度低,为O(n),其中n是网络中节点的个数。附图说明图1是公开一个实施例中一种基于相遇频率的机会网络路由方法的流程图;图2是本公开一个实施例中的相遇频率计算方法流程图;图3是本公开一个实施例中网络初始化中的计算任意两节点的间接相遇频率的实例图;图4是本公开一个实施例中网络初始化中的计算任意两节点的间接相遇频率的实例图;图5是本公开一个实施例中网络初始化中的计算任意两节点的间接相遇频率的实例图;图6是本公开一个实施例中网络初始化中的计算任意两节点的间接相遇频率的实例图;图7是本公开一个实施例中路由决策的实例图;图8是本公开一个实施例中路由决策的实例图;图9是本公开一个实施例中路由决策的实例图;图10是本公开一个实施例中路由决策的实例图;图11是本公开一个实施例中路由决策的实例图。具体实施方式下面结合图1到图11和具体的实施例对本公开进行具体的说明;在一个实施例中,如图1所示:本公开揭示一种基于相遇频率的机会网络路由方法,所述方法包括以下步骤:S100、转发数据包:S1001、判断持有数据包的节点vs的邻居节点中是否包含数据包的目标节点vd,若是,则将节点vs的数据包直接转发给节点vd,跳转至步骤S300;否则进行下一步;S1002、节点vs选择其邻居节点中与目标节点vd的间接相遇频率最大的节点作为中继节点,设为vt,其间接相遇频率为节点vs与目标节点vd的间接相遇频率为比较是否大于若是,节点vs等待与新的邻居节点相遇,跳转至步骤S100;否则节点将数据包转发给节点vt,进行下一步;S200、中继节点vt接收和转发数据包:S2001、中继节点vt收到持有数据包的邻居节点vs发来的数据包的传输请求时,检查其剩余缓存空间是否大于数据包的大小,若是,中继节点vt接收和存储该数据包,并跳转至步骤S100,节点vt充当新的持有数据包的节点vs;否则进行下一步;S2002、中继节点vt比较其缓存中所有数据包的TTL与来自邻居节点vs的数据包的T'T'L,若中继节点vt中缓存的所有数据包的TTL都大于来自vs的数据包的TTL,节点vt则不接收来自节点vs的数据包,跳转至步骤S100;否则进行下一步;S2003、中继节点vt删除其缓存中TTL最小的数据包,并检查其剩余缓存空间是否大于数据包的大小,若是,中继节点vt接收和存储该数据包,并跳转至步骤S100,节点vt充当新的持有数据包的节点vs;否则,中继节点vt不接收来自节点vs的数据包,节点vs等待与新的邻居节点相遇后,跳转至步骤S100;S300、目标节点vd接收数据包:S3001、目标节点vd收到持有数据包的邻居节点vs发来的数据包本文档来自技高网
...
一种基于相遇频率的机会网络路由方法

【技术保护点】
一种基于相遇频率的机会网络路由方法,其特征在于,所述方法包括以下步骤:S100、转发数据包:S1001、判断持有数据包的节点vs的邻居节点中是否包含数据包的目标节点vd,若是,则将节点vs的数据包直接转发给节点vd,跳转至步骤S300;否则进行下一步;S1002、节点vs选择其邻居节点中与目标节点vd的间接相遇频率最大的节点作为中继节点,设为vt,其间接相遇频率为

【技术特征摘要】
1.一种基于相遇频率的机会网络路由方法,其特征在于,所述方法包括以下步骤:S100、转发数据包:S1001、判断持有数据包的节点vs的邻居节点中是否包含数据包的目标节点vd,若是,则将节点vs的数据包直接转发给节点vd,跳转至步骤S300;否则进行下一步;S1002、节点vs选择其邻居节点中与目标节点vd的间接相遇频率最大的节点作为中继节点,设为vt,其间接相遇频率为节点vs与目标节点vd的间接相遇频率为比较是否大于若是,节点vs等待与新的邻居节点相遇,跳转至步骤S100;否则节点vs将数据包转发给中继节点vt,进行下一步;S200、中继节点vt接收和转发数据包:S2001、中继节点vt收到持有数据包的邻居节点vs发来的数据包的传输请求时,检查其剩余缓存空间是否大于数据包的大小,若是,节点vt接收和存储该数据包,并跳转至步骤S100,节点vt充当新的持有数据包的节点vs;否则进行下一步;S2002、中继节点vt比较其缓存中所有数据包的TTL与来自邻居节点vs的数据包的T'T'L,若中继节点vt中缓存的所有数据包的TTL都大于来自vs的数据包的TTL,节点vt则不接收来自vs的数据包,跳转至步骤S100;否则进行下一步;S2003、中继节点vt删除其缓存中TTL最小的数据包,并检查其剩余缓存空间是否大于数据包的大小,若是,中继节点vt接收和存储该数据包,并跳转至步骤S100,节点vt充当新的持有数据包的节点vs;否则,中继节点vt不接收来自vs的数据包,vs等待与新的邻居节点相遇后,跳转至步骤S100;S300、目标节点vd接收数据包:S3001、目标节点vd收到持有数据包的邻居节点vs发来的数据包的传输请求时,检查其剩余缓存空间是否大于数据包的大小,若是,目标节点vd接收并存储该数据包;否则进行下一步;S3002、目标节点vd删除其缓存中TTL中最小的数据包,并检查其剩余缓存空间是否大于数据包的大小,若是,目标节点vd接收并存储该数据包;否则不接收来自邻居节点vs的数据包,节点vs等待与新的邻居节点相遇后,跳转至步骤S100。2.根据权利要求1所述的方法,其特征在于:优选的,步骤S2001中所述数据包的传输请求中包括数据包的大小和TTL信息。3.根据权利要求1所述的方法,其特征在于,在步骤S100之前还包括机会网络的初始化,所述初始化具体为:初始化机会网络为G(V,E,W),其中V代表节点的集合,每个v∈V代表一个节点,V的元素个数为n,表示网络中移动节点个数,eij∈E是节点vi和节点vj的连接边,机会网络中任意一对节点vi和节点vj之间的相遇时间间隔服从参数为的指数分布,其中λij∈W,机会网络中的每个节点vk随机产生数据包,每个产生的数据包mk的副本数为1,剩余生存时间为TTLk。4.根据权利要求3所述的方法,其特征在于:在步骤S100之前,初始化机会网络之后还包括计算机会网络中任意一个节点与目标节点的间接相遇频率,具体包括以下步骤:S001、将...

【专利技术属性】
技术研发人员:张立臣李丽霞王小明于汪洋
申请(专利权)人:陕西师范大学
类型:发明
国别省市:陕西,61

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

1