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

文档序号:8225966阅读:213来源:国知局
一种路由查找方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,特别是涉及一种路由查找方法和装置。
【背景技术】
[0002]随着互联网协议(Internet Protocol,IP)版本的提升,路由地址的容量也随着提升。在第六版互联网协议(Internet Protocol Vers1n 6,IPv6)中,路由地址的容量已经达到了 128比特(bit)。
[0003]现有技术中,一般将大容量的路由地址拆分成容量相同的两部分,分别为高位地址和低位地址,并分开保存。以IPv6中的路由地址为例,IPv6中的路由地址有128bit,可以分为64bit的高位地址和64bit的低位地址。由于路由地址一般具有收敛性,大部分路由地址的高位部分都是相同的,不同的部分多在低位部分。例如,路由地址A:192.168.1.1和路由地址B:192.168.12.18中,高位地址相同,均为192.168。具有相同高位地址的路由地址在存储时不会重复存储。例如,网络中存储路由地址的转发设备存储路由地址A和路由地址B,只需要存储一个相同的高位地址和两个低位地址。也就是说,存储路由地址的存储结构中一般包括较少数量的高位地址和较多数量的低位地址。
[0004]针对较大的路由地址时,使用现有技术的方式存储路由地址,同一个转发设备存储的IPv6路由地址的量将远小于存储IPv4路由地址的量,导致转发设备不能实现应有的处理能力,无法达到系统的要求,系统资源利用率较低。

【发明内容】

