CN102014066A - 一种覆盖网络中的数据缓存管理方法 - Google Patents

一种覆盖网络中的数据缓存管理方法 Download PDF

Info

Publication number
CN102014066A
CN102014066A CN2010105849242A CN201010584924A CN102014066A CN 102014066 A CN102014066 A CN 102014066A CN 2010105849242 A CN2010105849242 A CN 2010105849242A CN 201010584924 A CN201010584924 A CN 201010584924A CN 102014066 A CN102014066 A CN 102014066A
Authority
CN
China
Prior art keywords
node
request message
cache
cache request
overlay network
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.)
Granted
Application number
CN2010105849242A
Other languages
English (en)
Other versions
CN102014066B (zh
Inventor
胡瑞敏
陈铙
朱永琼
杨红云
谭小琼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN2010105849242A priority Critical patent/CN102014066B/zh
Publication of CN102014066A publication Critical patent/CN102014066A/zh
Application granted granted Critical
Publication of CN102014066B publication Critical patent/CN102014066B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种覆盖网络中的数据缓存管理方法,该方法通过对数据缓存者的均匀选择来实现数据的分布式均匀缓存。本发明的技术方案中引入了概率方法来控制是否缓存数据,能有效适应覆盖网络中节点的加入与离开,具有良好的可扩展性;同时还将节点是否成为缓存者的判断放在每次节点接收到缓存请求消息时,再通过TTL值控制缓存者与数据源的距离使得缓存者均匀分布于网络中,起到分散负载的作用,可以降低覆盖网络中“热点”的出现,提高网络的鲁棒性。

Description

一种覆盖网络中的数据缓存管理方法
技术领域
本发明属于信息工程领域,涉及一种覆盖网络中的数据缓存管理的方法。
背景技术
覆盖网络是基于现有的物理通信网络建立的一个虚拟的逻辑网络,覆盖网络不需要修改网络层的协议,无需更换大量网络设备进行重新部署,而是在应用层加入对通信的管理与控制来保证服务质量,可以有效节约成本。目前典型的覆盖网络如P2P网络已经在流媒体、即时消息、在线网络游戏等领域取得了广泛的应用。
一种在覆盖网络中开展的重要需求就是通过一个数据源向多个节点发送数据,称为数据多播,而保证数据多播可靠性与可扩展性的关键是数据缓存管理方法。目前的缓存管理方法是通过将网络中节点的地址与缓存消息的哈希值进行比较,当两者的差值在一个指定的阈值范围内或精确匹配时就将消息缓存到指定节点。这样虽然可以实现比较精确的缓存者(bufferer)定位,但是哈希函数是一种预先定义的计算机制,当有新节点加入到覆盖网络中时哈希函数不能重新进行定义,导致新节点不能成为缓存者,所以这样的缓存管理方法并不适用于动态变化的网络环境,可扩展性较差。
发明内容
针对上述存在的技术问题,本发明提出了一种能用于动态变化的覆盖网络中的数据缓存管理方法,该方法通过对数据缓存者的均匀选择来实现数据的分布式均匀缓存。
为了解决上述技术问题,本发明采用如下的技术方案:
一种在覆盖网络中的数据缓存管理方法,包括以下步骤:
S1、源节点SN随机选择一个邻居节点LN并向其发送数据条目i的缓存请求消息R
S2、当缓存请求消息R到达节点LN时,节点LN将缓存请求消息R的TTL值减1;
S3、节点LN检查本地缓存是否包含缓存请求消息R,如果包含有缓存请求消息R,则将缓存消息R转发给邻居节点,然后循环执行步骤S2;否则执行步骤S4;
S4、节点LN检查缓存请求消息R的TTL值是否为0,如果为0,执行步骤S4-1;否则,执行步骤S4-2:
S4-1、节点LN将缓存请求消息R放入本地缓存,然后执行步骤S5;
S4-2、节点LN生成随机数x,其中,                                                
Figure 2010105849242100002DEST_PATH_IMAGE001
,比较x与本地缓存的满载率f,其中,满载率f为本地缓存中已存储的数据条目个数与本地缓存所得存储数据条目个数的比值,如果x大于f,则执行步骤S4-1;否则,将缓存请求消息R随机转发给邻居节点;
S5、节点LN向源节点SN发送反馈消息,源节点SN记录数据条目i的缓存者LN,并将数据条目i发送给缓存者LN。
上述TTL的初始值为
Figure 2010105849242100002DEST_PATH_IMAGE002
,其中,s为节点LN的邻居节点个数,N为网络规模。
上述节点LN将缓存请求消息R转发给邻居节点的步骤具体为:
节点LN检查缓存请求消息R的TTL值是否为0,如果为0,将缓存请求消息R的TTL值加1后随机转发给节点LN的邻居节点;否则,直接将缓存请求消息R随机转发给节点LN的邻居节点;
上述节点LN将缓存请求消息R放入本地缓存的步骤具体为:
节点LN检查本地缓存是否满载,如果满载,则删除本地缓存中最早存入的缓存请求消息并将缓存请求消息R放入本地缓存;否则,直接将缓存请求消息R放入本地缓存。
本发明中,当源节点发出缓存请求消息R后,每个收到缓存请求消息R的邻居节点将检查本地缓存中是否包含缓存请求消息R,如果包含并且此时缓存请求消息R的TTL值为0,说明缓存请求消息R应该被缓存到一个已经缓存了缓存请求消息R的节点上,则将缓存请求消息R继续转发到其他节点;如果收到缓存请求消息R的节点不包含缓存请求消息R,则在缓存请求消息R的TTL为0时将缓存请求消息R缓存到本地缓存,否则继续转发缓存请求消息R,在缓存过程中如果缓存区满则将删除最早缓存的消息来释放空间使得R可以被缓存。
 与现有技术相比,本发明具有如下优点和有益效果:
本发明引入了概率方法来控制是否缓存数据,能有效适应覆盖网络中节点的加入与离开,具有良好的可扩展性;同时本发明方法还将节点是否成为缓存者的判断放在每次节点接收到缓存请求消息时,再通过TTL值控制缓存者与数据源的距离使得缓存者均匀分布于网络中,起到分散负载的作用,可以降低覆盖网络中“热点”的出现,提高网络的鲁棒性。
附图说明
图1为缓存者决定过程的示意图;
图2为缓存管理方法的实际拓扑示意图。
具体实施方式
本发明提出了一种覆盖网络中的缓存管理方法,该方法具体步骤如下: 
S1、源节点SN从本地邻居节点列表中随机选择邻居节点LN并向节点LN发送数据条目i的缓存请求消息R
S2、当缓存请求消息R到达节点LN时,节点LN将缓存请求消息R的TTL值减1;
TTL值表示消息在网络中的生存时间,每当节点收到一个缓存请求消息时,就将缓存缓存请求消息的TTL值减1,TTL为整数值,其初始值与网络规模有关,一般由公式
Figure 958721DEST_PATH_IMAGE002
计算其初始值为
Figure 2010105849242100002DEST_PATH_IMAGE003
s为节点LN的邻居节点个数,N为网络规模;
S3、节点LN检查本地缓存是否包含缓存请求消息R,如果包含有缓存请求消息R,则将缓存消息R转发给邻居节点,然后循环执行步骤S2;否则执行步骤S4;
节点LN将缓存请求消息R转发给邻居节点的步骤具体为:
节点LN检查缓存请求消息R的TTL值是否为0,如果为0,将缓存请求消息R的TTL值加1后随机转发给节点LN的邻居节点;否则,直接将缓存请求消息R随机转发给节点LN的邻居节点;
S4、节点LN检查缓存请求消息R的TTL值是否为0,如果为0,执行步骤S4-1;否则,执行步骤S4-2:
S4-1、节点LN将缓存请求消息R放入本地缓存,然后执行步骤S5;
节点LN将缓存请求消息R放入本地缓存的步骤具体为:
节点LN检查本地缓存是否满载,如果满载,则删除本地缓存中最早存入的缓存请求消息并将缓存请求消息R放入本地缓存;否则,直接将缓存请求消息R放入本地缓存;
S4-2、节点LN生成随机数x,其中,
Figure 938179DEST_PATH_IMAGE001
,比较x与本地缓存的满载率f,其中,满载率f可用公式
Figure 2010105849242100002DEST_PATH_IMAGE004
计算得到,其中,u为已存储在节点LN的本地缓存中的数据条目个数,s为节点LN的本地缓存能够存储的数据条目个数,如果x大于f,则执行步骤S4-1;否则,将缓存请求消息R随机转发给邻居节点;
S5、节点LN向源节点SN发送反馈消息,源节点SN记录数据条目i的缓存者LN,并将数据条目i发送给缓存者LN。
图2为一覆盖网拓扑示意图,图中所示的覆盖网络由终端节点A、B、C、D、Z构成,网络规模为6,源节点为S,Z为缓存者,即最终接收缓存请求的目标节点,缓存请求消息R的TTL值为4,节点A、C的缓存满载率f分别为0.6、0.4,节点B、D的缓存中分别存在缓存请求消息R,节点D的缓存已满。
下面将结合附图2对本发明作进一步说明:
1)源节点S要将数据条目i缓存到覆盖网络中的其他节点上,先从自己的邻居表中随机选出节点A,并向节点A发送一个缓存请求消息R; 
2)当缓存请求消息R到达节点A时,节点A将缓存请求消息R的TTL值减1,即缓存请求消息R的TTL值变为3;
3)节点A检查本地缓存发现没有缓存请求消息R,节点A检查缓存请求消息R的TTL值,此时缓存请求消息R的TTL值为3,节点A本地缓存的满载率f为0.6,节点A生成随机数0.5,比较节点A生成的随机数和节点A当前缓存的满载率f,节点A生产的随机数小于其当前缓存的满载率f,所以节点A将缓存请求消息R转发给其邻居节点B;
4)当缓存请求消息R到达节点B时,节点B将缓存请求消息R的TTL值减1,即缓存请求消息R的TTL变为2,节点B检查本地缓存发现有缓存请求消息R,节点B直接将缓存请求消息R转发给其邻居节点C;
5)当缓存请求消息R到达节点C时,节点C将缓存请求消息R的TTL值减1,即缓存请求消息R的TTL变为1;节点C检查本地缓存发现没有缓存请求消息R,节点C检查缓存请求消息R的TTL值,此时,缓存请求消息R的TTL为1,节点C本地缓存的满载率f为0.4;节点C生成随机数0.2,小于节点C当前的缓存满载率0.4,所以节点C将缓存请求消息R转发其邻居节点D;
6)当缓存请求消息R到达节点D时,节点D将缓存请求消息R的TTL值减1,即缓存请求消息R的TTL变为0,节点D检查本地缓存发现有缓存请求消息R,节点D将缓存请求消息R的TTL加1,此时缓存请求消息R的TTL值变为1,节点D将缓存请求消息R转发给其邻居节点Z;
7)当缓存请求消息R到达节点Z时,节点Z将缓存请求消息R的TTL值减1,即缓存请求消息R的TTL变为0,节点Z检查本地缓存发现没有缓存请求消息R并发现本地缓存已满,节点Z删除最早放入本地缓存的数据条目并将缓存请求消息R放入节点Z的本地缓存中;
8)节点Z向源节点S发送个反馈消息告知缓存请求消息R已经存入节点Z的本地缓存中;
9)源节点S记录数据条目i的缓存者为节点Z,并将数据条目i发送给节点Z。

