本发明涉及编码缓存方法,尤其涉及一种内容流行度分布不一致的雾无线接入网非同步编码缓存方法。
背景技术
为应对移动数据爆炸式增长带来的网络拥堵问题,边缘缓存技术能通过存储流行内容,来显著降低前传负载和时延,已成为研究的热点。通过对传输内容进行编码,编码缓存能进一步降低前传负载。雾无线接入网中f-ap(fogaccesspoint,雾接入点)分布在离用户近的网络边缘,能利用边缘计算和缓存资源与云服务器协作,带给用户更好的网络体验。
然而目前对编码缓存方法的研究大多集中于信息论领域,缺少结合具体无线网络系统如雾无线接入网的编码缓存研究,而且假设用户请求是同步的理想条件,忽略了用户对内容的需求是非同步的这一事实。另外,实际上内容流行度分布是不一致的,因为某些内容会比其他内容更加流行。因此如何设计内容流行度分布不一致时的非同步编码缓存方法,来减少前传负载,是一个迫切需要解决的关键问题。
技术实现要素:
发明目的:本发明针对现有技术存在的问题,提供一种内容流行度分布不一致的雾无线接入网非同步编码缓存方法,该方法可以减少前传负载。
技术方案:本发明所述的内容流行度分布不一致的雾无线接入网非同步编码缓存方法包括:
(1)设定一个不一致的内容流行度分布,利用一维搜索得到缓存分布向量;
(2)每个雾接入点根据缓存分布向量,从存储于云服务器的每个文件中随机选择相应数量的子文件,下载到本地进行缓存,同时云服务器对每个雾接入点的缓存内容进行记录;
(3)每个雾接入点在接收到用户的文件请求时,向云服务器发出文件传输请求;
(4)当雾接入点非同步请求的时间间隔大于最大请求时延约束时,云服务器采用非同步编码传输方法向雾接入点传输请求的文件;
(5)当雾接入点非同步请求的时间间隔小于等于最大请求时延时,云服务器采用同步编码传输方法向雾接入点传输请求的文件。
进一步的,所述步骤(1)具体包括:
(1-1)设定一个满足zipf分布的内容流行度分布q=(q1,q2,...,qn,...,qn),其中,
(1-2)根据设定的内容流行度分布进行一维搜索,包括:
a、设置
b、若
c、更新x=x+1,返回执行步骤b,直至x=n时截止;
(1-3)将分配给前
进一步的,所述步骤(2)具体包括:
(2-1)设定一个整数g,将每个文件wn分割为g个大小为f/g的子文件{wn,g:g=1,2,...,g},f表示每个文件的标准大小;
(2-2)每个雾接入点独立且随机地选择每个文件wn的pnmg个子文件,下载到本地进行缓存,其中,pn表示缓存分布向量中文件wn对应的缓存容量所占比例,m为雾接入点的缓存容量大小;
(2-3)云服务器对每个雾接入点的缓存内容进行记录。
进一步的,所述步骤(4)具体包括:
(4-1)当雾接入点非同步请求的时间间隔大于最大请求时延时,即δb<b,云服务器按照步骤(4-2)到(4-4)执行;其中时隙1为第一个雾接入点发出请求所在的时隙,时隙b为最后一个雾接入点发出请求所在的时隙,也表示非同步请求的时间间隔(0,t]中的总时隙数,每个时隙的时长为t/b,δb为雾接入点从发出请求到获得请求文件所经历的总时隙数,即最大请求时延为δb个时隙;
(4-2)在时隙b=1到时隙b=δb-1之间,云服务器不传输内容;其中,b为云服务器当前传输内容所在时隙;
(4-3)在时隙b=δb到时隙b=b-1之间,首先将在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件构建为冲突图,然后对冲突图应用贪婪着色算法,云服务器再根据冲突图将时隙(b-δb+1)内雾接入点请求的但尚未传输的所有子文件相关的内容进行编码后全部传输;
(4-4)在时隙b=b末,首先将在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件构建为冲突图,然后对冲突图应用贪婪着色算法,云服务器再根据冲突图将所有雾接入点请求的尚未传输的内容编码后全部传输。
进一步的,所述步骤(4-3)具体包括:
(4-3-1)在时隙b=δb末,云服务器执行以下步骤:
a、获取在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件,记为标签{子文件id,请求雾接入点集合,缓存雾接入点集合};其中子文件id为(n,g),包括文件号n和子文件号g;请求雾接入点集合为
b、将相同标签的子文件看作同一个顶点,所有不同标签的子文件作为冲突图的顶点集合,对于顶点集合中的任意两个顶点,当同时满足下面两个条件时:1)顶点v1和顶点v2不是同一个子文件,即ρ(v1)≠ρ(v2);2)请求一个顶点对应子文件的雾接入点不在另一个顶点的缓存雾接入点集合中,即
c、对冲突图应用贪婪着色算法,得到若干顶点集合;
d、对于每一个顶点集合
(4-3-2)进入下个时隙,即b=b+1时隙,按照时隙b=δb末执行的步骤执行,直至时隙到达b=b,执行(4-4)。
进一步的,所述步骤(5)具体包括:
(5-1)当雾接入点非同步请求的时间间隔小于等于最大请求时延时,即δb≥b,云服务器执行步骤(5-2)到(5-3);其中时隙1为第一个雾接入点发出请求所在的时隙,时隙b为最后一个雾接入点发出请求所在的时隙,也表示非同步请求的时间间隔(0,t]中的总时隙数,每个时隙的时长为t/b,δb为雾接入点从发出请求到获得请求文件所经历的总时隙数,即最大请求时延为δb个时隙;
(5-2)在时隙b=1到时隙b=b-1之间,每个时隙内的雾接入点会向云服务器发出专属请求,云服务器不传输内容;
(5-3)在时隙b=b末,首先将在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件构建为冲突图,然后对冲突图应用贪婪着色算法,云服务器根据冲突图将所有雾接入点请求的尚未传输的内容编码后全部传输。
进一步的,所述首先将在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件构建为冲突图,然后对冲突图应用贪婪着色算法,云服务器将所有雾接入点请求的尚未传输的内容编码后全部传输,具体包括:
a、获取在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件,记为标签{子文件id,请求雾接入点集合,缓存雾接入点集合};其中子文件id为(n,g),包括文件号n和子文件号g;请求雾接入点集合为
b、将相同标签的子文件看作同一个顶点,所有不同标签的子文件作为冲突图的顶点集合,对于顶点集合中的任意两个顶点,当同时满足下面两个条件时:1)顶点v1和顶点v2不是同一个子文件,即ρ(v1)≠ρ(v2);2)请求一个顶点对应子文件的雾接入点不在另一个顶点的缓存雾接入点集合中,即
c、对冲突图应用贪婪着色算法,得到若干顶点集合;
d、对于的每一个顶点集合
进一步的,所述对冲突图应用贪婪着色算法,得到若干顶点集合,具体包括:
①设置c=1;
②选择任意顶点
③对于所有的顶点
④用一个尚未使用的颜色给顶点集合
⑤更新
有益效果:本发明与现有技术相比,其显著优点是:
1、针对雾无线接入网中f-ap非同步请求内容这一更具挑战性的场景,根据不同的请求时间间隔和最大请求时延,选择相应的非同步或同步编码传输方法,能有效减少前传负载,适用场景更加广泛。
2、非同步编码传输方法,利用贪婪着色算法,能创造尽可能多的不同请求内容之间的编码多播机会,而且考虑当前时隙f-ap请求内容与后面时隙f-ap请求内容间存在潜在编码机会,在当前时隙优先传输即将到达最大请求时延的f-ap请求内容,可以获得极大的编码缓存增益。
3、根据具体应用场景的不同,可动态调节最大请求时延,来获得负载时延折衷权衡。
附图说明
图1是本发明提出的内容流行度分布不一致的雾无线接入网非同步编码缓存方法的流程示意图;
图2是本发明的提出的内容流行度分布不一致的雾无线接入网非同步编码缓存方法的选择示意图;其中,雾无线接入网中共有6个f-ap非同步地请求内容,不一致的内容流行度满足zipf分布,假设f-ap1、f-ap2在时隙1请求文件a、文件b,f-ap3在时隙2请求文件c,f-ap4在时隙3请求文件d,f-ap5、f-ap6在时隙4请求文件e、文件f,δb分别为3和5。
具体实施方式
技术方案:本发明所述的内容流行度分布不一致的雾无线接入网非同步编码缓存方法包括:
(1)设定一个不一致的内容流行度分布,利用一维搜索得到缓存分布向量。
该步骤具体包括:
(1-1)设定一个满足zipf分布的内容流行度分布q=(q1,q2,...,qn,...,qn),其中,
(1-2)根据设定的内容流行度分布进行一维搜索,包括:
a、设置
b、若
c、更新x=x+1,返回执行步骤b,直至x=n时截止;
(1-3)将分配给前
(2)每个雾接入点根据缓存分布向量,从存储于云服务器的每个文件中随机选择相应数量的子文件,下载到本地进行缓存,同时云服务器对每个雾接入点的缓存内容进行记录。
该步骤具体包括:
(2-1)设定一个足够大的整数g,将每个文件wn分割为g个大小为f/g的子文件{wn,g:g=1,2,...,g},f表示每个文件的标准大小;
(2-2)每个雾接入点独立且随机地选择每个文件wn的pnmg个子文件,下载到本地进行缓存;
(2-3)云服务器对每个雾接入点的缓存内容进行记录。
(3)每个雾接入点在接收到用户的文件请求时,向云服务器发出文件传输请求。
(4)当雾接入点非同步请求的时间间隔大于最大请求时延约束时,云服务器采用非同步编码传输方法向雾接入点传输请求的文件。
如图2所示,步骤(4)具体包括:
(4-1)当雾接入点非同步请求的时间间隔大于最大请求时延时,即δb<b,云服务器按照步骤(4-2)到(4-4)执行;其中时隙1为第一个雾接入点发出请求所在的时隙,时隙b为最后一个雾接入点发出请求所在的时隙,也表示非同步请求的时间间隔(0,t]中的总时隙数,每个时隙的时长为t/b,δb为雾接入点从发出请求到获得请求文件所经历的总时隙数,即最大请求时延为δb个时隙。
(4-2)在时隙b=1到时隙b=δb-1之间,云服务器不传输内容;其中,b为云服务器当前传输内容所在时隙。
(4-3)在时隙b=δb到时隙b=b-1之间,首先将在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件构建为冲突图,然后对冲突图应用贪婪着色算法,云服务器再根据冲突图将时隙(b-δb+1)内雾接入点请求的但尚未传输的所有子文件相关的内容进行编码后全部传输。具体包括:
(4-3-1)在时隙b=δb末,云服务器执行以下步骤:
a、获取在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件,记为标签{子文件id,请求雾接入点集合,缓存雾接入点集合};其中子文件id为(n,g),包括文件号n和子文件号g;请求雾接入点集合为
b、将相同标签的子文件看作同一个顶点,所有不同标签的子文件作为冲突图的顶点集合,对于顶点集合中的任意两个顶点,当同时满足下面两个条件时:1)顶点v1和顶点v2不是同一个子文件,即ρ(v1)≠ρ(v2);2)请求一个顶点对应子文件的雾接入点不在另一个顶点的缓存雾接入点集合中,即
c、对冲突图应用贪婪着色算法,得到若干顶点集合;具体包括:
①设置c=1;
②选择任意顶点
③对于所有的顶点
④用一个尚未使用的颜色给顶点集合
⑤更新
d、对于每一个顶点集合
例如,假设n=4,k=4,m=3,b=4,t=4s,δb=3,α=0.6,利用一维搜索可得缓存分布向量
i、在时隙b=1,2末,云服务器不传输任何内容,该时隙内的f-ap只需将请求内容通知云服务器即可。
ii、在时隙b=3末,应用贪婪着色算法得到的顶点集合为{{a7,1,{2,3}},{b5,2,{1,3}},{c3,3,{1,2}}},{{a8,1,{2,3}},{b6,2,{1,3}},{c1,3,{1,2}}},此时需要传输的编码多播内容分别为
(4-3-2)进入下个时隙,即b=b+1时隙,按照时隙b=δb末执行的步骤执行,直至时隙到达b=b,执行(4-4)。
(4-4)在时隙b=b末,首先将在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件构建为冲突图,然后对冲突图应用贪婪着色算法,云服务器再根据冲突图将所有雾接入点请求的尚未传输的内容编码后全部传输。具体包括:
a、获取在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件,记为标签{子文件id,请求雾接入点集合,缓存雾接入点集合};其中子文件id为(n,g),包括文件号n和子文件号g;请求雾接入点集合为
b、将相同标签的子文件看作同一个顶点,所有不同标签的子文件作为冲突图的顶点集合,对于顶点集合中的任意两个顶点,当同时满足下面两个条件时:1)顶点v1和顶点v2不是同一个子文件,即ρ(v1)≠ρ(v2);2)请求一个顶点对应子文件的雾接入点不在另一个顶点的缓存雾接入点集合中,即
c、对冲突图应用贪婪着色算法,得到若干顶点集合;该步骤具体同步骤(4-3-1)中的步骤c一样,不再赘述;
d、对于的每一个顶点集合
例如,接步骤(4-3)的例子,在时隙b=4末,应用贪婪着色算法得到的独立集合为{d3,4,{2,3}},{d4,4,{2,3}},此时需要将所有对应每个独立集合的编码多播内容d3,d4全部传输。
(5)当雾接入点非同步请求的时间间隔小于等于最大请求时延时,云服务器采用同步编码传输方法向雾接入点传输请求的文件。
该步骤(5)具体包括:
(5-1)当雾接入点非同步请求的时间间隔小于等于最大请求时延时,即δb≥b,云服务器执行步骤(5-2)到(5-3);其中时隙1为第一个雾接入点发出请求所在的时隙,时隙b为最后一个雾接入点发出请求所在的时隙,也表示非同步请求的时间间隔(0,t]中的总时隙数,每个时隙的时长为t/b,δb为雾接入点从发出请求到获得请求文件所经历的总时隙数,即最大请求时延为δb个时隙;
(5-2)在时隙b=1到时隙b=b-1之间,每个时隙内的雾接入点会向云服务器发出专属请求,云服务器不传输内容;
(5-3)在时隙b=b末,首先将在时隙b-δb+1,b-δb+2,..,b内雾接入点请求的但尚未传输的子文件构建为冲突图,然后对冲突图应用贪婪着色算法,云服务器根据冲突图将所有雾接入点请求的尚未传输的内容编码后全部传输。该步骤具体同步骤(4-4)一样,不再赘述。
以上所揭露的仅为本发明一种较佳实施例而已,不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。