一种集中式内容中心网络缓存决策方法与流程

文档序号:19399210发布日期:2019-12-13 18:58阅读:261来源:国知局
一种集中式内容中心网络缓存决策方法与流程

本发明属于新型网络架构之一内容中心网络领域。特别涉及内容中心网络领域中缓存系统的缓存决策问题。



背景技术:

在当今的信息社会中,互联网在我们的生活中扮演着至关重要的角色。internet取得的空前成功已经改变了并将继续改变着人们的生活方式,包括信息传递、工作、商业以及军事运作等。毫无疑问,各行各业无不受益于互联网的应用。然而,随着网络使用模式的改变,工业控制网、物联网、车联网、云计算技术的普及,传统的网络架构已经暴露出很多问题,如安全性、可扩展性、移动和基于物理地址的冗余传输等。

据统计,近年来视频流量占网络流量的比重越来越大,而且预计该比例将继续增长。思科visualnetworkingindextm针对2014至2019年的全球预测和互联网服务采用情况vni报告显示,随着互联网用户和设备数量持续增长、宽带速度不断提高以及视频浏览量的快速攀升,预计2019年全球互联网流量将达到2015年流量的64倍。在全球互联网范围内,人均流量从2014年的6gb达到2019年的18gb。其中,视频流量占互联网流量的比例从2014年的64%增长为2019年的80%。视频点播,高清视频等流量以惊人的速度增长。

然而当前的tcp/ip体系架构由于其存在大量传输冗余并不利于视频流量的分发。主机到主机的通信模式使得获取信息必须定位到特定的物理主机。这与人们关注信息的内容而非信息的位置的特点背道而驰。随着社交网络、商业推荐、云计算,物联网等应用技术的不断普及,传统网络的安全隐私服务不断承受受着严峻考验。即使人们不断从应用层上以打“补丁”的方式进行改进,实现了cdn,p2p网络以及解决安全问题,但并不能从本质上解决根本问题。因此,改变传统的tcp/ip网络架构势在必行。park研究中心的jacobson在2009年提出了内容中心网络ccn(content-centricnetworking)。它延用了信息中心网络的思想。即网络以信息为中心,以信息的名字为依据实现路由转发,而不再是以ip地址为依据实现路由转发。利用内网缓存在时间和空间上解耦了信息的发送者和接收者。

它将传统的主机到主机之间的通信模式转变为用户到内容的检索模式。这是因为人们并不再关心内容存放的位置,而更关心的是获取的信息内容。内容中心网络中有两个基本概念,一是基于名字的路由。该网络架构提出为每一个内容分别定义一个唯一的名字,甚至将每一个内容分为相同大小的块(chunk)并为他们分别定义一个唯一的名字,通过内容的名字来路由而非通过传统的ip地址进行路由。另一个概念是内网缓存。在数据传输的过程中,传统的基于ip地址的传输方式使得路由器并不能“记忆”已传送过的信息。当用户再次请求相同的内容时,路由器仍需通过上游节点向服务器请求信息。而内容中心网络由于其以内容命名的特点,使得路由器可以辨别传送的内容。内容中心网络中的路由器具有缓存能力,可以将传送的内容缓存下来。当用户再次请求时,请求包被路由到缓存了该请求内容的路由器时,路由器可以直接将数据包传送给用户,而不再需向服务器请求内容。从而减少了网络中的流量,减轻了服务器负载,缩短了用户的请求时延,提高用户体验质量。

内网缓存作为内容中心网络的特有属性,成为诸多研究者关注的热点。由于网络中路由器节点的缓存容量十分有限,相比网络中的内容信息容量是微不足道的,因此,如何最大化利用这些内网缓存资源,获得最大的网络效益是众多研究者研究的问题。传统的缓存策略为处处缓存或以概率(以不同的标准求得)缓存的方式来提高网络的性能,缓存网络的模型为任意拓扑,请求内容服从zipf分布,请求为泊松到达,各节点请求同一内容概率相同。



技术实现要素:

[发明目的]:本发明为了更高效地利用缓存资源和解决不同地区请求不均衡的问题而提出集中式的计算缓存决策的缓存系统框架及缓存算法。

[技术方案]:本发明的目的是通过如下措施来达到的:

本发明采用集中式的控制方式,在内容中心网络中放置一个集中式的控制器,负责收集网络中路由器各个节点的请求信息,该请求信息既包括路由器代表地区用户请求内容信息的概率又包括从其他路由器节点缓存命中失败转发经过该路由器的内容请求信息,路由器节点将所述请求信息传送到控制器。而已有研究(参见文献l.veltri,g.morabito,s.salsano,n.blefari-melazzi,anda.detti“supportinginformation-centricfunctionalityinsoftwaredefinednetworks,”[c]inieeeicc,june2012,pp.6645-6650.等)利用软件定义网络(sdn)实现了内容中心网络(ccn)的基本功能,如:数据命名,以内容转发,内网缓存。这为我们的集中式缓存决策框架提供了理论基础。

本发明重点考虑不同地区请求相同内容概率不同的场景(即地区请求不均衡的问题),假设网络中存在一个集中式的控制器,可以收集网络中任一节点(ccn路由器)的请求内容概率pij(指路由器i请求内容j的概率)。具体步骤如下:

步骤1、节点将所述请求信息传送到控制器;

步骤2、控制器根据收集的所述请求信息及网络拓扑信息计算每一节点在缓存容量有限的限制下,计算出每一节点应该缓存哪些内容,使得网络中产生的流量最少;

步骤3、控制器采用启发式算法为每一个路由器节点生成一个缓存决策列表,用于指示本节点应该缓存的内容;

