3.4.2 一种速度与距离的服务切换算法VDBHA

3.4.2 一种速度与距离的服务切换算法VDBHA

本节提出了一种基于速度和距离的服务切换算法 (Velocity and Distance Based Handoff Algorithm, VDBHA)。 VDBHA从图论角度出发, 以自适应的时间间隔△t采样服务执行路径上各移动节点的速度和位置, 预测链路可用时间,一旦计算出服务路径上某链路剩余连通时间小于链路稳定性阈值Tthreshold,就判定该服务路径不稳定, 立刻在前趋节点启动关于失效链路的新的服务路由发现过程, 及时存储相关信息备用, 一旦链路断裂迅速切换。 为分析物理网络层链路连通情况, 我们给出关于VANETs链路连通性相关定义。

定义3.21 VANETs的连通性:

X(i, j, t) 表示在t时刻VANETs中节点i和节点j之间的连通情况,X(i,j,t) =,其中Dij(t) 表示节点之间的通信距离, R表示节点有效传输范围。

定义3.22 服务路径生存时间PET(Path Expiration Time):

服务路径Ps的生存时间PET(Ps),由组成这条路径的相邻节点间的链路生存时间的最小值决定,等效于支撑服务路径的底层路由生存时间RLT(Ps):

LET(Ni, Nj) 表示路径中两相邻节点链路的生存时间LET(Link Expiration Time),即从一个节点进入另一个节点的通信范围到它离开这个通信范围所经历的时间。假定在t1时刻的链路link(Ni,Nj) 恰在t2时刻不再可用,即节点i和节点j的在t2时刻超出了彼此通信范围,则链路连通时间LET(Ni,Nj)=t2-t1

假设t1时刻某服务执行路径上相邻两节点i和j间连通情况为X(i,j, t1),通过对当前网络拓扑状态及其节点移动信息分析计算,预测下一时刻节点i和节点j之间的连通情况,判定基本思路为:当链路连通时间LET(Ni, Nj) 小于链路稳定性阈值Tthreshold,判定该链路不稳定,需要启动关于失效节点的新服务路由发现进程; 反之, 判定该链路处于稳定状态, 自适应调节下一判定时刻Δt′。

基于对VANETs连通性及服务路径生存时间分析, 本章提出VDBHA服务切换算法执行步骤如下:

步骤1: 自适应调节判定时刻Δt。 为减少控制信息交互及链路连通时间的计算频度, 我们每隔一定时间Δt进行服务执行路径上物理链路的稳定性预测。 我们采取自适应时间调节机制来启动链路稳定性判断, 在服务覆盖层上计算支撑服务路径的底层物理链路相邻节点i与j的距离变化。 假设节点i和节点j在t时刻的距离为dt,在t+Δt时刻的距离为dt+Δt,其中Δt为判定链路状态的时刻, d为网络中节点之间的平均距离, 初始时d确定Δt, 则根据运动力学公式dt的复杂度为O(t2) 有:

若 dt+Δt-dt>d,则表示节点i和节点j的距离在加大,表示链路有即将断裂的迹象,因此要缩短下一预测时间间隔Δt′的大小,用来修正Δt′,即

若 dt+Δt-dt≤d,则表示节点i和节点j的距离相对稳定,则增加下一预

测时间间隔Δt′, 仍采用d来修正Δt′, 即

步骤2:在判断时刻Δt, 对服务路径链路状况进行预测。 依照公式 (3-38)计算相邻节点链路预测生存时间(Ni,Nj),并与链路稳定性阈值Tthreshold比较从而进行链路状况的预测判断:

Condition1:tij>Tthreshold,则判定链路稳定;

Condition2:tij≤Tthreshold,则判定链路不稳定。

当判定结果为Condition 2时, 失效链路的前继节点将会发起服务切换策略。该步骤中最关键的部分就是确定链路稳定性阈值Tthreshold,而链路稳定性预测的重点就是各链路的连通时间和该阈值的比较和判断。

接下来我们讨论Tthreshold的确定思路,细节如下。

首先, 链路稳定性的预测是基于无线传播模型的。 城市VANETs环境中,由于多径衰落、阴影效应和高流动性车辆所造成的多普勒效应等特点[90,91],我们选取能较好模拟并预测实际环境电波传输情况的Shadowing模型来刻画无线传播过程[92,93]

Pr(d) 代表节点的接收功率,d为信号接收节点与源节点之间的距离, d0为参考点和发送节点之间的距离。10βlog(d/d0) 是由路径衰落造成的信号衰减量, 反映了当距离一定时接收能量的变化, 是一个对数正态随机变量。Xd B是一个高斯随机变量,用来刻画随机性因素对于无线信道的影响,标准差为σd B

我们假设两节点链路稳定性阈值功率为Pthreshold,相应距离为dthreshold,则dthreshold=D0-v×Tthreshold,D0为两节点有效通信范围,我们设置D0=150m,为计算简便,我们令d0=1,可确定Tthreshold阈值。通过比较(Ni,Nj)链路预测生存时间与Tthreshold阈值的大小,做出链路是否稳定的判断。

在判定需要进行服务切换后, 启动关于失效节点新的服务路由发现进程。服务切换策略的具体思路是:

①首先发现恰当的替代节点:设Pold和Pnew分别是在服务恢复之前和之后的服务路径,我们需要找到能使服务执行路径Pnew得分最高且替换节点数目最少的方案。 该问题可等效于求解:

其中NPold→Pnew表示从Pold到Pnew的节点替代数目,r是服务路径的长度, Pold∩Pnew是服务恢复前后服务路径上相同节点的数目,服务执行路径的分数score(Pnew) 依据公式(3-43) 求得。

②一旦链路断裂则启动新的服务链路并存储服务状态, 新节点提供的服务加入到服务执行路径的Service List后, 更新路径相关信息。

基于上述分析, 我们给出基于预测的服务切换算法VDBHA, 见表3.4。

表3.4 服务路径切换VDBHA算法