IP Library Granted Patent US 9,264,385
Granted Patent B2
US 9,264,385 · App. 14/746,674 · Granted Feb 16, 2016

Messaging with flexible transmit ordering

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 9,264,385
App. No.
14/746,674
Granted
Feb 16, 2016
Kind
B2
Abstract

In one embodiment, a system includes reassembly stores configured to store a fragment of a packet in a particular reassembly store corresponding with the packet, and when the particular reassembly store contains fragments of the packet representing the packet as a whole, forward the packet to a plurality of cores. The system further includes a packet reception unit configured to store the fragment in one of a plurality of memories within the reassembly stores, and, when the one of the plurality of memories is filled, copy the at least one fragment to a memory external to the packet reception unit.

Claims (30)

1. A system comprising:

a plurality of reassembly stores configured to store at least one fragment of a packet in a particular reassembly store corresponding with the packet, and when the particular reassembly store contains at least one fragment of the packet representing the packet as a whole, forward the packet to a plurality of cores; and

a packet reception unit configured to store the at least one fragment in one of a plurality of memories within the reassembly stores, and, when the one of the plurality of memories is filled, copy the at least one fragment to a memory external to the packet reception unit.

2. The system of claim 1 , wherein the packet reception unit is further configured to receive a plurality of packets, wherein the packets may originate from more than one source.

3. The system of claim 1 , wherein the particular reassembly store is allocated to the packet upon receiving a first of the at least one fragment of the packet.

4. The system of claim 3 , wherein the particular reassembly store accepts other fragments of the at least one fragment of the packet after receiving the first of the at least one fragment of the packet.

5. The system of claim 1 , wherein the packet reception unit is further configured to send a retry message when each of the reassembly stores are unavailable to receive a first of the at least one fragment of the packet.

6. The system of claim 1 , wherein the packet reassembly stores are stored in a memory internal to the packet reception unit.

7. The system of claim 1 , further comprising a packet allocation unit configured to direct each fragment associated with the packet to the particular reassembly store corresponding with the packet.

8. The system of claim 1 , further comprising:

at least one port within the packet reception unit;

wherein each reassembly store is assigned to one of the ports.

9. The system of claim 8 , wherein the reassembly store assignments to the ports are configurable to affect quality of service of each of the ports.

10. The system of claim 1 , further comprising a plurality of packet reception units, each packet reception unit sharing the plurality of reassembly stores wherein each reassembly store is assigned to one of the packet reception units.

11. The system of claim 10 , wherein the reassembly store assignments to the packet reception units are configurable to affect quality of service of each of the packet reception units.

12. A method comprising:

storing at least one fragment of a packet in a particular one of a plurality of reassembly stores corresponding with the packet; and

forwarding the packet to a plurality of cores when the particular reassembly store contains at least one fragment of the packet such that the stored at least one fragment represents the packet as a whole;

storing the at least one fragment in one of a plurality of memories within the reassembly stores; and

copying the at least one fragment to a memory external to a packet reception unit when the one of the plurality of memories is filled.

13. The method of claim 12 , further comprising receiving a plurality of packets including the packet, wherein the packets originate from more than one source.

14. The method of claim 12 , further comprising allocating the particular reassembly store to the packet upon receiving a first of the at least one fragment of the packet.

15. The method of claim 14 , wherein the particular reassembly store accepts other fragments of the at least one fragment of the packet after receiving the first of the at least one fragment of the packet.

16. The method of claim 12 , further comprising sending a retry message when each of the reassembly stores are unavailable to receive a first of the at least one fragment of the packet.

17. The method of claim 12 , wherein the packet reassembly stores are stored in an internal memory.

18. The method of claim 12 , further comprising directing each fragment associated with the packet to the particular reassembly store corresponding with the packet.

19. The method of claim 12 , further comprising assigning each reassembly store to at least one port.

20. The method of claim 19 , further comprising configuring the reassembly store assignments to the ports to affect quality of service of each of the ports.

21. The method of claim 12 , further comprising sharing the plurality of reassembly stores with each of a plurality of packet reception units wherein each reassembly store is assigned to one of the packet reception units.

22. The method of claim 21 , further comprising configuring the reassembly store assignments to the packet reception units to affect quality of service of each of the packet reception units.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CERTIFICATE OF CONVERSION AND CERTIFICATE OF FORMATION Recorded Oct 2, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047185/0422 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
SECURITY AGREEMENT Recorded Aug 17, 2016
From: CAVIUM, INC.; CAVIUM NETWORKS LLC
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 039715/0449 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2015
From: KESSLER, RICHARD E.; HUMMEL, THOMAS F.; SANZONE, ROBERT A.; KATZ, DANIEL A.; BERTONE, MICHAEL S.
To: CAVIUM, INC.
Reel/Frame 035878/0776 →