Selective Protocol Layering for Synchronous Storage Replication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional storage systems face inefficiencies in data management and replication, particularly in handling flash storage, where operations are often performed by both higher-level processes and lower-level storage controllers, leading to redundant write operations and reduced reliability.

Innovation Solution

Implementing a direct-mapped flash storage system where the operating system initiates and controls processes, such as data rewriting and erasure, without address translation by storage controllers, and utilizing non-volatile RAM as a quickly accessible buffer to improve latency and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If storage controllers perform address translation and data rewriting operations, then data management functionality is provided, but redundant write operations increase and reliability decreases

Engineering Contradiction:
Improveflash storage reliabilityVSAvoidwrite operation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the address translation and data management functions from the storage controller and relocates them to the operating system. This removes the redundant write operations performed by the controller, as the OS directly manages flash memory addresses without requiring controller-mediated translation, thereby improving reliability and reducing unnecessary write cycles

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The operating system performs self-service by directly managing flash storage operations including address translation, data rewriting, and erasure operations. This eliminates the need for the storage controller to intervene in these management tasks, reducing redundant operations and improving system reliability while maintaining full control over flash drive operations

Inventive Principle:
Principle #25Self-service

2Productivity

If multiple processes control flash storage operations, then functionality is distributed, but redundancy increases and performance decreases

Engineering Contradiction:
Improvesystem performanceVSAvoidcontrol structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges the control functions for flash storage operations into a single process at the operating system level. By consolidating address translation, data management, and flash control operations under OS supervision, the system eliminates redundant control paths and reduces the complexity of inter-process coordination while improving overall performance

Inventive Principle:
Principle #5Merging (Combining)

3Speed

If storage controllers manage data rewriting and erasure, then storage management is automated, but latency increases

Engineering Contradiction:
Improveaccess latencyVSAvoidcontroller automation level
Core Design Contradiction:
SpeedVSExtent of automation

Solution Approach 1:

The operating system acts as an intermediary between the application layer and the flash storage hardware, directly managing data rewriting and erasure operations. This eliminates the additional latency introduced by controller-mediated operations, as the OS can issue commands directly to the flash memory without the extra processing layer, while maintaining full automation of storage management tasks

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12086431B1Selective communication protocol layering for synchronous replication
Publication Date: 2024.09.10 PURE STORAGE INC
  • US12086431B1 patent drawing
  • US12086431B1 patent drawing
  • US12086431B1 patent drawing

AI summary

Selective communication protocol layering for synchronous replication, including: initiating, by a first storage system issuing a command in accordance with a first communication protocol, a connection specifying the first storage system to be a target of storage content from a second storage system; receiving, from the second storage system by the first storage system, a connection request in accordance with the first communication protocol, wherein the connection request specifies the first storage system to be a source of storage content to the second storage system; and based on both initiating the connection and receiving the connection request in accordance with the first communication protocol: establishing, by the first storage system and in accordance with a second communication protocol, both a connection for receiving storage content from the second storage system and a connection for sending storage content to the second storage system.