Claims (4)

1.一种覆盖网络中的数据缓存管理方法,其特征在于,包括以下步骤:
S1、源节点SN随机选择一个邻居节点LN并向其发送数据条目i的缓存请求消息R
S2、当缓存请求消息R到达节点LN时,节点LN将缓存请求消息R的TTL值减1;
S3、节点LN检查本地缓存是否包含缓存请求消息R,如果包含有缓存请求消息R,则将缓存消息R转发给邻居节点,然后循环执行步骤S2;否则执行步骤S4;
S4、节点LN检查缓存请求消息R的TTL值是否为0,如果为0,执行步骤S4-1;否则,执行步骤S4-2:
S4-1、节点LN将缓存请求消息R放入本地缓存,然后执行步骤S5;
S4-2、节点LN生成随机数x,其中,                                                ,比较x与本地缓存的满载率f,其中,满载率f为本地缓存中已存储的数据条目个数与本地缓存所得存储数据条目个数的比值,如果x大于f,则执行步骤S4-1;否则,将缓存请求消息R随机转发给邻居节点;
S5、节点LN向源节点SN发送反馈消息,源节点SN记录数据条目i的缓存者LN,并将数据条目i发送给缓存者LN。
2.根据权利要求1所述的覆盖网络中的数据缓存管理方法,其特征在于:
所述的TTL的初始值为
Figure 2010105849242100001DEST_PATH_IMAGE003
,其中,s为节点LN的邻居节点个数,N为网络规模。
3.根据权利要求1或2所述的覆盖网络中的数据缓存管理方法,其特征在于:
所述的节点LN将缓存请求消息R转发给邻居节点的步骤具体为:
节点LN检查缓存请求消息R的TTL值是否为0,如果为0,将缓存请求消息R的TTL值加1后随机转发给节点LN的邻居节点;否则,直接将缓存请求消息R随机转发给节点LN的邻居节点。
4.根据权利要求1或2所述的覆盖网络中的数据缓存管理方法,其特征在于:
所述的节点LN将缓存请求消息R放入本地缓存的步骤具体为:
节点LN检查本地缓存是否满载,如果满载,则删除本地缓存中最早存入的缓存请求消息并将缓存请求消息R放入本地缓存;否则,直接将缓存请求消息R放入本地缓存。
CN2010105849242A 2010-12-13 2010-12-13 一种覆盖网络中的数据缓存管理方法 Expired - Fee Related CN102014066B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010105849242A CN102014066B (zh) 2010-12-13 2010-12-13 一种覆盖网络中的数据缓存管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010105849242A CN102014066B (zh) 2010-12-13 2010-12-13 一种覆盖网络中的数据缓存管理方法

