IP Library › Granted Patent US 8,537,846
Granted Patent B2
US 8,537,846 · App. 12/768,722 · Granted Sep 17, 2013

Dynamic priority queue level assignment for a network flow

Inventors: Puneet Sharma (Palo Alto, CA); Jean Tourrilhes (Mountain View, CA); Praveen Yalagandula (Redwood City, CA); Jung Gun Lee (Palo Alto, CA); Sung-Ju Lee (San Francisco, CA); Sujata Banerjee (Palo Alto, CA)
Assignee: Hewlett-Packard Development Company, L.P.
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,537,846
App. No.
12/768,722
Granted
Sep 17, 2013
Kind
B2
Abstract

Forwarding a flow in a network includes receiving the flow at a switch, determining an optimized priority queue level of the flow at the switch, and forwarding the flow via the switch using an optimized priority queue level of the flow at the switch. The flow passes through a plurality of switches, including the switch, in the network, and the optimized priority queue level of the flow at the switch is different from a priority queue level of the flow at a second switch of the plurality of switches. The second switch routes the flow at the second switch using the different priority queue level for the flow.

Claims (31)

1. A method of managing a flow through a network, comprising:

receiving, at a controller, network performance data from a plurality of switches of the network, wherein the flow passes through the plurality of switches;

determining, with the controller, respective priority queue levels for the flow through each of the plurality of switches based on the network performance data;

mapping, with the controller, the flow to an optimized priority queue level of the flow at each of the plurality of switches, wherein mapping the flow includes modifying virtual local area network (VLAN) priority ceiling protocol (PCP) bits on packets of the flow based on the mappings while the flow passes through the plurality of switches; and

assigning, with the controller, one of the respective priority queue levels to each switch.

2. The method of claim 1 , wherein the optimized priority queue level of the flow at each of the plurality of switches is determined based on at least one other flow being routed by each respective switch.

3. The method of claim 1 , wherein the method includes modifying Type of Service (ToS) bits on the packets of the flow based on the mappings while the flow passes through the plurality of switches.

4. The method of claim 1 , wherein the method includes placing a packet of the flow in the priority queue level of a priority queue at a switch, wherein the priority queue has a plurality of priority levels.

5. The method of claim 1 , wherein the method includes determining, with the controller, the priority queue level of the flow at a switch based on a Quality of Service (QoS) requirement for the flow.

6. The method of claim 1 , wherein the method includes determining, with the controller, the priority queue level of the flow at a switch based on a current workload in the switch.

7. The method of claim 6 , wherein the method includes updating, with the controller, the priority queue level of the flow at the switch relative to a priority queue level of another flow at the switch.

8. The method of claim 1 , wherein the method includes determining, with the controller, the priority queue level of the flow at a switch that maximizes a Quality of Service (QoS) requirement for the flow in the network.

9. A system for managing a flow through a network, comprising:

a plurality of switches of the network, wherein each switch is configured to modify virtual local area network (VLAN) priority ceiling protocol (PCP) bits on packets of the flow based on a priority queue mapping for a next switch in a flow path associated with the flow; and

a controller, configured to:

receive, from the plurality of switches, network performance data, wherein the flow passes through the plurality of switches;

determine respective priority queue levels for the flow through each switch based on the network performance data; and

assign one of the respective priority queue levels to each switch.

10. The system of claim 9 , wherein each switch is configured to modify Type of Service (ToS) bits on the packets of the flow based on the priority queue mapping for a next switch in a flow path associated with the flow.

11. The system of claim 9 , wherein each switch is configured to place a packet of the flow in the priority queue level of a priority queue at the switch, wherein the priority queue includes a plurality of priority levels.

12. The system of claim 9 , wherein the controller is configured to determine the priority queue level of the flow at a switch based on a QoS requirement associated with the flow.

13. The system of claim 12 , wherein the controller is configured to:

determine the priority queue level of the flow at the switch based on a current workload in the switch;

update the priority queue level of the flow at the switch relative to a priority queue level of another flow at the switch; and

route the flow via the switch based on the updated priority queue level of the flow at the switch.

14. A non-transitory computer-readable medium having instructions stored thereon, the instructions executable by a processor to:

receive, at a controller, network performance data from each of a plurality of switches of a network, wherein a flow passes through the plurality of switches;

determine, with the controller, respective priority queue levels for the flow through each switch based on the network performance data;

map the flow to a priority queue level of the flow at each of the plurality of switches, wherein the instructions include instructions to modify a virtual local area network (VLAN) priority ceiling protocol (PCP) bit on packets of the flow based on the mappings while the flow passes through the plurality of switches; and

assign, with the controller, one of the respective priority queue levels to each switch.

15. The non-transitory computer readable medium of claim 14 , wherein the instructions include instructions to modify a Type of Service (ToS) bit on packets of the flow based on the mappings while the flow passes through the plurality of switches.

Assignments (2)
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 Apr 28, 2010
From: SHARMA, PUNEET; TOURRILHES, JEAN; YALAGANDULA, PRAVEEN; LEE, JUNG GUN; LEE, SUNG-JU; BANERJEE, SUJATA
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 024343/0206 →
Continuity (1)
Related Publication 20110261831A1 · Oct 27, 2011