Active-Active iSCSI Target Architecture for Hyper-Converged Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing VMware vSAN iSCSI target service's active-passive failover architecture suffers from high failover times and performance bottlenecks, particularly when handling multiple LUNs and network bandwidth limitations, due to single target ownership and centralized I/O processing.

Innovation Solution

The proposed active-active architecture distributes iSCSI I/O processing across multiple storage nodes, allowing concurrent I/O serving and intelligent selection of storage nodes based on failure tolerance requirements, reducing failover time and alleviating bottlenecks by utilizing RAID-1 for component placement and multi-writer locks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If active-passive failover architecture is used with single target ownership, then system simplicity is maintained, but failover time increases and performance bottlenecks occur

Engineering Contradiction:
Improvetarget ownership architectureVSAvoidfailover time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent segments the single target ownership into multiple target owners (active and standby targets) distributed across different nodes. Each node can independently serve as a target owner, dividing the previously centralized target function into multiple independent segments that can operate concurrently, thereby reducing failover time when a node fails.

Inventive Principle:
Principle #1Segmentation

2Device complexity

If centralized I/O processing on single target owner is used, then device complexity is reduced, but productivity decreases due to performance bottlenecks

Engineering Contradiction:
ImproveI/O processing architectureVSAvoidI/O processing throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The centralized I/O processing is segmented into distributed I/O processing across multiple target owners. Each target owner handles I/O requests independently for its assigned LUNs, transforming the single-point processing bottleneck into a distributed processing architecture that scales with the number of nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of parallelism by enabling multiple target owners to process I/O requests simultaneously across different nodes. This transitions from a single-dimensional sequential processing model to a multi-dimensional parallel processing model, significantly improving throughput.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Device complexity

If single target owner handles multiple LUNs, then device complexity is minimized, but productivity is limited by network bandwidth and processing capacity

Engineering Contradiction:
Improvetarget-LUN mappingVSAvoidmulti-LUN processing performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The single target owner handling multiple LUNs is segmented into multiple target owners, each responsible for specific LUNs. This distribution of LUN ownership across multiple nodes enables parallel processing of multiple LUNs simultaneously, overcoming the network bandwidth and processing capacity limitations of a single target owner.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentEP3857859B1Active-active architecture for distributed iscsi target in hyper-converged storage
Publication Date: 2023.07.19 VMWARE INC
  • EP3857859B1 patent drawingFigure 1
  • EP3857859B1 patent drawingFigure 2
  • EP3857859B1 patent drawingFigure 3

AI summary

A method is provided for a hyper-converged storage-compute system to implement an active-active failover architecture for providing Internet Small Computer System Interface (iSCSI) target service. The method intelligently selects multiple hosts to become storage nodes that process iSCSI input/output (I/O) for a target. The method further enables iSCSI persistent reservation (PR) to handle iSCSI I/Os from multiple initiators.