IORP Modifiers for Hierarchical Storage Error Simulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional error simulation methods in hierarchical data storage systems are inadequate for effectively simulating failure conditions across multiple levels, as they lack control over error generation and are limited by single region and trigger type constraints, making it difficult to test error conditions in complex architectures.

Innovation Solution

The introduction of IORP Modifiers to the IORP paradigm, which attach to IO Request Packets (IORPs) to modify their processing attributes, allowing for simulated errors such as immediate or delayed failures, and enabling multiple regions of interest and trigger types, thereby enhancing error simulation capabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If traditional error simulation methods are used in hierarchical data storage systems, then the system can maintain simplicity in error generation, but the control over error generation and testing capability across multiple levels deteriorates

Engineering Contradiction:
Improveerror simulation controlVSAvoiderror generation complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The error simulation functionality is segmented into separate IORP modifiers that can be independently configured and applied to specific regions and request types in the hierarchical subsystems, allowing precise control without complexity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

IORP modifiers act as intermediary elements between the error simulation layer and the hierarchical subsystems, providing controlled error injection points that simplify the overall error generation process while maintaining system architecture integrity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If single region and trigger type constraints are used in error simulation, then the system structure remains simple, but the versatility and precision of error testing deteriorates

Engineering Contradiction:
Improveerror testing versatilityVSAvoiderror simulation structure
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The IORP modifier framework provides multi-functionality by allowing a single modifier structure to handle multiple error types, regions, and trigger conditions through configurable attributes, eliminating the need for separate specialized error simulation mechanisms

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

Solution Approach 2:

The error simulation system becomes dynamic through configurable modifiers that can be adjusted to target different regions and trigger types at runtime, allowing the same framework to adapt to various testing scenarios without structural changes

Inventive Principle:
Principle #15Dynamics

3Productivity

If traditional debugging methods are used, then the development process remains straightforward, but the testing efficiency and development acceleration deteriorates

Engineering Contradiction:
Improvedevelopment accelerationVSAvoidtesting time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

IORP modifiers enable preliminary error simulation setup before actual testing occurs, allowing test configurations to be predefined and reused, thereby reducing repeated manual testing time and accelerating development iterations

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9495268B2Systems and methods for error simulation and code testing
Publication Date: 2016.11.15 DELL INTERNATIONAL LLC
  • US9495268B2 patent drawing
  • US9495268B2 patent drawing
  • US9495268B2 patent drawing

AI summary

A method for error simulation in a data storage subsystem providing abstractions of one or more storage devices. The method includes dividing the data storage subsystem into two or more hierarchically organized subsystems, wherein the subsystems interact using IO Request Packets (IORPs), such that relatively higher level subsystems create and populate IORPs and pass them to relatively lower level subsystems for corresponding processing. The method further includes defining an IORP modifier configured to attach to matching IORPs based on one or more attributes of the IORP modifier and to modify at least one of the processing and one or more attributes of the IORP in order to simulate errors in the data storage subsystem.