US20060095686A1

Management of I/O operations in data storage systems

Claim Score by NHIP

Read claim 23, the broadest

Abstract

The invention relates to management of I/O in data storage systems. In an embodiment, the invention provides a data storage subsystem processing I/O requests each having a priority, comprising a processor, a memory coupled to the processor, a disk array, an array controller coupled to the processor and the disk array, a network interface, coupled to the processor, to receive an I/O request with a priority, and a program in the memory for managing the I/O request based on the priority, a clip level of the priority, the total workload in the data storage subystem, and processing I/O requests based on priority, workload clip levels, and fairness levels. The invention also contemplates the use of static and dynamic adjusted clip levels. The invention also relates to a method of managing I/O requests, comprising receiving an I/O request, determining the priority of the I/O request, comparing the total workload to the clip level for the priority, and processing the I/O request if the total workload is below the clip level or the priority workload is below a fairness level.

Term

0.3 yearsto projected expiry

Projected expiry 2 January 2027, counted from filing; an application has no term until it is granted.

  1. Priority and filed
  2. Published
  3. Today
  4. Projected expiry

27 claims: 6 independent, 21 dependent

  1. 1
    A data storage subsystem processing I/O requests each having a priority, comprising:a processor;a memory coupled to the processor;a storage device;a controller coupled to the processor and the storage device;a network interface, coupled to the processor, to receive an I/O request with a priority;and a program in the memory for managing the I/O request based on the priority of the I/O request, a clip level for the priority, the total workload in the data storage subsystem, and a comparison of the clip level to the total workload.
  2. 12
    A data storage subsystem, comprising:a processor;a memory coupled to the processor;a disk array;an array controller coupled to the processor and the disk array;a network interface coupled to the processor to receive a high, medium, and low priority I/O request;and a program in memory for managing the high, medium, and low priority I/O requests by comparing the total workload to a high, medium, and low priority clip level, respectively.
  3. 18
    A data storage subsystem, comprising:a processor;a memory coupled to the processor;a disk array;an array controller coupled to the processor and the disk array;a network interface coupled to the processor to receive a plurality of I/O requests from hosts, wherein each I/O request has a priority;and wherein the memory contains a total workload, a clip level, and a fairness level for each priority of request, wherein the data storage subsystem manages each priority of I/O request according to the total workload, the clip level and the fairness level.
  4. 23
    Broadest claimClaim Score 85, broad(NHIP)A method of managing I/O requests in a data storage subsystem, comprising:receiving an I/O request;determining priority of the I/O request;comparing the total workload in data storage subsystem to the clip level for the priority;and processing the I/O request if the total workload in the data storage subsystem is below the clip level.
  5. 24
    A method of managing I/O requests in a data storage subsystem, comprising:receiving an I/O request;determining the priority of the I/O request;determining if the total workload is not greater than the clip level for the priority;if the total workload is not greater than the priority clip level, processing the I/O request as follows: incrementing by one the number of the priority workload and the total workload;processing the I/O request by accessing a storage device;decrementing by one the number of the priority workload and the total workload, since the data storage subsystem has completed processing the I/O request;and acknowledging the I/O request is completed by sending a complete response.
  6. 26
    A method of managing I/O requests in a data storage subsystem, comprising:receiving high and low priority I/O requests;providing high and low priority default values and adjusted high and low clip levels;determining the high and low priority workload;determining that the high priority workload is a lower range;and increasing the low priority clip level from its default value to its adjusted clip level so the data storage subsystem can process more low priority I/O requests.