CA2291310A1 - Generating searchable data entries and applications therefore - Google Patents

Generating searchable data entries and applications therefore Download PDF

Info

Publication number
CA2291310A1
CA2291310A1 CA002291310A CA2291310A CA2291310A1 CA 2291310 A1 CA2291310 A1 CA 2291310A1 CA 002291310 A CA002291310 A CA 002291310A CA 2291310 A CA2291310 A CA 2291310A CA 2291310 A1 CA2291310 A1 CA 2291310A1
Authority
CA
Canada
Prior art keywords
binary
cams
applications
entries
cam
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CA002291310A
Other languages
French (fr)
Other versions
CA2291310C (en
Inventor
Mourad Abdat
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OL Security LLC
Original Assignee
Mosaid Technologies Inc
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
Application filed by Mosaid Technologies Inc filed Critical Mosaid Technologies Inc
Priority to CA002291310A priority Critical patent/CA2291310C/en
Priority to US09/725,876 priority patent/US6484170B2/en
Publication of CA2291310A1 publication Critical patent/CA2291310A1/en
Priority to US10/272,949 priority patent/US6697803B2/en
Application granted granted Critical
Publication of CA2291310C publication Critical patent/CA2291310C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90339Query processing by using parallel associative memories or content-addressable memories
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access

Abstract

New techniques for generating entries in a content addressable memory (CAM) capable of comparison operations such as "greater than" and "less than"
decisions are described. The techniques can be used with binary or ternary CAMS. The number of CAM entries needed to implement such decisions is drastically reduced for both binary and ternary CAMS. In the case of binary CAMS, one or multiple searches are needed to perform the comparisons, while in the case of ternary CAMS a tradeoff between the number of CAM entries and the number of searches can be found. As an example, a method of classifying data networking packets is implemented using the new techniques. A packet classifier based on subfields of a packet header is also described.
CA002291310A 1999-11-30 1999-11-30 Generating searchable data entries and applications therefore Expired - Fee Related CA2291310C (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CA002291310A CA2291310C (en) 1999-11-30 1999-11-30 Generating searchable data entries and applications therefore
US09/725,876 US6484170B2 (en) 1999-11-30 2000-11-30 Generating searchable data entries and applications therefore
US10/272,949 US6697803B2 (en) 1999-11-30 2002-10-18 Generating searchable data entries and applications therefore

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA002291310A CA2291310C (en) 1999-11-30 1999-11-30 Generating searchable data entries and applications therefore

Publications (2)

Publication Number Publication Date
CA2291310A1 true CA2291310A1 (en) 2001-05-30
CA2291310C CA2291310C (en) 2007-04-10

Family

ID=4164755

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002291310A Expired - Fee Related CA2291310C (en) 1999-11-30 1999-11-30 Generating searchable data entries and applications therefore

Country Status (2)

Country Link
US (2) US6484170B2 (en)
CA (1) CA2291310C (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6768992B1 (en) * 1999-05-17 2004-07-27 Lynne G. Jolitz Term addressable memory of an accelerator system and method
US6789127B1 (en) * 2000-02-15 2004-09-07 Lucent Technologies Inc. Preparation for network interface recognition of network packet portion with declarative notation for field thereof and constraint therefor
US6718326B2 (en) * 2000-08-17 2004-04-06 Nippon Telegraph And Telephone Corporation Packet classification search device and method
US20020103925A1 (en) * 2000-12-06 2002-08-01 Sheth Siddharth C. Generic programmable internet protocol classification technique for a broadband engine
US6981077B2 (en) * 2000-12-22 2005-12-27 Nortel Networks Limited Global access bus architecture
JP2002237190A (en) * 2001-02-07 2002-08-23 Kawasaki Microelectronics Kk Associative memory device and its constituting method
US6732228B1 (en) * 2001-07-19 2004-05-04 Network Elements, Inc. Multi-protocol data classification using on-chip CAM
US7133409B1 (en) 2001-07-19 2006-11-07 Richard Willardson Programmable packet filtering in a prioritized chain
US7301961B1 (en) 2001-12-27 2007-11-27 Cypress Semiconductor Corportion Method and apparatus for configuring signal lines according to idle codes
US7187694B1 (en) * 2002-03-29 2007-03-06 Pmc-Sierra, Inc. Generic packet parser
US7610440B2 (en) * 2002-10-23 2009-10-27 Husby Donald E Content addressable memory with automated learning
GB2395395B (en) * 2002-11-15 2004-11-10 3Com Corp Classification search scheme and rules engine for network unit
US7003625B2 (en) * 2002-12-19 2006-02-21 Mosaid Technologies, Inc. Searching small entities in a wide CAM
US7251651B2 (en) * 2003-05-28 2007-07-31 International Business Machines Corporation Packet classification
US7739445B1 (en) 2004-06-11 2010-06-15 Srinivasan Venkatachary Circuit, apparatus, and method for extracting multiple matching entries from a content addressable memory (CAM) device
US7461200B1 (en) 2004-09-23 2008-12-02 Netlogic Microsystems, Inc. Method and apparatus for overlaying flat and tree based data sets onto content addressable memory (CAM) device
US7554984B2 (en) * 2004-11-30 2009-06-30 Broadcom Corporation Fast filter processor metering and chaining
US7281085B1 (en) * 2005-01-31 2007-10-09 Netlogic Microsystems, Inc. Method and device for virtualization of multiple data sets on same associative memory
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
US8775726B2 (en) * 2012-07-27 2014-07-08 International Business Machine Corporation TCAM extended search function
US9491083B2 (en) * 2012-11-30 2016-11-08 Fujitsu Limited Systems and methods of test packet handling

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3320592A (en) 1963-04-11 1967-05-16 Trw Inc Associative memory system
US3389377A (en) 1965-07-06 1968-06-18 Bunker Ramo Content addressable memories
US5561429A (en) * 1986-04-16 1996-10-01 Raytheon Company Content limit addressable memory
US4996666A (en) 1988-08-12 1991-02-26 Duluk Jr Jerome F Content-addressable memory system capable of fully parallel magnitude comparisons
US5758148A (en) * 1989-03-10 1998-05-26 Board Of Regents, The University Of Texas System System and method for searching a data base using a content-searchable memory
US5920886A (en) 1997-03-14 1999-07-06 Music Semiconductor Corporation Accelerated hierarchical address filtering and translation using binary and ternary CAMs

Also Published As

Publication number Publication date
US20030046500A1 (en) 2003-03-06
US6484170B2 (en) 2002-11-19
US20010002476A1 (en) 2001-05-31
US6697803B2 (en) 2004-02-24
CA2291310C (en) 2007-04-10

Similar Documents

Publication Publication Date Title
CA2291310A1 (en) Generating searchable data entries and applications therefore
Van Lunteren et al. Fast and scalable packet classification
Liu Efficient mapping of range classifier into ternary-CAM
US6615336B1 (en) Method for performing a medium access control address lookup in a network switch of an ethernet network
CN102377664B (en) TCAM (ternary content addressable memory)-based range matching device and method
US6985483B2 (en) Methods and systems for fast packet forwarding
AU2003228273A1 (en) Vlan table management for memory efficient lookups and inserts in hardware-based packet switches
AU2002217593B2 (en) Apparatus and method for performing high-speed IP route lookup and managing routing/forwarding tables
US6778530B1 (en) Method and apparatus for multiple field matching in network device
US6957215B2 (en) Multi-dimensional associative search engine
US6792423B1 (en) Hybrid longest prefix match and fixed match searches
US20020129086A1 (en) Cluster-based aggregated switching technique (CAST) for routing data packets and information objects in computer networks
WO1997041708A3 (en) Method and apparatus for detection of packet types in a communications network
EP1049298A3 (en) Method for classifying data acording to quality of service
WO2000024159A3 (en) Method and apparatus for address lookup
US20100158016A1 (en) System and method of fast adaptive tcam sorting for ip longest prefix matching
DE602004018759D1 (en) Icher
WO2011060436A1 (en) Iterative parsing and classification
CN102487374A (en) Access control list realization method and apparatus thereof
US6970971B1 (en) Method and apparatus for mapping prefixes and values of a hierarchical space to other representations
CN101039253B (en) Method for realizing prefix extension of range matching of ternary content addressable memory
US7558775B1 (en) Methods and apparatus for maintaining sets of ranges typically using an associative memory and for using these ranges to identify a matching range based on a query point or query range and to maintain sorted elements for use such as in providing priority queue operations
US20060198379A1 (en) Prefix optimizations for a network search engine
CN112818185A (en) Method for searching longest prefix matching hardware system based on SRAM
CN1805435A (en) IPv6 multi-domain classification processing method

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed