【技术实现步骤摘要】
本专利技术涉及数据库和用于在数据库树结构中存储和搜索数据的方法。特别地,但不排他地,本专利技术涉及对存储在数据库树结构中的数据的处理,供数据包路由应用程序之用。
技术介绍
网际协议(IP)网络包括许多互连路由器实体,其负责作出关于数据包可以从源流到目的地的那些路径的决定。路由协议被用于获取关于网络的信息,并确定特定网络目的地或不同区域或该网络的子网络之间的路由。在每个路由器处,可以将这些路由存储在被称为路由表的数据库中。创建和维护路由表内容的过程通常被称作为IP路由。路由器还可以存储执行转发数据库中的数据包所必须的信息,其通常被称作为转发表。使用存储在转发表中的信息接收数据包并将该数据包发送到其目的地上的处理通常被称作为IP转发。通常不直接将路由表用在包转发处理中。而是,包路由处理根据路由信息和一个或多个路由协议(诸如路由选择信息协议(RIP)或边界网关协议(BGP))将关于所选路由的数据输出到转发表。然后,可以(例如)使用有效的硬件实现方式在包转发过程期间访问转发表的内容。-->被传输到IP网络中的数据包将包括IP目的地址。IPv4地址是32位长,其给出了超过40亿的IP地址的范围,而IPv6地址更长。在每个路由器处为这个数目的IP地址交换和更新转发信息通常是不切实际的。代替地,路由器将通常地维护包含许多IP地址前缀条目和对应于这些前缀条目的每一个的转发信息的转发表。当关于网络目的地址的信息到达路由器时,可以由该路由器检查网络目的地的IP地址,然后,该路由器可以搜索其路由表,查找对网络目的地的IP目的地址的最长的匹配。该最长的匹配按照匹配目的IP地址的 ...
【技术保护点】
一种使用搜索关键字搜索数据库的方法,所述数据库包含按照树结构来存储的数据,所述树结构包括多个节点,所述节点具有相关联的数据,所述相关联的数据包括: 一个或多个节点指针,所述节点指针包括识别在搜索所述树结构时可以被遍历的节点的数据; 节点关键字;以及 搜索关键字部分标识符,识别搜索关键字部分,所述搜索关键字部分将被用于确定在遍历节点时将被使用的节点指针, 其中,所述方法包括: 将关于第一节点的第一相关联数据和关于第二节点的第二相关联数据存储在所述数据库中,所述第一相关联数据包括第一节点关键字,以及所述第二相关联数据包括第二节点关键字,其中,所述第一节点关键字是所述第二节点关键字的前缀;以及 使用搜索关键字搜索所述树结构, 其中,使用所述搜索关键字的搜索涉及正被遍历的所述第二节点,并且如果所述第一节点关键字具有匹配所述搜索关键字的前缀,则在遍历所述第二节点之后识别所述第一节点。
【技术特征摘要】
GB 2007-9-14 0717970.81.一种使用搜索关键字搜索数据库的方法,所述数据库包含按照树结构来存储的数据,所述树结构包括多个节点,所述节点具有相关联的数据,所述相关联的数据包括:一个或多个节点指针,所述节点指针包括识别在搜索所述树结构时可以被遍历的节点的数据;节点关键字;以及搜索关键字部分标识符,识别搜索关键字部分,所述搜索关键字部分将被用于确定在遍历节点时将被使用的节点指针,其中,所述方法包括:将关于第一节点的第一相关联数据和关于第二节点的第二相关联数据存储在所述数据库中,所述第一相关联数据包括第一节点关键字,以及所述第二相关联数据包括第二节点关键字,其中,所述第一节点关键字是所述第二节点关键字的前缀;以及使用搜索关键字搜索所述树结构,其中,使用所述搜索关键字的搜索涉及正被遍历的所述第二节点,并且如果所述第一节点关键字具有匹配所述搜索关键字的前缀,则在遍历所述第二节点之后识别所述第一节点。2.根据权利要求1所述的方法,包括:在遍历所述第二节点期间,将所述第二节点关键字与所述搜索关键字进行比较。3.根据权利要求1或2所述的方法,包括:存储第三数据,所述第三数据指示所述第一节点关键字是所述第二节点关键字的前缀。4.根据权利要求3所述的方法,其中,存储的所述第三数据包括从所述第二节点指向所述第一节点的第一节点指针。5.根据权利要求4所述的方法,其中,所述识别所述第一节点包括:通过跟随所述第一节点指针从所述第二节点至所述第一节点来遍历所述树。6.根据权利要求1所述的方法,其中,所述识别所述第一节点包括:在所述遍历所述第二节点之后但在随后的所述遍历所述第一节点之前,遍历所述树结构中所述第一节点之上的一个或多个节点。7.根据权利要求1所述的方法,其中,特定节点的搜索关键字部分标识符涉及搜索关键字位,所述搜索关键字位将被用于确定在遍历所述特定节点时将被使用的节点指针。8.根据权利要求7所述的方法,其中,所述特定节点的搜索关键字部分标识符涉及将被使用的搜索关键字位与先前被使用的搜索关键字位相比的相对位置。9.根据权利要求7所述的方法,其中,所述特定节点的搜索关键字部分标识符涉及将被使用的搜索关键字位的绝对位置。10.根据权利要求1所述的方法,包括:存储与所述多个节点中的一个或多个节点相关联的数据参数。11.根据权利要求10所述的方法,其中,所述树结构的搜索结果包括输出所存储的数据参数。12.根据权利要求1所述的方法,其中,所述搜索包括:使用基本上类似于Patricia算法的算法进行搜索。13.一种将数据存储到数据库中的方法,所述数据库包含按照树结构来存储的数据,所述树结构包括多个节点,所述节点具有相关联的数据,所述相关联的数据包括:一个或多个节点指针,所述节点指针包括识别在搜索所述树结构时可以被遍历的节点的数据;节点关键字;搜索关键字部分标识符,识别搜索关键字部分,所述搜索关键字部分将被用于确定在遍历节点时将被使用的节点指针,其中,所述方法包括将新节点插入到所述树结构中,所述新节点具有相关联的节点关键字,所述插入包括:使用插入搜索关键字来搜索所述数据库,所述插入搜索关键字包括所述新节点关键字,使用所述插入搜索关键字的所述搜索识别所述树结构中的给定节点,所述给定节点的节点关键字与所述插入搜索关键字具有给定前缀关系;以...
【专利技术属性】
技术研发人员:乔纳森理查德伯杰,高文博斯沃思,戴维爱德华麦沃尔特,
申请(专利权)人:数据连接有限公司,
类型:发明
国别省市:GB[英国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。