Method and system for testing filter rules using caching and a tree structure
    3.
    发明授权
    Method and system for testing filter rules using caching and a tree structure 失效
    使用缓存和树结构测试过滤规则的方法和系统

    公开(公告)号:US06529897B1

    公开(公告)日:2003-03-04

    申请号:US09540500

    申请日:2000-03-31

    IPC分类号: G06F1730

    摘要: A method and system for testing a plurality of filter rules in a computer system is disclosed. The plurality of filter rules are used with a key that is capable of matching at least one of the plurality of filter rules. The at least one filter rule corresponds to at least one action. The computer system has a cache including a plurality of bins and a decision tree. The method and system include searching a plurality of stored keys in the cache for the key. Preferably, this search of the cache for the key includes determining whether a stored key exactly matches the key. A plurality of stored filter rules corresponds to the plurality of stored keys. A plurality of stored actions corresponds to the plurality of stored filter rules. The cache stores each of the plurality of stored keys and at least one stored action in each bin of a portion of the bins. The method and system also include obtaining the at least one action from the cache if the key is found in plurality of stored keys and otherwise obtaining the at least one action using the decision tree. Preferably, searches of the decision tree and cache start simultaneously. The decision tree search is terminated if the key is found in the cache. The cache is written to if the at least one action is obtained using the decision tree, but preferably only if the at least one filter rule has a priority of one.

    摘要翻译: 公开了一种用于测试计算机系统中的多个过滤规则的方法和系统。 多个滤波器规则与能够匹配多个滤波器规则中的至少一个的密钥一起使用。 至少一个过滤规则对应于至少一个动作。 计算机系统具有包括多个箱体和决策树的高速缓存器。 该方法和系统包括在密钥的高速缓存中搜索多个存储的密钥。 优选地,对于密钥的高速缓存的搜索包括确定存储的密钥是​​否与密钥完全匹配。 多个存储的过滤规则对应于多个存储的密钥。 多个存储的动作对应于多个存储的过滤器规则。 高速缓存存储多个存储的密钥中的每一个以及至少一个存储的动作在仓的一部分的每个仓中。 所述方法和系统还包括如果在多个存储的密钥中找到密钥并且否则使用所述决策树获得所述至少一个动作,则从所述高速缓存获得所述至少一个动作。 优选地,决策树和高速缓存的搜索同时开始。 如果在缓存中找到密钥,则决定树搜索将被终止。 如果使用决策树获得至少一个动作,则优先写入高速缓存,但是优选地仅当所述​​至少一个过滤器规则具有优先级为1时。

    Method and system for exploiting likelihood in filter rule enforcement
    5.
    发明授权
    Method and system for exploiting likelihood in filter rule enforcement 失效
    在过滤规则执行中利用可能性的方法和系统

    公开(公告)号:US06947983B2

    公开(公告)日:2005-09-20

    申请号:US09887374

    申请日:2001-06-22

    IPC分类号: H04L29/06 G06F15/173

    摘要: A method and system for determining whether to enforce a plurality of filter rules for a packet including a key in a computer network is disclosed. Each of the plurality of filter rules has a priority. The method and system include accumulating statistics for each of the plurality of filter rules. The statistics indicate a frequency of enforcement for each of the plurality of filter rules. The method and system also include placing the plurality of filter rules in an order for testing against the key. The order is based on the frequency of each filter rule of the portion of the plurality of filter rules. Consequently, more frequently enforced filter rules may be tested first.

    摘要翻译: 公开了一种用于确定是否对包括计算机网络中的密钥的分组执行多个滤波器规则的方法和系统。 多个过滤器规则中的每一个具有优先级。 该方法和系统包括累积多个过滤规则中的每一个的统计信息。 统计数据表示多个过滤规则中的每一个的执行频率。 该方法和系统还包括将多个过滤器规则放置成按照该键进行测试的顺序。 该顺序基于多个滤波器规则的该部分的每个滤波器规则的频率。 因此,可以首先测试更频繁地执行的过滤规则。

    Lookups by collisionless direct tables and CAMs
    6.
    发明授权
    Lookups by collisionless direct tables and CAMs 失效
    通过无碰撞直接表和CAM进行查找

    公开(公告)号:US07116664B2

    公开(公告)日:2006-10-03

    申请号:US10144610

    申请日:2002-05-13

    IPC分类号: G06F12/00 H04L12/56

    摘要: A structure and technique for preventing collisions using a hash table in conjunction with a CAM to identify and prevent collisions of binary keys. A portion of the hash value of a binary key, which does not collide with a portion of the hash value of any other reference binary key, is used as an entry in the hash table. If two or more binary keys have identical values of the portions of the hash values, each of these binary keys are stored in their entirety, in the CAM. The key in the CAM provides a pointer to a data structure where the action associated with that binary key is stored. If the binary key is not found in the CAM, the binary key is hashed, and a specific entry in the hash table is selected using a portion of this hash value.

    摘要翻译: 一种用于使用散列表与CAM结合来防止冲突的结构和技术,以识别和防止二进制键的冲突。 不与任何其他参考二进制密钥的散列值的一部分相冲突的二进制密钥的散列值的一部分被用作散列表中的条目。 如果两个或更多个二进制密钥具有相同的哈希值部分的值,则这些二进制密钥中的每一个都将全部存储在CAM中。 CAM中的关键字提供了指向数据结构的指针,其中存储与该二进制密钥相关联的动作。 如果在CAM中没有找到二进制密钥,则二进制密钥被散列,并且使用该哈希值的一部分来选择散列表中的特定条目。

    Packet classification using modified range labels
    7.
    发明授权
    Packet classification using modified range labels 失效
    数据包分类使用修改的范围标签

    公开(公告)号:US07796513B2

    公开(公告)日:2010-09-14

    申请号:US12187188

    申请日:2008-08-06

    IPC分类号: H04L12/26

    摘要: A method and system for encoding a set of range labels for each parameter field in a packet classification key in such a way as to require preferably only a single entry per rule in a final processing stage of a packet classifier. Multiple rules are sorted accorded to their respective significance. A range, based on a parameter in the packet header, is previously determined. Multiple rules are evaluated according to an overlapping of rules according to different ranges. Upon a determination that two or more rules overlap, each overlapping rule is expanded into multiple unique segments that identify unique range intersections. Each cluster of overlapping ranges is then offset so that at least one bit in a range for the rule remains unchanged. The range segments are then converted from binary to Gray code, which results in the ability to determine a CAM entry to use for each range.

    摘要翻译: 一种方法和系统,用于以分组分类密钥中的每个参数字段的一组范围标签进行编码,以便在分组分类器的最后处理阶段中优选地仅需要每个规则仅一个条目。 根据各自的意义对多个规则进行排序。 预先确定基于分组报头中的参数的范围。 根据不同范围的规则重叠来评估多个规则。 在确定两个或更多个规则重叠时,每个重叠规则被扩展为识别唯一范围交点的多个唯一段。 然后,每个重叠范围的簇被偏移,使得该规则的范围中的至少一个位保持不变。 范围段然后从二进制转换为格雷码,这导致确定每个范围使用的CAM条目的能力。

    Packet classification using modified range labels
    8.
    发明授权
    Packet classification using modified range labels 失效
    数据包分类使用修改的范围标签

    公开(公告)号:US07466687B2

    公开(公告)日:2008-12-16

    申请号:US10425097

    申请日:2003-04-28

    IPC分类号: H04L12/28

    摘要: A method and system for encoding a set of range labels for each parameter field in a packet classification key in such a way as to require preferably only a single entry per rule in a final processing stage of a packet classifier. Multiple rules are sorted accorded to their respective significance. A range, based on a parameter in the packet header, is previously determined. Multiple rules are evaluated according to an overlapping of rules according to different ranges. Upon a determination that two or more rules overlap, each overlapping rule is expanded into multiple unique segments that identify unique range intersections. Each cluster of overlapping ranges is then offset so that at least one bit in a range for the rule remains unchanged. The range segments are then converted from binary to Gray code, which results in the ability to determine a CAM entry to use for each range.

    摘要翻译: 一种方法和系统,用于以分组分类密钥中的每个参数字段的一组范围标签进行编码,以便在分组分类器的最后处理阶段中优选地仅需要每个规则仅一个条目。 根据各自的意义对多个规则进行排序。 预先确定基于分组报头中的参数的范围。 根据不同范围的规则重叠来评估多个规则。 在确定两个或更多个规则重叠时,每个重叠规则被扩展为识别唯一范围交点的多个唯一段。 然后,每个重叠范围的簇被偏移,使得该规则的范围中的至少一个位保持不变。 范围段然后从二进制转换为格雷码,这导致确定每个范围使用的CAM条目的能力。

    Lookups by collisionless direct tables and cams
    9.
    发明授权
    Lookups by collisionless direct tables and cams 有权
    通过无碰撞直接表和凸轮进行查找

    公开(公告)号:US07403527B2

    公开(公告)日:2008-07-22

    申请号:US11867963

    申请日:2007-10-05

    IPC分类号: G06F12/00 H04L12/56

    摘要: A structure and technique for preventing collisions using a hash table in conjunction with a CAM to identify and prevent collision of binary keys. A portion of the hash value of a binary key, which does not collide with a portion of the hash value of any other reference binary key, is used as an entry in the hash table. If two or more binary keys have identical values of the portions of the hash values, each of these binary keys are stored in their entirety, in the CAM. The key in the CAM provides a pointer to a data structure where the action associated with that binary key is stored. If the binary key is not found in the CAM, the binary key is hashed, and a specific entry in the hash table is selected using a portion of this hash value.

    摘要翻译: 一种用于使用散列表与CAM结合来防止冲突的结构和技术,以识别和防止二进制密钥的冲突。 不与任何其他参考二进制密钥的散列值的一部分相冲突的二进制密钥的散列值的一部分被用作散列表中的条目。 如果两个或更多个二进制密钥具有相同的哈希值部分的值,则这些二进制密钥中的每一个都将全部存储在CAM中。 CAM中的关键字提供了指向数据结构的指针,其中存储与该二进制密钥相关联的动作。 如果在CAM中没有找到二进制密钥,则二进制密钥被散列,并且使用该哈希值的一部分来选择散列表中的特定条目。

    Lookups by collisionless direct tables and CAMS
    10.
    发明授权
    Lookups by collisionless direct tables and CAMS 有权
    通过无碰撞直接表和CAMS查找

    公开(公告)号:US07349397B2

    公开(公告)日:2008-03-25

    申请号:US11462071

    申请日:2006-08-03

    IPC分类号: G06F12/00 H04L12/56

    摘要: A structure and technique for preventing collisions using a hash table in conjunction with a CAM to identify and prevent collisions of binary keys. A portion of the hash value of a binary key, which does not collide with a portion of the hash value of any other reference binary key, is used as an entry in the hash table. If two or more binary keys have identical values of the portions of the hash values, each of these binary keys are stored in their entirety, in the CAM. The key in the CAM provides a pointer to a data structure where the action associated with that binary key is stored. If the binary key is not found in the CAM, the binary key is hashed, and a specific entry in the hash table is selected using a portion of this hash value.

    摘要翻译: 一种用于使用散列表与CAM结合来防止冲突的结构和技术,以识别和防止二进制键的冲突。 不与任何其他参考二进制密钥的散列值的一部分相冲突的二进制密钥的散列值的一部分被用作散列表中的条目。 如果两个或更多个二进制密钥具有相同的哈希值部分的值,则这些二进制密钥中的每一个都将全部存储在CAM中。 CAM中的关键字提供了指向数据结构的指针,其中存储与该二进制密钥相关联的动作。 如果在CAM中没有找到二进制密钥,则二进制密钥被散列,并且使用该哈希值的一部分来选择散列表中的特定条目。