发明名称 System and method for packet classification and internet protocol lookup in a network environment
摘要 An example method includes partitioning a memory element of a router into a plurality of segments having one or more rows, where at least a portion of the one or more rows is encoded with a value mask (VM) list having a plurality of values and masks. The VM list is identified by a label, and the label is mapped to a base row number and a specific number of bits corresponding to the portion encoding the VM list. Another example method includes partitioning a prefix into a plurality of blocks, indexing to a hash table using a value of a specific block, where a bucket of the hash table corresponds to a segment of a ternary content addressable memory of a router, and storing the prefix in a row of the segment.
申请公布号 US9245626(B2) 申请公布日期 2016.01.26
申请号 US201213661356 申请日期 2012.10.26
申请人 CISCO TECHNOLOGY, INC. 发明人 Fingerhut John Andrew;Ramaraj Balamurugan
分类号 G06F13/00;G06F13/28;G11C15/00;H04L12/701;H04L12/931 主分类号 G06F13/00
代理机构 Patent Capital Group 代理人 Patent Capital Group
主权项 1. A method, comprising: partitioning a memory element of a router into a plurality of segments comprising one or more rows, wherein at least a portion of the one or more rows is encoded with a value mask (VM) list comprising a plurality of values and masks, wherein the VM list is identified by a unique label distinguishing it from other VM lists, wherein the VM lists correspond to rule lists of one or more policies; mapping, in a table separate from the plurality of segments, the label to a base row number and a specific number of bits corresponding to the portion encoding the VM list, the base row number indicating a start of rows encoding the VM list, and the specific number of bits indicating a consecutive number of bits used for the VM list; receiving a search key comprising the label identifying the VM list; identifying the label in the search key; determining, from the table, a read address of a specific row in the portion of the plurality of segments based on the base row number and the specific number of bits indicated by the label; accessing the specific row in the plurality of segments; and comparing the search key with the plurality of values and masks in the specific row.
地址 San Jose CA US