×

Flow control with a dynamic window in a storage system with latency guarantees

  • US 10,048,874 B1
  • Filed: 06/29/2016
  • Issued: 08/14/2018
  • Est. Priority Date: 06/29/2016
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • receiving one or more input/output (I/O) requests by a storage system having at least one storage cluster, each of the received I/O requests associated with a storage cluster;

    performing the I/O request with dynamic flow control by;

    determining a latency associated with the one or more received I/O requests during at least one monitoring interval;

    tracking I/O requests to the storage cluster;

    if a received I/O request exceeds a choker threshold value of the storage cluster, queuing the received I/O request, otherwise, performing the received I/O request,wherein determining the latency associated with the one or more received I/O requests during at least one monitoring interval comprises;

    determining an end-to-end latency of each of the one or more received I/O requests performed for the storage cluster during the monitoring interval; and

    determining latency for the storage cluster as at least one of;

    a peak latency for the storage cluster during the monitoring interval, and an average latency for the storage cluster during the monitoring interval; and

    based upon the determined latency for the storage cluster, adjusting the choker threshold value associated with the storage cluster, wherein adjusting the choker threshold value comprises;

    if the determined latency for the storage cluster is below a first latency threshold value, increasing the choker threshold value by a first step value; and

    if the determined latency for the storage cluster is above a second latency threshold value, decreasing the choker threshold value by a second step value,wherein the choker threshold value of the storage cluster comprises one of;

    a maximum number of concurrent I/O requests that can be processed by the storage cluster, and a maximum amount of data that can be processed by the storage cluster.

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