CN104239337A - 基于tcam的查表处理方法及装置 - Google Patents

基于tcam的查表处理方法及装置 Download PDF

Info

Publication number
CN104239337A
CN104239337A CN 201310244525 CN201310244525A CN104239337A CN 104239337 A CN104239337 A CN 104239337A CN 201310244525 CN201310244525 CN 201310244525 CN 201310244525 A CN201310244525 A CN 201310244525A CN 104239337 A CN104239337 A CN 104239337A
Authority
CN
Grant status
Application
Patent type
Prior art keywords
query
tcam
process
table
engine
Prior art date
Application number
CN 201310244525
Other languages
English (en)
Inventor
顾霞
张启申
Original Assignee
中兴通讯股份有限公司
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

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30286Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
    • G06F17/30386Retrieval requests
    • G06F17/30424Query processing
    • G06F17/30477Query execution
    • G06F17/30483Query execution of query operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30286Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
    • G06F17/30312Storage and indexing structures; Management thereof
    • G06F17/30339Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30286Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
    • G06F17/30386Retrieval requests
    • G06F17/30424Query processing
    • G06F17/30477Query execution
    • G06F17/30483Query execution of query operations
    • G06F17/30501Intermediate data storage techniques for performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30286Information retrieval; Database structures therefor ; File system structures therefor in structured data stores
    • G06F17/30386Retrieval requests
    • G06F17/30424Query processing
    • G06F17/30477Query execution
    • G06F17/30507Applying rules; deductive queries
    • G06F17/3051Triggers and constraints
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30861Retrieval from the Internet, e.g. browsers
    • G06F17/30864Retrieval from the Internet, e.g. browsers by querying, e.g. search engines or meta-search engines, crawling techniques, push systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/30Information retrieval; Database structures therefor ; File system structures therefor
    • G06F17/30943Information retrieval; Database structures therefor ; File system structures therefor details of database functions independent of the retrieved data type
    • G06F17/30964Querying
    • G06F17/30979Query processing
    • G06F17/30982Query processing by using parallel associative memories or content-addressable memories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup or address filtering
    • H04L45/7457Address table lookup or address filtering using content-addressable memories [CAM]

Abstract

本发明提供了一种基于TCAM的查表处理方法及装置,其中,上述方法包括:执行用于查询TCAM表项的第一查询过程;在执行所述第一查询过程中,执行用于查询除所述TCAM表项之外的其它表项的第二查询过程,其中,所述第一查询过程和所述第二查询过程是独立运行的;通过所述第一查询过程和所述第二查询过程分别获取第一查询结果和第二查询结果。采用本发明提供的上述技术方案,解决了相关技术中,基于TCAM的查表方式导致的报文处理时间较长,进而影响到报文的转发性能等技术问题,进而减少了报文处理的时间,从而提高了报文的转发性能。

Description

基于TCAM的查表处理方法及装置

技术领域

[0001] 本发明涉及通信领域,尤其是涉及一种基于TCAM的查表处理方法及装置。

背景技术

[0002] 基于三态内容寻址存储器(TernaryContentAddressableMemory,简称为TCAM) 的查表方式,方便快捷,支持长键值和掩码的查表类型。在需要支持大量访问控制列表 (AccessControlList,简称为ACL)或者大量路由的时候,一般交换机的设备商都会选择 TCAM来实现ACL或者路由的查表。

[0003] 目前TCAM芯片的查表架构是确定的,TCAM查表返回的结果只能是条目索引号,而 不能得到最终的结果。一个表项如果要通过TCAM来实现,需要设计成:组装好的键值去查 TCAM,TCAM返回条目索引号,然后再使用这个条目索引号查一张直接表,得到最终查表结 果。也就是表项设计成TCAM查表类型,就必须要查一张TCAM表和一张直接表。

