×

System and method for utilizing informed throttling to guarantee quality of service to I/O streams

  • US 7,519,725 B2
  • Filed: 05/23/2003
  • Issued: 04/14/2009
  • Est. Priority Date: 05/23/2003
  • Status: Expired due to Fees
First Claim
Patent Images

1. A processor-implemented method of utilizing informed throttling to guarantee quality of service to a plurality of clients, comprising:

  • for each client comparing a performance level received by the client to a corresponding contracted service level;

    based on the compared performance level, determining if the client qualifies as a victim whose received performance level is less than the corresponding contracted service level, wherein determining if the client qualifies as a victim, further comprises;

    classifying the client into one of plurality of heuristic-dependent categories, including a QoS_Met category indicative that the client'"'"'s demand does not exceed the corresponding contracted service level, and that the client'"'"'s demand is properly met, QoS_Fail category indicative that the client'"'"'s demand does not exceed the corresponding contracted service level, and that the client'"'"'s demand improperly not met, a QoS_Exempt category indicative that the client'"'"'s demand exceeds the corresponding contracted service level, and that the client'"'"'s is properly not met, and a QoS_Excess category indicative that the client'"'"'s demand exceeds the corresponding contracted service level, and that the client'"'"'s demand is properly met;

    each of the heuristic-dependent categories dependent upon a demand by the client, a preexisting specification of a quality of service specified by the client, and a current performance experienced by the client; and

    computing, for each of a plurality of QoS groups having a common service level agreement (SLA);

    a delivery summary of an observed average service time divided by an agreed upon maximum service time;

    a load summary of an observed number of input/outputs (I/Os) per second, divided by an agreed upon maximum number of I/Os per second; and

    a compound summary comprising a composite metric reflective of an extent to which the QoS group is satisfying the agreed-upon bounds on offered load and from the level of service received by its I/Os;

    based on the compared performance level, identifying one or more candidates for throttling in response to an I/O stream receiving insufficient resources by determining if the client qualifies as a candidate whose received performance level is better than the corresponding contracted service level; and

    selectively and dynamically issuing a throttling command to the candidate client; and

    providing a quality of service enforcement point by concurrently monitoring a plurality of I/O streams to candidate clients and by concurrently throttling commands to the candidate clients.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×