一种基于链路传输能力的容迟容断网络路由方法

文档序号:9352770阅读:592来源:国知局
一种基于链路传输能力的容迟容断网络路由方法
【技术领域】
[0001] 本发明涉及容迟容断网络(Delay-and Disrupted-Tolerant Network,DTN)的消 息路由领域,特别是涉及一种基于链路传输能力的DTN网络消息路由方法。
【背景技术】
[0002] 不同于传统网络,DTN网络通常工作在受限的环境中。这决定了 DTN网络具有传 统网络不具备的很多特性,包括:间歇性连接、高延迟、机会传输等等。传统路由方法都无法 适用于这种网络环境,因此需要对DTN网络中的路由算法重新进行研究设计。
[0003] 到目前为止,研究人员已经提出了许多DTN网络路由方法,按照路由选择策略可 以分为以下三类:
[0004] (1)基于接触概率的路由方法:
[0005] 基于接触概率的路由方法,根据节点间的接触历史信息,预测两个节点在未来某 一时间内再次进行接触的概率。节点在进行消息转发时,将消息转发给那些接触目标节点 的概率比自己大的节点,从而提高消息转发至目标节点的概率。已有基于概率的路由方法 包括:Prophet Router、MaxProp Router 和 Delegation Router 等
[0006] (2)基于节点关系的路由方法
[0007] 基于节点关系的路由方法,根据节点间的运动模型、接触模型等,预测节点间的关 系,然后根据节点间的关系进行转发。目前主要应用于移动社交网络,通过预测节点的社会 属性和社会关系,将消息转发至与目标节点关系密切的节点,从而达到提高消息转发至目 标接待你的概率。已有基于节点关系的路由方法包括:Social Feature-based Multi-path Routing和 An OptimalProbabilistic Forwarding Protocol 等。
[0008] (3)基于节点密度的路由方法
[0009] 基于节点密度的路由方法,根据DTN网络中局部节点的密度,将局部密度较高的 节点区域组织成一个簇,然后将消息的转发过程转化为簇内和簇间两部分。此类路由方法, 一般通过为每一个簇选取一个Leader节点,负责消息在簇内和簇间的转发。簇内有消息进 行转发时,先将消息转发给Leader节点,然后由Leader节点负责转发。已有基于节点密度 的路由方法包括:CAMR、E頂D等。
[0010] 以上各种路由方法都有其优点及适用场景,但是在DTN网络中,它们并不算是完 美的路由方法。而且,这些路由方法都是从节点的角度进行路由的选择,没有考虑网络中链 路对路由的指导作用,对网络信息的利用不是很充足。在对DTN网络中节点间的链路进行 抽象定义后,可以更充分的利用网络信息,从而提高网络路由的效率。

【发明内容】