Publications (2)

Publication Number Publication Date
CN102014066A true CN102014066A (zh) 2011-04-13
CN102014066B CN102014066B (zh) 2012-07-04

Family

ID=43844087

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010105849242A Expired - Fee Related CN102014066B (zh) 2010-12-13 2010-12-13 一种覆盖网络中的数据缓存管理方法

Country Status (1)

Country Link
CN (1) CN102014066B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105282236A (zh) * 2015-09-16 2016-01-27 上海亿保健康管理有限公司 一种分布式缓存方法及装置
CN109067817A (zh) * 2018-05-31 2018-12-21 北京五八信息技术有限公司 媒体内容流量分配方法、装置、电子设备及服务器
CN116056052A (zh) * 2022-08-17 2023-05-02 荣耀终端有限公司 消息处理方法、装置、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1645829A (zh) * 2005-01-27 2005-07-27 中国科学院计算技术研究所 结构化p2p系统的拓扑匹配方法
CN1710884A (zh) * 2005-06-24 2005-12-21 武汉理工大学 一种支持多QoS约束的多播路由方法
EP2169909A1 (en) * 2005-10-03 2010-03-31 Amadeus S.A.S. System and method to maintain coherence of cache contents in a multi-tier software system aimed at interfacing large databases

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1645829A (zh) * 2005-01-27 2005-07-27 中国科学院计算技术研究所 结构化p2p系统的拓扑匹配方法
CN1710884A (zh) * 2005-06-24 2005-12-21 武汉理工大学 一种支持多QoS约束的多播路由方法
EP2169909A1 (en) * 2005-10-03 2010-03-31 Amadeus S.A.S. System and method to maintain coherence of cache contents in a multi-tier software system aimed at interfacing large databases

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《软件学报》 20080331 李春洪等 一种无"热点"的覆盖网协同缓存策略 第744-754页 1-4 第19卷, 第3期 2 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105282236A (zh) * 2015-09-16 2016-01-27 上海亿保健康管理有限公司 一种分布式缓存方法及装置
CN105282236B (zh) * 2015-09-16 2018-04-03 上海亿保健康管理有限公司 一种分布式缓存方法及装置
CN109067817A (zh) * 2018-05-31 2018-12-21 北京五八信息技术有限公司 媒体内容流量分配方法、装置、电子设备及服务器
CN116056052A (zh) * 2022-08-17 2023-05-02 荣耀终端有限公司 消息处理方法、装置、电子设备和存储介质
CN116056052B (zh) * 2022-08-17 2023-10-31 荣耀终端有限公司 消息处理方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN102014066B (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
Din et al. Caching in information-centric networking: Strategies, challenges, and future research directions
Li et al. A chunk caching location and searching scheme in content centric networking
An et al. An in-network caching scheme based on energy efficiency for content-centric networks
Nour et al. A distributed cache placement scheme for large-scale information-centric networking
CN109040163B (zh) 基于k匿名的命名数据网络隐私保护缓存决策方法
Alahmri et al. Efficient pooling and collaborative cache management for NDN/IoT networks
CN102014066B (zh) 一种覆盖网络中的数据缓存管理方法
Yu et al. Dynamic popularity-based caching permission strategy for named data networking
Wu et al. Edge-oriented collaborative caching in information-centric networking
Liu et al. PBRS: A content popularity and betweenness based cache replacement scheme in ICN-IoT
Fan et al. Popularity and gain based caching scheme for information-centric networks
Alduayji et al. PF-EdgeCache: Popularity and freshness aware edge caching scheme for NDN/IoT networks
Joy et al. A key based cache replacement policy for cooperative caching in mobile ad hoc networks
Yufei et al. A centralized control caching strategy based on popularity and betweenness centrality in ccn
Yang et al. Providing cache consistency guarantee for ICN-based IoT based on push mechanism
Wang et al. Dynamic cache consistency schemes for wireless cellular networks
Mishra et al. An efficient content replacement policy to retain essential content in information-centric networking based internet of things network
Moualla et al. A bloom-filter-based socially aware scheme for content replication in mobile ad hoc networks
Abolhassani et al. Optimal load-splitting and distributed-caching for dynamic content over the wireless edge
CN107612980B (zh) 一种结构化p2p网络中可调节且可靠的一致性维护方法
Zam et al. Performance improvement of cache management in cluster based manet
CN106572501B (zh) 基于双重阈值判决的内容中心移动自组织网络缓存方法
Kong et al. Link congestion and lifetime based in-network caching scheme in Information Centric Networking
Dhawan et al. PoSiF: A Transient Content Caching and Replacement Scheme for ICN‐IoT
Chang et al. A probabilistic routing algorithm based on node communication capability and message strength

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120704

Termination date: 20141213

EXPY Termination of patent right or utility model