Alternate Voting Strategies for Dispersed Storage Network Consensus

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current distributed computing systems face challenges in ensuring data integrity and concurrency in dispersed storage networks, particularly when dealing with large-scale data storage and task processing across multiple geographically dispersed units, where conflicts and failures can lead to data loss and inefficiencies.

Innovation Solution

The implementation of a distributed computing system that utilizes a dispersed storage network (DSN) with error encoding and decoding mechanisms, along with alternate voting strategies like Instant-Runoff, Borda, and Condorcet voting to manage concurrency and ensure data integrity, allowing for secure and reliable storage and processing of data across multiple units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional distributed consensus mechanisms are used in dispersed storage networks, then basic data storage can be achieved, but data integrity and concurrency control fail under failures and conflicts

Engineering Contradiction:
Improvedata integrityVSAvoidconsensus mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the consensus problem into two distinct phases: a prepare phase where transactions are validated and ranked, and a commit phase where selected transactions are committed. This segmentation allows the system to achieve strong consistency and fault tolerance by handling preparation and commitment separately, with the prepare phase gathering votes from a quorum of nodes and the commit phase executing only those transactions that received sufficient support.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action through the prepare phase, where all necessary validation, ranking, and voting occurs before the actual commit phase. Transactions are pre-screened, ranked by priority, and voted upon in advance, allowing the system to determine which transactions will be committed without re-evaluating them during the commit phase. This preliminary preparation ensures that only valid, high-priority transactions are committed, maintaining data integrity even during failures.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If simple majority voting is used for concurrency management, then implementation is straightforward, but conflicts and data loss occur in large-scale dispersed networks

Engineering Contradiction:
Improvevoting mechanism simplicityVSAvoidconcurrency control reliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent implements dynamic voting thresholds that adapt based on the number of nodes and failure scenarios. Rather than using a fixed majority threshold, the system dynamically calculates the required quorum size to ensure that even with node failures, a sufficient number of votes can be gathered to maintain consistency. This dynamic adjustment allows the system to scale to large networks while maintaining reliability, as the voting requirements scale appropriately with network size and failure tolerance requirements.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent introduces a coordinator node as an intermediary that manages the voting process, collects votes from all nodes, determines the winner based on ranked preferences, and coordinates the commit phase. This intermediary simplifies the voting mechanism by centralizing the complex logic of vote aggregation and transaction selection, while still incorporating advanced voting strategies like ranked-choice voting to resolve conflicts. The coordinator acts as a mediator that translates simple node votes into reliable concurrency control decisions.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If multiple voting strategies are implemented to handle conflicts, then concurrency control improves, but system complexity increases

Engineering Contradiction:
Improveconflict resolution capabilityVSAvoidvoting strategy complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the voting process into distinct phases: preference collection, ranking, and winner determination. Each phase handles a specific aspect of conflict resolution, with nodes simply expressing preferences in the first phase and the coordinator performing the complex ranking and winner determination in subsequent phases. This segmentation allows multiple voting strategies to be implemented without increasing node complexity, as the sophisticated logic is concentrated in the coordinator rather than distributed across all nodes.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The coordinator node serves as an intermediary that implements the complex voting strategy logic, shielding individual nodes from complexity. Nodes only need to participate in the simplified preference expression phase, while the coordinator handles the intricate ranked-choice voting, Borda count, or other advanced strategies. This intermediary approach enables the system to incorporate multiple sophisticated voting strategies without burdening individual nodes with complex decision-making logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS12197414B2Establishing distributed consensus via alternate voting strategies in a dispersed storage network
Publication Date: 2025.01.14 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12197414B2 patent drawing
  • US12197414B2 patent drawing
  • US12197414B2 patent drawing

AI summary

A method includes generating a first lock requests, each for transmission to a storage unit, where each first lock request indicates a first encoded data slice. First ballots are received, each of the first ballots corresponds to a storage unit, each of the first ballots indicates a first ranking of first requesting entities that includes the DST processing unit. First election result data is generated based on the first ballots. The first election result data indicates a first winner. When the first winner is the DST processing unit, slice access requests are generated in response to the first election result data indicating that the first winner is the DST processing unit, each for transmission to one of the storage units, where each of the slice access requests indicates the first encoded data slice.