1.一种面向命名数据网络的知识服务路由挖掘方法,其特征在于步骤包括:
1)对整个命名数据网络构建统一的知识基本分类目录,将其通告到所有路由器的转发信息库中;
2)路由器监听并判断是否收到数据包,如果没有收到数据包,则转步骤3);否则转步骤
7);
3)判断路由器类型,如果是边缘路由器,则转步骤4),如果是核心路由器,则转步骤6);
4)发现本地网络中可访问的知识源,并获取所发现知识源中的各种分布式应用的数据API、数据库的访问接口或Web服务的描述文档;
5)基于获取的访问接口或API,采用现有挖掘工具或方法挖掘数据源中的数据/知识的分面、分类信息以及对象名、属性名和属性值范围,获取各种知识及相关对象的语义层次命名,为个性化的知识服务发现提供精细的路由信息,并将挖掘到的层次命名信息添加到或扩展FIB表项的前缀字段;
6)根据用户兴趣和相应返回结果挖掘与评估FIB中相关表项对应结果的质量和特征信息,以增强语义路由能力;在FIB中将挖掘到的特征值添加或累加到FIB相关层次前缀或表项中,从而在路由匹配过程中增强命名数据网络的语义路由能力和质量,处理过程中如果监听到数据包到达或挖掘处理结束,则转步骤2);
7)判断数据包类型,如果是用户兴趣包,则对用户兴趣包进行路由扩展匹配并转发;否则如果收到的数据包是响应结果,则对返回结果进行汇聚和原路返回处理;处理结束后,转步骤2)。
2.根据权利要求1所述的面向命名数据网络的知识服务路由挖掘方法,其特征在于,所述步骤1)的具体步骤为:在命名数据网络的路由器中,针对所应用领域的分类标准进行初步分类、分层,即对整个互联网范围内预计要访问领域的应用、数据库中的知识及其相关对象进行分面、分域和初步的分层,对知识及相关对象构建初始的多类别和多领域的层次分类目录,其中不同面的知识及相关对象采用相同的层次分类标准。
3.根据权利要求1所述的面向命名数据网络的知识服务路由挖掘方法,其特征在于,所述步骤4)的具体步骤为:
4.1对未分面、分类的知识及相关对象进行分面、分类和聚类,即将知识及相关对象归属到所属领域以及全局的分类中,再进行本地层次分类/聚类与命名,可选的增加属性信息及相关属性值域信息;
4.2对只能获取非语义层次标识的知识及相关对象,则基于响应结果挖掘和提取其语义层次标识;将其语义层次标识匹配和添加到已构造的层次分类目录中,以便为知识及相关对象构造标准化的语义层次命名,对已存在层次标识的知识及相关对象则将挖掘到的语义层次标识作为别名,从而为用户请求进行更好的全局语义路由;另外,根据知识及相关对象的分类、属性,甚至其内容的语义,标注不同知识及相关对象或分类之间的语义关联关系;
4.3对知识及相关对象进行语义层次命名,将其加入FIB表中,向相邻路由器通告层次命名信息。
4.根据权利要求1所述的面向命名数据网络的知识服务路由挖掘方法,其特征在于,所述步骤6)的具体步骤为:
6.1根据用户兴趣和返回的结果对以下特征进行路由挖掘:
6.1.1)匹配结果质量估计;结果返回过程中,对于FIB中的对应表项如果存在多个返回的匹配结果,则根据表项中的语义类别P和信息量A计算匹配度,估计兴趣命名对应的返回结果的质量;其中匹配度计算公式为:公式中PFIB为FIB中匹配的前缀长度,PI为与PFIB匹配的用户兴趣中层次命名的长度,Am为被评价的某个匹配项的属性和特征信息与用户兴趣中的属性和特征要求的匹配度,α,β为权重系数;
6.1.2)结果信息量统计,路由节点根据内容缓存库CS(ContentStore)中的缓存内容挖掘某个FIB表项的语义类别,并对不同语义类别统计返回结果的数据量级别,对于单个数据,则统计数据的分块数,不同语义类别的数据量级别将作为对应FIB表项的特征项;
6.1.3)频繁项集和访问频率统计,对FIB中各表项对应返回数据的访问频率、返回数据之间的频繁项集进行统计,统计结果用以评估FIB中层次命名表项的流行度,并挖掘返回结果中跨源或多用户之间的频繁项集,其中,判断数据集来自单个或多个用户的方法通过命名数据网络数据包的签名字段中的私钥字符串的相异性来区分;
6.1.4)语义范围和属性值域估计,根据用户兴趣中的层次名字、属性约束和对应的返回内容,挖掘分类层次命名所包含内容的更细粒度分类、属性集和属性值域;
6.2将挖掘到的特征信息添加或特征值累加到对应的FIB表项中,将对应FIB表项及其关键特征项随FIB表项一起向相邻路由器进行通告。
5.根据权利要求1所述的面向命名数据网络的知识服务路由挖掘方法,其特征在于,所述步骤7)的具体步骤为:
7.1在用户端具体用户发出的兴趣类型包括:
7.1.1)知识获取:包括关联知识、深度知识和广度知识的发现与获取,具体兴趣格式为“知识层次命名+属性约束+RK或‘DK’、‘BK’”;其中RK表示获取关联知识,DK表示获取深度知识,BK表示获取广度知识;
7.1.2)问题收集:完成问题发现和获取,具体兴趣格式为“问题层次命名+属性约束+‘CQ’”,通过层次命名匹配及属性约束条件匹配来聚集多个问题或获取单个问题;其中CQ表示收集问题;
7.1.3)解答提交:完成向单一用户传送或向群体组播问题的解答信息,具体兴趣格式为“解答者层次命名+属性约束+‘AQ’”,具体是通过层次命名匹配及属性约束条件匹配到特定专家或其他知识服务提供者,向其提交问题的解答内容;其中AQ表示问题解答;
7.1.4)评改反馈:向单一学习者传送或群体组播要回送的评阅信息或反馈修改信息,兴趣格式为“学习者层次命名+属性约束+‘EC’”,精确匹配特定问题发送者,并向其回送关于问题解答或知识点理解的评改内容;其中EC表示评阅修改反馈;
7.2当用户兴趣到达路由器进行转发匹配时,兴趣或者与FIB表项的Prefix字段值匹配,或者与其别名字段值匹配;其匹配算法在改进最长前缀匹配算法的基础上充分挖掘和扩充层次匹配算法,完成较为复杂的知识及相关对象的路由匹配,以获取需要的知识及相关对象:
7.2.1)关联匹配方法:目的是发现关联知识及相关对象,其过程是采用前缀包含匹配和语义约束条件匹配的方法,查找到参照知识的路由信息,在相关路由CS(内容缓存库)或数据源中再获取与参照知识存在某种语义关联关系的知识、知识提供者,或获取相关知识及相关对象的列表,再根据具体表项的完全名字使用精确匹配方法获取具体实例;
7.2.2)广度匹配方法:目的是发现扩展知识及相关对象,具体过程是对兴趣中给定的层次分类在FIB中路由匹配其较下层的平行层,在相关路由CS(内容缓存库)或数据源中进行前缀层次匹配和语义约束条件匹配,以优先获取与给定分类中较下层的平行层的热门、信息量大的知识及相关对象的列表,再通过具体表项的完全名字获取具体实例;
7.2.3)深度匹配方法:目的是发现兴趣中给定分类中更加细分或下层的类别中更具体的知识及相关对象,具体过程是对兴趣中给定的层次分类在FIB中路由匹配其最下层的子层,在相关路由CS(内容缓存库)或数据源中进行包含层次匹配和语义约束条件匹配,以优先获取更深层次的热门、信息量大的知识及相关对象列表,再根据具体表项的完全名字使用精确匹配方法获取具体实例;
7.2.4)精确匹配方法:目的是获取精确的知识及相关对象,即为发现或返回与兴趣中具体层次命名精确匹配的对象,具体过程是路由匹配中要求兴趣的层次命名等于或包含在FIB的前缀表项中,而在相关路由CS(内容缓存库)或数据源中则基于属性值或特征值约束条件精确匹配;响应数据包返回是单播通信,即在数据源节点则精确地匹配对象命名和属性条件,并只返回一个对象,而返回路由中则也精确地匹配PIT表中的兴趣名字;
7.3根据在命名数据网络中通信处理方式的不同,用户的请求主要有三类,分别是:及时返回的请求、可延期返回的请求、以及无返回的及时推送;它们分别通过三种通信模式实现,即Pull通信模式、订阅模式、Push通信模式,从而完成用户对各种知识及相关对象的获取以及用户对主要知识服务活动的发送和响应;
7.3.1)Pull模式:先发送请求,然后获取短时间内与请求匹配的信息,如知识、群组和收集的问题;然后对响应结果进行聚合,即返回名字相同的数据包或前n个数据包,以返回知识及相关对象的列表或者返回部分相异的知识及相关对象的列表;
7.3.2)订阅模式:订阅兴趣包在路由器中的生存时间相对很长,具体路由将根据最长前缀匹配下一跳,或根据挖掘信息预测路由,订阅请求能够不发送到知识服务源或存在匹配结果的路由节点,而暂存在没有匹配结果的路由节点中,只要在生存时间段内出现匹配的下一跳,则继续路由转发;并在生存时间段内,返回所有或前n个结果;
7.3.2)Push模式:直接向特定知识及相关对象所处节点或知识服务提供者推送信息,而不是发送请求,目的节点选择回送数据已到达的通知;
7.3.4用户请求通过基于名字的路由算法转发到下一路由节点或数据源后,接收端将根据用户请求的层次命名、属性约束条件、特征要求进行匹配和回送相关结果,或根据匹配情况、特征信息选择并回送最优的相关结果。