Controlling I/O response time to meet service levels

US10282107B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10282107-B1
Application numberUS-201514985769-A
CountryUS
Kind codeB1
Filing dateDec 31, 2015
Priority dateDec 31, 2015
Publication dateMay 7, 2019
Grant dateMay 7, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Described are techniques for controlling I/O response time. It is determined whether a first observed I/O response time for a storage group exceeds I/O performance specified by a service level objective. If so, first processing may be performed to decrease I/O performance for the storage group. The first processing may include: for each I/O directed to the storage group that is received within a first subsequent time period, determining a first response time denoting an amount of time taken to service each I/O prior to returning a response for each I/O; determining whether the first response time for each I/O is less than a response time delay threshold; and if the first response time for each I/O is less than the response time delay threshold, applying a response time delay to each I/O prior to returning a response for each I/O.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of controlling I/O response time comprising: determining, for a time period, whether a first observed I/O response time for a storage group of one or more logical devices exceeds I/O performance specified by a service level objective, wherein the service level objective includes a minimum response time and a maximum response time; and responsive to the first observed I/O response time exceeding I/O performance of the service level objective for the time period, performing first processing to decrease I/O performance for the storage group, said first processing comprising: for each I/O directed to the storage group that is received by a data storage system within a first subsequent time period, determining a first response time denoting an amount of time taken to service said each I/O prior to returning a response for said each I/O, wherein the first response time is a total amount of elapsed time measured from a starting point in time when said each I/O is received by the data storage system to an end point in time when the data storage system is ready to return a response for said each I/O; determining whether the first response time for said each I/O is less than a response time delay threshold, wherein the response time delay threshold is an I/O response time that is selected in accordance with the minimum response time of the service level objective and that is less than the minimum response time of the service level objective; and if the first response time for said each I/O is less than the response time delay threshold that is an I/O response time less than the minimum response time of the service level objective, applying a response time delay to said each I/O prior to returning a response for said each I/O, wherein subsequent to the end point in time when the data storage system is ready to return a response for said each I/O, the data storage system waits an additional amount of time denoted by the response time delay prior to returning the response for said each I/O; and wherein the first processing includes additional processing that applies a plurality of response time delays, in a number of successive time periods subsequent to the first subsequent time period, to I/Os that are directed to the storage group and have associated response times less than the response time delay threshold, wherein said additional processing is performed until an observed I/O response time measured for the storage group for a time period is more than a delay removal threshold, wherein the delay removal threshold is more than the minimum response time of the service level objective and is less than the maximum response time of the service level objective. 2. The method of claim 1 , wherein said each I/O is delayed by a front end component by an amount of time denoted by the response time delay. 3. The method of claim 2 , wherein the front end component communicates with a host that sends said each I/O request to the data storage system providing physical storage for storing data of the storage group. 4. The method of claim 1 , wherein said additional processing further comprises: receiving a second observed I/O response time measured for the storage group for the first subsequent time period; determining whether the second observed I/O response time exceeds the delay removal threshold; and responsive to determining that the second observed I/O response time does not exceed the delay removal threshold, performing second processing comprising: for each I/O directed to the storage group that is received within a second subsequent time period, determining a second response time denoting an amount of time taken to service said each I/O prior to returning a response for said each I/O; determining whether the second response time for said each I/O is less than the response time delay threshold; and if the second response time for said each I/O is less than the response time delay threshold, applying a second response time delay to said each I/O prior to returning a response for said each I/O, said second response time delay being larger than a first response time delay equal to the response time delay. 5. The method of claim 4 , wherein the first response time delay is an initial value and the second response time delay is determined in accordance with the initial value, the response time delay threshold and a number of consecutive time periods for which an observed I/O response time for the storage group does not exceed the delay removal threshold. 6. The method of claim 5 , wherein a plurality of observed I/O response times are determined for a plurality of subsequent time periods for the storage group and each of the plurality of observed I/O response times does not exceed the delay removal threshold, and the method further includes performing other processing for a first of the plurality of subsequent time periods comprising: determining a current response time delay in accordance with an initial value used for a response time delay for the storage group, the response time delay threshold and a number of time periods for which an observed I/O response time for the storage group has not exceeded the delay removal threshold; and applying the current response time delay to each I/O that is directed to the storage group, received in the first of the plurality of subsequent time periods, and has a measured response time denoting an amount of time taken to service said each I/O prior to returning a response for said each I/O and wherein the measured response time is less than the response time delay threshold for the storage group. 7. The method of claim 6 , further comprising: determining that a next observed I/O response time for the storage group exceeds the delay removal threshold and performing other processing to apply another time delay that is less than a maximum response time delay applied previously in any of the plurality of subsequent time periods for the storage group. 8. The method of claim 1 , wherein the observed I/O response time exceeds performance of the service level objective when the observed I/O response time is less than the minimum response time. 9. The method of claim 1 , wherein the first observed I/O response time is an average I/O response time for I/Os directed to the storage group. 10. The method of claim 1 , wherein each of the logical devices of the storage group is a virtually provisioned logical device. 11. The method of claim 1 , wherein the method of controlling I/O response time is performed by a data storage optimizer that performs data movement optimizations, and the method further comprises: determining whether there is a demotion that can be performed for the storage group to move data of the storage group from a first storage tier to a second storage tier that has a lower performance ranking that the first storage tier; and if it is determined that there is no demotion that can be performed for the storage group, performing said first processing to decrease I/O performance for the storage group. 12. The method of claim 11 , further comprising: if it is determined that there is a demotion that can be performed for the storage group, performing said demotion to decrease I/O performance for the storage group. 13. The method of claim 1 , wherein the method further comprises: determining for a first time period whether a corresponding observed I/O response time for the storage group exceeds performance of the service level objective; and responsive to determining the corresponding observed I/O response time for the storage group exceeds performance of the service level objective, selecting,

Assignees

Inventors

Classifications

  • Migration mechanisms · CPC title

  • G06F3/0611Primary

    in relation to response time · CPC title

  • Single storage device · CPC title

  • by allocating resources to storage systems · CPC title

  • Disk arrays, e.g. RAID, JBOD · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10282107B1 cover?
Described are techniques for controlling I/O response time. It is determined whether a first observed I/O response time for a storage group exceeds I/O performance specified by a service level objective. If so, first processing may be performed to decrease I/O performance for the storage group. The first processing may include: for each I/O directed to the storage group that is received within …
Who is the assignee on this patent?
Emc Ip Holding Co Llc
What technology area does this patent fall under?
Primary CPC classification G06F3/0611. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 07 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).