容迟网络中的路由算法笔记(二)

第二章 容迟网络典型路由算法

背景:容迟网络路由算法区别于传统的Internet路由算法主要体现在两个方面:
①传统的Internet路由问题假设网络拓扑固定已知,而容迟网络中的节点移动导致网络拓扑动态变化,网络中任意两个节点之间某个时刻或者某段时间内不存在一条稳定的端到端连通路径;
②与传统Internet路由算法以最小跳数、最短路径为路由目标不同, 容迟网络中的路由算法通常以最大化消息投递概率和最小化传输延迟为目标。
为了克服容迟网络中链路的间歇连通(intermittent connectivity),容迟网络中路由算法中的数据转发须采用“存储-携带-转发”模式。

容迟网络路由算法分类

DTN路由协议分类
在这里插入图片描述

非社会感知路由算法:

(1)基础设施辅助路由算法
釆用特殊的移动受控节点来负责容迟网络中节点间的消息寻路和传输,节点通过控制自己的移动行为,按照一定的移动路线在网络相互割裂的区域进行移动,以“存储 携带-转发”的方式辅助网络进行消息转发,提高消息投递率。

举例-----消息渡船(message ferry, MF)算法其中消息渡船或节点的运动是非随机的。通过引入一个称为消息渡船的特殊移动节点并通过规划该节点的移动路线,协助区域间的消息传输。

(2)非基础设施辅助路由算法

1. 复制策略路由算法:节点在向中继节点进行消息复制时,不考虑中继节点的选择问题。常见的方法主要有洪泛(flooding)以及受控洪泛(controlled flooding)。
其中DD路由算法传递消息所需要的跳数是1,不向任何中继节点复制消息,源节点一直保存缓存信息,每个节点只将消息直接传递给目的节点。(消耗的网络资源少,但是时延较大)
两跳中继多次复制的路由策略。源节点将消息复制给与其关联的所有邻居节点,这些邻居节点不再进行复制操作,而是将这些消息传输至与消息有关联的目的节点。成功的概率相比一跳传输算法要增大许多,但增加了带宽和存储的消耗,多用于传感器网络中。
基于树的洪泛算法中,将副本传给中继节点的任务被移交给最先与任意上游节点建立连接的节点。传送的信息附带一块控制域,该域指明了中继节点能够产生和传送多少份副本。

基于洪泛的经典路由算法:

(1)Epidemic路由算法:利用节点移动性来增加节点间的连接能力,进行消息交换,最终将源节点产生的消息传输到目的节点,并通过增加束副本的份数来增大传输率。
每个节点维护一个消息总结向量,该向量记录节点缓存中存储携带了哪些消息。当两个节点能够连接时通过交换消息向量来彼此交换缺少的消息。经过一段时间,网络中的每个节点将收到所有的消息。
优点是不需要额外的拓扑控制信息,同时可以取得高的消息投递率和低的端到端时延,无需对链路状态进行预测与估计,实施起来较为简单。
缺点是网络中存在大量的冗余副本将导致节点能耗增加和缓存溢出,从而导致网络的资源利用率低和整体运行效能低下。
算法主要适用于缓存和带宽充足的场景。
传染病路由算法消息交换的过程:节点A接触到节点B,启动一个反熵的会话。首先,A节点将其总结向量SVA传送到B,SV1记录节点A缓存的所有消息。然后,B执行集合SV和SVA之间逻辑与(And)运算,即B节点测定A节点携带而B没有的消息,并向A节点请求发送这些消息。最后,A 节点发送所需消息给B。当B接触到一个新的邻居节点时,重复上述过程。

在这里插入图片描述在这里插入图片描述