步骤4、控制器将缓存决策列表下发到每一路由器中。当路由器有内容传送经过时,首先查找缓存决策列表,若该内容名字存在于列表中,则缓存该内容,否则,不缓存。随后,将内容转发到下一跳或者传送给本地用户。该集中式的内网缓存管理框架见图1。其中,关键组成部分为控制器中的计算模块。下面对步骤二实施的缓存决策解决方案进行详细说明。

1)内容中心网络中的路由器节点和节点之间的链路构成图g=(v,e)。每一节点vi都有缓存容量ci。网络中内容集合为f={f1,f2,...,fn}。由于内容中心网络中将文件分为相同大小的块进行传输,因此,这里假设,每一内容都具有相同大小,该大小等同于一个缓存单位。pij表示节点i请求内容j的概率。hii表示节点i请求内容j产生的网络流量。这里,用一跳表示一个单位的网络流量。hii实际上则为节点i请求内容j直到缓存命中时请求包转发经过的跳数。

通过以上说明,我们的目标是求得每一节点i应该缓存的内容集合xi={xi1,xi2,...,xin}。其中,xin为二进制变量。为1时表示内容n经过节点i时缓存该内容,为0表示不缓存。通过这样的缓存决策,使得网络流量最小。表示为i:

这里,aik表示节点i请求内容被转发到第k跳的节点。

显然,该问题是一个非线性问题。我们通过以下函数构造将其转换为一个线性规划问题。假设函数表示在节点i请求内容到第k跳的路径上缓存内容j的节点总数。则hij=max{(1-fijk)*(k+1)|k=0,1,2,3...}。令h′ij≥(1-fijk)*(k+1),(k=0,1,2,3...),我们构造另一目标函数为ii:

该问题是一整数线性规划问题,观察可知i和ii有相同的解。

因为若假设x*,h*是i的最优解。其目标值为y。则有,

这里,所以,x*,h*为满足ii的一个解。其目标值为y。

另一方面,假设,x’,h’为ii的最优解,目标值为y’。则有h′ij≥(1-fijk)*(k+1),i∈v,j∈f,k=0,1,2,...,同样,

此时,若h′ij>(1-fijk)*(k+1),i∈v,j∈f,k=0,1,2,...,则比h′ij=(1-fijk)*(k+1),i∈v,j∈f,k=0,1,2,...目标值大,所以,必有h′ij=(1-fijk)*(k+1),i∈v,j∈f,k=0,1,2,...。根据函数构造过程知,

所以,x’,h’为满足i的最优解,其目标值为y’=y。故而x*,h*与x’,h’为同一解。i和ii有相同的解,据此我们可以用求解整数线性规划问题的工具包来求解该缓存决策问题。

2)以下说明本发明提出的具体启发式求解方法。

步骤1、利用解决k-means问题的方法,计算有c(c从1到|v-1|)个缓存节点时对应的c个缓存节点的最佳位置。并根据从c-1到c增加的节点判断网络中节点的“重要性”。显然,排序为0号节点为最重要的节点。

步骤2、对于第i个缓存节点,用贪婪算法求得当前使网络流量最小的内容编号j。将内容j加入第i个节点的缓存列表。直到第i个节点的缓存列表满。

步骤3、重复对第i+1个节点进行步骤2的计算,直到所有节点的缓存列表全部生成。

[有益效果]:本发明的有益效果是:内容中心网络中现有的缓存方法都是基于分布式的,在各地请求分布一致的情况下的实施方案。而本发明提出集中式的内网缓存管理框架。旨在解决地区请求内容分布不均匀的情况下,使用本发明提出的缓存决策策略,提高缓存资源利用率,提升网络性能,降低用户请求延迟。

附图说明

图1为内容中心网络缓存系统框架图;

图2为内容中心网络拓扑图

具体实施方式

以下结合附图和具体实例对本发明做具体的介绍。

如图2,网络中有一个包含所有内容的内容源(服务器),有3个路由器a,b,c,他们分别具有相同缓存容量ca=cb=cc=2。这三个路由器代表当地用户请求内容的同时,a路由器还转发来自b、c的缓存不命中转发请求。内容集合为f={f1,f2,f3,...,f7,f8}。路由器统计他们各自请求内容的概率(这里用次数表示)。a为b为c为

步骤1、节点将所述请求信息传送到控制器;

步骤2、控制器根据收集的所述请求信息及网络拓扑信息进行计算,求得网络最小流量时的各个路由器缓存内容;

步骤3、控制器采用启发式算法为每一个路由器节点生成一个缓存决策列表;

步骤4、控制器将缓存决策列表下发给路由器。当有数据内容经过路由器时,首先查找该内容名字是否存在于缓存决策列表中。若存在,则缓存该内容,否则,不缓存。而后,对数据进行转发或者发送给当地用户等处理。

其中,步骤2中控制器具体计算过程如下:

步骤2.1根据k-means问题的解决方法,计算有c(c从1到|v-1|)个缓存节点时对应的c个缓存节点的最佳位置。并根据从c-1到c增加的节点判断网络中节点的“重要性”。显然,排序为0号节点为最重要的节点。在本网络拓扑中,计算得到a为最重要节点,排序为0,b、c为次重要节点,排序分别为1,2。

步骤2.2对于第0号缓存节点a,用贪婪算法求得当前使网络流量最小的内容编号j。将内容j加入a节点的缓存列表。直到a节点的缓存列表满。a节点的缓存列表为{f1,f2}。

步骤2.3依次计算1,2号缓存节点b、c。其缓存列表分别为{f3,f4},{f5,f6}。至此,所有节点的缓存列表全部生成。计算过程结束。

上面对本发明作了详细的说明,但是本发明并不限于上述的实施方式,在本领域的技术人员可以根据自己所具备的知识,对本发明做各种变化以达到更优的效果。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1