CN109218225A - 一种数据包缓存方法及系统 - Google Patents
一种数据包缓存方法及系统 Download PDFInfo
- Publication number
- CN109218225A CN109218225A CN201811109699.XA CN201811109699A CN109218225A CN 109218225 A CN109218225 A CN 109218225A CN 201811109699 A CN201811109699 A CN 201811109699A CN 109218225 A CN109218225 A CN 109218225A
- Authority
- CN
- China
- Prior art keywords
- node
- data
- participation
- arbitration
- stored packet
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/201—Multicast operation; Broadcast operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- 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/14—Session management
- H04L67/146—Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据包缓存方法及系统,包括仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息,仲裁节点为区域内包括待存储数据包的任意一个节点;获取所有参与节点返回的响应结果,并根据响应结果判断其自身是否满足仲裁条件;若是,在所有参与节点中确定目标存储节点,将待存储数据包发送至目标存储节点,以便目标存储节点存储待存储数据包。本发明中,包括待存储数据包的节点均可以作为仲裁节点,且通过满足仲裁条件的仲裁节点对待存储数据包的缓存进行控制,不需设置核心节点,增强区域内网络的稳定性和安全性、降低网络响应时间的同时,有效地提高了网络缓存命中率。
Description
技术领域
本发明涉及内容中心网络领域,特别是涉及一种数据包缓存方法及系统。
背景技术
随着网络的快速发展和不断变化,网络应用的主体正逐渐向提供内容服务转移,国内外学术界提出了多种以内容为中心的互联网架构,其中,CCN(Connect CentricNetworking,内容中心网络)的网络设计更具有代表性。具体的,CCN要求每个节点都能缓存经过的内容,当用户请求某一内容时,任何缓存有该内容的节点都可以做出响应,但这种缓存机制会泄露请求者的检索隐私,攻击者可以通过测量获取内容的响应时间判定该内容是否被缓存在一个节点,从而得知相邻用户是否检索、访问了该内容;另外,用户检索内容的名字易被相邻节点获知,攻击者可以利用请求者的检索信息推测出请求者的行为偏好等隐私信息,给用户的隐私安全带来了严重威胁。
对于上述问题,现有的解决方案是将整个网络划分成若干个区域,每个区域设有一个固定的核心节点,通过核心节点控制该区域内所有节点的数据包的请求、响应和存储,这样即使攻击者获取了数据包,也无法轻易地通过测量获取内容的响应时间判定一个给定内容被缓存在哪一个节点,进而得知相邻用户是否检索、访问了该内容,从而达到保护用户检索隐私的目的。但是该解决方案极度依赖区域内的核心节点,如果任意区域内的核心节点失去连接,那么与之相连的其他核心节点也会失去连接,从而导致该区域内网络中断,使得区域网络稳定性差。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种数据包缓存方法、系统,任意一个包括待存储数据包的节点均可以作为仲裁节点,且满足仲裁条件的仲裁节点即可对待存储数据包的缓存进行控制,不需设置核心节点,增强了区域内网络的稳定性和安全性,降低了网络响应时间的同时,有效地提高了网络缓存命中率。
为解决上述技术问题,本发明提供了一种数据包缓存方法,包括:
仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息,其中,所述仲裁节点为所述区域内包括所述待存储数据包的任意一个节点;
获取所有所述参与节点返回的响应结果,并根据所述响应结果判断其自身是否满足仲裁条件;
若是,在所有所述参与节点中确定目标存储节点,将所述待存储数据包发送至所述目标存储节点,以便所述目标存储节点存储所述待存储数据包。
优选的,所述信息包括所述待存储数据包的名称及转发ID表,所述转发ID表中包括所述区域内所有所述参与节点的ID;
则所述仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息的过程具体为:
所述仲裁节点向其所在区域内的任意一个所述参与节点发送所述待存储数据包的信息;
接收到所述信息的参与节点执行以下步骤:
步骤S1:判断所述转发ID表中是否存在自身ID,若是,执行步骤S2,若否,执行步骤S4;
步骤S2:将所述转发ID表中的自身ID删除,以更新所述转发ID表,执行步骤S3;
步骤S3:判断更新后的转发ID表中是否存在其他所述参与节点的ID,若是,执行步骤S4,若否,执行步骤S5;
步骤S4:向域内端口转发所述待存储数据包的信息;
步骤S5:丢弃所述待存储数据包的信息。
优选的,所述获取所有所述参与节点返回的响应结果,并根据所述响应结果判断其自身是否满足仲裁条件的过程具体为:
获取所有所述参与节点的响应结果,所述响应结果为同意响应或拒绝响应;
判断同意响应的参与节点的个数是否大于仲裁预设值;
若是,所述仲裁节点判定其自身满足仲裁条件,若否,所述仲裁节点判定其自身不满足仲裁条件。
优选的,所述在所有所述参与节点中确定目标存储节点的过程具体为:
在返回存储请求的参与节点中确定目标存储节点,其中,所述返回存储请求的参与节点为同时满足第一约束条件和第二约束条件的参与节点或同时满足所述第一约束条件、第三约束条件及第四约束条件的参与节点;
所述第一约束条件为待定兴趣表PIT表中存在与所述待存储数据包对应的请求信息;
所述第二约束条件为剩余存储空间大于或等于申请预设值;
所述第三约束条件为所述剩余存储空间小于所述申请预设值;
所述第四约束条件为已用存储空间内存在流行度小于所述待存储数据包的流行度的数据包。
优选的,所述在返回存储请求的参与节点中确定目标存储节点的过程具体为:
根据节点适宜存储关系式计算返回存储请求的参与节点的适宜存储系数;
将所述适宜存储系数最大的参与节点确定为所述目标存储节点;
其中,所述节点适宜存储关系式为f为所述适宜存储系数,c为该参与节点的剩余存储空间,i为所述待存储数据包在该参与节点中的流行度,I为所述待存储数据包在所述区域内的平均流行度。
优选的,所述将所述待存储数据包发送至所述目标存储节点的过程具体为:
将所述目标存储节点的信息广播至所述区域内所有所述参与节点,以便所有所述参与节点更新自身转发信息库FIB;
判断是否存在未返回确认信息的参与节点,若否,将所述待存储数据包发送至所述目标存储节点。
优选的,所述将所述待存储数据包发送至所述目标存储节点之后,该数据包缓存方法还包括:
向所述区域内所有所述参与节点广播卸任信息,以便所述仲裁节点转换为所述参与节点。
优选的,所述判断是否接收到所有所述参与节点返回的确认信息之后,该数据包缓存方法还包括:
当存在未返回确认信息的参与节点时,判断未返回所述确认信息的参与节点是否包括所述目标存储节点;
若是,确定新的目标存储节点;
则所述将所述待存储数据包发送至所述目标存储节点的过程具体为:
将所述待存储数据包发送至所述新的目标存储节点。
为解决上述技术问题,本发明还提供了一种数据包缓存系统,包括仲裁节点及与所述仲裁节点处于同一区域的多个参与节点;
所述仲裁节点,用于向所有所述参与节点广播待存储数据包的信息,获取所有所述参与节点返回的响应结果,并根据所述响应结果判断其自身是否满足仲裁条件;若是,在所有所述参与节点中确定目标存储节点,将所述待存储数据包发送至所述目标存储节点,以便所述目标存储节点存储所述待存储数据包。
优选的,所述仲裁节点,还用于在将所述待存储数据包发送至所述目标存储节点之后,向所述区域内所有所述参与节点广播卸任信息,以便所述仲裁节点转换为所述参与节点。
本发明提供了一种数据包缓存方法,包括仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息,其中,仲裁节点为区域内包括待存储数据包的任意一个节点;获取所有参与节点返回的响应结果,并根据响应结果判断其自身是否满足仲裁条件;若是,在所有参与节点中确定目标存储节点,将待存储数据包发送至目标存储节点,以便目标存储节点存储待存储数据包。
可见,在实际应用中,采用本发明的方案,任意一个包括待存储数据包的节点均可以作为仲裁节点,且满足仲裁条件的仲裁节点即可对接收到的待存储数据包的缓存进行控制,不需要设置核心节点,增强区域内网络的稳定性和安全性,降低了网络响应时间的同时,有效地提高了网络缓存命中率。
本发明还提供了一种数据包缓存系统,具有和上述数据包缓存方法相同的有益效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的一种数据包缓存方法的步骤流程图;
图2为本发明所提供的一种数据包缓存系统的结构示意图。
具体实施方式
本发明的核心是提供一种数据包缓存方法、系统,任意一个包括待存储数据包的节点均可以作为仲裁节点,且满足仲裁条件的仲裁节点即可对待存储数据包的缓存进行控制,不需设置核心节点,增强了区域内网络的稳定性和安全性,降低了网络响应时间的同时,有效地提高了网络缓存命中率。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,图1为本发明所提供的一种数据包缓存方法的步骤流程图,包括:
步骤1:仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息,其中,仲裁节点为区域内包括待存储数据包的任意一个节点;
首先需要说明的是,本发明所提供的数据包缓存方法需要预先将整个网络划分成若干区域,每一个区域的节点数量不超过整个网络所有节点数量的1/10,每个区域内的每个节点都设有自己独立的ID,ID可以随机分配,只要保证整个网络内所有节点的ID均不相同即可。同时区域内的节点均需知道同区域内其它节点的ID,每个节点都要对面向域内的端口或面向域外的端口进行标记。
具体的,仲裁节点为接收到其所在区域外发送的待存储数据包的节点,或者在上一轮仲裁结束后,队列中存在待存储数据包的节点,每个区域内的仲裁节点可以为一个或多个,对于每个仲裁节点来说,其所在区域内除其自身以外的所有节点均为与该仲裁节点对应的参与节点,但在每一轮仲裁中,只有一个仲裁节点可以发起仲裁,确定与该仲裁节点对应的待存储数据包的存储位置。
具体的,仲裁节点通过域内端口向其所在区域内的所有参与节点广播待存储数据包的信息以发起投票,这里的信息具体可以指报文信息,仲裁节点广播待存储数据包的信息后,等待各个参与节点返回的投票结果(即下文中的响应结果),等待时间为上一次该仲裁节点更新的时间,更新的时间具体为上一次该仲裁节点发起投票到接收到各个参与节点返回响应结果的所用时间的1.5倍。
当然,除了可以设置为1.5倍也可以设置为其他倍数,满足实际工程需要即可,本发明在此不做限定。
步骤2:获取所有参与节点返回的响应结果,并根据响应结果判断其自身是否满足仲裁条件,若是,进入步骤3;
步骤3:在所有参与节点中确定目标存储节点,将待存储数据包发送至目标存储节点,以便目标存储节点存储待存储数据包。
具体的,当仲裁节点在等待时间内接收到所有参与节点返回的响应结果时,将等待时间更新为仲裁节点本次发起投票到接收到各个参与节点返回相应结果的所用时间的1.5倍。在未收到终止仲裁消息的前提下,仲裁节点根据获取到的所有参与节点返回的响应结果,判断其自身是否满足仲裁条件,其中,响应结果为同意响应或拒绝响应,参与节点根据自身状态选择返回同意响应或拒绝响应,在每一轮仲裁中,参与节点只能返回一个同意响应,假设参与节点B1分别接收到仲裁节点A1广播的信息I1、仲裁节点A2广播的信息I2、仲裁节点A3发送的信息I3后,根据自身状态进行选择,如果参与节点B1向仲裁节点A1返回同意响应,那么参与节点B1向仲裁节点A2和仲裁节点A3均返回拒绝响应。满足仲裁条件的仲裁节点只有一个,由满足仲裁条件的仲裁节点主持当前轮次的仲裁,确定待存储数据包的存储位置(即目标存储节点),将待存储数据包发送到目标存储节点后,结束本轮仲裁,等待下一轮仲裁,其中,目标存储节点为满足存储要求的参与节点,满足存储要求的参与节点也只有一个,因此本发明在一定程度上可以缓解缓存同质化的问题,减少无效缓存,提高网络缓存命中率。本发明中的仲裁节点在每轮仲裁中可能都不相同,是流动的,不是固定不变的,因此,无论哪个仲裁节点出现故障,也不会影响下一轮仲裁,在降低网络用户隐私泄露风险的同时,增强了区域网络的稳定性。其中,仲裁条件可以理解为主持该轮仲裁的条件。
具体的,参与节点的自身状态包括普通状态、预参与状态、参与状态及仲裁状态,其中:
处于普通状态下的参与节点接收到仲裁节点发送的待存储数据包的信息后,先检查自身的CS(Content Store,内容缓存)中是否存在该数据包,如有则向发送该待存储数据包信息的仲裁节点返回终止仲裁消息,以便该仲裁节点在接收到终止仲裁消息后放弃仲裁身份,转换为参与身份,作为参与节点参与其他仲裁节点主持的仲裁。如果自身的CS中没有该数据包,则返回同意响应,并向域内其它参与节点发送本节点投票情况,参与节点把同意响应返回至哪个仲裁节点即为向该仲裁节点投票,同时该参与节点变为预参与状态;
处于预参与状态下的参与节点说明已经投票(即返回同意响应)且每一轮仲裁中每个参与节点只能返回一个同意响应,所以该状态下的参与节点否定其它仲裁节点的请求,向其他仲裁节点返回拒绝响应。而且,此状态下的参与节点有一段等待时间,时长与所参与仲裁的等待时间一致。在此期间,参与节点统计域内其它参与节点的投票情况,具体为记录信息,包括仲裁节点ID、待存储数据包名称、对应所得票数(仲裁节点接收到的同意响应的数量),并在满足仲裁条件的仲裁节点主持仲裁时,进入参与状态;
参与状态,处于此状态下的参与节点根据需要向其所参与的仲裁节点发送相关请求信息,并否定其它仲裁节点请求,向其他仲裁节点返回拒绝响应;
仲裁状态,处于此状态下的参与节点正主持一轮仲裁,所以该状态下的节点否定其他仲裁节点的请求,向其他仲裁节点返回拒绝响应,可以理解的是,区域内可以包括多个仲裁节点,如仲裁节点A1、仲裁节点A2和仲裁节点A3,对于仲裁节点A1来说,仲裁节点A2和仲裁节点A3均为参与节点,对于仲裁节点A2来说,仲裁节点A1和仲裁节点A3均为参与节点,对于仲裁节点A3来说,仲裁节点A2和仲裁节点A1均为参与节点。
本发明提供了一种数据包缓存方法,包括仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息,其中,仲裁节点为区域内包括待存储数据包的任意一个节点;获取所有参与节点返回的响应结果,并根据响应结果判断其自身是否满足仲裁条件;若是,在所有参与节点中确定目标存储节点,将待存储数据包发送至目标存储节点,以便目标存储节点存储待存储数据包。
可见,在实际应用中,采用本发明的方案,任意一个包括待存储数据包的节点均可以作为仲裁节点,且满足仲裁条件的仲裁节点即可对接收到的待存储数据包的缓存进行控制,不需要设置核心节点,增强区域内网络的稳定性和安全性,降低了网络响应时间的同时,有效地提高了网络缓存命中率。
在上述实施例的基础上:
作为一种优选的实施例,信息包括待存储数据包的名称及转发ID表,转发ID表中包括区域内所有参与节点的ID;
则仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息的过程具体为:
仲裁节点向其所在区域内的任意一个参与节点发送待存储数据包的信息;
接收到信息的参与节点执行以下步骤:
步骤S1:判断转发ID表中是否存在自身ID,若是,执行步骤S2,若否,执行步骤S4;
步骤S2:将转发ID表中的自身ID删除,以更新转发ID表,执行步骤S3;
步骤S3:判断更新后的转发ID表中是否存在其他参与节点的ID,若是,执行步骤S4,若否,执行步骤S5;
步骤S4:向域内端口转发待存储数据包的信息;
步骤S5:丢弃待存储数据包的信息。
具体的,仲裁节点向域内端口发送待存储数据包的信息,待存储数据包的信息包括域内所有参与节点的ID、仲裁节点ID、标记位、待存储数据包的名称、时间戳、等待时间等信息,所有参与节点的ID构成转发ID表,接收到该信息的参与节点,首先判断转发ID表中是否包括自身ID,如果不包括则直接向域内端口转发该信息,如果包括,则将转发ID表中的自身ID删除,如果删除自身ID后,转发ID表不空,还包括其他参与节点的ID,则通过域内端口继续转发该信息,如果删除自身ID后,转发ID表中已经空了,则不再转发,直接将该信息丢弃,以保证仲裁节点广播报文时不会出现重复广播该信息的情况,提高广播效率,从而提高数据包的存储效率。
作为一种优选的实施例,获取所有参与节点返回的响应结果,并根据响应结果判断其自身是否满足仲裁条件的过程具体为:
获取所有参与节点的响应结果,响应结果为同意响应或拒绝响应;
判断同意响应的参与节点的个数是否大于仲裁预设值;
若是,仲裁节点判定其自身满足仲裁条件,若否,仲裁节点判定其自身不满足仲裁条件。
具体的,根据上文所述,参与节点的响应结果为同意响应或拒绝响应,仲裁节点根据同意响应的参与节点的个数判断其自身是否满足仲裁条件,当同意响应的参与节点的个数大于仲裁预设值时,仲裁节点判定其自身满足仲裁条件,反之,判定其自身不满仲裁条件。具体的,如果仲裁节点接收到的同意响应的数量大于拒绝响应的数量就说明该仲裁节点满足仲裁条件,仲裁预设值可以设置为所有参与节点数量的一半,也就是说如果某一仲裁节点收到的同意响应的数量超过所有参与节点的数量的一半时,说明该仲裁节点满足仲裁条件,可以理解的是,由于参与节点在每轮仲裁中,只能返回一个同意响应,因此,可以保证当有一个仲裁节点满足仲裁条件时,其他的仲裁节点均不满足仲裁条件。
作为一种优选的实施例,在所有参与节点中确定目标存储节点的过程具体为:
在返回存储请求的参与节点中确定目标存储节点,其中,返回存储请求的参与节点为同时满足第一约束条件和第二约束条件的参与节点或同时满足第一约束条件、第三约束条件及第四约束条件的参与节点;
第一约束条件为待定兴趣表PIT表中存在与待存储数据包对应的请求信息;
第二约束条件为剩余存储空间大于或等于申请预设值;
第三约束条件为剩余存储空间小于申请预设值;
第四约束条件为已用存储空间内存在流行度小于待存储数据包的流行度的数据包。
具体的,参与节点根据自身状态确定返回的响应结果以及是否返回存储请求,具体的,参与节点在接收到仲裁节点发送的待存储数据包时,查找PIT(Pending InterestTable,待定兴趣表)表,如果PIT表中不存在与待存储数据包对应的请求信息时,返回同意响应及自身信息(自身信息包括待存储数据包在本参与节点中的流行度及剩余存储空间),但不返回存储请求,如果PIT表中存在与待存储数据包对应的请求信息时,根据PIT表中的信息计算待存储数据包在本参与节点中的流行度,并检测自身的剩余存储空间是否大于或等于申请预设值,若是,则返回同意响应、自身信息及存储请求,当剩余存储空间小于申请预设值时,则将待存储数据包的流行度与存储空间中的各个数据包的流行度进行比较,如果存储空间中的所有数据包的流行度均高于待存储数据包的流行度,则返回同意响应但不返回存储请求,如果存储空间中存在流行度小于待存储数据包的流行度的数据包,则该参与节点返回同意响应及存储请求,并准备替换流行度最低的缓存内容,本发明根据待存储数据包在各个参与节点中的流行度,做出相应不同的处理,有选择性地、有目的性的对用户请求的数据包进行缓存管理,进一步提高了网络缓存命中率。
其中,流行度为某一参与节点在单位时间内某一内容兴趣包的请求次数与该单位时间段内总请求次数之比。
作为一种优选的实施例,在返回存储请求的参与节点中确定目标存储节点的过程具体为:
根据节点适宜存储关系式计算返回存储请求的参与节点的适宜存储系数;
将适宜存储系数最大的参与节点确定为目标存储节点;
其中,节点适宜存储关系式为f为适宜存储系数,c为该参与节点的剩余存储空间,i为待存储数据包在该参与节点中的流行度,I为待存储数据包在区域内的平均流行度。
具体的,当仲裁节点接收到区域内其他参与节点返回的存储请求后,对存储请求进行处理,通过比较各个返回存储请求的参与节点的剩余存储空间、区域平均内容流行度等信息,通过节点适宜存储关系式计算出存储待存储数据包的目标路由节点,即将适宜存储系数最大的参与节点确定为目标存储节点。
作为一种优选的实施例,将待存储数据包发送至目标存储节点的过程具体为:
将目标存储节点的信息广播至区域内所有参与节点,以便所有参与节点更新自身转发信息库FIB;
判断是否存在未返回确认信息的参与节点,若否,将待存储数据包发送至目标存储节点。
具体的,仲裁节点在计算出目标存储节点之后,将仲裁结果发送给所有参与节点(包括目标存储节点),并等待参与节点返回确认信息,仲裁结果包括目标存储节点的相关信息(如目标存储节点的ID)及待存储数据包名称等信息,目标存储节点在接收到仲裁结果后,做存储新数据包的准备并返回确认信息,其他参与节点在收到仲裁结果后更新FIB(Forwarding Information Base,转发信息库),以便后续如果有相同内容请求,兴趣包将根据FIB转发至存储该内容的节点,并在更新FIB后返回确认信息,每轮仲裁的待存储数据包的存储位置(即目标存储节点),该区域中的所有节点均可知,从而达到区域共识的目的,降低网络延时。
作为一种优选的实施例,将待存储数据包发送至目标存储节点之后,该数据包缓存方法还包括:
向区域内所有参与节点广播卸任信息,以便仲裁节点转换为参与节点。
具体的,将待存储数据包发送至目标存储节点后,仲裁节点向区域内所有参与节点广播卸任信息,该仲裁节点变为参与节点,参与下一轮的仲裁,当所有参与节点接收到仲裁节点发送的卸任信息后,结束本轮仲裁,参与下一轮仲裁,每个仲裁节点可能只主持一轮仲裁,上一轮主持仲裁的仲裁节点出现故障,不会影响下一轮主持仲裁的节点,进一步提高了区域网络的稳定性。
作为一种优选的实施例,判断是否接收到所有参与节点返回的确认信息之后,该数据包缓存方法还包括:
当存在未返回确认信息的参与节点时,判断未返回确认信息的参与节点是否包括目标存储节点;
若是,确定新的目标存储节点;
则将待存储数据包发送至目标存储节点的过程具体为:
将待存储数据包发送至新的目标存储节点。
具体的,根据上文所述,在确定目标存储节点后,仲裁节点会向区域内所有参与节点发送仲裁结果,并等待参与节点返回确认信息,如果在等待期限内收到区域内所有参与节点返回的确认信息,仲裁节点向目标存储节点发送待存储数据包,同时广播卸任信息,如果超过等待期限仍存在未返回确认信息的参与节点,则判断收到的确认信息中是否包括目标存储节点返回的确认信息,如果包括,则向目标存储节点发送待存储数据包,同时广播卸任信息,如果不包括,则在剩余发送存储请求的参与节点中计算新的目标存储节点。
综上所述,本发明提供了一种在内容中心网络中,使区域去中心化合作的共识方法,应用去中心化方式,使区域内各个路由节点在一个共识算法下进行协同工作,针对流行度不同的数据包,做出相应不同的处理,有选择性地,有目的性地对用户请求的数据包进行缓存管理,增强了区域网络的稳定性,且能在有效地提高网络缓存命中率,增加缓存数据丰富度,降低网络延时的同时,缓解缓存同质化的问题,降低网络用户隐私泄露风险。
请参照图2,图2为本发明所提供的一种数据包缓存系统,包括仲裁节点1及与该仲裁节点1处于同一区域的多个参与节点2,其中,图2中仅以一个仲裁节点1及与该仲裁节点1对应的参与节点2对数据包缓存系统进行说明,当然仲裁节点1也可以包括多个;
仲裁节点1,用于向所有参与节点2广播待存储数据包的信息,获取所有参与节点2返回的响应结果,并根据响应结果判断其自身是否满足仲裁条件;若是,在所有参与节点2中确定目标存储节点,将待存储数据包发送至目标存储节点,以便目标存储节点存储待存储数据包。
作为一种优选的实施例,仲裁节点1,还用于在将待存储数据包发送至目标存储节点之后,向区域内所有参与节点2广播卸任信息,以便仲裁节点1转换为参与节点2。
作为一种优选的实施例,信息包括待存储数据包的名称及转发ID表,转发ID表中包括区域内所有参与节点2的ID;
则向其所在区域内的所有参与节点2广播待存储数据包的信息的过程具体为:
仲裁节点1向其所在区域内的任意一个参与节点2发送待存储数据包的信息;
则参与节点2还用于:
判断转发ID表中是否存在自身ID,若是,将转发ID表中的自身ID删除,以更新转发ID表,并向域内端口转发待存储数据包的信息,若否,判断更新后的转发ID表中是否存在其他参与节点2的ID,若是,向域内端口转发待存储数据包的信息,若否,丢弃待存储数据包的信息。
作为一种优选的实施例,获取所有参与节点2返回的响应结果,并根据响应结果判断其自身是否满足仲裁条件的过程具体为:
获取所有参与节点2的响应结果,响应结果为同意响应或拒绝响应;
判断同意响应的参与节点2的个数是否大于仲裁预设值;
若是,仲裁节点1判定其自身满足仲裁条件,若否,仲裁节点1判定其自身不满足仲裁条件。
作为一种优选的实施例,在所有参与节点2中确定目标存储节点的过程具体为:
在返回存储请求的参与节点2中确定目标存储节点,其中,返回存储请求的参与节点2为同时满足第一约束条件和第二约束条件的参与节点2或同时满足第一约束条件、第三约束条件及第四约束条件的参与节点2;
第一约束条件为待定兴趣表PIT表中存在与待存储数据包对应的请求信息;
第二约束条件为剩余存储空间大于或等于申请预设值;
第三约束条件为剩余存储空间小于申请预设值;
第四约束条件为已用存储空间内存在流行度小于待存储数据包的流行度的数据包。
作为一种优选的实施例,在返回存储请求的参与节点2中确定目标存储节点的过程具体为:
根据节点适宜存储关系式计算返回存储请求的参与节点2的适宜存储系数;
将适宜存储系数最大的参与节点2确定为目标存储节点;
其中,节点适宜存储关系式为f为适宜存储系数,c为该参与节点2的剩余存储空间,i为待存储数据包在该参与节点2中的流行度,I为待存储数据包在区域内的平均流行度。
作为一种优选的实施例,将待存储数据包发送至目标存储节点的过程具体为:
将目标存储节点的信息广播至区域内所有参与节点2,以便所有参与节点2更新自身转发信息库FIB;
判断是否存在未返回确认信息的参与节点2,若否,将待存储数据包发送至目标存储节点。
作为一种优选的实施例,所述仲裁节点1,还用于在将待存储数据包发送至目标存储节点之后,向区域内所有参与节点2广播卸任信息,以便仲裁节点1转换为参与节点2。
作为一种优选的实施例,所述仲裁节点1还用于:
当存在未返回确认信息的参与节点2时,判断未返回确认信息的参与节点2是否包括目标存储节点;
若是,确定新的目标存储节点;
则将待存储数据包发送至目标存储节点的过程具体为:
将待存储数据包发送至新的目标存储节点。
本发明所提供的一种数据包缓存系统,具有和上述数据包缓存方法相同的有益效果。
对于本发明所提供的数据包缓存系统的介绍请参照上述实施例,本发明在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种数据包缓存方法,其特征在于,包括:
仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息,其中,所述仲裁节点为所述区域内包括所述待存储数据包的任意一个节点;
获取所有所述参与节点返回的响应结果,并根据所述响应结果判断其自身是否满足仲裁条件;
若是,在所有所述参与节点中确定目标存储节点,将所述待存储数据包发送至所述目标存储节点,以便所述目标存储节点存储所述待存储数据包。
2.根据权利要求1所述的数据包缓存方法,其特征在于,所述信息包括所述待存储数据包的名称及转发ID表,所述转发ID表中包括所述区域内所有所述参与节点的ID;
则所述仲裁节点向其所在区域内的所有与其对应的参与节点广播待存储数据包的信息的过程具体为:
所述仲裁节点向其所在区域内的任意一个所述参与节点发送所述待存储数据包的信息;
接收到所述信息的参与节点执行以下步骤:
步骤S1:判断所述转发ID表中是否存在自身ID,若是,执行步骤S2,若否,执行步骤S4;
步骤S2:将所述转发ID表中的自身ID删除,以更新所述转发ID表,执行步骤S3;
步骤S3:判断更新后的转发ID表中是否存在其他所述参与节点的ID,若是,执行步骤S4,若否,执行步骤S5;
步骤S4:向域内端口转发所述待存储数据包的信息;
步骤S5:丢弃所述待存储数据包的信息。
3.根据权利要求1所述的数据包缓存方法,其特征在于,所述获取所有所述参与节点返回的响应结果,并根据所述响应结果判断其自身是否满足仲裁条件的过程具体为:
获取所有所述参与节点的响应结果,所述响应结果为同意响应或拒绝响应;
判断同意响应的参与节点的个数是否大于仲裁预设值;
若是,所述仲裁节点判定其自身满足仲裁条件,若否,所述仲裁节点判定其自身不满足仲裁条件。
4.根据权利要求1所述的数据包缓存方法,其特征在于,所述在所有所述参与节点中确定目标存储节点的过程具体为:
在返回存储请求的参与节点中确定目标存储节点,其中,所述返回存储请求的参与节点为同时满足第一约束条件和第二约束条件的参与节点或同时满足所述第一约束条件、第三约束条件及第四约束条件的参与节点;
所述第一约束条件为待定兴趣表PIT表中存在与所述待存储数据包对应的请求信息;
所述第二约束条件为剩余存储空间大于或等于申请预设值;
所述第三约束条件为所述剩余存储空间小于所述申请预设值;
所述第四约束条件为已用存储空间内存在流行度小于所述待存储数据包的流行度的数据包。
5.根据权利要求4所述的数据包缓存方法,其特征在于,所述在返回存储请求的参与节点中确定目标存储节点的过程具体为:
根据节点适宜存储关系式计算返回存储请求的参与节点的适宜存储系数;
将所述适宜存储系数最大的参与节点确定为所述目标存储节点;
其中,所述节点适宜存储关系式为f为所述适宜存储系数,c为该参与节点的剩余存储空间,i为所述待存储数据包在该参与节点中的流行度,I为所述待存储数据包在所述区域内的平均流行度。
6.根据权利要求1所述的数据包缓存方法,其特征在于,所述将所述待存储数据包发送至所述目标存储节点的过程具体为:
将所述目标存储节点的信息广播至所述区域内所有所述参与节点,以便所有所述参与节点更新自身转发信息库FIB;
判断是否存在未返回确认信息的参与节点,若否,将所述待存储数据包发送至所述目标存储节点。
7.根据权利要求1-6任意一项所述的数据包缓存方法,其特征在于,所述将所述待存储数据包发送至所述目标存储节点之后,该数据包缓存方法还包括:
向所述区域内所有所述参与节点广播卸任信息,以便所述仲裁节点转换为所述参与节点。
8.根据权利要求6所述的数据包缓存方法,其特征在于,所述判断是否接收到所有所述参与节点返回的确认信息之后,该数据包缓存方法还包括:
当存在未返回确认信息的参与节点时,判断未返回所述确认信息的参与节点是否包括所述目标存储节点;
若是,确定新的目标存储节点;
则所述将所述待存储数据包发送至所述目标存储节点的过程具体为:
将所述待存储数据包发送至所述新的目标存储节点。
9.一种数据包缓存系统,其特征在于,包括仲裁节点及与所述仲裁节点处于同一区域的多个参与节点;
所述仲裁节点,用于向所有所述参与节点广播待存储数据包的信息,获取所有所述参与节点返回的响应结果,并根据所述响应结果判断其自身是否满足仲裁条件;若是,在所有所述参与节点中确定目标存储节点,将所述待存储数据包发送至所述目标存储节点,以便所述目标存储节点存储所述待存储数据包。
10.根据权利要求9所述的数据包缓存系统,其特征在于,所述仲裁节点,还用于在将所述待存储数据包发送至所述目标存储节点之后,向所述区域内所有所述参与节点广播卸任信息,以便所述仲裁节点转换为所述参与节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811109699.XA CN109218225B (zh) | 2018-09-21 | 2018-09-21 | 一种数据包缓存方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811109699.XA CN109218225B (zh) | 2018-09-21 | 2018-09-21 | 一种数据包缓存方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109218225A true CN109218225A (zh) | 2019-01-15 |
CN109218225B CN109218225B (zh) | 2022-02-15 |
Family
ID=64985480
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811109699.XA Active CN109218225B (zh) | 2018-09-21 | 2018-09-21 | 一种数据包缓存方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109218225B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625565A (zh) * | 2020-05-22 | 2020-09-04 | 哈尔滨工程大学 | 面向信息中心网络缓存隐私保护的多属性协作缓存方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4623030B2 (ja) * | 2007-03-27 | 2011-02-02 | ブラザー工業株式会社 | ツリー型放送システム、接続先決定方法、接続管理装置、及び接続管理処理プログラム等 |
WO2011123007A1 (en) * | 2010-04-01 | 2011-10-06 | Telefonaktiebolaget L M Ericsson (Publ) | A method and network node for use in link level communication in a data communications network |
CN102693297A (zh) * | 2012-05-16 | 2012-09-26 | 华为技术有限公司 | 数据处理方法、节点和提取、转换和加载etl系统 |
CN104717154A (zh) * | 2015-02-27 | 2015-06-17 | 华为技术有限公司 | 一种发送数据包的方法及装置 |
CN105635319A (zh) * | 2016-03-03 | 2016-06-01 | 北京邮电大学 | 一种数据缓存的方法及装置 |
CN105721600A (zh) * | 2016-03-04 | 2016-06-29 | 重庆大学 | 一种基于复杂网络度量的内容中心网络缓存方法 |
CN106982248A (zh) * | 2017-03-01 | 2017-07-25 | 中国科学院深圳先进技术研究院 | 一种内容中心网络的缓存方法及装置 |
CN107105043A (zh) * | 2017-04-28 | 2017-08-29 | 西安交通大学 | 一种基于软件定义网络的内容中心网络缓存方法 |
CN108234632A (zh) * | 2017-12-29 | 2018-06-29 | 北京奇虎科技有限公司 | 一种内容分发网络cdn的数据分发方法和装置 |
CN108347379A (zh) * | 2018-02-12 | 2018-07-31 | 重庆邮电大学 | 基于区域集中存储的内容中心网络路由方法 |
CN108366089A (zh) * | 2018-01-08 | 2018-08-03 | 南京邮电大学 | 一种基于内容流行度和节点重要度的ccn缓存方法 |
-
2018
- 2018-09-21 CN CN201811109699.XA patent/CN109218225B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4623030B2 (ja) * | 2007-03-27 | 2011-02-02 | ブラザー工業株式会社 | ツリー型放送システム、接続先決定方法、接続管理装置、及び接続管理処理プログラム等 |
WO2011123007A1 (en) * | 2010-04-01 | 2011-10-06 | Telefonaktiebolaget L M Ericsson (Publ) | A method and network node for use in link level communication in a data communications network |
CN102693297A (zh) * | 2012-05-16 | 2012-09-26 | 华为技术有限公司 | 数据处理方法、节点和提取、转换和加载etl系统 |
CN104717154A (zh) * | 2015-02-27 | 2015-06-17 | 华为技术有限公司 | 一种发送数据包的方法及装置 |
CN105635319A (zh) * | 2016-03-03 | 2016-06-01 | 北京邮电大学 | 一种数据缓存的方法及装置 |
CN105721600A (zh) * | 2016-03-04 | 2016-06-29 | 重庆大学 | 一种基于复杂网络度量的内容中心网络缓存方法 |
CN106982248A (zh) * | 2017-03-01 | 2017-07-25 | 中国科学院深圳先进技术研究院 | 一种内容中心网络的缓存方法及装置 |
CN107105043A (zh) * | 2017-04-28 | 2017-08-29 | 西安交通大学 | 一种基于软件定义网络的内容中心网络缓存方法 |
CN108234632A (zh) * | 2017-12-29 | 2018-06-29 | 北京奇虎科技有限公司 | 一种内容分发网络cdn的数据分发方法和装置 |
CN108366089A (zh) * | 2018-01-08 | 2018-08-03 | 南京邮电大学 | 一种基于内容流行度和节点重要度的ccn缓存方法 |
CN108347379A (zh) * | 2018-02-12 | 2018-07-31 | 重庆邮电大学 | 基于区域集中存储的内容中心网络路由方法 |
Non-Patent Citations (4)
Title |
---|
PEI HUANG,JIANYA CHEN: "Improved CCN Routing Based on the Combination of", 《PROCEEDINGS OF 2013 3RD INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND NETWORK TECHNOLOGY》 * |
刘贵财,兰巨龙,王鹏: "内容中心网络中基于区域集中化控制的协作缓存路由机制", 《计算机应用研究》 * |
张天魁,单思洋,许晓耕,刘银龙: "信息中心网络缓存技术研究综述", 《北京邮电大学学报》 * |
段炼,杨龙祥,任美翠: "内容中心网络及其缓存策略研究", 《计算机技术与发展》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625565A (zh) * | 2020-05-22 | 2020-09-04 | 哈尔滨工程大学 | 面向信息中心网络缓存隐私保护的多属性协作缓存方法 |
CN111625565B (zh) * | 2020-05-22 | 2022-09-02 | 哈尔滨工程大学 | 面向信息中心网络缓存隐私保护的多属性协作缓存方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109218225B (zh) | 2022-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Hierarchical caching for statistical QoS guaranteed multimedia transmissions over 5G edge computing mobile wireless networks | |
US6564244B1 (en) | System for chat network search notifying user of changed-status chat network meeting user-tailored input predetermined parameters relating to search preferences | |
CN104580393B (zh) | 用于服务器集群系统的扩容方法、装置及服务器集群系统 | |
US20050138196A1 (en) | Reduction of network server loading | |
CN107181734B (zh) | 一种cdn-p2p网络架构的流媒体缓存替换方法 | |
US20150052030A1 (en) | System and method of accelerating response time to inquiries regarding inventory information in a network | |
CN106998370A (zh) | 访问控制方法、装置以及系统 | |
CN107645525A (zh) | 内容分发网络的探测处理、调度方法及相应装置、节点 | |
JP2005010970A (ja) | 分散キャッシュ制御方法、ネットワークシステムおよび当該ネットワークに用いられる制御サーバないしルータ | |
CN101473630A (zh) | 用于建立对等会话的方法、装置和体系架构 | |
Mershad et al. | SSUM: smart server update mechanism for maintaining cache consistency in mobile environments | |
CN103178989A (zh) | 访问热度统计方法及装置 | |
CN111200627A (zh) | 一种信息中心网络中转发端口的确定方法及装置 | |
CN102065107A (zh) | 对等通用内容分发平台及内容缓存方法 | |
KR20140099834A (ko) | 분산형 공유 캐싱 시스템을 위한 적응적 콘텐츠 탐색 방법 및 시스템 | |
CN109218225A (zh) | 一种数据包缓存方法及系统 | |
CN107222316A (zh) | 一种自适应房间人数的聊天室配置方法及聊天室系统 | |
CN102006238B (zh) | 一种无结构p2p网络中的均衡快速搜索方法 | |
CN112202833A (zh) | Cdn系统、请求处理方法以及调度服务器 | |
CN108632401A (zh) | 减少dns递归服务器上隐私泄漏的匿名查询方法及系统 | |
CN101771691B (zh) | 融合用户信息的系统及用户信息的感知、融合和决策方法 | |
CN108401040B (zh) | 用于ndn的内容接收方法、内容发送方法、装置及系统 | |
US20100257256A1 (en) | Method for downloading file in parallel | |
CN106790638B (zh) | 命名数据网络中基于主动缓存的数据传输方法及系统 | |
CN106888262A (zh) | 一种缓存替换方法及装置 |
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 |