已知节点r在时刻t1和时刻t2的位置,而节点r移动出发送者范围的时刻t3未知。为了求得链路可用时间,需要对时刻t3进行预测。根据余弦定理知道以下公式:
式(1)中存在三个未知变量θ、v、t3,但只有两个有效的等式,因而求解还需要另一个包含这三个未知变量的额外的公式。根据面积相等SSR1R3=SSR1R2+SSR2R3和海伦公式
式(1)和式(2)中存在三个未知变量θ、v、t3,且存在三个有效的等式,因而可以求得这三个未知变量。从而,计算得到链路的可用时间TL(s,r)=t3-t2。
1.1.2 链路可用时间预测
节点移动具有随机性,处于一个动态变化的过程,可能造成实际链路可用时间值的急剧波动。因此,获得准确的实时值是非常困难的。本文利用链路可用时间的历史信息值,预测当前的链路可用时间。
假设T时刻的链路可用时间为
,T-1时刻的链路可用时间为
,则T+1时刻的链路可用时间为
其中,0≤a≤1,表示之前时间段对当前链路可用时间的影响因子,不失一般性,选取a为0.7。
1.1.3 路径可用时间
假设存在路径P:S,…,i,j,…,D,源节点S进行路由发现过程,发送路由请求包到目的节点D。路由请求包经过链路(i,j),在时刻tj预测出链路可用时间为。当tD时刻路由请求包到达目的节点D时,链路(i,j)的可用时间并非tj时刻预测的值,变为
。因而,可以求得路径上每个链路的链路可用时间。
路径可用时间为各个链路可用时间的最小值,因为当路径中存在一条链路不可用时,则整个路径不可用。路径可用时间为
其中,任意链路(i,j)∈P。
1.2 LARP路由协议
LARP路由协议建立在DSR协议的基础上,分为路由发现和路由维护两个部分。其中,路由维护部分与DSR相同,主要区别存在于路由发现的选择过程中。
LARP协议的路由请求包在DSR的基础上添加了预测的链路可用时间字段LAT(Link Available Time)和当前时钟字段CT(Current Time),用于记录路由路径中各个预测的链路可用时间和路由请求包经过各个链路的时间。在各个节点的路由表中也增加了路径可用时间字段PAT(Path Available Time),用于存放各个路径的可用时间信息。
(1)在路由发现阶段,路由请求包在增加的LAT和CT两个字段中记录沿途各个链路的可用时间和路由请求包经过相应链路的时间。
(2)当路由请求包到达目的节点后,提取其中的预测链路可用时间参数(LAT)和时钟参数(CT),利用式(4)计算出该路径的可用时间。
(3)目的节点收到的多个路由请求包代表从源节点到该目的节点的多个可能路径,求出每条路径的可用时间信息后,目的节点为每个路由请求包回复一个路由应答包,将链路信息和路径可用时间信息回复给源节点,并在路由表中相应地记录链路信息和路径可用时间。
(4)当源节点需要再次发送数据包时,首先查找路由表,若路由表中已存在到达目的节点的路径,则在这些路径中选择具有最大路径可用时间的路径进行数据转发;若路由表中不存在可用路径,则进行路由发启过程。
(5)路由维护过程和DSR相同。
上一页 [1] [2] [3] 下一页