IP Library Granted Patent US 8,879,393
Granted Patent B2
US 8,879,393 · App. 13/485,363 · Granted Nov 4, 2014

Quality of service (QoS) configuration for network devices with multiple queues

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,879,393
App. No.
13/485,363
Granted
Nov 4, 2014
Kind
B2
Abstract

A network device implements automatic configuration of Quality of Service (QoS) parameters in response to operator specification of a relatively few and easily understandable “high level” parameters such as, for example, latency requirements or an acceptable rate of packet drops. In one implementation, a network device may receive user preference information that relates to a Quality of Service (QoS) for network traffic passing through the network device and may measure traffic patterns through the network device. The device further generates a configuration template based on the measured traffic patterns and on the user preference information transmit the data in an order of transmission that is prioritized according to a bandwidth allocation policy defined by the configuration template.

Claims (87)

1. A method comprising:

setting, by a device, a first queue, of a plurality of queues, as an active queue;

calculating, by the device, an average traffic rate through the first queue,

the calculating including:

setting the first queue to a first rate limit;

measuring a drop rate of the first queue based on the first rate limit;

lowering the first rate limit;

measuring the drop rate resulting from lowering the first rate limit; and

using the drop rate resulting from lowering the first rate limit when calculating the average traffic rate;

measuring, by the device and using the average traffic rate, traffic patterns through the device;

configuring, by the device, one or more policies based on the measured traffic patterns and information relating to network traffic passing through the device; and

routing, by the device, traffic through the device based on the configured one or more policies.

2. The method of claim 1 , where, when setting the first queue as the active queue, the method further comprises:

disabling one or more second queues of the plurality of queues.

3. The method of claim 1 , where the first rate limit corresponds to a bandwidth limit associated with the first queue.

4. The method of claim 1 , where the average traffic rate corresponds to a rate limit associated with the first queue.

5. The method of claim 1 , further comprising:

setting a second queue, of the plurality of queues, as the active queue;

calculating an average traffic rate through the second queue;

setting a third queue, of the plurality of queues, as the active queue; and

calculating an average traffic rate through the third queue.

6. The method of claim 5 , further comprising:

assigning a first queue weight to the first queue;

assigning a second queue weight to the second queue; and

assigning a third queue weight to the third queue.

7. The method of claim 6 , where, when assigning the first queue weight, the second queue weight, and the third queue weight, the method further includes:

assigning the first queue weight, the second queue weight, and the third queue weight such that a higher priority queue, associated with one of the first queue, the second queue, or the third queue, has a lower drop probability than others of the first queue, the second queue, or the third queue.

8. A device comprising:

a processor to:

set a first queue, of a plurality of queues, as an active queue;

calculate an average traffic rate through the first queue,

when calculating the average traffic rate through the first queue, the processor is further to:

set the first queue to a first rate limit;

measure a drop rate of the first queue based on the first rate limit;

lower the first rate limit;

measure the drop rate resulting from lowering the first rate limit; and

use the drop rate resulting from lowering the first rate limit when calculating the average traffic rate;

measure, using the average traffic rate, traffic patterns through the device;

configure one or more policies based on the measured traffic patterns and information relating to network traffic passing through the device; and

route traffic through the device based on the configured one or more policies.

9. The device of claim 8 , where, when setting the first queue as the active queue, the processor is further to:

disable one or more second queues of the plurality of queues.

10. The device of claim 8 , where the first rate limit corresponds to a bandwidth limit associated with the first queue.

11. The device of claim 8 , where the average traffic rate corresponds to a rate limit associated with the first queue.

12. The device of claim 8 , where the processor is further to:

set a second queue, of the plurality of queues, as the active queue;

calculate an average traffic rate through the second queue;

set a third queue, of the plurality of queues, as the active queue; and

calculate an average traffic rate through the third queue.

13. The device of claim 12 , where the processor is further to:

assign a first queue weight to the first queue;

assign a second queue weight to the second queue; and

assign a third queue weight to the third queue.

14. The device of claim 13 , where, when assigning the first queue weight, the second queue weight, and the third queue weight, the processor is further to:

assign the first queue weight, the second queue weight, and the third queue weight such that a higher priority queue, associated with one of the first queue, the second queue, or the third queue, has a lower drop probability than others of the first queue, the second queue, or the third queue.

15. A non-transitory computer-readable medium storing instructions, the instructions comprising:

one or more instructions which, when executed by at least one processor of a device, cause the at least one processor to:

set a first queue, of a plurality of queues, as an active queue;

calculate an average traffic rate through the first queue,

the one or more instructions to calculate the average traffic rate through the first queue including:

one or more instructions to set the first queue to a first rate limit;

one or more instructions to measure a drop rate of the first queue based on the first rate limit;

one or more instructions to lower the first rate limit;

one or more instructions to measure the drop rate resulting from lowering the first rate limit; and

one or more instructions to use the drop rate resulting from lowering the first rate limit when calculating the average traffic rate;

measure, using the average traffic rate, traffic patterns through the device;

configure one or more policies based on the measured traffic patterns and information relating to network traffic passing through the device; and

route traffic through the device based on the configured one or more policies.

16. The non-transitory computer-readable medium of claim 15 , where the instructions further include:

one or more instructions which, when executed by the at least one processor, cause the at least one processor to disable one or more second queues of the plurality of queues.

17. The non-transitory computer-readable medium of claim 15 , where

the first rate limit corresponds to a bandwidth limit associated with the first queue, and

the average traffic rate corresponds to a rate limit associated with the first queue.

18. The non-transitory computer-readable medium of claim 15 , where the instructions further include:

one or more instructions which, when executed by the at least one processor, cause the at least one processor to:

set a second queue, of the plurality of queues, as the active queue;

calculate an average traffic rate through the second queue;

set a third queue, of the plurality of queues, as the active queue; and

calculate an average traffic rate through the third queue.

19. The non-transitory computer-readable medium of claim 18 , where the instructions further include:

one or more instructions which, when executed by the at least one processor, cause the at least one processor to:

assign a first queue weight to the first queue;

assign a second queue weight to the second queue; and

assign a third queue weight to the third queue.

20. The non-transitory computer-readable medium of claim 19 , where the instructions further include:

one or more instructions which, when executed by the at least one processor, cause the at least one processor to:

assign the first queue weight, the second queue weight, and the third queue weight such that a higher priority queue, associated with one of the first queue, the second queue, or the third queue, has a lower drop probability than others of the first queue, the second queue, or the third queue.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →