一种路由查找方法和装置的制造方法_3

文档序号:8225966阅读:来源:国知局
例如处于所述第一区间的所述第一路由地址拆分出的第一低位地址存储在所述第二查找表中,处于所述第二区间的所述第二路由地址拆分出的第二低位地址存储在所述第三查找表。
[0095]需要注意的是,所述第一路由地址的容量所处的所述第一区间和所述第二路由地址的容量所处的所述第二区间分别可以理解为区分路由地址类型的区分条件。所述第一路由地址的容量可以理解为所述第一路由地址掩码的大小。所述第二路由地址的容量可以理解为所述第二路由地址掩码的大小。本发明实施例中可以根据路由地址掩码大小所处于的区间,来确定出对应的路由地址类型。所述第一路由地址和所述第二路由地址可以理解为不同类型的路由地址。
[0096]通过附图,以具体的应用场景为例对本发明实施例提供的拆分方式进行说明。图3为本发明实施例提供的一种路由地址拆分存储示意图,图3中展示的是以三种不同区间划分进行的拆分方式。三种不同的区间分别为区间1、区间2和区间3,其中,所述区间I可以设定为65至81bit,所述区间2可以设定为82至lllbit,所述区间3可以设定为112至142bit0
[0097]若所述转发设备获取路由地址I的容量为75bit,确定落入所述区间1,对路由地址I进行拆分,拆分后得到高位地址I和低位地址I。所述高位地址I的容量可以为所述区间I的最小值65bit,低位地址I的容量可以为75bit减去65bit的差:10bit。为了统一管理,所述低位地址I的容量也可以固定为30bit,其中携带所述路由地址I拆分出的1bit低位地址。所述转发设备将所述高位地址I和查找表2的标识对应存储到查找表I中,将所述低位地址I存储到查找表2中。
[0098]若所述转发设备获取路由地址2的容量为108bit,确定落入所述区间2,对路由地址2进行拆分,拆分后得到高位地址2和低位地址2。所述高位地址2的容量可以为所述区间2的最小值82bit,所述低位地址2的容量可以为108bit减去82bit的差:23bit。为了统一管理,所述低位地址2的容量也可以固定为30bit,其中携带所述路由地址2拆分出的23bit低位地址。所述转发设备将所述高位地址2和查找表3的标识对应存储到查找表I中,将所述低位地址2存储到查找表3中。
[0099]若所述转发设备获取路由地址3的容量为131bit,确定落入所述区间3,对路由地址3进行拆分,拆分后得到高位地址3和低位地址3。所述高位地址3的容量可以为所述区间3的最小值112bit,所述低位地址3的容量可以为131bit减去112bit的差:19bit。为了统一管理,所述低位地址3的容量也可以固定为30bit,其中携带所述路由地址3拆分出的19bit低位地址。所述转发设备将所述高位地址3和查找表4的标识对应存储到查找表I中,将所述低位地址3存储到查找表4中。还需要注意的是,所述区间3的最大值142bit可以理解为目前常用的IPv6中路由地址的最大值128bit加上对应的14bit的虚拟专用网络(Virtual Private Network, VPN)容量。
[0100]在所述转发设备进行路由查找时,若查找请求中包括路由地址2,在第一次查找时所述查找表I中查找到所述路由地址2对应的高位地址2以及对应存储的查找表3的标识,由此确定待查找的所述路由地址2的低位地址存储在查找表3中,通过在所述查找表3中的第二次查找获取查找结果,也就是所述路由地址2在所述转发设备上的下一跳地址。
[0101]还需要注意的是,当需要存储的路由地址容量较小时,可以不对其进行拆分,而直接存储在用于存储高位地址的查找表中。
[0102]可选的,在图1或图2所对应实施例的基础上,图4为本发明实施例提供的一种路由查找方法的方法流程图,包括:
[0103]S401:所述转发设备将第三路由地址作为第三高位地址,所述第三路由地址容量处于第三区间,所述第三区间小于所述第一区间。
[0104]S402:所述转发设备将所述第三高位地址存储于第一查找表。
[0105]S403:所述转发设备获取第三查找请求,所述第三查找请求包括第三路由地址。
[0106]S404:所述转发设备根据所述第二路由地址查找第一查找表,得到对应所述第三查找请求的查找结果。
[0107]举例说明,在所述转发设备查找所述第三路由地址时,第一次查找在第一查找表中查找到所述第三高位地址时,可以通过判断高位旗巾只(hpart flag)的值来确定是否查找完毕。例如在一些具体应用场景下,当所述高位旗帜的值为O时,可以理解为已经完成查找,当所述高位旗帜的值为I时,可以理解为还未完成查找,所述转发设备可以根据获取的查找表标识来确定第二次查找时所要查找的具体查找表。在查找所述第三路由地址时,所述转发设备在第一次查找后得到的所述高位旗帜的值可以为0,所述转发设备确定查找完毕,得到对应所述第三查找请求的查找结果。在如图1所对应实施例和如图2所对应实施例中,所述转发设备在查找第一路由地址和第二路由地址的过程中,第一次查找后得到的所述高位旗帜的值均可以为I。
[0108]所述第三路由地址可以理解为与所述第一路由地址和所述第二路由地址不同类型的路由地址。
[0109]对于拆分出的低位地址的容量,为了便于管理,在本发明实施例中,可选的,所述第一低位地址和所述第二低位地址的容量相同。例如,如图3所对应实施例中分别处于不同区间的路由地址1、路由地址2和路由地址3拆分出的所述低位地址1、低位地址2和低位地址3可以均为30bit。
[0110]可见,本发明实施例提供了多种针对大容量路由地址类型的拆分方式,并将不同拆分方式拆分出的低位地址分别存储在不同的查找表中。由此提高了在路由地址类型较多情况下的存储容量。
[0111]接下来对二次查找的具体方式进行描述,所述转发设备在将所述第一高位地址存储到所述第一查找表中时,除了要存储对应的第二查找表标识外,还可以存储对应的高位地址标识(hpart ID),在所述转发设备根据第一查找请求查找所述第一路由地址时,在第二次查找时利用第一次查找中获取的所述高位地址标识来进行第二次查找。
[0112]可选的,在如图1所对应实施例的基础上,所述第一查找表中还包括所述第一高位地址对应的高位地址标识。
[0113]所述转发设备根据所述第一路由地址查找第一查找表,获取所述第一高位地址和对应存储的所述第二查找表标识,具体包括:
[0114]所述转发设备根据所述第一路由地址查找第一查找表,获取所述第一高位地址和对应存储的所述第二查找表标识和对应的高位地址标识;
[0115]所述转发设备根据所述第二查找表标识查找所述第二查找表,得到对应所述第一查找请求的查找结果,具体包括:
[0116]所述转发设备根据所述高位地址标识和所述第一路由地址组成查找关键字(key)。
[0117]举例说明,这里组成查找关键字的具体方式可以是通过所述高位地址标识和所述第一路由地址中的第一低位地址部分组成用于第二次查找的查找关键字。
[0118]所述转发设备根据所述第二查找表标识和所述查找关键字查找所述第二查找表,得到对应所述第一查找请求的查找结果。
[0119]实施例三
[0120]图5为本发明实施例提供的一种路由查找装置的装置结构图,所述路由查找装置500包括:
[0121]拆分单元501,用于对第一路由地址进行拆分,拆分后得到第一高位地址和第一低位地址,所述第一高位地址容量大于所述第一路由地址容量的一半,所述第一高位地址容量大于所述第一低位地址容量,所述第一路由地址容量处于第一区间。
[0122]举例说明,现有技术中对路由地址的拆分均是平均拆分,例如IPv6中的路由地址有128bit,可以分为64bit的高位地址和64bit的低位地址。而本发明实施例中,从所述第一路由地址拆分出的第一高位地址容量大于所述第一路由地址容量的一半。128bit的路由地址拆分出的高位地址将大于64bit。相应的,低位地址也就小于64bit。同时需要注意的是,所述第一路由地址容量限定为处于所述第一区间,针对所述第一路由地址容量的限定将在实施例二中具体说明,这里不再赘述。
[0123]所述第一区间的容量最小值应该大于本发明实施例中所述第一路由地址容量的
—半°
[0124]存储单元502,用于将所述第一低位地址存储于第二查找表,将所述第一高位地址和第二查找表标识对应存储于第一查找表,所述第二查找表标识为所述第二查找表对应的标识。
[0125]举例说明,在存储路由地址拆分出的高、低位地址上,存储规则要求分开存储。也就是高位地址存储在一起,低位地址存储在一起。在存储第一高位地址时,先确定出存储所述第一低位地址的第二查找表的第二查找表标识,将所述第一高位地址和所述第二查找表标识对应存储到所述第一查找表中。当需要查找所述第一路由地址时,在所述第一查找表中查找出所述第一高位地址,同时可以获得对应存储的所述第二查找表标识,依据所述第二查找
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1