1.一种虚拟网络功能智能迁移方法,其特征在于:在该方法中,在每个离散时隙上,在保证每个切片的最高平均时延约束、节点缓存资源消耗限制以及链路带宽容量限制的前提下,根据各个虚拟网络功能(Virtualized Network Function,VNF)实例的队列状态信息、节点状态信息以及链路状态信息,以最小化通用服务器平均运行能耗为目标,为切片制定最佳的VNF迁移策略并动态地调整网络内节点CPU资源的分配策略;具体包括以下步骤:S1:建立VNF实例多队列的时延模型和系统能耗模型;
所述时延模型具体为:网络切片i的VNF调度总时延由处理时延和链路传输时延两部分组成,且CPU资源的分配策略影响VNF的处理时延;所述处理时延由下式计算:式中, 表示节点h的VNF实例 的数据包达到过程的均值,Qh,j表示节点h的VNF实例当前的队列长度大小, 表示数据包大小的均值, 表示 的服务速率,B(h,fij)表示VNF fij∈F是否部署在节点h;
所述链路传输时延由下式计算:
式中,σij表示网络切片i调度VNF fj∈F的期望平均次数,P(fp|fj,i)表示用户请求切片Si的数据流在VNF fj被处理后传输至VNF fp的比例,δ(h,l)表示两个节点之间的数据传输时延;
VNF实例队列信息具体为:按照函数式: 计算各VNF实
例在每个调度时隙上更新的缓存队列大小,式中,Qh,j(t+1)表示节点h的VNF实例 在下一个调度时隙开始时的队列长度大小,Qh,j(t)表示节点h的VNF实例 在当前调度时隙开始时的队列长度大小, 表示节点h的VNF实例 在当前调度时隙开始时新到达的总数据量, 表示节点h的VNF实例 在当前调度时隙开始时的服务速率;
所述能耗模型主要包含两部分内容:节点处于开启状态时产生的基础能耗和随着VNF实例负载变化产生的运行能耗;具体表示为:式中, 表示在时刻t节点h处于开启的状态,否则为0;μh∈(0,1)表示节点h恒定功耗百分比,Ph表示节点h的CPU资源均被占用产生的最大能耗,ρh表示负载密度;
S2:将VNF的迁移和CPU资源的分配建立成基于受限马尔可夫决策过程(Constrained Markov Decision Process,CMDP)的随机优化模型,该模型以最小化通用服务器平均运行能耗为目标,同时受限于各切片平均时延约束以及平均缓存、带宽资源消耗约束;所述基于CMDP的随机优化模型表示为最小化期望累积折扣回报:其中:Ψ(t)为时隙t内的VNF迁移的动作向量,Z(t)为时隙t内每个VNF的CPU资源分配动作集合,r(t)为系统在时隙t的状态向量, 为通用服务器平均运行能耗;
切片时延约束为:所有的切片端到端时延都需要满足 其中 为
切片i的平均端到端时延,τi为切片Si端到端时延约束;
缓存资源消耗约束为:所有节点缓存新到达的数据量应满足 其中为期望累积折扣缓存资源消耗,χh为节点h租用的缓存资源总量;
所述带宽资源消耗约束为:所有链路传输的数据量应满足 其中
为期望累积折扣带宽资源消耗,Δh,l为节点h至节点l的链路带宽容量;
S3:通过拉格朗日理论将CMDP问题转化为不受限马尔可夫决策过程MDP问题,即将优化目标从找到最优策略转化为寻找最佳的Q函数;
*,β
优化目标转化为获得状态r的最优策略π ,且满足 其中
*,β *,β
所述最优策略π 包括VNF迁移策略和CPU资源的分配方案,所述Q (r,a)为最优行动值函数,所述a为动作向量,所述r为系统状态向量;
S4:建立基于强化学习框架的VNF智能迁移在线学习方法来近似行为值函数,从而在每个离散的时隙内根据当前系统状态为每个网络切片寻求最佳的VNF迁移策略及CPU资源分配方案,具体如下:利用深度Q学习训练函数fap来近似Q值的分布,该方法把状态r作为输入,然后经过神经网络分析后对应输出每一个动作的Q值,其主要过程是在Q网络的基础上增加一个目标Q网络来计算目标Q值,这两个网络结构相同但参数不同,通过最小化Q网络和目标Q网络之间的损失函数来优化权重w,来实现网络预测性能的提升;
价值函数近似的具体步骤为:
1)初始化经验回放池、Q网络、目标Q网络、拉格朗日乘子;
2)使用ε‑greedy策略生成行动at,即随机选择一个概率p,若p≥ε,则计算VNF迁移及CPU资源分配策略 否则选择一个随机的行动
3)执行行动at,获得拉格朗日回报,并观察下一时刻状态,将经验样本存入经验回放池;
4)从经验回放池中随机抽取一组经验样本,利用目标Q网络计算目标Q值,并利用梯度下降法对权重进行更新;
5)每隔时间长度Tq更新目标Q网络;
6)利用随机次梯度法在线更新所述拉格朗日乘子;
7)经过数次迭代后,判断是否满足收敛条件;
8)如果当前所述的VNF迁移和CPU资源分配策略满足收敛条件,则将所述VNF迁移和CPU资源分配策略通知给虚拟网络调度器以及资源管理实体;
9)按照各所述VNF迁移和CPU资源分配策略,所述每个节点VNF实例按照队列更新方式更新所述缓存队列大小,并等待下一个调度时隙;
在每个调度时隙上,给定所述每个节点VNF实例的队列状态,系统的节点状态和链路状态,计算所述最优的VNF迁移与资源分配方案,具体步骤为:
1)监测当前时隙t下的全局状态,将当前状态r(t)作为Q网络的输入;
2)如果节点或链路在时隙t失效,为了提高网络的可靠性,系统在对相应的VNF进行迁移的基础上,选择最优的VNF迁移策略 对能耗与时延进行优化;
3)否则直接选择最优的迁移策略
4)等待下一个调度时隙t+1。