[0004] 开发者使用TCAM查表,都是先将控制字和键值发送给TCAM,然后等待TCAM查表结 束将结果(result)返回。最后再用返回的result中的索引(index)查直接表,得到想要的 结果。TCAM查表的过程中,因为芯片中查表结果存放的寄存器是唯一的,因此不能再去查其 他的表项,只能空等待。如图1所示,相关技术中的TCAM查表方案包括如下步骤:

[0005] 步骤S102 :准备TCAM的查表键值,准备完之后执行步骤S104 ;

[0006] 步骤S104 :使用准备好的查表键值查TCAM表,然后执行步骤S106 ;

[0007] 步骤S106 :判断TCAM查表是否已经返回结果(result),如果已经返回,执行步骤 S108 ;如果没有返回,继续执行步骤S106,也就是一个等待的过程;

[0008] 步骤S108 :使用返回的result中的index查直接表;

[0009] 步骤SllO:得到想要的查表结果,结束。

[0010] 从上面的查表步骤中可以看到:步骤S106花费的时间就是一次TCAM查表的时间, 在这段时间内,因为交换机中查表结果存放的寄存器是固定的,因此不能再去查其他的表 项,只能空等待。

[0011] 因此,TCAM查表会消耗大量的查表性能,在业务转发流程复杂的情况下,会导致业 务达不到转发要求。使用TCAM作为表项存储的业务,虽然TCAM查表简单快捷,但是转发性 能是一大难点。

[0012] 针对相关技术中的上述问题,目如尚未提出有效的解决方案。

发明内容

[0013] 针对相关技术中,基于TCAM的查表方式导致的报文处理时间较长,进而影响到报 文的转发性能等技术问题,本发明提供了一种基于TCAM的查表处理及装置,以至少解决上 述问题。

[0014] 根据本发明的一个方面,提供了一种基于TCAM的查表处理方法,包括:执行用于 查询TCAM表项的第一查询过程;在执行所述第一查询过程中,执行用于查询除所述TCAM表 项之外的其它表项的第二查询过程,其中,所述第一查询过程和所述第二查询过程是独立 运行的;通过所述第一查询过程和所述第二查询过程分别获取第一查询结果和第二查询结 果。

[0015] 优选地,通过所述第一查询过程获取第一查询结果,包括:将从TCAM查询到的第 一查询结果存储至除查表引擎专用寄存器之外的指定寄存器;将所述第一查询结果从所述 指定寄存器读取至所述查表引擎专用寄存器;从所述查询引擎专用寄存器中获取所述第一 查询结果。

[0016] 优选地,将所述第一查询结果从所述指定寄存器读取至所述查表引擎专用寄存器 之前,包括:判断所述第二查询过程是否结束,其中,在判断为结束的情况下,将所述第一查 询结果从所述指定寄存器读取至所述查表引擎专用寄存器。

[0017] 优选地,判断所述第二查询过程是否结束,包括:判断所述其它表项中的待查询表 项是否已经遍历查询完成。

[0018] 优选地,通过所述第二查询过程获取所述第二查询结果,包括:将通过所述第二查 询过程查找到的所述第二查询结果存储至所述查表引擎专用寄存器;从所述查询引擎专用 寄存器中获取所述第二查询结果。

[0019] 优选地,执行用于查询除所述TCAM表项之外的其它表项的第二查询过程,包括: 在根据用于查询TCAM表项的查询消息触发执行所述第一查询过程后,执行所述第二查询 过程。

[0020] 根据本发明的另一个方面,提供了一种基于TCAM的查表处理装置,包括:第一执 行模块,用于执行用于查询TCAM表项的第一查询过程;第二执行模块,用于在执行所述第 一查询过程中,执行用于查询除所述TCAM表项之外的其它表项的第二查询过程,其中,所 述第一查询过程和所述第二查询过程是独立运行的;获取模块,用于通过所述第一查询过 程和所述第二查询过程分别获取第一查询结果和第二查询结果。