[0005]为了解决上述技术问题,本发明实施例提供了一种路由查找方法,在拆分路由地址得到的高位地址的大小大于低位地址,使得存储时数量较多的低位地址的总大小降低,提高了转发设备的存储路由地址的数量。
[0006]第一方面,本发明实施例提供了一种路由查找方法,包括:
[0007]转发设备对第一路由地址进行拆分,拆分后得到第一高位地址和第一低位地址,所述第一高位地址容量大于所述第一路由地址容量的一半,所述第一高位地址容量大于所述第一低位地址容量,所述第一路由地址容量处于第一区间;
[0008]所述转发设备将所述第一低位地址存储于第二查找表,将所述第一高位地址和第二查找表标识对应存储于第一查找表,所述第二查找表标识为所述第二查找表对应的标识;
[0009]所述转发设备获取第一查找请求,所述第一查找请求包括第一路由地址;
[0010]所述转发设备根据所述第一路由地址查找第一查找表,获取所述第一高位地址和对应存储的所述第二查找表标识;
[0011]所述转发设备根据所述第二查找表标识查找所述第二查找表,得到对应所述第一查找请求的查找结果。
[0012]在第一方面的第一种可能的实现方式中,还包括:
[0013]所述转发设备对第二路由地址进行拆分,拆分后得到第二高位地址和第二低位地址,所述第二高位地址容量大于所述第二路由地址容量的一半,所述第二高位地址容量大于所述第二低位地址容量,所述第二路由地址容量处于第二区间,所述第二区间大于所述第一区间;
[0014]所述转发设备将所述第二低位地址存储于第三查找表,将所述第二高位地址和第三查找表标识对应存储于第一查找表,所述第三查找表标识为所述第三查找表对应的标识;
[0015]所述转发设备获取第二查找请求,所述第二查找请求包括第二路由地址;
[0016]所述转发设备根据所述第二路由地址查找第一查找表,获取所述第二高位地址和对应存储的所述第三查找表标识;
[0017]所述转发设备根据所述第三查找表标识查找所述第三查找表,得到对应所述第二查找请求的查找结果。
[0018]结合第一方面或者第一方面的第一种可能的实现方式,在第二种可能的实现方式中,还包括:
[0019]所述转发设备将第三路由地址作为第三高位地址,所述第三路由地址容量处于第三区间,所述第三区间小于所述第一区间;
[0020]所述转发设备将所述第三高位地址存储于第一查找表;
[0021]所述转发设备获取第三查找请求,所述第三查找请求包括第三路由地址;
[0022]所述转发设备根据所述第二路由地址查找第一查找表,得到对应所述第三查找请求的查找结果。
[0023]结合第一方面或者第一方面的第一种可能的实现方式,在第三种可能的实现方式中,
[0024]所述第一低位地址和所述第二低位地址的容量相同。
[0025]在第一方面的第四种可能的实现方式中,
[0026]所述第一查找表中还包括所述第一高位地址对应的高位地址标识;
[0027]所述转发设备根据所述第一路由地址查找第一查找表,获取所述第一高位地址和对应存储的所述第二查找表标识,具体包括:
[0028]所述转发设备根据所述第一路由地址查找第一查找表,获取所述第一高位地址和对应存储的所述第二查找表标识和对应的高位地址标识;
[0029]所述转发设备根据所述第二查找表标识查找所述第二查找表,得到对应所述第一查找请求的查找结果,具体包括:
[0030]所述转发设备根据所述高位地址标识和所述第一路由地址组成查找关键字;
[0031]所述转发设备根据所述第二查找表标识和所述查找关键字查找所述第二查找表,得到对应所述第一查找请求的查找结果。
[0032]第二方面,本发明实施例提供了一种路由查找装置,包括:
[0033]拆分单元,用于对第一路由地址进行拆分,拆分后得到第一高位地址和第一低位地址,所述第一高位地址容量大于所述第一路由地址容量的一半,所述第一高位地址容量大于所述第一低位地址容量,所述第一路由地址容量处于第一区间;
[0034]存储单元,用于将所述第一低位地址存储于第二查找表,将所述第一高位地址和第二查找表标识对应存储于第一查找表,所述第二查找表标识为所述第二查找表对应的标识;
[0035]接收单元,用于获取第一查找请求,所述第一查找请求包括第一路由地址;
[0036]一次查找单元,用于根据所述第一路由地址查找第一查找表,获取所述第一高位地址和对应存储的所述第二查找表标识;
[0037]二次查找单元,用于根据所述第二查找表标识查找所述第二查找表,得到对应所述第一查找请求的查找结果。
[0038]在第二方面的第一种可能的实现方式中,
[0039]所述拆分单元还用于对第二路由地址进行拆分,拆分后得到第二高位地址和第二低位地址,所述第二高位地址容量大于所述第二路由地址容量的一半,所述第二高位地址容量大于所述第二低位地址容量,所述第二路由地址容量处于第二区间,所述第二区间大于所述第一区间;
[0040]所述存储单元还用于将所述第二低位地址存储于第三查找表,将所述第二高位地址和第三查找表标识对应存储于第一查找表,所述第三查找表标识为所述第三查找表对应的标识;
[0041]所述接收单元还用于获取第二查找请求,所述第二查找请求包括第二路由地址;
[0042]所述一次查找单元还用于根据所述第二路由地址查找第一查找表,获取所述第二高位地址和对应存储的所述第三查找表标识;
[0043]所述二次查找单元还用于根据所述第三查找表标识查找所述第三查找表,得到对应所述第二查找请求的查找结果。
[0044]结合第二方面或者第二方面的第一种可能的实现方式,在第二种可能的实现方式中,
[0045]所述拆分单元还用于将第三路由地址作为第三高位地址,所述第三路由地址容量处于第三区间,所述第三区间小于所述第一区间;
[0046]所述存储单元还用于将所述第三高位地址存储于第一查找表;
[0047]所述接收单元还用于获取第三查找请求,所述第三查找请求包括第三路由地址;
[0048]所述一次查找单元还用于根据所述第二路由地址查找第一查找表,得到对应所述第三查找请求的查找结果。
[0049]结合第二方面或者第二方面的第一种可能的实现方式,在第三种可能的实现方式中,
[0050]所述第一低位地址和所述第二低位地址的容量相同。
[0051]在第二方面的第四种可能的实现方式中,
[0052]所述第一查找表中还包括所述第一高位地址对应的高位地址标识;
[0053]所述一次查找单元,具体用于:
[0054]根据所述第一路由地址查找第一查找表,获取所述第一高位地址和对应存储的所述第二查找表标识和对应的高位地址标识;
[0055]所述二次查找单元,具体用于:
[0056]根据所述高位地址标识和所述第一路由地址组成查找关键字;
[0057]根据所述第二查找表标识和所述查找关键字查找所述第二查找表,得到对应所述第一查找请求的查找结果。
[0058]由上述技术方案可以看出,转发设备通过拆分得到的第一高位地址容量会大于所述第一路由地址容量的一
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1