一种基于非合作博弈论的延迟容忍网络路由与缓存管理方法技术

技术编号:14815686 阅读:282 留言:0更新日期:2017-03-15 10:55
本发明专利技术提供的是一种基于非合作博弈论的延迟容忍网络路由与缓存管理策略。包括节点之间状态的转换、节点的路由选择及缓存管理。通过鼓励网络中的节点与其它节点建立连接,并为其他节点转发消息,来增加自身节点的效用贡献值,贡献值越大的节点所产生的消息的副本数越多,在路由阶段若节点的贡献值越大,则在选择下一跳节点并与之建立连接的成功率就越高。同时,当网络中节点缓存溢出时,贡献大的节点所产生的消息最后被删除。

【技术实现步骤摘要】

本专利技术属于延迟容忍网络(DTN)路由与缓存管理策略,主要涉及一种基于非合作博弈论的DTN路由与缓存管理策略。
技术介绍
DTN概念最初来源于星际互联网(IPN),星际互联网主要实现了如何在太空中进行通信,并且如何通过星际骨干网连接到互联网。随着时间推移,一系列的DTN应用也随之产生,这些应用能够适应地球上的各种环境。由于DTN中的节点具有移动性,间接连接性,资源极度有限等特性,并且消息在传递过程中会经历较长的时延,不能保证一定存在一条端到端完整路径,这些明显的网络特征给设计网络的一些核心功能时带来了巨大的挑战,例如路由机制和缓存管理机制等。因此,如何设计高效的DTN路由算法和缓存管理算法成为了DTN研究的重点问题之一。目前针对DTN路由机制及缓存管理已有大量研究。其中路由方面,根据网络中消息副本的数量将路由协议分类为单副本路由和多副本路由。在单副本路由协议中,同一个消息在网络中只有一个消息副本。单副本路由协议中最简单的是直接传输(DirectTransmissionRouting)路由协议。另一种常见单副本路由协议是最先连接路由协议(FirstContactRouting)。在多副本路由协议中,同一个消息在网络中可以有多个消息副本。其中,传染路由和概率路由是较为常见的路由算法。传染路由算法是一种基于洪泛的路由算法,网络中当两个节点相遇时交换对方没有的消息,经过足够多的消息交换后,理论上每个非孤立的节点都将收到所有的消息,从而实现消息的传输。概率性路由是基于预测的路由协议,根据节点之间历史相遇频率作为节点的传输预测值,将消息转发至到达目的节点的概率更大的节点。目前大多缓存管理策略只考虑了局部网络范围内的节点或者单个节点的本地信息来制定合适的缓存调度或丢弃策略。最为典型的缓存丢弃策略有以下5种:DL(DropLast/Droptail):当节点缓存被消息填满时,最后到达的消息将会被简单丢弃。DF(DropFront):当节点缓存溢出时,排在缓存队列中最前端的消息将被丢弃。DO(DropOldest):当节点缓存被消息填满时,丢弃节点缓存中产生时间最早即最老的消息。DY(DropYoungest):与DO丢弃策略相对应,DY策略是在节点缓存被消息填满时丢弃最近时间产生的即最年轻的消息。DLA(DropLargest):考虑到小容量(size)消息比大容量消息有更多的转发机会,因此,当节点缓存发生拥塞时,大容量消息就会最先被选择丢弃。DTN的性能受不同应用环境下的移动模型所影响,由于在城市环境中的节点节点具有社会性,自私等特性,并不愿消耗自己过多的资源,来接收其它节点所产生的消息。因此,现存的路由机制及缓存管理机制并不能使城市环境下的网络性能达到最优。为了解决网络中的节点具有自私性等问题,YuxinMao等人在文献《AGameTheoreticalModelforEnergy-AwareDTNRoutinginMANETswithNodes’Selfishness》中作者提出了一个基于博弈论的能量感知路由算法,在基于能量感知的路由算法中,通过鼓励节点为其他节点转发更多的消息,来从其它节点获得更多的服务。在文献《ADTNRoutingonNoncooperativeGameTheoryinaCityEnvironment》中,WenzaoLi等人提出了在城市环境下的一个基于非合作博弈路由算法,算法主要思想是下一跳节点的选择以及消息的递交都是基于非合作博弈的过程和城市环境的特点进行的,当两个节点相遇有消息转发时,该算法在博弈的过程中鼓励其中一个节点转发消息另一个节点接收消息。以上两个算法都能使网络具有较好的性能,但这俩个算法仅仅在路由阶段考虑了有关节点的自私性等问题,并没在缓存管理过程中考虑有关节点自私性等问题,当节点缓存溢出时,很容易删除为网络贡大的节点的消息,同时这两种算法也没考虑节点在建立连接时的博弈以及如何控制网络中消息的副本数。
技术实现思路
本专利技术的目的是针对网络中节点具有自私性,不愿意消耗自身的资源来接收其它节点的消息等问题而提出一种基于非合作博弈论的延迟容忍网络路由与缓存管理策略。本专利技术的目的是这样实现的:包括节点之间状态的转换、节点的路由选择及缓存管理,1.节点之间状态的转换网络节点具有空闲状态、连接状态、接收状态三种状态,当两个空闲状态的节点相遇,彼此之间有发送消息的请求,便建立连接,从空闲状态变为连接状态,如建立连接后,发现没有满足的消息进行转发,则从连接状态变为空闲状态;若两个空闲状态的节点建立连接后彼此之间的消息满足转发条件,则进行消息转发,处于连接状态的节点接收彼此的消息,消息接收完成之后,处于连接状态的节点释放连接,重新转向空闲状态;2.路由选择具体步骤步骤1:设置节点的贡献效用值为U(x),U(x)为非负常数;步骤2:节点每产生一个消息Mes(i)为该消息设置一个副本数阈值Ni标记,Ni=F(α)*U(x),F(α)为调节系数;网络中任意时刻消息Mes(i)的副本数最多为Ni,当转发消息时转发给下一跳节点的副本数为NO1=Nid*α1,其中α1为调节系数,此时当前节点的该消息副本数标记为Nid-NO1,接收该消息的节点中该消息的副本数标记为NO1,当节点中的消息数为1时,则直接递交给下一跳节点,其中,Nid为当前节点消息剩余数量;步骤3:当节点A与1个或多个节点相遇时相遇时,若节点B为节点A中某个消息的目的节点,则节点A直接将B作为下一跳节点,将消息转发给目的节点B,否则执行步骤4;步骤4:节点A在邻居节点中选择一个贡献效用值U(x)最小的的节点,若有多个节点的效用率最小则随机选择;步骤5:计算节点A的连接函数Fnode,其中连接函数Bufv(x)为节点x缓存空闲的空闲的大小,Buft(x)为节点x缓存空间总的大小,Deld(x)为节点x递交给该消息目的节点的次数,β1+β2+β3=1;步骤6:若节点A的连接函数值小于节点B的连接函数值,则A向B发起连接(A-B),执行步骤7,否则不连接;步骤7:B以概率同意连接节点A向节点B建立的连接,其中β为调节系数;步骤8:若A与B连接建立,A失败,A的U(a)=U(a)-ξ*U(a),同时B成功,B的U(b)=U(b)+ξ*U(b),反之,若B不同意连接则B失败执行U(b)减小操作U(b)=U(b)-ξ*U(b),其中ξ为任意常数;3.缓存管理策略节点缓存管理分为两个阶段,阶段1:当节点A中的消息的源节点中最大的贡献效用值小于阈值η1,则节点A不进行消息转发请求,否则执行节段2;阶段2:当网络中两个节点(A-B)建立连接后,若节点A有多个消息需要发送,节点A发消息时先发送源节点贡献效用值大的节点的消息,节点B以的概率接收消息,其中ΔE为剩余缓存值,δ为调节系数,每接收一个消息自身贡献系数ΔC增加0.1,每拒绝接收一个消息自身的贡献系数ΔC减少0.1,当节点B为了接收其他贡献大的节点的消息而发生拥塞的时候,删除消息的时候,先删除消息的源节点贡献效用值小的节点的消息,自身节点的贡系数不变;节点B的缓存过程与节点A相同;4.当两个节点建立连接后两个节点进行接收消息的博弈矩阵当节点A和节点B建立连接后,若节点A和节点B同时接收了对方的本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/62/201610899754.html" title="一种基于非合作博弈论的延迟容忍网络路由与缓存管理方法原文来自X技术">基于非合作博弈论的延迟容忍网络路由与缓存管理方法</a>

