SAS Storage Controller I/O Suppression for Link Disconnection Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage systems using SAS as the backend communication standard, issuing I/O commands during the discover process can lead to error responses due to disconnected physical links between expanders, resulting in deteriorated I/O performance and redundancy issues, as the system fails to detect link disconnections promptly, causing unnecessary use of communication paths and increased processing time.

Innovation Solution

Implementing I/O suppression and routing control mechanisms that determine link connectivity before proceeding with the discover process, using wide link bundle commands to set SAS address information for multiple phy ports simultaneously and batch delete commands to remove unnecessary SAS address information, thereby reducing the time communication paths are unused and minimizing the number of CRI commands required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If I/O commands are issued during the discover process, then I/O operations can proceed concurrently, but error responses increase due to undetected link disconnections

Engineering Contradiction:
ImproveI/O operation concurrencyVSAvoiderror response rate
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs a discover process before issuing I/O commands to detect link disconnections in advance. This preliminary action identifies unavailable communication paths, preventing subsequent I/O commands from being sent to disconnected storage devices, thereby reducing error responses while maintaining I/O concurrency on available paths.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the discover process is carried out to detect link disconnections, then reliability improves, but I/O performance deteriorates due to communication path occupation

Engineering Contradiction:
Improvelink connection detection accuracyVSAvoidI/O performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The discover process is executed as a preliminary step before normal I/O operations to detect link disconnections. By completing the discovery phase first, the system establishes accurate topology information and identifies available communication paths, enabling subsequent I/O operations to proceed without interruption from discover commands occupying the same paths.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system segments the operation timeline into distinct phases: a discover phase for detecting link disconnections, followed by an I/O phase for data operations. This temporal segmentation allows the discover process to complete its reliability-checking function without continuously occupying communication paths, thereby maintaining I/O performance during the data operation phase.

Inventive Principle:
Principle #1Segmentation

3Reliability

If I/O suppression is applied during the discover process, then error responses are reduced, but communication paths remain unused for longer periods

Engineering Contradiction:
Improveerror response reductionVSAvoidcommunication path unavailability time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

I/O suppression is applied as a preliminary measure during the discover process to prevent I/O commands from being sent to potentially disconnected storage devices. This suppression is maintained only until the discover process completes and link status is confirmed, thereby minimizing the time communication paths remain unused while ensuring error responses are reduced during the critical discovery phase.

Inventive Principle:
Principle #10Preliminary action

4Manufacturing precision

If multiple CRI commands are issued to set SAS address information for each phy port, then routing control accuracy improves, but processing time increases

Engineering Contradiction:
ImproveSAS address information accuracyVSAvoiddiscover process time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The system merges multiple CRI commands into a single batched command that sets SAS address information for multiple phy ports simultaneously. This consolidation maintains the accuracy of routing control by ensuring all necessary address information is correctly configured, while reducing the total number of commands issued and the associated processing time during the discover process.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8843680B2Storage system having SAS as its backend communication standard
Publication Date: 2014.09.23 HITACHI VANTARA LTD
  • US8843680B2 patent drawing
  • US8843680B2 patent drawing
  • US8843680B2 patent drawing

AI summary

Each communication path between controllers and a plurality of storage devices has a plurality of expanders coupled in series. In order to shorten the time during which the communication path is not used for I/O, either (A) the length of time for which I/O suppression is set for the communication path is shortened, or (B) the overall time it takes for processing other than I/O processing is shortened. In the (A), a determination as to whether or not the coupling between the expanders has been disconnected is made for the I/O-suppressed communication path, and in a case where the result of this determination is negative, a discover process is carried out after releasing the I/O suppression with respect to this communication path. In the (B), the number of command issue times of updating routing control information of the expander is reduced.