IP Library Patent Application 13690426
Patent Application
App. No. 13/690,426

RATE LIMIT MANAGERS TO ASSIGN NETWORK TRAFFIC FLOWS

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.
13/690,426
Abstract

A rate limit manager is to assign network traffic flows to hardware rate limiters. The network traffic flows are associated with rate limit values. The rate limit manager determines threshold values to assign flow(s) to hardware rate limiters, and the rate limit manager is to assign flow(s) to a last remaining unassigned hardware rate limiter independent of the threshold value.

Claims (26)

1 . A system comprising:

a rate limit manager to assign a plurality of network traffic flows to a plurality of hardware rate limiters, wherein the plurality of hardware rate limiters is to enforce rate limits of a plurality of network traffic flows, wherein each of the plurality of network traffic flows is associated with a corresponding rate limit value;

wherein the rate limit manager is to determine, for an unassigned one of the plurality of hardware rate limiters, a threshold value; and to assign a group of at least one of the plurality of flows to the unassigned hardware rate limiter based on the threshold value;

wherein the rate limit manager is to assign, to a last remaining unassigned hardware rate limiter, at least one of the remaining unassigned flows, independent of the threshold value.

2 . The system of claim 1 , wherein the threshold value is based on a sum of rate limit values from unassigned flows divided by a number of unassigned hardware rate limiters.

3 . The system of claim 1 , wherein the group is based on a fewest number of at least one of the plurality of flows whose sum of at least one of the plurality of corresponding rate limit values is to meet or exceed the threshold

4 . The system of claim 1 , wherein the rate limit manager is to direct the hardware rate limiter to enforce a shared rate limit for its assigned flows, based on a product of the number of its assigned flows and a highest rate limit value among the assigned flows.

5 . The system of claim 1 , wherein the threshold value is based on a function of at least one of rate limit demand, port, tenant identification, and preferred status associated with the flows.

6 . A method of assigning a plurality of network traffic flows to a plurality of hardware rate limiters, comprising:

determining, by a rate limit manager, a threshold value for an unassigned hardware rate limiter based on unassigned flows and unassigned hardware rate limiters;

assigning, by the rate limit manager, a group of unassigned flows to the unassigned hardware rate limiter, based on the threshold value;

determining, by the rate limit manager, a last remaining unassigned hardware rate limiter; and

assigning, by the rate limit manager, to the last remaining unassigned hardware rate limiter, at least one of the remaining unassigned flows, independent of the threshold.

7 . The method of claim 6 , wherein the plurality of network traffic flows are associated with corresponding respective rate limit values, the method further comprising sorting the unassigned flows based on their corresponding respective rate limit values, and determining the group based on including a next unassigned flow corresponding to the next largest sorted rate limit value.

8 . The method of claim 6 , wherein the plurality of network traffic flows are associated with corresponding respective rate limit demands, the method further comprising sorting the unassigned flows based on their corresponding respective rate limit demands, and determining the group based on including a next unassigned flow corresponding to the next largest sorted rate limit demand.

9 . The method of claim 6 , wherein determining the group of unassigned flows to be assigned includes selecting a flow to be assigned based on a tenant identification corresponding to a tenant associated with the flow.

10 . The method of claim 6 , wherein determining the group of unassigned flows to be assigned includes selecting a flow to be assigned based on a difference between the rate limit value associated with the flow to be assigned, and a mean of rate limit values of the group.

11 . The method of claim 6 , wherein determining the group of unassigned flows to be assigned includes identifying a rate limit demand associated with a flow to be assigned, and selecting the flow to be assigned based on a difference between the rate limit demand of the flow to be assigned, and a mean of rate limit demands of the group.

12 . The method of claim 6 , wherein determining the group of unassigned flows to be assigned includes selecting a flow to be assigned based on a preferred status associated with the flow to be assigned.

13 . The method of claim 6 , wherein determining the group of unassigned flows to be assigned includes selecting a flow to be assigned based on a port associated with the flow to be assigned, wherein the rate limit value is a function of the port.

14 . A non-transitory machine-readable storage medium encoded with instructions that if executed cause a system to:

determine, for an unassigned hardware rate limiter, a threshold value associated with an unassigned plurality of network traffic flows;

sort the unassigned flows according to their respective associated rate limit values;

determine, by a rate limit manager, a group of unassigned flows to be assigned to the unassigned hardware rate limiter, based on the unassigned flows taken in sorted order; and

assign the group to the unassigned hardware rate limiter.

15 . The storage medium of claim 14 , further comprising instructions that cause the system to determine the threshold value based on a sum of rate limit values for unassigned flows divided by a number of unassigned hardware rate limiters, and determine the group to be assigned based on the unassigned flows whose sum of at least one of the plurality of corresponding rate limit values is to meet or exceed the threshold.

Assignments (3)
CHANGE OF ADDRESS Recorded Dec 23, 2016
From: FUJITSU SEMICONDUCTOR LIMITED
To: FUJITSU SEMICONDUCTOR LIMITED
Reel/Frame 041188/0401 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 8, 2013
From: WEBB, KEVIN CHRISTOPHER; YALAGANDULA, PRAVEEN; TOURRILHES, JEAN; BANERJEE, SUJATA; MOGUL, JEFFREY C.; SHARMA, PUNEET
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 029948/0655 →