文件大小异构的分布式编码缓存放置方法及系统转让专利

申请号 : CN201710400953.0

文献号 : CN107295070B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 熊红凯李成林程晗

申请人 : 上海交通大学

摘要 :

本发明提供了一种文件大小异构的分布式编码缓存放置方法及系统,所述方法结合服务器处的文件大小以及各用户终端的本地缓存的容量限制、不同用户终端的文件下载请求情况,采用分布式的编码缓存优化放置方法确定各用户终端所需缓存的各个文件的缓存比例,最终实现为了满足用户终端的各种文件下载请求服务器处共享链路所需码率的最小化。本发明提高了各用户终端的本地缓存的利用率,有效减轻了服务器处共享链路的负载。

权利要求 :

1.一种文件大小异构的分布式编码缓存放置方法,其特征在于,包括以下步骤:

第一步,在服务器处存放不同大小的文件;

第二步,在至少一个用户终端的本地缓存处,根据用户终端的本地缓存容量预先缓存所述文件的子集;

第三步,至少一个用户终端向服务器提出所述文件下载请求,服务器收集所有用户终端的请求并根据用户终端的请求通过共享链路发送编码后的文件内容;

第四步,用户终端通过从服务器得到第三步编码后的文件内容和从本地缓存处得到第二步相应的预先缓存的文件子集,解码得到请求的文件内容;

第五步,基于前四个步骤,采用参数:服务器处所有文件的大小、用户终端处的本地缓存的容量限制、以及用户终端的文件请求情况,建立适用于文件大小异构的分布式编码缓存放置的优化问题,采用快速高效的分布式编码缓存内容放置方法,得到第二步中各用户终端的本地缓存预存储各个文件的相应比例;

第五步中,所述的分布式编码缓存内容放置方法,是指:在为各用户终端的本地缓存确定具体的缓存的各个文件的相应比例时,采用快速高效的拉格朗日乘子法和序列二次规划算法,最终实现了各用户终端的本地缓存的分布式缓存内容的优化放置;

第五步中,所述的分布式编码缓存内容放置方法,具体步骤为:

(a)初始化:设置初始局部最优解为非负值,设置初始正定矩阵为初始近似Hesse矩阵,以及初始步数为0;

(b)迭代搜索步骤:根据当前的局部最优解,得到相应的二次规划子问题,解该子问题得到新的搜索步长;

(c)更新步骤:根据当前局部最优解和搜索步长得到新的局部最优解,利用Broyden-Fletcher-Goldfarb-Shanno(BFGS)算法得到新的近似Hesse矩阵;

(d)判定步骤:如果搜索步长不为零,则令搜索步数加一并返回迭代搜索步骤;否则,迭代停止并且将当前的局部最优解输出为最优结果。

2.根据权利要求1所述的文件大小异构的分布式编码缓存放置方法,其特征在于,第二步中,所述的用户终端的本地缓存比服务器更靠近用户终端并独立地服务于用户终端,用户终端可以从本地缓存处更快地获得请求下载的文件的部分内容。

3.根据权利要求1所述的文件大小异构的分布式编码缓存放置方法,其特征在于,第三步中,服务器发送编码后的文件内容,其中编码的方法为:取出用户终端集合的一个子集,对于该用户终端子集中每一个用户终端,它所请求的文件都有一部分内容存储在该用户终端子集除该用户终端外的其他所有用户终端中,将这部分内容称为待操作内容,将该用户终端子集中所有用户终端各自对应的待操作内容进行编码即异或操作,其中,若这些内容大小不一,则按照最长的长度进行补零操作后再编码;

对于用户终端的所有子集,都进行上述操作完成整个编码过程。

4.根据权利要求1-3任一项所述的文件大小异构的分布式编码缓存放置方法,其特征在于,第五步中,所述适用于文件大小异构的情况的分布式编码缓存方法的优化问题结合了服务器所有文件的不同大小、用户终端的本地缓存的容量限制、以及用户终端的文件下载请求,并使用为了满足用户终端所有的文件下载请求,服务器处共享链路所需的码率最小的建模方法得到。

5.根据权利要求4所述的文件大小异构的分布式编码缓存放置方法,其特征在于,第五步中,建立适用于文件大小异构的情况的分布式编码缓存放置方法的优化问题如下:目标优化问题:

约束条件:

