Storage Controller QoS Token Bucket Arbitration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems, particularly those using Solid State Drives (SSDs), face challenges in maintaining deterministic Quality of Service (QoS) and Service Level Agreements (SLAs) due to indeterminate performance and latency caused by background operations like garbage collection and wear leveling, especially when nearing capacity, leading to inconsistent storage performance for high-performance applications and multi-tenant shared storage environments.

Innovation Solution

A storage controller with a quality of service control module that includes token buckets for read and write queues, an arbiter to service requests based on token quantities, and a bandwidth allocation manager to ensure SLAs are met by managing token allocation and prioritizing data streams, thereby maintaining consistent performance across multiple data streams.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If SSD background operations (garbage collection, wear leveling) are performed to maintain storage health, then storage reliability is improved, but performance determinism deteriorates due to indeterminate latency

Engineering Contradiction:
Improvestorage reliabilityVSAvoidperformance determinism
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments storage operations into multiple queues with different QoS levels. Critical operations are placed in high-priority queues while background operations like garbage collection are placed in lower-priority queues, allowing the system to maintain storage reliability while ensuring deterministic performance for time-sensitive operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a QoS controller as an intermediary between the host and SSD. This controller monitors and manages background operations, preventing them from interfering with high-priority operations. The mediator ensures that garbage collection and wear leveling do not cause indeterminate latency for critical data operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple data streams are served simultaneously in shared storage environments, then storage versatility is improved, but QoS measurement accuracy deteriorates due to mixed workload interference

Engineering Contradiction:
Improvestorage versatilityVSAvoidQoS measurement accuracy
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The patent segments multiple data streams into separate queues, each with its own QoS parameters and performance measurements. This segmentation allows the system to support multiple workloads simultaneously while accurately measuring and enforcing QoS for each individual stream without interference from other workloads.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by assigning different QoS characteristics to different queues. Each queue can have customized performance guarantees and measurement parameters tailored to its specific workload requirements, enabling accurate QoS measurement for each data stream while maintaining overall system versatility.

Inventive Principle:
Principle #3Local quality

3Quantity of substance

If SSD capacity is increased to handle larger data volumes, then storage volume is improved, but performance consistency deteriorates when approaching capacity limits

Engineering Contradiction:
Improvestorage volumeVSAvoidperformance consistency
Core Design Contradiction:
Quantity of substanceVSStability of the object's composition

Solution Approach 1:

The patent implements preliminary action by proactively managing SSD capacity through monitored thresholds. When the SSD approaches capacity limits, the QoS controller preemptively triggers garbage collection and manages wear leveling operations before performance degradation occurs, maintaining consistent performance even as storage volume increases and is utilized.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10732895B2Drive-level internal quality of service
Publication Date: 2020.08.04 BIP BY DDN INC
  • US10732895B2 patent drawing
  • US10732895B2 patent drawing
  • US10732895B2 patent drawing

AI summary

A storage controller is provided. The storage controller includes a host interface, a drive interface, and a quality of service control module coupled with the host interface and the drive interface. The QoS module includes read and write queues for each data stream, each queue associated with corresponding token buckets, and an arbiter, configured to receive requests from the read and write queues, and to service the read and write queues in an order at least partially determined by a quantity of tokens in each token bucket. The QoS module also includes a quality of service measurement module, configured to measure quality of service levels for each of the read and write queues, and a bandwidth allocation manager, configured to allocate tokens to each token bucket at a rate corresponding to the service level agreements and the measured quality of service level for each of the read and write queues.