【技术保护点】
一种基于非合作博弈论的延迟容忍网络路由与缓存管理策略,包括节点之间状态的转换、节点的路由选择及缓存管理,其特征是:(1).节点之间状态的转换网络节点具有空闲状态、连接状态、接收状态三种状态,当两个空闲状态的节点相遇,彼此之间有发送消息的请求,便建立连接,从空闲状态变为连接状态,如建立连接后,发现没有满足的消息进行转发,则从连接状态变为空闲状态;若两个空闲状态的节点建立连接后彼此之间的消息满足转发条件,则进行消息转发,处于连接状态的节点接收彼此的消息,消息接收完成之后,处于连接状态的节点释放连接,重新转向空闲状态;(2).路由选择具体步骤步骤1:设置节点的贡献效用值为U(x),U(x)为非负常数;步骤2:节点每产生一个消息Mes(i)为该消息设置一个副本数阈值Ni标记,Ni=F(α)*U(x),F(α)为调节系数;网络中任意时刻消息Mes(i)的副本数最多为Ni,当转发消息时转发给下一跳节点的副本数为NO1=Nid*α1,其中α1为调节系数,此时当前节点的该消息副本数标记为Nid‑NO1,接收该消息的节点中该消息的副本数标记为NO1,当节点中的消息数为1时,则直接递交给下一跳节点,其中,Nid为当前节点消息剩余数量;步骤3:当节点A与1个或多个节点相遇时相遇时,若节点B为节点A中某个消息的目的节点,则节点A直接将B作为下一跳节点,将消息转发给目的节点B,否则执行步骤4;步骤4:节点A在邻居节点中选择一个贡献效用值U(x)最小的的节点,若有多个节点的效用率最小则随机选择;步骤5:计算节点A的连接函数Fnode,其中连接函数Bufv(x)为节点x缓存空闲的空闲的大小,Buft(x)为节点x缓存空间总的大小,Deld(x)为节点x递交给该消息目的节点的次数,β1+β2+β3=1;步骤6:若节点A的连接函数值小于节点B的连接函数值,则A向B发起连接(A‑B),执行步骤7,否则不连接;步骤7:B以概率同意连接节点A向节点B建立的连接,其中β为调节系数;步骤8:若A与B连接建立,A失败,A的U(a)=U(a)‑ξ*U(a),同时B成功,B的U(b)=U(b)+ξ*U(b),反之,若B不同意连接则B失败执行U(b)减小操作U(b)=U(b)‑ξ*U(b),其中ξ为任意常数;(3).缓存管理策略节点缓存管理分为两个阶段,阶段1:当节点A中的消息的源节点中最大的贡献效用值小于阈值η1,则节点A不进行消息转发请求,否则执行节段2;阶段2:当网络中两个节点(A‑B)建立连接后,若节点A有多个消息需要发送,节点A发消息时先发送源节点贡献效用值大的节点的消息,节点B以的概率接收消息,其中ΔE为剩余缓存值,δ为调节系数,每接收一个消息自身贡献系数ΔC增加0.1,每拒绝接收一个消息自身的贡献系数ΔC减少0.1,当节点B为了接收其他贡献大的节点的消息而发生拥塞的时候,删除消息的时候,先删除消息的源节点贡献效用值小的节点的消息,自身节点的贡系数不变;节点B的缓存过程与节点A相同;(4).当两个节点建立连接后两个节点进行接收消息的博弈矩阵当节点A和节点B建立连接后,若节点A和节点B同时接收了对方的消息,则节点A和节点B的收益分别为(U(a)λ1(1+ΔCA),U(b)λ1(1+ΔCB));当节点A接收了节点B的消息,而节点B没接收节点A的消息则节点A的效用值增加到U(a)λ2(1+ΔCA),节点B的效用值减少到U(b)λ(1‑ΔCB);节点B接收了节点A的消息,而节点A没接收节点B的消息节点A的效用值减少到U(a)λ(1‑ΔCA),节点B的效用值增加到U(b)λ2(1+ΔCB),若节点A和节点B都没接收对方的消息,则节点A和节点B的效用值不变,其中,λ2>λ1>λ,ΔCX为节点X的贡献系数。...

