IP Library Granted Patent US 8,295,180
Granted Patent B2
US 8,295,180 · App. 12/794,268 · Granted Oct 23, 2012

Quality of service aware rate throttling of delay tolerant traffic for energy efficient routing

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 8,295,180
App. No.
12/794,268
Granted
Oct 23, 2012
Kind
B2
Abstract

The invention is directed to energy-efficient network processing of delay tolerant data packet traffic. Embodiments of the invention determine if an aggregate of time critical traffic flow rates and minimum rates for meeting QoS requirements of delay tolerant traffic flows exceeds a combined optimal rate of packet processing engines of a network processor. In the affirmative case, embodiments set the processing rate of individual packet processing engines to a minimum rate, such that the cumulative rate of the packet processing engines meets the aggregate rate, and schedule the delay tolerant flows to meet their respective minimum rates. Advantageously, by throttling the processing rate of only delay tolerant traffic, energy consumption of network processors can be reduced while at the same time QoS requirements of the delay tolerant traffic and time critical traffic can be met.

Claims (48)

1. A method of controlling a processing rate used in a network processor having a plurality of packet processing engines, comprising the steps of:

determining an aggregate rate of time critical flows received by the network processor;

determining an aggregate minimum rate that will meet respective quality of service requirements of all delay tolerant flows received by the network processor;

summing the aggregate rate of time critical flows and the aggregate minimum rate to obtain a summed rate;

totaling respective optimal rates for energy efficiency of the packet processing engines to obtain a cumulative optimal rate;

comparing the summed rate to the cumulative optimal rate;

determining, responsive to the summed rate being greater than the cumulative optimal rate, a respective minimum processing rate for each packet processing engine such that a summation of the minimum processing rates is greater than or equal to the summed rate; and

scheduling processing of the delay tolerant flows by the packet processing engines to meet the respective quality of service requirements of the delay tolerant flows.

2. The method of claim 1 , further comprising the step of:

determining an aggregate rate of the time critical flows and the delay tolerant flows to obtain an aggregate input rate;

determining, responsive to the summed rate being less than or equal to the cumulative optimal rate, a minimum subset of packet processing engines such that the aggregate input rate is less than or equal to a summation of the respective optimal rates of the packet processing engines of the subset; and

scheduling processing of the delay tolerant flows and the time critical flows on only packet processing engines of the subset.

3. The method of claim 1 , wherein two or more of the packet processing engines have substantially similar optimal rates for energy efficiency and the step of determining the respective minimum processing rate for each packet processing engine comprises determining a same minimum processing rate for each packet processing engine of the two or more packet processing engines.

4. The method of claim 2 , wherein two or more of the packet processing engines have substantially similar optimal rates for energy efficiency and the step of determining the minimum subset of packet processing engines comprises determining a minimum size of the subset using a same optimal rate for each packet processing engine of the two or more packet processing engines.

5. The method of claim 1 , wherein the step of scheduling comprises fair scheduling of the delay tolerant flows within the aggregate minimum rate.

6. The method of claim 3 , further comprising the step of:

determining an aggregate rate of the time critical flows and the delay tolerant flows to obtain an aggregate input rate;

determining, responsive to the summed rate being less than or equal to the cumulative optimal rate, a minimum subset of packet processing engines such that the aggregate input rate is less than or equal to a summation of the respective optimal rates of the packet processing engines of the subset; and

scheduling processing of the delay tolerant flows and the time critical flows on only packet processing engines of the subset.

7. The method of claim 6 , wherein two or more of the packet processing engines have substantially similar optimal rates for energy efficiency and the step of determining the minimum subset of packet processing engines comprises determining a minimum size of the subset using a same optimal rate for each packet processing engine of the two or more packet processing engines.

8. The method of claim 7 , wherein the step of scheduling comprises fair scheduling of the delay tolerant flows within the aggregate minimum rate.

9. The method of claim 8 , further comprising returning to the step of determining an aggregate rate of time critical flows responsive to a change the time critical flows received by the network processor.

10. The method of claim 9 , further comprising returning to the step of determining the aggregate minimum rate responsive to a change in the delay tolerant flows received by the network processor.

11. The method of claim 10 , further comprising returning to the step of determining an aggregate rate of the time critical flows and the delay tolerant flows to obtain an aggregate input rate responsive to a change in either of the time critical flows or the delay tolerant flows.

