Blockchain Consensus Timeout Adaptation for Failed Proposal Nodes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The Byzantine fault tolerance (BFT) consensus algorithm in blockchain technologies consumes excessive time due to long timeout waiting durations when proposal nodes fail, leading to impaired consensus performance.
Innovation Solution
Adjust proposal waiting parameters dynamically based on recorded parameters to reduce proposal waiting durations when proposal messages are not received within the specified duration, thereby minimizing time consumption in the consensus process.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the proposal waiting duration is set to a fixed long timeout to ensure reliability when proposal nodes fail, then the system reliability is improved, but the consensus time consumption increases significantly
Solution Approach 1:
The patent implements dynamic adjustment of proposal waiting duration based on the performance history of proposal nodes. Instead of using a fixed timeout value, the system records historical proposal waiting parameters for each node and adjusts the waiting duration dynamically. When a node consistently performs well, the waiting duration is reduced; when a node fails to propose, the duration is increased. This dynamic approach resolves the contradiction by adapting the timeout to actual node performance rather than using a static conservative value.
Solution Approach 2:
The patent changes the parameter of proposal waiting duration from a fixed value to a variable that is adjusted based on recorded historical data. The system maintains records of proposal waiting parameters for different nodes and uses this information to modify the waiting duration. This parameter change allows the system to optimize between reliability and time consumption by using shorter waits for reliable nodes and longer waits for unreliable nodes, thereby resolving the technical contradiction.
2Productivity
If the proposal waiting duration is reduced to improve consensus speed, then the productivity is improved, but the reliability decreases when proposal nodes fail
Solution Approach 1:
The patent applies different proposal waiting durations to different proposal nodes based on their individual performance characteristics. Instead of using a uniform timeout for all nodes, the system records historical proposal waiting parameters for each node and tailors the waiting duration to that specific node's reliability. This local quality approach allows the system to use short waiting durations for high-performance nodes (improving productivity) while using longer durations for unreliable nodes (maintaining reliability), thus resolving the contradiction between speed and reliability.
Solution Approach 2:
The system performs preliminary recording of proposal waiting parameters for each node before the actual consensus process. By maintaining historical data about each node's performance in advance, the system can make informed decisions about appropriate waiting durations before timeouts occur. This preliminary action enables the system to optimize waiting times based on proven performance patterns, improving productivity without sacrificing reliability.
Data Source
AI summary
A consensus method for a blockchain includes: obtaining, based on recorded proposal waiting parameters corresponding to blockchain nodes, a proposal waiting parameter corresponding to a current proposal node in the blockchain nodes; determining, based on the proposal waiting parameter corresponding to the current proposal node, proposal waiting duration corresponding to the current proposal node; and adjusting, in response to a proposal message initiated by the current proposal node is not received within the proposal waiting duration at a proposal stage of the current proposal node, the proposal waiting parameter corresponding to the current proposal node to reduce the proposal waiting duration corresponding to the current proposal node.


