Byzantine Fault Tolerant View Change Quorum Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Byzantine fault tolerance (BFT) state machine replication systems, replicas may prematurely move to a new view due to temporary issues, leading to unbounded waiting and reduced system performance, as there is no time-bound mechanism for peers to rejoin the current view upon issue resolution.

Innovation Solution

The introduction of a triggering phase in the view change procedure, where replicas exchange complaint messages to determine if a quorum is met before moving to the next view, allowing replicas to rejoin voting in the current view once issues are resolved.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If replicas immediately move to the next view upon detecting an issue, then the system can respond quickly to potential failures, but replicas may prematurely leave the current view during temporary issues causing unbounded waiting and reduced system performance

Engineering Contradiction:
Improvesystem reliabilityVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by having replicas send view change messages and collect quorum acknowledgments before actually transitioning to the next view. This preliminary phase allows replicas to verify that a sufficient quorum agrees on the view change, preventing premature transitions during temporary issues while maintaining quick response to actual failures.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where replicas exchange view change messages and track acknowledgments from other replicas. This feedback loop ensures that replicas only transition to the next view when they receive confirmation from a quorum, allowing the system to distinguish between temporary issues and actual failures requiring view changes.

Inventive Principle:
Principle #23Feedback

2Reliability

If replicas wait for a quorum of view change messages before moving to the next view, then premature view changes are prevented, but replicas experience unbounded waiting time when temporarily disconnected

Engineering Contradiction:
Improveview change correctnessVSAvoidwaiting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system changes the parameter of view change transition by introducing a quorum-based acknowledgment mechanism. Instead of immediately transitioning or waiting indefinitely, replicas transition when a specific parameter (quorum threshold) is met, providing a bounded and predictable waiting time while maintaining correctness.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system allows replicas to skip the indefinite waiting phase by implementing a mechanism where replicas can proceed with view change once they have collected sufficient acknowledgments, rather than waiting for all replicas to confirm. This rushes through the necessary verification process in a bounded time frame.

Inventive Principle:
Principle #21Skipping (Rushing through)

3Productivity

If replicas continue voting in the current view during temporary issues, then system performance is maintained, but the replica that detected the issue cannot coordinate the view change

Engineering Contradiction:
Improvesystem performanceVSAvoidview change coordination
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system merges the view change coordination function with the existing voting mechanism by having replicas send view change messages as part of their normal communication protocol. This integration allows replicas to maintain voting in the current view while simultaneously coordinating view changes, eliminating the need for separate coordination channels.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The view change message serves multiple functions: it acts as both a view change proposal and a voting mechanism for the current view. This multi-functionality allows replicas to maintain productivity by continuing to vote while also coordinating view changes through the same communication channel.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11609824B2Byzantine fault tolerant view change processing
Publication Date: 2023.03.21 VMWARE INC
  • US11609824B2 patent drawing
  • US11609824B2 patent drawing
  • US11609824B2 patent drawing

AI summary

In some embodiments, a method implements a Byzantine fault tolerant protocol. A first replica detects a condition to cause a view change procedure to move from a current view to a next view. The first replica sends a message indicating the first replica wants to leave the current view. Also, the first replica receives a set of messages from second replicas indicating a respective second replica wants to leave the current view. The first replica determines when a property is received to the leave the current view based on the set of messages from the set of second replicas. When it is determined the property is received, the first replica performs a process to leave the current view. When it is determined the property is not received, the first replica stays in the current view and participating in processing a request from a client in the current view.