IP Library Granted Patent US 9,559,982
Granted Patent B2
US 9,559,982 · App. 14/194,038 · Granted Jan 31, 2017

Packet shaping in a network processor

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,559,982
App. No.
14/194,038
Granted
Jan 31, 2017
Kind
B2
Abstract

A circuit operates to manage transmittal of packets in a network packet processor. The circuit includes a packet descriptor manager (PDM), a packet scheduling engine (PSE), and a packet engines and buffering module (PEB). The PDM generates a metapacket and a descriptor from a command signal, where the command signal identifies a packet to be transmitted by the circuit. The PSE compares a packet transmission rate associated with the packet against at least one of a peak rate and a committed rate associated with the packet, and determines an order in which to transmit the packet among a number of packets based on the comparison. Once the packet is scheduled for transmission, the PEB performs processing operations on the packet to produce a processed packet based on instructions indicated in the descriptor. The PEB then causes the processed packet to be transmitted toward the destination.

Claims (33)

1. A circuit for managing transmittal of packets, the circuit comprising:

a packet descriptor manager (PDM) circuit module configured to generate a metapacket from a command signal, the metapacket indicating a size and a destination of a packet to be transmitted by the circuit, the metapacket including an entry stating the size of the packet;

a packet scheduling engine (PSE) circuit module configured to compare a packet transmission rate associated with the packet against at least one of a peak rate and a committed rate associated with the packet, the PSE determining an order in which to transmit the packet among a plurality of packets based on the comparison; and

a packet engines and buffering (PEB) circuit module configured to process the packet and cause a processed packet to be transmitted toward the destination according to the order determined by the PSE;

wherein the PSE is further configured to compare, for a plurality of nodes in a path between the circuit and the destination, a packet transmission rate associated with the node against at least one of a peak rate and a committed rate associated with the node, the PSE determining the order based on the comparisons.

2. The circuit of claim 1 , wherein the PSE is further configured to model transmission of the packet through a model of a network topology from the destination to the circuit, the PSE determining the order based on the model transmission.

3. The circuit of claim 2 , wherein the PSE is further configured to model a plurality of nodes having network shapers in the network topology between the destination and the circuit, each of the network shapers defining at least one of a peak rate and a committed rate.

4. The circuit of claim 3 , wherein the PSE is further configured to apply a model of the packet to each of the network shapers in a path between the circuit and the destination, the PSE determining the order based on the application.

5. The circuit of claim 4 , wherein the PSE is further configured to assign a color to each of the network shapers based on a modeled packet rate through the network shaper.

6. The circuit of claim 5 , wherein the PSE is further configured to assign a color to the packet based on the color of at least one of the network shapers in a path of the packet.

7. The circuit of claim 6 , wherein the PSE is further configured to apply rules for assigning the color to the packet based on at least one field of the metapacket.

8. The circuit of claim 2 , wherein the PSE is further configured to determine the order based on arrival of the packet relative to other packets at the circuit in the model transmission.

9. The circuit of claim 7 , wherein the PSE is further configured to model transmission of the plurality of packets from a plurality of respective destinations to the circuit, the PSE determining the order based on arrival of the packet among the plurality of packets in the model transmission.

10. The circuit of claim 8 , wherein the PSE is further configured to model a plurality of nodes in the network topology between the plurality of destinations and the circuit.

11. The circuit of claim 1 , wherein the PSE is further configured to associate the packet transmission rate with the packet based on the destination.

12. The circuit of claim 1 , wherein the PSE is further configured to assign a color to the packet based on the comparison.

13. A method of managing transmittal of packets, the method comprising:

receiving a command signal identifying a packet to be processed and transmitted;

generating a metapacket from the command signal, the metapacket including an indication of a size of the packet and a destination of the packet, the metapacket including an entry stating the size of the packet;

comparing, at a packet scheduling engine (PSE) circuit module, a packet transmission rate associated with the packet against at least one of a peak rate and a committed rate associated with the packet;

comparing, for a plurality of nodes in a path between the circuit and the destination, a packet transmission rate associated with the node against at least one of a peak rate and a committed rate associated with the node,

determining an order in which to transmit the packet among a plurality of packets based on the comparisons;

processing operations on the packet to produce a processed packet; and

causing the processed packet to be transmitted toward the destination according to the order.

14. The method of claim 13 , further comprising modeling transmission of the packet through a model of a network topology from the destination to the circuit, the PSE determining the order based on the model transmission.

15. The method of claim 14 , further comprising modeling a plurality of nodes having network shapers in the network topology between the destination and the circuit, each of the network shapers defining at least one of a peak rate and a committed rate.

16. The method of claim 15 , further comprising applying a model of the packet to each of the network shapers in a path between the circuit and the destination, the order being based on the application.

17. The method of claim 16 , further comprising assigning a color to each of the network shapers based on a modeled packet rate through the network shaper.

18. The method of claim 17 , further comprising assigning a color to the packet based on the color of at least one of the network shapers in a path of the packet.

19. The method of claim 18 , further comprising applying rules for assigning the color to the packet based on at least one field of the metapacket.

20. The method of claim 14 , further comprising determining the order based on arrival of the packet relative to other packets at the circuit in the model transmission.

21. The method of claim 20 , further comprising modeling transmission of the plurality of packets from a plurality of respective destinations to the circuit, the order being based on arrival of the packet among the plurality of packets in the model transmission.

22. The method of claim 21 , further comprising modeling a plurality of nodes in the network topology between the plurality of destinations and the circuit.

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 Dec 5, 2014
From: FOLSOM, BRIAN ROBERT; SNYDER, WILSON P., II; TOMPKINS, JOSEPH B.; KESSLER, RICHARD E.; LANGEVIN, EDWIN; JONES, ANDREW J.; ROBBINS, ETHAN F.
To: CAVIUM, INC.
Reel/Frame 034392/0900 →