CN105072030A - 一种基于内容聚类的命名数据网络路由系统及其聚类查询方法 - Google Patents
一种基于内容聚类的命名数据网络路由系统及其聚类查询方法 Download PDFInfo
- Publication number
- CN105072030A CN105072030A CN201510381934.9A CN201510381934A CN105072030A CN 105072030 A CN105072030 A CN 105072030A CN 201510381934 A CN201510381934 A CN 201510381934A CN 105072030 A CN105072030 A CN 105072030A
- Authority
- CN
- China
- Prior art keywords
- bunch
- node
- class
- interior nodes
- module
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/14—Routing performance; Theoretical aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于命名数据网络领域,具体涉及一种基于内容聚类的命名数据网络路由系统及其聚类查询方法。本发明包括:簇头节点信息库用于存储每一类簇的信息:类簇名ClassName,簇头节点ID;簇内节点信息索引表用于记录类簇内节点的信息:节点ID,节点名称NodeName,访问次数Times,更新时间UpdateTime;每一个类簇都拥有一个与该类簇相对应的簇内节点信息索引表。本发明中将命名数据网络进行聚类,按照不同的内容类型划分为多个类别,分别形成类簇。直接定位内容减少请求兴趣包转发次数提高路由效率,并且易于管理和维护网络。
Description
技术领域
本发明属于命名数据网络领域,具体涉及一种基于内容聚类的命名数据网络路由系统及其聚类查询方法。
背景技术
命名数据网络(NDN,NamedDataNetwork)是一种不再以IP地址为主而是以内容为主的未来网络。网络中的报文包头不再以IP地址为标识,而是以内容名称作为标识,解决了传统网络IP地址二义性的问题。命名数据网络改变了主机到主机的通信范例,使用名称进行路由,且路由器在网络中缓存数据。因此路由机制是命名数据网络中最为重要的基础机制,该机制的核心问题是如何提升路由的查询效率和如何减少查询时延。命名数据网络是基于名字进行数据包的路由查找和转发,但由于命名数据网络采用层次化的命名机制,将会导致内容名称过长,会极大降低路由效率。
目前,命名数据网络中现有的路由是基于命名的广播和多播机制。虽然这种路由机制可以提高数据传输的多样性和可靠性,保证了网络性能,但同时带来查询转发次数增多、查询时延过长、检索冗余、网络负载严重等问题。NCE(NeighborCacheExplore)邻居缓存路由策略,利用分布式蚁群算法在无缓存时探测最短路径,并将节点缓存因素引入到路由决策中对路由算法进行优化。虽然NCE可以充分利用缓存的特点解决转发效率问题,但是获取最短路径需要限制环境,并且探测最短路径的同时也延长了查询时延、增加了网络负载。在命名数据网络路由策略方面,专利“在命名数据网络中使用多路径路由和内容缓存的无缝移动方案”(CN201280039368.8),在移动节点(MN)启动切换程序时,将内容兴趣从MN组播到第一附接点(PoA)中,第二附接点(PoA)用于接收来自第一附接点PoA的组播兴趣、转发兴趣到命名数据网络、接收命名数据网络的内容数据,并且将内容数据转发到MN。该专利利用中间节点第一附接点和第二附接点来完成路由查询和转发。专利“Systems,methodsandalgorithmsfornameddatanetworkroutingwithpathlabeling”(US20140023076A1),在源节点和目的节点之间标识一条唯一路径,即为路径标签。请求兴趣包根据请求数据的名称和路径标签查找数据。以上专利分别根据节点间接性、路径标识对命名数据网络路由机制进行改进,与本发明采用的方法和针对的问题均不同。
综上所述,目前路由转发方案大多面向整个网络进行路由转发,主要缺点表现在:
(1)当网络节点较多时,面向整个网络进行广播式路由转发,将降低查询效果、增加搜索成本。
(2)在不确定某个节点缓存所请求数据的情况下,用户发送请求兴趣包,则需要进行多次转发才能找到所需数据,将会加大查询时延。
发明内容
本发明的目的在于提供一种基于内容聚类的命名数据网络路由系统。本发明的目的还在于提供一种基于内容聚类的命名数据网络路由系统的聚类查询方法。
本发明的目的是这样实现的:
一种基于内容聚类的命名数据网络路由系统:
簇头节点信息库用于存储每一类簇的信息:类簇名ClassName,簇头节点ID;
簇内节点信息索引表用于记录类簇内节点的信息:节点ID,节点名称NodeName,访问次数Times,更新时间UpdateTime;每一个类簇都拥有一个与该类簇相对应的簇内节点信息索引表;
簇查询模块用于接收用户发送的请求数据包,对请求数据包进行处理和查询,簇查询模块包括名称解析模块、类簇内容匹配模块和簇内节点匹配模块三部分:
名称解析模块接收命名数据网络用户发送的请求兴趣包:包名,内容;对请求兴趣包进行解析,解析为三元组的请求兴趣包InP,包括:类名,请求兴趣名,内容,其中类名是用于在类簇名ClassName中查找到匹配的类簇,请求兴趣名是用于定位满足请求兴趣包的节点位置;将请求兴趣包InP发送给类簇内容后匹配模块;
类簇内容匹配模块接收来自名称解析模块的请求兴趣包InP,从簇头节点信息库中获取类簇名ClassName;对类名和类簇名ClassName进行名称前缀匹配查找,查找到类相似度Sclass大于阈值α的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列;依据类簇相似表把请求兴趣包InP交给簇内节点匹配模块,并把类簇相似表中相关信息删除;
簇内节点匹配模块接收来自类簇内容匹配的请求兴趣包InP,获取类簇相似表中类簇的簇内节点信息索引表。对请求兴趣名和索引表中节点名称NodeName进行匹配查找,若查找到节点相似度Snode大于阀值β的节点时,再依据簇内节点信息索引表查找这类节点ID,进行查找数据;
簇维护模块是对簇头节点、簇内节点进行管理,簇维护模块包括候选簇头模块、簇内节点管理模块和节点替换模块三部分:
候选簇头模块是用于管理簇头节点,从簇头节点信息库和簇内节点信息索引表获取信息;当簇头节点发生异常时,候选簇头模块将选择一个候选节点来替代当前簇头节点,并更新簇头节点信息库;在每个类簇中,选择与簇头节点相邻一跳的所有邻居节点为后备节点;在后备节点中,在满足具有最大连通度,并且只归属为一个类簇的节点中选择一个节点为候选簇头节点;簇头节点在时间Tcopy内,对候选簇头节点发送相应簇内节点信息索引表进行备份;
簇内节点管理模块是用于管理更新簇内节点,在时间Tupdate内,该模块将对簇内节点信息索引表中所包含节点进行检查,检查节点是否依然存在于该类簇,若存在,则保留该项索引表信息;否则,则对簇内节点索引表中相对应信息进行修改或删除;
替换模块是用于处理归属类簇的移动节点;若节点更新数据后归属为另一类簇,该节点会主动发送请求信息要求加入该类簇;当簇内节点索引表空间充足时,则加入该节点的信息;当节点由于簇内节点索引表空间不足而不能正常加入时,节点需要按优先级排队等候;排队优先级以节点的访问次数Times作为度量参数,节点的访问次数Times值越大,优先级越高;当节点的访问次数Times值相同时,按照先到先服务原则进行处理;当簇内节点索引表有空间时,再将排队等候的节点依照顺序加入其中。
一种基于内容聚类的命名数据网络路由系统的聚类查询方法,包括如下步骤:
(1)命名数据网络用户把请求数据包发送到名称解析模块;
(2)名称解析模块将请求兴趣解析为三元组的请求兴趣包InP,将请求兴趣包InP发送到类簇内容匹配模块;
(3)簇内节点更新模块判断簇内节点是否发生登入或登出情况,若发生登入或登出情况,执行步骤(4);否则,执行步骤(5);
(4)簇内节点更新管理模块对簇内节点进行检查,记录簇内节点的登入登出,并对簇内节点索引表进行更新;当簇内节点索引表空间不足时,节点替换模块将对登入节点进行处理;
(5)候选簇头节点模块判断簇头节点是否发生异常情况,若簇头节点发生异常情况,执行步骤(6);否则,执行步骤(7);
(6)候选簇头模块获取簇内信息索引表信息,并对簇头节点信息库进行更新处理;簇内节点更新管理模块对簇内节点进行检查,记录节点的登入登出,并对索引表进行更新;当索引表空间不足时,节点替换模块将对登入节点进行处理;
(7)类簇内容匹配模块接收名称解析模块发送的请求兴趣包InP;将从簇头节点信息库中获取的类簇名ClassName与请求兴趣包InP中类名匹配相似度;查找到类相似度Sclass大于阀值α的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列;
(8)类簇内容匹配模块将请求兴趣包InP依据表中匹配的类簇,发送到与该类簇相关的簇内节点匹配模块;
(9)簇内节点匹配模块接收请求兴趣包InP;获取簇内信息索引表信息,并对表中节点名称NodeName和请求兴趣包InP中请求兴趣名前缀匹配,若查找到节点相似度Snode大于阀值β的节点时,再依据簇内节点信息索引表查找相对应节点ID,进行查询数据;
(10)簇内节点匹配模块判断是否找到所需要的数据,若查找到所需要数据,执行步骤(11);否则,执行步骤(12);
(11)簇内节点匹配模块对查询的数据整合为数据包,并把数据包返回给命名数据网络用户,查询结束;
(12)类簇内容匹配模块判断类相似表中是否还存在剩余项,若存在,则返回执行步骤(8);否则,查询结束。
本发明的有益效果体现在:
(1)本发明中将命名数据网络进行聚类,按照不同的内容类型划分为多个类别,分别形成类簇。直接定位内容减少请求兴趣包转发次数提高路由效率,并且易于管理和维护网络。
(2)本发明在查询数据时,是首先依据簇头节点进行查询,当找到所归属的类簇时,再对簇内进行查询。使请求兴趣包更容易定位数据位置,提高了查找效率。
(3)本发明在类名匹配查找和请求兴趣名匹配查找的过程中,设定了相似度阀值α(0<α<1)和β(α<β<1),当查找到类相似度Sclass大于阀值α的类簇和节点相似度Snode大于阀值β的节点时,才对该类簇或节点进行查询,这样缩小了查找范围,进而减少了查询时延。
附图说明
图1一种基于内容聚类的命名数据网络路由系统及方法的部署图;
图2一种基于内容聚类的命名数据网络路由系统及方法的流程图。
具体实施方式
下面结合附图对本发明作更详细的描述:
本发明的特点是将网络中内容聚类为多个类簇,并为每一个类簇定义一个类簇名(ClassName)。在每个簇内内容相似,但簇与簇之间内容不相似。并且每个类簇构建属于该类簇的簇内节点信息表。当用户发送请求数据包时,首先通过类簇间进行匹配相似,之后在与之匹配的类簇内进行索引匹配查找信息。
本发明是一种基于内容聚类的命名数据网络路由系统及方法,该路由系统包括簇头节点信息库、簇内节点信息索引表、簇查询模块、簇维护模块四部分。
(1)簇头节点信息库用于存储每一类簇的信息(类簇名ClassName,簇头节点ID)。
(2)簇内节点信息索引表用于记录类簇内节点的信息(节点ID,节点名称NodeName,访问次数Times,更新时间UpdateTime)。每一个类簇都拥有一个与该类簇相对应的簇内节点信息索引表。
(3)簇查询模块用于接收用户发送的请求数据包,并对请求数据包进行处理和查询。簇查询模块包括名称解析模块、类簇内容匹配模块和簇内节点匹配模块三部分,具体内容如下:
①名称解析模块接收命名数据网络用户发送的请求兴趣包(包名,内容),对请求兴趣包进行解析,解析为三元组(类名,请求兴趣名,内容)的请求兴趣包InP,其中类名是用于在类簇名ClassName中查找到匹配的类簇,请求兴趣名是用于定位满足请求兴趣包的节点位置。将请求兴趣包InP(类名,请求兴趣名,内容)发送给类簇内容后匹配模块。
②类簇内容匹配模块接收来自名称解析模块的请求兴趣包InP(类名,请求兴趣名,内容),并从簇头节点信息库中获取类簇名ClassName。对类名和类簇名ClassName进行名称前缀匹配查找,查找到类相似度Sclass大于阈值α(0<α<1)的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列。依据类簇相似表把请求兴趣包InP(类名,请求兴趣名,内容)交给簇内节点匹配模块,并把类簇相似表中相关信息删除。
③簇内节点匹配模块接收来自类簇内容匹配的请求兴趣包InP(类名,请求兴趣名,内容),获取类簇相似表中类簇的簇内节点信息索引表。对请求兴趣名和索引表中节点名称NodeName进行匹配查找,若查找到节点相似度Snode大于阀值β(α<β<1)的节点时,再依据簇内节点信息索引表查找这类节点ID,进行查找数据。
(4)簇维护模块是对簇头节点、簇内节点进行管理。簇维护模块包括候选簇头模块、簇内节点管理模块和节点替换模块三部分,具体内容如下:
①候选簇头模块是用于管理簇头节点,从簇头节点信息库和簇内节点信息索引表获取信息。当簇头节点发生异常时,候选簇头模块将选择一个候选节点来替代当前簇头节点,并更新簇头节点信息库。在每个类簇中,选择与簇头节点相邻一跳的所有邻居节点为后备节点。在后备节点中,在满足具有最大连通度,并且只归属为一个类簇的节点中选择一个节点为候选簇头节点。簇头节点在时间Tcopy(Tcopy事先设定)内,对候选簇头节点发送相应簇内节点信息索引表进行备份。
②簇内节点管理模块是用于管理更新簇内节点。在时间Tupdate(Tupdate事先设定)内,该模块将对簇内节点信息索引表中所包含节点进行检查,检查节点是否依然存在于该类簇,若存在,则保留该项索引表信息;否则,则对簇内节点索引表中相对应信息进行修改或删除。
③替换模块是用于处理归属类簇的移动节点。若节点更新数据后归属为另一类簇,该节点会主动发送请求信息要求加入该类簇。当簇内节点索引表空间充足时,则加入该节点的信息(节点ID,节点名称NodeName,访问次数Times,更新时间UpdateTime);当节点由于簇内节点索引表空间不足而不能正常加入时,节点需要按优先级排队等候。排队优先级以节点的访问次数Times作为度量参数,节点的访问次数Times值越大,优先级越高。当节点的访问次数Times值相同时,按照先到先服务原则进行处理。当簇内节点索引表有空间时,再将排队等候的节点依照顺序加入其中。
本发明的一种基于内容聚类的命名数据网络路由系统及方法流程包括:
(1)命名数据网络用户把请求数据包发送到名称解析模块。
(2)名称解析模块将请求兴趣包(包名,内容)解析为三元组(类名,请求兴趣名,内容)的请求兴趣包InP,将请求兴趣包InP发送到类簇内容匹配模块。
(3)簇内节点更新模块判断簇内节点是否发生登入或登出情况,若发生登入或登出情况,执行(4);否则,执行(5)。
(4)簇内节点更新管理模块对簇内节点进行检查,记录簇内节点的登入登出,并对簇内节点索引表进行更新;当簇内节点索引表空间不足时,节点替换模块将对登入节点进行处理。
(5)候选簇头节点模块判断簇头节点是否发生异常情况,若簇头节点发生异常情况,执行(6);否则,执行(7)。
(6)候选簇头模块获取簇内信息索引表信息,并对簇头节点信息库进行更新处理;簇内节点更新管理模块对簇内节点进行检查,记录节点的登入登出,并对索引表进行更新。当索引表空间不足时,节点替换模块将对登入节点进行处理。
(7)类簇内容匹配模块接收名称解析模块发送的请求兴趣包InP。将从簇头节点信息库中获取的类簇名ClassName与请求兴趣包InP中类名匹配相似度。查找到类相似度Sclass大于阀值α(0<α<1)的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列。
(8)类簇内容匹配模块将请求兴趣包InP依据表中匹配的类簇,发送到与该类簇相关的簇内节点匹配模块。
(9)簇内节点匹配模块接收请求兴趣包InP。获取簇内信息索引表信息,并对表中节点名称NodeName和请求兴趣包InP中请求兴趣名前缀匹配,若查找到节点相似度Snode大于阀值β(α<β<1)的节点时,再依据簇内节点信息索引表查找相对应节点ID,进行查询数据。
(10)簇内节点匹配模块判断是否找到所需要的数据,若查找到所需要数据,执行(11);否则,执行(12)。
(11)簇内节点匹配模块对查询的数据整合为数据包,并把数据包返回给命名数据网络用户,查询结束。
(12)类簇内容匹配模块判断类相似表中是否还存在剩余项,若存在,则返回执行(8);否则,查询结束。
本发明是一种基于内容聚类的命名数据网络路由系统及方法。本发明利用了命名数据网络以内容为中心的特点,将网络内容分为多个类别,每类内容形成一个单独的簇。在每个簇内内容相似,但簇与簇之间内容不相似。本发明中所有模块部署在簇头节点中。用户查询信息时,首先通过广播找到相似度高的类簇,然后在此类簇内进行索引查找。此外,部署簇维护模块对簇头节点和簇内节点进行维护管理。本发明定位内容减少转发次数,有效提高查询数据效率,并且减少查询数据时延。针对类簇进行定期维护,这样使得整个网络具有较强的稳定性。最终,提高整个网络性能。
本发明是一种基于内容聚类的命名数据网络路由系统及方法,该路由系统包括簇头节点信息库、簇内节点信息索引表、簇查询模块、簇维护模块四部分。
(1)簇头节点信息库用于存储每一类簇的信息(类簇名ClassName,簇头节点ID)。
(2)簇内节点信息索引表用于记录类簇内节点的信息(节点ID,节点名称NodeName,访问次数Times,更新时间UpdateTime)。每一个类簇都拥有一个与该类簇相对应的簇内节点信息索引表。
(3)簇查询模块用于接收用户发送的请求数据包,并对请求数据包进行处理和查询。簇查询模块包括名称解析模块、类簇内容匹配模块和簇内节点匹配模块三部分,具体内容如下:
①名称解析模块接收命名数据网络用户发送的请求兴趣包(包名,内容),对请求兴趣包进行解析,解析为三元组(类名,请求兴趣名,内容)的请求兴趣包InP,其中类名是用于在类簇名ClassName中查找到匹配的类簇,请求兴趣名是用于定位满足请求兴趣包的节点位置。将请求兴趣包InP(类名,请求兴趣名,内容)发送给类簇内容后匹配模块。
②类簇内容匹配模块接收来自名称解析模块的请求兴趣包InP(类名,请求兴趣名,内容),并从簇头节点信息库中获取类簇名ClassName。对类名和类簇名ClassName进行名称前缀匹配查找,查找到类相似度Sclass大于阈值α(0<α<1)的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列。依据类簇相似表把请求兴趣包InP(类名,请求兴趣名,内容)交给簇内节点匹配模块,并把类簇相似表中相关信息删除。
③簇内节点匹配模块接收来自类簇内容匹配的请求兴趣包InP(类名,请求兴趣名,内容),获取类簇相似表中类簇的簇内节点信息索引表。对请求兴趣名和索引表中节点名称NodeName进行匹配查找,若查找到节点相似度Snode大于阀值β(α<β<1)的节点时,再依据簇内节点信息索引表查找这类节点ID,进行查找数据。
(4)簇维护模块是对簇头节点、簇内节点进行管理。簇维护模块包括候选簇头模块、簇内节点管理模块和节点替换模块三部分,具体内容如下:
①候选簇头模块是用于管理簇头节点,从簇头节点信息库和簇内节点信息索引表获取信息。当簇头节点发生异常时,候选簇头模块将选择一个候选节点来替代当前簇头节点,并更新簇头节点信息库。在每个类簇中,选择与簇头节点相邻一跳的所有邻居节点为后备节点。在后备节点中,在满足具有最大连通度,并且只归属为一个类簇的节点中选择一个节点为候选簇头节点。簇头节点在时间Tcopy(Tcopy事先设定)内,对候选簇头节点发送相应簇内节点信息索引表进行备份。
②簇内节点管理模块是用于管理更新簇内节点。在时间Tupdate(Tupdate事先设定)内,该模块将对簇内节点信息索引表中所包含节点进行检查,检查节点是否依然存在于该类簇,若存在,则保留该项索引表信息;否则,则对簇内节点索引表中相对应信息进行修改或删除。
③替换模块是用于处理归属类簇的移动节点。若节点更新数据后归属为另一类簇,该节点会主动发送请求信息要求加入该类簇。当簇内节点索引表空间充足时,则加入该节点的信息(节点ID,节点名称NodeName,访问次数Times,更新时间UpdateTime);当节点由于簇内节点索引表空间不足而不能正常加入时,节点需要按优先级排队等候。排队优先级以节点的访问次数Times作为度量参数,节点的访问次数Times值越大,优先级越高。当节点的访问次数Times值相同时,按照先到先服务原则进行处理。当簇内节点索引表有空间时,再将排队等候的节点依照顺序加入其中。
参阅图1和图2,本发明通过以下步骤来实施具体的命名数据网络路由系统:
步骤1命名数据网络用户把请求数据包发送到名称解析模块。
步骤2名称解析模块将请求兴趣包(包名,内容)解析为三元组(类名,请求兴趣名,内容)的请求兴趣包InP,将请求兴趣包InP发送到类簇内容匹配模块。
步骤3簇内节点更新模块判断簇内节点是否发生登入或登出情况,若发生登入或登出情况,执行步骤4;否则,执行步骤5。
步骤4簇内节点更新管理模块对簇内节点进行检查,记录簇内节点的登入登出,并对簇内节点索引表进行更新;当簇内节点索引表空间不足时,节点替换模块将对登入节点进行处理。
步骤5候选簇头节点模块判断簇头节点是否发生异常情况,若簇头节点发生异常情况,执行步骤6;否则,执行步骤7。
步骤6候选簇头模块获取簇内信息索引表信息,并对簇头节点信息库进行更新处理;簇内节点更新管理模块对簇内节点进行检查,记录节点的登入登出,并对索引表进行更新。当索引表空间不足时,节点替换模块将对登入节点进行处理。
步骤7类簇内容匹配模块接收名称解析模块发送的请求兴趣包InP。将从簇头节点信息库中获取的类簇名ClassName与请求兴趣包InP中类名匹配相似度。查找到类相似度Sclass大于阀值α(0<α<1)的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列。
步骤8类簇内容匹配模块将请求兴趣包InP依据表中匹配的类簇,发送到与该类簇相关的簇内节点匹配模块。
步骤9簇内节点匹配模块接收请求兴趣包InP。获取簇内信息索引表信息,并对表中节点名称NodeName和请求兴趣包InP中请求兴趣名前缀匹配,若查找到节点相似度Snode大于阀值β(α<β<1)的节点时,再依据簇内节点信息索引表查找相对应节点ID,进行查询数据。
步骤10簇内节点匹配模块判断是否找到所需要的数据,若查找到所需要数据,执行步骤11;否则,执行步骤12。
步骤11簇内节点匹配模块对查询的数据整合为数据包,并把数据包返回给命名数据网络用户,查询结束。
步骤12类簇内容匹配模块判断类相似表中是否还存在剩余项,若存在,则返回执行步骤8;否则,查询结束。
本发明的有益效果体现在:
(1)本发明中将命名数据网络进行聚类,按照不同的内容类型划分为多个类别,分别形成类簇。直接定位内容减少请求兴趣包转发次数提高路由效率,并且易于管理和维护网络。
(2)本发明在查询数据时,是首先依据簇头节点进行查询,当找到所归属的类簇时,再对簇内进行查询。使请求兴趣包更容易定位数据位置,提高了查找效率。
(3)本发明在类名匹配查找和请求兴趣名匹配查找的过程中,设定了相似度阀值α(0<α<1)和β(α<β<1),当查找到类相似度Sclass大于阀值α的类簇和节点相似度Snode大于阀值β的节点时,才对该类簇或节点进行查询,这样缩小了查找范围,进而减少了查询时延。
Claims (2)
1.一种基于内容聚类的命名数据网络路由系统,包括簇头节点信息库其特征在于:
簇头节点信息库用于存储每一类簇的信息:类簇名ClassName,簇头节点ID;
簇内节点信息索引表用于记录类簇内节点的信息:节点ID,节点名称NodeName,访问次数Times,更新时间UpdateTime;每一个类簇都拥有一个与该类簇相对应的簇内节点信息索引表;
簇查询模块用于接收用户发送的请求数据包,对请求数据包进行处理和查询,簇查询模块包括名称解析模块、类簇内容匹配模块和簇内节点匹配模块三部分:
名称解析模块接收命名数据网络用户发送的请求兴趣包:包名,内容;对请求兴趣包进行解析,解析为三元组的请求兴趣包InP,包括:类名,请求兴趣名,内容,其中类名是用于在类簇名ClassName中查找到匹配的类簇,请求兴趣名是用于定位满足请求兴趣包的节点位置;将请求兴趣包InP发送给类簇内容后匹配模块;
类簇内容匹配模块接收来自名称解析模块的请求兴趣包InP,从簇头节点信息库中获取类簇名ClassName;对类名和类簇名ClassName进行名称前缀匹配查找,查找到类相似度Sclass大于阈值α的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列;依据类簇相似表把请求兴趣包InP交给簇内节点匹配模块,并把类簇相似表中相关信息删除;
簇内节点匹配模块接收来自类簇内容匹配的请求兴趣包InP,获取类簇相似表中类簇的簇内节点信息索引表。对请求兴趣名和索引表中节点名称NodeName进行匹配查找,若查找到节点相似度Snode大于阀值β的节点时,再依据簇内节点信息索引表查找这类节点ID,进行查找数据;
簇维护模块是对簇头节点、簇内节点进行管理,簇维护模块包括候选簇头模块、簇内节点管理模块和节点替换模块三部分:
候选簇头模块是用于管理簇头节点,从簇头节点信息库和簇内节点信息索引表获取信息;当簇头节点发生异常时,候选簇头模块将选择一个候选节点来替代当前簇头节点,并更新簇头节点信息库;在每个类簇中,选择与簇头节点相邻一跳的所有邻居节点为后备节点;在后备节点中,在满足具有最大连通度,并且只归属为一个类簇的节点中选择一个节点为候选簇头节点;簇头节点在时间Tcopy内,对候选簇头节点发送相应簇内节点信息索引表进行备份;
簇内节点管理模块是用于管理更新簇内节点,在时间Tupdate内,该模块将对簇内节点信息索引表中所包含节点进行检查,检查节点是否依然存在于该类簇,若存在,则保留该项索引表信息;否则,则对簇内节点索引表中相对应信息进行修改或删除;
替换模块是用于处理归属类簇的移动节点;若节点更新数据后归属为另一类簇,该节点会主动发送请求信息要求加入该类簇;当簇内节点索引表空间充足时,则加入该节点的信息;当节点由于簇内节点索引表空间不足而不能正常加入时,节点需要按优先级排队等候;排队优先级以节点的访问次数Times作为度量参数,节点的访问次数Times值越大,优先级越高;当节点的访问次数Times值相同时,按照先到先服务原则进行处理;当簇内节点索引表有空间时,再将排队等候的节点依照顺序加入其中。
2.一种基于内容聚类的命名数据网络路由系统的聚类查询方法,其特征在于,包括如下步骤:
(1)命名数据网络用户把请求数据包发送到名称解析模块;
(2)名称解析模块将请求兴趣解析为三元组的请求兴趣包InP,将请求兴趣包InP发送到类簇内容匹配模块;
(3)簇内节点更新模块判断簇内节点是否发生登入或登出情况,若发生登入或登出情况,执行步骤(4);否则,执行步骤(5);
(4)簇内节点更新管理模块对簇内节点进行检查,记录簇内节点的登入登出,并对簇内节点索引表进行更新;当簇内节点索引表空间不足时,节点替换模块将对登入节点进行处理;
(5)候选簇头节点模块判断簇头节点是否发生异常情况,若簇头节点发生异常情况,执行步骤(6);否则,执行步骤(7);
(6)候选簇头模块获取簇内信息索引表信息,并对簇头节点信息库进行更新处理;簇内节点更新管理模块对簇内节点进行检查,记录节点的登入登出,并对索引表进行更新;当索引表空间不足时,节点替换模块将对登入节点进行处理;
(7)类簇内容匹配模块接收名称解析模块发送的请求兴趣包InP;将从簇头节点信息库中获取的类簇名ClassName与请求兴趣包InP中类名匹配相似度;查找到类相似度Sclass大于阀值α的类簇时,符合条件的类簇构成类簇相似表,并根据类相似度高低对类簇进行排列;
(8)类簇内容匹配模块将请求兴趣包InP依据表中匹配的类簇,发送到与该类簇相关的簇内节点匹配模块;
(9)簇内节点匹配模块接收请求兴趣包InP;获取簇内信息索引表信息,并对表中节点名称NodeName和请求兴趣包InP中请求兴趣名前缀匹配,若查找到节点相似度Snode大于阀值β的节点时,再依据簇内节点信息索引表查找相对应节点ID,进行查询数据;
(10)簇内节点匹配模块判断是否找到所需要的数据,若查找到所需要数据,执行步骤(11);否则,执行步骤(12);
(11)簇内节点匹配模块对查询的数据整合为数据包,并把数据包返回给命名数据网络用户,查询结束;
(12)类簇内容匹配模块判断类相似表中是否还存在剩余项,若存在,则返回执行步骤(8);否则,查询结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510381934.9A CN105072030B (zh) | 2015-07-02 | 2015-07-02 | 一种基于内容聚类的命名数据网络路由系统及其聚类查询方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510381934.9A CN105072030B (zh) | 2015-07-02 | 2015-07-02 | 一种基于内容聚类的命名数据网络路由系统及其聚类查询方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105072030A true CN105072030A (zh) | 2015-11-18 |
CN105072030B CN105072030B (zh) | 2019-01-15 |
Family
ID=54501316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510381934.9A Active CN105072030B (zh) | 2015-07-02 | 2015-07-02 | 一种基于内容聚类的命名数据网络路由系统及其聚类查询方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105072030B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106255166A (zh) * | 2016-08-31 | 2016-12-21 | 邱岩 | 一种层次拓扑结构图上的基于内容中心网络的路由方法 |
CN107343304A (zh) * | 2017-05-15 | 2017-11-10 | 中国科学院信息工程研究所 | 内容中心网络的协作缓存方法 |
CN107547408A (zh) * | 2017-07-28 | 2018-01-05 | 新华三技术有限公司 | 一种mac地址哈希冲突的处理方法和装置 |
CN108521373A (zh) * | 2018-02-28 | 2018-09-11 | 北京邮电大学 | 一种命名数据网络中的多径路由方法 |
CN108650657A (zh) * | 2018-04-20 | 2018-10-12 | 京东方科技集团股份有限公司 | 一种车联网中的内容分发方法、内容更新方法和相关装置 |
CN108710629A (zh) * | 2018-03-30 | 2018-10-26 | 湖南科技大学 | 基于命名数据网络的Top-k查询方法及系统 |
WO2019201091A1 (zh) * | 2018-04-19 | 2019-10-24 | 中兴通讯股份有限公司 | 一种数据处理方法、设备和计算机可读存储介质 |
CN111935031A (zh) * | 2020-06-22 | 2020-11-13 | 北京邮电大学 | 一种基于ndn架构的流量优化方法及系统 |
CN114257536A (zh) * | 2021-11-05 | 2022-03-29 | 浙江木链物联网科技有限公司 | 一种工业数据采集方法和系统 |
CN115757461A (zh) * | 2022-11-09 | 2023-03-07 | 北京新数科技有限公司 | 一种银行数据库应用系统结果聚类方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102843420A (zh) * | 2012-07-02 | 2012-12-26 | 上海交通大学 | 基于模糊划分的社交网络数据分发系统 |
US20140023076A1 (en) * | 2012-07-20 | 2014-01-23 | International Business Machines Corporation | Systems, methods and algorithms for named data network routing with path labeling |
US9058355B1 (en) * | 2008-06-18 | 2015-06-16 | Zeitera, Llc | Scalable, adaptable, and manageable system for multimedia identification |
-
2015
- 2015-07-02 CN CN201510381934.9A patent/CN105072030B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9058355B1 (en) * | 2008-06-18 | 2015-06-16 | Zeitera, Llc | Scalable, adaptable, and manageable system for multimedia identification |
CN102843420A (zh) * | 2012-07-02 | 2012-12-26 | 上海交通大学 | 基于模糊划分的社交网络数据分发系统 |
US20140023076A1 (en) * | 2012-07-20 | 2014-01-23 | International Business Machines Corporation | Systems, methods and algorithms for named data network routing with path labeling |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106255166B (zh) * | 2016-08-31 | 2018-03-16 | 邱岩 | 一种层次拓扑结构图上的基于内容中心网络的路由方法 |
CN106255166A (zh) * | 2016-08-31 | 2016-12-21 | 邱岩 | 一种层次拓扑结构图上的基于内容中心网络的路由方法 |
CN107343304A (zh) * | 2017-05-15 | 2017-11-10 | 中国科学院信息工程研究所 | 内容中心网络的协作缓存方法 |
CN107343304B (zh) * | 2017-05-15 | 2019-10-11 | 中国科学院信息工程研究所 | 内容中心网络的协作缓存方法 |
CN107547408B (zh) * | 2017-07-28 | 2020-08-28 | 新华三技术有限公司 | 一种mac地址哈希冲突的处理方法和装置 |
CN107547408A (zh) * | 2017-07-28 | 2018-01-05 | 新华三技术有限公司 | 一种mac地址哈希冲突的处理方法和装置 |
CN108521373A (zh) * | 2018-02-28 | 2018-09-11 | 北京邮电大学 | 一种命名数据网络中的多径路由方法 |
CN108521373B (zh) * | 2018-02-28 | 2020-05-01 | 北京邮电大学 | 一种命名数据网络中的多径路由方法 |
CN108710629B (zh) * | 2018-03-30 | 2021-07-16 | 湖南科技大学 | 基于命名数据网络的Top-k查询方法及系统 |
CN108710629A (zh) * | 2018-03-30 | 2018-10-26 | 湖南科技大学 | 基于命名数据网络的Top-k查询方法及系统 |
WO2019201091A1 (zh) * | 2018-04-19 | 2019-10-24 | 中兴通讯股份有限公司 | 一种数据处理方法、设备和计算机可读存储介质 |
US11489765B2 (en) | 2018-04-19 | 2022-11-01 | Zte Corporation | Data processing method and device, and computer readable storage medium |
US10911917B2 (en) | 2018-04-20 | 2021-02-02 | Boe Technology Group Co., Ltd. | Content delivery method and content update method for internet of vehicles |
CN108650657A (zh) * | 2018-04-20 | 2018-10-12 | 京东方科技集团股份有限公司 | 一种车联网中的内容分发方法、内容更新方法和相关装置 |
CN111935031A (zh) * | 2020-06-22 | 2020-11-13 | 北京邮电大学 | 一种基于ndn架构的流量优化方法及系统 |
CN114257536A (zh) * | 2021-11-05 | 2022-03-29 | 浙江木链物联网科技有限公司 | 一种工业数据采集方法和系统 |
CN114257536B (zh) * | 2021-11-05 | 2023-09-01 | 浙江木链物联网科技有限公司 | 一种工业数据采集方法和系统 |
CN115757461A (zh) * | 2022-11-09 | 2023-03-07 | 北京新数科技有限公司 | 一种银行数据库应用系统结果聚类方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105072030B (zh) | 2019-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105072030A (zh) | 一种基于内容聚类的命名数据网络路由系统及其聚类查询方法 | |
JP6352290B2 (ja) | コンテンツ中心ネットワークにおけるコンテンツ所有者及びノードのパケット送信方法 | |
JP5745925B2 (ja) | コンテンツ中心ネットワーク(ccn)における端末の通信方法とccnにおけるハブの通信方法、そのための記録媒体、及びccnのための端末 | |
US8000267B2 (en) | Network routing with path identifiers | |
US20050122955A1 (en) | Method and system for route selection and method for route reconstruction | |
US8787206B2 (en) | Multi-address space mobile network architecture, method for registering host information, and method for sending data | |
US20080195597A1 (en) | Searching in peer-to-peer networks | |
US7869349B2 (en) | Method and system for deducing network routes by querying routers | |
US8321539B2 (en) | Peer-to-peer (P2P) network system and method of operating the same | |
CN108848032B (zh) | 一种支持多兴趣类型处理的命名对象网络实现方法 | |
CN103236971B (zh) | 一种内容互联网的路由转发方法 | |
WO2009089772A1 (fr) | Procédé de recherche d'un dispositif de réseau et dispositif de réseau | |
CN102421162B (zh) | 一种支持IPv6无线传感器网络的混合式路由 | |
CN101656765A (zh) | 身份位置分离网络的名址映射系统及数据传输方法 | |
US20110208828A1 (en) | Node apparatus and computer-readable storage medium for computer program | |
CN105049550A (zh) | 一种基于D1HT+Chord的名址分离映射系统 | |
CN105656788A (zh) | 基于流行度统计的ccn内容缓存方法 | |
Bayhan et al. | On content indexing for off-path caching in information-centric networks | |
CN102546419B (zh) | 一种路由方法和装置、分组转发方法和系统 | |
CN101997755A (zh) | 映射信息交换的方法及映射节点 | |
CN102037711B (zh) | 在对等网络中限制存储消息 | |
CN115865844B (zh) | 基于sdn与ndn的虚实结合动态流量调度方法及装置 | |
CN108337173B (zh) | 基于本地缓存和结构化p2p的分布式名址映射系统及方法 | |
US20110252129A1 (en) | Apparatus and method for registering node and searching for floating internet protocol address using distributed network | |
CN101488137A (zh) | 基于热点缓存的搜索方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |