Storage Area Network Command Scheduling for Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage area networks (SANs) face challenges in managing large volumes of data across various storage devices, leading to increased latency due to high-impact commands that occupy path bandwidth, thereby affecting the performance of I/O commands.

Innovation Solution

A method is implemented where a storage manager determines the type of command, selects paths based on criteria such as queue count and availability, and marks paths as primary or secondary HI paths to optimize path usage, ensuring that high-impact commands do not hinder I/O commands by allocating appropriate paths for each type of command.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If high-impact commands are allowed to occupy path bandwidth for execution, then command completion is achieved, but I/O command latency increases

Engineering Contradiction:
Improvecommand execution throughputVSAvoidI/O command latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the command queue into multiple priority levels, separating high-impact commands from I/O commands. This segmentation allows the system to process different command types through different paths, preventing high-impact commands from blocking I/O commands and thus reducing I/O latency while maintaining overall command execution throughput

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary scheduling mechanism that mediates between high-impact commands and I/O commands. This intermediary layer prioritizes I/O commands during queuing and path selection, ensuring they receive timely processing while still allowing high-impact commands to execute when resources are available, thereby resolving the latency conflict

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If paths are allocated dynamically based on command type, then path utilization efficiency improves, but system complexity increases

Engineering Contradiction:
Improvepath utilization efficiencyVSAvoidpath allocation complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by assigning different path allocation strategies to different command types. I/O commands receive preferential treatment in path selection and queuing, while high-impact commands follow different allocation rules. This localized differentiation improves path utilization for time-sensitive operations without requiring complete system-wide complexity

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter of path selection criteria based on command type. Instead of using a single static path allocation method, the system dynamically adjusts path selection parameters (such as priority weights, queue positions, and path availability thresholds) according to whether the command is I/O or high-impact, thereby improving efficiency while managing complexity through parameterized control

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9898205B1Scheduling of commands in a storage area network to minimize latency
Publication Date: 2018.02.20 ARCTERA US LLC
  • US9898205B1 patent drawing
  • US9898205B1 patent drawing
  • US9898205B1 patent drawing

AI summary

Various systems and methods for scheduling commands of a storage area network to minimize latency are disclosed. For example, one method involves receiving a command, where the command is received prior to this command being issued to one or more storage devices. The commands is configured to be issued to the one or more storage devices using one or more paths. The method also involves determining whether the command is a high impact (HI) command, where this determination is based, at least in part, on one or more criteria. In response to a determination that the command is an HI command, the method involves selecting a first path of the one or more paths as a primary HI path, where the selecting is based on one or more other criteria. The availability of the primary HI path to non-HI commands is determined based on one or more different criteria.