• 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
    • / 14
    • 下载费用:30 金币  

    重庆时时彩毒胆: 用于TCAM共享的架构.pdf

    关 键 词:
    用于 TCAM 共享 架构
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    摘要
    申请专利号:

    CN201410102290.0

    申请日:

    2014.01.30

    公开号:

    CN103970829A

    公开日:

    2014.08.06

    当前法律状态:

    授权

    有效性:

    有权

    法律详情: 授权|||实质审查的生效IPC(主分类):G06F 17/30申请日:20140130|||公开
    IPC分类号: G06F17/30 主分类号: G06F17/30
    申请人: 马维尔以色列(M.I.S.L.)有限公司
    发明人: L·瓦伦西; A·沃尔格木斯; G·利维
    地址: 以色列约克尼穆
    优先权: 2013.01.30 US 61/758,497
    专利代理机构: 北京市金杜律师事务所 11256 代理人: 酆迅
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201410102290.0

    授权公告号:

    ||||||

    法律状态公告日:

    2018.09.14|||2016.03.02|||2014.08.06

    法律状态类型:

    授权|||实质审查的生效|||公开

    摘要

    本发明的各实施方式总体上涉及一种用于TCAM共享的架构。具体地,本发明的各方面提供了一种分组处理系统。所述分组处理系统包括多个处理单元、三态内容可寻址存储器(TCAM)引擎和接口。所述多个处理单元被配置为处理从计算机网络接收的分组,并执行关于所接收的分组的动作。该动作响应于规则表中的查找被确定以确定要应用到所接收的分组的规则。所述TCAM引擎具有定义TCAM存储器空间的相应子集的多个TCAM组来存储规则。所述接口被配置为可选择地将TCAM组与处理单元相关联。所述关联可被配置为向处理单元的分组分配TCAM存储器空间的子集,来由处理单元共享TCAM存储器空间。

    权利要求书

    权利要求书
    1.  一种分组处理系统,包括:
    多个处理单元,被配置为处理从计算机网络接收的分组数据,并对所接收的分组执行动作,所述动作响应于规则表中的查找被确定以确定要应用到所接收的分组的规则;
    三态内容可寻址存储器(TCAM)引擎,其具有定义TCAM存储器空间的相应子集的多个TCAM组以存储所述规则;以及
    接口,被配置为可选择地将所述TCAM组与所述处理单元关联,所述关联可被配置为向所述处理单元的群组分配所述TCAM存储器空间的子集以由所述处理单元共享所述TCAM存储器空间。

    2.  根据权利要求1所述的分组处理系统,进一步包括:
    控制器,被配置为接收所述处理单元的存储器空间需求的指示,并基于所述指示向所述处理单元的所述群组分配所述TCAM存储器的子集。

    3.  根据权利要求1所述的分组处理系统,其中,所述接口被配置为将两个或更多个处理单元关联到处理群组,并向所述处理群组分配TCAM组的相同子集,以在通常适用于所述两个或更多个处理单元的规则中执行查找。

    4.  根据权利要求3所述的分组处理系统,其中,所述接口被配置为将另一处理单元关联到另一处理群组,并且当另一个处理单元应用来自所述两个或更多个处理单元的不同规则时,向另一个处理群组分配TCAM组的另一子集。

    5.  根据权利要求1所述的分组处理系统,其中,基于搜索关键字大小要求,将两个或更多个TCAM组的词条耦合以形成TCAM组群组,并且所述TCAM组群组被配置为当搜索关键字匹配所耦合的词条时,输出所耦合的词条的索引。

    6.  根据权利要求5所述的分组处理系统,其中,所述接口被配置为基于所述处理群组所需的许多规则词条,将一个或多个TCAM组群组与处理单元的处理群组关联。

    7.  根据权利要求6所述的分组处理系统,其中,所述接口被配置为当所述TCAM组群组与单个结果关联时,基于所述TCAM组群组的优先权顺序而 选择来自所述TCAM组群组中的一个TCAM组群组的输出。

    8.  根据权利要求6所述的分组处理系统,其中,所述接口被配置为当所述TCAM组群组与不同的结果关联时,输出所述TCAM组群组的相应输出。

    9.  根据权利要求2所述的分组处理系统,其中,所述控制器被配置为控制所述可配置接口以将所述TCAM组与应用中的活动处理单元关联。

    10.  根据权利要求2所述的分组处理系统,其中,所述控制器被配置为接收指示所述存储器空间需求的所述处理单元的活动信息,并根据所述活动信息控制所述接口以向所述处理单元的群组分配所述存储器空间的子集。

    11.  一种用于在具有多个处理单元的分组处理系统中的分组处理的方法,包括:
    由处理单元解析接收的分组以生成搜索关键字;
    通过接口向三态内容可寻址存储器(TCAM)引擎提供所述搜索关键字,其中,所述TCAM引擎包括定义TCAM存储器空间的相应子集的多个TCAM组以存储规则,并且所述接口可选择地将所述TCAM组与所述处理单元关联,所述关联可被配置为向所述处理单元的群组分配所述TCAM存储器空间的子集以由所述处理单元共享所述TCAM存储器空间;以及
    基于来自所述TCAM引擎的搜索结果,对所接收的分组执行动作。

    12.  根据权利要求11所述的方法,进一步包括:
    接收所述处理单元的存储器空间需求的指示;以及
    基于所述指示向所述处理单元的群组分配所述TCAM存储器的子集。

    13.  根据权利要求11所述的方法,其中,所述接口将所述处理单元以及一个或多个其他处理单元关联到处理群组,并向所述处理群组分配TCAM组的相同子集以在通常适用于所述处理单元以及所述一个或多个其他处理单元的规则中执行查找。

    14.  根据权利要求11所述的方法,其中,所述接口将单个处理单元关联到处理群组,并且当所述处理单元应用来自其他处理单元的不同规则时,向所述处理群组分配TCAM组的子集。

    15.  根据权利要求11所述的方法,进一步包括:
    响应于所述搜索关键字,在TCAM组群组中搜索耦合的词条,其中,所述TCAM组群组用耦合的两个或更多个TCAM组的词条形成;以及
    输出匹配所述搜索关键字的耦合的词条的索引。

    16.  根据权利要求15所述的方法,进一步包括:
    搜索与所述处理单元关联的两个或更多个TCAM组群组。

    17.  根据权利要求16所述的方法,进一步包括:
    当所述TCAM组群组与单个结果关联时,基于所述TCAM组群组的优先权顺序选择来自所述TCAM组群组中的一个TCAM组群组的输出。

    18.  根据权利要求16所述的方法,进一步包括:
    当所述TCAM组群组与不同的结果关联时,输出所述TCAM组群组的相应输出。

    19.  根据权利要求12所述的方法,进一步包括:
    将所述TCAM组与应用中的活动处理单元关联。

    20.  根据权利要求12所述的方法,进一步包括:
    接收指示所述存储器空间需求的所述处理单元的活动信息;以及
    根据所述活动信息向所述处理单元的群组分配所述存储器空间的子集。

    说明书

    说明书用于TCAM共享的架构
    通过引用并入
    本公开要求2013年1月30日提交的美国临时申请No.61/758,497的“Architecture for TCAM Sharing”的权益,通过引用将其全文并入本文。
    背景技术
    在此处提供对背景技术的描述是用于从整体上给出本公开上下文的目的。就在此背景技术部分中描述的工作而言的、本发明发明人的工作,以及在递交时不以其他方式作为现有技术的描述的方面,并不显式或隐式承认其是本公开的现有技术。
    通常,内容可寻址存储器(CAM)用于各种应用中,以提供相对快速的精确匹配搜索能力。在一个例子中,网络设备(如网络交换机、路由器等)包括三态CAM(TCAM)来为各种功能存储用于多个交换规则的标准,例如分组解析、服务分配的质量、安全性、转发、过滤等。在一个例子中,标准包括需求,例如范围需求、精确匹配需求等等,这占用一个或多个TCAM词条,而TCAM词条的地址指向与标准相关联的操作码。当网络设备接收分组时,提取分组的属性以形成搜索关键字。搜索关键字与多个TCAM词条进行比较,通常来说,搜索关键字与多个TCAM词条的比较在单个时钟周期中并行地执行,以在单个搜索操作中从TCAM词条中找到匹配词条。匹配词条的地址指向操作码。根据该操作码,网络设备在分组上采取指定的操作。
    发明内容
    本公开的方面提供了一个分组处理系统。所述分组处理系统包括多个处理单元、三态内容可寻址存储器(TCAM)引擎和接口。所述多个处理单元被配置为处理从计算机网络接收的分组,并执行关于所接收的分组的动作。该动作响应于规则表中的查找被确定以确定要应用到所接收的分组的规则。所述TCAM引擎具有定义TCAM存储器空间的相应子集的多个TCAM组(bank)来存储规则。所述接口被配置为可选择地将TCAM组与处理单元相关联。所述关联可被配置为给处理单元的群组分配TCAM存储器空间的子集, 来由处理单元共享TCAM存储器空间。
    在一个实施例中,网络设备包括控制器,所述控制器被配置为接收处理单元的存储器空间需求的指示,并配置所述接口以基于所述指示为处理单元的群组分配TCAM存储器的子集。在一个示例中,所述控制器被配置为控制所述可配置接口,将TCAM组与应用中的活动处理单元相关联。例如,所述控制器被配置为接收指示存储器空间需求的处理单元的活动信息,并根据该活动信息控制所述接口以向处理单元的群组分配存储器空间的子集。
    在一个示例中,所述接口被配置为将两个或更多个处理单元关联到处理群组中,并为该处理群组分配TCAM组的一个相同子集,以在通常适用于两个或更多个处理单元的规则中执行查找。此外,在一个示例中,所述接口被配置为将另一处理单元关联到另一处理群组中,并且当另一个处理单元应用来自两个或更多个处理单元的不同规则时,为另一个处理群组分配TCAM组的另一子集。
    根据本公开的一个方面,基于搜索关键字大小要求,两个或更多个TCAM组的词条耦合以形成TCAM组群组,该TCAM组群组被配置为当搜索关键字匹配耦合的词条时输出耦合的词条的索引。此外,所述接口被配置为基于处理群组的许多规则词条需求,将一个或多个TCAM组群组与处理单元的处理群组相关联。在一个示例中,所述接口被配置为当TCAM组群组关联到单个结果时,基于TCAM组群组的优先权顺序而选择来自TCAM组群组中的一个TCAM组的输出。在另一个示例中,所述接口被配置为当TCAM组群组关联到不同的结果时输出TCAM组群组的相应输出。
    本公开的方面提供了一种用于在具有多个处理单元的分组处理系统中分组处理的方法。该方法包括:由处理单元解析接收的分组以生成搜索关键字,以及通过接口向三态内容可寻址存储器(TCAM)引擎提供搜索关键字。所述TCAM引擎包括多个定义TCAM存储器空间各自的子集的TCAM组来存储规则,所述接口可选择地将TCAM组与处理单元相关联。所述关联可被配置为给处理单元的群组分配TCAM存储器空间的子集来由处理单元共享TCAM存储器空间。此外,该方法包括基于来自TCAM引擎的搜索结果执行关于所接收的分组的动作。
    附图简要说明
    将参照以下附图详细说明作为示例提出的本公开的各种实施例,其中相同的标号引用相同的元件,并且其中:
    图1示出了根据本公开的一个实施例,具有用于三态内容可寻址存储器(TCAM)共享的架构的电子设备示例100的框图;
    图2示出了根据本公开的一个实施例,具有TCAM共享配置的电子设备示例200的框图;
    图3示出了根据本公开的一个实施例,具有TCAM共享配置的电子设备示例300的框图;以及
    图4示出了根据本公开的一个实施例,概述过程示例400的流程图。
    具体实施方式
    根据本公开的一个实施例,图1示出了具有用于三态内容可寻址存储器(TCAM)共享的架构的电子设备示例100的框图。电子设备100包括TCAM引擎140,该TCAM引擎140具有多个TCAM组160、多个搜索客户端110和可配置接口120。接口120可配置地关联TCAM组160(例如TCAM组群组150等)到搜索客户端110,以使得基于搜索客户端110的搜索服务需求,通过搜索客户端110灵活地共享TCAM引擎140。如图1所示,在一个实施例中,这些元件被合适地耦合在一起。
    电子设备100可以是使用TCAM来匹配搜索关键字以存储数据模式的任何合适的设备。在图1的示例中,电子设备100是网络设备100,例如网络交换机、路由器等。在一个实施例中,网络设备100包括一个或多个被配置为处理分组的分组处理器(内核),例如分组处理器111-114??梢允褂萌魏魏鲜实募芄估捶直鹗迪址肿榇砥?,如专用集成电路(ASIC)流水线处理引擎架构、可编程处理引擎架构、运行到完成处理器的多重架构等。例如,网络设备100通过词条端口接收网络中传送的分组(未示出),分组处理器111-114中的一个处理该分组,并确定关于该分组的操作,例如将该分组转发给一个或多个出口端口以输出该分组、丢弃该分组等。在另一示例中,网络设备100接收两个或更多个分组,两个或更多个分组处理器111-114分别在同一时间处理所述分组,并确定关于所述分组的相应动作。
    根据本公开的一个方面,基于规则确定关于分组的操作。在一个实施例中,规则包括标准和与标准相关联的操作码。标准为属性指定数据模式。例 如,转换规则可以用通俗易懂的英语表述为“允许转发源地址172.15.5.0/24,TCP端口号为1至14之间的分组”。在前面的示例中,转换规则包括源地址标准、协议(TCP)标准、TCP端口号标准、以及与标准相关联的操作码“允许转发”。当所接收的分组满足条件时,可以根据操作码采取关于所接收的分组的操作。
    在图1的示例中,每个分组处理器包括多个处理单元,例如用于分组处理器111-114中每一个的S0-S4等,这需要来自TCAM引擎140的搜索服务。分组处理器111-114中的处理单元S0-S4被称为TCAM引擎140的搜索客户端。
    在一个示例中,分组包括128字节的报头。分组处理单元S0-S4分别解析报头的一部分以形成搜索关键字。向TCAM引擎140提供该搜索关键字。然后,TCAM引擎140分别查找搜索关键字,以确定具有由搜索关键字满足的标准的规则。然后,搜索结果指示用于将应用到该分组的操作的操作码。
    根据本公开的一个方面,标准存储在TCAM引擎140中,分别从该标准存储操作码。在一个实施例中,标准存储在TCAM引擎140中作为被索引的词条,而操作码存储在存储器(未示出,例如静态随机存取存储器(SRAM)等)中由所述词条的索引指向的地址处。在一个示例中,词条的索引指向存储该标准相关联的操作码的存储器中的地址。
    搜索客户端110具有相同或不同的搜索服务需求。在一个示例中,用于搜索客户端S0的规则词条的数量相对大,例如大于512个词条,搜索客户端S1的规则词条的数量相对小,例如小于256个词条。在另一示例中,在分组处理器111-114中,用于分组处理器111-114中搜索客户端S0的规则相同。在另一示例中,在特定应用中,分组处理器113被禁用,因此,分组处理器113中的搜索客户端S0-S4不需要任何搜索服务。
    根据本公开的一个方面,每个TCAM组160被配置为能够执行搜索操作。多个TCAM组160形成TCAM组群组150。接口120被配置为使能TCAM组群组150以便可单独地分配给搜索客户端。
    具体地,在一个示例中,每个TCAM组160包括TCAM单元阵列来存储数据模式和辅助电路(例如输入电路)以接收搜索关键字,所述搜索关键字用于与存储在TCAM组等中的数据模式比较。因此,每个TCAM组160 是独立地可操作的。在一个示例中,每个TCAM组160包括一个256*84的矩阵,该矩阵有256行和84列的TCAM单元。每一行是一个TCAM词条。在一个示例中,在每一行中,80位用于数据模式,4位用于定义搜索关键字的大小。因此,每个TCAM组160适合于多达10字节的搜索关键字的大小和多达256个规则词条。
    根据本公开的一个方面,一行中的TCAM组形成一个层。在同一个层上的多个TCAM组可以耦合在一起,形成TCAM组群组150,以支持大范围的关键字大小。在图1的示例中,每个TCAM组群组150包括六个TCAM组,并支持80位至480位的所有关键字大小。注意,TCAM引擎140可以被实现为具有每个TCAM组群组150中任何合适数量的TCAM组。在另一示例中,每个TCAM组群组150包括八个TCAM组,并支持80位至640位的所有关键字大小。TCAM组群组150可以关联到需要在所支持的范围内的关键字大小的搜索服务。此外,在不同的层上的多个TCAM组群组150可以关联到需要用于搜索服务的相对大量的规则词条的同一个搜索服务。
    具体而言,在图1的示例中,在同一个层上的六个相邻的TCAM组耦合在一起,形成TCAM组群组150,TCAM组群组150中的TCAM组与同一个搜索服务相关联。例如,六个TCAM组的同一词条行中的对应词条被适当地耦合以形成耦合的词条。注意,每个耦合的词条支持规则标准组合的许多组合,例如,在图1的示例中,每个占用80位的多达六个短标准的第一组合,每个占用160位的多达三个标准的第二组合,具有480位的标准的第三组合,每个占用80位的四个标准与160位的另一标准的第四组合等。此外,在一个示例中,优先权译码器被适当地耦合TCAM组群组,用以在匹配搜索关键字的耦合的词条之间输出具有最高优先权的耦合的词条的索引。因此,例如,用于TCAM组群组的搜索关键字大小多达60字节。注意,TCAM引擎140可以被适当地修改,以在每层上具有其他合适数量的TCAM组,并且TCAM引擎140可以被适当地修改,以具有其他合适数量的一起耦合在每个TCAM组群组中的TCAM组。
    在另一个实施例中,当不同层的两个TCAM组群组150与同一个搜索服务相关联以产生结果时,两个TCAM组群组的优先权译码器以优先权顺序耦合在一起。在一个示例中,较低层上的TCAM组群组150具有较高的优先权 顺序。在另一个示例中,较高层上的TCAM组群组150具有较高的优先权顺序。在一个实施例中,在搜索操作期间,两个TCAM组群组150分别响应于同一搜索关键字而执行搜索,两个TCAM组群组150的优先权译码器分别输出TCAM组群组150中匹配词条的索引,具有较高优先权顺序的索引被输出为这两个TCAM组群组150的聚集结果。因此,例如,用于两个TCAM组群组150的规则词条的数量多达512。
    根据本公开的一个方面,接口120被配置为将TCAM组群组150与搜索客户端110相关联。在图1的示例中,接口512包括用于集合客户端的第一配置121和用于将组群组关联到客户端群组的第二配置123。
    在一个实施例中,根据各自的搜索服务需求的规则共性,通过第一配置121对搜索客户端110分组。相同客户端群组中的搜索客户端110应用相同的规则,并共享TCAM组群组150的同一子集。注意,在一个示例中,每个搜索客户端仅与一个客户端群组相关联。
    此外,在一个实施例中,通过第二配置123,TCAM组群组150与客户端群组相关联。在一个示例中,每个TCAM组群组150只与一个客户端群组相关联,而多个TCAM组群组150可与同一客户端群组相关联。
    根据本公开的一个方面,接口120是软件可配置的。在一个示例中,第一配置121被存储作为第一表,该第一表将客户端关联到客户端群组中,而第二配置123被存储为第二表,该第二表将TCAM组群组关联到客户端群组。根据第一表和第二表配置接口120。第一表和第二表可由配置控制器修改(未示出)。在一个示例中,网络设备100包括中央处理单元(CPU)(未示出),CPU执行软件指令来执行所述配置控制器的功能。在另一个示例中,外部控制器耦合至网络设备100以配置接口120。
    根据本公开的一个方面,基于搜索客户端110的搜索需求,由多个搜索客户端110灵活地共享TCAM引擎140。
    在一个示例中,相同的全局规则用于分组处理器111-114的处理单元S0中。接口120通过第一配置121将同一客户端群组中分组处理器111-114的处理单元S0相关联,并通过第二配置123将一个或多个TCAM组群组与客户端群组相关联。所述一个或多个TCAM组群组用于存储全局规则。因此,对于单独的处理器,不可复制地存储全局规则,而TCAM存储器空间被节省。
    在另一个示例中,处理单元(例如分组处理器112的处理单元S1)应用来自其他处理单元的不同规则。接口120通过第一配置121关联客户端群组中分组处理器112的处理单元S1,并通过第二配置123将一个或多个TCAM组群组与客户端群组相关联。所述一个或多个TCAM组群组用于存储仅用于分组处理器112的处理单元S1的规则。
    在另一示例中,对于特定的应用,当处理单元(例如分组处理器114中的处理级S4)未使用时,接口120被配置为不向处理单元分配任何TCAM组群组,而TCAM空间被节省。
    在一个实施例中,基于网络设备100的应用,确定处理单元的使用信息和处理单元的服务需求信息,然后在网络设备100进入正常操作模式之前,基于配置模式中的使用信息和服务需求信息配置该接口120。
    在另一个实施例中,在网络设备100的正常操作期间,检测处理单元的使用信息和服务需求信息,然后基于程序运行期间(on the fly)的使用信息和服务需求信息配置或重新配置该接口120。
    根据本公开的另一个方面,接口120包括用于TCAM组群组的第三配置125以引起关联。在一个实施例中,所述第三配置125可用于多字段搜索中以扩大TCAM容量。在一个示例中,基于第一字段和第二字段中的值的排列,搜索服务包括执行不同的操作的规则。在一个实施例中,第一字段和第二字段中的每个字段具有三个值,并且总共九个不同的操作分别与第一字段和第二字段的九个值的排列相关联。在一个实施例中,为搜索服务分配两个TCAM组群组。第一TCAM组群组存储用于第一字段的规则词条,并通过第三配置125关联第一结果,而第二TCAM组群组存储用于第二字段的规则词条,并通过第三配置125关联第二结果。因此,在TCAM引擎140中使用了总计六个词条,而不是全部九个排列所需要的九个词条。此外,例如,在低成本的存储器(未示出,例如SRAM)中,九个操作码分别与第一结果和第二结果的排列相关联。因此,可以节省比低成本的存储器更昂贵的TCAM存储器空间。
    在另一个实施例中,第三配置125用来支持每个查找阶段(例如,在查找期间)的多个并行查找。在一个示例中,为搜索服务分配四个TCAM组群组。四个TCAM组群组分别存储用于搜索服务的不同规则词条,并且四个 TCAM组群组分别关联四个结果。在每个TCAM组群组中,例如通过存储每个都匹配“1”和“0”的屏蔽位,屏蔽所有词条的一部分。四个TCAM组群组有不同的屏蔽部分。因此,在查找期间,当向TCAM引擎140提供搜索关键字时,四个TCAM组群组分别基于该检索关键字的不同部分(例如,对应于所述TCAM组群组的未屏蔽部分)执行查找,并生成四个结果。因此,并行执行四个查找。
    根据本公开的一个实施例,图2示出了具有TCAM共享配置的电子设备200的框图。电子设备200的组件与电子设备100中使用的那些组件是相同的或等同的;上面已经提供了这些组件的描述,为清楚起见,这里将省略。
    具体而言,在图2的示例中,接口220被配置为形成多个客户端群组,例如第一客户端群组GROUP0、第二客户端群组GROUP1、第三客户端群组GROUP4等。在一个示例中,在分组处理器211-214的处理单元S0中使用第一组全局规则,例如可以用通俗易懂的英语表述为“避免具有目标地址字段中的特定值的分组”的过滤规则等。分组处理器211-214的所有的处理单元S0执行接收的分组的目的地址的查找。接口220被配置为将分组处理器211-214的处理单元S0分组到第一客户端群组GROUP0中。在图2的示例中,例如,第二组全局规则用于分组处理器211-214的处理单元S1中,接口220被配置为将分组处理器211-214的处理单元S1分组到第二客户端群组GROUP1中;而第三组全局规则用于分组处理器211-214的处理单元S4中,接口220被配置为将分组处理器211-214的处理单元S4分组到第三客户端群组GROUP4中。注意,接口220可以包括未示出的其他客户端群组。
    此外,接口220被配置为分配TCAM组群组到客户端群组。在图2的示例中,接口220被配置为分配TCAM组群组251、252和256到第一客户端群组GROUP0,分配TCAM组群组255到第二客户端群组GROUP1,并分配TCAM组群组253和254到第三客户端群组GROUP4。未示出用于其他客户端群组的TCAM存储器空间分配。
    根据本公开的一个实施例,图3示出了具有TCAM共享配置的电子设备300的框图。电子设备300包括与电子设备100中使用的那些组件相同或等同的组件;上面已经提供了这些组件的描述,为清楚起见,这里将省略。
    在图3的示例中,TCAM组群组351、352、354和356被分配给同一客 户端群组GROUP3但不分配给不同的结果,而TCAM组群组353和355被分配给客户端群组GROUP1和相同的结果。在一个实施例中,不聚集输出分别来自TCAM组群组351、352、354和356的搜索结果。此外,聚集来自TCAM组群组353和355的搜索结果。例如,具有较高优先权顺序的搜索结果被输出为聚集的搜索结果。
    根据本公开的一个实施例,图4示出了概述过程示例400的流程图。在一个示例中,过程400由电子设备100执行。该过程开始于S401,并进入S410。
    在S410,电子设备(例如电子设备100)进入配置模式。在图1的示例中,在配置模式下,接口120被配置为分配TCAM组160到搜索客户端110。在一个示例中,CPU(例如,电子设备100的内部CPU或电子设备100的外部CPU)执行软件指令来构造用于配置该接口120的表,例如,将搜索客户端分组到客户端群组中的第一表,将TCAM组群组关联到客户端群组的第二表,将TCAM组群组关联到结果的第三表等。然后,根据所述表配置该接口120。
    在S420,基于搜索服务需求将搜索客户端关联到客户端群组中。在一个示例中,通过第一配置121将使用相同的全局规则的搜索客户端关联到同一个客户端群组中。在另一个示例中,将使用来自其他搜索客户端的不同规则的搜索客户端关联到与其他搜索客户端相分离的客户端群组中。在另一个示例中,无效的搜索客户端不关联到任何客户端群组中。
    在S430,TCAM组群组关联到客户端群组和结果。在一个示例中,通过第二配置123将TCAM组群组关联到客户端群组。在一个示例中,TCAM组群组仅关联到一个客户端群组。此外,在一个示例中,通过第三配置125将TCAM组群组关联到同一结果或不同结果。
    在S440,电子设备退出配置模式,然后过程进入S499并终止。
    注意,该电子设备具有其它合适的模式。在一个示例中,在接口配置之后,网络设备100进入规则输入模式,用于不同客户端群组的各自规则分别存储在为客户端群组所分配的TCAM组群组中。然后,网络设备100进入正常操作模式。在一个示例中,在正常操作模式中,网络设备100接收分组,分组处理器111-114中的处理单元解析所述分组并生成搜索关键字,而共享TCAM引擎140根据接口120的配置执行搜索。具体地,在一个示例中,根 据客户端群组的第一配置121向TCAM引擎140提供搜索关键字。该TCAM引擎140执行客户端群组的查找,并根据第二配置123产生结果(组群组到客户端群组的关联)和第三配置125(组群组到结果的关联)。所述结果指示要应用到接收的分组的适当的操作。
    虽然本公开的方面已经结合作为示例、替代、修改而提出的其特定的实施例进行了描述,并且可以对示例作出改变。因此,如本文所阐述的实施例意图是说明性的,而非限制性的。存在可能作出的改变而不脱离以下所阐述的权利要求的范围。

    关于本文
    本文标题:用于TCAM共享的架构.pdf
    链接地址://www.4mum.com.cn/p-6143815.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    [email protected] 2017-2018 www.4mum.com.cn网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 四川郎酒股份有限公司获第十二届人民企业社会责任奖年度环保奖 2019-05-13
  • 银保监会新规剑指大企业多头融资和过度融资 2019-05-12
  • 韩国再提4国联合申办世界杯 中国网友无视:我们自己来 2019-05-11
  • 中国人为什么一定要买房? 2019-05-11
  • 十九大精神进校园:风正扬帆当有为 勇做时代弄潮儿 2019-05-10
  • 粽叶飘香幸福邻里——廊坊市举办“我们的节日·端午”主题活动 2019-05-09
  • 太原设禁鸣路段 设备在测试中 2019-05-09
  • 拜耳医药保健有限公司获第十二届人民企业社会责任奖年度企业奖 2019-05-08
  • “港独”没出路!“梁天琦们”该醒醒了 2019-05-07
  • 陈卫平:中国文化内涵包含三方面 文化复兴表现在其中 2019-05-06
  • 人民日报客户端辟谣:“合成军装照”产品请放心使用 2019-05-05
  • 【十九大·理论新视野】为什么要“建设现代化经济体系”?   2019-05-04
  • 聚焦2017年乌鲁木齐市老城区改造提升工程 2019-05-04
  • 【专家谈】上合组织——构建区域命运共同体的有力实践者 2019-05-03
  • 【华商侃车NO.192】 亲!楼市火爆,别忘了买车位啊! 2019-05-03
  • 快乐时时开奖号码查询 极速赛车六码怎么买 彩运8骗局 时时缩水工具 一个不输本金的教程 pk10免费计划app苹果版 北京比赛pk10直播开奖 北京pk赛车稳赚技巧7码 时时彩定位胆稳赚公式 北京小赛车怎么玩 时时彩稳赚倍投方案 绝杀六码走 澳门投注网 500彩一分快三计划软件 北京汽车pk10在哪里玩 彩仙阁下载