CN103973780B - 一种云视频的资源分配和开销优化方法 - Google Patents
一种云视频的资源分配和开销优化方法 Download PDFInfo
- Publication number
- CN103973780B CN103973780B CN201410171121.2A CN201410171121A CN103973780B CN 103973780 B CN103973780 B CN 103973780B CN 201410171121 A CN201410171121 A CN 201410171121A CN 103973780 B CN103973780 B CN 103973780B
- Authority
- CN
- China
- Prior art keywords
- cloud data
- data center
- bandwidth
- ijk
- overhead
- 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.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Coloring Foods And Improving Nutritive Qualities (AREA)
Abstract
本发明公开了一种云视频的资源分配和开销优化方法,包括建立用于描述频道分布、用户带宽分配、总运营成本以及服务质量(QoS)之间关系的数学模型;证明求解该模型是NP‑hard难的;通过引进罚函数,将通过频道复制和带宽分配使得开销最小的问题等价转化为通过频道复制和带宽分配使得收益最大化的问题;提出一种云数据中心中资源分配和开销优化算法——DREAM,来解决云平台带宽的预订与分配问题以及确定云数据中心频道的副本布局;在资源分配和开销优化算法中集成局部性原理,提出DREAM‑L算法。与现有技术相比,本方法将使得云系统能够以低廉的价格为视频点播服务提供令人满意的观影质量、访问局部性和数据可用性。
Description
技术领域
本发明涉及云视频数据通信技术,更具体地,涉及一种云视频的资源分配和开销优化方法。
背景技术
随着云计算与云存储的流行和推广,很多视频服务提供商开始把视频数据和应用服务迁移到云平台上来。为使云系统能够廉价的为视频点播服务提供令人满意的观影质量、访问局部性和数据可用等特性。
云平台上通常有两种资源优化调度方法:一种方法以云服务器为调度粒度,另一种方法以视频频道为调度粒度。前者注重调整云服务器或虚拟机(VM)的位置与其所拥有资源的数量,而后者则注重动态的管理视频频道与从这些频道出发的视频流。基于视频频道的方法可以更灵活地在云平台上管理云数据中心的视频频道(相对于基于云服务器的调度算法),但目前这种方法缺乏一种合理的资源调度策略来提高其数据可用性和局部访问性。
发明内容
针对现有技术的以上缺陷,本发明提出一种以视频频道为调度粒度的云视频的资源分配和开销优化方法,其目的在于提高数据可用性和访问局部性并优化价格,由此解决云平台中视频点播服务带宽分配以及视频的副本放置等问题,能够廉价地满足视频点播服务中的服务等级协议(Service Level Agreement)。
为实现上述目的,本发明采用的技术方案为:基于视频频道的云资源调度和开销优化方法,包括建立用于描述频道分布、用户带宽分配、总开销以及服务质量(QoS)之间关系的数学模型;证明求解该模型是NP-hard难的;通过引进罚函数,将通过频道复制和带宽分配使得开销最小的问题等价转化为通过频道复制和带宽分配使得收益最大化的问题;提出一种云数据中心中资源分配和开销优化算法——DREAM,以解决云平台带宽的预订与分配问题以及确定云数据中心频道的副本布局;在资源分配和开销优化算法中使用并集成已有的局部性原理,提出DREAM-L算法。
具体包括如下步骤(各个符号定义见表1):
(1)建立数学模型:
定义Cδt为下一时段的总操作开销,得到等式(1):
公式右侧第一项表示云数据中心向用户组传输数据时所花费的开销,Xijk*δt表示δt时间内云数据中心传输的总数据量;等式右侧第二项表示在云平台上存储视频数据的开销;第三项表示频道副本的迁移开销。
令Cij=cij*δt,Ki=ki*δt,我们得到等式(2),如下:
其中,如果在本次优化算法执行前频道Vk的副本已经在云数据中心Di中存储,则Y′ik=1,否则Y′ik=0。
由此,将实际问题转化为数学模型:找出矩阵X中的值和矩阵Y的值,同时满足以下约束条件,使得等式(2)中的目标函数值最小:
如果则Yik=1,i=1,...,M且k=1,...,W……(3)
Xijk≥0,i=1,...,M,j=1,...N,k=1,...,W……(6)
Yik∈{0,1},i=1,...,M,k=1,...,W……(7)
(2)证明等式(2)在约束条件(3)~(9)下所描述的问题是NP-hard难问题:首先我们进行以下3个假设:(a)用户到频道之间没有任何通道,即Xijk=0;(b)任意两个数据中心之间的通信距离为0,所以副本开销可以被忽略;(c)任意副本在每个频道中都有足够的可用性。基于以上假设,等式4中除了第二项以及约束条件(5)、(6)和(8)都可以移除,即原问题简化为以下问题:再加上约束条件(7)和(9),以及
显然,这个子问题是广义分配问题的一个最小化版本,即Min GAP问题,这个问题是NP-hard难的。由子问题可以导出更一般的问题,我们可以推断我们的最小化问题是NP-hard难问题。
(3)引进两个罚函数,将通过频道复制和带宽分配使得开销最小的问题等价转化为通过频道复制和带宽分配使得收益最大化的问题:
为了移除约束条件(8)和(9)引进两个罚函数。当下载带宽或者可用性需求不能被满足时,等式(2)将增加与带宽丢失和可用性需求缺失相关的函数项。对约束条件(8)定义罚函数:
当否则对约束条件(9)定义罚函数:
当否则于是由等式(2)拓展得到了一个新的等式:
等式(10)求最小值的问题可以等价的转化为求最大值的问题,即通过频道复制和带宽分配使得开销最小得问题可以等价的转化为通过频道复制和带宽分配使得收益最大化的问题。从等式(10)可以看出,满足一定的带宽或可用性需求时,罚函数的值会有所减少,而操作开销会有所增加,通常,通过调整罚函数因子使得罚函数的减少值比操作开销的增加值大。定义资源分配的虚拟收益为罚函数的减少值和操作开销的增加值之间的差值。我们希望资源分配的虚拟收益最大,因此,等价的最大值问题为:
并满足约束条件(3)~(7),以及:
当时,否则
当时,否则
表达式(11)第一项表示为确保Vk的可用性而获得的收益,第二项表示维护用户组Uj收看频道Vk的观影质量而带来的收益。
(4)构建资源分配和开销优化算法——DREAM:
DREAM用于求解等式(11)在约束条件(3)~(7)下所描述的问题,DREAM决定了频道副本的放置以及带宽的分配方案。算法有三个输入:
①:N*W矩阵Q,表示N个用户组对W个频道的带宽需求;
②:W维向量表示所有频道可用性需求的阈值;
③:W维向量Y'i(Y'i1,Y'i2,...Y'iw),当云数据中心Di在本次资源分配和开销优化算法运行前已经存储了频道Vk时,Y'ik=1,否则Y'ik=0。
为了描述资源分配和开销优化算法,我们定义了三个额外的参数:
①:资源分配开销矩阵(rc),它与云数据中心Di、用户组Uj以及频道Vk有关,定义如下:
rci0k=(Ki*vk+rik*vk*(1-Y′ik))*(1-Yik)……(12)
rcijk=Cij*xijk+rci0k……(13)
其中xijk=min(dQjk,eBi),dQjk表示用户组Uj对频道Vk的剩余带宽需求,eBi表示云数据中心Di的剩余带宽数,rci0k表示Vk的副本在云数据中心Di的存储开销,rcijk表示云数据中心Di为用户组Uj从频道Vk提供xijk带宽下载数据的总开销,其中Cij*xijk为传输开销;
②:资源分配收益矩阵(rg),定义如下:
其中
rgijk=(P1-Cij)*xijk+rgi0k……(15)
rgi0k表示当云数据中心Di复制频道Vk时的收益,表明频道Vk在云数据中心中有着足够的副本数,不需要进行额外的频道复制,因此rgi0k≤0;令P2*yik比Ki和rik的总和高,即当频道Vk需要达到更多的可用性时,则rgi0k>0;rgijk表示把数量为xijk的带宽分配给用户的总收益,(P1-Cij)*xijk表示分配带宽的收益,且令P1>Cij;
③:成本效益矩阵(ce),定义如下:
ceijk在全局上决定着频道复制以及带宽分配。
在进行带宽决策时,DERAM会考虑到资源分配在全局上可能带来的收益和开销。由(13)、(15)和(16)式得到的矩阵ce将会在每次资源分配后重新计算,直到ce中所有元素都变成非正数,此时也意味着所有的需求都得到满足或者系统所有的资源都已分配完毕。
(5)集成局部性意识,构建DREAM-L算法:
为了有效的减少用户和云数据中心的延迟和过境交通,我们将局部性意识融入进资源分配和开销优化算法中,即资源分配和开销优化算法尽可能让用户从本地云数据中心中获取带宽。我们用一个抽象的名词“区域”来表示用户组的局部性(Locality),定义:
其中aBj是用户组从他所在区域的云数据中心获取的带宽,cBj是该区域中所有云数据中心的带宽总和,rBj是用户组Uj获取到的总带宽数。
为了改善局部性,需要在DREAM中做出一些修改。首先,定义云数据中心Di到用户组Uj间的虚拟通信距离,用浮点函数vcij表示:
其中i=1,...,M,j=1,...,N,P3表示局部性罚函数,是一个正实数。然后,令VCij=vcij*δt,并用它替换掉资源分配和开销优化算法中的Cij。从公式(15)的定义来看,DREAM会倾向于给用户分配和他通信较近的云数据中心的带宽,我们把这种融合了局部性意识的资源分配和开销优化算法称之为DREAM-L算法。
总体而言,与现有技术相比,本发明所构思的以上技术方案可以为视频点播系统带来的有益效果,主要包括以下几个方面:
1、通过资源分配方案和优化算法,提供更好的数据可用性;
2、集成局部性意识,可以更多地从本地数据中心为用户分配带宽,因而提高带宽利用效率;
3、通过对用户的带宽分配进行优化,整体上降低了视频点播系统在云数据中心的运营成本。
4、通过模拟实验对以上方法进行了评估,结果表明:在云平台中使用DREAM可为视频点播服务节省大约9%~50%的费用。
附图说明
图1是云视频的资源分配与开销优化方法的流程图;
图2为本发明资源分配与开销优化方法中资源分配与开销优化算法流程图;
图3为本发明资源分配与开销优化算法中初始化成本效益矩阵流程图;
图4为本发明资源分配与开销优化算法中求解优化解决方案流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
首先对本发明进行系统架构和符号定义。
表一符号说明表
不失一般性,假定某云平台包括M个云数据中心,定义Di代表第i个云数据中心,定义Si为第i个云数据中心的存储空间大小,定义Bi为第i个云数据中心的带宽数目,这些云数据中心分布在不同的地区,它们之间通过网络(比如广域网)来通信。为了开发和利用访问局部性,我们根据网络状态或地理位置将用户进行分组。假设有N个用户组,定义Ni代表第i个用户组。定义一个正浮点函数cij代表用户组Nj到云数据中心Di之间的通信链路的通信距离。通信距离由云数据中心和用户组的位置决定,可以用两个地区之间的数据传输价格或者网络链路的租用成本等来表示。一般,一个云服务提供商租用或拥有链接其云数据中心的专线,所以在以下的模型中,我们认为云服务提供商的内部数据网络和用户连接到云服务器的外部网络是独立的。假设有W个频道,每一个频道Vi的数据量大小为vk,k=1,...,W,我们的方法将以自适应的方式分配它在各个云数据中心的副本。定义ki*vk作为把Vk存储在云数据中心Di中的开销(ki是影响因子,由电力开销、设备价格等决定)。通常,把一个频道从一个云数据中心传输到另一个云数据中心的开销与这个频道的大小有关,用rik*vk代表这种开销,其中,rik表示云数据中心Di到拥有该频道副本最近的云数据中心的距离。如果用户拥有足够的带宽,我们认为用户拥有较好的观影质量。定义Qjk为用户组Uj在下一时段δt收看频道Vk所需预订的总带宽。根据需求预测技术,我们可以得到Qjk的数值(j=1,...,N,k=1,...,W),由此构成N*W矩阵Q。然后定义M*(N*W)矩阵X表示预订带宽分布状况,其中xijk(i=1,...,M,j=1,...,N,k=1,...,W)是一个实数,代表着在下一时段δt内云数据中心Di为用户Uj从频道Vk下载数据所分配的带宽。为了保证下一时间段的观影质量,我们必须确保定义Yik,i=1,...,N,k=1,...,W,如云数据中心Di储存有频道Vk的副本,则Yik=1,否则Yik=0,Yi'k为Yik在运算过程中的临时变量。定义M*W副本矩阵Y,其中Yik∈{0,1}。
然后定义视频数据的可用性。
我们采用以下的定义来表示视频的可用性:
其中Fi∈[0,1],代表一个视频副本在云数据中心不可用的概率。假设不同的视频有不同可用性需求(availability requirement),因此为它们设置了不同的阈值,定义频道Vk的可用阈值。定义confi=-log(Fi)和得到一个确保频道可用性的等价公式:
其中conf代表一个云数据中心的数据可靠性,它由硬件的可靠性和容错方案决定。所有的定义了W维向量Vt。
下面结合附图对本发明作更进一步的说明。
如图1所示为本发明提供的云视频的资源分配和开销优化方法的基本实现流程,简单来说包括以下步骤:
1)建立总开销目标函数,将实际问题转化为数学模型;
2)证明了等式(2)在约束条件(3)~(9)下所描述的问题是NP-hard难问题;
3)引进罚函数,将通过频道复制和带宽分配使得开销最小的问题等价转化为通过频道复制和带宽分配使得收益最大化的问题;
4)提出资源分配和开销优化算法——DREAM以解决频道副本的放置以及带宽分配问题;
该方法的具体实现过程如下:
首先建立数学模型:
定义Cδt作为下一时段的总操作开销,即问题转化为求Cδt的最小值。我们得到等式(1):
等式右侧第一项表示云数据中心向用户组传输数据时所花费的开销,Xijk*δt表示δt时间内云数据中心传输的总数据量;等式右侧第二项表示在云平台上存储视频数据的开销;第三项表示频道副本的迁移开销。令Cij=cij*δt,Ki=ki*δt,我们得到等式(2),如下:
其中,如果在本次优化算法执行前频道Vk的副本已经在云数据中心Di中存储,则Y′ik=1,否则Y′ik=0。
由此,将实际问题转化为数学模型:找出矩阵X中的值和矩阵Y的值,同时满足以下约束条件,使得等式(2)中的目标函数值最小:
如果则Yik=1,i=1,...,M且k=1,...,W……(3)
Xijk≥0,i=1,...,M,j=1,...N,k=1,...,W……(6)
Yik∈{0,1},i=1,...,M,k=1,...,W……(7)
我们证明了等式(2)在约束条件(3)~(9)下所描述的问题是NP-hard难问题。
为了移除约束条件(8)和(9)引进两个罚函数。当下载带宽或者可用性需求不能被满足时,等式(2)将增加与带宽丢失和可用性需求缺失相关的函数项。对约束条件(8)定义罚函数:
当否则
对约束条件(9)定义罚函数:
当否则
于是由等式(2)拓展得到了一个新的等式:
等式(10)求最小值的问题可以等价的转化为求最大值的问题,即通过频道复制和带宽分配使得开销最小的问题可以等价的转化为通过频道复制和带宽分配使得收益最大化的问题。从等式(10)可以看出,满足一定的带宽或可用性需求时,罚函数的值会有所减少,而操作开销会有所增加,通常,通过调整罚函数因子使得罚函数的减少值比操作开销的增加值大。定义资源分配的虚拟收益为罚函数的减少值和操作开销的增加值之间的差值。我们希望资源分配的虚拟收益最大,因此,等价的最大值问题为:
并满足约束条件(3)~(7),以及:
当时,否则
当时,否则
表达式(11)第一项表示为确保Vk的可用性而获得的收益,第二项表示维护用户组Uj收看频道Vk的观影质量而带来的收益。
构建资源分配和开销优化算法——DREAM,如下:
这里,我们提出了一种资源分配和开销优化算法——DREAM,用于求解等式(11)在约束条件(3)~(7)下所描述的问题。DREAM决定了频道副本的放置以及带宽的分配方案。算法有三个输入:
①:N*W矩阵Q,表示N个用户组对W个频道的带宽需求;
②:W维向量表示所有频道可用性需求的阈值;
③:W维向量Y'i(Y'i1,Y'i2,...Y'iw),当云数据中心Di在本次资源分配和开销优化算法运行前已经存储了频道Vk时,Y'ik=1,否则Y'ik=0。
为了描述资源分配和开销优化算法,我们定义了三个额外的参数:
①:资源分配开销矩阵(rc),它与云数据中心Di、用户组Uj以及频道Vk有关,定义如下:
rci0k=(Ki*vk+rik*vk*(1-Y′ik))*(1-Yik)……(12)
rcijk=Cij*xijk+rci0k……(13)
其中xijk=min(dQjk,eBi),dQjk表示用户组Uj对频道Vk的剩余带宽需求,eBi表示云数据中心Di的剩余带宽数,rci0k表示Vk的副本在云数据中心Di的存储开销,rcijk表示云数据中心Di为用户组Uj从频道Vk提供xijk带宽下载数据的总开销,其中Cij*xijk为传输开销;
②:资源分配收益矩阵(rg),定义如下:
其中
rgijk=(P1-Cij)*xijk+rgi0k……(15)
rgi0k表示当云数据中心Di复制频道Vk时的收益,表明频道Vk在云数据中心中有着足够的副本数,不需要进行额外的频道复制,因此rgi0k≤0;令P2*yik比Ki和rik的总和高,即当频道Vk需要达到更多的可用性时,则rgi0k>0;rgijk表示把数量为xijk的带宽分配给用户的总收益,(P1-Cij)*xijk表示分配带宽的收益,且令P1>Cij;
③:成本效益矩阵(ce),定义如下:
ceijk在全局上决定着频道复制以及带宽分配。
在进行带宽决策时,DERAM会考虑到资源分配在全局上可能带来的收益和开销。由(13)、(15)和(16)式得到的矩阵ce将会在每次资源分配后重新计算,直到ce中所有元素都变成非正数,此时也意味着所有的需求都得到满足或者系统所有的资源都已分配完毕。
DERAM算法及其实现过程如图2所示:
(1)云数据中心Di(i=1,...,M)初始化本地变量,包括以下子步骤:
(1-1)分别初始化矩阵X,Y,ce的第i行为0,表示云数据中心Di没有存储任何频道的副本也没有进行带宽分配;
(1-2)初始化可用存储空间eSi为Si,初始化可用带宽数目eBi为Bi,其中Si和Bi表示云数据中心Di的存储容量和带宽数目的上限,详见表一;
(1-3)初始化矩阵dQ和dVt为Q和Vt,其中dQ和dVt表示所有剩余带宽和可用性需求,详见表一;
(1-4)根据公式(12)第二项,定义函数Compute_mc计算复制一个频道到云数据中心的迁移开销(mcik),得到矩阵mc;
(1-5)计算每一个ceijk,i=1,...,M,j=1,...,N,k=1,...,W,初始化矩阵ce,方法如下:
(a)根据公式(12)和(14),定义函数Compute_gc在给定的云数据中心Di0下计算W维向量rci0和rgi0;
(b)根据式(13)和(15),初始化(N*W)矩阵rci和rgi,DREAM使每一个收益都最大化来尽量达到服务质量需求;如图3所示,为本发明资源分配与开销优化算法中初始化成本效益矩阵流程图;
(c)用rgi与rci中所有对应位置的元素相除得到开销效益矩阵cei;
(1-6)本云数据中心Di通过一个集体通信操作all-reduce-max(send_msg,recv_msg)与其他所有云数据中心一起计算出全局最大开销效益cemax,其中send_msg和recv_msg分别代表发送缓冲区和接收缓冲区,它们都有六个参数(cemax,i,j,k,xijk,f),其中cemax是最大开销收益,i,j,k是与cemax相关的云数据中心、用户组和频道的索引;为了使每一个云数据中心Di都参与all-reduce-max过程,Di要确定自己本地的最大开销效益cemax,分配的带宽数目xijk和f标志;其中当为了使Di达到cemax而使得Vk必须被复制时f=1,否则f=0;在初始化阶段如果cemax>0,则Vk必须被复制,亦即f=1;
优选的,计算全局最大开销效益cemax步骤如下:
(a2)将(cemax,i,j,k,xijk,f)放入send_msg;
(b2)每个数据中心通过一个集体通信操作与其他所有云数据中心一起计算出全局最大开销效益cemax的初始值,具体为:
all-reduce-max(send_msg,recv_msg);
(c2)recv_msg得到一组(cemax,i,j,k,xijk,f)。
(2)循环迭代直到所有cemax≤0:如图4所示,为本发明资源分配与开销优化算法中求解优化解决方案流程图。
(2-1)判断若cemax>0,则执行(2-2),否则结束;
(2-2)当云数据中心Di达到最大全局开销效益时,则执行步骤(2-3),否则只更新本地数据来跟踪其他云数据中心分配带宽和存储空间带来的影响,执行(2-4);
(2-3)当f=1,执行Yik=1,eSi=eSi-vk,然后进入步骤(2-4),否则直接进入步骤(2-4);
(2-4)当xijk≠0,执行Xijk=xijk,dQjk=dQjk-xijk,eBi=eBi-xijk,然后进入步骤(2-5),否则直接进入步骤(2-5);
(2-5)通过调整后,重新执行(1-4)到(1-5)得到新的(cei,xi),然后再次执行(1-6)得到新的(cemax,i,j,k,xijk,f);
(2-6)返回(2-1)重新迭代。
(3)为每个云数据中心中配置一个大小为的带宽池,其中,0<e<10%(如5%),代表带宽池系数。每个云数据中心的带宽池都可以提供给任意用户组来下载任意频道,如果一个用户组用完了它的预订带宽,那么它的请求将被转发到离它最近的拥有所需频道的云数据中心上,并使用这个云数据中心的带宽池。
优选地,为了有效的减少用户和云数据中心的延迟和过境交通,本发明将局部性意识融入进资源分配和开销优化算法中,即资源分配和开销优化算法尽可能让用户从本地云数据中心中获取带宽。我们用一个抽象的名词“区域”来表示用户组的局部性(Locality),定义:
其中aBj是用户组从他所在区域的云数据中心获取的带宽,cBj是该区域中所有云数据中心的带宽总和,rBj是用户组Uj获取到的总带宽数。
为了改善局部性在DREAM中做出一些修改:首先,定义云数据中心Di到用户组Uj间的虚拟通信距离,用浮点函数vcij表示:
其中i=1,...,M,j=1,...,N,P3表示局部性罚函数,是一个正实数;然后,令VCij=vcij*δt,并用它替换掉资源分配和开销优化算法中的Cij。从公式(15)的定义来看,DREAM会倾向于给用户分配和他通信较近的云数据中心的带宽,我们把这种融合了局部性意识的资源分配和开销优化算法称之为DREAM-L算法。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种云视频的资源分配与开销优化方法,其特征在于,包括如下步骤:
(1)建立总开销的目标函数:
<mrow>
<mi>C</mi>
<mi>&delta;</mi>
<mi>t</mi>
<mo>=</mo>
<mi>min</mi>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>c</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>X</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>*</mo>
<mi>&delta;</mi>
<mi>t</mi>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>k</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<mo>*</mo>
<mi>&delta;</mi>
<mi>t</mi>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
<msub>
<msup>
<mi>andY</mi>
<mo>&prime;</mo>
</msup>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>1</mn>
<mo>)</mo>
</mrow>
</mrow>
其中:i表示云数据中心的序号,M表示云数据中心的数量,i=1:Yik=1表示仅当条件Yik=1满足的情况下,执行i从1到M的求和操作,i=1:Yik=1andYi′k=0表示仅当Yik=1且Yi′k=0这两个条件都满足的情况下,执行i从1到M的求和操作;Cδt定义为下一时段的总操作开销,右侧第一项表示云数据中心向用户组传输数据时所花费的开销,Xijk*δt表示δt时间内云数据中心传输的总数据量;等式右侧第二项表示在云平台上存储视频数据的开销;第三项表示频道副本的迁移开销;
令Cij=cij*δt,Ki=ki*δt,则总开销最小值如下式(2)所示:
<mrow>
<mi>min</mi>
<mi>C</mi>
<mi>&delta;</mi>
<mi>t</mi>
<mo>=</mo>
<mi>min</mi>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>C</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>X</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>K</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
<msub>
<msup>
<mi>andY</mi>
<mo>&prime;</mo>
</msup>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>2</mn>
<mo>)</mo>
</mrow>
</mrow>
其中,若当最近一次优化算法执行后,频道Vk的副本已经在云数据中心Di中存储,则Y′ik=1,否则Y′ik=0;
(2)将求解总开销最小值问题等效为找出矩阵X中的值和矩阵Y的值,同时满足以下约束条件,使得等式(2)中的目标函数值最小:
如果则Yik=1,i=1,...,M且k=1,...,W……(3)
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>X</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo><</mo>
<msub>
<mi>B</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>M</mi>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>4</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo><</mo>
<msub>
<mi>S</mi>
<mi>i</mi>
</msub>
<mo>,</mo>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>M</mi>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
Xijk≥0,i=1,...,M,j=1,...N,k=1,...,W……(6)
Yik∈{0,1},i=1,...,M,k=1,...,W……(7)
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<msub>
<mi>X</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>&GreaterEqual;</mo>
<msub>
<mi>Q</mi>
<mrow>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>,</mo>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>N</mi>
<mo>,</mo>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>W</mi>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>8</mn>
<mo>)</mo>
</mrow>
</mrow>
<mrow>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>conf</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>&GreaterEqual;</mo>
<msubsup>
<mi>V</mi>
<mi>k</mi>
<mi>t</mi>
</msubsup>
<mo>,</mo>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
<mo>,</mo>
<mo>...</mo>
<mo>,</mo>
<mi>W</mi>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>9</mn>
<mo>)</mo>
</mrow>
</mrow>
其中:M表示云数据中心数量,N表示用户组数量,W表示频道数量,Di表示第i个云数据中心,confi表示第i个云数据中心提供数据的能力,Si表示第i个云数据中心Di的存储容量,Bi表示第i个云数据中心的带宽数目的上限,Uj表示第j个用户组,cij表示第i个云数据中心到第j个用户组之间的通信距离,Vk表示第k个频道,vk表示第k个频道的大小,Vk t表示第k个频道的可用性阈值,ki表示第i个云数据中心单位时间存储单位数据的开销因子,rik表示第i个云数据中心到拥有第k个频道副本的最近的云数据中心的通信距离,Qjk表示第j个用户组从第k个频道预定的带宽,Xijk表示第i个云数据中心为第j个用户组从第k个频道下载数据所分配的带宽,Yik表示如果第k个频道在第i个云数据中心中存在副本,则Yik=1,否则Yik=0,Yi'k为Yik在运算过程中的临时变量;avail(Vk)表示第k个频道的可用性,δt表示连续两次执行资源分配和开销优化算法之间的时间间隔,Cij即cij*δt,表示带宽的价格,Ki即ki*δt,表示在δt时间内存储单位数据的开销,Cδt表示在δt时间内实施某项应用的总操作开销;
(3)引入两个罚函数移除约束条件(8)和(9),将等式(2)拓展得到一个新的等式:
<mrow>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>min</mi>
<mi>C</mi>
<mi>&delta;</mi>
<mi>t</mi>
<mo>=</mo>
<mi>min</mi>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>C</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>X</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>K</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Yi</mi>
<mi>k</mi>
</msub>
<mo>=</mo>
<mn>1</mn>
<msub>
<msup>
<mi>andY</mi>
<mo>&prime;</mo>
</msup>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
</mrow>
</mtd>
</mtr>
<mtr>
<mtd>
<mrow>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msubsup>
<mi>p</mi>
<mrow>
<mi>j</mi>
<mi>k</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<msubsup>
<mi>p</mi>
<mi>k</mi>
<mn>2</mn>
</msubsup>
</mrow>
</mtd>
</mtr>
</mtable>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>10</mn>
<mo>)</mo>
</mrow>
</mrow>
其中为对约束条件(8)定义的罚函数,具体如下:
当否则
为对约束条件(9)定义的罚函数,具体如下:
当否则
其中,P1和P2分别是罚函数和中的惩罚常系数;
(4)将等式(10)求开销最小值的问题等价的转化为求收益最大值的问题,等价的最大值问题为:
<mrow>
<mi>max</mi>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<mrow>
<mo>(</mo>
<msubsup>
<mi>q</mi>
<mi>k</mi>
<mn>2</mn>
</msubsup>
<mo>-</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>K</mi>
<mi>i</mi>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<mo>-</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
<mo>:</mo>
<msub>
<mi>Y</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>1</mn>
<msub>
<msup>
<mi>andY</mi>
<mo>&prime;</mo>
</msup>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mn>0</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>r</mi>
<mrow>
<mi>i</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>v</mi>
<mi>k</mi>
</msub>
<mo>)</mo>
</mrow>
<mo>+</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>k</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>W</mi>
</munderover>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<mrow>
<mo>(</mo>
<msubsup>
<mi>q</mi>
<mrow>
<mi>j</mi>
<mi>k</mi>
</mrow>
<mo>&prime;</mo>
</msubsup>
<mo>-</mo>
<munderover>
<mi>&Sigma;</mi>
<mrow>
<mi>i</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>M</mi>
</munderover>
<msub>
<mi>C</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
</mrow>
</msub>
<mo>*</mo>
<msub>
<mi>X</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>)</mo>
</mrow>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>11</mn>
<mo>)</mo>
</mrow>
</mrow>
并满足约束条件(3)~(7),以及:
当时,否则
当时,否则
其中:表示在满足和不满足情况下的取值,表示在满足和不满足情况下的取值;表达式(11)第一项表示为确保Vk的可用性而获得的收益,第二项表示维护用户组Uj收看频道Vk的观影质量而带来的收益;
(5)构建资源分配和开销优化算法,用于求解等式(11)在约束条件(3)~(7)下所描述的问题,算法有三个输入:
①:N*W矩阵Q,表示N个用户组对W个频道的带宽需求;
②:W维向量Vt,即表示所有频道的可用性阈值;
③:W维向量Y'i,即(Y'i1,Y'i2,...Y'iw),当云数据中心Di在本次算法运行前已经存储了频道Vk时,Y'ik=1,否则Y'ik=0;
另定义三个额外的参数如下:
①:资源分配开销矩阵rc,它与云数据中心Di、用户组Uj以及频道Vk有关,定义如下:
rci0k=(Ki*vk+rik*vk*(1-Yi'k))*(1-Yik)……(12)
rcijk=Cij*xijk+rci0k……(13)
其中,xijk为可以分配的带宽数目,xijk=min(dQjk,eBi),dQjk表示用户组Uj对频道Vk的剩余带宽需求,eBi表示云数据中心Di的剩余带宽数,rci0k表示Vk的副本在云数据中心Di的存储开销,rcijk表示云数据中心Di为用户组Uj从频道Vk提供xijk带宽下载数据的总开销,其中Cij*xijk为传输开销;
②:资源分配收益矩阵rg,定义如下:
其中,yik表示不同情况下的取值,具体为:
rgijk=(P1-Cij)*xijk+rgi0k……(15)
其中,rgi0k表示当云数据中心Di复制频道Vk时的收益,
表明频道Vk在云数据中心中有着足够的副本数,不需要进行额外的频道复制,因此rgi0k≤0;令P2*yik比Ki和rik的总和高,即当频道Vk需要达到更多的可用性时,则rgi0k>0;rgijk表示把数量为xijk的带宽分配给用户的总收益,(P1-Cij)*xijk表示分配带宽的收益,且令P1>Cij;
③:成本效益矩阵ce,定义如下:
<mrow>
<msub>
<mi>ce</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
<mo>=</mo>
<mfrac>
<mrow>
<msub>
<mi>rg</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
<mrow>
<msub>
<mi>rc</mi>
<mrow>
<mi>i</mi>
<mi>j</mi>
<mi>k</mi>
</mrow>
</msub>
</mrow>
</mfrac>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>16</mn>
<mo>)</mo>
</mrow>
</mrow>
由(13)、(15)和(16)式得到的矩阵ce将会在每次资源分配后重新计算,直到ce中所有元素都变成非正数,此时也意味着所有的需求都得到满足或者系统所有的资源都已分配完毕。
2.根据权利要求1所述的云视频的资源分配与开销优化方法,其特征在于,所述步骤(5)中资源分配和开销优化算法实现过程如下:
(5-1)云数据中心Di(i=1,...,M)初始化本地变量,包括以下子步骤:
(5-1-1)分别初始化矩阵X,Y,ce的第i行为0;
(5-1-2)初始化可用存储空间eSi为Si,初始化可用带宽数目eBi为Bi,
其中Si和Bi表示云数据中心Di的存储容量和带宽数目的上限;
(5-1-3)初始化矩阵dQ和dVt为Q和Vt,其中dQ表示所有剩余带宽,dVt表示所有可用性需求;
(5-1-4)根据公式(12)第二项,即执行乘法分配律之后的“+”右边的项,表示迁移开销,定义函数Compute_mc计算复制一个频道到云数据中心的迁移开销mcik,得到矩阵mc;
(5-1-5)计算每一个ceijk,i=1,...,M,j=1,...,N,k=1,...,W,初始化矩阵ce;
(5-1-6)本云数据中心Di通过一个集体通信操作all-reduce-max(send_msg,recv_msg)与其他所有云数据中心一起计算出全局最大开销效益cemax:
其中send_msg和recv_msg分别代表发送缓冲区和接收缓冲区,它们都有六个参数(cemax,i,j,k,xijk,f),其中cemax是最大开销收益,i,j,k是与cemax相关的云数据中心、用户组和频道的索引;为了使每一个云数据中心Di都参与all-reduce-max过程,Di要确定自己本地的最大开销效益cemax,分配的带宽数目xijk和f标志;其中当为了使Di达到cemax而使得Vk必须被复制时f=1,否则f=0;在初始化阶段如果cemax>0,则Vk必须被复制,亦即f=1;
(5-2)循环迭代直到所有cemax≤0:
(5-2-1)判断若cemax>0,则执行(5-2-2),否则结束;
(5-2-2)当云数据中心Di达到最大全局开销效益时,则执行步骤(5-2-3),否则只更新本地数据来跟踪其他云数据中心分配带宽和存储空间带来的影响,执行(5-2-4);
(5-2-3)当f=1,执行Yik=1,dVk t=max(0,dVk t-confi),eSi=eSi-vk,然后进入步骤(5-2-4),否则直接进入步骤(5-2-4);
(5-2-4)当xijk≠0,执行Xijk=xijk,dQjk=dQjk-xijk,eBi=eBi-xijk,然后进入步骤(5-2-5),否则直接进入步骤(5-2-5);
(5-2-5)通过调整后,重新执行(5-1-4)到(5-1-5)得到新的(cei,xi),然后再次执行(5-1-6)得到新的(cemax,i,j,k,xijk,f);
(5-2-6)返回(5-2-1)重新迭代;
(5-3)为每个云数据中心中配置一个大小为的带宽池,其中e的范围为0-10%,代表带宽池系数;每个云数据中心的带宽池都可以提供给任意用户组来下载任意频道,如果一个用户组用完了它的预订带宽,那么它的请求将被转发到离它最近的拥有所需频道的云数据中心上,并使用这个云数据中心的带宽池。
3.根据权利要求2所述的云视频的资源分配与开销优化方法,其特征在于,所述子步骤(5-1-5)中初始化矩阵ce的方法,具体如下:
(a1)根据公式(12)和(14),在给定的云数据中心Di下计算W维向量rci0和rgi0;
(b1)根据公式(13)和(15),初始化(N*W)矩阵rci和rgi,;
(c1)用rgi与rci中所有对应位置的元素相除得到开销效益矩阵cei。
4.根据权利要求2或3所述的云视频的资源分配与开销优化方法,其特征在于,所述子步骤(5-1-6)中计算全局最大开销效益cemax步骤如下:
(a2)将(cemax,i,j,k,xijk,f)放入send_msg;
(b2)每个数据中心通过一个集体通信操作与其他所有云数据中心一起计算出全局最大开销效益cemax的初始值,具体为:all-reduce-max(send_msg,recv_msg);
(c2)recv_msg得到一组(cemax,i,j,k,xijk,f)。
5.根据权利要求1至3任一项所述的云视频的资源分配与开销优化方法,其特征在于,所述方法还包括在资源分配和开销优化算法中使用并集成局部性原理,使得用户尽量从本地的云数据中心获取带宽,包括以下步骤:
(a3)定义Locality表示用户组的局部性,具体如下:
<mrow>
<mi>L</mi>
<mi>o</mi>
<mi>c</mi>
<mi>a</mi>
<mi>l</mi>
<mi>i</mi>
<mi>t</mi>
<mi>y</mi>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>aB</mi>
<mi>j</mi>
</msub>
<mo>/</mo>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>cB</mi>
<mi>j</mi>
</msub>
<mo>,</mo>
<msub>
<mi>rB</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>17</mn>
<mo>)</mo>
</mrow>
</mrow>
其中aBj是用户组从他所在区域的云数据中心获取的带宽,cBj是该区域中所有云数据中心的带宽总和,rBj是用户组Uj获取到的总带宽数;
(b3)在资源分配和开销优化算法中做出修改:首先,定义云数据中心Di到用户组Uj间的虚拟通信距离,用浮点函数vcij表示:
其中i=1,...,M,j=1,...,N,P3表示局部性罚函数,是一个正实数;然后,令VCij=vcij*δt,并用它替换掉资源分配和开销优化算法中的Cij,然后再进行带宽分配。
6.根据权利要求4所述的云视频的资源分配与开销优化方法,其特征在于,所述方法还包括在资源分配和开销优化算法中使用并集成局部性原理,使得用户尽量从本地的云数据中心获取带宽,包括以下步骤:
(a3)定义Locality表示用户组的局部性,具体如下:
<mrow>
<mi>L</mi>
<mi>o</mi>
<mi>c</mi>
<mi>a</mi>
<mi>l</mi>
<mi>i</mi>
<mi>t</mi>
<mi>y</mi>
<mo>=</mo>
<munderover>
<mo>&Sigma;</mo>
<mrow>
<mi>j</mi>
<mo>=</mo>
<mn>1</mn>
</mrow>
<mi>N</mi>
</munderover>
<msub>
<mi>aB</mi>
<mi>j</mi>
</msub>
<mo>/</mo>
<mi>m</mi>
<mi>i</mi>
<mi>n</mi>
<mrow>
<mo>(</mo>
<msub>
<mi>cB</mi>
<mi>j</mi>
</msub>
<mo>,</mo>
<msub>
<mi>rB</mi>
<mi>j</mi>
</msub>
<mo>)</mo>
</mrow>
<mn>...</mn>
<mrow>
<mo>(</mo>
<mn>17</mn>
<mo>)</mo>
</mrow>
</mrow>
其中aBj是用户组从他所在区域的云数据中心获取的带宽,cBj是该区域中所有云数据中心的带宽总和,rBj是用户组Uj获取到的总带宽数;
(b3)在资源分配和开销优化算法中做出修改:首先,定义云数据中心Di到用户组Uj间的虚拟通信距离,用浮点函数vcij表示:
其中i=1,...,M,j=1,...,N,P3表示局部性罚函数,是一个正实数;然后,令VCij=vcij*δt,并用它替换掉资源分配和开销优化算法中的Cij,然后再进行带宽分配。
7.如权利要求2或3所述的云视频的资源分配和开销优化方法,其特征在于,所述步骤(5-3)中带宽池中的e取值为5%。
8.如权利要求4所述的云视频的资源分配和开销优化方法,其特征在于,所述步骤(5-3)中带宽池中的e取值为5%。
9.如权利要求6所述的云视频的资源分配和开销优化方法,其特征在于,所述步骤(5-3)中带宽池中的e取值为5%。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410171121.2A CN103973780B (zh) | 2014-04-25 | 2014-04-25 | 一种云视频的资源分配和开销优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410171121.2A CN103973780B (zh) | 2014-04-25 | 2014-04-25 | 一种云视频的资源分配和开销优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103973780A CN103973780A (zh) | 2014-08-06 |
CN103973780B true CN103973780B (zh) | 2018-05-22 |
Family
ID=51242813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410171121.2A Active CN103973780B (zh) | 2014-04-25 | 2014-04-25 | 一种云视频的资源分配和开销优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103973780B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104410870B (zh) * | 2014-10-28 | 2017-04-19 | 清华大学 | 能耗优化的流媒体应用带宽资源分配方法 |
CN104363635B (zh) * | 2014-10-28 | 2017-10-17 | 清华大学 | 快速能耗优化的流媒体应用带宽资源分配方法 |
CN107800701B (zh) * | 2017-10-30 | 2020-05-05 | 山东师范大学 | 基于内容感知和团购策略的云视频内容分发方法、计算机可读介质及系统 |
CN108924480A (zh) * | 2018-06-15 | 2018-11-30 | 龙口盛福达食品有限公司 | 一种基于自适应传输的食品包装质检图像传输方法 |
CN110533332B (zh) * | 2019-09-02 | 2023-05-02 | 海南电网有限责任公司 | 一种基于多初始点罚函数的计算资源分配方法及服务器 |
US10678594B2 (en) * | 2020-01-09 | 2020-06-09 | Alipay Labs (singapore) Pte. Ltd. | System and method for optimizing resource allocation using GPU |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103297431A (zh) * | 2013-05-24 | 2013-09-11 | 南京邮电大学 | 一种基于云服务器群的流媒体视频点播副本混合缓存策略 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2649798A4 (en) * | 2010-12-06 | 2017-06-07 | Oracle International Corporation | Media platform integration system |
-
2014
- 2014-04-25 CN CN201410171121.2A patent/CN103973780B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103297431A (zh) * | 2013-05-24 | 2013-09-11 | 南京邮电大学 | 一种基于云服务器群的流媒体视频点播副本混合缓存策略 |
Non-Patent Citations (5)
Title |
---|
Cost-effective Partial Migration of VoD Services to Content Clouds;Haitao Li, Lili Zhong, Jiangchuan Liu, Bo Li, Ke Xu;《2011 IEEE 4th International Conference on Cloud Computing》;IEEE;20110901;203-210 * |
Dynamic Scaling of VoD Services into Hybrid Clouds with Cost Minimization and QoS Guarantee;Xuanjia Qiu, Hongxing Li, Chuan Wu, Zongpeng Li, Francis C.M.Lau;《Packet Video Workshop(PV),2012 19th International》;IEEE;20120702;137-142 * |
Opportunities and Challenges of Peer-to-peer Internet Video Broadcast;Jiangchuan Liu, Sanjay G.Rao, Bo Li, Hui Zhang;《Proceedings of the IEEE》;IEEE;20080101;第96卷(第1期);11-24 * |
云辅助的P2P视频点播分发机制研究;郭红方,林予松,王宗敏;《计算机应用研究》;20121010;第30卷(第2期);525-528 * |
基于云存储的P2P视频点播系统数据复制策略;王娟;《微型机与应用》;20131025;第32卷(第20期);70-76 * |
Also Published As
Publication number | Publication date |
---|---|
CN103973780A (zh) | 2014-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103973780B (zh) | 一种云视频的资源分配和开销优化方法 | |
CN113315700B (zh) | 算力资源调度方法、装置和存储介质 | |
CN111949395B (zh) | 基于区块链的共享算力数据处理方法、系统及存储介质 | |
CN104065663A (zh) | 一种基于混合云调度模型的自动伸缩、费用优化的内容分发服务方法 | |
CN101136932B (zh) | 一种集群式流媒体组网系统及其内容发布和服务方法 | |
CN102857548B (zh) | 一种移动云计算资源优化配置方法 | |
CN111132175A (zh) | 一种协同计算卸载和资源分配方法及应用 | |
Li et al. | Adaptive resource allocation based on the billing granularity in edge-cloud architecture | |
CN106961616B (zh) | 一种多cdn辅助的多层云的直播分发系统 | |
CN113346938B (zh) | 一种面向空天地一体化网络的边缘计算资源融合管理方法 | |
CN108897606B (zh) | 多租户容器云平台虚拟网络资源自适应调度方法及系统 | |
KR20140075784A (ko) | 대규모 매체 클라우드를 위한 분산 맵핑 기능 | |
US20230176929A1 (en) | Resource allocation method and apparatus based on edge computing | |
CN109041130A (zh) | 基于移动边缘计算的资源分配方法 | |
Meng et al. | A utility-based resource allocation scheme in cloud-assisted vehicular network architecture | |
CN109525426A (zh) | 一种基于fv的开放式mec平台的服务控制系统及方法 | |
CN114710196B (zh) | 一种软件定义卫星网络虚拟网络功能迁移方法 | |
CN109743217B (zh) | 一种基于svra算法的自适应资源调节方法 | |
CN105260232A (zh) | 一种实现云计算虚拟机内部资源优化配置的方法及系统 | |
Liu et al. | Resource allocation for video transcoding and delivery based on mobile edge computing and blockchain | |
CN108965881A (zh) | 码率控制方法、系统、服务器及可读存储介质 | |
CN108833993B (zh) | 一种成本敏感的网络视频分发方法 | |
CN105262663A (zh) | 一种混合虚拟网络的跨域映射方法 | |
Wang et al. | A profit maximization strategy of MEC resource provider in the satellite-terrestrial double edge computing system | |
CN103248622A (zh) | 一种自动伸缩的在线视频服务质量保障方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |