改进的Spray & Wait路由算法
Spray & Wait路由算法适用于节点均等分布、运动随机的容迟网络,但由于容迟网络应用场景的复杂性和多样性,某些应用场景存在节点移动呈现规律性等问题,因此Spray & Wait算法仍有较大的改进空间。
喷射阶段(spray phase)没有考虑候选节点传递潜能和移动模式的不同,只是单纯地复制给相遇节点一半的消息,使算法变得不够灵活。而且网络通常是异构的,提供给每个节点的能量也不相同,所以均等的喷射消息副本也是不合理的。因此对Spray & Wait算法的两个阶段spray phase和wait phase进行改进,并提出相关的路由算法。
一种基于概率的喷射改进的混合路由算法
该算法将spray分为两个阶段,首先将消息副本根据Prophet算法中的投递概率进行相应的分配,使转发决策更为明智。然后, 每个节点记录与目的节点接触的平均时间间隔和最后相遇的时间间隔,这样有助于节点在真实的网络环境下做出及时合理的路由决策。
消息副本的分类
利用Prophet定义的三个公式预测并更新节点的投递概率,根据传输预测值来分配消息副本。传输预测值越大,中继节点传递消息的成功率越高, 所以应该分配给该节点更多的消息副本。
当两个节点相遇时,比较两者到目的节点的投递预测值,并根据自身占总体的比重获取分配新的消息副本数量。
基于时间间隔的副本控制
每个节点需要记录两个时间间隔了t(a,b)和m(a,b),t(a,b)表示节点a与节点b从最后相遇到当前时刻的时间间隔,m(a,b)表示节点a与节点b每次相遇间隔的时间的加权平均值。
最后,每当两节点相遇的时间间隔更新完成后,再根据式(6.4)来动态地调整节点所携带的消息副本的数量。
改进的Spray & Wait混合路由算法
当两个节点相遇时,首先交换两个节点用于更新消息副本数量所需的参数信息。
之后利用节点到目的节点的传输预测值计算两个节点分配的消息副本数量。
之后节点根据相遇时间间隔信息动态控制消息副本数量。
之后根据L(m)的值更新缓冲区中的消息。
最后中继节点从源节点那里接受消息,并存储到消息队列中。
基于节点性能的Spray & Wait改进路由算法(NPSW)
根据节点相遇次数进行评估。此外,将与目的节点的相遇次数和最后的接触时间相结合设计新的效用值来选择下一跳节点。
中继节点的评估指标
将节点间的接触次数作为投递概率。假设每个节点都记录接触信息,包括最后一次接触时间、接触次数等。 并用活跃度来描述节点获取连接机会的能力,就是说一个节点可以与多少个其他节点相遇。
当一对节点na与nb相遇时,它们首先要相互交换信息向量M(a)并互相更新效用指标,比如v(a,b)t(a,b),Ea和v(b,a),t(b,a)和Eb。首先节点na要检测nb是否在它的集合Ea中。如果不在,则将nb添加到该集合中。此外当它们相遇时v(a,b)的值加1,并且重置t(a,b)为当前时间。同样,节点nb执行与节点na相同的操作。
路由算法
(1)节点选择策略
当v(b,d)的值大于为v(a,d)时,那么节点na将消息m传递给nb,这是因为历史相遇次数越多意味着未来相遇的潜能越大。
然而当两个节点的相遇频率较低时,会导致v(k,i)的值不能够准确的预测传输能力,难以决定是否喷射消息。利用指标t(k,i)和,t(k,i)表示节点nk和节点ni最后相遇的时间,是门限值。随着节点的移动,从上次相遇到当前时刻节点nk和节点ni再未相遇,所以我们把t(k,i)表示为节点nk叫与节点ni的“距离”。t(k,i)的值越大,距离则越远。因此,当且仅当v(i,d)小于门限时,比较与目的节点的最后相遇时间,携带消息的节点会把消息副本传送到t(k,i)值比它大的节点。
(2)副本分配策略
把节点的活跃度作为评价节点性能的一个重要指标。用Ek表示节点活跃度,Ek的绝对值越大表示与该节点接触过的节点越多,绝对值越高代表节点性能越好,因此该节点发生相遇的机会也更大。根据下面式子的比值作为传送到下一节点的分配比率。
(3)转发阶段
中继节点只携带有某消息的一个副本,并且该节点与目的节点相距较远,这种情况下,中继节点将消息传送到相遇频率V(k,d)值更大的节点更为合适。
容迟网络中基于一般和特殊效用的适应性路由算法
路由算法详解
我们应将消息的投递率最大化,然后将平均时延和负载率控制到可接受的程度。在喷射阶段,GSU-Spray将消息副本分配给其他节点。策略是适应性地调整每对相遇节点之间消息的副本数量。对每个消息来说,当节点只携带该消息的一个副本时,那么这个节点进入授权转发阶段,即只将消息转发给节点效用值高于授权门限值的节点。在这个阶段,当消息从节点na成功传送到节点nb时,每个消息的授权门限值将会更新为节点nb的效用值。
Ugene代表一般效用,Uspec表示特殊效用,他们都会根据连接时间和相遇频率的历史记录进行更新。Uspray是评估节点传输能力的指标。Uforward用于授权转发阶段。
基于效用函数的非对称喷射阶段
GSU-Spray的第一阶段是非对称地调整每对节点之间的消息副本。首先计算节点ns的一般效用值和特殊效用值。
式(6.7)评估的是某个节点成为中继节点的可能性,式(6.8)用于计算每对节点的特殊效用值。一般效用值反映节点自身的状态,而特殊效用值测量一对节点间预期转发的吞吐量。
该路由算法主要目标是将消息副本有效的分布到网络中。当一对节点连接时,算法通过适应性分配和再分配每个消息的副本数量来达到这个目的。
基于效用的转发阶段
喷射操作之后,节点进入转发阶段,该阶段的主要目标是将消息有效地发送到各自的目的节点。每个节点的任务从合理的分发消息转变成尽快找寻目的节点。效用指标计算如下:
因为很难精确地获得严格的最短路径,我们采用授权转发策略让消息副本按梯度方向到达目的节点。此外,式中的元素用来评估缓冲区的影响。