Host I/O Stack Fast Path for Storage Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face inefficiencies in managing I/O requests, often requiring unnecessary processing through both host and storage array I/O stacks, which can lead to increased latency and resource utilization.

Innovation Solution

A method that identifies eligible I/O requests for 'fast path' processing solely through the host I/O stack, bypassing the storage array I/O stack, and handles ineligible requests through both paths, optimizing query processing and metadata management to improve efficiency and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all I/O requests are processed through both host and storage array I/O stacks, then reliability is maintained, but latency increases and processing efficiency decreases

Engineering Contradiction:
ImproveI/O request handling reliabilityVSAvoidI/O request latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments I/O request handling into two distinct paths: a fast path for simple data read/write requests that bypasses the storage array I/O stack, and a slow path for complex control commands that requires full processing through both host and storage array I/O stacks. This segmentation allows the system to optimize for speed in common cases while maintaining reliability for complex operations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic path selection based on the type of I/O request. The system dynamically determines whether to use the fast path or slow path by evaluating the request characteristics (data request vs. control command), allowing the processing route to adapt to the specific needs of each request while maintaining overall system reliability.

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If all I/O requests are processed through both host and storage array I/O stacks, then processing accuracy is ensured, but productivity decreases

Engineering Contradiction:
ImproveI/O request processing accuracyVSAvoidI/O request processing throughput
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The patent divides I/O processing into segmented paths where simple data operations use a streamlined fast path that skips redundant processing steps, while complex control commands use the complete slow path. This segmentation maintains processing accuracy for critical operations while significantly improving throughput for common data access patterns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial processing action by having the fast path handle only the essential processing needed for simple data requests, omitting redundant verification and control steps that are unnecessary for basic operations. This partial action approach maintains sufficient accuracy for data requests while maximizing processing throughput.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If the fast path is used for eligible I/O requests, then processing speed increases, but system complexity increases

Engineering Contradiction:
ImproveI/O request processing speedVSAvoidI/O stack architecture complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent extracts the fast path processing logic from the traditional unified I/O stack and implements it as a separate, dedicated processing path. This extraction allows the fast path to operate independently with optimized logic for simple requests, reducing the processing burden on the main I/O stack while maintaining clear separation of concerns and manageable complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary mechanism (the fast path driver layer) that sits between the application layer and the storage array I/O stack. This intermediary handles simple requests with optimized processing while seamlessly routing complex requests to the full processing path, thereby increasing speed for common operations without overwhelming the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11762556B2System and method for accelerated I/O access using storage array driver in Off-the-shelf server
Publication Date: 2023.09.19 EMC IP HLDG CO LLC
  • US11762556B2 patent drawing
  • US11762556B2 patent drawing
  • US11762556B2 patent drawing

AI summary

A method, computer program product, and computer system for receiving, by a computing device, an I/O request. It may be identified whether the I/O request is eligible for handling via a first path without also requiring handling via a second path. If the I/O request is eligible, the I/O request may be processed via the first path on a host I/O stack without processing the I/O request via the second path on a storage array I/O stack. If the I/O request is ineligible, the I/O request may be processed via the first path on the host.