[0021] 优选地,所述获取模块包括:第一存储单元,用于将从TCAM查询到的第一查询结 果存储至除查表引擎专用寄存器之外的指定寄存器;读取单元,用于将所述第一查询结果 从所述指定寄存器读取至所述查表引擎专用寄存器;第一获取单元,用于从所述查询引擎 专用寄存器中获取所述第一查询结果。

[0022] 优选地,所述获取模块包括:第二存储单元,用于将通过所述第二查询过程查找到 的所述第二查询结果存储至所述查表引擎专用寄存器;第二获取单元,用于从所述查询引 擎专用寄存器中获取所述第二查询结果。

[0023] 优选地,所述第二执行模块,用于在根据用于查询TCAM表项的查询消息触发执行 所述第一查询过程后,执行所述第二查询过程。

[0024] 通过本发明,采用在执行用于查询TCAM表项的第一查询过程中,执行用于查询除 所述TCAM表项之外的其它表项的第二查询过程的技术手段,解决了相关技术中,基于TCAM 的查表方式导致的报文处理时间较长,进而影响到报文的转发性能等技术问题,进而减少 了报文处理的时间,从而提高了报文的转发性能。

附图说明

[0025] 此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发 明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

[0026] 图1为根据相关技术的TCAM查表方法的流程图;

[0027] 图2为根据本发明实施例的基于TCAM的查表处理方法的流程图;

[0028] 图3为根据本发明实施例的基于TCAM的查表处理装置的结构框图;

[0029] 图4为根据本发明实施例的基于TCAM的查表处理装置的另一结构框图;

[0030] 图5为根据本发明优选实施例的基于TCAM的查表处理方法的流程图;

[0031] 图6为根据本发明优选实施例的基于TCAM的查表处理方法的流程图。

具体实施方式

[0032] 下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的 情况下,本申请中的实施例及实施例中的特征可以相互组合。

[0033] 实施例1

[0034] 图2为根据本发明实施例的基于TCAM的查表处理方法的流程图。如图2所示,该 方法包括:

[0035] 步骤S202,执行用于查询TCAM表项的第一查询过程;

[0036] 步骤S204,在执行第一查询过程中,执行用于查询除TCAM表项之外的其它表项的 第二查询过程,其中,第一查询过程和第二查询过程是独立运行的;

[0037] 步骤S206,通过第一查询过程和第二查询过程分别获取第一查询结果和第二查询 结果。

[0038] 通过上述各个处理步骤,由于在执行用于查询TCAM表项的第一查询过程中,执行 了用于查询除所述TCAM表项之外的其它表项的第二查询过程,充分利用了上述第一查询 过程中用于等待查询结果的等待时间,从而有效减少了报文处理的时间,进而提高了报文 的转发性能。

[0039] 本实施例中,为了不影响正常TCAM查表,在通过第一查询过程获取第一查询结果 的过程中,需要设置一个和查表引擎专用寄存器不同的指定寄存器存储返回的查询结果, 具体实现过程如下:将从TCAM查询到的第一查询结果存储至除查表引擎专用寄存器之外 的指定寄存器;将第一查询结果从指定寄存器读取至查表引擎专用寄存器;从查询引擎专 用寄存器中获取第一查询结果。

[0040] 在本实施例中,将第一查询结果从指定寄存器读取至查表引擎专用寄存器之前, 需要判断第二查询过程是否结束,其中,在判断为结束的情况下,将第一查询结果从指定寄 存器读取至查表引擎专用寄存器。

[0041] 在上述其它表项为多个时,上述判断过程可以表现为以下方式:判断其它表项中 的待查询表项是否已经遍历查询完成。

[0042] 上述第二查询过程可以通过以下方式实现:将通过第二查询过程查找到的第二查 询结果存储至查表引擎专用寄存器;从查询引擎专用寄存器中获取第二查询结果。

[0043] 执行用于查询除TCAM表项之外的其它表项的第二查询过程的时机可以选择在第 二查询过程中的任意时机,具体根据实际情况而定,在本实施例的一个优选实施方式中,可 以在根据用于查询TCAM表项的查询消息触发执行第一查询过程后,执行第二查询过程。

