[发明专利]插入节点的方法和装置有效

专利信息
申请号: 200910081581.5 申请日: 2009-04-13
公开(公告)号: CN101521627A 公开(公告)日: 2009-09-02
发明(设计)人: 易毅 申请(专利权)人: 华为技术有限公司
主分类号: H04L12/56 分类号: H04L12/56
代理公司: 北京三高永信知识产权代理有限责任公司 代理人: 何文彬
地址: 518129广东省*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 插入 节点 方法 装置
【说明书】:

技术领域

发明涉及数据通信领域,特别涉及一种插入节点的方法和装置。

背景技术

随着网络的迅猛发展,路由表项的数量越来越大,比如,核心路由器的IPv4FIB(Forwad Information Base,转发信息表)已经要求实现百万条的数量级。如果用TCAM(Ternary Content Addressable Memory,三重内容可寻址存储器)实现,目前成熟的18Mb TCAM只能实现256K×72b的规格,此时就需要4片18Mb的TCAM才能达到1M条的要求。因此,用TCAM实现在成本、功耗、实现难度上都很难接受。基于算法的路由查找技术已成为数据通信业界通用的做法,在路由容量、成本和功耗上相比与TCAM器件有较大的优势。

基于算法的查找技术现阶段有多种实现方式,如基于tries tree(实验树)的方式,基于range match(范围匹配)的方式,以及部分基于TCAM器件的查找方式。其中,range match的方式多采用二叉树(Binary Tree)来实现路由表项的维护和管理,即将路由表项的边界值作为二叉树的节点,排序后组成一棵路由边界值的二叉树,以便进行后续的查找。

二叉树中搜索、插入、删除的复杂度都和树的高度相关,树高是制约二叉树时间效率的瓶颈。理论上,任意高度为h平衡二叉树能容纳2h-1个节点,即h=O(lg n),且对此平衡二叉树节点的插入、删除所需要的维护代价最小。

为了达到一定的查找性能,在硬件实现的以二叉树为基础的查找系统中,使用层高固定的二叉树来实现待路由表项的维护。同时,为了节省存储空间以及减少每次查找需要读取的数据量,并不使用节点带指针的方式来指示下一层节点位置,仅靠节点的位置关系向下继续查找。

由于此类系统中二叉树的层高受限,且没有指针指示节点挪动后的新的位置,在有新的节点插入时,将造成较多的节点搬移动作,尤其是在新插入的节点为递增或递减节点时,随着节点个数的增加,搬移动作将会剧烈增加,从而影响整个系统的节点插入速率,在实际应用体现为路由表项更新速度很慢,特别是在路由震荡时,整个系统收敛时间较长。

现有技术提供了如下两种方法来实现在二叉树中插入节点:

第一种方法使用硬件逻辑来进行节点的顺序搬移,将需要搬移的节点顺次挪动位置,使需要插入节点的位置形成空洞(hole),最后将待插入节点插入到新出现的空洞。在进行节点搬移时,该方法还需要遵守两条基本原则:第一、不能破坏二叉树中各节点位置的大小关系;第二、从树的根节点向下,寻找到每一个有效节点的路径上都不能出现空洞。其中,插入待插入节点前的二叉树如图1所示,插入待插入节点后的二叉树如图2所示。

但该方法的缺陷在于,在插入递增或递减的节点时,对节点的搬移量将逐步增加,当节点数目增加到百万个的数量级时,几乎每次搬移都需要搬移所有的节点数目,从而使路由表项的更新性能将显著下降。

第二种方法是在插入递增或递减节点时,计算出插入节点后整个树型结构所能形成的最佳状态平衡二叉树,再将其树型结构一一映射到硬件存储空间中,使之在总的树型维护时间内,所需要搬移的节点数目最少,达到提高节点插入速率的目的。在这种搬移模式下,每插入一些节点后,将强制地调整整个树型结构,使其形成一棵平衡的二叉树,进而达到平均搬移次数最少的目的。其中,插入待插入节点前的二叉树如图3所示,插入待插入节点后的二叉树如图4所示。

但该方法的缺陷在于,将一棵不平衡的二叉树整理为平衡的二叉树的过程比较繁琐,特别是在二叉树的容量较大时,需要在高性能的硬件上使用软件来实现,此时软件还需要建立带指针的二叉树来映射硬件中存储的树型结构,以便作平衡操作时使用,负荷比较大,并且需要占用一定的shadow(镜像)内存空间。此外,在计算好平衡二叉树中各节点的位置后,需要通过某种接口例如PCI(Pedpherd Component Interconnect,周边元件扩展)接口,将重新排列好的节点下发到硬件逻辑中,以便能进行高速的查找,在数据量很大的情况下,软、硬件之间的接口容易成为性能的瓶颈。

发明内容

为了减少搬移量,提高插入效率,简化软硬件接口,本发明实施例提供了一种插入节点的方法和装置。所述技术方案如下:

一方面,本发明实施例提供了一种插入节点的方法,包括:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/200910081581.5/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top