IP Library Granted Patent US 7,908,376
Granted Patent B2
US 7,908,376 · App. 12/183,935 · Granted Mar 15, 2011

Data path acceleration of a network stack

Assignee: Broadcom Corporation
View Patent ↗
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 7,908,376
App. No.
12/183,935
Granted
Mar 15, 2011
Kind
B2
Abstract

An apparatus may include a flow cache module that is arranged and configured to derive, at runtime, a custom sequence of code segments for packets belonging to a specific connection using a first packet of the specific connection and a parser module that is arranged and configured to identify packets as belonging to the specific connection using an Internet Protocol (IP) tuple of the packets, where the flow cache module is arranged and configured to apply the custom sequence of code segments to the identified packets.

Claims (25)

1. An apparatus including instructions tangibly embodied on a non-transitory computer-readable storage medium, the apparatus comprising:

a flow cache module that is arranged and configured to construct a custom stack and to derive, at runtime, a custom sequence of code segments for packets belonging to a specific connection using a first packet of the specific connection; and

a parser module that is arranged and configured to identify packets as belonging to the specific connection using an Internet Protocol (IP) tuple of the packets and that is arranged and configured to inspect headers of the packets,

wherein the flow cache module is arranged and configured to use the custom stack and to apply the custom sequence of code segments to the identified packets and is arranged and configured to exclude certain packet types as belonging to the specific connection based on the inspected headers.

2. The apparatus of claim 1 wherein the flow cache module is arranged and configured to construct the custom stack for the specific connection as a threaded code sequence using C language goto labels as values.

3. The apparatus of claim 1 wherein the parser module is arranged and configured to parse the headers of the packets to extract the IP tuple.

4. The apparatus of claim 1 wherein the IP tuple includes a source address, a destination address, a protocol type, a source port and a destination port.

5. A method comprising:

constructing a custom stack and deriving, at runtime, a custom sequence of code segments for packets belonging to a specific connection using a first packet of the specific connection;

identifying packets as belonging to the specific connection using an Internet Protocol (IP) tuple of the packets;

using the custom stack to apply the custom sequence of code segments to the identified packets;

inspecting headers of the packets; and

excluding certain packet types as belonging to the specific connection based on the inspected headers.

6. The method as in claim 5 wherein constructing the custom stack comprises constructing the custom stack for the specific connection as a threaded code sequence using C language goto labels as values.

7. The method as in claim 5 wherein identifying the packets comprises parsing the headers of the packets to extract the IP tuple.

8. The method as in claim 5 wherein the IP tuple includes a source address, a destination address, a protocol type, a source port and a destination port.

9. A computer program product for performing packet acceleration, the computer program product being tangibly embodied on a non-transitory computer-readable medium and including executable code that, when executed, is configured to cause at least one data processing apparatus to:

construct a custom stack and derive, at runtime, a custom sequence of code segments for packets belonging to a specific connection using a first packet of the specific connection;

identify packets as belonging to the specific connection using an Internet Protocol (IP) tuple of the packets;

use the custom stack to apply the custom sequence of code segments to the identified packets;

inspect headers of the packets; and

exclude certain packet types as belonging to the specific connection based on the inspected headers.

10. The computer program product of claim 9 wherein the executable code is configured to cause the data processing apparatus to construct the custom stack for the specific connection as a threaded code sequence using C language goto labels as values.

11. The computer program product of claim 9 wherein the executable code is configured to cause the data processing apparatus to parse the headers of the packets to extract the IP tuple.

12. The computer program product of claim 9 wherein the IP tuple includes a source address, a destination address, a protocol type, a source port and a destination port.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PROPERTY NUMBERS PREVIOUSLY RECORDED AT REEL: 47630 FRAME: 344. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 21, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 048883/0267 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF MERGER TO 9/5/2018 PREVIOUSLY RECORDED AT REEL: 047196 FRAME: 0687. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047630/0344 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047196/0687 →
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 Sep 26, 2008
From: GOMES, FABIAN A.; KAPLAN, LEO
To: BROADCOM CORPORATION
Reel/Frame 021589/0457 →
Continuity (1)
Related Publication 20100027545A1 · Feb 4, 2010