其中,优化变量为:P=[p1,p2,...,pn,...,pN]表示所有文件存储在用户终端的本地缓存中的比例,pn表示文件n存储在用户终端的本地缓存中的比例;用户终端集合每个用户终端 文件集合 每个文件 定义文件大小分布为V=[v1,v2,...,vn,...,vN],其中vn表示文件n的大小,归一化单位为F比特;用户终端的本地缓存大小为S,归一化单位为F比特;

优化目标为:最小化在最差情况下为满足用户终端的文件下载请求服务器连接的共享链路所需的码率,其中,d=[d1,d2,...,dk,...,dK]表示用户终端的文件下载请求分布,dk表示用户终端k的文件下载请求, 表示所有可能的用户终端文件下载请求情况;在用户终端的文件下载请求为d的情况下,服务器连接的共享链路需要传输的码率为其中, 表示用户终端集合的某一子集,并且子集的大小为i,j表示用户终端子集中的某一用户终端, 表示用户终端j请求下载的文件dj存储在用户终端的本地缓存中的比例, 表示用户终端j请求下载的文件dj的大小;

约束条件为:用户终端的本地缓存限制条件,即任意一个用户终端的本地缓存所预存储的文件内容大小之和不超过其物理存储容量SF。

6.一种用于实现上述权利要求1-5任一项所述方法的文件大小异构的分布式编码缓存放置系统,其特征在于,包括:服务器端,用于存放不同大小的文件,并收集所有用户终端的请求,通过共享链路发送编码后的文件内容;

用户终端,该终端连接本地缓存,并根据本地缓存容量的限制预先缓存文件的子集;用户终端向服务器提出文件下载请求,通过从服务器得到的编码后的文件内容和本地缓存处得到相应的未编码文件内容解码得到请求的文件内容;

分布式编码缓存放置优化模块,该模块根据服务器端所有文件的大小、用户终端处的本地缓存的容量限制以及用户终端的文件请求情况,建立适用于文件大小异构的分布式编码缓存放置的优化问题,采用快速高效的分布式编码缓存内容放置方法,得到各用户终端的本地缓存预存储各个文件的对应比例。

说明书 :

文件大小异构的分布式编码缓存放置方法及系统

技术领域

[0001] 本发明涉及一种数据通信技术领域的方法及系统,具体是一种适用于文件大小异构的分布式编码缓存放置方法及系统。

背景技术

[0002] 近几年来,全球移动业务量继续保持着快速地增长,并且视频数据在其中占据着越来越高的比例。这会对通信网络和数据传输系统施加更大的压力。此外,视频流量具有高度时间变化特性,具体的,在流量高峰时段,网络产生拥塞情况,而在低谷时段,网络的利用率不足。为了减少高峰时段的网络流量以及提高低谷时段网络的利用率,采用缓存技术即利用用户的本地的存储空间在非高峰时段预先存储部分视频内容,可以起到平滑视频流量的时变特性以及缓解高峰时段的网络拥塞并提高网络利用率的作用。
[0003] 经过对现有技术的检索发现,Niesen等人在《IEEE Transactions  on Information Theory,Mar.2014,pp.2856-2867,(电气电子工程师协会用于信息论学报,2014年5月,第2856-2867页)》上发表了题为“Fundamental limits of caching(缓存的基本限制)”的文章,该文章实现通过联合优化数据放置和传输阶段增加编码机会得到了显著的增益。但是,该文章需要一个中央服务器并精心设计每个用户缓存的内容,实际上,这是难以实现的。Niesen等人随后在《IEEE Transactions on Networking,Arg.2015,pp.1029-
1040,(电气电子工程师协会用于网络学报,2015年8月,第1029-1040页)》发表了题为“Decentralized coded caching attains order-optimal memory-rate tradeoff(达到最优存储-速率权衡的分布式编码算法)”的文章,该文章提出了分布式的缓存算法,各个用户独立随机地存储文件内容。但是,这些文章都假设文件大小都相同,然而在实际中,文件的大小往往是不同的,例如,由于视频持续时间、分辨率、速率-失真特性等等,视频文件的大小往往是异构的。
[0004] 经检索还发现,Zhang等人在2015年的《IEEE International Symposium on Information Theory(电气电子工程师协会信息论国际会议)》上发表了题为“Coded caching for files with distinct file sizes(针对不同文件大小的编码缓存算法)”的文章,该文章针对文件大小不同的情况,给出了一个可实现的编码缓存方案,在该方案中,采用了和文件大小成正比例的缓存比例,然而,该文章给出的方案并不能达到最优性能。
[0005] 上述现有技术不足促使申请人针对文件大小不同的情况,提出了一种高效的,性能更优的分布式编码缓存放置方案。

