CN101631086A - 并行ip路由查找的路由表分区和放置方法 - Google Patents

并行ip路由查找的路由表分区和放置方法 Download PDF

Info

Publication number
CN101631086A
CN101631086A CN200910162055A CN200910162055A CN101631086A CN 101631086 A CN101631086 A CN 101631086A CN 200910162055 A CN200910162055 A CN 200910162055A CN 200910162055 A CN200910162055 A CN 200910162055A CN 101631086 A CN101631086 A CN 101631086A
Authority
CN
China
Prior art keywords
subregion
sublist
prefix
tcam
route
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200910162055A
Other languages
English (en)
Other versions
CN101631086B (zh
Inventor
朱国胜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
Wuhan FiberHome Networks Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan FiberHome Networks Co Ltd filed Critical Wuhan FiberHome Networks Co Ltd
Priority to CN200910162055A priority Critical patent/CN101631086B/zh
Publication of CN101631086A publication Critical patent/CN101631086A/zh
Application granted granted Critical
Publication of CN101631086B publication Critical patent/CN101631086B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种用于并行IP路由查找的路由表分区和放置方法,该方法基于路由表前缀分布特征和前缀更新特征分析,对相互之间不存在重叠关系的叶子节点进行路由表分区,分区子表按照流量特征在若干个TCAM芯片中进行均衡分布放置,并且无须进行路由地址前缀扩展,就能够实现90%以上的路由表项无需排序及随机更新。采用该发明方法的路由器具有分区均匀、分区溢出代价小、吞吐量高、功耗小等特点。

Description

并行IP路由查找的路由表分区和放置方法
技术领域
本发明涉及高速互联网数据通信技术,特别是涉及一种用于并行IP路由查找的路由表分区和放置方法。
背景技术
互联网的飞速发展和各种通信技术的不断涌现,对互联网的核心设备——骨干路由器的性能提出了越来越高的要求。传统的路由器缓慢的转发速度已经成为制约网络发展的瓶颈。由于因特网速度不断提高、网络流量不断增加、路由表的规模不断扩大,导致IP路由查找已经成为制约路由器性能的重要因素,因而路由查找技术的发展受到广泛关注。
目前IP路由查找技术面临巨大挑战,主要表现在:(1)算法设计困难;路由查找需要在前缀值和长度的两个维度进行查找以实现最长前缀匹配(LPM,Longest Prefix Matching);(2)路由表庞大;目前已经超过26万条,且每年还以约5万条的速度增长;(3)路由更新频繁;最高每秒更新数千条;(4)接口速率越来越高;如,OC-768(40Gbps)作为同步光纤网络(SONET)宽带综合业务数字网的光纤数据传输标准之一,已经商用;而速率100Gbps的以太网标准又将在2010年发布。
基于软件的路由查找方法,如:Unibit-Trie、Multibit-Trie、Tree-Bitmap等算法需要进行多次内存操作才能完成路由查找,无法满足路由器高速接口按端口速率转发的要求。基于三态内容寻址存储器(TCAM,Tenary CotentAddressable Memory)的路由查找可以在一个时钟周期内完成关键字(IP地址)查找和所有前缀表项的匹配,并且能从多个匹配的结果中选择最长匹配前缀输出。目前TCAM时钟周期可达4ns。这里,所述最长匹配前缀是指存放地址最低部分的前缀。但是TCAM路由查找方式却存在功耗高、前缀排序存放复杂会导致更新困难等不足。
虽然集成电路(IC)的晶体管集成度按照摩尔(Moore)定律递增,但是支撑查找功能的存储器存取时间每年却只减少(即速率增加)约7%,而接口速率却呈指数级增长,因此存取技术的发展无法与高速接口线速转发达到同步提高的要求。基于TCAM的并行IP路由查找方式将路由表分配到K个并行的TCAM芯片中,并不单独采用减少每次查找所需时间来解决路由查找瓶颈,而是通过并行的体系结构来突破存储器访问速度的限制,一方面单次查找无须和所有的表项作匹配,可以大大降低每次查找的平均功耗,另一方面可以获得远高于以往算法的吞吐能力。现有商用TCAM提供的分区禁用(Partition Disable)机制,比如一个512K大小36比特宽度的TCAM芯片被分成64个块(Block),每个Block的大小为8K,TCAM查询不对整个芯片进行而是根据查找关键字的特征选择对某些Block进行查询,这样可以大大降低每次查询的平均功耗。
图1为现有基于TCAM的并行IP路由查找的通用体系结构,各种不同的并行路由查找方法的关键在于路由表的分区方法即第一阶段的选择器、并行路由查找的负载均衡即如何根据第一阶段选择器的匹配结果启动第二阶段的查找,以及是否支持路由前缀的增量更新。
基于比特特征(Bit-Selection)的算法(Kai Zheng,Chengchen Hu,HongbinLiu,Bin Liu,“An ultra-high throughput and power efficient TCAM-based IP lookupengine”,INFOCOM2004,Hong Kong,China)选择10比特-13比特将路由表分成16个组(group),采用分区负载统计和冗余存放进行负载均衡,该算法无法保证分区的均匀,需要对8比特、9比特前缀进行扩展(Prefix Expansion),不支持增量更新,特别是在分区溢出时需要重新选择比特位进行路由表重构。
基于IP地址范围(Range-based)分区算法(D.Lin,Y.Zhang,C.Hu,B.Liu,X.Zhang,and D.Pao.Route table partitioning and load balancing for parallelsearching with TCAMs.In Proc.IPDPS’07,P 1-10;M.Akhbarizadeh,M.Nourani,R.Panigrahy,and S.Sharma,“A TCAM-Based Parallel Architecture for High-SpeedPacket Forwarding,”IEEE Trans.Computers,vol.56,no.1,P58-72,Jan.2007),将所有路由前缀分配到若干个不重叠的地址范围里,判断前缀P*是否只属于某个范围[a,b],检查如下的条件是否成立:
(a<P0...0)AND(P1...1<b)            (1)
某些前缀可能属于多个范围,比如前缀P*属于所有地址的范围,则需要在多个地方冗余存放,为确定分区点需要采用Unibit-Trie辅助结构,从分区分界点到根路径上的所有前缀都需要在相邻的分区内冗余存放,理论上需要冗余存放32(K-1)个前缀;Range-based分区算法无须进行前缀扩展,可以进行均匀分区。
另外,上述两个Range-based分区算法还可采用基于TCAM的前缀缓存提高负载均衡和查找性能,不同的是前一种方法将前缀缓存分布在各并行TCAM芯片的某个块(Block)里,无须额外的TCAM芯片,但缺点是在缓存不命中的情况下会导致报文乱序;而后一种方法需要K个额外的位于第一阶段的小的TCAM芯片支持才能实现,其实现方法复杂且成本较高。同时,为了保证基于TCAM的前缀缓存的正确性,内部节点又不能进行缓存,因此存在不公平性的问题。在更新方面,由于Range-based分区算法支持增量更新,但在分区溢出的情况下,一个前缀的更新需要移动的最大前缀的个数为K(同时还需要保证TCAM的前缀长度排序),因此需要付出较大的系统开销代价,同样的问题还会发生在其它分区也溢出的情形下。
发明内容
有鉴于此,本发明的主要目的在于提供一种用于并行IP路由查找的路由表分区和放置方法,以解决基于TCAM的并行IP路由查找系统中通过路由表分区以及分配路由子表,使之达到负载均衡和满足动态增量更新路由的目的。
为达到上述目的,本发明的技术方案是这样实现的:
一种并行IP路由查找的路由表分区和放置方法,该方法包括:
A、对路由表进行分区,形成分区子表D[i],并计算所述各分区子表D[i]的负载L[i]、记录所述分区的分界点;
B、将所述路由分区子表按照其是否为叶子节点分区或内部节点分区进行分别存放,并连同各自的负载特征信息一起放置在并行的三态内容寻址存储器TCAM芯片中;
C、执行路由查找操作,根据所述路由表分区子表分界点的不同,将所述查找请求按照负载量大小分发给个并行的TCAM芯片进行均衡排队。
所述方法进一步包括:
D、更新路由前缀,若所在的节点为叶子节点,则采用随机插入和删除TCAM表项的方式进行更新;若所在节点为内部节点,则采用基于前缀长度约束的PLO_OPT算法或者基于前缀链约束的CAO_OPT算法进行更新。
其中,所述步骤A中,包括前缀j的负载比例系数为S[j],并且还根据所述前缀j是否为叶子节点或者内部节点的不同,分别放置在不同的分区子表D[i]中;其中,i∈[1,最大分区个数];所述最大分区的个数等于前缀节点的个数除以所述分区大小。
其中,所述分区子表D[i]按照其负载L[i]的大小进行降序排列,得到分区子表D`[i],并将所述分区子表D`[i]依次放入负载最小的TCAM芯片中,若所述子表为内部节点子表,则将所述分区子表放置在TCAM的高地址区,并根据其前缀长度进行排序;若所述分区为叶子节点子表,则放置在TCAM的低地址区,无须排序。
步骤C所述路由查找过程,具体包括:
C1、将到达路由分组的目的IP地址作为查找键KEY值,在第一阶段根据各分区子表的分界点进行地址范围匹配;
C2、将在地址范围匹配中得到的相应路由前缀所存放的TCAM芯片号和该芯片内的块Block号;
C3、查找KEY值和相应的Block号,送到与所述TCAM芯片号对应的队列进行排队;
C4、然后从所述队列中取出所找到的KEY值和Block号,并根据该Block号和非叶子节点内部前缀所在的Block号生成TCAM查找掩码;
C5、将查找到的结果返回路由器的转发引擎进行转发处理。
其中,所述TCAM查找掩码,为用于使能所述TCAM芯片的相应块Block。
本发明所提供的用于并行IP路由查找的路由表分区和放置方法,具有以下优点:
本发明方法中,采用简单的树遍历算法进行分区,分区简单且均匀,叶子节点之间不存在相互重叠和包含关系,无须冗余存放叶子节点,在TCAM Block中的放置也没有排序要求;根据分区的负载大小在K片TCAM芯片中进行均衡放置,在进行并行查找IP路由时,可获得的加速因子为K-1;另外,在路由更新过程中,由于无须进行前缀扩展,支持增量更新,在通常情况下分区溢出时也只需要进行一次表项的移动操作。因此,能够达到负载均衡和满足动态增量更新路由的效果,同时,由于避免了路由更新过程中路由前缀的大量移动,因此降低了路由器的系统开销,降低了功耗。
附图说明
图1为现有基于TCAM的并行IP路由查找的通用体系结构;
图2为现有路由器体系结构示意图;
图3为本发明实施例并行IP路由查找的原理示意图;
图4为本发明实施例路由表分区流程示意图;
图5为本发明实施例路由分区子表放置流程示意图;
图6为本发明实施例并行IP路由查找流程图。
具体实施方式
下面结合附图及本发明的实施例对本发明的方法作进一步详细的说明
本发明的主要思路是:采用辅助的Trie树结构,对Trie进行先序遍历,基于叶子节点进行路由表分区,并计算分区子表的负载统计被计算;将分区子表按照负载大小进行降序排序,将排序后的分区子表依次放入负载最小的TCAM芯片;叶子节点的更新可以采用随机增量更新,内部节点的更新采用基于前缀长度约束的PLO_OPT或者基于前缀链约束的CAO_OPT算法更新。
图2为现有路由器体系结构示意图,普通路由器通常都具有输入端口、输出端口、交换结构和路由处理器,路由器通常用于完成IP分组的交换,其处理过程通常应包括分组报头处理、路由查表、流量控制、缓存、队列调度、交换、输出缓存等过程。
图3为本发明实施例并行IP路由查找的原理示意图,如图3所示,先采用辅助的Trie树结构,对Trie树进行先序遍历,基于叶子节点进行路由表分区,并计算分区子表的负载统计,即第一阶段。
这里,所述路由表分区,可采用简单的树遍历算法进行,分区简单且均匀,能够使各叶子节点之间消除相互重叠和包含关系,同时也无须冗余存放叶子节点,反映在TCAM Block中的放置也无须排序。
为了实现负载均衡,可根据所述分区的负载大小在K片TCAM芯片中进行均衡放置,将分区子表按照负载大小进行降序排序,将排序后的分区子表依次放入负载最小的TCAM芯片,即第二阶段。
最后,采用随机增量的方式对叶子节点进行IP路由的更新,内部节点的更新采用基于前缀长度约束的PLO_OPT或者基于前缀链约束的CAO_OPT算法更新,外部叶子节点可以采用随机更新。采用本发明的路由更新策略,无须进行前缀扩展,且支持增量更新,通常情况下分区溢出时只需要进行一次表项的移动操作。
为了进行路由表的有效分区,我们先分析以下三个典型的骨干路由表:APNIC、Oregon-IX和Route View,其他路由表具类似的特性,如表1所示。
现有技术中采用无类别域间路由(CIDR)的路由聚合技术,采用该技术虽然减缓了骨干网路由表的增长速率,但是随着连接的主机和网络的数量急剧增长,运营商独立地址(Provider Independent Addresses)和多穴(Multihoming)站点的增多,骨干网路由表依然呈现高速增长态势,每年约增长5万条路由条目,目前已经超过26万条。这里,所述CIDR,是一种用于缓解IP地址耗尽和路由选择表增大问题的机制,其基本思想是,可将多个地址块合并或聚合起来,组成一个更大的无类IP地址集,以支持更大的主机。CIDR机制可用于A类,B类和C类地址块。
表1
从表1可以看出,路由表90%以上的节点为叶子节点,如果将10%的内部节点在K片TCAM芯片进行冗余存放,路由表分区只考虑叶子节点即可。
为了进行路由表更新,我们也对现有技术进行简单分析:
链路状态和配置的改变,会促发路由更新消息,无状态BGP实现、配置错误和路由更新自同步特性会触发更多的路由更新消息,路由更新消息会引起路由转发表的重新计算,导致TCAM表项的添加或者删除,和每秒数百万次路由查找相比,前缀更新频率要小得多,均值为每秒2.35次,但是峰值达每秒5千次,由于TCAM表项的更新将导致路由查找被缓存,缓存会增加报文处理时延,缓存溢出还会导致丢包。这里,所述BGP是一种自治系统间的动态路由发现协议,主要负责本自治区域和外部的自治区域间的路由可达信息的交换。
覆盖大范围网络的短前缀(内部节点)会相对稳定,覆盖小范围网络的长前缀(叶子节点)更新会相对频繁,经分析,路由更新主要由非知名前缀构成,4.5%的非知名前缀占据了50%的路由更新消息,而其流量仅占1.4%;我们对50个更新最频繁的前缀进行了分析,发现只有2个前缀为内部节点,96%的更新为叶子节点[J.Rexford,J.Wang,Z.Xiao,and Y.Zhang,“Bgp routing stability ofpopular destinations”,in Proc.Internet Measurement Workshop,November 2002]。采用基于叶子节点的路由表分区,90%的叶子节点的存放无需排序,超过90%的更新可以直接采用随机更新,对于小于10%内部节点更新可以可以采用[D.Shah and P.Gupta,“Fast incremental updates on ternary-CAMs for routing lookupsand packet classification,”in Proc.Hot Interconnects 8,Aug.2000,P145-153]中的PLO_OPT或者CAO_OPT算法。
图4为本发明实施例路由表分区流程示意图,如图4所示,该过程包括:
步骤401:采用先序遍历辅助路由表Trie树结构;
步骤402:判断本次遍历的节点j是否为叶子节点,若是,则执行步骤403;否则,执行步骤404;
这里,所述判断本次遍历的节点j是否为叶子节点,具体为判断该前缀节点是否有孩子节点,若该节点无孩子节点,即为叶子节点;反之,则该节点为内部节点,即非叶子节点。
步骤403:若j为叶子节点,则将叶子节点j放入叶子节点分区子表D[i];L[i]+=S[j],然后执行步骤405;
步骤404:若j为内部节点,则将内部节点j放入另外的非叶子节点分区子表D[i];L[i]+=S[j],然后执行步骤405;
步骤405:遍历下一个前缀节点j;
步骤406:判断本次遍历是否结束,若结束,则返回步骤402;否则,执行步骤407;
步骤407:结束路由表的分区操作。
图5为本发明实施例路由分区子表放置流程示意图,如图5所示,接上述图4所述的步骤401~步骤407之后,对所述路由分区表进行进一步操作即放置路由分区子表,所述过程包括:
步骤501:对分区子表D[i]按照L[i]进行降序排列,得到D`[i];
步骤502:依次取分区子表D`[i];
步骤503:判断分区子表D`[i]是否为空,若是,则执行步骤508;否则,执行步骤504;
这里,所述分区子表为空,是指路由子表已放置完成。
步骤504:判断D`[i]是否为叶子节点分区子表,若是叶子节点分区子表,则执行步骤506;若不是叶子节点分区子表,则执行步骤505;
步骤505:将非叶子内部节点分区的子表D`[i]放入所有TCAM芯片的高地址区,并且需要按照前缀长度进行排序,然后执行步骤507;
步骤506:将叶子节点分区的子表D`[i]放入负载最小的TCAM芯片低地址区,没有排序要求,然后执行步骤507;
步骤507:取下一个分区子表D`[i],并判断是否为空,若为空,则执行步骤508;否则执行步骤503;
步骤508:结束放置路由分区子表的操作。
图6为本发明实施例并行IP路由查找流程图,如图6所示,该过程包括:
步骤601:将到达路由分组的目的IP地址作为查找键(KEY)值,在第一阶段进行地址范围匹配;
步骤602:将在地址范围匹配中得到的相应路由前缀所存放的TCAM芯片号和该芯片内的块(Block)号;
步骤603:查找KEY值和相应的Block号,送到与所述TCAM芯片号对应的队列进行排队;
步骤604:然后从所述队列中取出所找到的KEY值和Block号,并根据该Block号和非叶子节点内部前缀所在的Block号(全局)生成TCAM查找掩码;
这里,所述TCAM查找掩码,用于使能所述TCAM芯片的相应Block。
步骤605:将查找到的结果返回给图2所述路由器的转发引擎进行转发处理。
本发明的技术方案具有如下特点:
(1)对路由表进行分区,形成分区子表D[i]的同时,计算各分区子表D[i]的负载L[i]、并记录分区分界点;
(2)路由分区子表按照其是否为叶子节点分区或者按照是否为内部节点分区,该分区及其所计算得到的负载特征均被放置在并行的TCAM芯片内;
(3)路由查找操作开始前,首先进行分区判断,然后查找请求被分发给各个并行TCAM芯片进行排队;
(4)更新路由前缀时,对于叶子节点,则采用随机插入和删除TCAM表项的方式进行更新;对于内部节点,则采用PLO_OPT或CAO_OPT算法更新[D.Shah and P.Gupta,“Fast incremental updates on ternary-CAMs for routinglookups and packet classification”,in Proc.Hot Interconnects 8,Aug.2000,P145-153]。
这里,在所述第(1)点特点中,前缀j的负载比例系数为S[j],要根据前缀j是否为叶子节点或者非叶子内部节点分别放置在不同的分区子表D[i]中,i∈(1,最大分区个数),最大分区个数可以用前缀节点个数除以分区大小得到;前缀j被放入分区子表D[i]的同时,分区子表D[i]的负载L[i]需要增加S[j]。
在所述第(2)点特点中,分区子表D[i]首先按照其负载L[i]大小进行降序排列,得到D`[i],所述D`[i]依次被放入负载最小的TCAM芯片。对于内部节点子表,则分区放置在TCAM的高地址区,同时还要根据其前缀长度进行排序;若是叶子节点子表,则放置在TCAM的低地址区,不需要进行排序。
下面结合本发明特征和实际测试过程对本发明进行进一步说明。
这里,采用K个服务时间固定的M/D/1排队系统模型来分析系统的性能。假设分组到达时间服从泊松分布,单位时间业务强度为λ,TCAM查找服务速率为μ,查找服务时间Ts=1/μ,单片TCAM查找单元单位时间内内查找量:
ρ=λ/(μ*K)                         (2)
每个缓存里面排队等候的分组个数:
lq=ρ2/(2*(1-ρ))                    (3)
分组在系统内的平均逗留时间:
Ws=ρ*Ts/(2*(1-ρ))+TS               (4)
假设N为路由表前缀个数,φ为叶子节点比例系数,K为并行TCAM芯片个数,每个TCAM的Block大小为b,每个TCAM可被分成n个Block,S[j]为前缀j的负载比例系数,要求满足的先决条件为:
(K*b*n)>N+(K-1)*(1-φ)*N             (5)
条件(5)可以确保K个并行的TCAM芯片可以容纳N个路由前缀。
下面以本发明在实际测试中所获得的实验结果为例进行说明:
设:λ/μ=K-1,ρ=(K-1)/K,当K等于4时,ρ=3/4,则加速因子T=K*ρ=3,缓存队列长度lq=9/8,Ws=5Ts/2,系统获得的加速因子T为3。缓存队列长度lq很短,需要增加少量等待时延。
采用4片4ns商用TCAM芯片,Ws=5Ts/2=10ns,整个系统的包转发率为300MPPS。由于每次TCAM的路由查找功耗和需要匹配的TCAM条目成正比,假设路由总条目N=260K,块Block大小为8K,每次只需要匹配一个Block的叶子节点,则每次查找的功耗和单片TCAM功耗之比Pe∶Pe=(0.1*260K+8K)/260K=0.12,每次查找的平均约为单片方案的0.12,因此,能够大大降低路由查找的功耗。
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

Claims (6)

1、一种并行IP路由查找的路由表分区和放置方法,其特征在于:该方法包括:
A、对路由表进行分区,形成分区子表D[i],并计算所述各分区子表D[i]的负载L[i]、记录所述分区的分界点;
B、将所述路由分区子表按照其是否为叶子节点分区或内部节点分区进行分别存放,并连同各自的负载特征信息一起放置在并行的三态内容寻址存储器TCAM芯片中;
C、执行路由查找操作,根据所述路由表分区子表分界点的不同,将所述查找请求按照负载量大小分发给个并行的TCAM芯片进行均衡排队。
2、根据权利要求1所述的路由表分区和放置方法,其特征在于,所述方法进一步包括:
D、更新路由前缀,若所在的节点为叶子节点,则采用随机插入和删除TCAM表项的方式进行更新;若所在节点为内部节点,则采用基于前缀长度约束的PLO_OPT算法或者基于前缀链约束的CAO_OPT算法进行更新。
3、根据权利要求1所述的路由表分区和放置方法,其特征在于,所述步骤A中,包括前缀j的负载比例系数为S[j],并且还根据所述前缀j是否为叶子节点或者内部节点的不同,分别放置在不同的分区子表D[i]中;其中,i∈[1,最大分区个数];所述最大分区的个数等于前缀节点的个数除以所述分区大小。
4、根据权利要求1或3所述的路由表分区和放置方法,其特征在于,所述分区子表D[i]按照其负载L[i]的大小进行降序排列,得到分区子表D`[i],并将所述分区子表D`[i]依次放入负载最小的TCAM芯片中,若所述子表为内部节点子表,则将所述分区子表放置在TCAM的高地址区,并根据其前缀长度进行排序;若所述分区为叶子节点子表,则放置在TCAM的低地址区,无须排序。
5、根据权利要求1所述的路由表分区和放置方法,其特征在于,步骤C所述路由查找过程,具体包括:
C1、将到达路由分组的目的IP地址作为查找键KEY值,在第一阶段根据各分区子表的分界点进行地址范围匹配;
C2、将在地址范围匹配中得到的相应路由前缀所存放的TCAM芯片号和该芯片内的块Block号;
C3、查找KEY值和相应的Block号,送到与所述TCAM芯片号对应的队列进行排队;
C4、然后从所述队列中取出所找到的KEY值和Block号,并根据该Block号和非叶子节点内部前缀所在的Block号生成TCAM查找掩码;
C5、将查找到的结果返回路由器的转发引擎进行转发处理。
6、根据权利要求5所述的路由表分区和放置方法,其特征在于,所述TCAM查找掩码,为用于使能所述TCAM芯片的相应块Block。
CN200910162055A 2009-08-10 2009-08-10 并行ip路由查找的路由表分区和放置方法 Expired - Fee Related CN101631086B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200910162055A CN101631086B (zh) 2009-08-10 2009-08-10 并行ip路由查找的路由表分区和放置方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200910162055A CN101631086B (zh) 2009-08-10 2009-08-10 并行ip路由查找的路由表分区和放置方法

Publications (2)

Publication Number Publication Date
CN101631086A true CN101631086A (zh) 2010-01-20
CN101631086B CN101631086B (zh) 2012-09-26

Family

ID=41576037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200910162055A Expired - Fee Related CN101631086B (zh) 2009-08-10 2009-08-10 并行ip路由查找的路由表分区和放置方法

Country Status (1)

Country Link
CN (1) CN101631086B (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102307149A (zh) * 2011-09-23 2012-01-04 中国科学院计算技术研究所 Ip查找方法和装置以及路由更新方法和装置
CN102739550A (zh) * 2012-07-17 2012-10-17 中山大学 基于随机副本分配的多存储器流水路由体系结构
CN102739551A (zh) * 2012-07-17 2012-10-17 中山大学 多存储器流水路由体系结构
WO2014000670A1 (en) * 2012-06-27 2014-01-03 Huawei Technologies Co., Ltd. Internet protocol and ethernet lookup via a unified hashed trie
CN103501268A (zh) * 2013-09-29 2014-01-08 杭州华三通信技术有限公司 一种tcam资源调度方法及装置
WO2014117353A1 (en) * 2013-01-31 2014-08-07 Hewlett-Packard Development Company, L.P. Incremental update of a shape graph
CN104410573A (zh) * 2014-11-26 2015-03-11 中国电子科技集团公司第四十一研究所 一种基于tcam的包匹配方法
CN105262684A (zh) * 2015-10-23 2016-01-20 首都师范大学 路由表的实时动态分解存储方法和路由数据转发方法
US9602407B2 (en) 2013-12-17 2017-03-21 Huawei Technologies Co., Ltd. Trie stage balancing for network address lookup
CN107222401A (zh) * 2017-05-05 2017-09-29 大连理工大学 一种基于tcam的路由查找系统及其方法
CN107749826A (zh) * 2017-09-15 2018-03-02 深圳市盛路物联通讯技术有限公司 一种数据包转发方法及系统
CN109981464A (zh) * 2019-02-28 2019-07-05 中国人民解放军陆军工程大学 一种在fpga中实现的tcam电路结构及其匹配方法
CN111026324A (zh) * 2018-10-09 2020-04-17 华为技术有限公司 转发表项的更新方法及装置
CN111917868A (zh) * 2020-07-29 2020-11-10 数网金融有限公司 区块链节点的寻址方法、装置、路由设备及存储介质
CN114996023A (zh) * 2022-07-19 2022-09-02 新华三半导体技术有限公司 目标缓存组件、处理组件、网络设备及表项获取方法
CN115242716A (zh) * 2022-06-15 2022-10-25 中国电子科技集团公司第三十研究所 一种基于bgp前缀树的ip地址路由可达性识别方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1191520C (zh) * 2003-04-04 2005-03-02 清华大学 支持路由压缩的tcam高速更新方法
CN1279729C (zh) * 2004-02-20 2006-10-11 清华大学 基于tcam的分布式并行ip路由查找方法
CN1787477A (zh) * 2004-12-09 2006-06-14 北京三星通信技术研究有限公司 IPv6路由表的查找方法
CN100426796C (zh) * 2005-12-23 2008-10-15 华为技术有限公司 一种路由管理系统和方法

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102307149B (zh) * 2011-09-23 2014-05-07 中国科学院计算技术研究所 Ip查找方法和装置以及路由更新方法和装置
CN102307149A (zh) * 2011-09-23 2012-01-04 中国科学院计算技术研究所 Ip查找方法和装置以及路由更新方法和装置
CN104854828A (zh) * 2012-06-27 2015-08-19 华为技术有限公司 通过统一哈希化Trie树进行的互联网协议及以太网查找
WO2014000670A1 (en) * 2012-06-27 2014-01-03 Huawei Technologies Co., Ltd. Internet protocol and ethernet lookup via a unified hashed trie
CN104854828B (zh) * 2012-06-27 2018-04-27 华为技术有限公司 通过统一哈希化Trie树进行的互联网协议及以太网查找
US9680747B2 (en) 2012-06-27 2017-06-13 Futurewei Technologies, Inc. Internet protocol and Ethernet lookup via a unified hashed trie
CN102739551A (zh) * 2012-07-17 2012-10-17 中山大学 多存储器流水路由体系结构
CN102739551B (zh) * 2012-07-17 2015-03-18 中山大学 多存储器流水路由体系结构
CN102739550A (zh) * 2012-07-17 2012-10-17 中山大学 基于随机副本分配的多存储器流水路由体系结构
CN102739550B (zh) * 2012-07-17 2015-11-25 中山大学 基于随机副本分配的多存储器流水路由体系结构
WO2014117353A1 (en) * 2013-01-31 2014-08-07 Hewlett-Packard Development Company, L.P. Incremental update of a shape graph
US10021026B2 (en) 2013-01-31 2018-07-10 Hewlett Packard Enterprise Development Lp Incremental update of a shape graph
CN103501268A (zh) * 2013-09-29 2014-01-08 杭州华三通信技术有限公司 一种tcam资源调度方法及装置
US9602407B2 (en) 2013-12-17 2017-03-21 Huawei Technologies Co., Ltd. Trie stage balancing for network address lookup
CN104410573B (zh) * 2014-11-26 2017-07-21 中国电子科技集团公司第四十一研究所 一种基于tcam的包匹配方法
CN104410573A (zh) * 2014-11-26 2015-03-11 中国电子科技集团公司第四十一研究所 一种基于tcam的包匹配方法
CN105262684A (zh) * 2015-10-23 2016-01-20 首都师范大学 路由表的实时动态分解存储方法和路由数据转发方法
CN105262684B (zh) * 2015-10-23 2018-05-04 首都师范大学 路由表的实时动态分解存储方法和路由数据转发方法
CN107222401A (zh) * 2017-05-05 2017-09-29 大连理工大学 一种基于tcam的路由查找系统及其方法
CN107222401B (zh) * 2017-05-05 2020-07-24 大连理工大学 一种基于tcam的路由查找系统及其方法
CN107749826A (zh) * 2017-09-15 2018-03-02 深圳市盛路物联通讯技术有限公司 一种数据包转发方法及系统
CN111026324A (zh) * 2018-10-09 2020-04-17 华为技术有限公司 转发表项的更新方法及装置
US11316804B2 (en) 2018-10-09 2022-04-26 Huawei Technologies Co., Ltd. Forwarding entry update method and apparatus in a memory
CN109981464A (zh) * 2019-02-28 2019-07-05 中国人民解放军陆军工程大学 一种在fpga中实现的tcam电路结构及其匹配方法
CN111917868A (zh) * 2020-07-29 2020-11-10 数网金融有限公司 区块链节点的寻址方法、装置、路由设备及存储介质
CN115242716A (zh) * 2022-06-15 2022-10-25 中国电子科技集团公司第三十研究所 一种基于bgp前缀树的ip地址路由可达性识别方法
CN115242716B (zh) * 2022-06-15 2023-05-09 中国电子科技集团公司第三十研究所 一种基于bgp前缀树的ip地址路由可达性识别方法
CN114996023A (zh) * 2022-07-19 2022-09-02 新华三半导体技术有限公司 目标缓存组件、处理组件、网络设备及表项获取方法

Also Published As

Publication number Publication date
CN101631086B (zh) 2012-09-26

Similar Documents

Publication Publication Date Title
CN101631086B (zh) 并行ip路由查找的路由表分区和放置方法
CN110572274B (zh) 一种优化边缘计算节点部署和管理的命名数据网络方法
Zheng et al. A TCAM-based distributed parallel IP lookup scheme and performance analysis
US7031320B2 (en) Apparatus and method for performing high-speed IP route lookup and managing routing/forwarding tables
US8625604B2 (en) Hash-based prefix-compressed trie for IP route lookup
EP1070413B1 (en) Composite trunking in a router
CN103312615A (zh) 使用可变数量前缀的最长前缀匹配搜索
CN101505279B (zh) 一种路由查找方法和装置
US20040006668A1 (en) Internet protocol address look-up method
Le et al. Scalable tree-based architectures for IPv4/v6 lookup using prefix partitioning
JP2000196670A (ja) 高速検索方法及び高速検索装置
Pao et al. Efficient hardware architecture for fast IP address lookup
CN108710629B (zh) 基于命名数据网络的Top-k查询方法及系统
CN100426791C (zh) 一种路由转发表地址查找引擎装置
CN101515900B (zh) 基于前缀覆盖级别的二分ip路由查找方法
US8032543B2 (en) Sorting apparatus and method
Bando et al. Flashlook: 100-gbps hash-tuned route lookup architecture
JP2000083055A (ja) ルータ
CN102739550B (zh) 基于随机副本分配的多存储器流水路由体系结构
CN100425039C (zh) 标志集合式两维报文分类及查找方法和设备
CN101699821B (zh) 一种分布式多核网络系统中地址解析协议实现的方法
CN109586984B (zh) 基于sdn的分布式虚拟网络映射方法
KR100493099B1 (ko) 고속 인터넷프로토콜 라우터의 라우팅/포워딩 룩업 및라우팅 테이블 관리
CN101494603B (zh) 一种128位因特网地址并行高速路由寻址方法
Ray et al. An SRAM-based novel hardware architecture for longest prefix matching for IP route lookup

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20170330

Address after: 430074 East Lake high tech Development Zone, Hubei Province, No. 6, No., high and new technology development zone, No. four

Patentee after: FIBERHOME TELECOMMUNICATION TECHNOLOGIES Co.,Ltd.

Address before: 430074 Hubei city of Wuhan province East Lake high tech Development Zone in Dongxin Road No. 5 Building 3 east of optical communication industry

Patentee before: WUHAN FIBERHOME NETWORKS Co.,Ltd.

TR01 Transfer of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120926

Termination date: 20210810

CF01 Termination of patent right due to non-payment of annual fee