一种网络流量感知的虚拟集群放置方法

文档序号:9790817阅读:389来源:国知局
一种网络流量感知的虚拟集群放置方法
【技术领域】
[0001 ]本发明属于虚拟化技术领域,设及到数据中屯、网络结构中的虚拟机放置方法,具 体设及一种网络流量感知的虚拟集群放置方法。
【背景技术】
[0002] 在数据中屯、网络中实施虚拟集群回滚往往引起较高的网络流量开销。具体而言, 虚拟集群回滚需要将多个虚拟机快照文件从存储端读取到物理服务器端,运意味着,快照 文件数据的传输经由=层交换机网络,每层交换机都对快照文件数据往下一级设备(交换 机或物理机)进行转发,引入大量的网络流量。通过组播技术来对虚拟集群中相同页面进行 传输,可W有效的减少发送端的数据量。然而,由于组播技术需要将数据从交换机的发送口 传输多份到接受方的交换机,因此其并不能优化网络流量。相比而言,单播技术可W通过将 页面传输到一台物理机上,避免了页面的重复传输。虚拟机的放置机制,即待回滚的虚拟机 应该在哪台物理机上启动执行,决定了页面应该发送到哪台物理机上,从而影响了页面应 该W组播或是单播的方式发送。因此,合理的虚拟机放置机制,可W有效的优化网络流量开 销。我们W图1为例进行分析。
[0003] 图1显示了典型的=层数据中屯、网络拓扑,其管理12台物理机,数字标示每台物理 机的容量(例如主机2可W容納2台虚拟机)。现假设有4台虚拟机需要回滚,其数据分别为: 虚拟机1 = {A,B,C},虚拟机2={A,B,D},虚拟机3={C,D,E},虚拟机4={A,C,E}。考虑下面 几种放置机制:
[0004] (1)虚拟机1和虚拟机2放于主机2,虚拟机3放于主机4,虚拟机4放于主机8。在该放 置下,主机2接收页面集合为{A,B,C,D};主机4接收{C,D,F};主机8接收{A,C,E}。因此物理 机层接收的流量为4+3巧=10。在接入交换机层,接入交换机1接收主机2和主机4的并集,为 {A,B,C,D,F};接入交换机2接收主机8的集合。因此接入交换机层的流量为5巧=8。在汇聚 交换机层,汇聚交换机1接收接入交换机1和接入交换机2的集合,流量为6。因此整个网络的 流量总和为10+8+6 = 24。
[000引 (2)虚拟机1放于主机4,虚拟机2和虚拟机4放于主机12,虚拟机3放于主机8。该放 置下流量总和为31。
[0006] (3)虚拟机1、虚拟机2和虚拟机3放于主机6,虚拟机4放于主机8。流量总和为20。
[0007] 运表明,寻找一个合理的放置机制,可W有效的减小网络流量开销。
[0008] 现有机制多通过贪屯、算法、负载均衡放置方法、甚至随机放置方法来放置虚拟机。 贪屯、算法往往优先选择容量最大的物理机放置虚拟机,然后选择容量次大的物理机放置剩 余的虚拟机,直到所有的虚拟机放置完毕。负载均衡放置算法往往在物理机上放置相同数 目的虚拟机,均衡物理机资源使用。随机放置则随机选择物理机,然后随机选择虚拟机放置 到该物理机中,直到所有的虚拟机放置完毕。上述=种放置机制不能很好的解决数据中屯、 网络环境下集群回滚放置问题。
[0009] 本发明公开了一种网络流量感知的虚拟集群放置机制,可在虚拟集群回滚时寻找 一个较好的放置策略,为减小网络流量提供解决方法。

【发明内容】

[0010] 本发明的主要目的在于提出一种网络流量感知的虚拟集群放置方法。本发明提出 二层放置方法,第一层利用动态规划寻找最优的物理机,第二层利用最小k割对虚拟机分 害d,并将分割后的子集合映射到物理机。该方法为近似最优解,可W有效的减小回滚过程中 引入的网络流量。
[0011] 本发明的技术方案为:
[0012] -种网络流量感知的虚拟集群放置方法,其步骤为:
[0013] 1)计算数据中屯、中每个接入交换机和汇聚交换机的权重;其中,接入交换机权重 为连接该接入交换机的物理机容量总和,汇聚交换机权重为连接该汇聚交换机的物理机容 量总和;
[0014] 2)根据要放置的虚拟机数量m,从数据中屯、选择满足容量需求且权重最大的若干 接入交换机;
[001引3)计算与选出的接入交换机连接的物理机Hj的权重WHj = Cj*WACk;其中,物理机Hj 的容量为Cj ,WACk为接入交换机层的第k个接入交换机ACk的权重,物理机田与接入交换机ACk 连接;
[0016] 4)依据物理机容量及其权重,W及所需容量m,选出总容量大于等于m且权重最大 的k个物理机;
[0017 ] 5)将m个虚拟机分为k个集合,并且每个集合对应与其容量相同的一台物理机。
[0018] 进一步的,将m个虚拟机分为k个集合,并且每个集合对应与其容量相同的一台物 理机的方法为:
[0019] 21)根据虚拟机之间的相似性构建一图G;其中,图G中的顶点Vi为虚拟机VMi,如果 两台虚拟机VMi、VMj之间存在相同数据,则Vi与Vj存在边且边权重Wi, j为两台虚拟机之间相 同数据的大小;
[0020] 22)对图G中的任意两个顶点求解最小割;其中,最小割为若干条边的集合;
[0021] 23)将得到的最小割依据权重排序,得到最小割集合;其中,最小割的权重为其包 含的边权重总和;
[0022] 24)从最小割集合中寻找一组最小割权重最小的最小割,其将图G分为两个子图Gl 和G2,其中Gl的顶点数目等于第i个物理机容量的大小;即Gl代表的一组虚拟机为第i个集 合,放置在第i台物理机上;
[0023] 25)从图G中移除子图Gl;并且从最小割集合中移除步骤23)中寻找出的权重最小 的最小割;
[0024] 26)重复步骤24)、25),直到得到k个集合。
[002引进一步的,接入交换机ACk的权重= 汇聚交换机AGk的权重 WAGk =器=冷打2,证,每台物理机Hj的权重WHj: WHj = Cj*WACk;其中,物理机町的容量为 Cj,ACk为接入交换机层的第k个交换机,AGk为汇聚交换机层的第k个交换机,n a,i,k表示物 理机出与第a层的第k个交换机的连接关系,n为数据中屯、的物理机总数。
[0026] 进一步的,利用动态规划求解背包问题选出k个物理机。
[0027] 进一步的,采用贪屯、式算法从数据中屯、选择满足容量需求且权重最大的若干接入 交换机。
[0028] 与现有技术相比,本发明的积极效果为:
[0029] 本发明公开了一种网络流量感知的虚拟集群放置方法,可在虚拟集群回滚时寻找 一个较好的放置策略,为减小网络流量提供解决方法。与已公开的方法相比,具有如下优 点:提出二层放置方法,第一层利用动态规划寻找最优的物理机,第二层利用最小k割对虚 拟机分割,并将分割后的子集合映射到物理机。该算法为近似最优解,可W有效的减小回滚 过程中引入的网络流量。
【附图说明】
[0030] 图1为S层数据中屯、网络拓扑图;
[0031 ]图2为本发明的方法流程图。
【具体实施方式】
[0032] 为使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本 发明做进一步说明。
[0033] 本发明公开了一种网络流量感知的虚拟集群放置方法,其具体处理流程如图2所 示。本发明与已公开的方法相比,具有如下优点:提出二层放置算法,第一层利用动态规划 寻找最优的物理机,第二层利用最小k割对虚拟机分割,并将分割后的子集合映射到物理 机。该算法为近似最优解,可W有效的减小回滚过程中引入的网络流量。
[0034] 1.问题定义
[003引放置问题定义如下:现有m台虚拟机,n台物理机,其中物理机田的容量为Cj,虚拟机 Vi的开销为VCi,Vi的数据用集合Si来描述。n为S层网络拓扑结构,ACk为接入交换机层的 第k个交换机,AGk为汇聚交换机层的第k个交换机。令e标识交换机与其上层交换机的连接 关系,如若AC谱接到AGk,则ACj EAGk。n a,i,k定义物理机出与第a层的第k个交换机的连接 关系,其中接入交换机为第1层(即3=1),汇聚交换机为第2层(即a = 2)。n a, i,k值为1表示 物理机出和相应的交换机之间存在连接关系,为0则表明二者无连接关系。显然,如果物理 机出eACk,则 n 1,i,k= 1;如果出eAGk,则 n 2,i,k= 1。
[0036]我们将放置用m*n矩阵M来描述,Mi,j值为巧示Vi放置于值为0贝懐示二者无 放置关系。M需满足两个限制条件:1)所有的m个虚拟机被放置到物理机上,2)放于物理机田 上的虚拟机开销不得超过其容量Cj。
0) 曲
[0039] 下面来计算网络流量开销。首先,在物理机层,放于物理机田的流量为接收到的虚 拟机快照文件数据并集,用时,J来定义该流量,则其表达为:
[0040] Zw '吉Lf.;々武棘i 《別
[0041]在接入交换机层,ACk通过单播或者组播的方式分发数据包,因此其接收到的
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1