【技术实现步骤摘要】
一种用于命名数据网络中网络节点的转发方法、装置、系统及存储介质
本专利技术涉及互联网
,尤其涉及一种用于命名数据网络中网络节点的转发方法、装置、系统及存储介质。
技术介绍
信息中心网络(InformationCentricNetworking,ICN),包括内容中心网络(ContentCentricnetworking,CCN)和命名数据网络(NamedDataNetworking,NDN),是一种旨在解决目前IP协议瓶颈的新型互联网架构。本专利技术中谈及的主要是其NDN分支,以下将由NDN作为内容中心网络的指代.在NDN中,网络更关心数据其自身,而非数据的所在位置。通过内容和具体地点的解耦,以及适当的转发和缓存策略设计,NDN通过具有智能性的转发平面实现了数据的多路径发送,并通过网络中缓存降低了数据的请求延迟,由此实现了高效、可靠的信息分发。如其名字所示,NDN使用层级化的名字指代网络中的每一个资源,并设计了基于名字的内容请求和转发机制。NDN的数据传输过程依赖于两种数据包,即兴趣包(InterestPacket)和数据包(DataPacket)。NDN使用消费者驱动(Consumer-Driven)的方式完成其内容请求:消费者将请求内容的名字添加到兴趣包中,并将兴趣包投放到网络;路由节点收到兴趣包后,将在本节点的转发信息表(ForwardingInformationBase,FIB)中,基于最长前缀匹配(LongestPrefixMatching,LPM)的方式查询兴趣包中的内容名,以此获取转发出报文的端口;当兴趣包被该内容的持有者接受时,持有者 ...
【技术保护点】
1.一种用于命名数据网络中网络节点的转发方法,包括哈希表、前缀树,其特征在于,由哈希表和前缀树构成FIB,对于FIB中存储的任一个名字,其所有的真前缀在FIB中拥有相应的表项,检查前缀是否存在并添加对应辅助表项的过程被称为FIB重构,在重构后的FIB中,表项被分为实表项和非实表项,非实表项分为虚表项和半虚表项;在哈希表中,以名字作为key, 并以前缀树中的节点作为value,由此实现了从名字到前缀树中转发信息的快速检索;前缀树中的边均代表一个名字组件,前缀树的每个节点都代表一个名字,该节点存储了名字对应的转发信息和表项的对应类别、以及用于维持前缀树结构的指针;实表项:实表项中的名字均指代实际存在的数据,并用于指导兴趣包的转发;在FIB重构之前,所有的表项均为实;非实表项:用于支持随机搜索算法的辅助表项被称作非实表项,非实表项中的名字不指代任何实际存在的数据,且无法用于指导兴趣包的转发;虚表项:若一个非实表项不拥有任何实前缀,则称该非实表项为虚表项;当随机搜索过程以虚表项结束时,直接结束而不会产生任何假阴性错误;半虚表项:若该非实表项存在实前缀,则该非实表项称为半虚表项并需要进行回溯查找 ...
【技术特征摘要】
1.一种用于命名数据网络中网络节点的转发方法,包括哈希表、前缀树,其特征在于,由哈希表和前缀树构成FIB,对于FIB中存储的任一个名字,其所有的真前缀在FIB中拥有相应的表项,检查前缀是否存在并添加对应辅助表项的过程被称为FIB重构,在重构后的FIB中,表项被分为实表项和非实表项,非实表项分为虚表项和半虚表项;在哈希表中,以名字作为key,并以前缀树中的节点作为value,由此实现了从名字到前缀树中转发信息的快速检索;前缀树中的边均代表一个名字组件,前缀树的每个节点都代表一个名字,该节点存储了名字对应的转发信息和表项的对应类别、以及用于维持前缀树结构的指针;实表项:实表项中的名字均指代实际存在的数据,并用于指导兴趣包的转发;在FIB重构之前,所有的表项均为实;非实表项:用于支持随机搜索算法的辅助表项被称作非实表项,非实表项中的名字不指代任何实际存在的数据,且无法用于指导兴趣包的转发;虚表项:若一个非实表项不拥有任何实前缀,则称该非实表项为虚表项;当随机搜索过程以虚表项结束时,直接结束而不会产生任何假阴性错误;半虚表项:若该非实表项存在实前缀,则该非实表项称为半虚表项并需要进行回溯查找;FIB:转发信息表;该转发方法包括搜索步骤,所述搜索步骤包括:步骤1:通过随机搜索算法查询兴趣包中的名字,从而获取转发出报文的端口;步骤2:判断最后一次HIT的前缀是否为实,若是,返回该前缀作为查询结果,否则执行步骤3;步骤3:判断最后一次HIT的前缀是否为虚,若是,返回查询失败,否则执行步骤4;步骤4:在前缀树中向上回溯至第一个实节点,返回其对应的转发信息。2.根据权利要求1所述的转发方法,其特征在于,该转发方法还包括插入步骤,所述插入步骤用于将名字插入到FIB中,所述插入步骤包括:首先,判断在FIB中查询待插入的名字是否存在,若是,那么执行第一插入步骤,否则执行第二插入步骤;所述第一插入步骤包括:步骤一:判断名字对应的表项是否为实表项,若是,那么更新其转发信息,否则执行步骤二;步骤二:判断名字对应的表项是否为虚表项,若是,那么执行步骤三,否则执行修改步骤;步骤三:将其子树中所有的虚表项修改为半虚表项,然后执行修改步骤;修改步骤:修改其类别为实表项并添加转发信息;所述第二插入步骤包括:首先,在FIB中查询待插入的名字的LPM,若HIT且为实,那么执行第一处理步骤,若MISS、或HIT且为虚,那么执行第二处理步骤;第一处理步骤:插入名字对应的实表项,在FIB中查找名字所有的真前缀,若不存在则插入对应的半虚表项;第二处理步骤:插入名字对应的实表项,在FIB中查找名字所有的真前缀,若不存在则插入对应的虚表项;LPM:最长前缀匹配。3.根据权利要求1所述的转发方法,其特征在于,该转发方法还包括删除步骤,所述删除步骤用于将过时的非实表项进行发现和回收,所述删除步骤包括:首先,判断在FIB中的待删除的名字的对应表项是否存在子节点,若是,那么执行第一删除步骤,否则执行第二删除步骤;第一删除步骤:判断对应表项的父节点是否为虚,若为虚,那么,执行第一删除子步骤,若对应表项的父节点为实或半虚,那么,名字的表项类别修改为半虚;第一删除子步骤:将名字对应的表项类别修改为虚,然后,遍历以名字为根的子树,若其中某个节点满足第1条件和第2条件,那么该节点的类别修改为虚,第1条件:类别为半虚,第2条件:该节点到名字的路径上没有任何实节点;第二删除步骤:删除该表项,然后,递进地向上检查名字的所有真前缀,若该前缀的对应节点满足第一点和第二点,那么删除该节点,第一点:类别为非实,第二点:为叶节点。4.根据权利要求1至3任一项所述的转发方法,其特征在于,随机搜索算法为二分查找算法,在步骤1中,通过二分查找算法查询兴趣包中的名字,从而获取转发出报文的端口;当二分查找过程以虚表项结束时,直接结束而不会产生任何假阴性错误。5.一种用于命名数据网络中网络节点的转发装置,包括哈希表、前缀树,其特征在于,由哈希表和前缀树构成FIB,对于FIB中存储的任一个名字,其所有的真前缀在FIB中拥有相应的表项,检查前缀是否存在并添加对应辅助表项的过程被称为FIB重构,在重...
【专利技术属性】
技术研发人员:李挥,胡嘉伟,邬江兴,黄婷,伊鹏,侯韩旭,马化军,尹峰,
申请(专利权)人:北京大学深圳研究生院,国家数字交换系统工程技术研究中心,佛山赛思禅科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。