(2) Spray & Wait路由算法:由两个阶段组成:Spray阶段和Wait阶段。Spray阶段实际上是一种基于L个邻居的泛洪,源节点将需要传输的消息复制L份,并独立地转发给L个不同的中继节点,如果在该阶段发现目的节点,则消息传输结束,若在该阶段没有发现目的节点,则转入Wait阶段。在Wait阶段,携带消息副本的L个中继节点不再转发消息,而是各自执行直接传输算法,等待与目的节点的相遇机会。
根据在Spray & Wait路由算法最初的Spray阶段L个消息副本如何扩散的问题, 可以设计多种不同的“Spraying”启发式方法。
(1)Source Spray & Wait算法:源节点向首先遇到的L个不同的节点发送1份消息副本
(2)Binary Spray & Wait算法:在 Spray阶段,消息的源节点将L个初始消息副本中的一半分发给第个遇到的节点,然后当源节点或者中间节点有>1个消息副本时,若遇到新的节点,则将一半(向上取整)的消息复制转发给该节点,本身保留余下的副本信息,当节点只剩下一个副本信息时,则不再向其他中间节点传送副本,而是进行等待,对目的节点执行直接传输。
即一个是一个一个发送给遇到的节点,一个是一半一半发给遇到的节点。
Binary Spray & Wait算 在节点的移动符合独立同分布(independent and identically distributed, IID)的情况下可以取得最优的消息期望投递,故适用于节点移动具有该特性的网络环境。

优点是在一定程度上减少了网络中传输的信息数量.,降低网络的负载,算法简单易实现;缺点是与传染病算法相比,Spray & Wait算法 加大了消息传输的平均时延。该算法适用于缓存和带宽较为充足,但是需要有效利用这些资源的网络中。

(3) Spray & Focus 路由算法:当节点缓存中只剩余一个消息副本时,中继节点转换到聚焦阶段(focus phase)。与Spray & Wait算法不同的是,在等待阶段节点直接将消息传递给目的节点,而在聚焦阶段按照给定的标准可以将消息转发给其他中继节点。转发决策是建立在系列计时器的基础上的,那些计时器记录两个节点最后相遇的时间。
其中每个节点维护一个时间向量,记录该节点与网络中其他节点从最后相遇到现在时刻的时间间隔。时间变量定义了一个效用函数Ui(j),表示一个节点i给另一节点j传递信息的能力。只有当UB(D)>UA(D)+Uth时,节点A才将消息传递给节点B,其中Uth是效用值门限参数。随着时间增加,时间效用值也变得不可靠,还应该增加A到那些与B频繁接触的节点的效用值。时间传递性函数能使远离目标的节点快速分散新鲜消息,因此减少一个给定节点因移动带来的位置的不稳定性。

(4) Prophet路由算法:与传染病路由算法盲目地向所有邻居节点复制消息不同,Prophet路由算法中的每个节点将会利用节点间相遇的历史信息和传递性来估计到达目的节点的概率,选择下一跳节点。其中用投递预测值(deliver probability)的指标来描述节点之间成功传输消息的概率。每当两个节点A和B相遇时,只有当B到达目的节点的投递预测值大于A时,A才向B复制消息。
投递预测值P(a,b)的计算包含三部分:更新、衰退、传递性。当两个节点相遇时,首先更新两节点的投递预测值。若两个节点相遇越频繁,那么他们彼此的投递预测值也越高。
相比较于传染病路由算法,Prophet路由算法有选择性的复制消息,避免生成低效传输的消息副本,提高网络的资源利用率。所以Prophet算法具有更高的平均消息传输率和更低的通信负载,平均时延方面也表现较好。
缺点是消息管理机制方面可以使用一些其他更好的策略,例如丢弃被转发次数最大的信息;减少所需的缓冲空间,并进一步提高性能, 可以允许节点广播一个ACK给其他节点,通知其他节点删除己传递的消息,给其他消息留更多的资源。

几个路由算法比较截图
在这里插入图片描述

2. 转发策略路由算法:转发策略的路由通常也称为单副本路由,是根据网络的拓扑知识来指定一个或几个用于衡量节点作为中继转发某消息的合适程度或链路的传输时延等的效用指标。单副本转发策略必须确保据此所选出的中继节点能够比源节点更好的胜任消息投递工作,如果可以设定出能够准确描述节点属性的效用指标,则可以保证在网络中只有一个消息的副本在传输时达到一个较为理想的投递率,保证可靠传输。
知识ORACLE集有四种类型:接触总结、接触、排队和流量需求,根据ORACLE的类型,提出了 FC (first contact)、MED (minimum expected delay)、ED (earliest dclivciy)、EDLQ (earliest delivery with local queue) 、EDAQ (earliest delivery with all queue)和 LP (linear program)六个算法

3. 混合策略路由算法:在网络密度稀疏、消息生存时间有限的情况下,即使复制消息会产生冗余,仍比消息转发更有效。因为消息副本的增加可以提升扩散速度,并且多个副本能使它们中至少一个成功传递的概率增大。混合策略的路由算法结合了基于复制的 路由算法和基于效用转发的路由算法的特点。它更为灵活,既利用了复制策略多副本的并行性,又优化选择了较为合适的中继节点,控制消息夏制。
其中Spray & Focus算法是一种典型的混合策略路由算法,在Focus阶段 算法实行聚焦搜索,有选择地进行副本的转发传输。还有 OOF (optimal opportunistic forwarding)算法结合了跳数和副本存活时间来定义副本的投递概率;MV (meetings & visits)路由算法则利用节点间的相遇概率来描述消息传输的成功概率。

社会感知路由算法简介

社交网络中用到的关键技术:

1. 社会关系获取技术

社会关系的获取是基于社会感知路由算法的关键。技术主要分为两类:自汇报技术和动态检测技术。
(1)自汇报技术:社交网络中的各种社会关系可以利用自汇报技术来捕获,现有的自汇报技术主要有问卷调査方式和在线社交方式两种。
(2)动态检测技术:动态检测技术通过深度分析节点日常活动的轨迹、通话记录、居住位置等信息,探测出节点间潜在的社会关联。主要的动态检测技术有移动追踪、通话记录和移动定位等。

2. 社会网络分析技术

社会网络分析技术着重研究人与人之间的互动模式、相互影响以及潜在的社会关联,因此该技术为分析社交容迟网络中节点间复杂社会关系提供了关键技术和理论支持,并为容迟网络的路由设计提供了重要的决策信息。以下是社会网络分析技术的社交图及社区检测算法。
(1)社交图:节点代表社会网络中的个体,节点之间的边代表两个节点之间的社会关联,其中社会关联描述了节点间的各种形式的社会关系。根据节点之间连接表示的不同含义,可以构造许多不同类型的社交图。
(2)社区检测算法:根据社区的形成方式, 社区检测算法可以分为集中式社区检测和分布式社区检测两类。在多数情况下,节点并不能获取整个网络的如识集,并且由于移动性,节点无法及时通知其他节点自己的社区信息,因此很难在社交容迟网络中部署集中式的社 区检测算法。在这种情况下,节点往往更需要一种分布式的社区检测算法。三种分布式社区检测算法:Simple、k-Clique和Modularity。

3. 常见的社会属性

常用的社会属性有:社区(community)、中心性(centrality)、相似性(similarity)等。社区描述了一组具有相近位置或者近似兴趣的节点集合,社区内的节点具有更强的社会关联。中心性是衡量网络中节点地位的量度指标。相似性则是用于分析节点间具有的某些共同特征。
(1)社区:是社交网络一种结构上的组合,被认为是多个联系紧密的成员个体的集合。通常是指一组联系紧密的节点。同一个社区的个体可能更频繁的相遇,所以社区探测有利于选择合适的转发消息的路径,即社区对节点移动模型有重要的影响。

(2)中心性:在图论中,向心性是对图中顶点的相对重要性的定量分析。在网络中找岀最重要或中心节点的方式有很多,广泛度(degree centrality)、密切度(closeness centrality)和中介度(betweenness centrality)。
广泛度:衡量的是与给定节点有直接连接的节点数目。具有较高广泛度的节点保持与众多其他网络节点的联系。这样的节点可以被看作是具有大量与其他节点连接的流行节点。数学公式是:
在这里插入图片描述
密切度:节点p的密切度是到所有其他可达节点之间的平均测量距离的倒数。密切度可以看作是要花多长的时间把信息从一个给定节点传播到网络中其他节点的测量方法。数学公式是:
在这里插入图片描述
中介度:是移动社交网络中最常用的测量中心性方法,它代表节点位于连接所有其他节点的测地线路径的程度。中介度可以看作是节点控制消息在其他节点间传输能力的衡量标准。具有高中介度的节点能促进它所连接的节点之间的交互传输,可以当作是节点能够促使网络中其他节点交流的能力。数学公式是:
在这里插入图片描述
下图显示了一个社交网络属性中各个度:
在这里插入图片描述
(3)相似性:相似性是评估一群节点的共同特征的度量,如节点的背景、兴趣和地理位置。 相似性通常被称为是同质性。有相同熟识节点的两节点成为熟人的可能性被提高,这种现象被称为聚类。源节点和目标节点的相似度越高,他们相遇的机会越多。在群簇节点中, 具有较高的相似度的节点,可以成为很好的传播消息的候选节点。