发明内容

[0006] 针对现有技术中的缺陷,本发明的目的是提供一种文件大小异构的分布式编码缓存放置方法及系统,提高各用户终端的本地缓存的利用率,有效减轻了服务器处共享链路的负载。
[0007] 为实现以上目的,本发明采用的技术方案是:本发明结合服务器处的文件大小以及各用户终端的本地缓存的容量限制、不同用户终端的请求情况,采用分布式的缓存优化放置方法确定各用户终端所需缓存的各个文件子集,最终实现为了满足用户终端的各种文件请求服务器处共享链路码率的最小化。
[0008] 根据本发明的第一方面,提供一种文件大小异构的分布式编码缓存放置方法,包括以下步骤:
[0009] 第一步,在服务器处存放不同大小的文件;
[0010] 第二步,在至少一个用户终端的本地缓存处,根据用户终端的本地缓存容量预先缓存所述文件的子集;
[0011] 第三步,至少一个用户终端向服务器提出所述文件下载请求,服务器收集所有用户终端的请求并根据用户终端的请求通过共享链路发送编码后的文件内容;
[0012] 第四步,用户终端通过从服务器得到第三步编码后的文件内容和从本地缓存处得到第二步相应的预先缓存的文件子集,解码得到请求的文件内容;
[0013] 第五步,基于前四个步骤,采用参数:服务器处所有文件的大小、用户终端处的本地缓存的容量限制、以及用户终端的文件请求情况,建立适用于文件大小异构的分布式编码缓存放置放置的优化问题,采用快速高效的分布式编码缓存内容放置方法,得到第二步中各用户终端的本地缓存预存储各个文件的相应比例。
[0014] 优选地,第二步中,所述的用户终端的本地缓存能够预先缓存部分文件的子集,所述用户终端的本地缓存预存取的文件总大小受到其物理缓存容量的限制。所述的用户终端的本地缓存比服务器更加靠近用户终端,因此可以更快速地响应和服务用户终端的文件请求,并且用户终端直接从本地缓存中读取内容不会受到其他用户终端的影响。
[0015] 优选地,第三步中,服务器发送编码后的文件内容,其中编码的方法为:
[0016] 取出用户终端集合的一个子集,对于该用户终端子集中每一个用户终端,它所请求的文件都有一部分内容存储在该用户终端子集除该用户终端外的其他所有用户终端中,将这部分内容称为待操作内容,将该用户终端子集中所有用户终端各自对应的待操作内容进行编码(异或)操作,其中,若这些内容大小不一,则按照最长的长度进行补零操作后再编码;对于用户终端的所有子集,都进行上述操作完成整个编码过程。
[0017] 优选的,第四步中,所述的用户终端可以从本地缓存处直接获取预存取的请求文件的内容,同时接收到服务器传输的编码内容,结合本地缓存预存取的其他文件的内容进行解码得到本地缓存未预存取的请求文件的内容。
[0018] 优选地,第五步中,所述适用于文件大小异构的情况的分布式编码缓存方法的优化问题结合了服务器所有文件的不同大小、用户终端的本地缓存的容量限制、以及用户终端的文件下载请求,并使用为了满足用户终端所有的文件下载请求,服务器处共享链路所需的码率最小的建模方法得到。
[0019] 更优选地,第五步中,建立适用于文件大小异构的情况的分布式编码缓存放置方法的优化问题如下:
[0020] 目标优化问题:
[0021] 约束条件:
[0022] 其中,优化变量为:P=[p1,p2,...,pn,...,pN]表示所有文件存储在用户终端的本地缓存中的比例,pn表示文件n存储在用户终端的本地缓存中的比例;用户终端集合每个用户终端 文件集合 每个文件 定义文件大小分布为V=[v1,v2,...,vn,...,vN],其中vn表示文件n的大小,归一化单位为F比特;用户终端的本地缓存大小为S,归一化单位为F比特;
[0023] 优化目标为:最小化在最差情况下为满足用户终端的文件下载请求服务器连接的共享链路所需的码率,其中,d=[d1,d2,...,dk,...,dK]表示用户终端的文件下载请求分布,dk表示用户终端k的文件下载请求,表示所有可能的用户终端文件下载请求情况;在用户终端的文件下载请求为d的情况下,服务器连接的共享链路需要传输的码率为[0024]
[0025] 其中, 表示用户终端集合的某一子集,并且子集的大小为i,j表示用户终端子集中的某一用户终端, 表示用户终端j请求下载的文件dj存储在用户终端的本地缓存中的比例, 表示用户终端j请求下载的文件dj的大小;
[0026] 约束条件为:用户终端的本地缓存限制条件,即任意一个用户终端的本地缓存所预存储的文件内容大小之和不超过其物理存储容量SF。
[0027] 优选地,第五步中,所述的分布式缓存内容放置方法在为各用户终端的本地缓存确定具体的缓存的各个文件的相应比例时,采用了快速高效的拉格朗日乘子法和序列二次规划算法,最终实现了各用户终端的本地缓存的分布式缓存内容的优化放置。
[0028] 更优选地,第五步中,所述的分布式缓存内容放置方法,具体步骤为:
[0029] (a)初始化:设置初始局部最优解为非负值,设置初始正定矩阵为初始近似Hesse矩阵,以及初始步数为0;
[0030] (b)迭代搜索步骤:根据当前的局部最优解,得到相应的二次规划子问题,解该子问题得到新的搜索步长;
[0031] (c)更新步骤:根据当前局部最优解和搜索步长得到新的局部最优解;利用Broyden-Fletcher-Goldfarb-Shanno(BFGS)算法得到新的近似Hesse矩阵。
[0032] (d)判定步骤:如果搜索步长不为零,则令搜索步数加一并返回迭代搜索步骤;否则,迭代停止并且将当前的局部最优解输出为最优结果。
[0033] 根据本发明的另一方面,提供一种用于实现上述方法的文件大小异构的分布式编码缓存放置系统,其特征在于,包括:
[0034] 服务器端,用于存放不同大小的文件,并收集所有用户终端的请求,通过共享链路发送编码后的文件内容;
[0035] 用户终端,该终端连接本地缓存,并根据本地缓存容量的限制预先缓存文件的子集;用户终端向服务器提出文件下载请求,通过从服务器得到的编码后的文件内容和本地缓存处得到相应的未编码文件内容解码得到请求的文件内容;
[0036] 分布式编码缓存放置优化模块,该模块根据服务器端所有文件的大小、用户终端处的本地缓存的容量限制以及用户终端的文件请求情况,建立适用于文件大小异构的分布式编码缓存放置放置的优化问题,采用快速高效的分布式编码缓存内容放置方法,得到第二步中各用户终端的本地缓存预存储各个文件的对应比例。
[0037] 与现有技术相比,本发明具有如下的有益效果:
[0038] 本发明针对服务器存储的文件大小异构的情况,提供了一种完全分布式的编码缓存技术,提高了用户终端的本地缓存的利用率,减小了为满足用户终端的视频下载请求服务器处共享链路的所需的最大码率,大大减轻了服务器出共享链路的负载。

