专利名称:一种基于粒子群优化的虚拟网络映射方法及系统的制作方法
技术领域:
本发明涉及计算机网络领域,尤其涉及一种基于粒子群优化(Particle Swarm Optimization, PS0)的虚拟网络映射方法及系统。
背景技术:
网络虚拟化技术允许在共享的底层物理网络基础设施之上共存多重异构的虚拟网络,使在不影响现有网络的前提下部署新的网络架构、协议以及应用成为可能,从而有效地之处网络技术创新。在网络虚拟化环境中,基础设施提供商管理运营底层网络,服务提供商可以向基础设施提供商租赁网络资源并创建虚拟网络,以提供个性化的端到端网络服务。为服务提供商的带有节点和链路资源约束条件的虚拟网络请求分配基础设施提供商的底层网络资源的问题称为虚拟网络映射(嵌入、指派)问题。虚拟网络映射问题是非确定型多项式 (Non-deterministic Polynomial,NP)难问题,即使在所有的虚拟节点已被映射后,映射带有带宽资源约束的虚拟链路仍然是NP难的。虚拟网络映射问题是网络虚拟化技术面临的主要挑战之一,已经成为该研究领域的热点问题。虚拟网络映射问题与虚拟专用网(Virtual Private Network,VPN)提供问题以及网络实验床映射问题类似。但一般一个典型的VPN请求只包含带有带宽约束条件的点对间流量矩阵,从而解决该问题只需在底层网络中搜索点对间满足带宽约束条件的路径即可。而虚拟网络映射问题与上述问题的根本区别在于虚拟网络请求不仅包含带宽资源约束条件,还包含节点约束条件(例如,计算能力和位置需求等)。对于网络实验床映射问题,虽然在构建实验网络到底层网络的映射时,需要同时对实验网络请求拓扑中的节点与链路约束条件进行考虑,但网络实验床映射问题与虚拟网络映射问题不同之处在于,其底层网络不允许不同实验网络共享相同的底层网络节点。由于虚拟网络映射问题的复杂性,早期对于虚拟网络映射问题的研究均在不同程度上对该问题进行了限制假设所有的虚拟网络请求均是已知的;忽略虚拟网络节点或链路的资源需求;假设底层网络具有足够的资源,不考虑虚拟网络请求的准入控制;只关注特殊拓扑结构的虚拟网络请求,如星型拓扑结构的虚拟网络请求;忽略虚拟网络节点的位置需求。综合考虑了上述几个方面,现有的关于虚拟网络映射问题中,在底层网络支持路径分裂的情况下,建立了虚拟网络映射的混合整数规划模型,并提出了协同节点与链路的虚拟网络映射算法,但其仍存在以下问题在底层网络不支持路径分裂的情况下并没有在正确的模型下给出相应的映射算法;现有提出的映射算法不仅时间开销大,而且得到的映射方案不一定是可行的,即便是可行的,也不一定是最优,不能够有效地利用网络资源。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于粒子群优化的虚拟网络映射方法及系统,能够提高底层网络资源利用效率。
为达到上述目的,本发明的技术方案是这样实现的一种基于粒子群优化的虚拟网络映射方法,所述方法包括将所述粒子的位置参数和速度参数进行初始化;对所述粒子进行可行性检验,得到可行粒子,并确定初始的全局最优位置和每个粒子的个体最优位置;对所述可行粒子进行速度和位置更新,对更新后的粒子进行可行性检验,重新得到可行粒子,并重新确定全局最优位置和每个粒子的个体最优位置,并将当前迭代次数加 1,当迭代次数小于预设的最大迭代次数时,重复本步骤;当迭代次数等于预设的最大迭代次数时,将最终确定的全局最优位置作为映射方案进行输出。其中,所述将粒子的位置参数和速度参数进行初始化为所述粒子的位置参数\初始化为第i个虚拟网络映射方案,速度参数Vi初始化为所述虚拟映射方案的调整决策。其中,所述对所述粒子进行可行性检验,得到可行粒子为检测粒子的位置参数涉及到的底层网络节点的能力约束;当所述底层网络节点的CPU能力满足虚拟网络节点的CPU能力,并位于所述虚拟网络节点所请求位置的范围内时,采用最短路径算法检测所述位置参数的带宽和连接性约束条件,得到所述粒子的适应度。其中,所述确定初始的全局最优位置和每个粒子的个体最优位置为将所有粒子中适应度最小的粒子的位置确定为初始的全局最优位置,将得到的每个粒子的多个适应度中最小的适应度对应粒子的位置确定为该粒子初始的个体最优位置。进一步地,在得到可行粒子之后,所述方法还包括重新对所述可行粒子之外的粒子的位置参数和速度参数进行初始化。其中,所述重新确定全局最优位置和每个粒子的个体最优位置为计算每个粒子的适应度,当得到的适应度小于之前确定的个体最优位置对应的适应度时,则将所述个体最优位置重新确定为当前适应度对应的位置;当重新确定的个体最优位置对应的适应度小于之前确定的全局最优位置对应的适应度时,将所述全局最优位置重新确定为所述重新确定的个体最优位置。进一步地,所述方法还包括输出最终确定的全局最优位置对应的适应度值,得到映射方案对应的带宽开销。一种基于粒子群优化的虚拟网络映射系统,所述系统包括初始化单元、可行性检验单元、更新单元以及输出单元;其中,所述初始化单元,用于对所述粒子的位置参数和速度参数进行初始化;所述可行性检验单元,用于对初始化后的粒子进行可行性检验,确定初始的全局最优位置和每个粒子的个体最优位置;对更新单元更新后的粒子进行可行性检验,得到可行粒子并重新确定全局最优位置和每个粒子的个体最优位置,并将当前迭代次数加1 ;更新单元,用于在当前迭代次数小于预设的最大迭代次数时,对可行性检验单元得到的可行粒子进行速度和位置更新;输出单元,用于在当前迭代次数等于预设的最大迭代次数时,将所述可行性检验单元最终确定的全局最优位置作为映射方案进行输出。其中,所述初始化单元,还用于重新对可行粒子之外的粒子的位置参数和速度参数进行初始化。其中,所述输出单元,还用于输出最终确定的全局最优位置对应的适应度值,得到映射方案对应的带宽开销。本发明在底层网络不支持路径分裂情况下,将粒子群的位置参数和速度参数初始化,通过对粒子进行迭代,实现最优化虚拟网络映射方案的选取,提高了底层网络的资源利用效率,如此,能够为接受更多的虚拟网络请求提供空间,而且该方法能够很好地平衡虚拟网络映射方案最优化度和时间复杂度,可以广泛应用于支持网络虚拟化技术的骨干网络或数据中心网络环境。
图1为本发明基于粒子群优化的虚拟网络映射方法的实现流程示意图;图2为应用本发明基于粒子群优化的虚拟网络映射方法获得的映射方案示意图;图3为三种虚拟网络映射方法的底层网络长期平均运营收益曲线示意图;图4为三种虚拟网络映射方法的虚拟网络请求接受率曲线示意图;图5为三种虚拟网络映射方法的底层网络长期平均收益代价比曲线示意图;图6为三种虚拟网络映射方法的运行时间对比示意图;图7为本发明基于粒子群优化的虚拟网络映射系统的结构示意图。
具体实施例方式首先,对虚拟网络映射领域里面涉及的概念进行简要介绍。底层网络底层网络拓扑可以标记为带权无向图<^. =(iVs,Ls,(^,,其中Ns表示底层网络节点的集合,Ls表示底层网络链路的集合。G与C(分别表示底层节点ns(ns e Ns) 与ls(ls e Ls)所具有属性的集合。底层节点~具有的属性为该节点当前可用计算能力CPU(Iis)与物理位置Loc(Iis);底层链路Is具有的属性为该链路当前可用的带宽资源 Bff(Is)。虚拟网络请求与底层网络类似,虚拟网络拓扑也可被标记为带权无向图 Gv=(Nv,Lv,C:,C[),其中Nv为虚拟节点的集合,Lv为虚拟链路的集合,G与《分别表示虚拟节点nv(nv e Nv)与虚拟链路lv(lv e Lv)的资源约束。一般来讲,虚拟节点的资源约束主要考虑该虚拟节点的计算能力需求,虚拟链路的资源约束主要考虑该虚拟链路的带宽资源需求。对于一个虚拟网络请求,可用三元组VNR(i)(Gv,ta,td)来表示,其中ta表示虚拟网络请求的到达时刻,td表示虚拟网络在底层网络中持续的时间。当第i个虚拟网络请求到达后,底层网络应该为其分配满足其节点与链路资源需求的相应资源。当虚拟网络离开底层网络时,为其分配的资源将被释放。另外,当底层网络资源不足时,应将该请求延迟映射或直接拒绝。虚拟网络映射虚拟网络映射问题被定义为映射M :GV(NV, Lv) — Gs(N‘ S,P' s),
其中Ps表示所有底层网络的无环路路径且ACciVs ,P; CPs。映射可以分解为以下两个步
骤将虚拟节点映射到满足其节点资源约束条件的底层节点上;将虚拟链路映射到满足其带宽资源约束条件的底层无环路径上。主要评价指标虚拟网络映射的主要评价指标有底层网络长期平均运营收益、虚 拟网络请求接受率、虚拟网络映射长期平均收益开销比。此外,对于在线的虚拟网络映射, 还应当考虑时间复杂性。其中,进ー步对上述评价指标进行说明。在t时刻接受一个虚拟网络请求的收益可定义为该虚拟网络请求的计算资源需 求和带宽资源需求之和
权利要求
1.一种基于粒子群优化的虚拟网络映射方法,其特征在于,所述方法包括将所述粒子的位置参数和速度参数进行初始化;对所述粒子进行可行性检验,得到可行粒子,并确定初始的全局最优位置和每个粒子的个体最优位置;对所述可行粒子进行速度和位置更新,对更新后的粒子进行可行性检验,重新得到可行粒子,并重新确定全局最优位置和每个粒子的个体最优位置,当前迭代次数加1,当迭代次数小于预设的最大迭代次数时,重复本步骤;当迭代次数等于预设的最大迭代次数时,将最终确定的全局最优位置作为映射方案进行输出。
2.根据权利要求1所述的方法,其特征在于,所述将粒子的位置参数和速度参数进行初始化为所述粒子的位置参数Xi初始化为第i个虚拟网络映射方案,速度参数Vi初始化为所述虚拟映射方案的调整决策。
3.根据权利要求1所述的方法,其特征在于,所述对所述粒子进行可行性检验,得到可行粒子为检测粒子的位置参数涉及到的底层网络节点的能力约束;当所述底层网络节点的CPU能力满足虚拟网络节点的CPU能力,并位于所述虚拟网络节点所请求位置的范围内时,采用最短路径算法检测所述位置参数的带宽和连接性约束条件,得到所述粒子的适应度。
4.根据权利要求3所述的方法,其特征在于,所述确定初始的全局最优位置和每个粒子的个体最优位置为将所有粒子中适应度最小的粒子的位置确定为初始的全局最优位置,将得到的每个粒子的多个适应度中最小的适应度对应粒子的位置确定为该粒子初始的个体最优位置。
5.根据权利要求1所述的方法,其特征在于,在得到可行粒子之后,所述方法还包括重新对所述可行粒子之外的粒子的位置参数和速度参数进行初始化。
6.根据权利要求1所述的方法,其特征在于,所述重新确定全局最优位置和每个粒子的个体最优位置为计算每个粒子的适应度,当得到的适应度小于之前确定的个体最优位置对应的适应度时,则将所述个体最优位置重新确定为当前适应度对应的位置;当重新确定的个体最优位置对应的适应度小于之前确定的全局最优位置对应的适应度时,将所述全局最优位置重新确定为所述重新确定的个体最优位置。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括输出最终确定的全局最优位置对应的适应度值,得到映射方案对应的带宽开销。
8.一种基于粒子群优化的虚拟网络映射系统,其特征在于,所述系统包括初始化单元、可行性检验单元、更新单元以及输出单元;其中,所述初始化单元,用于对所述粒子的位置参数和速度参数进行初始化;所述可行性检验单元,用于对初始化后的粒子进行可行性检验,确定初始的全局最优位置和每个粒子的个体最优位置;对更新单元更新后的粒子进行可行性检验,得到可行粒子并重新确定全局最优位置和每个粒子的个体最优位置,并将当前迭代次数加1 ;更新单元,用于在当前迭代次数小于预设的最大迭代次数时,对可行性检验单元得到的可行粒子进行速度和位置更新;输出单元,用于在当前迭代次数等于预设的最大迭代次数时,将所述可行性检验单元最终确定的全局最优位置作为映射方案进行输出。
9.根据权利要求8所述的系统,其特征在于,所述初始化单元,还用于重新对可行粒子之外的粒子的位置参数和速度参数进行初始化。
10.根据权利要求8所述的系统,其特征在于,所述输出单元,还用于输出最终确定的全局最优位置对应的适应度值,得到映射方案对应的带宽开销。
全文摘要
本发明提供了一种基于粒子群优化的虚拟网络映射方法及系统,该方法包括将粒子的位置和速度参数进行初始化;对粒子进行可行性检验,得到可行粒子,并确定初始的全局最优位置和每个粒子的个体最优位置;对可行粒子进行速度和位置更新,对更新后的粒子进行可行性检验,重新得到可行粒子,并重新确定全局最优位置和个体最优位置,当前迭代次数加1,当迭代次数小于最大迭代次数时,重复本步骤;当迭代次数等于最大迭代次数时,将最终确定的全局最优位置作为映射方案进行输出。本发明在底层网络不支持路径分裂情况下,将粒子群的位置参数和速度参数初始化,通过对粒子进行迭代,实现最优化虚拟网络映射方案的选取,提高了底层网络的资源利用效率。
文档编号H04L12/46GK102364899SQ20111036407
公开日2012年2月29日 申请日期2011年11月16日 优先权日2011年11月16日
发明者于晓燕, 双锴, 张忠宝, 徐鹏, 王玉龙, 程祥, 苏森 申请人:北京邮电大学