[0044] 在本实施例中还提供了一种基于TCAM的查表处理装置,该装置用于实现上述实 施例及优选实施方式,已经进行过说明的不再赘述,下面对该装置中涉及到的模块进行说 明。如以下所使用的,术语"模块"可以实现预定功能的软件和/或硬件的组合。尽管以下 实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是 可能并被构想的。图3为根据本发明实施例的基于TCAM的查表处理装置的结构框图。如 图3所示,该装置包括:

[0045] 第一执行模块30,连接至第二执行模块32和获取模块34,用于执行用于查询TCAM 表项的第一查询过程;

[0046] 第二执行模块32,连接至获取模块34,用于在执行第一查询过程中,执行用于查 询除TCAM表项之外的其它表项的第二查询过程,其中,第一查询过程和第二查询过程是独 立运行的;

[0047] 获取模块34,用于通过第一查询过程和第二查询过程分别获取第一查询结果和第 _查询结果。

[0048] 通过上述各个模块实现的功能,同样可以充分利用上述第一查询过程中用于等待 查询结果的等待时间,从而有效减少报文处理的时间,进而提高报文的转发性能。

[0049] 优选地,如图4所示,上述获取模块34包括:第一存储单元340,连接至读取单元 342,用于将从TCAM查询到的第一查询结果存储至除查表引擎专用寄存器之外的指定寄存 器;读取单元342,连接至第一获取单元344,用于将第一查询结果从指定寄存器读取至查 表引擎专用寄存器;第一获取单元344,用于从查询引擎专用寄存器中获取第一查询结果。

[0050] 优选地,如图4所示,上述获取模块34包括:第二存储单元346,连接至第二获取 单元348,用于将通过第二查询过程查找到的第二查询结果存储至查表引擎专用寄存器; 第二获取单元348,用于从查询引擎专用寄存器中获取第二查询结果。

[0051] 优选地,上述第二执行模块32,用于在根据用于查询TCAM表项的查询消息触发执 行第一查询过程后,执行第二查询过程。

[0052] 为了更好地理解上述实施例,以下结合上述实施例的优选实施例1-2详细说明。

[0053] 实施例1

[0054] 本实施例提供一种基于TCAM的查表处理方法,在TCAM查表等待结果的过程中,力口 入了其他表项的查找,从而减少了报文处理的时间,提高了报文的转发性能。

[0055] 为实现上述目的,本实施例采用的技术方案如下:充分利用相关技术中(如图1所 示的方案)空等待的时间,穿插查找其他的需要查找的表项(如查一张哈希表),查找完成 之后,再判断TCAM查表是否已完成,如果完成,再查一张直接表,没有完成则等待。

[0056] 如图5所示,该方法包括以下处理步骤:

[0057] 步骤S502 :准备TCAM的查表键值,准备完之后执行步骤S504 ;

[0058] 步骤S504 :使用准备好的查表键值查TCAM表。

[0059] 在此需要强调的是:TCAM查表和其他的普通查表不一样,TCAM查表是数据处理芯 片将控制字和键值发送给TCAM,TCAM独自进行查表的过程。

[0060] 数据处理芯片只需要给TCAM查表指定一个返回寄存器(该返回寄存器不占用查 表引擎专用寄存器,而查表引擎专用寄存器又可以读取到返回寄存器中的TCAM返回值), 然后在TCAM查表等待的过程中,数据处理芯片就可以再去查找其他的表项。

[0061] 于是在步骤S504中,数据处理芯片必须指定TCAM查表结束,result返回到一个 返回寄存器,而非查表引擎专用寄存器。

[0062] TCAM查表命令执行完成之后(也就是将控制字和键值发送给TCAM之后),执行步 骤3。

[0063] 步骤S506 :看有没有需要并行查找的表项,也就是和TCAM查找结果无关的表项。 如果有的话,就穿插在TCAM等待的间隙查找,即并行查找,并行查表结束之后,执行步骤 S508 ;