附图说明

[0039] 通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0040] 图1为本发明一实施例的方法流程图;
[0041] 图2为本发明一实施例分布式编码缓存网络的示意图;
[0042] 图3为本发明一实施例分布式编码缓存放置方法的流程图;
[0043] 图4为本发明一实施例分布式编码缓存方法性能的示意图;
[0044] 图5为本发明一实施例的分布式编码缓存系统的结构框图。

具体实施方式

[0045] 下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
[0046] 如图1所示,一种适用于文件异构的分布式编码缓存方法的流程,具体实现包括如下步骤:
[0047] 第一步,在服务器处存放不同大小的文件;
[0048] 第二步,在用户终端的本地缓存处,根据用户终端的本地缓存容量的限制按照特定比例预先缓存文件的子集;
[0049] 第三步,在用户终端处,用户终端向服务器提出文件下载请求;在服务器处,服务器收集所有用户终端的请求并通过共享链路发送编码后的文件内容。
[0050] 第四步,在用户终端处,用户终端通过从服务器得到的编码后的文件内容和本地缓存处得到相应的未编码文件内容解码得到请求的文件内容;
[0051] 第五步,基于前四个步骤,采用参数:主服务器处所有文件的大小、用户终端处的本地缓存的容量限制、以及用户终端的文件请求情况,建立适用于文件大小异构的分布式缓存放置的优化问题,采用快速高效的分布式缓存内容放置方法,得到第二步中各用户终端的本地缓存预存储各个文件的对应比例。
[0052] 以下结合实施例,对各个步骤具体实现技术进行详细说明,以便理解本发明的实质,但是并不用于限定本发明的范围。
[0053] 1、服务器处文件的存储
[0054] 如图2所示,对分布式编码缓存网络进行实例分析,假设在服务器处存放了N个大小不同的文件,记为文件集合 所有文件的大小分布为V=[v1,v2,...,vn,...,vN],其中,vn为文件n的大小,归一化单位F比特。
[0055] 2、用户终端的本地缓存处的分布式缓存
[0056] 如图2所示,在网络中,一共有K个用户终端,用户终端集合记为每个用户终端都连接着一个本地缓存。这些本地缓存能够预先缓存一定比例的文件,由于它们比服务器更靠近用户终端,因此可以更快速地响应和服务用户终端的文件下载请求。
每个用户终端的本地缓存大小为S,归一化单位F比特。对于每个用户终端的本地缓存而言,它能够从服务器处预先获取并缓存的文件大小受到其物理存储容量SF比特的限制。定义文件存储比例分布P=[p1,p2,...,pn,...,pN]表示用户终端的本地缓存预先存储每个文件的比例,其中元素pn表示用户终端的本地缓存预存取的文件n的比例。也就是说,对于每个文件n,每个用户终端的本地缓存将独立并随机地存储其中的pn·vn·F比特。
[0057] 3、用户终端处的文件请求与服务器处的传输
[0058] 如上所说,网络中共有K个用户终端,用户终端集合为 用户终端可以向服务器提出文件下载请求。服务器收集到所有用户终端的请求d=[d1,d2,...,dk,...,dK],其中dk表示第k个用户终端的文件下载请求。根据用户终端请求的文件以及用户终端的本地缓存预存储的文件子集,服务器对需要传输的内容进行编码操作,并将编码后的内容通过共享链路发送给所有的用户终端。
[0059] 4、用户终端处的文件解码
[0060] 用户终端通过共享链路从服务器得到编码后的文件内容,结合用户终端本地缓存处预存储的文件内容,解码得到所请求文件的完整内容。
[0061] 5、建立适用于文件异构的分布式编码缓存放置的优化问题,提出快速高效的分布式缓存内容放置方法
[0062] 建立适用于文件异构的分布式编码缓存放置的优化问题如下(其中每个参数的含义可在上下文中对应获取):
[0063] 目标优化问题:
[0064] 约束条件:
[0065] 其中,优化变量为:P=[p1,p2,...,pn,...,pN]表示所有文件存储在用户终端的本地缓存中的比例。具体地,pn表示文件n存储在用户终端的本地缓存中的比例。用户终端集合 每个用户终端 文件集合 每个文件定义文件大小分布为V=[v1,v2,...,vn,...,vN],其中vn表示文件n的大小,归一化单位为F比特。
[0066] 优化目标为:最小化在最差情况下为满足用户终端的文件下载请求服务器连接的共享链路所需的码率,其中,d=[d1,d2,...,dk,...,dK]表示用户终端的文件下载请求分布,dk表示用户终端k的文件下载请求。 表示所有可能的用户终端文件下载请求情况。在用户终端的文件下载请求为d的情况下,服务器连接的共享链路需要传输的码率为[0067]
[0068] 其中, 表示用户终端集合的某一子集,并且子集的大小为i。j表示用户终端的子集中的某一用户终端, 表示用户终端j请求下载的文件dj存储在用户终端的本地缓存中的比例, 表示用户终端j请求下载的文件dj的大小。
[0069] 约束条件为:用户终端的本地缓存限制条件,即任意一个用户终端的本地缓存所预存储的文件内容大小之和不超过其物理存储容量SF比特。
[0070] 当用户终端数小于文件数时,对所述的优化问题进行松弛操作,可以得到松弛后的优化问题:
[0071] 目标优化问题:
[0072] 约束条件:
[0073] 其中,优化变量不变,仍为所有文件存储在用户终端的本地缓存中的比例,P=[p1,p2,...,pn,...,pN]。
[0074] 优化目标为:服务器连接的共享链路需要传输的码率经过松弛后的结果Rmax。松弛过程如下式所示:
[0075]
[0076] 其中,i表示用户终端集合的子集的大小, 表示大小为i的用户终端子集的个数。
[0077] 引入辅助变量Z=[z1,z2,...,zK],可以将上述优化问题转化为如下等价问题:
[0078] 目标优化问题:
[0079] 约束条件:
[0080]
[0081] 其中,辅助变量 由此可以得到第二个约束条件。第一个约束仍为用户终端的本地缓存限制条件。
[0082] 进一步的,采用拉格朗日乘子法,上述问题可转化为如下所示的无约束问题:
[0083]
[0084] 其中,μ和ηin∈η为两个约束条件相对应的拉格朗日乘子,L(P,Z,μ,η)为转化成的拉格朗日函数。
[0085] 如图4所示,给出改进的SQP(序列二次规划法)算法,快速高效地确定各用户终端的本地缓存存储文件的最优比例配置P。所述最优存储比例确定方法的执行过程如下(其中每个参数的含义可在上下文中对应获取):
[0086] (a)初始化:设置初始局部最优解(P0,Z0,μ0,η0)为非负值,初始正定矩阵B0,初始步数t=0。
[0087] (b)迭代搜索步骤(t=0,1,2,3,...):
[0088] 根据当前(Pt,Zt,μt,ηt)值得到二次规划子问题如下:
[0089] 目标优化问题:
[0090] 约束条件:
[0091]
[0092]
[0093] 其中, 和 分别代表一阶导数向量和二阶海森矩阵。 表示拉t t
格朗日函数L(P,Z,μ,η)的二阶海森矩阵,在实际计算中用近似矩阵B替代。下降方向δ=(Pt+1-Pt,Zt+1-Zt)T,相应的,针对变量P和Z,有下降方向 和
求解上述二次规划子问题得到新的下降方向δt。
[0094] (c)更新步骤:
[0095] 定义l1函数如下:
[0096]
[0097] 其中θ为正的惩罚参数。则选择搜索步长α使l1函数满足递减,即满足公式得到新的搜索步长后,通过公式(Pt+1,Zt+1)T=(Pt,Zt)T+α·δt可以得到新的局部最优解。
[0098] 利用Broyden-Fletcher-Goldfarb-Shanno(BFGS)算法,按照如下公式,利用上一步的近似矩阵Bt、下降方向δt,可得到新的近似矩阵Bt+1:
[0099]
[0100] 其中 为两个拉格朗日函数的导数之差。
[0101] (d)判定步骤:
[0102] 如果下降方向δt≠0,则令t=t+1并返回迭代搜索步骤;否则,停止迭代并且将当前的局部最优解输出为最优结果。
[0103] 当用户终端数大于文件数时,对所述的最初的优化问题进行松弛操作,可以得到相应的松弛后的优化目标:
[0104] 用优化目标R′max替代Rmax,采用相同的方法可以得到最优结果。
[0105] 图4示出了当服务器中文件大小为8F比特、4F比特、2F比特的文件数目为60、50、10,用户终端数目为5的情况下,随着总的缓存比例,即用户终端本地缓存的大小/所有文件的总大小的增长,共享链路中为了满足用户终端请求所需的码率的变化,本发明所述的分布式编码缓存方法的性能要优于在背景技术中所提到的采用相同的存储比例以及采用和文件大小成比例的存储比例的编码缓存方法。
[0106] 如图5所示,一种用于实现上述方法的文件大小异构的分布式编码缓存放置系统,包括:
[0107] 服务器端,用于存放不同大小的文件,并收集所有用户终端的请求,通过共享链路发送编码后的文件内容;
[0108] 用户终端,该终端连接本地缓存,并根据本地缓存容量的限制预先缓存文件的子集;用户终端向服务器提出文件下载请求,通过从服务器得到的编码后的文件内容和本地缓存处得到相应的未编码文件内容解码得到请求的文件内容;
[0109] 分布式编码缓存放置优化模块,该模块根据服务器端所有文件的大小、用户终端处的本地缓存的容量限制以及用户终端的文件请求情况,建立适用于文件大小异构的分布式编码缓存放置放置的优化问题,采用快速高效的分布式编码缓存内容放置方法,得到各用户终端的本地缓存预存储各个文件的对应比例。
[0110] 上述服务器端、用户终本地缓存以及分布式编码缓存放置优化模块,各个部分的具体实现技术与上述方法步骤对应,这对本领域技术人员来说是很容易理解的,在此不再赘述。
[0111] 综上,本发明针对服务器存储的文件大小不同的情况,建立了分布式编码缓存放置优化问题,并且相应地提供了分布式的缓存优化放置方法来确定各用户终端所需缓存的各个文件子集,最终实现为了满足用户终端的各种文件请求服务器处共享链路码率的最小化。本发明提高了各用户终端的本地缓存的利用率,有效减轻了服务器处共享链路的负载。
[0112] 以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。