12. A rate controllable network processor, comprising:

a plurality of packet processing engines;

a rate estimator for determining from a flow of IP packets received by the network processor:

an aggregate rate of time critical flows received by the network processor, and

an aggregate minimum rate that will meet respective quality of service requirements of delay tolerant flows received by the network processor;

a rate controller for determining a respective minimum processing rate for each packet processing engine such that a summation of the minimum processing rates is greater than or equal to a summation of the aggregate rate of time critical flows and the aggregate minimum rate; and

a dispatcher for scheduling processing of the delay tolerant flows by the packet processing engines to meet the respective quality of service requirements of the delay tolerant flows,

wherein each packet processing engine is operable to process packets at its respective minimum processing rate.

13. The network processor of claim 12 , wherein:

the rate estimator is operable to determine an aggregate input rate comprising a summation of the aggregate rate of time critical flows and an aggregate rate of the delay tolerant flows and to sum the aggregate rate of time critical flows and the aggregate minimum rate to obtain a summed rate;

the rate controller is operable to obtain respective optimal rates for energy efficiency of the packet processing engines and to total respective optimal rates for energy efficiency of the packet processing engines to obtain a cumulative optimal rate, and to determine, responsive to the summed rate being less than or equal to the cumulative optimal rate, a minimum subset of packet processing engines such that the aggregate input rate is less than or equal to a summation of the respective optimal rates of the packet processing engines of the subset; and

the dispatcher is operable to schedule processing of the delay tolerant flows and the time critical flows on only packet processing engines of the subset.

14. The network processor of claim 13 , wherein the dispatcher is further operable to perform fair scheduling of the delay tolerant flows within the aggregate minimum rate.

15. The network processor of claim 14 , wherein two or more of the packet processing engines have substantially similar optimal rates for energy efficiency, the rate estimator is further operable to determine a same minimum processing rate for each packet processing engine of the two or more packet processing engines.

16. The network processor of claim 15 , wherein two or more of the packet processing engines have substantially similar optimal rates for energy efficiency, the rate controller is further operable to determine the minimum size of the subset using a same optimal rate for each packet processing engine of the two or more packet processing engines.

17. The network processor of claim 16 , wherein the rate estimator is further operable to determine the aggregate rate of time critical flows responsive to a change the time critical flows received by the network processor.

18. The network processor of claim 17 , wherein the rate estimator is further operable to determine the aggregate minimum rate responsive to a change in the delay tolerant flows received by the network processor.

19. The network processor of claim 18 , wherein the rate estimator is further operable to determine the aggregate rate of the time critical flows and the delay tolerant flows responsive to a change in either of the time critical flows or the delay tolerant flows.

20. A controller for a network processor having a plurality of packet processing engines, comprising:

a rate estimator for determining from a flow of IP packets received by the network processor:

an aggregate rate of time critical flows received by the network processor, and

an aggregate minimum rate that will meet respective quality of service requirements of delay tolerant flows received by the network processor;

a rate controller for determining a respective minimum processing rate for each packet processing engine such that a summation of the minimum processing rates is greater than or equal to a summation of the aggregate rate of time critical flows and the aggregate minimum rate; and

a dispatcher for scheduling processing of the delay tolerant flows by the packet processing engines to meet the respective quality of service requirements of the delay tolerant flows.

Assignments (14)
PATENT SECURITY AGREEMENT Recorded Aug 6, 2024
From: RPX CORPORATION; RPX CLEARINGHOUSE LLC
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 068328/0674 →
RELEASE OF LIEN ON PATENTS Recorded Aug 5, 2024
From: BARINGS FINANCE LLC
To: RPX CORPORATION
Reel/Frame 068328/0278 →
PATENT SECURITY AGREEMENT Recorded Apr 22, 2023
From: RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 063429/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 9, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA INC.
Reel/Frame 033949/0531 →
SECURITY INTEREST Recorded Mar 7, 2013
From: ALCATEL-LUCENT USA INC.
To: CREDIT SUISSE AG
Reel/Frame 030510/0627 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2011
From: ALCATEL-LUCENT USA INC.
To: ALCATEL LUCENT
Reel/Frame 027003/0423 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 4, 2010
From: LEE, UICHIN; RIMAC, IVICA; FRIEDRICH HILT, VOLKER
To: ALCATEL-LUCENT USA, INC.
Reel/Frame 024488/0157 →