具体实施方式
下面结合图1及具体实施例对本发明作进一步详细说明。
结合图1,本发明基于服务质量要求驱动的云计算网络资源分配方法,步骤如下:
步骤1,云计算网络中中央处理服务器收集用户终端的虚拟资源使用申请,具体为:云计算网络中用户终端申请的CPU容量均匀分布在0~30MHz之间,用户终端申请的带宽均匀分布在0~60Mbps之间,用户终端请求的存储容量均匀分布在0~30GB之间,用户终端将自己需要的CPU资源、存储资源和带宽资源发送给云计算网络中中央处理服务器。
步骤2,云计算网络中中央处理服务器收集底层网络中各节点的可用资源,具体为:云计算网络中底层网络有100~150个节点,其中有70%的节点是服务器、30%的节点是路由器,每个服务器可用的CPU容量和每个底层链接可用的带宽容量在50~100Mbps之间均匀分布,并且路由器和服务器的存储容量在50~100GB之间均匀分布,中央处理服务器收集底层网络中各节点的可用资源。图2为本发明的云计算网络中虚拟资源需求映射示意图。
步骤3,云计算网络中中央处理服务器采用量子免疫方法进行虚拟资源分配,其中,云计算网络中基于量子免疫方法的资源分配方法流程图如图3所示,包括以下步骤:
步骤3.1,初始化量子免疫方法参数,初始化种群中每个抗体的量子编码向量,具体为:
(1)初始化量子免疫方法抗体的数目Np、量子免疫方法迭代次数Ng,其中Np、Ng均为整数且Np∈[100,120]、Ng∈[300,350];
(2)令迭代次数序号gen=1,初始化虚拟链接(n,m)的业务流是否经过底层链接
虚拟链接(n,m)的业务流经过底层的链接(u,v)的流量
虚拟节点的无向带权图G
V=(N
V,E
V)和底层节点的无向带权图G
S=(N
S,E
S),其中N
V表示虚拟节点集合,E
V表示虚拟节点链接集合,N
S是底层节点集合,E
S是底层节点链接集合;
(3)初始化扩充的底层无向带权图GS'=(NS',ES')、扩充的底层节点链接集合 其中NS'表示扩充的底层节点集合且NS'=NS∪NV,nV表示底层节点n,nS表示底层节点链接s;
(4)初始化表示虚拟链接(n,m)的总业务流量b(n,m)、底层链接(u,v)的传输带宽BW(u,v)、底层节点w资源i的最大值容量C
i(w)、种群中每个抗体的量子编码向量Qxf=[qx,qf];其中向量
表示底层链接分配指示的量子编码向量,向量
表示底层链接分配流量的量子编码向量,α
i和β
i表示向量qx中的量子比特第i位,χ
i和δ
i表示向量qf中的量子比特第i位;
、
、
和
,N
L表示扩充的底层无向带权图G
S'中链接的数目。
步骤3.2,将每个抗体的量子编码向量转化为二进制向量,具体为:对量子编码向量Qxf进行观察得到二进制向量XF=[x,f],向量
中
满足公式(1):
向量
中
满足公式(2):
其中,XF表示量子免疫方法二进制编码向量,x表示底层链接分配指示的二进制编码向量,f表示底层链接分配流量的二进制编码向量。
步骤3.3,检验每个抗体编码向量是否满足底层节点的流守恒公式和底层节点最大容量限制公式,检验每个抗体编码向量是否满足虚拟流量和带宽容量限制,检验每个抗体编码向量是否满足资源分配解的可行性限制,具体步骤如下:
(1)检验每个抗体编码向量XF=[x,f]中
和
是否满足底层节点的流守恒公式(3)和底层节点最大容量限制公式(4):
其中,
表示虚拟链接(n,m)的业务流经过底层的链接(u,v)的流量,
表示虚拟链接(n,m)的业务流经过底层的链接(n,v)的流量,
表示虚拟链接(n,m)的业务流经过底层的链接(m,v)的流量,
表示虚拟链接(n,m)的业务流经过底层的链接(w,u)的流量,
表示虚拟链接(n,m)的业务流经过底层的链接(w,n)的流量,
表示虚拟链接(n,m)的业务流经过底层的链接(w,m)的流量,p表示虚拟节点,w表示底层节点,
表示虚拟节点p申请资源i的预留百分比,(n,m)表示虚拟节点n和虚拟节点m之间的链接,(u,v)表示底层节点u和底层节点v之间的链接,c
i(p)表示虚拟节点p资源i的使用量,
表示虚拟链接(n,m)的业务流经过底层链接(p,w)的指示变量,I表示明确的非功能性质集合,a表示云计算网络中CPU资源、存储资源或带宽资源;
(2)检验每个抗体编码向量XF=[x,f]中
和
是否满足公式(5)和公式(6),公式(5)表示经过底层链接(u,v)的虚拟流量、公式(6)表示不超过底层链接(u,v)的带宽容量:
其中,
表示虚拟链接(n,m)的业务流经过底层的链接(v,u)的流量,
(3)检验每个抗体编码向量XF=[x,f]中
和
是否满足公式(7)~(9),公式(7)保证每个底层节点只能选择一个虚拟节点,公式(8)保证每个底层节点的同一种资源只能分配给一个虚拟节点,公式(9)保证每个虚拟节点只能选择一个底层节点:
其中,A表示云计算网络中资源总和;
表示虚拟链接(m,n)的业务流经过底层链接(p,w)的指示变量;
(4)检验每个抗体编码向量XF=[x,f]中
和
是否满足公式(10)~(12),公式(10)和公式(12)保证对虚拟链接(n,m)业务流经过的底层链接(u,v)的指示变量
进行设置,公式(11)保证资源映射结果是一个连通图,即公式(11)对虚拟链接(n,m)业务流没有经过的链接(u,v)的指示变量
进行设置:
其中,
表示虚拟链接(n,m)的业务流经过底层链接(v,u)的指示变量,
表示虚拟链接(n,k)的业务流经过底层链接(u,v)的指示变量,
表示虚拟链接(l,m)的业务流经过底层链接(u,v)的指示变量。
步骤3.4,确定每个抗体的期望繁殖概率,根据期望繁殖概率从种群中提取父代种群和记忆库种群;采用量子旋转门操作方法得到新群体中抗体,并且合并记忆库中抗体,构成新一代种群,具体为:
(1)采用公式(13)确定每个抗体的期望繁殖概率Pv:
其中,γ表示权重因子,Av表示抗体与抗原之间的亲和度函数,采用公式(14)确定抗体与抗原之间的亲和度函数Av:
Cv表示抗体与抗体之间的亲和力函数,采用公式(15)确定Cv:
Tv,u表示抗体浓度,采用公式(16)确定抗体浓度Tv,u:
T表示一个预先设定的门限,Sv,u表示抗体v和抗体u之间的相似度,采用公式(17)确定Sv,u:
(2)采用公式(18)的量子旋转操作,得到新群体中抗体:
其中,
和
表示新抗体向量qx中的量子比特第i位,Δθ
i表示第i位量子比特的旋转角度,α
i和β
i表示抗体向量qx中的量子比特第i位;
(3)将群体中的抗体按照期望繁殖概率Pv降序进行排列,从种群中提取望繁殖概率最大的NI1个抗体作为父代种群,同时将繁殖概率最大的NIp-NI1个抗体存入记忆库种群中,确定XFb(gen);NI1表示父带种群大小,NIp-NI1表示记忆库种群大小,XFb(gen)表示第gen次迭代种群中最优抗体。
步骤3.5,重复步骤3.2~步骤3.4NIg次,输出云计算网络虚拟资源分配的最优解,即令gen←gen+1,重复步骤3.2~步骤3.4NIg次,输出XFb(gen)作为最优解,并且采用公式(19)确定云计算网络中目标函数F(XFb(gen)):
其中,NIg表示量子免疫方法的最大迭代次数。
下面结合附图对本发明做详细描述。
实施例1
本发明基于服务质量要求驱动的云计算网络资源分配方法,包括以下步骤:
步骤1,云计算网络中中央处理服务器收集用户终端的虚拟资源使用申请。
步骤2,云计算网络中中央处理服务器收集底层网络中各节点的可用资源。
步骤3,云计算网络中中央处理服务器采用量子免疫方法进行虚拟资源分配。
图3为基于量子免疫方法的资源分配方法流程:
首先,初始化量子免疫方法参数,初始化种群中每个抗体的量子编码向量,初始化N
p=110,N
g=330,令gen=1,初始化
G
V=(N
V,E
V)和G
S=(N
S,E
S),初始化G
S'=(N
S',E
S'),N
S'=N
S∪N
V,
初始化b(n,m)、BW(u,v)、C
i(w)和Qxf=[qx,qf];
然后,将每个抗体的量子编码向量转化为二进制向量,对量子编码向量Qxf进行观察得到二进制向量XF=[x,f],向量
中
满足公式(1),向量
中
满足公式(2);
其次,检验每个抗体编码向量XF=[x,f]中
和
是否满足底层节点的流守恒公式(3)和底层节点最大容量限制公式(4);检验每个抗体编码向量XF=[x,f]中
和
是否满足公式(5)和公式(6),公式(5)和公式(6)表示经过底层链接(u,v)的虚拟流量和不超过底层链接(u,v)的带宽容量,检验每个抗体编码向量XF=[x,f]中
和
是否满足公式(7)~(9),公式(7)保证每个底层节点只能选择一个虚拟节点,公式(8)保证每个底层节点的同一种资源只能分配给一个虚拟节点,公式(9)保证每个虚拟节点只能选择一个底层节点,检验每个抗体编码向量XF=[x,f]中
和
是否满足公式(10)~公式(12),公式(10)和公式(12)保证对虚拟链接(n,m)业务流经过的底层链接(u,v)的指示变量
进行设置,公式(11)保证资源映射结果是一个连通图,即公式(11)对虚拟链接(n,m)业务流没有经过的链接(u,v)的指示变量
进行设置;
再次,采用量子旋转门操作方法得到新群体中抗体,并且合并记忆库中抗体构成新一代种群;包括采用公式(13)确定Pv,公式(14)确定Av,公式(15)确定Cv,公式(16)确定Tv,u,公式(17)确定Sv,u,将群体中的抗体按照期望繁殖概率Pv降序进行排列,从种群中提取望繁殖概率最大的NI1=30个抗体作为父代种群,同时将繁殖概率最大的NIp-NI1个抗体存入记忆库种群中,确定XFb(gen),权重因子γ=0.6,Tv,u表示抗体浓度,预先设定的门限T=8,NI1=20表示父带种群大小,NIp-NI1表示记忆库种群大小,XFb(gen)表示第gen次迭代种群中最优抗体;
最后,令gen←gen+1,重复上述步骤NIg次,输出XFb(gen)作为最优解,并且采用公式(18)确定云计算网络中目标函数F(XFb(gen))。
综上所述,本发明基于服务质量要求驱动的云计算网络资源分配方法,充分挖掘了云计算网络可用的硬件和软件资源,从计算资源和网络带宽资源两个维度动态按需分配资源,为高效利用云计算网络中虚拟资源和保障用户终端服务质量要求提供技术支持。