CN108429633B - 基于灰狼算法的虚拟网络功能部署方法 - Google Patents

基于灰狼算法的虚拟网络功能部署方法 Download PDF

Info

Publication number
CN108429633B
CN108429633B CN201810047883.XA CN201810047883A CN108429633B CN 108429633 B CN108429633 B CN 108429633B CN 201810047883 A CN201810047883 A CN 201810047883A CN 108429633 B CN108429633 B CN 108429633B
Authority
CN
China
Prior art keywords
vnf
wolf
individual
gray
delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201810047883.XA
Other languages
English (en)
Other versions
CN108429633A (zh
Inventor
邢焕来
周芯宇
戴朋林
罗寿西
赵路伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southwest Jiaotong University
Original Assignee
Southwest Jiaotong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Southwest Jiaotong University filed Critical Southwest Jiaotong University
Priority to CN201810047883.XA priority Critical patent/CN108429633B/zh
Publication of CN108429633A publication Critical patent/CN108429633A/zh
Application granted granted Critical
Publication of CN108429633B publication Critical patent/CN108429633B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/044Network management architectures or arrangements comprising hierarchical management structures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于灰狼算法的虚拟网络功能部署方法,包括以下步骤:(1)输入底层网络的各节点信息和链路信息,输入服务功能链,服务功能链请求包括多个有顺序约束的虚拟网络功能,将服务功能链请求中所有虚拟网络功能部署在底层网络计算节点上的资源需求作为服务功能链部署方案的第一约束条件,将服务功能链请求中所有虚拟网络功能之间的带宽需求作为服务功能链部署方案的第二约束条件,将服务功能链部署的总时延作为服务功能链部署方案的优化目标;(2)初始化灰狼种群;(3)评估灰狼种群;(4)更新灰狼种群中每个灰狼个体的位置信息;(5)判断是否达到最大迭代次数,输出全局最优灰狼。本发明效率高,时间短,适用范围广。

Description

基于灰狼算法的虚拟网络功能部署方法
技术领域
本发明涉及网络功能虚拟化技术领域,具体而言,涉及一种基于灰狼算法的虚拟网络功能部署方法。
背景技术
在传统网络中,企业和运营商为了提供多种服务,需要部署大量的特定物理设备来提供特殊的网络功能,如防火墙、入侵检测系统、负载均衡器等,网络数据流需要穿过这组有序的特定物理设备,这组有序的特定物理设备被称为网络功能链。各种特定网络功能的物理设备组成了严格又僵硬的网络功能链,在网络拓扑中位置固定,要提供新服务时,就需要重新部署或升级物理设施,因此大大提高了投资和运营成本。网络功能虚拟化是利用虚拟化技术,将网络功能的实现从底层硬件中迁移到虚拟平台上,并将其部署到符合业界标准的通用服务器上,从而实现传统网络中专用硬件设备的功能。使用网络功能虚拟化技术提供网络服务,与传统的使用专用硬件设备提供网络服务相比,可以分离软件与硬件,根据需求动态的实体化各虚拟网络功能,提供灵活又快速的网络功能部署,减少了运营投资。
在网络功能虚拟化的实施与部署中,虚拟网络功能的部署问题是其中的一个核心问题。现有技术中解决虚拟网络功能的部署问题的方法多以数学手段为主,如动态规划等,但随着问题规模增大,如底层网络规模的增加,虚拟网络功能数量的增多等,耗时增加,其解决效率大大降低。
在中国专利文献CN106411678A中公开了一种带宽保障的虚拟网络功能部署方法,该方法即采用数学手段进行虚拟网络功能部署,其随着问题规模增大,如底层网络规模的增加,虚拟网络功能数量的增多等,耗时增加,其解决效率大大降低,除此之外该中国专利文献只考虑到了虚拟网络功能部署中的带宽需求,其适用范围有局限性,因此目前亟需找到一种尽可能高效且可行的解决方法。
发明内容
本发明的主要目的在于提供一种基于灰狼算法的虚拟网络功能部署方法,以解决现有技术中虚拟网络功能部署耗时、效率低的问题。
为了实现上述目的,本发明提供了基于灰狼算法的虚拟网络功能部署方法,包括以下步骤:
(1)输入底层网络的各节点信息和链路信息,输入服务功能链,服务功能链请求包括多个有顺序约束的虚拟网络功能,将服务功能链请求中所有虚拟网络功能部署在底层网络计算节点上的资源需求作为服务功能链部署方案的第一约束条件,将服务功能链请求中所有虚拟网络功能之间的带宽需求作为服务功能链部署方案的第二约束条件,将服务功能链部署的总时延作为服务功能链部署方案的优化目标,其中服务功能链部署的总时延为服务功能链请求中所有虚拟网络功能部署在计算节点上数据流流经所有虚拟网络功能的总处理时延与服务功能链请求中所有虚拟网络功能之间的总传输时延之和;
(2)初始化灰狼种群,将服务功能链请求中的各虚拟网络功能的部署位置对应灰狼个体的位置,将服务功能链部署的总时延作为灰狼个体的适应度值,根据灰狼个体的位置计算各个灰狼个体的适应度值,初始化全局最优灰狼、全局第二优灰狼、全局第三优灰狼;
(3)评估灰狼种群,计算每个灰狼个体的当前适应度值,并更新全局最优灰狼、全局第二优灰狼和全局第三优灰狼;
(4)更新灰狼种群中每个灰狼个体的位置信息;
(5)判断是否达到最大迭代次数,如果没有达到最大迭代次数则转到步骤(3),如果达到最大迭代次数则退出循环,输出全局最优灰狼,并求出该全局最优灰狼下的服务功能链部署的总时延。
灰狼算法是一种新颖的群智能优化算法,相比于传统的算法它具有优秀的全局搜索和局部搜索能力,它根据种群中的全局最优灰狼、全局第二优灰狼和全局第三优灰狼来引导整个种群变化,本发明在上述第一约束条件、第二约束条件以及优化目标的情况下,利用灰狼算法以由此快速计算出全局最优灰狼下的服务功能链部署的总时延,使得虚拟网络功能部署时延尽可能的小,由此快速找出最优的务功能链部署方案,采用本发明能够大大提高虚拟网络功能部署的效率,明显缩短虚拟网络功能部署的时间。
进一步地在步骤(1)中,
将底层网络抽象成一个无向的连通图G=(N,E),N表示节点集合,E表示连接节点之间的链路集合,N中有两种节点类型:计算节点和转发节点,转发节点仅负责转发数据流,而计算节点上才能放置虚拟网络功能,定义计算节点集合Nc={nc1,nc2,...,ncp},p表示计算节点的个数,
Figure BDA0001551460640000021
其中,对每个计算节点nci∈Nc,i={1,2,...,p},每个计算节点均具有计算资源大小c(nci)、存储资源大小s(nci)、I/O资源大小io(nci)和单位计算资源的耗时tc(nci)这四个属性,
VNF代表可部署在底层网络中计算节点上的虚拟网络功能,每个VNF的部署均需满足计算资源需求c(vnf)、存储资源需求s(vnf)和I/O资源需求io(vnf)这三个条件,则,某个VNF部署在计算节点nck上的条件为c(vnf)≤c(nck)且s(vnf)≤s(nck)且io(vnf)≤io(nck),
则所述第一约束条件为,对
Figure BDA0001551460640000031
有:
Figure BDA0001551460640000032
Figure BDA0001551460640000033
Figure BDA0001551460640000034
上述Nvnf表示部署在计算节点nck上的VNF集合;
SFC代表服务功能链,定义SFC=(vnf1,vnf2,...,vnfm),m代表SFC中VNF的个数,各VNF间的先后顺序固定且不变,
其中,每条链路e∈E,具有最大可用带宽bw(e)、链路传输时延delay(e)这两个属性,
定义bw(vnfj,vnfk)为vnfj到vnfk的带宽需求,设vnfj到vnfk之间经过的链路集合为Ej,k,对
Figure BDA0001551460640000035
需要满足bw(e)≥bw(vnfj,vnfk),
则所述第二约束条件为,对
Figure BDA0001551460640000036
有:
Figure BDA0001551460640000037
xi=1表示vnfi到vnfi+1的链路集合中包含链路e,xi=0表示不包含链路e;
设某个vnfi部署在计算节点nck上,定义当数据流流经nck上的vnfi需要的处理时延delay(vnfi,nck),按如下公式计算处理时延:
delay(vnfi,nck)=c(vnfi)·tc(nck)
其中,c(vnfi)表示vnfi需要的计算资源,tc(nck)表示计算节点nck上单位计算资源的耗时,
定义delay(vnfj,vnfk)为vnfj到vnfk的传输时延,若vnfj与vnfk部署在同一计算节点上,则delay(vnfj,vnfk)=0;若vnfj与vnfk部署在不同的计算节点上,设vnfj到vnfk之间经过的链路集合为Ej,k,则按如下公式计算传输时延:
Figure BDA0001551460640000041
定义D(SFC)为SFC部署的总时延,其中,SFC=(vnf1,vnf2,...,vnfm),综上所述,所述优化目标SFC部署的总时延为:
Figure BDA0001551460640000042
其中,nck∈Nc,k∈{1,2,...,p},p表示计算节点的个数。
SFC代表服务功能链,SFC请求由多个有顺序约束的VNF组成,所谓虚拟网络功能的放置问题即是将SFC请求中包含的VNF部署在底层网络中的计算节点上,让数据流有顺序的流经各个VNF,完成整个网络服务。
进一步地,在步骤(2)中,
所述灰狼个体的位置的表示方式是一个整数数组,令L=[l1,l2,...,lm],其中的每个元素对应SFC=(vnf1,vnf2,...,vnfm)中相应的VNF,L=[l1,l2,...,lm]中每个元素代表对应VNF部署在底层网络中的节点的id,底层网络中计算节点集合为Nc,其中,计算节点的id取值下限为Nc_min_idx,计算节点的id取值上限为Nc_max_idx,则Nc_min_idx≤li≤Nc_max_idx,i∈{1,2,...,m},m代表数组长度,也代表SFC中VNF的个数,初始化时,位置数组L中的每个元素取值为[Nc_min_idx,Nc_max_idx]内的随机整数;
所述灰狼个体的适应度值为Double型变量,代表该灰狼个体所对应的SFC部署方案的总时延,适应度值初始化为MAX_FITNESS=999999.0,若该灰狼个体无法生成满足资源约束和带宽约束的SFC部署方案,则该灰狼个体非法,令其适应度值为MAX_FITNESS。
灰狼个体的适应度值越小,总时延越小,该灰狼个体越优秀。
进一步地,所述适应度值的计算方法如下:对某灰狼个体w,其位置信息为Lw=[lw1,lw2,...,lwm],对应SFC=(vnf1,vnf2,...,vnfm)部署在底层网络中的计算节点的id,例如,l1对应vnf1,代表vnf1部署在底层网络中的节点的id,对
Figure BDA0001551460640000043
做如下判断:c(vnfi)≤c(lwi)且s(vnfi)≤s(lwi)且io(vnfi)≤io(lwi)只要有一个i的取值不满足上述三个条件,则该灰狼个体对应的SFC部署方案不能满足所述第一约束条件,该灰狼个体非法,令其适应度值为MAX_FITNESS,
若灰狼个体对应的SFC部署方案满足第一约束条件,然后按顺序计算SFC中相邻两个VNF之间的传输时延delay(vnfi,vnfi+1):对
Figure BDA0001551460640000051
若lwi≠lw(i+1),以lwi为起点,以lw(i+1)为终点,以bw(vnfi,vnfi+1)为链路上的带宽约束,以链路上的传输时延为开销,运行Dijkstra算法,若能找到一条从lwi到lw(i+1)的、且满足bw(vnfi,vnfi+1)带宽约束的最小时延链路集Ewi,则
Figure BDA0001551460640000052
若找不到满足bw(vnfi,vnfi+1)约束的最小时延链路集,则该灰狼个体对应的SFC部署方案不能满足所述第二约束条件,该灰狼个体非法,令其适应度值为MAX_FITNESS;若lwi=lw(i+1),则delay(vnfi,vnfi+1)=0,
最后计算SFC中每个VNF在其部署的计算节点上的处理时延delay(vnfi,lwi):对
Figure BDA0001551460640000053
delay(vnfi,lwi)=c(vnfi)·tc(lwi),
综上所述,灰狼个体w的适应度值按如下公式计算:
Figure BDA0001551460640000054
进一步地,所述步骤(4)具体如下,
对灰狼个体w,计算转移概率tr,
计算公式如下:
Figure BDA0001551460640000055
转移概率tr是用来平衡全局搜索和局部挖掘的能力,随着迭代的进行,算法应从全局搜索逐步过渡到局部开采,以求得到更优的解。此处引入了概率动态调整的思想,其中,TR_MAX是转移概率上限,TR_MIN是转移概率下限,t代表当前迭代的次数,MAX_T代表最大迭代次数,
设当前灰狼个体w的位置信息Lw=[lw1,lw2,...,lwm],对
Figure BDA0001551460640000056
取随机数randr∈(0,1),
若randr<tr,进入全局搜索,此处引入了群体咨询算法中咨询他人的思想,从种群中随机选择另一灰狼个体w*,其位置信息
Figure BDA0001551460640000057
将灰狼个体w*位置信息中i处的值赋给当前灰狼个体w,即:
Figure BDA0001551460640000058
若randr≥tr,设全局最优灰狼为alpha狼,全局第二优灰狼为beta狼,全局第三优灰狼为delta狼,则进入局部发掘,基本灰狼算法中,根据最优alpha狼、次优beta狼、第三优delta狼调整整个狼群的位置,且该三狼的权重均相等,均为
Figure BDA0001551460640000061
且视alpha对狼群的贡献最高,其权重动态增加,beta和delta的影响力逐渐降低,其权重动态减少,且delta的减少幅度更大,此处引入了权重动态变更的思想,当前灰狼个体有小概率不跟随上述三狼而自己决定,整个局部发掘的过程如下:
计算跟随alpha狼的权重pα,计算跟随beta狼的权重pβ,计算跟随delta狼的权重pδ,计算公式如下:
Figure BDA0001551460640000062
Figure BDA0001551460640000063
Figure BDA0001551460640000064
其中,αMIN与αMAX是pα的取值下限与上限,其余同理,t是当前迭代次数,MAX_T是最大迭代次数,
取随机数rnd∈(0,1),若rnd≤pα,根据alpha狼调整当前灰狼个体,设alpha的位置信息为Lα=[lα1,lα2,...,lαm],将Lα中i处的值赋给当前灰狼个体w,即:lwi=lαi
若pα<rnd≤pα+pβ,根据beta狼调整当前灰狼个体,设beta的位置信息Lβ=[lβ1,lβ2,...,lβm],将Lβ中i处的值赋给当前灰狼个体w,即:lwi=lβi
若pα+pβ<rnd≤pα+pβ+pδ,根据delta狼调整当前灰狼个体,设delta的位置信息Lδ=[lδ1,lδ2,...,lδm],将Lδ中i处的值赋给当前灰狼个体w,即:lwi=lδi
若rnd>pα+pβ+pδ,当前灰狼个体w自行调整位置Lw中i处的值,此处引入了蚁群算法中蚂蚁寻路寻找下一个候选节点的思想,具体做法是:Lw中i处的值lwi代表了SFC中vnfi部署在底层网络中的计算节点的id,lwi的取值范围为整个计算节点集合Nc,对
Figure BDA0001551460640000065
按如下公式计算节点k被选中的概率:
Figure BDA0001551460640000071
其中,DL(k,i)代表了vnfi部署在节点k上的局部时延,
Figure BDA0001551460640000072
是vnfi部署在每个计算节点上的局部时延的倒数加和,局部时延DL(k,i)的计算方式如下:
Figure BDA0001551460640000073
其中,delay(vnfi,k)代表vnfi部署在节点k上的处理时延,delay(vnfi-1,vnfi)表示前一个vnfi-1到当前部署在节点k上的vnfi的传输时延。
求出了Nc中每个计算节点被选中的概率后,用轮盘赌的方式从Nc中选出一个计算节点并用其更新当前灰狼个体的lwi
由上面的概率计算公式可知,局部时延越小,倒数越大,则被选中的概率越大,在增加种群多样性的同时也一定程度上保证了解的质量,增加了算法的收敛速度。
本方法中,针对具体的虚拟网络功能部署问题,通过灰狼个体位置信息的整数编码把优化连续问题的基本灰狼算法映射到离散的搜索空间,并在位置更新策略中引入了咨询群体中的其他灰狼个体、动态权重调整、蚂蚁寻路等其他算法的思想,使其更适合解决虚拟网络功能放置问题
进一步地,所述TR_MAX=0.4,TR_MIN=0.1。
进一步地,αMIN=βMAX=δMAX=0.3,αMAX=0.6,βMIN=0.2,δMIN=0.1,满足0.88≤pα+pβ+pδ≤0.92。
进一步地,更新全局最优灰狼、全局第二优灰狼、全局第三优灰狼的具体方式为:遍历灰狼种群,对每一个灰狼个体做如下判断,若灰狼个体的适应度值小于全局最优灰狼,则用灰狼个体替换掉全局最优灰狼;若灰狼个体的适应度值大于全局最优灰狼且小于全局第二优灰狼,则用灰狼个体替换掉全局第二优灰狼;若灰狼个体的适应度值大于全局最优灰狼且大于全局第二优灰狼且小于全局第三优灰狼,则用灰狼个体替换掉全局第三优灰狼。
可见,本发明在上述第一约束条件、第二约束条件以及优化目标的情况下,利用灰狼算法以由此快速计算出全局最优灰狼下的服务功能链部署的总时延,使得虚拟网络功能部署时延尽可能的小,由此快速找出尽可能优的务功能链部署方案,采用本发明能够大大提高虚拟网络功能部署的效率,明显缩短虚拟网络功能部署的时间。本发明既考虑到了虚拟网络部署的资源需求和带宽需求,也考虑到了虚拟网络功能部署的总时延,本发明的适用范围较现有技术更广。
下面结合附图和具体实施方式对本发明做进一步的说明。本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
构成本发明的一部分的附图用来辅助对本发明的理解,附图中所提供的内容及其在本发明中有关的说明可用于解释本发明,但不构成对本发明的不当限定。在附图中:
图1为本发明中基于灰狼算法的虚拟网络功能部署方法的流程图。
图2为本发明具体实施方式中的网络拓扑图。
图3为场景一下三种算法的历史最小时延随代数的变化曲线图。
图4为场景二下三种算法的历史最小时延随代数的变化曲线图。
图5为场景三下三种算法的历史最小时延随代数的变化曲线图。
图6为场景一下三种算法的每一代平均时延随代数的变化曲线图。
图7为场景二下三种算法的每一代平均时延随代数的变化曲线图。
图8为场景三下三种算法的每一代平均时延随代数的变化曲线图。
具体实施方式
下面结合附图对本发明进行清楚、完整的说明。本领域普通技术人员在基于这些说明的情况下将能够实现本发明。在结合附图对本发明进行说明前,需要特别指出的是:
本发明中在包括下述说明在内的各部分中所提供的技术方案和技术特征,在不冲突的情况下,这些技术方案和技术特征可以相互组合。
此外,下述说明中涉及到的本发明的实施例通常仅是本发明一分部的实施例,而不是全部的实施例。因此,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
关于本发明中术语和单位。本发明的说明书和权利要求书及有关的部分中的术语“包括”、“具有”以及它们的任何变形,意图在于覆盖不排他的包含。需要说明的是在本文中VNF是虚拟网络功能的总称,vnf代表某个具体的虚拟网络功能。
如图1所示,本发明提供了基于灰狼算法的虚拟网络功能部署方法,包括以下步骤:
(1)输入底层网络拓扑信息,包括输入底层网络的各节点信息和链路信息,输入服务功能链SFC,服务功能链请求包括多个有顺序约束的虚拟网络功能,将服务功能链请求中所有虚拟网络功能部署在底层网络计算节点上的资源需求作为服务功能链部署方案的第一约束条件,将服务功能链请求中所有虚拟网络功能之间的带宽需求作为服务功能链部署方案的第二约束条件,将服务功能链部署的总时延作为服务功能链部署方案的优化目标,其中服务功能链部署的总时延为服务功能链请求中所有虚拟网络功能部署在计算节点上数据流流经所有虚拟网络功能的总处理时延与服务功能链请求中所有虚拟网络功能之间的总传输时延之和;
(2)初始化灰狼种群,将服务功能链请求中的各虚拟网络功能的部署位置对应灰狼个体的位置,将服务功能链部署的总时延作为灰狼个体的适应度值,根据灰狼个体的位置计算各个灰狼个体的适应度值,全局最优灰狼、全局第二优灰狼、全局第三优灰狼;设全局最优灰狼为alpha狼,全局第二优灰狼为beta狼,全局第三优灰狼为delta狼;
(3)评估灰狼种群,计算每个灰狼个体的当前适应度值,并更新全局最优灰狼、全局第二优灰狼和全局第三优灰狼;
(4)更新灰狼种群中每个灰狼个体的位置信息;
(5)初始化最大迭代次数MAX_T,当前迭代次数t=1,判断是否达到最大迭代次数,t=t+1,若t<MAX_T,转到步骤(3),否则退出循环,输出全局最优灰狼alpha,并求出alpha下的SFC部署的总时延。
灰狼算法是一种新颖的群智能优化算法,相比于传统的算法它具有优秀的全局搜索和局部搜索能力,它根据种群中的全局最优灰狼、全局第二优灰狼和全局第三优灰狼来引导整个种群变化,本发明在上述第一约束条件、第二约束条件以及优化目标的情况下,利用灰狼算法以由此快速计算出全局最优灰狼下的服务功能链部署的总时延,使得虚拟网络功能部署时延尽可能的小,由此快速找出最优的务功能链部署方案,采用本发明能够大大提高虚拟网络功能部署的效率,明显缩短虚拟网络功能部署的时间。
在步骤(1)中,
将底层网络抽象成一个无向的连通图G=(N,E),N表示节点集合,E表示连接节点之间的链路集合,N中有两种节点类型:计算节点和转发节点,转发节点仅负责转发数据流,而计算节点上才能放置虚拟网络功能。定义计算节点集合Nc={nc1,nc2,...,ncp},p表示计算节点的个数,
Figure BDA0001551460640000091
其中,对每个计算节点nci∈Nc,i={1,2,...,p},每个计算节点均具有计算资源大小c(nci)、存储资源大小s(nci)、I/O资源大小io(nci)和单位计算资源的耗时tc(nci)这四个属性,
VNF代表可部署在底层网络中计算节点上的虚拟网络功能,每个VNF的部署均需满足计算资源需求c(vnf)、存储资源需求s(vnf)和I/O资源需求io(vnf)这三个条件,则,某个VNF部署在计算节点nck上的条件为c(vnf)≤c(nck)且s(vnf)≤s(nck)且io(vnf)≤io(nck),
则所述第一约束条件为,对
Figure BDA0001551460640000101
有:
Figure BDA0001551460640000102
Figure BDA0001551460640000103
Figure BDA0001551460640000104
上述Nvnf表示部署在计算节点nck上的VNF集合;
SFC代表服务功能链,定义SFC=(vnf1,vnf2,...,vnfm),m代表SFC中VNF的个数,各VNF间的先后顺序固定且不变,
其中,每条链路e∈E,具有最大可用带宽bw(e)、链路传输时延delay(e)这两个属性,
定义bw(vnfj,vnfk)为vnfj到vnfk的带宽需求,设vnfj到vnfk之间经过的链路集合为Ej,k,对
Figure BDA0001551460640000105
需要满足bw(e)≥bw(vnfj,vnfk),
则所述第二约束条件为,对
Figure BDA0001551460640000106
有:
Figure BDA0001551460640000107
xi=1表示vnfi到vnfi+1的链路集合中包含链路e,xi=0表示不包含链路e;
设某个vnfi部署在计算节点nck上,定义当数据流流经nck上的vnfi需要的处理时延delay(vnfi,nck),按如下公式计算处理时延:
delay(vnfi,nck)=c(vnfi)·tc(nck)
其中,c(vnfi)表示vnfi需要的计算资源,tc(nck)表示计算节点nck上单位计算资源的耗时,
定义delay(vnfj,vnfk)为vnfj到vnfk的传输时延,若vnfj与vnfk部署在同一计算节点上,则delay(vnfj,vnfk)=0;若vnfj与vnfk部署在不同的计算节点上,设vnfj到vnfk之间经过的链路集合为Ej,k,则按如下公式计算传输时延:
Figure BDA0001551460640000111
定义D(SFC)为SFC部署的总时延,其中,SFC=(vnf1,vnf2,...,vnfm),综上所述,所述优化目标SFC部署的总时延为:
Figure BDA0001551460640000112
其中,nck∈Nc,k∈{1,2,...,p},p表示计算节点的个数。
SFC代表服务功能链,SFC请求由多个有顺序约束的VNF组成,所谓虚拟网络功能的放置问题即是将SFC请求中包含的VNF部署在底层网络中的计算节点上,让数据流有顺序的流经各个VNF,完成整个网络服务。
在步骤(2)中,
所述灰狼个体的位置的表示方式是一个整数数组,令L=[l1,l2,...,lm],其中的每个元素对应SFC=(vnf1,vnf2,...,vnfm)中相应的VNF,L=[l1,l2,...,lm]中每个元素代表对应VNF部署在底层网络中的节点的id,底层网络中计算节点集合为Nc,其中,计算节点的id取值下限为Nc_min_idx,计算节点的id取值上限为Nc_max_idx,则Nc_min_idx≤li≤Nc_max_idx,i∈{1,2,...,m},m代表数组长度,也代表SFC中VNF的个数,初始化时,位置数组L中的每个元素取值为[Nc_min_idx,Nc_max_idx]内的随机整数;
所述灰狼个体的适应度值为Double型变量,代表该灰狼个体所对应的SFC部署方案的总时延,灰狼个体的适应度值初始化为MAX_FITNESS=999999.0,若该灰狼个体无法生成满足资源约束和带宽约束的SFC部署方案,则该灰狼个体非法,令其适应度值为MAX_FITNESS。适应度值越小,总时延越小,该灰狼个体越优秀。
所述灰狼个体适应度值的计算方法如下:对某灰狼个体w,其位置信息为Lw=[lw1,lw2,...,lwm],对应SFC=(vnf1,vnf2,...,vnfm)部署在底层网络中的计算节点的id,例如,l1对应vnf1,代表vnf1部署在底层网络中的节点的id,对
Figure BDA0001551460640000113
做如下判断:c(vnfi)≤c(lwi)且s(vnfi)≤s(lwi)且io(vnfi)≤io(lwi)只要有一个i的取值不满足上述三个条件,则该灰狼个体对应的SFC部署方案不能满足所述第一约束条件,该灰狼个体非法,令其适应度值为MAX_FITNESS,
若灰狼个体对应的SFC部署方案满足第一约束条件,然后按顺序计算SFC中相邻两个VNF之间的传输时延delay(vnfi,vnfi+1):对
Figure BDA0001551460640000121
若lwi≠lw(i+1),以lwi为起点,以lw(i+1)为终点,以bw(vnfi,vnfi+1)为链路上的带宽约束,以链路上的传输时延为开销,运行Dijkstra算法,若能找到一条从lwi到lw(i+1)的、且满足bw(vnfi,vnfi+1)带宽约束的最小时延链路集Ewi,则
Figure BDA0001551460640000122
若找不到满足bw(vnfi,vnfi+1)约束的最小时延链路集,则该灰狼个体对应的SFC部署方案不能满足所述第二约束条件,该灰狼个体非法,令其适应度值为MAX_FITNESS;若lwi=lw(i+1),则delay(vnfi,vnfi+1)=0,
最后计算SFC中每个VNF在其部署的计算节点上的处理时延delay(vnfi,lwi):对
Figure BDA0001551460640000123
delay(vnfi,lwi)=c(vnfi)·tc(lwi),
综上所述,灰狼个体w的适应度值按如下公式计算:
Figure BDA0001551460640000124
进一步地,所述步骤(4)具体如下,
对灰狼个体w,计算转移概率tr,
计算公式如下:
Figure BDA0001551460640000125
转移概率tr是用来平衡全局搜索和局部挖掘的能力,随着迭代的进行,算法应从全局搜索逐步过渡到局部开采,以求得到更优的解。此处引入了概率动态调整的思想,其中,TR_MAX是转移概率上限,TR_MIN是转移概率下限,t代表当前迭代的次数,MAX_T代表最大迭代次数,
设当前灰狼个体w的位置信息Lw=[lw1,lw2,...,lwm],对
Figure BDA0001551460640000126
取随机数randr∈(0,1),
若randr<tr,进入全局搜索,此处引入了群体咨询算法中咨询他人的思想,从种群中随机选择另一灰狼个体w*,其位置信息
Figure BDA0001551460640000127
将灰狼个体w*位置信息中i处的值赋给当前灰狼个体w,即:
Figure BDA0001551460640000128
若randr≥tr,进入局部发掘,基本灰狼算法中,设全局最优灰狼为alpha狼,全局第二优灰狼为beta狼,全局第三优灰狼为delta狼,根据最优alpha狼、次优beta狼、第三优delta狼调整整个狼群的位置,且该三狼的权重均相等,均为
Figure BDA0001551460640000131
且视alpha对狼群的贡献最高,其权重动态增加,beta和delta的影响力逐渐降低,其权重动态减少,且delta的减少幅度更大,此处引入了权重动态变更的思想,当前灰狼个体有小概率不跟随上述三狼而自己决定,整个局部发掘的过程如下:
计算跟随alpha狼的权重pα,计算跟随beta狼的权重pβ,计算跟随delta狼的权重pδ,计算公式如下:
Figure BDA0001551460640000132
Figure BDA0001551460640000133
Figure BDA0001551460640000134
其中,αMIN与αMAX是pα的取值下限与上限,其余同理,t是当前迭代次数,MAX_T是最大迭代次数,
取随机数rnd∈(0,1),若rnd≤pα,根据alpha狼调整当前灰狼个体,设alpha的位置信息为Lα=[lα1,lα2,...,lαm],将Lα中i处的值赋给当前灰狼个体w,即:lwi=lαi
若pα<rnd≤pα+pβ,根据beta狼调整当前灰狼个体,设beta的位置信息Lβ=[lβ1,lβ2,...,lβm],将Lβ中i处的值赋给当前灰狼个体w,即:lwi=lβi
若pα+pβ<rnd≤pα+pβ+pδ,根据delta狼调整当前灰狼个体,设delta的位置信息Lδ=[lδ1,lδ2,...,lδm],将Lδ中i处的值赋给当前灰狼个体w,即:lwi=lδi
若rnd>pα+pβ+pδ,当前灰狼个体w自行调整位置Lw中i处的值,此处引入了蚁群算法中蚂蚁寻路寻找下一个候选节点的思想,具体做法是:Lw中i处的值lwi代表了SFC中vnfi部署在底层网络中的计算节点的id,lwi的取值范围为整个计算节点集合Nc,对
Figure BDA0001551460640000135
按如下公式计算节点k被选中的概率:
Figure BDA0001551460640000141
DL(k,i)代表了vnfi部署在节点k上的局部时延,
Figure BDA0001551460640000142
是vnfi部署在每个计算节点上的局部时延的倒数加和,局部时延DL(k,i)的计算方式如下:
Figure BDA0001551460640000143
其中,delay(vnfi,k)代表vnfi部署在节点k上的处理时延,delay(vnfi-1,vnfi)表示前一个vnfi-1到当前部署在节点k上的vnfi的传输时延。
求出了Nc中每个计算节点被选中的概率后,用轮盘赌的方式从Nc中选出一个计算节点并用其更新当前灰狼个体的lwi
由上面的概率计算公式可知,局部时延越小,倒数越大,则被选中的概率越大,在增加种群多样性的同时也一定程度上保证了解的质量,增加了算法的收敛速度。
本方法中,针对具体的虚拟网络功能部署问题,通过灰狼个体位置信息的整数编码把优化连续问题的基本灰狼算法映射到离散的搜索空间,并在位置更新策略中引入了咨询群体中的其他灰狼个体、动态权重调整、蚂蚁寻路等其他算法的思想,使其更适合解决虚拟网络功能放置问题
优选所述TR_MAX=0.4,TR_MIN=0.1。
优选所述αMIN=βMAX=δMAX=0.3,αMAX=0.6,βMIN=0.2,δMIN=0.1,满足0.88≤pα+pβ+pδ≤0.92。
更新全局最优灰狼、全局第二优灰狼、全局第三优灰狼的具体方式为:遍历灰狼种群,对每一个灰狼个体做如下判断,若灰狼个体的适应度值小于全局最优灰狼,则用灰狼个体替换掉全局最优灰狼;若灰狼个体的适应度值大于全局最优灰狼且小于全局第二优灰狼,则用灰狼个体替换掉全局第二优灰狼;若灰狼个体的适应度值大于全局最优灰狼且大于全局第二优灰狼且小于全局第三优灰狼,则用灰狼个体替换掉全局第三优灰狼。
本发明以下列具体的网络拓扑说明本发明基于灰狼算法的虚拟网络功能部署方法的具体实施方式,如图2所示的网络拓扑,共有25个节点,节点编号为1~25,共有45条链路,链路编号为1~45(图中未画出),其中,计算节点集合Nc={1,2,5,7,9,12,13,19,20,22,23,25},对每个计算节点,计算资源大小在[50,100]内随机生成,存储资源大小在[50,100]内随机生成,I/O资源大小在[50,100]内随机生成,单位计算资源耗时在[0.2,0.8]内随机生成。对每条链路,链路上的带宽在[8000,10000]内随机生成,链路上的时延在[1,10]内随机生成。
输入的SFC=[vnf1,vnf2,...,vnf10],共有10个VNF,对每个VNF,所需的计算资源在[10,20]内随机生成,所需的存储资源在[10,20]内随机生成,所需的I/O资源在[10,20]内随机生成,相邻两个VNF间的带宽需求在[1000,3000]内随机生成。
设灰狼种群规模M=100,按照步骤(2)所述初始化灰狼种群,即初始化所有灰狼个体,每个灰狼的位置信息是一个长度为10的整数数组,其中,每一位的取值为计算节点集合Nc中的随机值,例如[2,7,9,13,19,20,20,22,25,25],每个灰狼的适应度初始值为999999.0。在种群外创建全局最优alpha狼、次优beta狼、第三优delta狼。初始化最大迭代次数MAX_T=200,当前迭代次数t=1。
对种群中的每个灰狼个体按照步骤(3)中所述进行适应度评估。相邻两个VNF间的传输时延的计算方式如下:设当前灰狼个体的位置信息Lw=[2,7,9,13,19,20,20,22,25,25],对vnf1与vnf2之间的传输时延delay(vnf1,vnf2),vnf1对应的部署节点id=2,vnf2对应的部署节点id=7,则以节点2为起点,以节点7为终点,以bw(vnf1,vnf2)为链路上的带宽约束,以各链路上的传输时延为开销,运行Dijkstra算法,若能找到一条从节点2到节点7的、且满足bw(vnf1,vnf2)带宽约束的最小时延链路集Ew,则
Figure BDA0001551460640000151
若找不到满足bw(vnf1,vnf2)约束的最小时延链路集,则该灰狼个体对应的SFC部署方案不能满足第二约束条件,该灰狼个体非法,令其适应度值为适应度最大值999999.0;对vnf9与vnf10之间的传输时延delay(vnf9,vnf10),vnf9对应的部署节点id=25,vnf10对应的部署节点id=25,vnf9与vnf10部署在同一计算节点上,则delay(vnf9,vnf10)=0。
种群适应度评估完成后,按照步骤(3)中所述更新alpha、beta、delta三狼。
按照步骤(4)所述,更新每个灰狼个体的位置信息,设当前灰狼个体w的位置信息为Lw=[2,7,9,13,19,20,20,22,25,25],具体说明如下:
按步骤(4)所述计算转移概率tr,其中,TR_MAX=0.4,TR_MIN=0.1。
对Lw中的每一位做后续的一系列操作,这里以Lw中第1位做说明,即对应步骤(4)中所述的i=1,Lw(1)=lw1=2。
取随机数randr∈(0,1)。
若randr<tr,从种群里随机选择另一灰狼个体w*,设w*位置信息的第1位值为13,则Lw中第1位更新为13,即Lw(1)=lw1=13。
若randr≥tr。
按步骤(4)所述计算pα、pβ、pδ,其中,αMIN=βMAX=δMAX=0.3,αMAX=0.6,βMIN=0.2,δMIN=0.1。
取随机数rnd∈(0,1)。若rnd≤pα,设alpha灰狼个体的位置信息的第1位值为19,则Lw中第1位更新为19,即Lw(1)=lw1=19。
若pα<rnd≤pα+pβ,设beta灰狼个体的位置信息的第1位值为23,则Lw中第1位更新为23,即Lw(1)=lw1=23。
若pα+pβ<rnd≤pα+pβ+pδ,设delta灰狼个体的位置信息的第1位值为12,则Lw中第1位更新为12,即Lw(1)=lw1=12。
若rnd>pα+pβ+pδ,则Lw中第1位的取值自行调整,具体的调整办法如步骤(4)中所述。值得注意的是,这里要更新的是Lw中的第1位,即vnf1的部署节点id,自行调整时,会计算vnf1部署在每个计算节点上的局部时延DL,以此求出每个计算节点被选中的概率,再通过轮盘赌的方式选出待部署的计算节点id,并用其更新Lw的第1位。计算局部时延DL时,要更新的是第1位,即i=1,所以DL的计算方式要按照i=1的公式计算。若要更新的是Lw中的第2位及后面的其他位,则按i≥2的公式计算局部时延DL
灰狼种群位置信息更新完毕后,重复上述的迭代过程,直到t>MAX_T,退出循环,输出全局最优灰狼个体alpha,并求出alpha下的SFC部署的总时延。
下面以遗传算法(GA)、粒子群算法(PSO)作为对比例,用实验结果说明本发明基于灰狼算法的虚拟网络功能部署方法(GWO)在解决虚拟网络功能放置问题上的优势。
对输入的SFC信息说明如下:SFC中包含10个VNF,每个VNF,所需的计算资源在[10,20]内随机生成,所需的存储资源在[10,20]内随机生成,所需的I/O资源在[10,20]内随机生成。相邻两个VNF间的带宽需求在[1000,3000]内随机生成。
对场景中的节点资源说明如下:每个计算节点,计算资源大小在[50,100]内随机生成,存储资源大小在[50,100]内随机生成,I/O资源大小在[50,100]内随机生成,单位计算资源耗时在[0.2,0.8]内随机生成。
对场景中的链路资源说明如下:每条链路,链路带宽在[8000,10000]内随机生成,链路时延在[1,10]内随机生成。
下面模拟三个场景,对比GA、PSO、GWO的运行结果,分析GWO算法的优势。
场景一:拓扑节点数25,链路数45,其中,计算节点的个数为13,计算节点的位置随机。
场景二:拓扑节点数50,链路数88,其中,计算节点的个数为27,计算节点的位置随机。
场景三:拓扑节点数161,链路数332,其中,计算节点的个数为85,计算节点的位置随机。
设种群规模为500,迭代次数200。三种算法在三个场景中各自运行20次,结果取平均值。算法所得的SFC部署最小时延、标准差的统计结果如下表1所示:
表1
Figure BDA0001551460640000171
Figure BDA0001551460640000181
结果分析:GWO在三个场景下的求解质量上明显优于GA和PSO,所求得的SFC部署方案的最小时延更低。三个场景中GWO求得的最小时延标准差在总体上看是小于GA和PSO的,说明GWO比GA和PSO更稳定。
三种算法在三个场景中所得的每一代平均时延随代数的变化曲线如图所示3-5所示图3为场景一下三种算法的历史最小时延随代数的变化曲线图。图4为场景二下三种算法的历史最小时延随代数的变化曲线图。图5为场景三下三种算法的历史最小时延随代数的变化曲线图。
结果分析:从图3-5可以看出,在上述三个场景下,GWO比GA和PSO拥有更快的收敛速度,所得结果拥有更低的时延、更优的解质量。
三种算法在三个场景中所得的每一代平均时延随代数的变化曲线如图所示6-8所示,其中图6为场景一下三种算法的每一代平均时延随代数的变化曲线图。其中图7为场景二下三种算法的每一代平均时延随代数的变化曲线图。其中图8为场景三下三种算法的每一代平均时延随代数的变化曲线图。
结果分析:从图6-8可以看出,在上述三个场景中,GWO的平均时延随着代数的增长不断呈下降趋势,说明整个种群的适应度随着算法的不断迭代运行,整体呈变好的趋势。GA的平均时延变化忽上忽下,从图中来看没有一个明显的趋势,而PSO的平均时延随着迭代进行几乎没有变化。由此可见,GA和PSO的解搜索随机性更强,而GWO的解搜索能力有更好的指引性,能够通过算子的各种策略及种群中最优三狼的指导性作用带领整个种群往更好的方向发展,有利于挖掘出问题的更优解。
以上对本发明的有关内容进行了说明。本领域普通技术人员在基于这些说明的情况下将能够实现本发明。基于本发明的上述内容,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

Claims (8)

1.基于灰狼算法的虚拟网络功能部署方法,其特征在于,包括以下步骤:
(1)输入底层网络的各节点信息和链路信息,输入服务功能链,服务功能链请求包括多个有顺序约束的虚拟网络功能,将服务功能链请求中所有虚拟网络功能部署在底层网络计算节点上的资源需求作为服务功能链部署方案的第一约束条件,将服务功能链请求中所有虚拟网络功能之间的带宽需求作为服务功能链部署方案的第二约束条件,将服务功能链部署的总时延作为服务功能链部署方案的优化目标,其中服务功能链部署的总时延为服务功能链请求中所有虚拟网络功能部署在计算节点上数据流流经所有虚拟网络功能的总处理时延与服务功能链请求中所有虚拟网络功能之间的总传输时延之和;
(2)初始化灰狼种群,将服务功能链请求中的各虚拟网络功能的部署位置对应灰狼个体的位置,将服务功能链部署的总时延作为灰狼个体的适应度值,根据灰狼个体的位置计算各个灰狼个体的适应度值,初始化全局最优灰狼、全局第二优灰狼、全局第三优灰狼;
(3)评估灰狼种群,计算每个灰狼个体的当前适应度值,并更新全局最优灰狼、全局第二优灰狼和全局第三优灰狼;
(4)更新灰狼种群中每个灰狼个体的位置信息;
(5)判断是否达到最大迭代次数,如果没有达到最大迭代次数则转到步骤(3),如果达到最大迭代次数则退出循环,输出全局最优灰狼,并求出该全局最优灰狼下的服务功能链部署的总时延。
2.如权利要求1所述的基于灰狼算法的虚拟网络功能部署方法,其特征在于,步骤(1)具体为:
将底层网络抽象成一个无向的连通图G=(N,E),N表示节点集合,E表示连接节点之间的链路集合,定义计算节点集合Nc={nc1,nc2,...,ncp},p表示计算节点的个数,
Figure FDA0002223389800000011
其中,对每个计算节点nci∈Nc,i={1,2,...,p},每个计算节点均具有计算资源大小c(nci)、存储资源大小s(nci)、I/O资源大小io(nci)和单位计算资源的耗时tc(nci)这四个属性;
VNF代表可部署在底层网络中计算节点上的虚拟网络功能,每个VNF的部署均需满足计算资源需求c(vnf)、存储资源需求s(vnf)和I/O资源需求io(vnf)这三个条件,则,某个VNF部署在计算节点nck上的条件为c(vnf)≤c(nck)且s(vnf)≤s(nck)且io(vnf)≤io(nck),
则所述第一约束条件为,对
Figure FDA0002223389800000012
有:
Figure FDA0002223389800000013
Figure FDA0002223389800000021
Figure FDA0002223389800000022
上述Nvnf表示部署在计算节点nck上的VNF集合;
SFC代表服务功能链,定义SFC=(vnf1,vnf2,...,vnfm),m代表SFC中VNF的个数,各VNF间的先后顺序固定且不变;
其中,每条链路e∈E,具有最大可用带宽bw(e)、链路传输时延delay(e)这两个属性;
定义bw(vnfj,vnfk)为vnfj到vnfk的带宽需求,设vnfj到vnfk之间经过的链路集合为Ej,k,对
Figure FDA0002223389800000023
需要满足bw(e)≥bw(vnfj,vnfk),
则所述第二约束条件为,对
Figure FDA0002223389800000027
有:
Figure FDA0002223389800000024
xi=1表示vnfi到vnfi+1的链路集合中包含链路e,xi=0表示不包含链路e;
设某个vnfi部署在计算节点nck上,定义当数据流流经nck上的vnfi需要的处理时延delay(vnfi,nck),按如下公式计算处理时延:
delay(vnfi,nck)=c(vnfi)·tc(nck)
其中,c(vnfi)表示vnfi需要的计算资源,tc(nck)表示计算节点nck上单位计算资源的耗时;
定义delay(vnfj,vnfk)为vnfj到vnfk的传输时延,若vnfj与vnfk部署在同一计算节点上,则delay(vnfj,vnfk)=0;若vnfj与vnfk部署在不同的计算节点上,设vnfj到vnfk之间经过的链路集合为Ej,k,则按如下公式计算传输时延:
Figure FDA0002223389800000025
定义D(SFC)为SFC部署的总时延,其中,SFC=(vnf1,vnf2,...,vnfm),综上所述,所述优化目标SFC部署的总时延为:
Figure FDA0002223389800000026
其中,nck∈Nc,k∈{1,2,...,p},p表示计算节点的个数。
3.如权利要求2所述的基于灰狼算法的虚拟网络功能部署方法,其特征在于,在步骤(2)中
所述灰狼个体的位置的表示方式是一个整数数组,令L=[l1,l2,...,lm],其中的每个元素对应SFC=(vnf1,vnf2,...,vnfm)中相应的VNF,L=[l1,l2,...,lm]中每个元素代表对应VNF部署在底层网络中的节点的id,底层网络中计算节点集合为Nc,其中,计算节点的id取值下限为Nc_min_idx,计算节点的id取值上限为Nc_max_idx,则Nc_min_idx≤li≤Nc_max_idx,i∈{1,2,...,m},m代表数组长度,也代表SFC中VNF的个数,初始化时,位置数组L中的每个元素取值为[Nc_min_idx,Nc_max_idx]内的随机整数;
所述灰狼个体的适应度值为Double型变量,代表该灰狼个体所对应的SFC部署方案的总时延,适应度值初始化为MAX_FITNESS=999999.0,若该灰狼个体无法生成满足资源约束和带宽约束的SFC部署方案,则该灰狼个体非法,令其适应度值为MAX_FITNESS。
4.如权利要求3所述的基于灰狼算法的虚拟网络功能部署方法,其特征在于,所述适应度值的计算方法如下:
对某灰狼个体w,其位置信息为Lw=[lw1,lw2,...,lwm],对应SFC=(vnf1,vnf2,...,vnfm)部署在底层网络中的计算节点的id,对
Figure FDA0002223389800000031
做如下判断:c(vnfi)≤c(lwi)且s(vnfi)≤s(lwi)且io(vnfi)≤io(lwi)只要有一个i的取值不满足上述三个条件,则该灰狼个体对应的SFC部署方案不能满足所述第一约束条件,该灰狼个体非法,令其适应度值为MAX_FITNESS;
若灰狼个体对应的SFC部署方案满足第一约束条件,然后按顺序计算SFC中相邻两个VNF之间的传输时延delay(vnfi,vnfi+1):对
Figure FDA0002223389800000033
若lwi≠lw(i+1),以lwi为起点,以lw(i+1)为终点,以bw(vnfi,vnfi+1)为链路上的带宽约束,以链路上的传输时延为开销,运行Dijkstra算法,若能找到一条从lwi到lw(i+1)的、且满足bw(vnfi,vnfi+1)带宽约束的最小时延链路集Ewi,则
Figure FDA0002223389800000032
若找不到满足bw(vnfi,vnfi+1)约束的最小时延链路集,则该灰狼个体对应的SFC部署方案不能满足所述第二约束条件,该灰狼个体非法,令其适应度值为MAX_FITNESS;若lwi=lw(i+1),则delay(vnfi,vnfi+1)=0;
最后计算SFC中每个VNF在其部署的计算节点上的处理时延delay(vnfi,lwi):对
Figure FDA0002223389800000041
delay(vnfi,lwi)=c(vnfi)·tc(lwi),
综上所述,灰狼个体w的适应度值按如下公式计算:
Figure FDA0002223389800000042
5.如权利要求4所述的基于灰狼算法的虚拟网络功能部署方法,其特征在于,所述步骤(4)具体如下,
对灰狼个体w,计算转移概率tr,
计算公式如下:
Figure FDA0002223389800000043
其中,TR_MAX是转移概率上限,TR_MIN是转移概率下限,t代表当前迭代的次数,MAX_T代表最大迭代次数;
设当前灰狼个体w的位置信息Lw=[lw1,lw2,...,lwm],对
Figure FDA0002223389800000044
取随机数randr∈(0,1),
若randr<tr,从种群中随机选择另一灰狼个体w*,其位置信息
Figure FDA0002223389800000045
将灰狼个体w*位置信息中i处的值赋给当前灰狼个体w,即:
Figure FDA0002223389800000046
若randr≥tr,设全局最优灰狼为alpha狼,全局第二优灰狼为beta狼,全局第三优灰狼为delta狼,计算跟随alpha狼的权重pα,计算跟随beta狼的权重pβ,计算跟随delta狼的权重pδ,计算公式如下:
Figure FDA0002223389800000047
Figure FDA0002223389800000048
Figure FDA0002223389800000049
其中,αMIN是pα的取值下限,αMAX是pα的取值上限,其余同理,t是当前迭代次数,MAX_T是最大迭代次数;
取随机数rnd∈(0,1),若rnd≤pα,根据alpha狼调整当前灰狼个体,设alpha狼的位置信息为Lα=[lα1,lα2,...,lαm],将Lα中i处的值赋给当前灰狼个体w,即:lwi=lαi
若pα<rnd≤pα+pβ,根据beta狼调整当前灰狼个体,设beta狼的位置信息Lβ=[lβ1,lβ2,...,lβm],将Lβ中i处的值赋给当前灰狼个体w,即:lwi=lβi
若pα+pβ<rnd≤pα+pβ+pδ,根据delta狼调整当前灰狼个体,设delta狼的位置信息Lδ=[lδ1,lδ2,...,lδm],将Lδ中i处的值赋给当前灰狼个体w,即:lwi=lδi
若rnd>pα+pβ+pδ,当前灰狼个体w自行调整位置Lw中i处的值,具体做法是:Lw中i处的值lwi代表了SFC中vnfi部署在底层网络中的计算节点的id,lwi的取值范围为整个计算节点集合Nc,对
Figure FDA0002223389800000051
按如下公式计算节点k被选中的概率:
Figure FDA0002223389800000052
其中,DL(k,i)代表了vnfi部署在节点k上的局部时延,
Figure FDA0002223389800000053
是vnfi部署在每个计算节点上的局部时延的倒数加和,局部时延DL(k,i)的计算方式如下:
Figure FDA0002223389800000054
其中,delay(vnfi,k)代表vnfi部署在节点k上的处理时延,delay(vnfi-1,vnfi)表示前一个vnfi-1到当前部署在节点k上的vnfi的传输时延,求出了Nc中每个计算节点被选中的概率后,用轮盘赌的方式从Nc中选出一个计算节点并用其更新当前灰狼个体的lwi
6.如权利要求5所述的基于灰狼算法的虚拟网络功能部署方法,其特征在于,所述TR_MAX=0.4,TR_MIN=0.1。
7.如权利要求5所述的基于灰狼算法的虚拟网络功能部署方法,其特征在于,所述αMIN=βMAX=δMAX=0.3,αMAX=0.6,βMIN=0.2,δMIN=0.1,满足0.88≤pα+pβ+pδ≤0.92。
8.如权利要求1所述的基于灰狼算法的虚拟网络功能部署方法,其特征在于,更新全局最优灰狼、全局第二优灰狼、全局第三优灰狼的具体方式为:遍历灰狼种群,对每一个灰狼个体做如下判断,若灰狼个体的适应度值小于全局最优灰狼,则用灰狼个体替换掉全局最优灰狼;若灰狼个体的适应度值大于全局最优灰狼且小于全局第二优灰狼,则用灰狼个体替换掉全局第二优灰狼;若灰狼个体的适应度值大于全局最优灰狼且大于全局第二优灰狼且小于全局第三优灰狼,则用灰狼个体替换掉全局第三优灰狼。
CN201810047883.XA 2018-01-18 2018-01-18 基于灰狼算法的虚拟网络功能部署方法 Expired - Fee Related CN108429633B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810047883.XA CN108429633B (zh) 2018-01-18 2018-01-18 基于灰狼算法的虚拟网络功能部署方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810047883.XA CN108429633B (zh) 2018-01-18 2018-01-18 基于灰狼算法的虚拟网络功能部署方法

Publications (2)

Publication Number Publication Date
CN108429633A CN108429633A (zh) 2018-08-21
CN108429633B true CN108429633B (zh) 2020-04-03

Family

ID=63156024

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810047883.XA Expired - Fee Related CN108429633B (zh) 2018-01-18 2018-01-18 基于灰狼算法的虚拟网络功能部署方法

Country Status (1)

Country Link
CN (1) CN108429633B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110167138B (zh) * 2019-05-23 2021-01-01 西安电子科技大学 基于改进灰狼优化算法的无源时差定位系统优化布站方法
CN110266600B (zh) * 2019-05-29 2021-08-10 西南电子技术研究所(中国电子科技集团公司第十研究所) 带宽约束组播路由优化方法
CN110380898B (zh) * 2019-07-08 2022-11-15 紫光云技术有限公司 基于Hyperledger Fabric的多运营商边缘服务链编排策略
CN110535705B (zh) * 2019-08-30 2022-04-26 西安邮电大学 一种自适应用户时延要求的服务功能链构建方法
CN111030852B (zh) * 2019-11-29 2022-05-10 国网辽宁省电力有限公司锦州供电公司 基于丢包率优化的服务功能链部署方法
CN112087329B (zh) * 2020-08-27 2022-06-07 重庆大学 一种网络服务功能链部署方法
CN112968794B (zh) * 2021-01-28 2023-01-17 广州杰赛科技股份有限公司 网络功能链部署方法、装置、终端设备以及存储介质
CN113014302B (zh) * 2021-01-29 2022-08-30 北京邮电大学 一种面向卫星网络的网络功能服务链部署方法
CN113259469B (zh) * 2021-06-02 2022-10-14 西安邮电大学 智能制造中边缘服务器部署方法、系统及存储介质
CN113507411B (zh) * 2021-06-10 2022-10-18 中国联合网络通信集团有限公司 一种路径选择方法、装置、设备及存储介质
CN113259189B (zh) * 2021-07-15 2021-10-15 北京航空航天大学 一种基于非均匀业务的vnf部署方法、装置和电子设备
CN113708972B (zh) * 2021-08-31 2022-06-28 广东工业大学 一种服务功能链部署方法、装置、电子设备及存储介质
CN113904923B (zh) * 2021-09-27 2023-08-22 重庆电子工程职业学院 一种基于软件定义网络的服务功能链联合优化方法
CN114650225B (zh) * 2022-03-14 2023-04-18 西安电子科技大学 基于粒子群优化算法的服务功能链sfc映射方法
CN114422366B (zh) * 2022-03-28 2022-07-01 中国人民解放军战略支援部队航天工程大学 一种卫星网络sdn多控制器部署方法及系统
CN114936075B (zh) * 2022-04-01 2023-02-14 南京审计大学 一种边缘计算环境下移动审计设备计算任务的卸载方法
CN117875952B (zh) * 2024-01-12 2024-08-16 寰讯科技(深圳)有限公司 一种加密链路跨境支付方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411678A (zh) * 2016-09-08 2017-02-15 清华大学 带宽保障的虚拟网络功能部署方法
CN107067121A (zh) * 2017-06-13 2017-08-18 广东工业大学 一种基于多目标的改进灰狼优化算法
CN107395506A (zh) * 2017-09-07 2017-11-24 电子科技大学 一种传输时延优化的服务功能链部署方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102499705B1 (ko) * 2016-06-10 2023-02-14 한국전자통신연구원 네트워크 서비스 검출 방법 및 이를 위한 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411678A (zh) * 2016-09-08 2017-02-15 清华大学 带宽保障的虚拟网络功能部署方法
CN107067121A (zh) * 2017-06-13 2017-08-18 广东工业大学 一种基于多目标的改进灰狼优化算法
CN107395506A (zh) * 2017-09-07 2017-11-24 电子科技大学 一种传输时延优化的服务功能链部署方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Forecast-assisted NFV service chain deployment based on affiliation-aware vNF placement.;Quanying Sun et al.;《2016 IEEE Global Communications Conference (GLOBECOM)》;20161208;全文 *
Huanlai Xing et al..1. An integer encoding grey wolf optimizer for virtual network function placement..《Applied Soft Computing》.2019,第76卷全文. *
Optimal virtual network function placement in multi-cloud service function chaining architecture.;Bhamare D et al.;《Computer Communications》;20170401;第102卷;全文 *
Optimizing resource allocation for virtualized network functions in a cloud center using genetic algorithms.;Windhya Rankothge et al.;《IEEE Transactions on Network and Service Management 》;20170323;第14卷(第2期);全文 *
Resource-efficient virtual network function placement in operator networks.;X. Song et al.;《GLOBECOM 2017 - 2017 IEEE Global Communications Conference》;20171208;全文 *

Also Published As

Publication number Publication date
CN108429633A (zh) 2018-08-21

Similar Documents

Publication Publication Date Title
CN108429633B (zh) 基于灰狼算法的虚拟网络功能部署方法
CN108260169B (zh) 一种基于QoS保障的服务功能链动态部署方法
CN110460465B (zh) 面向移动边缘计算的服务功能链部署方法
CN114338504B (zh) 一种基于网络边缘系统的微服务部署和路由方法
CN113708972B (zh) 一种服务功能链部署方法、装置、电子设备及存储介质
Quang et al. Multi-domain non-cooperative VNF-FG embedding: A deep reinforcement learning approach
CN110505099A (zh) 一种基于迁移a-c学习的服务功能链部署方法
CN112486690B (zh) 一种适用于工业物联网的边缘计算资源分配方法
CN108667657B (zh) 一种面向sdn的基于局部特征信息的虚拟网络映射方法
CN107124303B (zh) 低传输时延的服务链优化方法
CN112887156B (zh) 一种基于深度强化学习的动态虚拟网络功能编排方法
CN109151077B (zh) 一种基于目标导向的计算卸载方法
CN111130858A (zh) 一种sd-wan场景下的动态多目标虚拟网络映射方法
CN115665258B (zh) 一种基于深度强化学习的多目标服务功能链的优先级感知部署方法
Dalgkitsis et al. Dynamic resource aware VNF placement with deep reinforcement learning for 5G networks
CN113627519A (zh) 具有压缩和延迟补偿的分布式随机梯度下降方法
CN116567651A (zh) 基于粒子群的mec任务卸载与迁移的决策方法及系统
CN113821270B (zh) 任务卸载顺序预测方法、决策方法、电子设备及存储介质
CN113868808A (zh) 一种道路网络临近检测时延优化方法、装置和系统
CN113504949A (zh) Mar客户端在边缘计算中的任务卸载与参数优化方法及系统
CN106717084B (zh) 重叠速率区分区的设备和方法
CN112073983A (zh) 基于流量预测的无线数据中心网络拓扑优化方法及系统
CN110933728A (zh) 虚拟化无线传感网络的映射方法、装置、存储介质
CN116389266A (zh) 一种基于强化学习的数字孪生网络切片的方法和装置
Wei et al. G-Routing: Graph Neural Networks-Based Flexible Online Routing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200403

Termination date: 20220118