(4)自私性:自私性可以用来描述被实体合理控制的节点的自私行为。

在这里插入图片描述

4. 基于社区的社会感知路由算法

在社交容迟网络中,利用社区信息进行消息路由可以显著提高网络的路由性能。基于社区的社会感知路由算法首先根据节点间的社会关系、共同兴趣爱好、相似性等,利用一定的社区探测算法将节点分配到不同的社区当中,然后利用源节点与目的节点的社区信息进行路由选择。消息的转发过程主要分为:社区内的消息转发和社区间的消息转发。

新的路由策略Bubble Rap,是基于社会网络的两种主要特性,社区性和向心性。
Bubble R叫路由协议假设了两个条件:

(1)每个节点至少属于一个社区,所以允许存在单个节点的社区。

(2)每个节点都有整个系统的全部排名,如所有节点的向心性,并且也有该节点所在社区的排名。因为一个节点可能属于多个社区,于是也可能有多个名次表。

在Bubble Rap路由策略中,如果某个节点要将信息传送至目的节点,该节点在分层等级树(hierarchical rankings tree)中逐层上传,直到信息到达与目的节点在一个群体中的某个节点。然后在该群体中,信息利用该群体内部的等级顺序将信息再传至目的节点。在整个网络系统中,无需每个节点都存有网络中其他所有节点的等级值,只需要在每步传送操作中对遇到的节点的等级值运用贪心策略即可。

5. 社区独立的社会感知路由算法

背景:在某些应用场景中,由于不存在明显的社区结构、节点间的社会关系在频繁变化等原因,社区探测算法很难发挥作用,因此基于社区的社会感知路由算法难以取得令人满意的路由性能。而社区独立的社会感知路由算法中不存在社区的概念,因而可以有效避免上述不足之处,进而提高路由性能。

该算法主要利用节点的中心性、相似性、自私性等社会属性对节点的质量进行有效评估, 进而基于特定的效用指标选择质量更优的节点担当消息的下一跳中继节点。通过将消息不断转发给更好更优的中继节点,消息能够逐渐地靠近目的节点,并最终被成功传递到目的节点。

SimBet路由协议借鉴自我网络(ego network四)的概念定义由中介度(betweenness)和相似性(similarity)度量的效用函数,来估算容迟网络中每个节点 的中心性。当节点接触时,消息将被传递到具有更高效用值的节点。在SimBet路由算法中, 携带消息的节点与候选节点比较SimBet效用值,并将消息传递给具有更大效用值的节点,即能提供传递消息的最大效用值的节点作为下一跳节点。

路由算法评估比较

DTN路由协议的评估指标

(1)消息投递率。是在模拟时间内由源节点生成并成功传送到目的节点的消息数量与网络中生成的所有消息数量之比,其中不包括在路由转发过程中由于中继转发策略的不同而产生的副本。
在这里插入图片描述
(2)网络负载率。是需要投递的消息的发送总次数和发送的消息的总数之间的比值。
在这里插入图片描述
(3)平均时延。表示从源节点发送数据包开始到目的节点接收到该数据包所花费的时间。
在这里插入图片描述

(4)平均跳数。在DTN网络中所有消息的副本经历的跳数的总和与网络中生成的所有消息数量之比。越少说明算法越高效。且路由跳数对端到端时延至关重要。
在这里插入图片描述
其他评估指标:

  1. 能量消耗:优化能量消耗可进一步提升DTN生命周期
  2. 存储空间
  3. 安全性
  4. 可扩展性
  5. 复杂性:路由协议尽量简单,操作不能太复杂, 以保证DTN节点能够正常工作。

各个路由协议比较:
在这里插入图片描述在这里插入图片描述

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值