×

System and method for throttling service requests using work-based tokens

  • US 9,419,904 B2
  • Filed: 02/09/2015
  • Issued: 08/16/2016
  • Est. Priority Date: 12/15/2011
  • Status: Active Grant
First Claim
Patent Images

1. A method, comprising:

  • performing by a computer system that provides storage services to clients;

    receiving a request to read or write data on behalf of a client;

    determining whether at least one token is present in a token bucket, wherein each token in the token bucket represents a unit of work for an input/output (I/O) operation in terms of a fixed amount of data transferred;

    in response to determining that at least one token is present in the token bucket;

    accepting the received request for servicing;

    deducting an initial number of tokens from the token bucket;

    servicing the received request, wherein said servicing comprises transferring a particular amount of data, and wherein the amount of data transferred in servicing different service requests is non-uniform; and

    determining that the particular amount of data transferred is at least a threshold amount more or at least a threshold amount less than the transferred data amount represented by the initial number of tokens; and

    in response to determining that the particular amount of data transferred is at least the threshold amount more or at least the threshold amount less than the transferred data amount represented by the initial number of tokens, deducting an additional number of tokens from the token bucket or replacing a number of tokens in the token bucket, wherein the additional number of tokens deducted or the number of tokens replaced represents the difference between the particular amount of data transferred and the transferred data amount represented by the initial number of tokens.

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