MPIO Driver IO Load Pattern Categorization for Storage Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage systems experience performance degradations due to fluctuating IO load patterns from host devices, as conventional techniques fail to adequately detect and alleviate these issues, leading to suboptimal performance.

Innovation Solution

A multi-path layer with MPIO drivers is configured to analyze and categorize IO load patterns, transmitting this information to the storage system to facilitate optimization, allowing the storage system to adjust its processing accordingly.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the storage system uses conventional techniques without load pattern detection, then the system structure remains simple, but performance degradations occur when IO load patterns fluctuate

Engineering Contradiction:
ImproveIO operation processing performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The MPIO driver performs preliminary analysis and categorization of IO load patterns before the storage system processes the actual IO operations. By detecting and categorizing load patterns in advance (using IOPS values and pattern recognition), the storage system can pre-optimize its processing parameters, avoiding performance degradations during load fluctuations without requiring complex real-time adjustments

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary layer (the MPIO driver with load pattern detection functionality) between the host devices and the storage system. This intermediary analyzes IO load patterns and communicates categorization information to the storage system, allowing the storage system to optimize performance without directly implementing complex detection mechanisms itself

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the storage system implements real-time load pattern detection and optimization, then performance during load fluctuations improves, but the complexity of detecting and measuring load patterns increases

Engineering Contradiction:
ImproveIO operation processing performanceVSAvoidload pattern detection difficulty
Core Design Contradiction:
ProductivityVSDifficulty of detecting and measuring

Solution Approach 1:

The MPIO driver on the host device performs self-service by autonomously detecting and categorizing its own IO load patterns. The driver monitors its own IOPS values and load characteristics, then communicates this self-analyzed information to the storage system, eliminating the need for the storage system to implement complex detection algorithms

Inventive Principle:
Principle #25Self-service

3Productivity

If the storage system optimizes processing based on load pattern categorization, then performance during load transitions improves, but the device complexity increases due to additional categorization functionality

Engineering Contradiction:
ImproveIO operation processing performanceVSAvoidMPIO driver complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The MPIO driver is enhanced with multi-functionality, combining its traditional path management role with new load pattern detection and categorization capabilities. By integrating these functions into an existing universal component rather than adding separate specialized systems, the patent minimizes overall system complexity while achieving performance optimization

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11044313B2Categorizing host IO load pattern and communicating categorization to storage system
Publication Date: 2021.06.22 EMC IP HLDG CO LLC
  • US11044313B2 patent drawing
  • US11044313B2 patent drawing

AI summary

An apparatus in one embodiment comprises a host device configured to communicate over a network with a storage system comprising a plurality of storage devices. The host device includes a set of input-output queues and a multi-path input-output driver configured to select input-output operations from the set of input-output queues for delivery to the storage system. The multi-path input-output driver is configured to analyze an input-output load pattern of the host device for a predetermined period of time and to categorize the input-output load pattern into one of a plurality of predetermined load pattern categories based at least in part on the analysis. The multi-path input-output driver is configured to transmit information specifying the categorization of the input-output load pattern to the storage system. The storage system is configured to adjust its processing of input-output operations based at least in part on the categorization of the input-output load pattern.