PBFT Node Active Recovery via View Change Requests
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing PBFT algorithm for Byzantine fault tolerance has inefficiencies in node failure recovery, requiring passive waiting for the next view change, which is not practical for real-world applications.
Innovation Solution
A method for active failure recovery of a single node improved based on the PBFT algorithm, where an abnormal node initiates a view change request and, if not responded to by a majority of nodes, proceeds to an active recovery process involving recovery requests and state recovery through fast synchronization algorithms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a node passively waits for the next view change to recover from anomaly, then the system maintains consistency through PBFT protocol, but the recovery time is excessively long and impractical for real-world applications
Solution Approach 1:
The patent applies preliminary action by having nodes proactively send recovery requests before they are needed. When a node detects anomaly in the master node, it immediately initiates a view change process and sends recovery requests to other nodes, rather than passively waiting for the next scheduled view change. This proactive approach significantly reduces recovery time while maintaining system consistency through the PBFT protocol's view change mechanism.
2Ease of operation
If a node continuously sends view change requests to recover from anomaly, then the node attempts to restore normal state, but the recovery process becomes inefficient and dependent on network timing
Solution Approach 1:
The patent implements feedback mechanisms where nodes monitor the network state and adjust their recovery behavior accordingly. When a node sends recovery requests, it receives responses from other nodes indicating their current view state. Based on this feedback, the node can determine when to stop sending requests and when recovery is complete, avoiding unnecessary continuous requests and improving recovery efficiency.
3Reliability
If the system requires (3f+1) nodes to tolerate f Byzantine faults, then Byzantine fault tolerance is achieved, but the network complexity and resource requirements increase
Solution Approach 1:
The patent applies universality by making all nodes in the network capable of performing multiple functions. Each node can act as both a client and a server, participating in view changes, sending recovery requests, and processing recovery responses. This multi-functionality allows the system to maintain Byzantine fault tolerance with (3f+1) nodes while reducing the specialized complexity that would otherwise be required for fault tolerance infrastructure.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
The present application discloses a method for active failure recovery of single node improved based on PBFT algorithm. In a PBFT network composed of (3f+1) nodes, a single node is prone to be caused to enter an abnormal state due to network delay or network disconnection. The abnormal node first initiates a view change request, if (2f+1) view change requests containing the same view value cannot be received within a specified period of time, the abnormal node enters a state to be recovered, and the node to be recovered initiates a recovery request to all nodes of the whole network, waits for replies from normal nodes and counts the number of replies, calculates a height of stable checkpoint of the whole network after receiving replies contain the same view value from (2f+1) nodes, and update the state thereof to finally complete the recovery. This method solves an inherent problem in the PBFT algorithm that a failure in single node cannot be recovered autonomously, so that a practicability of the PBFT algorithm is greatly improved.