SAS Expander Arbitration Suspension for Initiator Failure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In SAS domains, initiator failures lead to increased arbitration wait times and operational disruptions due to target devices attempting to connect to non-functional initiators, causing race conditions and clogging of discovery processes.

Innovation Solution

Implementing a system where SAS expanders detect initiator failures, suspend arbitration, and direct target devices to wait for alternative connections, allowing for discovery process updates and preventing subsequent connections to non-functional initiators by denying connections based on increased arbitration wait times and performing discovery to update routing tables.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If target devices continue to attempt connections to initiators during discovery process, then connection arbitration can proceed, but arbitration wait times increase dramatically and operations are crippled

Engineering Contradiction:
ImproveSAS domain operationsVSAvoidarbitration wait time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The expander performs preliminary actions by detecting initiator failures and suspending arbitration before target devices can continue attempting connections. This prevents the accumulation of wasted arbitration wait times by proactively identifying failed initiators and stopping arbitration processes directed toward them, thereby maintaining overall domain productivity.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If target devices attempt to connect to failed initiators, then arbitration processes can continue, but race conditions occur and discovery processes are clogged

Engineering Contradiction:
Improveconnection stabilityVSAvoidrace conditions
Core Design Contradiction:
ReliabilityVSObject-generated harmful factors

Solution Approach 1:

The expander implements feedback mechanisms by monitoring initiator status and using this information to control arbitration processes. When an initiator failure is detected, the expander provides feedback to suspend arbitration, preventing target devices from attempting connections to failed initiators and thereby eliminating the race conditions that would otherwise occur.

Inventive Principle:
Principle #23Feedback

3Object-generated harmful factors

If arbitration is suspended when initiator failure is detected, then race conditions are prevented, but additional detection and control mechanisms are required

Engineering Contradiction:
Improverace conditionsVSAvoidexponder detection and control mechanisms
Core Design Contradiction:
Object-generated harmful factorsVSDevice complexity

Solution Approach 1:

The expander serves as an intermediary between initiators and target devices, mediating the connection arbitration process. It detects initiator failures and controls arbitration suspension, acting as a mediator that prevents race conditions without requiring complex changes to target devices or initiators themselves. This centralized mediation approach manages complexity within the expander rather than distributing it across multiple components.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9026843B2Arbitration suspension in a SAS domain
Publication Date: 2015.05.05 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US9026843B2 patent drawing
  • US9026843B2 patent drawing
  • US9026843B2 patent drawing

AI summary

Systems and methods presented herein provide for managing connections in a SAS domain comprising at least first and second expanders. The first expander detects a failure of the initiator and indicates a change in the SAS domain to the second expander. The second expander detects an increase in arbitration wait time for a connection between the initiator and the target device, determines a race condition exists in the second expander, denies the connection between the initiator and the target device, directs the target device to wait for another connection, performs a discovery of the domain based on the discovery request from the first expander, and prevents a subsequent connection by the target device to the initiator after discovery completes.