1.一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,包括:S1:当虚拟网络功能VNF需要进行迁移时,向控制器发送信号;
S2:控制器接收信号后,实时监测边缘服务器节点的信息,根据该信息生成节点列表;
边缘服务器节点的信息包括该节点的空闲资源和负载状态;
S3:采用空闲资源和负载阈值机制对节点列表中的各个节点进行筛选,得到候选节点;
具体的步骤包括:
S31:当VNF需要复制副本时,估计待复制VNF所需的资源Eneed,将该资源作为第一级阈值;
S32:依次判断当前服务器节点周围的服务器列表Nnear中是否满足条件若不满足条件,则将该节点删除,其余节点继续进行判断;若满足条件,则执行步骤S33;
S33:依次计算服务器节点列表中的负载状态,并将负载状态与设置的第二级阈值进行比较,若负载状态大于设置的第二阈值,则将该负载节点移除节点列表中;否则进行下一轮判断;
S34:节点短期内的资源、链路使用的历史数据,将历史数据输入到支持向量回归模型SVR中,预测未来节点的负载状态;
S35:将未来节点的负载状态与第三级阈值进行比较,若大于第三级阈值,则将该节点移除列表,否则执行下一步;
S36:将所有满足要求的节点按照空闲资源大小进行排序,选取前三个节点作为候选节点;
S4:构建马尔科夫决策,根据马尔科夫决策对候选节点进行策略选择;
S5:在进行策略选择过程中,采用深度Q学习训练构建最优选择策略模型,输出最优选择结果;
S6:根据选出的最优结果进行VNF迁移。
2.根据权利要求1所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,设置的三级阈值包括:第一级阈值为待复制VNF所需的资源Eneed,第二级阈值为0.6,第三级阈值为0.75。
3.根据权利要求1所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,构建马尔科夫决策的过程包括:根据当前服务器节点的运行状态制定VNF复制策略;根据制定的VNF复制策略对目标模型进行优化;根据目标模型优化结果制定马尔科夫决策。
4.根据权利要求3所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,制定VNF复制策略的过程包括:当前服务器节点中不同网络服务对应的VNF不满足当前需求时,导致服务功能链SFC的端到端时延增大,此时,利用网络资源进行VNF复制;服务功能链SFC依次对经过第一节点上的VNF1和第二节点VNF2进出处理,即在第一节点负载时通过容器或虚拟机技术在第三节点上复制VNF1的副本,实现负载均衡。
5.根据权利要求3所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,对目标模型进行优化的过程包括:VNF复制迁移过程中的产生的总时延为 复制迁移过程中的成本为Ccopy;根据VNF复制迁移过程中的总时延和成本确定优化目标;对优化目标进行优化,求出服务器实现负载均衡时的最小成本,完成模型优化。
6.根据权利要求5所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,优化目标为:
s.t.
g3:ue≤Ux,e=1,2,3…其中, 表示VNF迁移过程中消耗的带宽资源,Ccopy表示VNF复制过程复制副本需要消耗的资源,g1表示从i到j的虚拟链路带宽不能大于映射的物理链路带宽, 表示从i到j的虚拟链路带宽, 表示映射的物理链路带宽,g2表示网络中各条服务功能链端到端时延需要满足相应基本需求, 表示第k条服务功能链的端到端时延, 表示第k条服务功能链的最大容忍延迟,g3表示系统中各个服务器节点的利用率不能大于过载阈值,ue表示系统中各个服务器节点的利用率,Ux表示过载阈值。
7.根据权利要求3所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,制定的马尔科夫决策的过程包括:确定服务器的状态空间、动作空间、状态转移矩阵以及奖励函数;根据服务器利用率、服务质量优劣标志和过载的服务器数量作为状态信息,定义状态空间;对VNF迁移或复制的目标节点进行筛选,得到3个候选目标节点,根据候选目标节点制定动作空间;服务器节点在选择虚拟网络功能v执行动作时,执行动作 并由状态sk转移至下一个状态sk+1,计算状态sk转移至下一个状态sk+1的概率,根据转移概率确定状态转移矩阵;根据服务器利用率、服务功能链端到端时延与迁移或复制过程中消耗的成本确定奖励函数。
8.根据权利要求1所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,采用深度Q学习训练构建最优选择策略模型的过程包括:步骤1:根据当前系统状态采用ε贪婪策略进行动作的选取;将选取的动作中每一次的状态转移信息存放在经验回放池中,当经验池容量已满时,采用随机替换数据的方式将状态转移信息存入经验池中;
步骤2:随机从经验回放池中选择一段状态转移数据(s,a,r,s′),将该数据中的系统状态s作为Q网络的输入,并通过深度学习输出全部的可执行动作对应的Q值;
步骤3:根据已选取的状态转移数据中的动作a和所有可执行动作的Q值,获取动作a对应的Q(s,a;θ);
步骤4:将系统状态s′输入到目标网络中,得到相应的目标值y;采用损失函数计算Q(s,a;θ)和目标输出值y之间的误差,并通过梯度下降算法进行神经网络参数的更新;
步骤5:根据训练好的模型判断系统的状态,根据状态转移概率获取相应的可执行动作,输出每个动作对应的Q值;
步骤6:选择Q值最大的动作作为VNF迁移和复制的目标节点。
9.根据权利要求8所述的一种基于边缘网络的虚拟网络功能迁移方法,其特征在于,神经网络参数的更新公式为:
其中,λ表示深度学习学习率,l(θ)表示误差, 表示对值函数Q(s,a;θ)进行梯度下降。