Preventing input/output (I/O) traffic overloading of an interconnect channel in a distributed data storage system

US10318467B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10318467-B2
Application numberUS-201715798802-A
CountryUS
Kind codeB2
Filing dateOct 31, 2017
Priority dateMar 9, 2015
Publication dateJun 11, 2019
Grant dateJun 11, 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.

Methods, computing systems and computer program products implement embodiments of the present invention that include configuring distributed storage system resources for a distributed storage system. Examples of the storage system resources include a plurality of network segments, one or more network devices coupled to the network, and multiple nodes coupled to the network, the nodes including both frontend and backend nodes. Upon receiving, by a given frontend node in the distributed storage system, an input/output (I/O) request, one or more of the distributed storage system resources required to process the I/O request are identified, and a respective load that the I/O request will generate on each of the identified distributed storage system resources is calculated. The distributed storage system processes the I/O request upon detecting that the respective loads are less than respective available capacities of the identified distributed storage system resources.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method, comprising: configuring distributed storage system resources for a distributed storage system; receiving, by a given node of the distributed storage system, an input/output (I/O) request; identifying one or more of the distributed storage system resources required to process the I/O request; calculating a respective load that the I/O request will generate on each of the identified distributed storage system resources; and processing the I/O request upon detecting that the respective loads are less than respective available capacities of the identified distributed storage system resources; wherein detecting that the respective loads are less than respective available capacities of the distributed storage system resources comprises identifying, by the given node, one or more processes currently employing the identified distributed storage system resources, and determining, for each of the one or more processes, a respective utilization for each of the identified distributed storage system resources. 2. The method according to claim 1 , wherein the distributed storage system resources comprises a network comprising a plurality of network segments, multiple nodes coupled to the network, and one or more network devices coupled to the network. 3. The method according to claim 2 , wherein each of the nodes is selected from a list consisting of a frontend node and a backend node, and wherein the given node comprises a given frontend node. 4. The method according to claim 2 , and comprising defining a respective capacity for each of the distributed storage system resources. 5. The method according to claim 4 , and comprising determining a respective amount of time each of the processes will be employing each of the identified distributed storage system resources. 6. The method according to claim 5 , and comprising, upon detecting that the respective loads are greater than respective available capacities of the identified distributed storage system resources, determining, based on the respective amounts of time, a subsequent time when the respective loads will be less than respective available capacities of the identified distributed storage system resources, and scheduling the I/O request for processing at the subsequent time. 7. A distributed storage system, comprising: multiple distributed storage system resources comprising a network and multiple nodes coupled to the network, a given node being configured: to receive an input/output (I/O) request; to identify one or more of the distributed storage system resources required to process the I/O request; to calculate a respective load that the I/O request will generate on each of the identified one or more distributed storage system resources; and to process the I/O request upon detecting that the respective one or more loads are less than respective one or more available capacities of the one or more identified distributed storage system resources; wherein detecting that the respective loads are less than respective available capacities of the distributed storage system resources comprises identifying, by the given node, one or more processes currently employing the identified distributed storage system resources, and determining, for each of the one or more processes, a respective utilization for each of the identified distributed storage system resources. 8. The distributed storage system according to claim 7 , wherein the network comprises multiple network segments, and wherein the distributed storage system resources further comprise one or more network devices coupled to the network. 9. The distributed storage system according to claim 8 , wherein each of the nodes is selected from a list consisting of a frontend node and a backend node, and wherein the given node comprises a given frontend node. 10. The distributed storage system according to claim 8 , wherein the given node is configured to define a respective capacity for each of the distributed storage system resources. 11. The distributed storage system according to claim 10 , wherein the given node is configured to determine a respective amount of time each of the processes will be employing each of the identified distributed storage system resources. 12. The distributed storage system according to claim 11 , wherein, upon detecting that the respective loads are greater than respective available capacities of the identified distributed storage system resources, the given node is configured to determine, based on the respective amounts of time, a subsequent time when the respective loads will be less than respective available capacities of the identified distributed storage system resources, and to schedule the I/O request for processing at the subsequent time. 13. A computer program product, the computer program product comprising: a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising: computer readable program code configured to arrange distributed storage system resources for a distributed storage system; computer readable program code configured to receive, by a given node, an input/output (I/O) request; computer readable program code configured to identify one or more of the distributed storage system resources required to process the I/O request; computer readable program code configured to calculate a respective load that the I/O request will generate on each of the identified distributed storage system resources; and computer readable program code configured to processing the I/O request upon detecting that the respective loads are less than respective available capacities of the identified distributed storage system resources; wherein detecting that the respective loads are less than respective available capacities of the distributed storage system resources comprises identifying, by the given node, one or more processes currently employing the identified distributed storage system resources, and determining, for each of the one or more processes, a respective utilization for each of the identified distributed storage system resources. 14. The computer program product according to claim 13 , wherein the distributed storage system resources comprises a network comprising a plurality of network segments, multiple nodes coupled to the network, and one or more network devices coupled to the network. 15. The computer program product according to claim 14 , wherein each of the nodes is selected from a list consisting of a frontend node and a backend node, and wherein the given node comprises a given frontend node. 16. The computer program product according to claim 14 , the computer readable program code is configured to define a respective capacity for each of the distributed storage system resources. 17. The computer program product according to claim 16 , and comprising computer readable program code configured to determine a respective amount of time each of the processes will be employing each of the identified distributed storage system resources, and, upon detecting that the respective loads are greater than respective available capacities of the identified distributed storage system resources, to determine, based on the respective amounts of time, a subsequent time when the respective loads will be less than respective available capacities of the identified distributed storage system resources, and to schedule the I/O request for processing at the subsequent time.

Assignees

Inventors

Classifications

  • by changing the path, e.g. traffic rerouting, path reconfiguration · CPC title

  • in relation to response time · CPC title

  • Load balancing · CPC title

  • Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS] · CPC title

  • being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus · 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 US10318467B2 cover?
Methods, computing systems and computer program products implement embodiments of the present invention that include configuring distributed storage system resources for a distributed storage system. Examples of the storage system resources include a plurality of network segments, one or more network devices coupled to the network, and multiple nodes coupled to the network, the nodes including …
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F13/4221. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jun 11 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).