SAN Virtualizer Write Coordination for Mirrored Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Storage Area Networks (SANs), there is a challenge in determining the appropriate point for generating a transfer ready command when handling write operations to mirrored storage volumes, as existing methods are unclear on how to coordinate data transfer across multiple mirrored storages efficiently.

Innovation Solution

A virtualizer in the SAN receives write commands and sends them to mirrored storages, buffering transfer ready messages until all storages are ready, ensuring data is sent only after confirmation from all mirrored storages, thereby managing data transfer efficiently across multiple mirrored volumes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the virtualizer waits for transfer ready messages from all mirrored storages before sending data, then data reliability is improved, but write operation speed deteriorates

Engineering Contradiction:
Improvedata reliabilityVSAvoidwrite operation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The virtualizer sends write commands to all mirrored storages in advance and buffers incoming data until transfer ready messages are received. This preliminary coordination of storage readiness ensures data reliability while minimizing waiting time for actual data transfer.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The virtualizer acts as an intermediary between the initiator and mirrored storages, managing the coordination of transfer ready messages and data transfer. It buffers data and controls the timing of transfers to multiple storages, resolving the contradiction between reliability and speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the virtualizer sends data to all mirrored storages simultaneously, then write operation speed is improved, but data consistency deteriorates

Engineering Contradiction:
Improvewrite operation speedVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSStability of the object's composition

Solution Approach 1:

The virtualizer uses feedback from transfer ready messages received from each mirrored storage to determine when to send data. This feedback mechanism ensures that data is sent only when all storages are ready, maintaining data consistency across the mirrored volume.

Inventive Principle:
Principle #23Feedback

3Reliability

If the virtualizer buffers data until all mirrored storages are ready, then data loss prevention is improved, but write operation latency increases

Engineering Contradiction:
Improvedata loss preventionVSAvoidwrite operation latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The virtualizer performs preliminary actions by sending write commands to all mirrored storages and receiving transfer ready messages before buffering and sending actual data. This advance coordination reduces the overall latency by preparing the storage system in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The virtualizer maintains continuous useful action by buffering data and immediately transferring it to all mirrored storages once readiness is confirmed, minimizing the time data remains buffered and reducing overall write operation latency.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS7827251B2Fast write operations to a mirrored volume in a volume manager
Publication Date: 2010.11.02 CISCO TECHNOLOGY INC
  • US7827251B2 patent drawing
  • US7827251B2 patent drawing
  • US7827251B2 patent drawing

AI summary

In one embodiment, a method is provided comprising: receiving, at a virtualizer, a write command from an initiator in a storage area network, wherein the storage area network includes the initiator and a plurality of mirrored storages; sending, from the virtualizer, a write command to the plurality of mirrored storages; receiving, at the virtualizer, a transfer ready message from a first of the plurality of mirrored storages; sending a transfer ready message from the virtualizer to the initiator in response to the receiving of the transfer ready message from the first of the plurality of mirrored storages; receiving, at the virtualizer, a data message from the initiator; and sending, from the virtualizer, a data message to the plurality of mirrored storage once transfer ready messages have been received from each of the plurality of mirrored storages.