Efficient management of queueing resources for diffserv-aware switches
    1.
    发明申请
    Efficient management of queueing resources for diffserv-aware switches 有权
    有效管理支持diffserv的交换机的排队资源

    公开(公告)号:US20070253411A1

    公开(公告)日:2007-11-01

    申请号:US11412265

    申请日:2006-04-26

    IPC分类号: H04L12/56

    摘要: Resources allocated to a group of ports include a plurality of storage regions. Each storage region includes a committed area and a shared area. A destination storage region is identified for a packet. A packet queuing engine stores the packet in the committed area of the determined destination storage region if it has a first drop precedence value, and if available storage space in the committed area exceeds a first threshold. The packet queuing engine stores the packet in the shared area of the determined destination storage region if the packet is not stored in the committed area, and if available storage space exceeds a second threshold defined by the packet's drop precedence value. If the packet is not stored either in the committed or shared area, it may be dropped.

    摘要翻译: 分配给一组端口的资源包括多个存储区域。 每个存储区域包括承诺区域和共享区域。 为分组识别目的地存储区域。 如果分组排队引擎具有第一丢弃优先级值,则分组排队引擎将所述分组存储在所确定的目的地存储区域的提交区域中,并且如果所述提交区域中的可用存储空间超过第一阈值。 如果分组未存储在提交区域中,并且如果可用存储空间超过由分组的丢弃优先级值定义的第二阈值,则分组排队引擎将分组存储在所确定的目的地存储区域的共享区域中。 如果数据包未存储在承诺或共享区域中,则可能会丢弃该数据包。

    Efficient management of queueing resources for switches
    2.
    发明授权
    Efficient management of queueing resources for switches 有权
    交换机排队资源的有效管理

    公开(公告)号:US07948976B2

    公开(公告)日:2011-05-24

    申请号:US11412265

    申请日:2006-04-26

    IPC分类号: H04L12/56 G06F5/12

    摘要: Resources allocated to a group of ports include a plurality of storage regions. Each storage region includes a committed area and a shared area. A destination storage region is identified for a packet. A packet queuing engine stores the packet in the committed area of the determined destination storage region if it has a first drop precedence value, and if available storage space in the committed area exceeds a first threshold. The packet queuing engine stores the packet in the shared area of the determined destination storage region if the packet is not stored in the committed area, and if available storage space exceeds a second threshold defined by the packet's drop precedence value. If the packet is not stored either in the committed or shared area, it may be dropped.

    摘要翻译: 分配给一组端口的资源包括多个存储区域。 每个存储区域包括承诺区域和共享区域。 为分组识别目的地存储区域。 如果分组排队引擎具有第一丢弃优先级值,则分组排队引擎将所述分组存储在所确定的目的地存储区域的提交区域中,并且如果所述提交区域中的可用存储空间超过第一阈值。 如果分组未存储在提交区域中,并且如果可用存储空间超过由分组的丢弃优先级值定义的第二阈值,则分组排队引擎将分组存储在所确定的目的地存储区域的共享区域中。 如果数据包未存储在承诺或共享区域中,则可能会丢弃该数据包。

    Apparatus for determining locations of fields in a data unit
    3.
    发明授权
    Apparatus for determining locations of fields in a data unit 有权
    用于确定数据单元中场的位置的装置

    公开(公告)号:US07978700B2

    公开(公告)日:2011-07-12

    申请号:US12047063

    申请日:2008-03-12

    IPC分类号: H04L12/28

    CPC分类号: H04L69/22

    摘要: A header analyzer unit generates attribute information regarding headers of a data unit. The header analyzer unit includes a programmable memory unit having a content addressable memory (CAM) with an input to receive a first portion of the data unit and a second portion of the data unit. The programmable memory unit also includes a memory separate from the CAM and coupled to an output of the CAM. The CAM stores indications of locations within the memory separate from the CAM, and the memory separate from the CAM programmably stores header attribute information regarding a plurality of different types of headers for data units having different formats.

    摘要翻译: 标题分析器单元生成关于数据单元的头部的属性信息。 标题分析器单元包括具有内容可寻址存储器(CAM)的可编程存储器单元,其具有用于接收数据单元的第一部分的输入和数据单元的第二部分。 可编程存储器单元还包括与CAM分离并耦合到CAM的输出的存储器。 CAM存储与CAM分离的存储器中的位置的指示,并且与CAM分离的存储器可编程地存储关于具有不同格式的数据单元的多个不同类型的头的头部属性信息。

    Method and apparatus for determining locations of fields in a data unit
    4.
    发明授权
    Method and apparatus for determining locations of fields in a data unit 有权
    用于确定数据单元中场的位置的方法和装置

    公开(公告)号:US08571035B2

    公开(公告)日:2013-10-29

    申请号:US13180254

    申请日:2011-07-11

    IPC分类号: H04L12/28

    CPC分类号: H04L69/22

    摘要: A packet processor for processing a data unit received from a network includes a header analyzer unit configured to obtain indications of locations in a header of the data unit of one or more fields to be parsed from the data unit to perform a packet processing operation on the data unit. The header analyzer unit comprises a ternary content addressable memory (TCAM), and a memory separate from the TCAM and coupled to an output of the TCAM, wherein a content of the TCAM and a content of the memory are programmable. The header analyzer unit is configured to obtain, responsive to a lookup of at least one portion of the data unit in the TCAM, indications of locations in a header of the data unit of one or more fields to be parsed from the data unit to perform a packet processing operation on the data unit. The packet processor further comprises a parser configured to parse the header using the indications of locations of one or more fields in the header to obtain data from the one or more fields.

    摘要翻译: 用于处理从网络接收的数据单元的分组处理器包括:报头分析器单元,被配置为从数据单元获取要解析的一个或多个字段的数据单元的报头中的位置的指示,以对从该数据单元执行分组处理操作 数据单元。 标题分析器单元包括三元内容可寻址存储器(TCAM)和与TCAM分离并耦合到TCAM的输出的存储器,其中TCAM的内容和存储器的内容是可编程的。 标题分析器单元被配置为响应于TCAM中的数据单元的至少一部分的查找来获得要从数据单元解析以执行的一个或多个字段的数据单元的报头中的位置的指示 对数据单元进行分组处理操作。 分组处理器还包括解析器,其被配置为使用标题中的一个或多个字段的位置的指示来解析报头,以从一个或多个字段获得数据。

    METHOD AND APPARATUS FOR DETERMINING LOCATIONS OF FIELDS IN A DATA UNIT
    5.
    发明申请
    METHOD AND APPARATUS FOR DETERMINING LOCATIONS OF FIELDS IN A DATA UNIT 有权
    用于确定数据单元中字段位置的方法和装置

    公开(公告)号:US20110268123A1

    公开(公告)日:2011-11-03

    申请号:US13180254

    申请日:2011-07-11

    IPC分类号: H04L12/56

    CPC分类号: H04L69/22

    摘要: A packet processor for processing a data unit received from a network includes a header analyzer unit configured to obtain indications of locations in a header of the data unit of one or more fields to be parsed from the data unit to perform a packet processing operation on the data unit. The header analyzer unit comprises a ternary content addressable memory (TCAM), and a memory separate from the TCAM and coupled to an output of the TCAM, wherein a content of the TCAM and a content of the memory are programmable. The header analyzer unit is configured to obtain, responsive to a lookup of at least one portion of the data unit in the TCAM, indications of locations in a header of the data unit of one or more fields to be parsed from the data unit to perform a packet processing operation on the data unit. The packet processor further comprises a parser configured to parse the header using the indications of locations of one or more fields in the header to obtain data from the one or more fields.

    摘要翻译: 用于处理从网络接收的数据单元的分组处理器包括:报头分析器单元,被配置为从数据单元获取要解析的一个或多个字段的数据单元的报头中的位置的指示,以对从该数据单元执行分组处理操作 数据单元。 标题分析器单元包括三元内容可寻址存储器(TCAM)和与TCAM分离并耦合到TCAM的输出的存储器,其中TCAM的内容和存储器的内容是可编程的。 标题分析器单元被配置为响应于TCAM中的数据单元的至少一部分的查找来获得要从数据单元解析以执行的一个或多个字段的数据单元的报头中的位置的指示 对数据单元进行分组处理操作。 分组处理器还包括解析器,其被配置为使用标题中的一个或多个字段的位置的指示来解析报头,以从一个或多个字段获得数据。

    Apparatus and method for high speed flow classification
    6.
    发明授权
    Apparatus and method for high speed flow classification 有权
    高速流分类装置及方法

    公开(公告)号:US08577854B1

    公开(公告)日:2013-11-05

    申请号:US10179483

    申请日:2002-06-24

    IPC分类号: G06F7/00

    CPC分类号: G06F17/30864

    摘要: A flow classifier for a network device that processes packets including packet headers includes a hash generator that generates hash index values from search keys derived from the packet headers. A hash table receives the hash index values and outputs pointers. A flow table includes flow keys and corresponding actions. A variable length (VL) trie data structure uses the pointers to locate the flow keys for the search keys. The VL trie data structure selects different flow keys for the search keys that share a common hash index value. The pointers include node, NIL and leaf pointers. The flow classifier performs a default action for the NIL pointers. A pointer calculator accesses a VL trie table using the pointers.

    摘要翻译: 用于处理包括分组报头的分组的网络设备的流分类器包括从从分组报头导出的搜索关键字生成哈希索引值的哈希生成器。 哈希表接收散列索引值并输出指针。 流程表包括流量键和相应的动作。 可变长度(VL)特里数据结构使用指针来定位搜索关键字的流键。 VL trie数据结构为共享公共散列索引值的搜索关键字选择不同的流密钥。 指针包括节点,NIL和叶指针。 流分类器对NIL指针执行默认操作。 指针计算器使用指针访问VL trie表。

    Apparatus and method for efficient longest prefix match lookup
    7.
    发明授权
    Apparatus and method for efficient longest prefix match lookup 有权
    用于有效最长前缀匹配查找的装置和方法

    公开(公告)号:US08018944B1

    公开(公告)日:2011-09-13

    申请号:US12609549

    申请日:2009-10-30

    IPC分类号: H04L12/56

    摘要: A packet processor includes a forwarding table configured to store address prefixes and a search engine configured to receive a packet and to search the forwarding table. The search engine includes a set bit counter configured to receive an address of the packet, to count set bits of a first bit vector associated with the packet, and to output a number of the set bits. A next hop table is configured to store a next hop pointer. A next bucket pointer receives the number of set bits and outputs one of the next hop pointers and the next bucket pointer based on the number of set bits.

    摘要翻译: 分组处理器包括被配置为存储地址前缀的转发表和被配置为接收分组并搜索转发表的搜索引擎。 搜索引擎包括被配置为接收分组的地址的设置位计数器,以对与分组相关联的第一比特向量的设置比特进行计数,并输出多个设置比特。 下一跳表被配置为存储下一跳指针。 下一个桶指针接收设置的位数,并根据设置的位数输出下一跳指针和下一个桶指针之一。

    Apparatus and method for efficient longest prefix match lookup
    8.
    发明授权
    Apparatus and method for efficient longest prefix match lookup 有权
    用于有效最长前缀匹配查找的装置和方法

    公开(公告)号:US07613189B1

    公开(公告)日:2009-11-03

    申请号:US11796143

    申请日:2007-04-26

    IPC分类号: H04L12/56 G06F15/16

    摘要: A network switch includes a matching device that employs a first data structure to select one of N address groups including a first partial address of an IP packet. An action table selects one of a next hop location corresponding to a longest prefix match and a first matching operation for the IP packet based on the selected one of the N groups. When the first matching operation is selected, the matching device employs a second data structure to select one of M address groups including a second partial address of the IP packet. The action table selects one of a next hop location corresponding to a longest prefix match and a second matching operation for the IP packet based on the selected one of the M groups. A routing engine routes the IP packet based on the first and second next hop locations.

    摘要翻译: 网络交换机包括匹配设备,其采用第一数据结构来选择包括IP分组的第一部分地址的N个地址组之一。 动作表基于所选择的N个组中的一个,选择对应于最长前缀匹配的下一跳位置和针对IP分组的第一匹配操作中的一个。 当选择第一匹配操作时,匹配装置采用第二数据结构来选择包括IP分组的第二部分地址的M个地址组之一。 所述动作表基于所述M组中选择的一个,选择对应于最长前缀匹配的下一跳位置和所述IP分组的第二匹配操作中的一个。 路由引擎基于第一和第二下一跳位置来路由IP分组。

    Apparatus and method for efficient longest prefix match lookup
    9.
    发明授权
    Apparatus and method for efficient longest prefix match lookup 有权
    用于有效最长前缀匹配查找的装置和方法

    公开(公告)号:US07212531B1

    公开(公告)日:2007-05-01

    申请号:US10167005

    申请日:2002-06-10

    IPC分类号: H04L12/56

    摘要: A search engine improves search speed and reduces required memory for a longest prefix matching (LPM) router that routes packets using IP addresses. The search engine includes a first bit vector with set bits corresponding to address ranges. A set bit counter counts the set bits in the bit vector based on a first portion of the address of the a first packet. A first next hop table contains first pointers for each of the set bits. One of the first pointers is selected based on a number of set bits counted by the set bit counter. For longer addresses, the addresses are split into address portions. The search engine includes a trie data structure that has n levels. The n levels of the trie data structure include nodes representing non-overlapping address space.

    摘要翻译: 搜索引擎提高搜索速度,并减少使用IP地址路由数据包的最长前缀匹配(LPM)路由器所需的内存。 搜索引擎包括具有对应于地址范围的设置位的第一位向量。 设置位计数器基于第一分组的地址的第一部分对比特向量中的设置比特进行计数。 第一个下一跳表包含每个设置位的第一个指针。 基于由设置的位计数器计数的设定位数来选择第一个指针之一。 对于较长的地址,地址被分割成地址部分。 搜索引擎包括具有n个级别的特里数据结构。 特里数据结构的n个级别包括表示非重叠地址空间的节点。

    Packet header altering device
    10.
    发明授权
    Packet header altering device 有权
    分组报头改变设备

    公开(公告)号:US08428061B1

    公开(公告)日:2013-04-23

    申请号:US12283011

    申请日:2008-09-09

    IPC分类号: H04L12/28 H04L12/26

    摘要: A packet processor for a network device includes an incoming port that receives a first packet. The first packet includes a data portion, a control portion and a first outgoing port. A control data processing device receives the control portion from the incoming port while the data portion is stored in memory, and transmits the control portion to the first outgoing port. The first outgoing port transmits a first request for the data portion based on the control portion. A header altering device retrieves the data portion from the memory and strips, modifies, and encapsulates the data portion based on the first request.

    摘要翻译: 用于网络设备的分组处理器包括接收第一分组的输入端口。 第一分组包括数据部分,控制部分和第一输出端口。 控制数据处理装置在将数据部分存储在存储器中的同时从输入端口接收控制部分,并将控制部分发送到第一输出端口。 第一输出端口基于控制部分发送对数据部分的第一请求。 报头更换设备从存储器检索数据部分,并根据第一请求剥离,修改和封装数据部分。