[0064] 步骤S508 :读取TCAM返回值寄存器,将TCAM查找result读取到查表引擎专用寄 存器中;执行步骤S510 ;

[0065] 步骤S510 :判断TCAM查表是否已经返回result,如果返回,执行步骤S512 ;如果 没有返回,继续执行步骤S510,也就是一个等待的过程,即使等待也是一个很短的时间;

[0066] 步骤S512 :使用返回的result中的index查直接表,得到真正想要的查表结果。 结束。

[0067] 本实施例中的上述方案适用于对各种类型的TCAM查表。

[0068] 实施例2

[0069] 本实施例给出了一个简单的报文处理的实例。见表1,一共需要查四张表:其中 tablel是一张独立的表项,什么时候查都无所谓;table2_table4必须顺序查,table4依赖 table3,table3 依赖table2。

Figure CN104239337AD00081

[0072] 如图6所示,本实施例提供的基于TCAM的查表处理方法包括以下处理步骤:

[0073] 步骤S602 :准备路由表的查表键值(IP地址+专用私网号),准备完之后执行步骤 S604 ;

[0074] 步骤S604 :使用准备好的查表键值查TCAM表,TCAM查表结果返回到一个返回寄存 器。执行步骤S606;

[0075] 步骤S606 :穿插并行查找,查找独立的生成树表。生成树表查找结束(也就是返 回了查找结果)之后,执行步骤S608 ;

[0076] 步骤S608 :读取TCAM返回值寄存器,将TCAM查找result读取到查表引擎专用寄 存器中;执行步骤S610;

[0077] 步骤S610 :判断TCAM查表是否已经返回结果(result),如果已返回,执行步骤 S612 ;如果没有返回,继续执行步骤S610,也就是一个等待的过程,即使等待也是一个很短 的时间;

[0078] 步骤S612 :使用返回的result中的index查路由直接表,得到真正想要的查表结 果。执行步骤S614;

[0079] 步骤S614 :使用路由直接表结果中的下一跳索引号查下一跳索引表;

[0080] 步骤S616:结束。

[0081] 综上所述,本发明实施例实现了以下有益效果:在TCAM查表等待结果的过程中, 加入了其它表项的并行查找,减少了报文处理的时间,从而提高了报文的转发性能。

[0082] 在另外一个实施例中,还提供了一种软件,该软件用于执行上述实施例及优选实 施方式中描述的技术方案。

[0083] 在另外一个实施例中,还提供了一种存储介质,该存储介质中存储有上述软件,该 存储介质包括但不限于:光盘、软盘、硬盘、可擦写存储器等。

