一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于超图匹配算法的虚拟网络资源分配方法与流程

2021-11-15 18:27:00 来源:中国专利 TAG:


1.本发明属于计算机技术领域,更进一步涉及数据通信技术领域中的一种基于超图匹配算法的虚拟网络资源分配方法。本发明可应用于数据中心环境中为虚拟网络资源进行合理分配。


背景技术:

2.云计算已经被广泛用于大规模数据的实时处理,云数据中心的物理资源管理可通过虚拟化技术来屏蔽底层资源的异构性和复杂性,能够根据用户的需求为其按需地分配虚拟化资源。由于当前互联网数据中心idc(internet data center)规模的持续扩张,预计在2023年,我国的数据中心总能耗将突破2500亿千瓦时。然而,现有的虚拟网络资源分配方案大多数只关注于虚拟网络请求的接收率以及成本比,很少关注能耗这个指标;同时,现有的动态资源分配方案虽然降低了系统能耗,却是以损失虚拟资源公平性为代价。针对上述缺陷,利用超图可以表示对象之间的多维映射关系,从而可以用超图来表示虚拟网络请求向物理网络映射的关系,并采用能耗感知的两阶段映射的方法来求解。为了更好的分配用户请求任务,必须综合考虑物理网络中的计算资源与通信资源,基于超图匹配算法的虚拟网络资源分配方法就是用于解决这一问题的优化设计技术。
3.深圳先进技术研究院在其申请的专利文献“一种虚拟网络资源分配方法、系统及电子设备”(申请号:2018114303629申请公布号:cn 109412865 a)中公开了一种虚拟网络资源分配方法。该方法的具体步骤是,第一步:根据物理机上所有虚拟机的网络信息生成任务图,并采用多级图划分算法对所述任务图进行划分,得到k个互不相交的分割子集;第二步:计算各个分割子集中具有最长完成时间的关键路径,得到位于关键路径节点的虚拟机;第三步:为所述处于关键路径节点的虚拟机分配单根输入输出虚拟化的虚拟设备。该方法存在的不足之处是,采用多级图划分算法对所述任务图进行划分,会导致资源分配集中在局部,使得虚拟网络占用物理网络链路资源过大,降低虚拟网络资源的接收率。
4.mengyang he,lei zhuang等人在其发表的论文“droi:energy

efficient virtual network embedding algorithm based on dynamic regions of interest”(elsevier 2020

computer networks)中提出一种感兴趣的动态区域droi(dynamic region of interest)的虚拟资源分配方法。该方法的具体步骤是,第一步:基于场论构建物理网络权值矩阵;第二步:构建对角矩阵并计算归一化的拉普拉斯矩阵;第三步:用k均值聚类,反复启用感兴趣的区域roi(region of interest)节点和链路承载虚拟请求,减少从休眠状态转换为活动状态的节点和链路数量。使用动态分配资源的方式虽然降低了服务器系统的能耗,但是,该方法仍然存在的不足之处是,对虚拟资源进行了区域划分,无法保证虚拟资源的公平性,使得不同的资源分配方式下虚拟资源的接收率不稳定。


技术实现要素:

