Virtually Synchronous Paxos Protocol for Unbounded Consensus Progress

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed computing systems face challenges in maintaining synchronization between individual devices due to the complexity of time-keeping, which existing protocols like Paxos struggle to address effectively, especially in reconfigurable environments where fault tolerance and immediate decision effectiveness are crucial.

Innovation Solution

Virtually Synchronous Paxos (VS Paxos) is a self-reconfigurable protocol that allows for unlimited progress during stability periods by delaying only reconfiguration decisions, enabling a leader to initiate an unbounded number of consensus instances without bounds, and ensures immediate effectivity of reconfiguration decisions by determining the quorum set for the next command.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a leader waits for command completion before proceeding to the next command, then decision correctness is improved, but system progress speed deteriorates

Engineering Contradiction:
Improvedecision correctnessVSAvoidsystem progress speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by allowing the leader to prepare and queue multiple commands in advance without executing them immediately. The leader can propose commands to consensus instances ahead of time, and only executes them when ready, thereby maintaining decision correctness while improving overall system progress speed through command pipelining.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments the command execution process into separate phases: command preparation (queuing), command proposal (to consensus instances), and command execution. This segmentation allows different parts of the system to operate independently - the leader can prepare commands while other nodes execute previous commands, resolving the contradiction between correctness and speed.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If reconfiguration decisions are made immediately, then adaptability is improved, but system stability deteriorates

Engineering Contradiction:
Improvereconfiguration speedVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSStability of the object's composition

Solution Approach 1:

The patent applies preliminary action to reconfiguration by allowing the leader to prepare and queue reconfiguration commands in advance. The system can propose reconfiguration decisions to consensus instances ahead of time, and only executes them when the system is ready, thereby maintaining stability while improving adaptability through preparedness.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent makes the reconfiguration process dynamic by allowing the quorum set to be modifiable and reconfigurable. The system can adapt its configuration based on current needs while maintaining stability through controlled execution. The quorum set changes dynamically when reconfiguration commands are executed, balancing adaptability and stability.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If an artificial limit is placed on the number of consensus instances, then device complexity is reduced, but system versatility deteriorates

Engineering Contradiction:
Improveconsensus instance managementVSAvoidprogress horizon
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent segments the consensus instance management into a queue-based structure where commands are organized in sequences. This segmentation allows the system to handle an unbounded number of instances through a unified management approach, reducing perceived complexity while maintaining versatility.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by pre-allocating and queuing consensus instances in advance. The system can prepare multiple instances ahead of time without immediately managing them all actively, thereby reducing immediate complexity while maintaining the capability to handle unbounded progress horizons when needed.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7849223B2Virtually synchronous Paxos
Publication Date: 2010.12.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7849223B2 patent drawing
  • US7849223B2 patent drawing
  • US7849223B2 patent drawing

AI summary

A variant of Paxos is referred to as Virtually Synchronous Paxos (VS Paxos). VS Paxos is a self-reconfigurable protocol that allows for delay only for reconfiguration decisions, without placing an artificial limit on regular decisions. In an implementation of VS Paxos, subject to any restriction on reconfiguration decisions, a leader may activate an unbounded number of consensus instances ahead. A VS Paxos technique permits unlimited progress during stability periods, in that a leader may initiate commands at any number of consensus instances without bound. VS Paxos waits for command completion only when configuration-changing commands occur.