Browse Prior Art Database

A Method to Support Multiple Keys in Table Lookup Engines

IP.com Disclosure Number: IPCOM000246002D
Publication Date: 2016-Apr-25
Document File: 7 page(s) / 452K

Publishing Venue

The IP.com Prior Art Database

Abstract

Table lookup engines are hardware accelerators used to perform table lookup operations. These hardware accelerators are used by software applications to improve search functionality, rather than using software search algorithms. However, in hardware table lookup engines, one table can be programmed with only one set of keys. This paper focuses on a method to enhance table lookup engines interface for supporting multiple sets of keys in a single table.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 34% of the total text.

Page 01 of 7

A Method to Support Multiple Keys in Table Lookup Engines

Abstract

Table lookup engines are hardware accelerators used to perform table lookup operations. These hardware

accelerators are used by software applications to improve search functionality, rather than using software

search algorithms. However, in hardware table lookup engines, one table can be programmed with only

one set of keys. This paper focuses on a method to enhance table lookup engines interface for supporting

multiple sets of keys in a single table.

Introduction

Table lookup engines (TLE) accelerators are designed to accelerate search operations. These accelerators

provide an interface to software to program the following operations:


• Table creation


• Table deletion


• Record addition


• Record deletion


• Table lookup

Some accelerators may also provide functionality for modifying existing record. TLEs may support

various types of key matching criteria, e.g., equal match (record should match with the given key value),

longest prefix match, partial key match (passed key is compared with the programmed key and mask

values), etc. TLE may also support key generator accelerators.

Table Creation interface:

TLE may support an interface to create a table. It may request arguments such as table type, key size,

table miss rule, etc. It can return a unique identifier for identifying a table.

There may be limitations in supporting maximum number of tables or maximum key size, etc.

Table deletion interface:


Page 02 of 7

TLE may provide an interface to delete the table. There may be consideration in deletion of table before

deleting all the records or TLE may internally clear up memory of records programmed corresponding

to the table identifier, then deletes the table.

Record addition interface:

TLE may provide an interface to program a record or a rule in table. Arguments can be record info, key

info, table identifier, etc.

Record deletion interface:

TLE may provide an interface to delete a record or a rule in a table. Arguments can be key info and table

identifier.

Table lookup interface:

TLE may provide an interface for table lookup operations. Arguments can be table identifier, key info,

etc. key info may contain the key value or key generator identifier which can be programmed to calculate

the key with packet values, etc.

TLE implementation or interfacing to the applications and Networking applications requirement

TLE supports one type of keys for one table. TLE can be used to program multiple tables. Each table can

have multiple records. Each record can only have one key, e.g., while creating a table, application will

program the key size and while adding a record application will pass key of corresponding size.

Limitation of TLE is to program with only one set of keys for one table.

Networking applications

Most of the enterprise networking applications have to maintain data. Data may contain user database or

set of control blocks or firewall associations or IP...