5.本发明的目的在于针对上述已有技术的不足,提出一种基于超图匹配算法的虚拟
网络资源分配方法,用于解决数据中心中虚拟网络资源分配不当带来的能耗过高的问题和虚拟网络接受率不稳定的问题。
6.本发明的技术思路是,用每个超点代表映射前虚拟网络中的一个虚拟节点,每条超边代表物理网络中的一台服务器,将每个超点随机映射到d条超边中,扩大了虚拟节点的映射范围,解决了虚拟网络接收率不稳定的问题,利用超图匹配算法,使得虚拟网络分配到少量的物理资源上,解决了数据中心中虚拟网络资源分配不当带来的能耗过高的问题。
7.实现本发明目的的技术方案的步骤如下:
8.步骤1,构建虚拟网络与物理网络:
9.(1a)基于图论理论,建模k个虚拟网络,1≤k≤20,用加权无向图表示第k个虚拟网络节点和链路的拓扑,1≤k≤k;
10.(1b)基于图论理论,建模一个物理网络,用加权无向图g
s
表示该物理网络节点和链路的拓扑;
11.步骤2,虚拟网络向物理网络映射:
12.(2a)随机生成一个1
×
d的集合,集合中每个元素为每个映射前超点的预映射超边,每个超点代表映射前虚拟网络中的一个虚拟节点,每条超边代表物理网络中的一台服务器,d表示虚拟网络中的超点映射到物理网络中超边的总数;
13.(2b)若集合中每一个元素的剩余cpu核数大于超点的cpu核数,则该超点映射到超边的成功概率为1,否则,概率为0;
14.(2c)选择一条未映射的虚拟链路,采用floyd算法,寻找所选虚拟链路两端两个超点所在超边之间的最短路径,将所选虚拟链路映射到该最短路径上;
15.(2d)判断是否映射完所有的虚拟链路,若是,则执行步骤3,否则,执行步骤(2c);
16.步骤3,生成独立集:
17.(3a)将虚拟网络中虚拟节点对应的超点映射到物理网络中服务器对应的超边构成初始超图;
18.(3b)将初始超图中的每条超边对应生成冲突图中的一个顶点,若超边之间有相交的超点,则在冲突图中对应的顶点之间形成一条边;
19.(3c)按照下式,计算物理网络中每台服务器对应的顶点的功耗:
20.ω(p
i
)=

(p
min
(p
max

p
min
)
×
u
i
)
21.其中,ω(p
i
)表示物理网络中第i台服务器对应的顶点p
i
的功耗,p
min
表示物理网络中所有服务器在空闲状态的平均功耗,p
max
表示物理网络中所有服务器的满载功耗,u
i
表示物理网络中第i台服务器的cpu核数利用率;
22.(3d)初始化一个空的集合,选取冲突图顶点集中功耗值最大的顶点放入该集合中,并从冲突图顶点集中删除此顶点与其相邻的顶点,以此类推,得到存入到集合中的顶点的初始独立集;
23.(3e)将初始独立集中的顶点按功耗值升序排列,选择初始独立集中未选择过的功耗值最小的顶点,初始化一个空集,将冲突图顶点集中与该顶点相邻的顶点放入该集合中,并按顶点的功耗值降序排列,得到存入到集合中的顶点的相邻集;
24.(3f)将初始独立集中所选的顶点作为claw图的中心点,在该中心点的相邻集中寻
找图;其中,表示中claw的数量,
25.(3g)判断e(s
*
)<e(s)是否成立,若是,则用s
*
替换s后执行步骤(3e),否则,执行步骤4,其中,e(s
*
)表示图中的claw替换初始独立集s中该图的中心点后的初始独立集s
*
中所有顶点的总功耗,e(s)表示初始独立集s中所有顶点的总功耗;
26.步骤4,完成虚拟网络资源分配:
27.将s
*
中的每个顶点转化成对应的服务器,完成虚拟网络资源的分配。
28.本发明与现有技术相比具有如下优点:
29.第一,由于本发明采用将虚拟网络中虚拟节点对应的超点映射到物理网络中服务器对应的超边构成初始超图,使得虚拟网络中的每个虚拟节点有多个映射选择,克服了现有技术中对虚拟网络进行一次映射使得虚拟网络占用物理网络链路资源过大,降低虚拟网络资源的接收率的问题,使得本发明提高虚拟网络的接收率。
30.第二,由于本发明采用生成独立集来获得顶点不相交的超边子集,使得子集中的超边接收更多的虚拟网络,并将虚拟网络资源分配到尽可能少的超边中,克服了现有技术中因降低功耗而导致的虚拟网络接收率低的缺点,使得本发明在保证虚拟网络接收率的同时降低了数据中心服务器的功耗。
附图说明
31.图1为本发明的流程图;
32.图2为本发明的仿真图。
具体实施方式
33.下面结合附图和实施例对本发明做进一步的详细描述。
34.参照图1,对本发明实现的具体步骤描述如下。
35.步骤1,构建虚拟网络与物理网络。
36.基于图论理论,建模k个虚拟网络,1≤k≤20,用加权无向图表示第k个虚拟网络节点和链路的拓扑,1≤k≤k。
37.将虚拟网络个数设置为20。
38.基于图论理论,建模一个物理网络,用加权无向图g
s
表示该物理网络节点和链路的拓扑。
39.步骤2,虚拟网络向物理网络映射。
40.第一步,随机生成一个1
×
d的集合,集合中每个元素为每个映射前超点的预映射超边,每个超点代表映射前虚拟网络中的一个虚拟节点,每条超边代表物理网络中的一台服务器,d表示虚拟网络中的超点映射到物理网络中超边的总数。
41.超图h=(v(h),e(h))是一般图的推广,其中v(h)是顶点集合,e(h)是边集合。每条超边e(h)是顶点的子集,若每条超边包含的顶点数相同,则称为一致超图。图是超图的特例,即每条超边包含两个顶点。
42.第二步,若集合中每一个元素的剩余cpu核数大于超点的cpu核数,则该超点映射到超边的成功概率为1,否则,概率为0。
43.第三步,选择一条未映射的虚拟链路,采用floyd算法,寻找所选虚拟链路两端两个超点所在超边之间的最短路径,将所选虚拟链路映射到该最短路径上。
44.第四步,判断是否映射完所有的虚拟链路,若是,则执行步骤3,否则,执行本步骤的第三步。
45.步骤3,生成独立集。
46.第一步,将虚拟网络中虚拟节点对应的超点映射到物理网络中服务器对应的超边构成初始超图。
47.第二步,将初始超图中的每条超边对应生成冲突图中的一个顶点,若超边之间有相交的超点,则在冲突图中对应的顶点之间形成一条边。
48.由于在初始超图的基础上直接寻找一个顶点不相交的超边子集的最大功耗值是np难的,所以将初始超图转化为冲突图,近似获得最大边不相交顶点的子集来得到虚拟资源分配结果。
49.第三步,按照下式,计算物理网络中每台服务器对应的顶点的功耗:
50.ω(p
i
)=

(p
min
(p
max

p
min
)
×
u
i
)
51.其中,ω(p
i
)表示物理网络中第i台服务器对应的顶点p
i
的功耗,p
min
表示物理网络中所有服务器在空闲状态的平均功耗,p
max
表示物理网络中所有服务器的满载功耗,u
i
表示物理网络中第i台服务器的cpu核数利用率。
52.所述物理网络中第i台服务器的cpu核数利用率是由下式得到的:
[0053][0054]
其中,∑表示求和操作,m
k
表示中虚拟节点的总数,u表示映射后虚拟网络中虚拟节点的序号,1≤u≤m
k
,表示映射后第k个虚拟网络的第u个虚拟节点,虚拟网络中的每个虚拟节点代表一个用户,表示用户的cpu核数资源需求,x
k,u,i
表示第k个虚拟网络的第u个虚拟节点映射至第i台服务器成功的概率,x
k,u,i
=1表示映射成功,否则,x
k,u,i
=0,表示物理网络中的第i台服务器,表示的剩余cpu核数资源。
[0055]
第四步,初始化一个空的集合,选取冲突图顶点集中功耗值最大的顶点放入该集合中,并从冲突图顶点集中删除此顶点与其相邻的顶点,以此类推,得到存入到集合中的顶点的初始独立集。
[0056]
第五步,将初始独立集中的顶点按功耗值升序排列,选择初始独立集中未选择过的功耗值最小的顶点,初始化一个空集,将冲突图顶点集中与该顶点相邻的顶点放入该集合中,并按顶点的功耗值降序排列,得到存入到集合中的顶点的相邻集;
[0057]
第六步,将初始独立集中所选的顶点作为claw图的中心点,在该中心点的相邻集中寻找图;其中,表示中claw的数量,
[0058]
将的初始值设置为2。
[0059]
第七步,判断e(s
*
)<e(s)是否成立,若是,则用s
*
替换s后执行本步骤的第五步,否则,执行步骤4,其中,e(s
*
)表示图中的claw替换初始独立集s中该图的中
心点后的初始独立集s
*
中所有顶点的总功耗,e(s)表示初始独立集s中所有顶点的总功耗。
[0060]
步骤4,完成虚拟网络资源分配。
[0061]
将s
*
中的每个顶点转化成对应的服务器,完成虚拟网络资源的分配。
[0062]
下面结合仿真实验对本发明的效果做进一步的说明。
[0063]
1.仿真实验条件:
[0064]
本发明的仿真实验的硬件平台为:处理器为intel(r)core(tm)i5

