CN103346966A - 一种提高最优转发概率的网络数据路由方法及网络节点 - Google Patents
一种提高最优转发概率的网络数据路由方法及网络节点 Download PDFInfo
- Publication number
- CN103346966A CN103346966A CN2013102118732A CN201310211873A CN103346966A CN 103346966 A CN103346966 A CN 103346966A CN 2013102118732 A CN2013102118732 A CN 2013102118732A CN 201310211873 A CN201310211873 A CN 201310211873A CN 103346966 A CN103346966 A CN 103346966A
- Authority
- CN
- China
- Prior art keywords
- value
- node
- message
- utility
- destination node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种提高最优转发概率的网络数据路由方法及网络节点,该方法采用了单拷贝方式发送消息,即消息只转发一次的情况下,根据应用环境自动调节延缓转发的次数;通过延缓转发机制,来提高获得最优转发机会的概率,减少数据中转次数,降低节点能耗。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种提高最优转发概率的网络数据路由方法及网络节点。
背景技术
DTN(Delay Tolerant Network,时延容忍网络)是指在没有完整通信链路的情况下,完全依靠移动节点之间主动或者随机的接触,从而实现通信的网络。自2002年IRTF成立了DTNRG研究组以来,DTN方向的研究工作进展十分迅速。先是提出了明确的模型和体系结构。随后在DTN的体系结构、安全和路由等方面的大量工作相继展开,并形成了一系列的草案。DTN路由技术采用“存储-携带-转发”模式进行数据传输,对链路的大延迟、高差错率和频繁中断等特性具有较强的适应能力,因此在深空通信、卫星中继、军用Ad hoc组网、野外与偏远地区的稀疏传感器网络互连等领域具有广泛的应用前景。但是其节点受体积和重量的限制,携带的电源或其他设备资源都非常有限,从而一定程度上限制了应用的效能,导致节点不得不采用一定的策略以节省资源。
近年来,随着网络应用范围的拓展和服务需求的多样化,如何对路由协议性能进行优化从而最大限度利用网络资源成为研究的热点问题。在DTN中,由于节点的密度较低,节点之间往往不存在端到端的路径,这给DTN路由带来了巨大的困难。为了限制洪泛效应,学者们提出了基于效用的Utility-based路由协议,或者称为Quality-based路由协议,简称效用路由。
在现有技术中,第一节点在遇到作为中转节点的第二节点时,判断从第一节点将消息路由至所述目的节点的最短时延是否从所述第二节点将所述消息路由至所述目的节点的最短时延,若是,则第一节点立即将所述消息转发给所述第二节点。但是,第二节点未必是最优转发节点,所述第一节点有很大的概率,在将所述消息转发给所述第二节点后会遇到最优转发节点。这种立即转发的模式会造成中转次数的增加,进而增加节点功耗,减少网络寿命。
发明内容
本发明的目的是提供一种提高最优转发概率的网络数据路由方法及网络节点。提高了获取最优转发节点的概率,减少数据中转次数,降低节点能耗。
本发明的目的是通过以下技术方案实现的:
一种提高最优转发概率的网络数据路由方法,该方法包括:
第一节点比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小;
若maximum_utility_value<P2,则所述第一节点判断拒绝转发该消息的次数reject_times是否大于等于拒绝次数的阈值k,若是,则将该消息转发至所述第二节点;否则,所述第一节点利用P2的值更新所述最高效用值:maximum_utility_value'=P2,并利用更新后的最高效用值进行消息的转发判断;
若maximum_utility_value>P2,则所述第一节点判断reject_times是否大于等于转发机会次数估计值n,若是,则将该消息转发至所述第二节点;其中,n>k。
一种网络节点,该节点包括:
最高效用值比较模块,用于比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小;
判断模块,用于当maximum_utility_value<P2时,判断拒绝转发该消息的次数reject_times是否大于等于拒绝次数的阈值k,或当maximum_utility_value>P2时,判断reject_times是否大于等于转发机会次数估计值n,其中,n>k;
消息转发模块,用于当reject_times大于等于拒绝次数的阈值k,或大于等于转发机会次数估计值n时,将该消息转发至所述第二节点;
最高效用值更新模块,用于当maximum_utility_value<P2,且拒绝转发该消息的次数reject_times小于拒绝次数的阈值k时,利用P2的值更新所述最高效用值:maximum_utility_value'=P2。
由上述本发明提供的技术方案可以看出,在采用单拷贝,即消息只转发一次的情况下,根据应用环境自动调节延缓转发的次数;通过延缓转发机制,来提高获得最优转发机会的概率,减少数据中转次数,降低节点能耗。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例一提供的一种提高最优转发概率的网络数据路由方法的流程图;
图2a为本发明实施例一提供的一种节点未转发消息前消息信息表及对应的目的节点表的示意图;
图2b为本发明实施例一提供的一种节点转发消息后消息信息表及对应的目的节点表的示意图;
图2c为本发明实施例一提供的一种节点转发消息后消息信息表及对应的目的节点表的示意图;
图2d为本发明实施例一提供的一种节点更新消息信息表及对应的目的节点表的示意图;
图3为本发明实施例二提供的一种网络节点的示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
在现有的大多数基于效用值转发的路由策略中,报文消息是被即刻转发给那些具有较高效用值的节点。而在本发明实施例中,我们将在不降低消息投递成功率和不增加消息投递时延的情况下,使节点在较长一段时间内持有报文,直到有更为合适的转发机会出现后,再进行报文的转发,从而减少通信能耗。
假设某一节点转发当前消息可以有n次机会,在本发明实施例中,节点一概放弃n次转发机会中的前k次机会,并记录其中最优值;当遇到比前k次中局部最优转发机会更好的机会,则将消息转发。本发明实施例提供的数据转发策略是一种通用策略,可直接应用于大多数基于效用值的路由转发协议。
为了说明时延容忍网络数据转发策略,我们引入了消息转发的最大效用值、拒绝次数的概念。其中,最大效用值指消息转发过程中,节点所遇到的若干中转节点中,对目的节点所具有的当前最高效用值,用符号表示为maximum_utility_value,从定义可知,maximum_utility_value是针对某条消息的,由于节点需转发的消息并不是唯一的,因此需要一组maximum_utility_value来记录不同消息的最高效用值。拒绝次数指节点拒绝转发消息的次数,其符号表示为reject_times。从定义可知,reject_times是针对某条消息的,由于节点需转发的消息并不是唯一的,因此需要一组reject_times来记录不同消息的拒绝次数。
实施例一
图1为本发明实施例一提供的一种提高最优转发概率的网络数据路由方法的流程图。如图1所示,主要包括如下步骤:
步骤11、第一节点比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小。
所述最高效用值,指消息转发时节点所遇到的若干中转节点中,对目的节点所具有的当前最高效用值(其数据越大表示节点发送消息至目的节点的效力与效率越高),每一消息的初始最高效用值通常为初始节点发送该消息至目的节点的效用值;例如,本实施例中,若第一节点为初始节点,则该消息的最高效用值maximum_utility_value为第一节点发送该消息至目的节点的效用值P1;即,maximum_utility_value=P1;所述效用值P1表示第一节点发送当前消息至目的节点的效力与效率,其大小可以根据第一节点与目的节点间通信的频率、相遇的概率、通信的次数等量来确定。
进一步的,在第一节点比较发送当前消息至目的节点的最高效用值maximum_utility_value,与作为潜在中转节点发送当前消息至目的节点的效用值P2之间的大小之前,还需要与第二节点互相交换效用值向量(效用值向量中包含发送不同消息时的效用值),交换的目的在于,第一节点与第二节点可以相互判断对方是否是自身潜在的中转节点。此时,第一节点针对当前发送至节点消息的效用值进行比较。
若P1>P2,则第一节点拒接将当前消息发送至第二节点,并将拒绝转发消息的次数reject_times加1。
若P1<P2,则所述第一节点将第二节点作为潜在中转节点,并继续进行比较:第一节点比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小;若maximum_utility_value<P2,则转入步骤12;若maximum_utility_value>P2,则转入步骤13。
步骤12、当maximum_utility_value<P2时,所述第一节点判断拒绝转发该消息的次数reject_times是否大于等于拒绝次数的阈值k。
本发明实施例中在不降低消息投递成功率和不增加消息投递时延的情况下,使节点在较长一段时间内持有报文,直到有更为合适的转发机会出现后。即,通过设定阈值k来判定当前时刻是否为合适的转发机会。
若判定待转发消息的reject_times≥k,则认为当前为合适的转发机会;此时,第一节点将该消息转发至第二节点。
若判定待转发消息的reject_times<k,第一节点将不该消息转发至第二节点,并将拒绝转发消息的次数reject_times加1;同时,第一节点利用P2的值更新所述最高效用值:maximum_utility_value'=P2,并利用更新后的最高效用值进行消息的转发判断。即,第一节点放弃n次转发机会中的前k次机会,并记录其中最优值。
步骤13、当maximum_utility_value>P2时,所述第一节点判断reject_times是否大于等于转发机会次数估计值n。
其中,转发机会次数估计值n表示当前消息可以转发的次数。通常情况下,若拒绝转发该消息的次数reject_times大于等于转发机会次数估计值n时,则将该消息进行转发,反之,拒绝转发该消息,并将拒绝转发消息的次数reject_times加1。
为了便于理解本发明,下面以节点A发送一条消息至节点E为例做进一步介绍:
首先将该消息的最高效用值maximum_utility_value初始化为节点A到消息目的节点E的效用值PA,E。拒绝转发消息的次数reject_times初始化为0。当节点A与节点B相遇时,它们相互交换转发效用值向量,交换的目的在于,节点A与节点B可以相互判断对方是否是自身潜在的中转节点。节点B到目的节点E的转发效用值设定为PB,E。假设B节点到目的节点E的转发效用值比A节点的大,即PB,E>PA,E,而E是待转发消息的目的节点,则我们称B节点为潜在的中转节点。此时节点A进一步判断,PB,E与maximum_utility_value孰大孰小,由于节点A为初始节点,maximum_utility_value=PA,E,因此,PB,E>maximum_utility_value。通常情况下,拒绝次数的阈值k大于0,而此时拒绝转发消息的次数reject_times为0,因此,节点A不将消息转发至节点B;此时,节点A利用PB,E的值更新所述最高效用值:maximum_utility_value'=PB,E,并利用更新后的最高效用值maximum_utility_value'进行消息的转发判断,同时,更新reject_times的值为1。
当节点A和节点C相遇,并且节点C转发该消息到目的节点E的效用值设定为PC,E<PA,E。此时,节点A将拒绝将消息转发给节点C,更新reject_times的值为2。
当节点A遇见节点D,发现点D转发该消息到目的节点E的效用值PD,E>PA,E;若PD,E>maximum_utility_value',且reject_times≥k,则节点A将需要送至节点E的消息转发给节点D;或者,PD,E<maximum_utility_value',且reject_times≥n,则节点A将需要送至节点E的消息转发给节点D。在本示例中节点A,拒绝将消息转发给节点B和C之后将消息转发给了节点D,即节点A在较长一段时间内持有报文,直到有更为合适的转发机会出现后,再进行报文的转发,从而减少通信能耗。
本发明实施例中的节点一概放弃n次转发机会中的前k次机会,并记录其中最优值;当遇到比前k次中局部最优转发机会更好的机会,则将消息转发。因此,k的取值将影响发送消息至最优节点的概率。下面针对k取值大小的计算方法做详细的介绍。
节点转发一条消息时转发机会的发生是有序的。如果对于一条消息的转发有n次不同的机会,则有n!种排列(即使某些机会是相同的,这个排列数的值也是很大的)。但是,采用本发明实施例的方法,可以在很高的概率下获得最优的机会。
将选择到最优机会的概率用Pk表示,通过最大化Pk的值来提高基于效用值的路由转发协议的性能。假定节点间的相遇是独立于节点的效用值,因此,最优机会可以等概率地认为是n次机会中的任意一次。为了计算这个概率,可以将最优机会的位置设定为X,则获得最优的转发机会概率的数学表达为:
若全局最优机会是在前k次机会中,则将选不到这次全局最优机会;但是,若全局最优机会在位置i,i>k,则当且仅当前k次机会中的局部最优机会就是前i-1次机会中的最优机会时才能选到全局最优机会。在此情况下,处于位置k+1,k+2,...,i-1中的机会将均不被选到。因此,可以有如下推论:
根据上述推论以及Pk(best)的数学表达式,可以推出:
在实际应用中,可以利用k值计算公式设定一个合理最优值。换言之,节点在接受首次最优机会之前会放弃前次机会(除非是当节点遇到持有消息的目的节点),其原因在于,消息若是即时被转发给具有较高转发效用值的其他节点,则选择到最优机会的概率仅为1/n。
所述n为转发机会次数估计值,它的大小可以利用当前消息的总机会数的平均值来估算。
为了便于理解,需要引入消息信息表message_info_vector的概念。消息信息表存储在节点中,节点会尽可能久地保存数据包的信息。即使数据包已被转发,每条消息的相关信息也会依然保存在消息信息表message_info_vector中,直至保存数据的缓冲区已满,才会被清除。
消息信息表中最多可以包括S行,S的取值大小受限于节点的内存大小。其每一行对应一条消息,主要包括如下信息:源节点(source),目的节点(destination),拒绝次数(reject_times),总机会数(total_opportunities),最大效用值(maximum_utility_value),接收时间(receiving_time)和用于表示消息是否转发的过时标识位(obsolete)。
其中,消息信息表中的每一行还具有对应的目的节点表,目的节点表可以包括M行,M的取值大小受限于节点的内存大小。其主要包括下述信息:1)目的节点ID;2)到目的节点转发机会次数的估计值n;3)目的节点表中本条记录更新的次数c;4)目的节点表中本条记录上次的更新时间t。
通常,可以利用消息信息表中的信息对对应的目的节点表进行更新,同时进行转发机会次数估计值n的计算。具体的,参见附图2a-2d。
图2a-2d均假定为节点A的消息信息表及对应的目的节点表,其中,左侧表格为目的节点表,右侧表格为消息信息表。
如图2a所示,消息信息表的第二行表明节点A拥有一条由节点K(节点K所在列为源节点)产生的消息。同时,根据reject_times=2,total_opportunities=2,obsolete=0,可知,节点A共经历两次转发机会,但并未转发(obsolete=0表示未转发,obsolete=1表示已转发)。
如图2b所示,当节点A遇到某一节点,并且发现该节点符合前述步骤11-步骤13的转发规则,此时,节点A将由节点K产生的消息转发至该节点。但是,节点A并不删除由节点K产生的该消息;而是,将过时标识位标识为过时状态(obsolete=1),将总机会数total_opportunities的值由2更新为3,并将最高效用值maximum_utility_value做相应修改。
如图2c所示,当节点A转发了由节点K产生的消息之后,又遇到另外一个符合前述步骤11-步骤13的转发规则的中转节点;此时,节点A不会再次转发这条消息,因为该消息在之前已被转发过;节点A仅将消息信息表中total_opportunities的值由3更新为4。通过更新total_opportunities,即使该消息已被转发,依然能够在该消息被删除之前估算出转发机会的次数。
若节点A的消息信息表中已保存了S行记录,并且,节点A需要接收来自另一节点的新消息,则节点A查看消息信息表,并依据接收时间receiving_time找出其中最早的记录。如图2d所示,根据消息信息表的最后一行可知,由节点H生成需送至节点F的消息的时间戳为62,可以判定其为最早的一条消息;此时,可以将其删除;同时,更新与该消息相对应的目的节点表:将目的节点表中本条记录更新的次数c加1、将被删除消息最近更新时间作为目的节点表中的本条记录上次的更新时间t以及利用被删除消息的total_opportunities的平均值来计算转发机会次数估计值n。
由于节点A需要删除的消息的目的节点是F,因此在目的节点表中第一行的ID列是F,并更新第一行中的列c,将c的值加1,然后使用当前的时间戳来替换列t,并且刷新转发机会次数的估计值n的取值:
即,根据当前消息的total_opportunities及对应的目的节点表中的本条记录更新的次数c计算转发机会次数估计值n:
同时,在消息信息表中新建一行用于记录与新接收到消息相关的信息,此时,与该消息相对应的目的节点表中本条记录更新的次数c为1。
另一方面,若在消息信息表中删除了一行消息记录,但是,该消息记录对应的目的节点还未记载在目的节点中(即该消息记录的目的节点为新目的节点),此时,查看目的节点表的行数是否达到最大值M,若目的节点表的行数未达到最大值M,则新建一行,并用消息记录中的total_opportunities值设置为n,将c的值设置为1,t值设为当前时间戳;若目的节点表的行数已达到最大值M,则就找到具有最早时间戳t的行,并替换该行。
在实际情况中,转发机会的次数根据情景的不同会有所不同。因此,本发明实施例提出自适应的方法;该方法很灵活,并且不需要任何预设参数。如果相遇的次数比较多时,基于上述方法转发消息可减少消息堵塞,并高概率地转发消息给最优中继节点。
本发明实施例采用了单拷贝方式发送消息,即消息只转发一次的情况下,根据应用环境自动调节延缓转发的次数;通过延缓转发机制,来提高获得最优转发机会的概率,减少数据中转次数,降低节点能耗。
实施例二
图3为本发明实施例二提供的一种网络节点的示意图。如图3所示,该节点包括:
最高效用值比较模块31,用于比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小;
判断模块32,用于当maximum_utility_value<P2时,判断拒绝转发该消息的次数reject_times是否大于等于拒绝次数的阈值k,或当maximum_utility_value>P2时,判断reject_times是否大于等于转发机会次数估计值n,其中,n>k;
消息转发模块33,用于当reject_times大于等于拒绝次数的阈值k,或大于等于转发机会次数估计值n时,将该消息转发至所述第二节点;
最高效用值更新模块34,用于当maximum_utility_value<P2,且拒绝转发该消息的次数reject_times小于拒绝次数的阈值k时,利用P2的值更新所述最高效用值:maximum_utility_value'=P2。
该节点还包括:
效用值向量交换模块35,用于与所述节点B交换效用值向量,所述效用值向量中包含发送不同消息时的效用值;
效用值比较模块36,用于比较当前节点发送当前消息至目的节点E的效用值PA,E,与节点B发送当前消息至目的节点E的效用值PB,E之间的大小;
中转节点赋予模块37,用于当PA,E<PB,E时,将节点B作为潜在中转节点。
该节点还包括:消息信息表更新模块38,用于更新消息信息表;且该模块包括:
消息信息表信息更新模块381,用于当判断reject_times小于拒绝次数的阈值k,或reject_times小于转发机会次数估计值n时,消息信息表中的reject_times的次数加1;以及当消息转发至第二节点或拒绝将该消息发送至第二节点后,将消息信息表中的当前消息转发总机会数total_opportunities加1。
所述消息信息表更新模块38还包括:
消息信息表新建模块382,用于当消息信息表中没有当前消息的记录且该消息信息表的行数达到所能容纳的最大值时,将消息信息表中最早的一条消息记录删除,再新建一行用于记录与当前消息相关的信息:源节点、目的节点、reject_times及total_opportunities;
目的节点表新建模块383,用于当删除的所述消息信息表中最早的一条消息记录对应的目的节点未记载在目的节点表中,则在目的节点表中新建一行,并将目的节点表中的本条记录更新的次数c的值设为1;
目的节点表更新模块384,用于当删除消息信息表中一条消息记录后,将目的节点表中本条记录更新的次数c加1、将被删除消息最近更新时间作为目的节点表中的本条记录上次的更新时间t以及利用被删除消息的total_opportunities的平均值来计算转发机会次数估计值n。
需要说明的是,上述装置中包含的各个功能模块所实现的功能的具体实现方式在前面的各个实施例中已经有详细描述,故在这里不再赘述。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
Claims (10)
1.一种提高最优转发概率的网络数据路由方法,其特征在于,该方法包括:
第一节点比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小;
若maximum_utility_value<P2,则所述第一节点判断拒绝转发该消息的次数reject_times是否大于等于拒绝次数的阈值k;若是,则将该消息转发至所述第二节点;否则,所述第一节点利用P2的值更新所述最高效用值:maximum_utility_value'=P2,并利用更新后的最高效用值进行消息的转发判断;
若maximum_utility_value>P2,则所述第一节点判断reject_times是否大于等于转发机会次数估计值n,若是,则将该消息转发至所述第二节点;其中,n>k。
2.根据权利要求1所述的方法,其特征在于,所述第一节点比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小之前包括:
所述第一节点与所述第二节点交换效用值向量,所述效用值向量中包含发送不同消息时的效用值;
所述第一节点比较发送当前消息至目的节点的效用值P1,与第二节点发送当前消息至目的节点的效用值P2之间的大小;
若P1<P2,则所述第一节点将第二节点作为潜在中转节点。
3.根据权利要求1所述的方法,其特征在于,该方法还包括:更新消息信息表;具体的:当所述第一节点判断reject_times小于拒绝次数的阈值k,或reject_times小于转发机会次数估计值n时,拒绝将该消息发送至第二节点,并将消息信息表中的reject_times的次数加1;
当所述第一节点将消息转发至第二节点或第一节点拒绝将该消息发送至第二节点后,将消息信息表中的当前消息转发总机会数total_opportunities加1。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述拒绝次数的阈值k的计算公式包括:
其中,e为自然对数的底数。
5.根据权利要求3所述的方法,其特征在于,所述更新消息信息表还包括:若所述消息信息表中没有当前消息的记录且该消息信息表的行数达到所能容纳的最大值,则将消息信息表中最早的一条消息记录删除,并更新该消息记录对应的目的节点表:将目的节点表中本条记录更新的次数c加1、将被删除消息最近更新时间作为目的节点表中的本条记录上次的更新时间t以及利用被删除消息的total_opportunities的平均值来计算转发机会次数估计值n;再新建一行用于记录与当前消息相关的信息:源节点、目的节点、reject_times及total_opportunities;
若删除的所述消息信息表中最早的一条消息记录对应的目的节点未记载在目的节点表中,则在目的节点表中新建一行,并将目的节点表中的本条记录更新的次数c的值设为1。
6.根据权利要求5所述的方法,其特征在于,所述转发机会次数估计值n的计算方法包括:
根据消息的total_opportunities及对应的目的节点表中的本条记录更新的次数c计算转发机会次数估计值n:
7.一种网络节点,其特征在于,该节点包括:
最高效用值比较模块,用于比较发送当前消息到目的节点的最高效用值maximum_utility_value,与作为潜在中转节点的第二节点转发当前消息到目的节点的效用值P2之间的大小;
判断模块,用于当maximum_utility_value<P2时,判断拒绝转发该消息的次数reject_times是否大于等于拒绝次数的阈值k,或当maximum_utility_value>P2时,判断reject_times是否大于等于转发机会次数估计值n,其中,n>k;
消息转发模块,用于当reject_times大于等于拒绝次数的阈值k,或大于等于转发机会次数估计值n时,将该消息转发至所述第二节点;
最高效用值更新模块,用于当maximum_utility_value<P2,且拒绝转发该消息的次数reject_times小于拒绝次数的阈值k时,利用P2的值更新所述最高效用值:maximum_utility_value'=P2。
8.根据权利要求7所述的网络节点,其特征在于,该节点还包括:
效用值向量交换模块,用于与所述节点B交换效用值向量,所述效用值向量中包含发送不同消息时的效用值;
效用值比较模块,用于比较当前节点发送当前消息至目的节点E的效用值PA,E,与节点B发送当前消息至目的节点E的效用值PB,E之间的大小;
中转节点赋予模块,用于当PA,E<PB,E时,将节点B作为潜在中转节点。
9.根据权利要求7所述的网络节点,其特征在于,该节点还包括:消息信息表更新模块,用于更新消息信息表;且该模块包括:
消息信息表信息更新模块,用于当判断reject_times小于拒绝次数的阈值k,或reject_times小于转发机会次数估计值n时,消息信息表中的reject_times的次数加1;以及当消息转发至第二节点或拒绝将该消息发送至第二节点后,将消息信息表中的当前消息转发总机会数total_opportunities加1。
10.根据权利要求9所述的网络节点,其特征在于,所述消息信息表更新模块还包括:
消息信息表新建模块,用于当消息信息表中没有当前消息的记录且该消息信息表的行数达到所能容纳的最大值时,将消息信息表中最早的一条消息记录删除,再新建一行用于记录与当前消息相关的信息:源节点、目的节点、reject_times及total_opportunities;
目的节点表新建模块,用于当删除的所述消息信息表中最早的一条消息记录对应的目的节点未记载在目的节点表中,则在目的节点表中新建一行,并将目的节点表中的本条记录更新的次数c的值设为1;
目的节点表更新模块,用于当删除消息信息表中一条消息记录后,将目的节点表中本条记录更新的次数c加1、将被删除消息最近更新时间作为目的节点表中的本条记录上次的更新时间t以及利用被删除消息的total_opportunities的平均值来计算转发机会次数估计值n。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310211873.2A CN103346966B (zh) | 2013-05-30 | 2013-05-30 | 一种提高最优转发概率的网络数据路由方法及网络节点 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310211873.2A CN103346966B (zh) | 2013-05-30 | 2013-05-30 | 一种提高最优转发概率的网络数据路由方法及网络节点 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103346966A true CN103346966A (zh) | 2013-10-09 |
CN103346966B CN103346966B (zh) | 2016-04-20 |
Family
ID=49281742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310211873.2A Expired - Fee Related CN103346966B (zh) | 2013-05-30 | 2013-05-30 | 一种提高最优转发概率的网络数据路由方法及网络节点 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103346966B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104901888A (zh) * | 2015-06-03 | 2015-09-09 | 安徽大学 | 一种基于活跃性调节的时延容忍网络数据路由方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222438A (zh) * | 2008-01-28 | 2008-07-16 | 北京航空航天大学 | 一种机会网络下的数据传输方法 |
CN101478805A (zh) * | 2009-01-20 | 2009-07-08 | 中国科学院软件研究所 | 一种基于机会通信的DTN网络Anycast路由方法 |
-
2013
- 2013-05-30 CN CN201310211873.2A patent/CN103346966B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101222438A (zh) * | 2008-01-28 | 2008-07-16 | 北京航空航天大学 | 一种机会网络下的数据传输方法 |
CN101478805A (zh) * | 2009-01-20 | 2009-07-08 | 中国科学院软件研究所 | 一种基于机会通信的DTN网络Anycast路由方法 |
Non-Patent Citations (2)
Title |
---|
王振: ""DTN网络中基于最优停止理论的机会主义路由算法研究"", 《万方数据库》 * |
高永智: ""DTN网络中基于效用路由方案研究"", 《万方数据库》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104901888A (zh) * | 2015-06-03 | 2015-09-09 | 安徽大学 | 一种基于活跃性调节的时延容忍网络数据路由方法 |
CN104901888B (zh) * | 2015-06-03 | 2018-03-27 | 安徽大学 | 一种基于活跃性调节的时延容忍网络数据路由方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103346966B (zh) | 2016-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Si et al. | DaVe: Offloading delay-tolerant data traffic to connected vehicle networks | |
Singh et al. | Power-aware routing in mobile ad hoc networks | |
Yu et al. | Probabilistic routing algorithm based on contact duration and message redundancy in delay tolerant network | |
Kawamoto et al. | Toward terminal-to-terminal communication networks: A hybrid MANET and DTN approach | |
CN104469874A (zh) | 一种基于概率中心度的机会网络的消息转发方法 | |
Tekouabou et al. | DTN routing hierarchical topology for the internet of things | |
Lambrinos et al. | Applying delay tolerant networking routing algorithms in maritime communications | |
Yao et al. | A utility-based buffer management policy for improving data dissemination in opportunistic networks | |
CN103338490B (zh) | 一种网络数据路由的方法及网络节点 | |
CN103346966B (zh) | 一种提高最优转发概率的网络数据路由方法及网络节点 | |
Thomas et al. | Using group structures for efficient routing in delay tolerant networks | |
Al-Fagih et al. | Routing schemes for delay-tolerant networks-an applications perspective | |
Ayub et al. | Resource refrain quota based routing protocol for delay tolerant network | |
CN113258986B (zh) | 一种基于区块链技术的卫星自组织网络olsr安全路由系统 | |
Rehman et al. | SS‐drop: a novel message drop policy to enhance buffer management in delay tolerant networks | |
CN103078872A (zh) | 一种基于assr的自适应种子喷射焦点协议 | |
Hernández et al. | Epidemic routing in vehicular delay-tolerant networks: the use of heterogeneous conditions to increase packet delivery ratio | |
Xu et al. | Energy Efficient Routing for Multi-modal Underwater Wireless Sensor Networks | |
Ayub et al. | DF++: An adaptive buffer-aware probabilistic delegation forwarding protocol for Delay Tolerant Network | |
Tang et al. | Knowledge‐based replica deletion scheme using directional anti‐packets for vehicular delay‐tolerant networks | |
CN105684548A (zh) | 无线终端设备及其控制方法 | |
Iqbal | Multischeme spray and wait routing in delay tolerant networks exploiting nodes delivery predictability | |
Huang et al. | Message Cache Management Optimization Research for Community-based Opportunistic Network | |
Kaur et al. | An enhanced spray-copy-wait DTN routing using optimized delivery predictability | |
Kimura et al. | Aggressive Recovery Scheme for Multicast Communication in Intermittently Connected Mobile Ad-Hoc Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160420 Termination date: 20210530 |
|
CF01 | Termination of patent right due to non-payment of annual fee |