No relevant resource is found in the selected language.

This site uses cookies. By continuing to browse the site you are agreeing to our use of cookies. Read our privacy policy>Search


To have a better experience, please upgrade your IE browser.

SmartQoS Feature Guide
OceanStor Dorado V3 Series V300R001

This document is applicable to OceanStor Dorado5000 V3, Dorado6000 V3, and Dorado18000 V3. It describes the implementation principles and application scenarios of the SmartQoS feature, and explains how to configure and manage SmartQoS.

Rate and give feedback:
Huawei uses machine translation combined with human proofreading to translate this document to different languages in order to help you better understand the content of this document. Note: Even the most advanced machine translation cannot match the quality of professional translators. Huawei shall not bear any responsibility for translation accuracy and it is recommended that you refer to the English document (a link for which has been provided).
Working Principle

Working Principle

This section describes I/O priority scheduling and flow control. SmartQoS schedules I/Os based on LUN or snapshot priority and queues I/Os to control their flows, ensuring the performance of critical applications.

I/O Priority Scheduling

The I/O priority scheduling function is based on LUN or snapshot priorities, or to be more specifically, the importance of applications processed by each LUN or snapshot.

Each LUN or snapshot has a priority property, which is configured by a user and saved in the storage system. When an I/O enters a storage system, the storage system gives a priority to the I/O based on the priority of the LUN or snapshot that will process the I/O. Then the I/O carriers the priority throughout its processing procedure, as shown in Figure 1-1.

Figure 1-1 I/O priority scheduling process

(1) An application server sends an I/O request.

(2) The storage system gives a priority to the I/O based on the priority of the LUN or snapshot that will process the I/O.

(3) The storage system arranges I/Os of different priorities into different queues: I/Os of a high priority are waiting in the high-priority queue, I/Os of a middle priority in the middle-priority queue, and I/Os of a low priority in the low-priority queue. When system resources are insufficient, the storage system prioritizes high-priority I/Os and ensures optimal performance for them.

(4) The storage system processes the I/O request.

LUN or snapshot I/O priority scheduling is, in essence, the scheduling of storage system resources, including CPU computing resources and cache resources.

  • CPU computing time: When the CPU becomes the bottleneck of the storage system, the high-priority applications can still have enough CPU computing time.
  • Cache resources: The caching requests of high-priority applications can be addressed first.

When you create a LUN or snapshot, specify an I/O priority for the LUN or snapshot. If no priority is specified, the LUN or snapshot is granted the low priority by default. After a LUN or snapshot is created, its I/O priority can be manually changed.

Flow Control

The SmartQoS flow control is implemented by: I/O class queue management, token allocation, and dequeue management.

Queue management uses a token mechanism to allocate storage resources based on the I/Os of LUNs or snapshots. The SmartQoS determines the number of storage resources to be allocated to a LUN or a snapshot I/O queue by counting the number of tokens owned by the queue. The more tokens owned by an I/O queue, the more resources will be allocated to that queue, and the more preferentially the I/O requests in that queue will be processed. Figure 1-2 shows how SmartQoS manages the I/O queues of LUNs or snapshots.

Figure 1-2 Managing LUN or snapshot I/O queues

The process of managing LUN or snapshot I/O queues is described as follows:

(1) After application servers send I/O requests, the storage system delivers the requests to I/O queues of LUNs or snapshots.

(2) The storage system adjusts the number of tokens owned by I/O queues of LUNs or snapshots based on the priorities of LUNs or snapshots. By reducing the number of tokens owned by queues that have a low priority, the storage system ensures that sufficient resources are available to the LUNs or snapshots that have a high priority so that the LUNs or snapshots can work properly. (Internally, the operation performed is I/O dequeuing.)

For example, SmartQoS manages LUN 001 and LUN 002. A storage system can restrict system resources that are allocated to LUNs after a SmartQoS policy is used to set a performance objective. In this way, sufficient resources can be reserved for LUNs with a high priority. Table 1-1 lists the performance objectives.

Table 1-1 LUN I/O instances

LUN Name

Performance Objectivea

LUN 001

Bandwidth: 300 MB/s

LUN 002

Bandwidth: 200 MB/s

a: measurable performance objectives of SmartQoS feature include bandwidth, IOPS and latency. Set performance objectives reasonably which can meet the actual application performance characteristics.

The storage system internally translates performance goals into the number of tokens needed. Specifically, the performance goal of LUN 001 is 300 tokens, whereas that of LUN 002 is 200 tokens. If system resources are insufficient, the storage system limits the resources used by LUN 002 because LUN 002 possesses fewer tokens. The storage system then provides more system resources for LUN 001, which gives LUN 001 better performance.

(3) The storage system processes I/O requests.


Each LUN or snapshot can only join one SmartQoS flow control policy.

Hierarchical Management

SmartQoS supports both normal and hierarchical policies.

Normal policy: controls the traffic from a single application to LUNs or snapshots.

Hierarchical policy: controls the traffic from a group of applications to LUNs or snapshots. Normal policies can be added to hierarchical policies.

Figure 1-3 shows their relationship.

Figure 1-3 Relationship between the normal and hierarchical policies
Updated: 2018-10-19

Document ID: EDOC1000178797

Views: 13869

Downloads: 135

Average rating:
This Document Applies to these Products

Related Version

Related Documents

Previous Next