【技术特征摘要】
1.一种基于非合作博弈论的延迟容忍网络路由与缓存管理策略,包括节点之间状态的转换、节点的路由选择及缓存管理,其特征是:(1).节点之间状态的转换网络节点具有空闲状态、连接状态、接收状态三种状态,当两个空闲状态的节点相遇,彼此之间有发送消息的请求,便建立连接,从空闲状态变为连接状态,如建立连接后,发现没有满足的消息进行转发,则从连接状态变为空闲状态;若两个空闲状态的节点建立连接后彼此之间的消息满足转发条件,则进行消息转发,处于连接状态的节点接收彼此的消息,消息接收完成之后,处于连接状态的节点释放连接,重新转向空闲状态;(2).路由选择具体步骤步骤1:设置节点的贡献效用值为U(x),U(x)为非负常数;步骤2:节点每产生一个消息Mes(i)为该消息设置一个副本数阈值Ni标记,Ni=F(α)*U(x),F(α)为调节系数;网络中任意时刻消息Mes(i)的副本数最多为Ni,当转发消息时转发给下一跳节点的副本数为NO1=Nid*α1,其中α1为调节系数,此时当前节点的该消息副本数标记为Nid-NO1,接收该消息的节点中该消息的副本数标记为NO1,当节点中的消息数为1时,则直接递交给下一跳节点,其中,Nid为当前节点消息剩余数量;步骤3:当节点A与1个或多个节点相遇时相遇时,若节点B为节点A中某个消息的目的节点,则节点A直接将B作为下一跳节点,将消息转发给目的节点B,否则执行步骤4;步骤4:节点A在邻居节点中选择一个贡献效用值U(x)最小的的节点,若有多个节点的效用率最小则随机选择;步骤5:计算节点A的连接函数Fnode,其中连接函数Bufv(x)为节点x缓存空闲的空闲的大小,Buft(x)为节点x缓存空间总的大小,Deld(x)为节点x递交给该消息目的节点的次数,β1+β2+β3=1;步骤6:若节点A的连接函数值小于节点B的连接函数值,则A向B发...

【专利技术属性】
技术研发人员:王慧强王贺哲吕宏武冯光升郭方方
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:黑龙江;23

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

1