7200u cpu,主频为2.70ghz,内存128gb。
[0065]
本发明的仿真实验的软件平台为:windows 10操作系统和matlab r2017a。
[0066]
2.仿真内容及其结果分析:
[0067]
本发明仿真实验是采用本发明和一个现有技术(超图匹配算法)对构成的初始超图寻找独立集,获得服务器总功耗随虚拟网络数的变化图。
[0068]
在仿真实验中,采用的一个现有技术超图匹配算法是指:
[0069]
long zhang等人在“virtual resource allocation for mobile edge computing:a hypergraph matching approach”(ieee global communications conference(globecom).ieee,2019:1

6.)中提出的超图匹配算法。
[0070]
本发明仿真实验选取拥有20台服务器的物理网络,每台服务器的cpu核数均设置为100,服务器之间连接的概率为0.5,每条物理链路带宽资源大小服从[200,300]的均匀分布,每台服务器的空闲功耗设置为100,满负荷时的功耗设置为1000,服务器的基本开销占7个cpu核数。
[0071]
本发明仿真实验选取的每个虚拟网络的节点个数服从[2,5]的均匀分布,每个虚拟节点所请求的cpu核数大小服从[5,20]的均匀分布,每对虚拟节点之间存在虚拟链路的概率为0.5,每条虚拟链路的带宽请求服从[5,20]的均匀分布,虚拟网络的到达服从泊松分布。将虚拟网络中虚拟节点对应的超点映射到物理网络中服务器对应的超边构成初始超图。
[0072]
下面结合图2的仿真图对本发明的效果做进一步的描述。
[0073]
采用本发明方法与现有其他方法,分别将相同虚拟网络的映射仿真,每映射完一个虚拟网络则对应生成一个由20台服务器消耗的总功耗值,将15个虚拟网络对应的服务器总功耗值绘制成图2。图2中的横坐标表示虚拟网络的个数,纵坐标表示服务器总功耗。图2中以3种不同的折线表示采用了3种不同的方法,图2中以星号标示的折线代表采用现有技术的基于超图匹配算法的虚拟网络资源分配方法,得到的服务器总功耗随映射完的虚拟网络个数的变化趋势。图2中以加号标示的折线代表采用现有技术的装箱算法中的虚拟网络资源首次适应ff(first fit)方法,得到服务器总功耗随映射完的虚拟网络个数的变化趋势。图2中以圆圈标示的折线代表采用现有技术的装箱算法中的虚拟网络资源循环首次适应nf(next fit)方法,得到服务器总功耗随映射完的虚拟网络个数的变化趋势。
[0074]
由图2中可见,当虚拟网络的个数小于9时,以星号标示的折线略高于其他折线,当虚拟网络的个数大于9时,以星号标识的折线明显低于其他折线,表明本发明方法的服务器总功耗要低于其他现有方法,故本发明方法相比于其他现有技术的方法可以有效降低服务器的总功耗。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献