[0011] 本发明以提高网络消息交付率为目标,以链路传输能力和消息优先为核心思想, 解决DTN网络中的消息路由问题。具体包括:
[0012] 1.为了描述DTN网络中的传输链路,提出了 "虚拟链路"的概念。对链路"容量" 的概念进行定义,来代表和区分虚拟链路的传输能力。定义容量的计算方法、存储方式以及 传播与更新方法。
[0013] 2.定义消息转发容量的概念、存储方式以及存储结构。定义消息的丢弃优先级和 转发优先级,并在此基础之上设计了基于链路传输能力的路由转发策略。
[0014] 与现有技术相比,本发明的创新之处在于:以DTN网络链路传输能力和消息的优 先级为核心思想,提高DTN网络消息交付率。具体体现在:
[0015] 1.虚拟链路的定义一方面体现了 DTN网络中"路由选择即下一跳节点选择"的特 性,另一方面也体现了 DTN网络的传输链路不对称性。容量的定义区分了 DTN网络中虚拟 链路和非DTN网络中的链路传输能力,反映了 DTN网络中端到端的传输能力。
[0016] 2.转发容量的定义体现了消息当前的交付状态,在此基础之上定义的消息丢弃优 先级体现了在进行缓冲区申请的时候消息被丢弃的可能性。消息的转发优先级考虑建立多 个链接的情况下,如何进行消息和链接的选择。在消息优先级定义的基础之上,路由的转发 决策过程则转化为消息和链路选择的过程。
【附图说明】
[0017] 图1虚拟链路及容量描述
[0018] 图2容量存储结构
[0019] 图3转发容量数据结构
【具体实施方式】
[0020] 参阅图1。图1描述了包含两条虚拟链路的DTN网络。在DTN网络中,消息的转发 是根据下一跳节点进行决策的,下一跳节点至目标节点的传输能力越高,也就意味着消息 更加可能或者更快传输至目标节点。源节点仅关心下一跳节点能否或者多快将消息转发至 目标节点,而不关心下一跳节点如何将消息转发至目标节点,因此可以将源节点、下一跳节 点和目标节点这三种节点组成的路径看成是一条"虚拟链路",源节点根据这条"虚拟链路" 的传输能力来选择下一跳节点。
[0021] 考虑节点A(源节点)、节点B(下一跳节点)和节点C(目标节点)组成的虚拟链 路。图中节点之间采用虚线连接,是由于节点之间的连接不是持续的,虚线连接代表两个 节点以前建立过连接或者将来将会建立连接。这也是为什么将链路称作"虚拟"的原因,即 DTN网络中不存在持续链接,链接是突发性且短暂的。另外,节点B和节点D之间的连接存 在一片"云",这是因为,源节点不关心下一跳节点如何将消息转发至目标节点,只需要知道 可以将消息转发至目标节点即可。
[0022] 本发明中使用vl(A,B,C)代表一条虚拟链路,其源节点为A,下一跳节点为B,目标 节点为C。虚拟链路的存在是有条件的,下面首先定义可达节点和可直达节点概念:
[0023] ?可达节点:若节点X能够将消息转发至节点Y,那么节点Y是节点X的可达节点。 可达节点的定义是非对称的。即若节点Y是节点X的可达节点,并不说明节点X也是节点 Y的可达节点。
[0024] ?可直达节点:若节点X可以与节点Y进行直接接触,那么节点Y是节点X的可 直达节点。可直达节点的定义是对称的。也就是,若节点Y是节点X的可直达节点,那么节 点X也是节点Y的可直达节点。直观上理解,节点X与节点Y相遇之后,既是节点X与节点 Y进行直接接触,也是节点Y与节点X进行直接接触。此外,若节点Y是节点X的可直达节 点,那么节点Y必是节点X的可达节点。反之则不然。
[0025] 之后,我们可以引入虚拟链路存在的充要条件,即:虚拟链路vl (A,B,C)存在的充 要条件是节点B是节点A的可直达节点且节点C是节点B的可达节点。由此充要条件可以 知道,虚拟链路的存在性也是非对称的。当虚拟链路vl (A,B,C)存在的时候,我们不知道 vl (C,B,A)是否存在。另外,存在一类特殊的虚拟链路,即vl (A,B,B)。vl (A,B,B)代表一条 仅由两个节点组成的虚拟链路,在这条虚拟链路上转发消息的时候,源节点直接将消息转 发至目标节点。对于vl(A,B,B)的存在性与不同虚拟链路的要求相同,节点B必须是节点 A的可直达节点,而显然节点B是自己的可达节点。
[0026] 为了根据"虚拟链路"来进行消息的转发,需要对虚拟链路的传输能力进行定义。 定义"虚拟链路"的传输能力为"容量"。节点X至节点Y的容量定义为:单位时间内可以从 节点X传输至节点Y的数据量,用C(X,Y)代表。从容量的定义可以看出,容量是有向的,也 就是节点X至节点Y的容量与节点Y至节点X的容量是不同的,即C(X,Y)辛C(Y,X),这符 合DTN网络传输能力的不对称性。如果用图结构来表示网络的话,那么有线网络就是一个 无向图,而DTN网络则是一个有向图。采用C(A,B,C)代表虚拟链路vl(A,B,C)的容量,由 虚拟链路的不对称性可知C (A,B,C)辛C (C,B,A)(假设vl (A,B,C)与vl (C,B,A)都存在)。
[0027] 为了计算导出容量的计算方法,首先考虑单条虚拟链路的情况。节点A至节点D 存在一条"虚拟链路" 一一vl(A,B,D)。考虑节点A需要转发1字节的消息到节点D,那么 节点A需要将消息转发给节点B,然后再由节点B转发至节点D。根据容量的定义可知,节 点A转发至节点B所需时间为4^^,节点B转发此消息至节点D所需时间为gg。那么节 点A转发1字节消息至节点C所需时间为,从而可得"虚拟链路" vl (A,B,D)的容量为:
[0028]
[0029] 再来考虑两条虚拟链路的情况,然后推广到任意有限条"虚拟链路"的情况。仍然 考虑节点A需要传输1字节的消息,那么通过"虚拟链路" vl (A,B,D)传输至节点D的时间 ^C(A,S,D),通过"虚拟链路"vl (A,C, D)传输至节点D的时间为^__。但是节点A至节点B 和节点C的容量是不同的,即C(A,B,B)与C(A,C,C)是不同的。在实际应用场景中,节点更 倾向于选择容量较大的路径进行转发,因此可以用
7欠代表 vl (A,B,D)和vl (A,B,D)的权值,那么节点A传输1字节到节点D的平均时间为:
[0030]
[0031] 从而得出节点A至节点D的容量为:
[0032]
[0033] 推广到一般情况,假设节点X可以通过n个可直达节点到达节点Y,其中第i个可 直达节点用Zi那代表,那么节点X至节点Y之间的容量为:
[0036] 参阅图2。图2描述了容量的存储结构,包括两个表结构:容量表(Node Capacity Table,NCT)和虚拟链路容量表(Virtual Link Capacity Table, VLCT)。在节点容量表中 Yi代表此条记录的目标节点,C(X,Y J代表源节点X到目标节点Yi的容量。在虚拟链路容 量表中,Zi代表此条记录的目标节点,是节点X的一个可直
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1