[0084] 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用 的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储 在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示 出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或 步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。 [0085] 以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人 员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、 等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1. 一种基于三态内容寻址存储器TCAM的查表处理方法,其特征在于,包括: 执行用于查询TCAM表项的第一查询过程; 在执行所述第一查询过程中,执行用于查询除所述TCAM表项之外的其它表项的第二 查询过程,其中,所述第一查询过程和所述第二查询过程是独立运行的; 通过所述第一查询过程和所述第二查询过程分别获取第一查询结果和第二查询结果。
2. 根据权利要求1所述的方法,其特征在于,通过所述第一查询过程获取第一查询结 果,包括: 将从TCAM查询到的第一查询结果存储至除查表引擎专用寄存器之外的指定寄存器; 将所述第一查询结果从所述指定寄存器读取至所述查表引擎专用寄存器; 从所述查询引擎专用寄存器中获取所述第一查询结果。
3. 根据权利要求2所述的方法,其特征在于,将所述第一查询结果从所述指定寄存器 读取至所述查表引擎专用寄存器之前,包括: 判断所述第二查询过程是否结束,其中,在判断为结束的情况下,将所述第一查询结果 从所述指定寄存器读取至所述查表引擎专用寄存器。
4. 根据权利要求3所述的方法,其特征在于,判断所述第二查询过程是否结束,包括: 判断所述其它表项中的待查询表项是否已经遍历查询完成。
5. 根据权利要求1所述的方法,其特征在于,通过所述第二查询过程获取所述第二查 询结果,包括: 将通过所述第二查询过程查找到的所述第二查询结果存储至所述查表引擎专用寄存 器; 从所述查询引擎专用寄存器中获取所述第二查询结果。
6. 根据权利要求1至5任一项所述的方法,其特征在于,执行用于查询除所述TCAM表 项之外的其它表项的第二查询过程,包括: 在根据用于查询TCAM表项的查询消息触发执行所述第一查询过程后,执行所述第二 查询过程。
7. -种基于三态内容寻址存储器TCAM的查表处理装置,其特征在于,包括: 第一执行模块,用于执行用于查询TCAM表项的第一查询过程; 第二执行模块,用于在执行所述第一查询过程中,执行用于查询除所述TCAM表项之 外的其它表项的第二查询过程,其中,所述第一查询过程和所述第二查询过程是独立运行 的; 获取模块,用于通过所述第一查询过程和所述第二查询过程分别获取第一查询结果和 第二查询结果。
8. 根据权利要求7所述的装置,其特征在于,所述获取模块包括: 第一存储单元,用于将从TCAM查询到的第一查询结果存储至除查表引擎专用寄存器 之外的指定寄存器; 读取单元,用于将所述第一查询结果从所述指定寄存器读取至所述查表引擎专用寄存 器; 第一获取单元,用于从所述查询引擎专用寄存器中获取所述第一查询结果。
9. 根据权利要求7所述的装置,其特征在于,所述获取模块包括: 第二存储单元,用于将通过所述第二查询过程查找到的所述第二查询结果存储至所述 查表引擎专用寄存器; 第二获取单元,用于从所述查询引擎专用寄存器中获取所述第二查询结果。
10.根据权利要求7至9任一项所述的装置,其特征在于,所述第二执行模块,用于在根 据用于查询TCAM表项的查询消息触发执行所述第一查询过程后,执行所述第二查询过程。
CN 201310244525 2013-06-19 2013-06-19 基于tcam的查表处理方法及装置 CN104239337A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201310244525 CN104239337A (zh) 2013-06-19 2013-06-19 基于tcam的查表处理方法及装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN 201310244525 CN104239337A (zh) 2013-06-19 2013-06-19 基于tcam的查表处理方法及装置
EP20140814274 EP3012747B1 (en) 2013-06-19 2014-04-21 Tcam-based table query processing method and apparatus
PCT/CN2014/075855 WO2014201902A1 (zh) 2013-06-19 2014-04-21 基于tcam的查表处理方法及装置
US14898332 US20160132559A1 (en) 2013-06-19 2014-04-21 Tcam-based table query processing method and apparatus

Publications (1)

Publication Number Publication Date
CN104239337A true true CN104239337A (zh) 2014-12-24

Family

ID=52103915

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201310244525 CN104239337A (zh) 2013-06-19 2013-06-19 基于tcam的查表处理方法及装置

Country Status (4)

