IP Library Patent Application 11340586
Patent Application
App. No. 11/340,586

Table searching techniques in a network device

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/340,586
Abstract

A network device for processing data on a data network including a port interface configured to receive a data packet from a data network and to send a processed data packet to an egress port of the plurality of ports, a packet evaluation module configured to parse the received data packet and modify the received data packet to form the processed data packet and a search engine configured to perform searches of lookup tables using parsed data packet values and to return search results to the packet evaluation module to assist in modifying the received data packet. The searches of the lookup tables occur in pairs, such that a first lookup search provides interim results that are used in a second lookup search to provide the search results.

Claims (30)

1 . A network device for processing data on a data network, the network device comprising:

a port interface, in communication with a plurality of ports, configured to receive a data packet from a data network and to send a processed data packet to an egress port of the plurality of ports;

a packet evaluation module, in communication with the port interface, configured to parse the received data packet and modify the received data packet to form the processed data packet; and

a search engine, in communication with the packet evaluation module, configured to perform searches of lookup tables using parsed data packet values and to return search results to the packet evaluation module to assist in modifying the received data packet;

wherein the searches of the lookup tables occur in pairs, such that a first lookup search provides interim results that are used in a second lookup search to provide the search results.

2 . The network device according to claim 1 , wherein the search engine is configured to conserve memory bandwidth through the searching of the lookup tables in pairs.

3 . The network device according to claim 2 , wherein the search engine is configured to perform a lookup of three Multi-protocol Label Switching labels through two memory accesses.

4 . The network device according to claim 1 , wherein entries of one of the lookup tables are embedded into the entries of another one of the lookup tables to expand a number of available entries in the one of the lookup tables.

5 . The network device according to claim 1 , wherein the search engine is configured to chain the interim results with another portion of an original key in the second lookup search to provide the search results.

6 . A method for processing data in a network device, the method comprising the steps of:

receiving a data packet at one port of a plurality of ports;

parsing the received data packet to determine parsed data packet values;

searching lookup tables using the parsed data packet values;

obtaining search results;

modifying the received data packet to form a processed data packet based on the search results; and

sending the processed data packet to an egress port of the plurality of ports;

wherein the searches of the lookup tables occur in pairs, such that a first lookup search provides interim results that are used in a second lookup search to provide the search results.

7 . The method according to claim 6 , wherein the step of searching the lookup tables is performed to conserve memory bandwidth.

8 . The method according to claim 7 , wherein the step of searching the lookup tables comprises performing a lookup of three Multi-protocol Label Switching labels through two memory accesses.

9 . The method according to claim 6 , wherein the step of searching the lookup tables comprises searching entries of one of the lookup tables which are embedded into the entries of another one of the lookup tables to expand a number of available entries in the one of the lookup tables.

10 . The method according to claim 6 , wherein the step of searching the lookup tables comprises chaining the interim results with another portion of an original key in the second lookup search to provide the search results.

11 . A network device for processing data, the network device comprising:

port means for receiving a data packet at one port of a plurality of ports and sending a processed data packet to an egress port of the plurality of ports;

parsing and modifying means for parsing the received data packet to determine parsed data packet values and for modifying the received data packet to form the processed data packet based on search results;

searching means for searching lookup tables using the parsed data packet values and obtaining the search results;

wherein the searching means is configured to perform of the searching of the lookup tables in pairs, such that a first lookup search provides interim results that are used in a second lookup search to provide the search results.

12 . The network device according to claim 11 , wherein the searching means is configured to perform searching of the lookup tables in pairs to conserve memory bandwidth.

13 . The network device according to claim 12 , wherein the searching means is configured to perform a lookup of three Multi-protocol Label Switching labels through two memory accesses.

14 . The network device according to claim 11 , wherein the searching means comprises means for searching entries of one of the lookup tables which are embedded into the entries of another one of the lookup tables to expand a number of available entries in the one of the lookup tables.

15 . The network device according to claim 11 , wherein the searching means comprises means for chaining the interim results with another portion of an original key in the second lookup search to provide the search results.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2006
From: YU, SONG-HUO
To: BROADCOM CORPORATION
Reel/Frame 017517/0476 →