Storage Subsystem I/O Policy Translation and Queue Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional storage sub-systems are unable to efficiently manage input/output (I/O) requests based on their attributes, leading to inefficient resource utilization due to their unawareness of varying workload attributes.

Innovation Solution

The implementation of a policy-driven mechanism that translates I/O streams into flow attributes, allowing I/O requests to be assigned to queues based on defined priorities, and allocates optimal resources for processing, utilizing a layered structure with control and data planes to manage and enforce policies for I/O operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional storage sub-systems manage I/O requests using traditional methods, then the system structure remains simple, but resource utilization efficiency deteriorates due to inability to recognize and respond to varying workload attributes

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidsystem structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the storage sub-system into distinct functional layers: a control plane for policy management and decision-making, and a data plane for actual I/O processing. This segmentation allows the system to implement complex attribute-based resource allocation without overwhelming the entire system structure, as the complexity is confined to the control plane while the data plane remains relatively simple and efficient.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a policy manager as an intermediary component that translates high-level I/O policies into actionable flow attributes. This intermediary layer enables the system to handle complex workload attributes and resource allocation decisions without requiring the entire storage sub-system to be redesigned, thus improving resource utilization while managing complexity through a dedicated translation layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If conventional storage sub-systems process all I/O requests uniformly, then the processing logic remains simple, but the ability to prioritize and manage different workload attributes deteriorates

Engineering Contradiction:
Improveworkload attribute management capabilityVSAvoidprocessing logic complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic I/O request handling where the processing logic adapts based on workload attributes. The control plane continuously monitors I/O streams, determines flow attributes dynamically, and adjusts resource allocation in real-time. This dynamic approach enables the system to handle diverse workload types (backup, production, analytics) with appropriate prioritization without requiring completely different processing logic for each workload type.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter space of I/O processing by introducing flow attributes (priority levels, bandwidth guarantees, latency requirements) that characterize different workload types. The policy manager translates policy definitions into these flow attributes, enabling the system to adapt processing behavior based on attribute values rather than requiring complex if-else logic for each workload scenario.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If no policy-driven mechanism is implemented, then the system architecture remains simple, but the ability to translate I/O streams into flow attributes and allocate resources optimally deteriorates

Engineering Contradiction:
ImproveI/O processing efficiencyVSAvoidarchitecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent adds a new dimension to the storage sub-system architecture by introducing the control plane as a separate dimension from the data plane. This dimensional separation allows policy translation and resource allocation decisions to occur in the control plane dimension, while I/O processing continues in the data plane dimension, enabling optimized I/O processing without fundamentally restructuring the core processing architecture.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS10078473B2Resource allocation in networked storage systems
Publication Date: 2018.09.18 NETAPP INC
  • US10078473B2 patent drawing
  • US10078473B2 patent drawing
  • US10078473B2 patent drawing

AI summary

Methods and systems for a storage environment are provided. A policy for an input/output (I/O) stream having a plurality of I/O requests for accessing storage at a storage device of the storage sub-system is translated into flow attributes so that the I/O stream can be assigned to one of a plurality of queues maintained for placing I/O requests based on varying priorities defined by set polices. When an I/O request for the associated policy is received by the storage sub-system; the storage sub-system determines a flow attribute associated with the I/O request and the policy; selects a queue for staging the I/O request, such that the selected queue is of either higher priority than what is indicated by the flow attribute or at least of a same priority as indicated by the flow attribute; and allocates storage sub-system resource for processing the received I/O request.