CN106936914B - 一种基于节点位移和lfu记录的缓存更新方法及网络 - Google Patents
一种基于节点位移和lfu记录的缓存更新方法及网络 Download PDFInfo
- Publication number
- CN106936914B CN106936914B CN201710157820.5A CN201710157820A CN106936914B CN 106936914 B CN106936914 B CN 106936914B CN 201710157820 A CN201710157820 A CN 201710157820A CN 106936914 B CN106936914 B CN 106936914B
- Authority
- CN
- China
- Prior art keywords
- node
- cache
- content
- lfu
- updating
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
一种基于节点位移和LFU记录的缓存更新方法及网络。一种适用于移动网络的流行内容缓存更新方法、通讯装置及网络,根据网络中节点的位移情况,结合LFU缓存更新方法,对节点中缓存的流行内容进行部分更新。本申请所提供的缓存更新方法能够减少更新缓存所消耗的数据流量。针对移动网络中,不同区域内流行内容差异明显的特点,在进行缓存更新时将节点位移情况纳入考量。尤其,考虑到节点自身资源有限,本方法仅仅利用节点能够轻松获取的位置信息、接收到的内容请求、时间等信息,结合LFU记录,建立内容价值模型,实时更新缓存,能够在不产生额外的计算负荷的情况下,提高节点缓存中存储数据的有效性。
Description
技术领域
本发明涉及内容缓存与分发技术,尤其,涉及一种适用于移动网络的缓存内容更新方法及网络。
背景技术
随着移动数据业务的迅速增长,出现了基于D2D(Device to Device,设备到设备)通信的内容缓存与分发技术。该技术的特点是,在集合内的各个节点中,缓存在该集合内普遍关注的流行内容,当该集合内的某个节点需要某一内容的时候,与其周围已缓存该内容的节点建立D2D链路,通过复用合法蜂窝用户的信道获取该内容。如此一来,与传统的内容下载方法相比具有如下优点:第一,不经过基站的转发,减少了信息的传输时延;第二,直传链路有更好的信道状况和更高的下载速率;第三,由于复用了合法蜂窝用户的信道,有更高的频谱利用率。
基于D2D通信的内容缓存与分发技术也有其应用上的局限性。首先,节点的缓存空间有限,因此,缓存内容的选择极其重要。如果所缓存的内容周围节点并不关注,那么该内容的缓存反而会造成网络资源的浪费。其次,缓存内容被关注的程度是随时间和节点位置不断变化的,也就是说,新的内容会不断的出现,旧的内容会逐渐变得不再受到关注;另一方面,在同一时刻,不同位置的用户群体所关注的内容也会有所差别;而且,移动节点具有个人偏好,使得其具有一定社会属性,缓存节点的移动会导致周围节点的网络拓扑发生变化。因此,缓存内容的及时准确更新,成为本领域的研究重点。
现有的研究主要集中在缓存内容的布设与选择上。而相较而言,关于缓存内容筛选方法的研究还很有限。其中,利用LFU(Least Frequency Used)记录对缓存内容进行更新方法较为流行。LFU记录主要包括接收到的请求的内容ID(identification)以及接收到各接收到的请求的内容ID(identification)的次数。LFU中,这些数据的受关注程度可直接反应为内容最近一次的接收时间。1970年,在《IBM Systems Journal》上发表的论文Evaluation techniques for storage hierarchies中,提出了一种MIN算法。论文中证明了该算法被证明是最优的离线缓存更新算法。但是,由于在当今的移动网络中引入了D2D通信技术,这种情况下移动节点具有了个人偏好和社会属性,节点的移动性对缓存更新算法的最优性产生了很大的影响。由于网络中的移动节点时刻产生的移动行为,整个网络的拓扑也在时刻发生着变化,用户之前所收集到的关于流行内容的信息在移动之后的新的网络环境下参考价值有可能大为降低。(本发明中所考虑的用户移动性主要指用户位置的变化。)因此,在设计内容缓存更新方法时,将用户的移动性纳入考量显得尤为必要。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种基于节点位移和LFU记录的缓存更新方法、应用所述缓存更新方法的通信装置及移动网络。
所述缓存更新方法,包括以下步骤:
第一步,初始化:确定缓存更新频率为K,确定缓存更新位移阈值X,确定本节点缓存空间容量为S,并根据所述缓存空间容量S确定本节点LFU记录数目为M,确定缓存的价值阈值γ(用来判断缓存中的对应内容是否应该更新),γ∈(0,1);
第二步,接收内容下载请求,记录本节点当前位置坐标,计算并保存本节点当前位置与上一个位置之间的位移数据,合并本节点接收到的内容重复的所述下载请求,根据合并后的内容下载请求更新所述LFU记录,同时,比较本节点当前位移距离是否超出缓存更新位移阈值X,若超过则跳转至第四步,否则跳转至第三步;
第三步,在位移次数未到达所述缓存更新频率K时重复第二步,位移次数达到缓存更新频率K时则先将位移次数清零然后跳转至第四步;
第四步,计算本节点接收的所述内容下载请求中,每一个内容cm的价值Pm,Pm∈(0,1),然后跳转至第五步;
所述内容价值Pm=α1α2α3v_lfum;
其中,m表示所述内容下载请求中所述内容cm的ID编号,m≤M;
位移波动因子其中,(x0,y0)表示该节点在本周期的初始位置,j表示本节点第j次移动,(xj,yj)表示本节点第j次移动后所处位置的坐标,xj表示本节点第j次移动后所处位置的横坐标,yj表示本节点第j次移动后所处位置的纵坐标,K表示缓存更新频率,即本节点每移动K次后需要进行缓存更新必要性的判断(即计算每个内容的价值);
第五步,更新缓存内容:依次判断所述每一个内容cm的价值Pm,若所述内容cm的价值Pm大于所述价值阈值γ,则不进行缓存更新;否则,进行缓存更新。其中,所述价值阈值γ由用户设定,γ∈[0,1]。
其中,所述节点中,每一个内容cm,均对应一个ID编号m(m≤M),一条LFU记录,以及一个价值Pm。
进一步,所述缓存更新方法,第二步中,更新所述LFU记录的步骤如下:
步骤211,每接收到一个所述内容下载请求后,先检索当前LFU记录,若当前LFU记录中已记载有所述内容下载请求所对应的内容cm,则将所述LFU记录中所述内容cm所对应的下载请求的次数fm加一;否则,跳转至步骤212;
步骤212,删除所述LFU记录中请求次数最少的内容,然后将所述内容cm记入所述LFU记录,所述内容cm所对应的请求次数fm记为1。
进一步,所述缓存更新方法,第五步中,进行缓存更新的步骤如下:
步骤501,判断本节点缓存空间容量是否足够存放所述内容cm,若容量足够则跳转至步骤502;否则跳转至步骤503;
步骤502,在本节点缓存空间内缓存所述内容cm,更新缓存列表;
步骤503,按照请求次数由多至少的顺序依次删除本节点缓存空间内的内容,直至剩余的缓存空间足够存放所述内容cm,然后在本节点缓存空间内缓存所述内容cm,更新缓存列表。
其中,所述缓存更新方法,所述缓存列表包括每一个所述内容cm的ID编号、每一个所述内容cm的缓存地址以及每一个所述内容cm的缓存时间中的一个或多个。
其次,为实现上述目的,还提出一种基于节点位移和LFU记录的缓存更新方法的通信装置,包括移动网络接口、LFU记录存储模块、缓存单元以及控制模块,其特征在于,所述控制模块还包括缓存更新判断模块;
所述移动网络接口构成所述通信装置的输入端与输出端,所述移动网络接口的数据端同时连接所述控制模块、所述LFU记录存储模块的输入端以及所述缓存单元的输入端,所述控制模块还同时连接所述LFU记录存储模块以及所述缓存单元,所述缓存单元的输出端连接所述移动网络接口的数据端;
所述移动网络接口用于将信号接收端接收到的信号转化为所述通信装置能够处理的数据内容cm,同时将所述缓存单元输出的所述数据内容cm转化为移动网络信号并发送;
所述LFU记录存储模块用于记录所述缓存单元内每一个数据内容cm的请求次数fm;
所述缓存单元用于根据所述控制模块的控制指令,缓存所述移动网络接口接收到的所述数据内容cm;并根据所述控制模块的控制指令,向所述移动网络接口输出其缓存的相应数据内容;
所述控制模块用于响应所述移动网络中的数据内容请求,控制所述缓存单元输出相应的数据内容;所述控制模块同时用于根据其内缓存更新判断模块,控制所述缓存单元更新相应的数据内容cm;
所述缓存更新判断模块用于读取所述LFU记录存储模块中的记录,结合所述移动网络中记录的所述通信装置的位置信息,控制所述缓存单元更新相应的数据内容cm。
同时,为实现上述目的,还提出一种基于节点位移和LFU记录的缓存更新方法的移动网络,包括至少一个具有缓存功能的移动节点,其特征在于,所述移动网络中的每个移动节点进行缓存更新的步骤如下:
步骤d-1,计算本移动节点的位移波动因子然后跳转至步骤d-2;其中,j表示本移动节点第j次移动,(xj,yj)表示本移动节点第j次移动后所处位置的坐标,xj表示本移动节点第j次移动后所处位置的横坐标,yj表示本移动节点第j次移动后所处位置的纵坐标,K表示缓存更新频率,即本移动节点每移动K次后需要判断是否有必要更新相应缓存;
步骤d-3,计算本移动节点的位移趋势因子然后跳转至步骤d-4;其中,(xK,yK)表示本节点最后一次移动后所处位置的坐标,xK表示本节点最后一次移动后所处位置的横坐标,yK表示本节点最后一次移动后所处位置的纵坐标;
步骤d-5,计算本移动节点接收的所述内容下载请求中,每一个内容cm的价值Pm=α1α2α3v_lfum,然后跳转至步骤d-6;
步骤d-6,依次判断本移动节点接收的所述每一个内容cm的价值Pm,若所述内容cm的价值Pm大于价值阈值γ,则不进行缓存更新;否则,进跳转至步骤d-7;
步骤d-7,判断本移动节点缓存空间容量是否足够存放所述内容cm,若容量足够增在本移动节点缓存空间内缓存所述内容cm,更新缓存列表;否则,先按照请求次数由多到少的顺序依次删除本移动节点缓存空间内的内容,直至剩余的缓存空间足够存放所述内容cm,然后在本移动节点缓存空间内缓存所述内容cm,更新缓存列表。
进一步,上述移动网络,所述每个移动节点在每次接收到内容下载请求后,均按照如下步骤进行响应:
步骤a,记录本移动节点ni当前位置坐标,计算并保存本节点当前位置与上一个位置之间的位移数据,合并本移动节点接收到的内容重复的所述下载请求,然后根据合并后的内容下载请求更新所述LFU记录,跳转至步骤b;
步骤b,查询本移动节点内缓存的内容,根据所述下载请求,向依次向所述移动网络中的移动节点发送该移动节点所请求的内容,同时比较本节点当前位移距离是否超出缓存更新位移阈值X,若超过则跳转至步骤d,否则,跳转至步骤c;
步骤c,判断本移动节点的位移次数是否达所述缓存更新频率K,若本移动节点的位移次数达到K次,则先将位移次数清零然后跳转至步骤d;否则,回到步骤a;
步骤d,按照所述步骤d-1至所述步骤d-7的顺序更新缓存,跳转至步骤e;
步骤e,判断是否接收到新的内容下载请求,若是,则跳转至步骤a;否则,结束。
进一步,上述移动网络,所述缓存更新频率K由所述移动网络统一设定,或由每一个所述移动节点自行设定。所述移动节点的位置坐标由所述移动蜂窝网络提供,或由所述移动节点自行计算确定。所述各移动节点或所述移动蜂窝网络在各节点接收到内容下载请求的同时,确认所述移动节点的坐标,记录所述各移动节点的移动次数以及各移动节点每次移动的坐标。
有益效果
本发明,针对移动网络的社会属性,尤其移动网络中间隔较远的节点关注的流行内容不同的特点,综合考量节点的位移情况,并结合LFU缓存记录,建立价值模型,通过价值Pm=α1α2α3v_lfum反应节点各缓存内容的LFU价值v_lfum以及节点位置移动而给该节点缓存内容带来的需求关系变化。当节点位移超过缓存更新位移阈值X时,自动筛选缓存,对综合考量后价值较小的缓存内容进行有针对性的更新。同时,由用户自行设定缓存更新频率K,在节点位移次数每记满K次时均对缓存内容进行筛选。这样的设计能够保证缓存内容能够随用户位置变化而得到及时更新。而且,由于用户可以自行设置缓存更新位移阈值X和缓存更新频率K,在用户不希望产生额外流量的情况下,能够自主对更新频率进行设置,更为人性化。
尤其,本发明所提供的价值模型中,采用三个位移因子来度量节点的位移状况和趋势,三个位移因子分别是:移波动因子α1,表征本周期内各次位移围绕初始位置移动的程度,其值域为α1∈(0,1],其值接近1表明节点在围绕着初始位置进行移动,其值接近0表明节点各次移动后与初始位置的距离差距较大;位移趋势因子α2,表征在周期末要进行缓存更新时节点位置的移动趋势,其值域是α2∈(0,1],其值接近1表明节点正从远离初始位置的地方往回移动;其值接近0说明该节点有较大概率在下个周期继续远离本周期的初始位置;位移幅度因子α3,表征各次位移的绝对幅值,其值域是α3∈(0,1],位移幅度越大,α3的值越小。由于同时考量了三种位移因子,本发明在对缓存内容进行筛选时,更为精确,且能够贴合用户位移特点。计算出缓存中每一个内容cm的价值Pm后,根据所述每一个内容cm的价值Pm,能够根加有针对性地筛选出当前缓存中价值较低的内容,将这些价值较低的内容进行更新。
进一步的,考虑到节点够获取信息的能力以及计算能力有限,本方法仅仅利用节点自身所拥有的节点位置坐标、接收到的内容请求、时间等信息,即可根据所述内容价值模型(即内容价值Pm计算公式Pm=α1α2α3v_lfum),对本节点缓存中的每一个内容进行价值评估。由于计算参数简单易得,且运算量小。因此,本发明可根据实际需求设定缓存更新频率,实现对缓存内容的及时更新。本发明在控制额外计算开销的同时,能够有效提高缓存内容被请求的概率,使得缓存利用率更高。
而且,由于移动网络各节点之间存在一定的社交关系,距离较远的节点之间社交关系较弱,共同关注的信息较少,本方法通过缓存更新位移阈值X以及节点位移次数判断节点是否进入到新环境,从而及时对自身缓存内容进行筛选和更新,迅速适应新的网络环境。由于网络中每个节点都能够根据网络环境及时更新自身缓存内容,采用本方法的移动网络中,各节点缓存内容均能够保证一定的价值与命中率。因而,本发明所提供的移动网络能够准确并迅速的响应其内各节点的数据请求。
与传统的只考虑内容缓存方案设计的方法不同,本发明考虑的重点是对已缓存的内容进行筛选,从而进行有限的更新(而不是像传统的方法一样,对整个缓存空间进行重新缓存)。传统的清空缓存空间进行重新缓存的方法,尽管可能有着较高的缓存命中率,但是其所需要付出的计算开销极大:不仅需要收集大量的信息,还需要下载大量流行内容填满整个缓存空间。而本发明,每次只筛选一部分内容进行更新,可以大大减少内容缓存更新的工作量。进一步,由于仅仅通过节点的位移次数就可以进入到更新判断的步骤,本方法对节点位移状态的变化会更为敏感。这种设计同样可以有效减小节点的运算负荷(节点每次最多处理K个位移数据即可),更适合需要经常进行更新的小数据量信息或零碎的热点信息。采用本方法更新后缓存内容的利用率、准确率会更高。
由于本网络中各节点缓存数据的利用率更高,在一次更新后,网络周围节点均能够通过该节点获取相应的数据,网络各节点获取相同信息所消耗的流量资源会大大减少。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明实施例的基于节点位移和LFU记录的缓存更新步骤流程图。
图2为应用本发明的通信场景示意图。图示所述典型的引入D2D通信技术的移动网络中,随着用户的移动,本节点周围网络拓扑时刻变化。由于移动用户具备一定的社会属性,当节点位置移动时,网络环境中“流行”的内容也相应变化。
图3为实施例中LFU记录的结构示意图。
图4为实施例中网络中一个节点的装置结构示意图。
图5为实施例中考虑节点位移的缓存更新方法与不考虑节点位移的缓存更新方法的命中率统计图。方案1是指本方案中α1=α2=α3=1的特殊情况,即不考虑缓存节点的节点位移。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
在图2所示的通信场景中,前一时刻,用户1与周围四个用户2、3、4、7距离较近,可以建立D2D链路直接共享内容;后一时刻,由于用户1移动,其只能与四个用户3、5、7、9建立D2D链路直接共享内容。但此时,用户1与用户5和用户9之间不存在社交关系或者相互间关系较差,用户1与用户5和用户9之间不存在D2D通信链路共享内容,此外,由于用户2与用户4不在用户1可直接通信的范围内,用户1与用户2和用户4之间的通信链路也不再存在。由图可知,用户的移动性会使得其周围的网络拓扑产生很大的变化,直接影响到其缓存方案的有效性。一般,在节点位置发生很大变化的情况下,节点内部现有的缓存内容并不一定能够为新环境中的其他节点所需要。因此,在设计缓存内容更新策略时将用户移动情况纳入缓存更新的考量因素显得十分有必要。
本发明考虑到用户的位置变化,联合用户自身的LFU请求记录,在引入D2D通信技术的移动蜂窝网络中实现对缓存内容的有效管理。本方案能够在较少内容更新工作量的前提下,有效提高缓存内容命中率。
具体更新流程参见图1:
第一步,初始化:确定缓存更新频率K=20,确定缓存更新位移阈值X=10km,确定本节点缓存空间容量为S,并根据所述缓存空间容量S确定本节点LFU记录数目为M=30,确定价值阈值γ=0.02;
第二步,每次接收到内容下载请求后,每个节点均记录本节点当前位置坐标,计算并保存本节点当前位置与上一个位置之间的位移数据,将节点当前位置的坐标与上一次记录的位置坐标比较,作为一次位移,位移次数加1;合并本节点接收到的内容重复的所述下载请求,根据合并后的内容下载请求更新所述LFU记录,同时,比较本节点当前位移距离是否超出缓存更新位移阈值X,若超过则跳转至第四步,否则跳转至第三步;
第三步,在位移次数未到达所述缓存更新频率K时重复第二步,位移次数达到缓存更新频率K时则先将位移次数清零然后跳转至第四步;
第四步,计算本节点接收的所述内容下载请求中,每一个内容cm的价值Pm,Pm∈(0,1),然后跳转至第五步;
所述价值Pm=α1α2α3v_lfum;
其中,m表示所述内容下载请求中所述内容cm的ID编号,m≤M;
位移波动因子其中,(x0,y0)表示该节点在本周期的初始位置,j表示本节点第j次移动,(xj,yj)表示本节点第j次移动后所处位置的坐标,xj表示本节点第j次移动后所处位置的横坐标,yj表示本节点第j次移动后所处位置的纵坐标,K表示本节点移动总次数;
第五步,更新缓存内容:依次判断所述每一个内容cm的价值Pm,若所述内容cm的价值Pm大于所述价值阈值γ,则不进行缓存更新;否则,进行缓存更新,其中,所述价值阈值γ由用户设定,γ∈[0,1],这里取0.02。
具体到一个引入D2D通信技术的移动蜂窝网络中。该网络中存在N个具有缓存功能的移动节点,分别表示为n1,…,ni,…nN,例如,N=30,移动节点n1,…,ni,…n30的缓存空间容量为Si=15,其中,i表示第i个移动节点,n表示移动节点,ni表示第i个移动节点的名称,S表示缓存空间,Si表示第i个移动节点的缓存空间容量。此外,每个移动节点按照图3所示的规则存储LFU记录。这里的LFU记录主要包括接收到的请求的内容ID以及请求的次数,记录可按照请求次数由多至少排序。记录中所记载的内容的数量通常需大于节点所能够缓存的内容数量,这样可以在节点位置变化巨大的情况下有效地对整个缓存进行及时更新。任意时刻t,移动节点ni接收到的请求为request_rcvi。具体步骤如下:其中,所述节点中,每一个内容cm,均对应一个ID编号,一条LFU记录,以及一个价值数值Pm。
第一步,移动节点ni首先进行初始化,确定缓存更新频率为K=20,确定缓存更新位移阈值X=10km,确定本节点缓存空间容量S,并根据所述缓存空间容量S确定本节点LFU记录数目为M=30,确定价值阈值γ=0.02;
第二步,当所述移动节点ni接收到内容下载请求的集合request_rcvi后,记录本节点当前位置坐标,计算并保存本节点当前位置与上一个位置之间的位移数据,合并本节点接收到的内容重复的所述下载请求,根据合并后的内容下载请求更新所述LFU记录,同时,比较本节点当前位移距离是否超出缓存更新位移阈值X,若超过则跳转至第四步,否则跳转至第三步;
具体更新所述LFU记录的步骤如下:
步骤211,每接收到一个所述内容下载请求后,先检索当前LFU记录,若当前LFU记录中已记载有所述内容下载请求所对应的内容cm,则将所述LFU记录中所述内容cm所对应的下载请求的次数fm加一;否则,跳转至步骤212;
步骤212,删除所述LFU记录中请求次数最少的内容,然后将所述内容cm所对应的请求次数fm记为1,添加入LFU记录中。
本步骤中,所述移动节点ni最多保留M=30个请求记录,并记录收到请求内容cm的次数fm。
第三步,在位移次数未到达所述缓存更新频率K时重复第二步,每当位移次数达到缓存更新频率K时则先将位移次数清零然后跳转至第四步;
第四步,计算本节点接收的所述内容下载请求中,每一个内容cm的价值Pm,Pm∈(0,1),然后跳转至第五步;
其中,所述价值Pm=α1α2α3v_lfum;
其中,m表示所述内容下载请求中所述内容cm的ID编号,m≤M;
位移波动因子表征本周期内各次位移围绕初始位置移动的程度,其值域为α1∈(0,1];其中,(x0,y0)表示该节点在本周期的初始位置,j表示本节点第j次移动,(xj,yj)表示本节点第j次移动后所处位置的坐标,xj表示本节点第j次移动后所处位置的横坐标,yj表示本节点第j次移动后所处位置的纵坐标,K表示统计本节点移动次数的上限,也就是本节点的缓存更新频率;
位移趋势因子表征在周期末要进行缓存更新时节点位置的移动趋势,其值域是α2∈(0,1],其值接近1表明节点正从远离初始位置的地方往回移动;其值接近0说明该节点有较大概率在下个周期继续远离本周期的初始位置。其中,(xK,yK)表示本节点最后一次移动后所处位置的坐标,xK表示本节点最后一次移动后所处位置的横坐标,yK表示本节点最后一次移动后所处位置的纵坐标;
第五步,更新缓存内容:依次判断所述每一个内容cm的价值Pm,若所述内容cm的价值Pm大于所述价值阈值γ,则不进行缓存更新;否则,进行缓存更新,其中,所述价值阈值γ由用户设定,本实施例中,γ=0.02。具体而言,此处进行缓存更新的步骤如下:
步骤501,判断本节点缓存空间容量是否足够存放所述内容cm,若容量足够则跳转至步骤502;否则跳转至步骤503;
步骤502,在本节点缓存空间内缓存所述内容cm,更新缓存列表;
步骤503,按照请求次数由少到多的顺序依次删除本节点缓存空间内的内容,直至剩余的缓存空间足够存放所述内容cm,然后在本节点缓存空间内缓存所述内容cm,更新缓存列表。
如图5所示,本方法有着较高的缓存命中率,而方案1由于不考虑缓存节点的位置移动,过多依赖于偏离自己较远的位置处收到的内容下载请求,以致对缓存内容更新产生负面影响,导致其中缓存的有效率极不稳定,无法满足缓存转发机制的要求,且浪费网络资源。
同时,本实施例还提供一种利用上述基于节点位移及LFU更新规则的缓存更新方法的通信装置。包括:移动网络接口、LFU记录存储模块、缓存单元及控制模块,其特征在于,所述控制模块包括缓存更新判断模块;
所述移动网络接口构成所述通信装置的输入与输出端,所述移动网络接口的数据端同时连接所述控制模块、所述LFU记录存储模块的输入端以及所述缓存单元的输入端,所述控制模块还同时连接所述LFU记录存储模块以及所述缓存单元,所述缓存单元的输出端连接所述移动网络接口的数据端;
所述移动网络接口用于将信号接收端接收到的信号转化为所述通信装置能够处理的数据内容cm,同时将所述缓存单元输出的所述数据内容cm转化为移动网络信号并发送;
所述LFU记录存储模块用于记录所述缓存单元内每一个数据内容cm的请求次数fm;
所述缓存单元用于根据所述控制模块的控制指令,缓存所述移动网络接口接收到的所述数据内容cm;并根据所述控制模块的控制指令,向所述移动网络接口输出其缓存的相应数据内容;
所述控制模块用于响应所述移动网络中的数据内容请求,控制所述缓存单元输出相应的数据内容;所述控制模块同时用于根据其内缓存更新判断模块,控制所述缓存单元更新相应的数据内容cm;
所述缓存更新判断模块用于读取所述LFU记录存储模块中的记录,结合所述移动网络中记录的所述通信装置的位置信息,控制所述缓存单元更新相应的数据内容cm。
同时,还提供一种由上述通信装置构成的移动网络。所述网络包括至少一个具有缓存功能的移动节点,其特征在于,所述移动网络中的每个移动节点在每次接收到内容下载请求后,均按照如下方式工作:
步骤a,记录本移动节点ni当前位置坐标,计算并保存本节点当前位置与上一个位置之间的位移数据,合并本移动节点接收到的内容重复的所述下载请求,然后根据合并后的内容下载请求更新所述LFU记录,跳转至步骤b;所述的上一个位置为本移动节点上一次接收到内容下载请求时节点所处的位置;
步骤b,查询本移动节点内缓存的内容,根据所述下载请求,向依次向所述移动网络中的移动节点发送该移动节点所请求的内容,同时比较本节点当前位移距离是否超出缓存更新位移阈值X,若超过则跳转至步骤d,否则跳转至步骤c;
步骤c,判断本移动节点的位移次数是否达所述缓存更新频率K,若达到,则先将位移次数清零然后跳转至步骤d;否则,回到步骤a;
步骤d,按照所述步骤d-1至所述步骤d-7的顺序更新缓存(其中,步骤d-1、步骤d-2、步骤d-3、步骤d-4之间的顺序可以互换,也可同时在相应的运算单元内并列执行),跳转至步骤e:
步骤d-1,计算本移动节点的位移波动因子然后跳转至步骤d-2;其中,(x0,y0)表示该节点在本周期的初始位置,j表示本移动节点第j次移动,(xj,yj)表示本移动节点第j次移动后所处位置的坐标,xj表示本移动节点第j次移动后所处位置的横坐标,yj表示本移动节点第j次移动后所处位置的纵坐标,K为缓存更新频率,即统计的本移动节点移动的总次数;
步骤d-3,计算本移动节点的位移趋势因子然后跳转至步骤d-4;其中,(xK,yK)表示本节点最后一次移动后所处位置的坐标,xK表示本节点最后一次移动后所处位置的横坐标,yK表示本节点最后一次移动后所处位置的纵坐标;
步骤d-5,计算本移动节点接收的所述内容下载请求中,每一个内容cm的价值Pm=α1α2α3v_lfum,然后跳转至步骤d-6;
步骤d-6,依次判断本移动节点接收的所述每一个内容cm的价值Pm,若所述内容cm的价值Pm大于价值阈值γ,则不进行缓存更新;否则,进跳转至步骤d-7;其中,所述价值阈值γ由用户设定,γ=0.02;
步骤d-7,判断本移动节点缓存空间容量是否足够存放所述内容cm,若容量足够增在本移动节点缓存空间内缓存所述内容cm,更新缓存列表;否则,先按照请求次数由少到多的顺序依次删除本移动节点缓存空间内的内容,直至剩余的缓存空间足够存放所述内容cm,然后在本移动节点缓存空间内缓存所述内容cm,更新缓存列表。
步骤e,判断是否接收到新的内容下载请求,若是,则跳转至步骤a;否则,结束。
上述的缓存更新频率K可由所述移动网络统一设定,或由每一个所述移动节点自行设定。所述移动节点的位置坐标由所述移动蜂窝网络提供,或由所述移动节点自行计算确定。
本发明技术方案的优点主要体现在:将移动节点的位移因子纳入D2D移动网络缓存更新的考量范围。通过三种具有不同特性的位移因子,以及相应的缓存更新启动机制(缓存更新位移阈值X),判断缓存中的哪些内容需要更新。与传统方法中只考虑内容缓存方案设计的研究场景不同,本发明只对已缓存的内容进行有选择性的更新,便可有效提高缓存内容的有效性。
本发明能够在缓存命中率和系统开销之间达到很好的平衡,且可在一定程度上由移动网络用户根据其使用网络资源的具体情况,自主决定更新比例。尤其,本发明在进行更新判断时只需掌握节点自身所拥有的信息,例如节点位置变化、所接收到的内容请求、时间等信息,通过简单运算即可确定相应信息的需求情况,删除需求量较少的缓存内容。
尤其值得注意,本实施例中按照位移次数判断是否对缓存进行筛选更新。这样直接通过节点位置控制缓存更新,对数据量较小但调用频繁的流行内容而言,这样的设计能够保证节点内缓存的数据及时更新(通常这类数据具有较强的社交属性,对节点位置关系更加敏感,通常只在小范围节点集合内有效),始终保持一定的有效率。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种基于节点位移和LFU记录的缓存更新方法,其特征在于,步骤包括:
第一步,初始化:确定缓存更新频率K,确定缓存更新位移阈值X,确定本节点缓存空间容量为S,并根据所述缓存空间容量S确定本节点LFU记录数目为M,确定价值阈值γ;
第二步,接收内容下载请求,记录本节点当前位置坐标,计算并保存本节点当前位置与上一个位置之间的位移数据,合并本节点接收到的内容重复的所述下载请求,根据合并后的内容下载请求更新所述LFU记录,同时,比较本节点当前位移距离是否超出缓存更新位移阈值X,若超过则跳转至第四步,否则跳转至第三步;
第三步,在位移次数未到达所述缓存更新频率K时重复第二步,位移次数达到缓存更新频率K时,先将位移次数清零然后跳转至第四步;
第四步,计算本节点接收的所述内容下载请求中,每一个内容cm的价值Pm,Pm∈(0,1),然后跳转至第五步;
所述价值Pm=α1α2α3lrum;
其中,m表示所述内容下载请求中所述内容cm的ID编号,m≤M;
位移波动因子其中,(x0,y0)表示该节点在本周期的初始位置,j表示本节点第j次移动,(xj,yj)表示本节点第j次移动后所处位置的坐标,xj表示本节点第j次移动后所处位置的横坐标,yj表示本节点第j次移动后所处位置的纵坐标;
第五步,更新缓存内容:依次判断所述每一个内容cm的价值Pm,若所述内容cm的价值Pm大于所述价值阈值γ,则不进行缓存更新;否则,进行缓存更新,其中,所述价值阈值γ由用户设定,γ∈[0,1]。
2.如权利要求1所述的基于节点位移和LFU记录的缓存更新方法,其特征在于,所述第二步中,更新所述LFU记录的步骤如下:
步骤211,每接收到一个所述内容下载请求后,先检索当前LFU记录,若当前LFU记录中已记载有所述内容下载请求所对应的内容cm,则将所述LFU记录中所述内容cm所对应的下载请求的次数fm加一;否则,跳转至步骤212;
步骤212,删除所述LFU记录中请求次数最少的内容,然后将所述内容cm记入所述LFU记录,所述内容cm所对应的请求次数fm记为1。
3.如权利要求1和2任一所述的基于节点位移和LFU记录的缓存更新方法,其特征在于,所述第五步中,进行缓存更新的步骤如下:
步骤501,判断本节点缓存空间容量是否足够存放所述内容cm,若容量足够则跳转至步骤502;否则跳转至步骤503;
步骤502,在本节点缓存空间内缓存所述内容cm,更新缓存列表;
步骤503,按照请求次数由少到多的顺序依次删除本节点缓存空间内的内容,直至剩余的缓存空间足够存放所述内容cm,然后在本节点缓存空间内缓存所述内容cm,更新缓存列表。
4.如权利要求3所述的基于节点位移和LFU记录的缓存更新方法,其特征在于,所述缓存列表包括每一个所述内容cm的ID编号、每一个所述内容cm的缓存地址以及每一个所述内容cm的缓存时间中的一个或多个。
5.一种应用如权利要求1所述基于节点位移和LFU记录的缓存更新方法的通信装置,包括:移动网络接口、LFU记录存储模块、缓存单元及控制模块,其特征在于,所述控制模块包括缓存更新判断模块;
所述移动网络接口构成所述通信装置的输入与输出端,所述移动网络接口的数据端同时连接所述控制模块、所述LFU记录存储模块的输入端以及所述缓存单元的输入端,所述控制模块还同时连接所述LFU记录存储模块以及所述缓存单元,所述缓存单元的输出端连接所述移动网络接口的数据端;
所述移动网络接口用于将信号接收端接收到的信号转化为所述通信装置能够处理的数据内容cm,同时将所述缓存单元输出的所述数据内容cm转化为移动网络信号并发送;
所述LFU记录存储模块用于记录所述缓存单元内每一个数据内容cm的请求次数fm;
所述缓存单元用于根据所述控制模块的控制指令,缓存所述移动网络接口接收到的所述数据内容cm;并根据所述控制模块的控制指令,向所述移动网络接口输出其缓存的相应数据内容;
所述控制模块用于响应所述移动网络中的数据内容请求,控制所述缓存单元输出相应的数据内容;所述控制模块同时用于根据其内缓存更新判断模块,控制所述缓存单元更新相应的数据内容cm;
所述缓存更新判断模块用于读取所述LFU记录存储模块中的记录,结合所述移动网络中记录的所述通信装置的位置信息,控制所述缓存单元更新相应的数据内容cm。
6.一种基于节点位移和LFU记录的缓存更新方法的移动网络当中的移动节点缓存更新方法,所述移动网络包括至少一个具有缓存功能的移动节点,其特征在于,所述移动网络中的每个移动节点进行缓存更新的步骤如下:
步骤d-1,计算本移动节点的位移波动因子然后跳转至步骤d-2;其中,(x0,y0)表示该节点在本周期的初始位置,j表示本移动节点第j次移动,(xj,yj)表示本移动节点第j次移动后所处位置的坐标,xj表示本移动节点第j次移动后所处位置的横坐标,yj表示本移动节点第j次移动后所处位置的纵坐标,K表示缓存更新频率;
步骤d-3,计算本移动节点的位移趋势因子然后跳转至步骤d-4;其中,(xK,yK)表示本节点最后一次移动后所处位置的坐标,xK表示本节点最后一次移动后所处位置的横坐标,yK表示本节点最后一次移动后所处位置的纵坐标;
步骤d-5,计算本移动节点接收的所述内容下载请求中,每一个内容cm的价值Pm=α1α2α3lrum,然后跳转至步骤d-6;
步骤d-6,依次判断本移动节点接收的所述每一个内容cm的价值Pm,若所述内容cm的价值Pm大于价值阈值γ,则不进行缓存更新;否则,进跳转至步骤d-7;其中,所述价值阈值γ由用户设定,γ∈[0,1];
步骤d-7,判断本移动节点缓存空间容量是否足够存放所述内容cm,若容量足够增在本移动节点缓存空间内缓存所述内容cm,更新缓存列表;
否则,先按照请求次数由少到多的顺序依次删除本移动节点缓存空间内的内容,直至剩余的缓存空间足够存放所述内容cm,然后在本移动节点缓存空间内缓存所述内容cm,更新缓存列表。
7.如权利要求6所述的移动节点缓存更新方法,其特征在于,所述每个移动节点在接收到内容下载请求后,响应步骤如下:
步骤a,记录本移动节点ni当前位置坐标,计算并保存本节点当前位置与上一个位置之间的位移数据,合并本移动节点接收到的内容重复的所述下载请求,然后根据合并后的内容下载请求更新所述LFU记录,跳转至步骤b;
步骤b,查询本移动节点内缓存的内容,根据所述下载请求,向依次向所述移动网络中的移动节点发送该移动节点所请求的内容,同时比较本节点当前位移距离是否超出缓存更新位移阈值X,若超过则跳转至步骤d,否则跳转至步骤c;
步骤c,判断本移动节点的位移次数是否达所述缓存更新频率K,若达到,则先将位移次数清零然后跳转至步骤d;否则,回到步骤a;
步骤d,按照所述步骤d-1至所述步骤d-7的顺序更新缓存,跳转至步骤e;
步骤e,判断是否接收到新的内容下载请求,若是,则跳转至步骤a;否则,结束。
8.如权利要求7所述的移动节点缓存更新方法,其特征在于,所述缓存更新频率K由所述移动网络统一设定,或由每一个所述移动节点自行设定。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710157820.5A CN106936914B (zh) | 2017-03-16 | 2017-03-16 | 一种基于节点位移和lfu记录的缓存更新方法及网络 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710157820.5A CN106936914B (zh) | 2017-03-16 | 2017-03-16 | 一种基于节点位移和lfu记录的缓存更新方法及网络 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106936914A CN106936914A (zh) | 2017-07-07 |
CN106936914B true CN106936914B (zh) | 2020-06-19 |
Family
ID=59432538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710157820.5A Expired - Fee Related CN106936914B (zh) | 2017-03-16 | 2017-03-16 | 一种基于节点位移和lfu记录的缓存更新方法及网络 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106936914B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1582986B1 (en) * | 2004-03-31 | 2009-02-11 | Microsoft Corporation | Strategies for reading information from a mass storage medium using a cache memory |
CN101782872A (zh) * | 2009-01-16 | 2010-07-21 | 马维尔国际贸易有限公司 | 使用固态盘的缓存系统和方法 |
WO2011076120A1 (en) * | 2009-12-25 | 2011-06-30 | Shanghai Xin Hao Micro Electronics Co. Ltd. | High-performance cache system and method |
WO2012175058A1 (en) * | 2011-06-24 | 2012-12-27 | Shanghai Xinhao Microelectronics Co. Ltd. | High-performance cache system and method |
CN103619066A (zh) * | 2013-11-07 | 2014-03-05 | 西安电子科技大学 | 一种基于分布式信道分配下行干扰缓解的方法 |
CN105824882A (zh) * | 2016-03-10 | 2016-08-03 | 浪潮通信信息系统有限公司 | 一种基于状态驱动引擎的资源过程状态管理的应用方法 |
CN105874440A (zh) * | 2014-01-02 | 2016-08-17 | 高通股份有限公司 | 用于对存储器进行碎片整理的系统和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6981138B2 (en) * | 2001-03-26 | 2005-12-27 | Microsoft Corporation | Encrypted key cache |
-
2017
- 2017-03-16 CN CN201710157820.5A patent/CN106936914B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1582986B1 (en) * | 2004-03-31 | 2009-02-11 | Microsoft Corporation | Strategies for reading information from a mass storage medium using a cache memory |
CN101782872A (zh) * | 2009-01-16 | 2010-07-21 | 马维尔国际贸易有限公司 | 使用固态盘的缓存系统和方法 |
WO2011076120A1 (en) * | 2009-12-25 | 2011-06-30 | Shanghai Xin Hao Micro Electronics Co. Ltd. | High-performance cache system and method |
WO2012175058A1 (en) * | 2011-06-24 | 2012-12-27 | Shanghai Xinhao Microelectronics Co. Ltd. | High-performance cache system and method |
CN103619066A (zh) * | 2013-11-07 | 2014-03-05 | 西安电子科技大学 | 一种基于分布式信道分配下行干扰缓解的方法 |
CN105874440A (zh) * | 2014-01-02 | 2016-08-17 | 高通股份有限公司 | 用于对存储器进行碎片整理的系统和方法 |
CN105824882A (zh) * | 2016-03-10 | 2016-08-03 | 浪潮通信信息系统有限公司 | 一种基于状态驱动引擎的资源过程状态管理的应用方法 |
Non-Patent Citations (3)
Title |
---|
"LRFU: A Spectrum of Policies that Subsumes the Least Recently Used and Least Frequently Used Policies";Lee D, Choi J, Kim J-H, Noh SH, Min SL, Cho Y, Kim CS.;《technical report》;20011231;全文 * |
"Practical LFU implementation for web caching";Karakostas G, Serpanos DN;《Technical Report》;20001231;全文 * |
"Window-LRFU: a cache replacement policy subsumes the LRU and window-LFU policies";Sen Bai1, Xin Bai1 Xiangjiu Che1;《CONCURRENCY AND COMPUTATION: PRACTICE AND EXPERIENCE》;20151026;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN106936914A (zh) | 2017-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111031102B (zh) | 一种多用户、多任务的移动边缘计算系统中可缓存的任务迁移方法 | |
CN112218337B (zh) | 一种移动边缘计算中的缓存策略决策方法 | |
CN108833352A (zh) | 一种缓存方法及系统 | |
CN108391143B (zh) | 一种基于q学习的无线网络视频传输自适应控制方法 | |
CN107113668A (zh) | 体验式切换管理质量 | |
CN112752308B (zh) | 一种基于深度强化学习的移动预测无线边缘缓存方法 | |
WO2021000757A1 (zh) | 一种网络优化方法、装置和存储介质 | |
CN113282786B (zh) | 一种基于深度强化学习的全景视频边缘协作缓存替换方法 | |
CN113255004A (zh) | 一种安全且高效的联邦学习内容缓存方法 | |
Akhtar et al. | Avic: a cache for adaptive bitrate video | |
CN108541025B (zh) | 一种面向无线异构网络的基站与d2d共同缓存方法 | |
CN113687960A (zh) | 一种基于深度强化学习的边缘计算智能缓存方法 | |
CN107509220B (zh) | 一种基于历史强化学习的车联网负载均衡接入方法 | |
CN106973088B (zh) | 一种基于位置变动的联合lru与lfu的缓存更新方法及网络 | |
CN113993168A (zh) | 一种雾无线接入网中基于多智能体强化学习的协作缓存方法 | |
KR101966588B1 (ko) | 모바일 단말의 비디오 콘텐츠 수신 방법 및 장치 | |
Siris et al. | Exploiting mobility prediction for mobility & popularity caching and DASH adaptation | |
CN106936914B (zh) | 一种基于节点位移和lfu记录的缓存更新方法及网络 | |
CN111447506B (zh) | 云边环境下基于延迟和成本均衡的流媒体内容放置方法 | |
CN106936913B (zh) | 一种基于节点位移和lru记录的缓存更新方法及网络 | |
CN108390936A (zh) | 一种基于缓存分布感知的概率缓存算法 | |
KR101924165B1 (ko) | 협력 캐싱 시스템을 위한 콘텐츠 수요적응형 콘텐츠 교체 장치 및 방법 | |
CN110113418B (zh) | 一种车联信息中心网络的协同缓存更新方法 | |
Kheibari et al. | Quality estimation for DASH clients by using Deep Recurrent Neural Networks | |
US7441086B2 (en) | Data caching method and computer-readable medium storing a program executing the method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200619 |