IP Library Granted Patent US 9,424,059
Granted Patent B1
US 9,424,059 · App. 14/206,774 · Granted Aug 23, 2016

System and methods for implementing quality of service in a networked virtualization environment for storage management

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,424,059
App. No.
14/206,774
Filed
Mar 12, 2014
Granted
Aug 23, 2016
Kind
B1
Examiner
DAS, CHAMELI
Art Unit
2197
USPC
718/1
Abstract

A method for implementing quality of service (QoS) for network communications sharing a network in a networked virtualization environment for storage management, includes receiving a network communication from a controller VM, identifying whether the network communication is a data communication type issued by a user VM or a control communication type issued by the controller VM, applying a set of rules to the network communication based on its communication type, and placing the network communication in a prioritization class queue based on a result of applying the set of rules to the network communication.

Claims (45)

1. A method for implementing quality of service (QoS) for network communications sharing a network in a networked virtualization environment for storage management, comprising:

receiving, from a first controller virtual machine (VM), a network communication to be sent to a second controller VM;

determining whether the network communication is a data communication type issued by a user virtual machine (VM) or a control communication type issued by the first controller VM and addressed to the second controller VM;

applying a set of rules to the network communication based at least in part on whether the network communication is a data type communication issued by a user VM or a control communication type issued by the first controller VM and addressed to the second controller VM; and

placing the network communication in a prioritization class queue based on a result of applying the set of rules to the network communication.

2. The method of claim 1 , wherein applying the set of rules to the network communication based on its communication type comprises:

identifying a QoS policy for the user VM issuing the network communication when the network communication is the data communication type; and

applying the set of rules against the QoS policy.

3. The method of claim 2 , wherein identifying the QoS policy for the user VM issuing the network communication comprises locating a QoS hint associated with the network communication.

4. The method of claim 3 , wherein the QoS hint is associated with the network communication by the first controller VM.

5. The method of claim 1 , wherein applying the set of rules to the network communication based on its communication type comprises:

identifying a control communication prioritization type for the network communication when the network communication is the control communication type; and

applying the set of rules against the network communication using the control communication prioritization type.

6. The method of claim 1 , wherein the result of applying the set of rules to the network communication based on its communication is a score.

7. The method of claim 6 , wherein placing the network communication in the prioritization class queue based on the score comprises:

categorizing the network communication into a prioritization class based on the score; and

placing the network communication into a queue of the prioritization class based on the score.

8. The method of claim 1 , wherein the prioritization class queue belongs to one of a plurality of queue prioritization classes.

9. The method of claim 8 , wherein the plurality of queue prioritization classes are associated with different network parameters.

10. The method of claim 8 , wherein at least one of the plurality of queue prioritization classes comprises two or more queues, the two or more queues having different scheduling policies.

11. The method of claim 1 , wherein the network communication is the data communication type and wherein the network communication is directed at virtual storage devices managed by a different controller VM.

12. The method of claim 11 , wherein the network communication is the data communication type and wherein the network communication is directed at virtual storage devices managed by the controller VM.

13. A computer program product embodied on a non-transitory computer readable medium, the non-transitory computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a method for implementing quality of service (QoS) for network communications in a networked virtualization environment for storage management, comprising:

receiving, from a first controller virtual machine (VM), a network communication to be sent to a second controller VM;

determining whether the network communication is a data communication type issued by a user virtual machine (VM) or a control communication type issued by the first controller VM and addressed to the second controller VM;

applying a set of rules to the network communication based at least in part on whether the network communication is a data type communication issued by a user VM or a control communication type issued by the first controller VM and addressed to the second controller VM; and

placing the network communication in a prioritization class queue based on a result of applying the set of rules to the network communication.

14. The computer program product of claim 13 , wherein applying the set of rules to the network communication based on its communication type comprises:

identifying a QoS policy for the user VM issuing the network communication when the network communication is the data communication type; and

applying the set of rules against the QoS policy.

15. The computer program product of claim 14 , wherein identifying the QoS policy for the user VM issuing the network communication comprises locating a QoS hint associated with the network communication.

16. The computer program product of claim 15 , wherein the QoS hint is associated with the network communication by the first controller VM.

17. The computer program product of claim 13 , wherein

applying the set of rules to the network communication based on its communication type comprises;

identifying a control communication prioritization type for the network communication when the network communication is the control communication type; and

applying the set of rules against the network communication using the control communication prioritization type.

18. The computer program product of claim 13 , wherein the result of applying the set of rules to the network communication based on its communication is a score.

19. The computer program product of claim 18 , wherein placing the network communication in the prioritization class queue based on the score comprises:

categorizing the network communication into a prioritization class based on the score; and

placing the network communication into the prioritization class queue of the prioritization class based on the score.

20. The computer program product of claim 13 , wherein the prioritization class queue belongs to one of a plurality of queue prioritization classes.

21. The computer program product of claim 20 , wherein the queue prioritization classes are associated with different network parameters.

22. The computer program product of claim 20 , wherein at least one of the plurality of queue prioritization classes comprises two or more queues, the two or more queues having different scheduling policies.

23. The computer program product of claim 13 , wherein the network communication is the data communication type and wherein the network communication is directed at virtual storage devices managed by a different controller VM.

24. The computer program product of claim 13 , wherein the network communication is the data communication type and wherein the network communication is directed at virtual storage devices managed by the controller VM.

Assignments (4)
SECURITY INTEREST Recorded Feb 13, 2025
From: NUTANIX, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 070206/0463 →
RELEASE OF SECURITY INTEREST Recorded Sep 28, 2016
From: GOLDMAN SACHS SPECIALTY LENDING GROUP, L.P., AS AGENT
To: NUTANIX, INC.
Reel/Frame 040168/0586 →
SECURITY INTEREST Recorded Apr 15, 2016
From: NUTANIX, INC.
To: GOLDMAN SACHS SPECIALTY LENDING GROUP, L.P., AS AGENT
Reel/Frame 038440/0712 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2014
From: SIVAPRAKASAM, SURESH; GILL, BINNY SHER
To: NUTANIX, INC.
Reel/Frame 033041/0428 →