# US 2018/0324108 A1 · QUALITY OF SERVICE (QoS) STORED PROCEDURES

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2018/0324108 A1
- Document ID: US20180324108A1
- Status: Published application
- Kind: A1
- Application number: 15/585,370
- Filed: 2017-05-03
- Published: 2018-11-08
- Earliest claimed: 2017-05-03
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Amalia AVRAHAM; Alon MARX; Rivka M. MATOSEVICH
- Web page: https://patentgrep.com/patent/US20180324108A1

## CPC

- H04L 47/805: {QOS or priority aware}
- H04L 41/0816: the condition being an adaptation, e.g. in response to network events
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 41/40: using virtualisation of network functions or resources, e.g. SDN or NFV entities
- H04L 41/5003: Managing SLA; Interaction between SLA and QoS
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- H04L 67/34: {involving the movement of software or configuration parameters (network booting or remote initial program loading [RIPL] G06F9/4416)}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Embodiments for performance management in a computing storage environment. At least one of a plurality of performance characteristics associated with a quality of service (QoS) between a storage system and a host is dynamically controlled by uploading code of a QoS logic, from the host to the storage system, for determining and specifying the at least one of the plurality of performance characteristics, thereby reducing overhead of QoS management data required to be stored within or communicated to the storage system.

## Claims

### Claim 1

A method for performance management in a computing storage environment, by a processor device, comprising:
dynamically controlling at least one of a plurality of performance characteristics associated with a quality of service (QoS) between a storage system and a host by uploading code of a QoS logic, from the host to the storage system, for determining and specifying the at least one of the plurality of performance characteristics, thereby reducing overhead of QoS management data required to be stored within or communicated to the storage system.

### Claim 2 (depends on 1)

The method of claim 1, further including, pursuant to uploading the code of the QoS logic, defining the QoS logic by a user on the host; wherein the user specifies one or more attributes calculated commensurate with a QoS cost to determine and specify the at least one of the plurality of performance characteristics provided by the storage system to the host.

### Claim 3 (depends on 2)

The method of claim 2, further including executing the code of the QoS logic by the storage system during an initial run upon upload from the host.

### Claim 4 (depends on 3)

The method of claim 3, further including executing the code of the QoS logic by the storage system upon detecting that at least one of a plurality of events has occurred.

### Claim 5 (depends on 4)

The method of claim 4, wherein the events are selected from a list comprising:
a storage volume size change;
a storage volume characteristic change;
a system configuration change; and
a periodic run based on previous Input/Output Operations per Second (TOPS).

### Claim 6 (depends on 5)

The method of claim 5, wherein the storage volume characteristic change includes at least one of compression, encryption, and mirroring configuration changes to a given storage volume.

### Claim 7 (depends on 1)

The method of claim 1, wherein the performance characteristics include at least one of an Input/Output Operations per Second (IOPS) rate, an allocated bandwidth, and an amount of allocated storage space.

### Claim 8

A system for performance management in a computing storage environment, the system comprising:
a processor device executing instructions stored in a memory, wherein the processor device:
dynamically controls at least one of a plurality of performance characteristics associated with a quality of service (QoS) between a storage system and a host by uploading code of a QoS logic, from the host to the storage system, for determining and specifying the at least one of the plurality of performance characteristics, thereby reducing overhead of QoS management data required to be stored within or communicated to the storage system.

### Claim 9 (depends on 8)

The system of claim 8, wherein the processor device, pursuant to uploading the code of the QoS logic, defines the QoS logic by a user on the host; wherein the user specifies one or more attributes calculated commensurate with a QoS cost to determine and specify the at least one of the plurality of performance characteristics provided by the storage system to the host.

### Claim 10 (depends on 9)

The system of claim 9, wherein the processor device executes the code of the QoS logic by the storage system during an initial run upon upload from the host.

### Claim 11 (depends on 10)

The system of claim 10, wherein the processor device executes the code of the QoS logic by the storage system upon detecting that at least one of a plurality of events has occurred.

### Claim 12 (depends on 11)

The system of claim 11, wherein the events are selected from a list comprising:
a storage volume size change;
a storage volume characteristic change;
a system configuration change; and
a periodic run based on previous Input/Output Operations per Second (TOPS).

### Claim 13 (depends on 12)

The system of claim 12, wherein the storage volume characteristic change includes at least one of compression, encryption, and mirroring configuration changes to a given storage volume.

### Claim 14 (depends on 8)

The system of claim 8, wherein the performance characteristics include at least one of an Input/Output Operations per Second (IOPS) rate, an allocated bandwidth, and an amount of allocated storage space.

### Claim 15

A computer program product for performance management in a computing storage environment, by a processor device, the computer program product embodied on a non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising:
an executable portion that dynamically controls at least one of a plurality of performance characteristics associated with a quality of service (QoS) between a storage system and a host by uploading code of a QoS logic, from the host to the storage system, for determining and specifying the at least one of the plurality of performance characteristics, thereby reducing overhead of QoS management data required to be stored within or communicated to the storage system.

### Claim 16 (depends on 15)

The computer program product of claim 15, further including an executable portion that, pursuant to uploading the code of the QoS logic, defines the QoS logic by a user on the host; wherein the user specifies one or more attributes calculated commensurate with a QoS cost to determine and specify the at least one of the plurality of performance characteristics provided by the storage system to the host.

### Claim 17 (depends on 16)

The computer program product of claim 16, further including an executable portion that executes the code of the QoS logic by the storage system during an initial run upon upload from the host.

### Claim 18 (depends on 17)

The computer program product of claim 17, further including an executable portion that executes the code of the QoS logic by the storage system upon detecting that at least one of a plurality of events has occurred.

### Claim 19 (depends on 18)

The computer program product of claim 18, wherein the events are selected from a list comprising:
a storage volume size change;
a storage volume characteristic change;
a system configuration change; and
a periodic run based on previous Input/Output Operations per Second (TOPS).

### Claim 20 (depends on 19)

The computer program product of claim 19, wherein the storage volume characteristic change includes at least one of compression, encryption, and mirroring configuration changes to a given storage volume.

### Claim 21 (depends on 15)

The computer program product of claim 15, wherein the performance characteristics include at least one of an Input/Output Operations per Second (IOPS) rate, an allocated bandwidth, and an amount of allocated storage space.

### Claim 22

A method for performance management in a computing storage environment, by a processor device, comprising:
dynamically controlling at least one of a plurality of performance characteristics associated with a quality of service (QoS) between a storage system and a host by providing, by the storage system, a plurality of storage volume attributes selectable by a user; wherein each of the storage volume attributes selected by the user are directly correlated to the QoS provided by the storage system to the host for a given one of the storage volume attributes, thereby reducing overhead of QoS management data required to be stored within or communicated to the storage system.

### Claim 23 (depends on 22)

The method of claim 22, wherein the storage volume attributes include at least:
a volume size;
a volume written size;
a volume metadata; and
at least one volume characteristic.

### Claim 24 (depends on 22)

The method of claim 22, further including specifying, by the user, a value for one or more of the storage volume attributes; wherein the specified values for each of the one or more storage volume attributes are multiplied together to obtain a final QoS value for a given storage volume.

### Claim 25 (depends on 24)

The method of claim 24, wherein the final QoS value for the given storage volume comprises at least one of a bandwidth and Input/Output Operations per Second (IOPS) provided by the storage system to the host for the given storage volume.
