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 11

OceanStor 5300 V3, 5500 V3, 5600 V3, 5800 V3, and 6800 V3 Storage System V300R003

This document describes the implementation principles and application scenarios of theSmartQoS feature. Also, it 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 file system priority, and queues I/Os to control their flows and ensures performance for critical applications.

I/O Priority Scheduling

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

Each LUN or file system 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 file system 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 file system 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 file system I/O priority scheduling is, in essence, the scheduling of storage system resources, including concurrency resources, CPU computing resources, and cache resources.
  • Concurrency resources: When the number of concurrent I/Os in the system reaches the threshold, the high-priority I/Os can be processed first.
  • 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 file system, specify an I/O priority for the LUN or file system. If no priority is specified, the LUN or file system is granted the low priority by default. After a LUN or file system is created, its I/O priority can be manually changed.


SmartQoS supports the control of I/O concurrency resources of heterogeneous host LUNs.

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 file systems.The SmartQoS determines the number of storage resources to be allocated to a LUN or a file system 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 file systems.
Figure 1-2  Managing LUN or File system I/O queues

The process of managing LUN or File system 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 file systems.

(2) The storage system adjusts the number of tokens owned by I/O queues of LUNs or file systems based on the priorities of LUNs or file systems. 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 file systems that have a high priority so that the LUNs or file systems 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 includes 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 file system can only join one SmartQoS flow control policy.

Updated: 2018-09-03

Document ID: EDOC1000084215

Views: 9050

Downloads: 230

Average rating:
This Document Applies to these Products
Related Documents
Related Version
Previous Next