Port Identifier Management for Cluster Storage Failover

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In clustered computing environments, storage arrays with active/passive configurations face performance degradation and complex failover challenges due to 'trespass' onto passive paths, especially when multiple nodes access a logical unit, and existing failover methods are slow and cumbersome.

Innovation Solution

The implementation of a port identifier management system using NPIV commands to assign and reassign port identifiers, allowing seamless switching between communication paths without modifying registration keys, ensuring only one active path is used and preventing trespass onto passive storage controllers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional failover methods are used in clustered environments, then storage paths can be switched, but the process is slow and cumbersome requiring extensive registry updates

Engineering Contradiction:
Improvefailover speedVSAvoidcomplexity of failover process
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent extracts the port identifier assignment function from the complex failover process and makes it independent. By using NPIV commands to assign port identifiers to HBA ports before failover is needed, the system separates the identifier assignment step from the failover step, enabling faster switching without extensive registry updates during the actual failover event.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements preliminary action by pre-assigning port identifiers to HBA ports using NPIV commands before any failover occurs. This preliminary setup stores the identifier mappings in the HBA firmware, so when failover is needed, the system can immediately switch paths without performing complex registry updates in real-time, significantly reducing failover time and complexity.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If multiple nodes access a logical unit through active/passive storage arrays, then availability is improved, but performance degrades due to trespass onto passive paths

Engineering Contradiction:
Improveavailability of storage accessVSAvoidstorage access performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements feedback mechanisms where the storage array and HBAs continuously monitor path status and identifier assignments. When a failover event occurs or path status changes, the system receives feedback about the new active path and automatically adjusts port identifier assignments accordingly. This feedback loop ensures that only the active path is used for data access, preventing trespass onto passive paths while maintaining high availability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces port identifiers as an intermediary mechanism between the storage array and host HBAs. These identifiers act as mediators that control which paths are accessible to which nodes. By managing port identifier assignments and using them in NPIV commands, the system enables multiple nodes to access the storage array simultaneously while preventing any node from trespassing onto passive paths, thus maintaining both availability and performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If port identifiers are reassigned during failover, then path switching is enabled, but registration keys must be modified which increases complexity

Engineering Contradiction:
Improvepath switching capabilityVSAvoidregistry update requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent replaces the mechanical/complex registry update system with a more elegant identifier management approach. Instead of modifying registration keys and updating extensive registries during failover, the system uses NPIV commands to reassigned port identifiers directly to HBA ports. This substitution eliminates the need for complex registry updates while maintaining full path switching capability, reducing device complexity significantly.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS9647933B1Port identifier management for path failover in cluster environments
Publication Date: 2017.05.09 ARCTERA US LLC
  • US9647933B1 patent drawing
  • US9647933B1 patent drawing
  • US9647933B1 patent drawing

AI summary

A method includes assigning a port identifier to a first port on a node and communicating data on a first path between the first port and a logical unit on an active/passive storage array. The port identifier is registered in a persistent reservation scheme for the logical unit. The method also includes detecting a failure of the first path, de-assigning the port identifier from the first port, assigning the port identifier to a second port on the first node, and resuming communications between the node and the logical unit. One implementation of a system includes a first port configured to communicate with a storage device, a second port configured to communicate with the storage device, and an identifier management block. The identifier management block executes a failover with N_Port ID Virtualization commands that transfer a world wide port name from the first port to the second port.