Module Affinity Link Selection for Synchronous Storage Replication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Synchronous replication in information processing systems incurs significant delays and resource penalties due to increased link distance, write size, and network load, particularly in host writes, which existing technologies fail to adequately address.

Innovation Solution

Implementing 'module affinity link selection' by choosing links associated with processing modules that share the same process or processor, enabling local memory copy operations for efficient data transfer during synchronous writes, thereby reducing latency and conserving network bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If synchronous replication is implemented to ensure data consistency between source and target storage systems, then data reliability is improved, but host write performance deteriorates due to network latency and link distance

Engineering Contradiction:
Improvedata consistencyVSAvoidhost write performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the data path by identifying specific processing modules (source processing module, transmit processing module, receive processing module, target processing module) and their associated links. By segmenting the replication path and selecting optimal segments, the system reduces the effective distance data must travel across the network, thereby improving host write performance while maintaining data consistency through the synchronous replication mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces link selection as an intermediary mechanism between the source and target storage systems. By selecting optimal links based on processing module affinity, the system mediates the data transmission path to minimize network latency. This intermediary layer allows the system to maintain synchronous replication guarantees while reducing the performance penalty through intelligent path selection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If data is transmitted over long link distances between source and target storage systems, then disaster recovery capability is improved, but network bandwidth consumption increases

Engineering Contradiction:
Improvedisaster recovery capabilityVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The patent applies local quality by optimizing the transmission path locally between specific processing modules rather than using a generic long-distance path. By selecting links that have affinity with the processing modules (i.e., links locally associated with the same process or processor), the system reduces network bandwidth consumption for synchronous replication while maintaining the ability to replicate data across long distances for disaster recovery.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter of link selection from a static, arbitrary choice to a dynamic selection based on processing module affinity. By changing how links are selected (using process identifier and processor identifier matching), the system optimizes network bandwidth utilization for disaster recovery replication without sacrificing the adaptability to replicate across different geographical distances.

Inventive Principle:
Principle #35Parameter changes

3Device complexity

If traditional link selection is used for synchronous replication, then system simplicity is maintained, but write acknowledgment latency increases with link distance and network load

Engineering Contradiction:
Improvesystem simplicityVSAvoidwrite acknowledgment latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent performs preliminary action by pre-establishing affinity relationships between processing modules and links based on process and processor identifiers. This preliminary mapping allows the system to quickly select optimal links during synchronous replication without complex real-time calculations, thereby reducing write acknowledgment latency while adding minimal complexity through pre-computed affinity data structures.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces dynamics by making link selection adaptive rather than static. The system dynamically selects links based on the specific source processing module handling each write request, using its process and processor identifiers to find the optimal transmit processing module. This dynamic selection reduces write acknowledgment latency by adapting to the actual system state while maintaining reasonable complexity through structured affinity matching.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11093161B1Storage system with module affinity link selection for synchronous replication of logical storage volumes
Publication Date: 2021.08.17 EMC IP HLDG CO LLC
  • US11093161B1 patent drawing
  • US11093161B1 patent drawing
  • US11093161B1 patent drawing

AI summary

An apparatus includes a processing device comprising a processor and a memory. The processing device is configured, in conjunction with synchronous replication of a logical storage volume between first and second storage systems, to receive a synchronous write request comprising at least a portion of a data page to be written to the storage volume, to determine a source processing module associated with the data page in the first storage system, to determine at least one of a process identifier and a processor identifier of the source processing module in the first storage system, and to select a particular one of multiple links between the first and second storage systems for use with the synchronous write request based at least in part on at least one of the process identifier and the processor identifier of the source processing module. The selected link is illustratively associated with a transmit processing module.