DISTRIBUTED DEMAND-BASED STORAGE QUALITY OF SERVICE MANAGEMENT USING RESOURCE POOLING
First Claim
1. A method for providing quality of service (QoS) for clients running on host computers to access a common resource, the method comprising:
- computing a current capacity for the common resource based a global average latency for accessing the common resource by the clients;
computing an entitlement of each client for the common resource based on the computed current capacity and demands of the clients for the common resource;
assigning a portion of the computed current capacity for the common resource to a particular host computer using the computed entitlement of each client running on the particular host computer; and
allocating the portion of the computed current capacity among the clients running on the particular host computer.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method for providing quality of service (QoS) for clients running on host computers to access a common resource uses a resource pool module and a local scheduler in at least one of the host computers. The resource pool module operates to compute an entitlement of each client for the common resource based on a current capacity for the common resource and demands of the clients for the common resource. In addition, the resource pool module operates to assign a portion of the computed current capacity for the common resource to a particular host computer using the computed entitlement of each client running on the particular host computer. The local scheduler operates to allocate the portion of the computed current capacity among the clients running on the particular host computer.
68 Citations
30 Claims
-
1. A method for providing quality of service (QoS) for clients running on host computers to access a common resource, the method comprising:
-
computing a current capacity for the common resource based a global average latency for accessing the common resource by the clients; computing an entitlement of each client for the common resource based on the computed current capacity and demands of the clients for the common resource; assigning a portion of the computed current capacity for the common resource to a particular host computer using the computed entitlement of each client running on the particular host computer; and allocating the portion of the computed current capacity among the clients running on the particular host computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system comprising:
-
at least one processor; a plurality of clients operably connected to the at least one processor; a resource interface with a host queue to store requests from the clients to access a common resource; a resource pool module operably connected to the at least one processor, the resource pool module comprising; a first component configured to compute a current capacity for the common resource based a global average latency for accessing the common resource by the clients; a second component configured to compute an entitlement of each client for the common resource based on the computed current capacity and demands of the clients for the common resource; and a third component configured to assign a portion of the computed current capacity for the common resource to a host computer using the computed entitlement of each client; and a scheduler operably connected to the resource pool module, the schedule being configured to allocate the portion of the computed current capacity among the at least one client running on the host computer. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer-readable storage medium containing program instructions for providing quality of service to clients in host computers to access a common resource, wherein execution of the program instructions by one or more processors of the host computers the one or more processors causes the one or more processors to perform steps comprising:
-
computing a current capacity for the common resource based a global average latency for accessing the common resource by the clients; computing an entitlement of each client for the common resource based on the computed current capacity and demands of the clients for the common resource; assigning a portion of the computed current capacity for the common resource to a particular host computer using the computed entitlement of each client running on the particular host computer; and allocating the portion of the computed current capacity among the clients running on the particular host computer. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
Specification