Country Link
US (1) US20160132559A1 (zh)
EP (1) EP3012747B1 (zh)
CN (1) CN104239337A (zh)
WO (1) WO2014201902A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080162429A1 (en) * 2006-12-29 2008-07-03 Ram T Reghu Search for an archived query
CN101986271A (zh) * 2010-10-29 2011-03-16 中兴通讯股份有限公司 调度tcam查询和刷新消息的方法和装置
CN102402611A (zh) * 2011-12-12 2012-04-04 盛科网络(苏州)有限公司 一种用tcam实现关键字快速查找并读表的方法
CN103117931A (zh) * 2013-02-21 2013-05-22 烽火通信科技股份有限公司 基于哈希表和tcam表的mac地址硬件学习方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7408932B2 (en) * 2003-10-20 2008-08-05 Intel Corporation Method and apparatus for two-stage packet classification using most specific filter matching and transport level sharing
US7624313B2 (en) * 2005-03-28 2009-11-24 Hewlett-Packard Development Company, L.P. TCAM BIST with redundancy
CN100555988C (zh) * 2006-03-08 2009-10-28 中兴通讯股份有限公司 一种提高三重内容可寻址存储器报文分类查找速度的方法
CN101834802B (zh) * 2010-05-26 2012-08-08 华为技术有限公司 转发数据包的方法及装置
US9406381B2 (en) * 2010-08-01 2016-08-02 Gsi Technology Israel Ltd. TCAM search unit including a distributor TCAM and DRAM and a method for dividing a database of TCAM rules
CN102271087B (zh) * 2011-07-27 2017-09-29 中兴通讯股份有限公司 一种路由查找方法和装置
US8861347B2 (en) * 2011-12-04 2014-10-14 Mellanox Technologies Ltd. Configurable access control lists using TCAM

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080162429A1 (en) * 2006-12-29 2008-07-03 Ram T Reghu Search for an archived query
CN101986271A (zh) * 2010-10-29 2011-03-16 中兴通讯股份有限公司 调度tcam查询和刷新消息的方法和装置
CN102402611A (zh) * 2011-12-12 2012-04-04 盛科网络(苏州)有限公司 一种用tcam实现关键字快速查找并读表的方法
CN103117931A (zh) * 2013-02-21 2013-05-22 烽火通信科技股份有限公司 基于哈希表和tcam表的mac地址硬件学习方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
梁仲斌 等: ""基于TCAM报文分类的范围编码方案"", 《计算机工程》 *

Also Published As

Publication number Publication date Type
WO2014201902A1 (zh) 2014-12-24 application
EP3012747A4 (en) 2016-07-06 application
EP3012747B1 (en) 2017-10-18 grant
EP3012747A1 (en) 2016-04-27 application
US20160132559A1 (en) 2016-05-12 application

Similar Documents

Publication Publication Date Title
US7167471B2 (en) Network processor with single interface supporting tree search engine and CAM
US20040100956A1 (en) Packet search device, packet processing search method used for the same, and program for the same
US20040015494A1 (en) Multi-bit patricia trees
US20130282854A1 (en) Node and method for generating shortened name robust against change in hierarchical name in content-centric network (ccn)
Wang et al. Wire Speed Name Lookup: A GPU-based Approach.
CN101727465A (zh) 分布式列存储数据库索引建立、查询方法及装置与系统
CN102122285A (zh) 一种数据缓存系统和数据查询方法
US20050102685A1 (en) Method and system of generically managing tables for network processors
CN102402394A (zh) 一种基于哈希算法的数据存储方法及装置
US8543528B2 (en) Exploitation of transition rule sharing based on short state tags to improve the storage efficiency
CN1462004A (zh) 用于产生和使用改进的树形位图数据结构的方法和装置
US7469243B2 (en) Method and device for searching fixed length data
CN101018182A (zh) 一种桥接的方法及装置
US20070091899A1 (en) Data structure for storing and accessing multiple independent sets of forwarding information
US20140215144A1 (en) Architecture for tcam sharing
CN103095758A (zh) 一种分布式文件系统及该系统中处理文件数据的方法
US20150113190A1 (en) Processing Concurrency in a Network Device
CN103116634A (zh) 支持高并发缓存任务队列的系统及其异步批量操作方法
CN103703467A (zh) 存储数据的方法和装置
CN101620623A (zh) 内容可寻址存储器表项管理方法和装置
US20140254611A1 (en) System and method for reduced forwarding information storage
US20140229429A1 (en) Database management delete efficiency
US20160105363A1 (en) Memory system for multiple clients
US9306851B1 (en) Apparatus and methods to store data in a network device and perform longest prefix match (LPM) processing
CN1859208A (zh) 一种tcam路由表管理方法和系统

Legal Events

Date Code Title Description
C06 Publication
C10 Entry into substantive examination