PBFT consensus method based on clustering grouping and dynamic scoring

Through the improved k-means grouping and dynamic scoring mechanism, the node communication path and voting weight are optimized, and the PBFT algorithm has solved the problem of large communication overhead and poor scalability in large-scale distributed systems, improving consensus efficiency and system stability.

CN120238277APending Publication Date: 2025-07-01CHONGQING UNIV OF POSTS & TELECOMM
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510373849.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-27
Publication Date
2025-07-01

AI Technical Summary

Technical Problem

The existing PBFT algorithms lack consensus efficiency in environments with large communication overhead, poor scalability and high node delay.

Method used

The improved k-means method is used to group nodes, and combined with the dynamic scoring mechanism, the communication path and voting weight between nodes are optimized, and the node term mechanism is introduced to improve the fairness and stability of the system.

Benefits of technology

It reduces communication overhead, improves consensus efficiency and system security, enhances the scalability and robustness of PBFT in large-scale distributed systems, and reduces performance bottlenecks caused by delay.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120238277A_ABST
    Figure CN120238277A_ABST
Patent Text Reader

Abstract

The invention relates to a block chain technology, in particular to a PBFT consensus method based on clustering grouping and dynamic scoring, which comprises three parts of network initialization, a consensus stage and consensus node dynamic scoring, and is characterized in that an improved k-means method is introduced to intelligently group nodes; after each time of consensus, performing score value updating on the nodes participating in the consensus, and updating the score values of all the nodes participating in the same round of consensus to the same value; calculating the number of nodes participating in the next round of consensus according to the updated score value; according to the method, the expansibility and robustness of the PBFT are improved, the efficiency of a PBFT consensus protocol is optimized under the conditions that the number of nodes is huge and the node delay is relatively high, and the performance bottleneck caused by the delay is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to blockchain technology, and particularly to a PBFT consensus method based on clustering grouping and dynamic scoring. Background Art

[0002] As a typical distributed technology architecture, blockchain has been widely applied to various distributed application scenarios due to its high security and decentralization characteristics. Especially in the peer-to-peer (P2P) network, blockchain can achieve collaboration and transactions among nodes with diverse roles. In the P2P network environment, nodes interact in a trustless manner, and nodes with different roles participate according to their respective purposes and functions, forming a decentralized, transparent, and secure system. By storing the transaction records between nodes in the distributed ledger of each node, blockchain not only ensures the immutability of data but also significantly enhances the system's anti-interference ability against malicious attacks.

[0003] In the consensus mechanism of blockchain technology, PBFT (Practical Byzantine Fault Tolerance) as a widely used non-competitive consensus algorithm has been successfully applied in various distributed systems due to its high throughput and low latency characteristics. The PBFT algorithm ensures that the system can still reach a consensus efficiently and securely in the presence of Byzantine faulty nodes through the voting process among nodes, thereby guaranteeing the reliability and stability of the blockchain network when facing malicious node attacks. Compared with competitive consensus algorithms, PBFT significantly reduces the waste of computing resources and improves the system's efficiency and energy conservation through a voting-based consensus method. One of the advantages of PBFT is its high reliability. Even if there are up to 33% malicious nodes in the network, the system can still complete the consensus process. However, the existing PBFT algorithms and their improved versions still face some challenges, such as large communication overhead, poor scalability, and in an environment with high node latency, the existing PBFT algorithms based on reputation value grouping are difficult to maintain good consensus efficiency. Summary of the Invention

[0004] To solve the above problems, the present invention provides a PBFT consensus method based on clustering grouping and dynamic scoring, which effectively improves the efficiency, scalability, and security of PBFT in large-scale distributed systems by combining intelligent clustering grouping and dynamic scoring, and solves the problems of insufficient performance of existing PBFT algorithms in terms of communication overhead, scalability, and high node latency environment.

[0005] The specific solutions include:

[0006] Network initialization: Assign the same score value to all nodes, and use the improved k-means method to divide all nodes into multiple groups; randomly select a node as the organizational representative node in each group, and then randomly select a node from all organizational representative nodes as the primary node;

[0007] Consensus stage:

[0008] S1. Pre-prepare stage: When the primary node receives the request message m, the primary node assigns a sequence number x to the request message m, then broadcasts the pre-prepare message to the nodes participating in this round of consensus, and adds the pre-prepare message to the log;

[0009] S2. Prepare stage: After each node participating in this round of consensus receives the pre-prepare message, it performs in-group preparation operations and sends in-prepare messages to the organizational representative nodes of its own group; after each organizational representative node receives the in-prepare message, it performs out-group preparation operations and sends out-prepare messages;

[0010] S3. Confirmation stage: After each organizational representative node receives the out-prepare message, if the sender of the out-prepare message is an organizational representative node and the digest is correct, then add the out-prepare message to the log; judge whether there are 2 / 3×k out-prepare messages with the same view number, sequence number, and digest in the log. If so, send a confirmation message to the primary node and add the confirmation message to the log; k represents the number of organizational representative nodes;

[0011] S4. Commit stage: After the primary node receives the confirmation message, it performs confirmation reply operations and broadcasts the confirmation reply message; after each node participating in this round of consensus receives the confirmation reply message, it verifies whether the sender of the confirmation reply message is the primary node. If so, send a reply message to the client and add the reply message to the log; the client receives the reply message and adds the reply message to the log, and judges whether f+1 reply messages with the same return result are received for the request message m. If so, execute the request message m; f represents the maximum number of Byzantine nodes that the system can tolerate;

[0012] Dynamic scoring of consensus nodes: After consensus is completed, update the score values of all nodes participating in this round of consensus, and update the score values of all nodes participating in the same round of consensus to the same value; calculate the number of nodes participating in the next round of consensus based on the updated score values.

[0013] Advantages of the present invention:

[0014] The present invention combines the improved k-means method with PBFT, optimizes the node grouping method, reduces the communication overhead, and improves the cooperation efficiency among nodes in the network.

[0015] The present invention conducts dynamic scoring based on node behavior, ensures that the voting weight of each node in the consensus process is consistent with its reputation, and improves the consensus efficiency and system security.

[0016] The present invention proposes a node tenure mechanism. Through the dynamic rotation of node roles, it improves the fairness of the PBFT algorithm and the stability of the system, and avoids the long-term control of malicious nodes.

[0017] The present invention improves the scalability and robustness of PBFT. In the case of a large number of nodes and high node latency, it optimizes the efficiency of the PBFT consensus protocol and reduces the performance bottleneck caused by latency. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Figure 1 is a flowchart of the present invention;

[0019] Figure 2 is a schematic diagram of the consensus phase of an embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0020] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0021] The present invention provides a PBFT consensus method based on clustering grouping and dynamic scoring, as Figure 1 shown, including the following steps:

[0022] Network initialization: Assign the same scoring value to all nodes, and use the improved k-means method to divide all nodes into multiple groups; randomly select a node as the organizational representative node in each group, and then randomly select a node from all organizational representative nodes as the primary node.

[0023] Construct a topology structure based on intra-group communication priority according to the grouping results. Nodes within a group complete data exchange through direct communication, while cross-group nodes communicate through designated relay nodes only when necessary, avoiding network-wide broadcasts. Optimize the communication path to reduce the number of hops and redundant communication volume of message transmission.

[0024] Consensus phase:

[0025] S1. Pre-preparation phase.

[0026] When the primary node receives the request message m, the primary node assigns a sequence number x to the request message m, then broadcasts a pre-prepare message to the nodes participating in this round of consensus, and adds the pre-prepare message to the log; the pre-prepare message includes the request message m, the sequence number x, the primary node label i, and the view number v.

[0027] S2. Preparation stage.

[0028] Intra-group preparation stage: After each node participating in this round of consensus receives the pre-prepare message, it verifies whether the sender of the pre-prepare message is the primary node. If so, it adds the pre-prepare message to the log, and then sends an in-prepare message to the organizational representative node of its own group; the in-prepare message includes the digest d, the primary node label i, the sequence number x, and the view number v.

[0029] Inter-group preparation stage: After each organizational representative node receives the in-prepare message, if the sender of the in-prepare message belongs to the same group as itself and the digest d is correct, it adds the in-prepare message to the log; it judges whether there are already 2 / 3×k in-prepare messages with the same view number, sequence number, and digest in the log. If so, it sends an out-prepare message and adds the out-prepare message to the log; the out-prepare message includes the digest d, the primary node label i, the view number v, and the sequence number x.

[0030] S3. Confirmation stage.

[0031] After each organizational representative node receives the out-prepare message, if the sender of the out-prepare message is the organizational representative node and the digest d is correct, it adds the out-prepare message to the log; it judges whether there are 2 / 3×k out-prepare messages with the same view number, sequence number, and digest in the log. If so, it sends a confirmation message to the primary node and adds the confirmation message to the log; the confirmation message includes the digest d, the primary node label i, the view number v, and the sequence number x.

[0032] S4. Commitment stage.

[0033] Confirmation - Reply Phase: After the primary node receives the confirmation message, if the sender of the confirmation message is the organizational representative node and the digest d is correct, the confirmation message is added to the log; it is judged whether there are 2 / 3×k confirmation messages with the same view number, sequence number, and digest in the log. If so, a confirmation reply message is broadcast and the confirmation reply message is added to the log; the confirmation reply message includes the digest d, the primary node label i, the view number v, and the sequence number x.

[0034] Reply Phase: After each node participating in this round of consensus receives the confirmation reply message, it verifies whether the sender of the confirmation reply message is the primary node. If so, a reply message is sent to the client and the reply message is added to the log; the reply message includes the digest d, the primary node label i, the return result r1, and the view number v; the client receives the reply message and adds the reply message to the log, and judges whether f + 1 reply messages with the same return result are received for the request message m. If so, the request message m is executed.

[0035] Dynamic Scoring of Consensus Nodes: After consensus is completed, the scoring values of all nodes participating in this round of consensus are updated, and the scoring values of all nodes participating in the same round of consensus are updated to the same value; the number of nodes participating in the next round of consensus is calculated based on the updated scoring values.

[0036] Specifically, in the network initialization stage, the present invention introduces an improved k - means algorithm for intelligent grouping, which specifically includes the following steps:

[0037] S11. Collect the key performance indicators of each node in the network and normalize them. Assume that the data set D composed of the normalized key performance indicators of all nodes is D = {x1, x2, …, x N}, x n represents the normalized key performance of the nth (n = 1, 2, …, N) node, and N represents the number of nodes; set the number of clusters to k.

[0038] Specifically, the key performance indicators include parameters such as response speed, computing power, and network latency.

[0039] S12. Randomly select a node from the N nodes as the clustering center;

[0040] S13. Calculate the sum of the distances from each node to all clustering centers, denoted as

[0041]

[0042] where D(x n ) represents the sum of the distances of node x n , a i represents the jth clustering center, k’ represents the current number of clustering centers, and k’ ≤ k;

[0043] Calculate the probability P that each node is selected as the clustering center according to the sum of distances n , denoted as

[0044]

[0045] Generate a random number r, calculate the difference between each probability and the random number r, and select the node corresponding to the minimum difference as the clustering center;

[0046] S14. Repeat step S13 until the number of clustering centers is equal to k;

[0047] S15. For each node, calculate the distance between it and each clustering center, and assign the node to the cluster corresponding to the nearest clustering center;

[0048] S16. Determine whether the number of nodes in each cluster meets the preset requirements. If so, directly execute step S17; if not, start from the cluster with the largest number of nodes, randomly select nodes and assign them to the clusters that do not meet the preset requirements until the number of nodes in all clusters meets the preset requirements, and then execute step S17;

[0049] S17. Calculate the mean of each cluster as the new clustering center, and determine whether the clustering center has changed. If so, execute step S15, otherwise complete the grouping; where the mean calculation formula is

[0050]

[0051] where, u′ j represents the mean of the jth cluster c j , and |c j | represents the number of nodes in the jth cluster.

[0052] Specifically, the preset required quantity w = 3f + 1. Further, the number of clusters k (i.e., the number of clustering centers) satisfies k = [(N - 1) / w], where [] is the floor operation.

[0053] Specifically, in the present invention, the key performance indicators of the nodes are monitored in real time, and the performance of each group is calculated. Among them, the performance of each group is equal to the sum of the weighted sums of the key performance indicators of all nodes in the group divided by the number of nodes in the group. When the performance of each group is unbalanced, the improved k-means method is re-executed to group again to ensure the stability and efficiency of the grouping structure.

[0054] Specifically, the present invention introduces a dynamic scoring mechanism to score the participation behavior of each node in real time and dynamically adjust its voting weight in the consensus process according to the score of the node. Nodes with higher scores will obtain greater voting weights, which not only improves the fairness of the system but also effectively inhibits the influence of malicious nodes on the consensus result. The dynamic scoring mechanism can adaptively adjust the weights according to the real-time performance of the nodes, avoiding the unfairness or inefficiency caused by fixed weight allocation.

[0055] Specifically, after each round of consensus is completed, the score value of the nodes participating in the consensus is updated, and the update formula is

[0056]

[0057] where N i represents the number of nodes participating in the i-th round of consensus, S n′(i) represents the updated score value of the n'-th node participating in the i-th round of consensus, S n′(i-1) represents the score value of the n'-th node participating in the i-th round of consensus before update; ΔS n′(i) represents the score change amount of the n'-th node participating in the i-th round of consensus, which is an incremental or decremental value for quantitatively evaluating the performance of the node in this round of consensus.

[0058] The number of nodes participating in the next round of consensus is calculated based on the updated score value, including:

[0059] Calculate the initial quantity Number, which is expressed as

[0060]

[0061] where N represents the total number of nodes in the network, Score i represents the score value updated after the i-th round of consensus;

[0062] Judge whether the initial quantity Number is greater than or equal to 2N / 3. If so, the number of nodes participating in the next round of consensus is Number; if not, the number of nodes participating in the next round of consensus is 2N / 3 + 1.

[0063] Specifically, in the pre-preparation stage, determining the nodes participating in this round of consensus includes the following steps:

[0064] Obtain the number of nodes participating in this round of consensus, Number, calculated after the previous round of consensus is completed i ; sort all nodes in descending order of score values, and select the top Number i nodes to participate in this round of consensus. Making nodes with high scores as consensus nodes can better ensure the security in the consensus process and improve the fairness and fault tolerance of the system.

[0065] Specifically, to further enhance the robustness and fairness of the PBFT protocol, the present invention also introduces a node tenure mechanism, that is, regularly rotating the roles of nodes in the consensus process. For example, the primary node has a tenure time. Once the tenure time expires, the primary node no longer exercises its authority. At this time, a view change needs to be initiated to select a new primary node. This mechanism avoids a single node occupying a key role for a long time, thus preventing potential resource occupation problems. Through reasonable role rotation, it is ensured that each node has the opportunity to participate in the consensus, enhancing the flexibility and stability of the system.

[0066] During network initialization, the same reputation value is assigned to each node, and the request message reception time limit is set. When the primary node receives a request message, it starts a timer and closes the timer after reaching the request message reception time limit. If the nodes participating in the consensus process of this request message do not respond within the request message reception time limit, the following operations are performed:

[0067] S21. Identification of unresponsive nodes:

[0068] If the unresponsive node is the primary node or the organization representative node, its reputation value is reset to 100, and a view change message is sent to the remaining nodes. The view change message includes a new view number, 2f + 1 checkpoint messages, a sequence number x, a low watermark, and 2f pre-prepare messages.

[0069] If the unresponsive node is an ordinary node, its reputation value is reduced by 20, and a view change message is sent to the remaining nodes.

[0070] S22. View change judgment: After receiving the view change message, the node judges whether the new view number is less than the current view number and the sequence number is less than the low watermark. If so, the view change message is added to the log. It is judged whether there are 2f + 1 view change messages with the same new view number and sequence number in the log. If so, go to step S23; otherwise, do nothing.

[0071] S23. Select the node with the highest reputation value as the primary node, and then perform a view change:

[0072] The primary node updates the view number to the new view number, and updates the low watermark value in the view change message to the sequence number value. Then, a new view message is sent to the remaining nodes. The new view message includes a new view number, a set of checkpoint messages of the new view number, and a set of pre-prepare messages composed of pre-prepare messages corresponding to sequence numbers greater than the low watermark.

[0073] The ordinary node receives the new view message, updates the view number to the new view number, and updates the low watermark value in the view change message to the sequence number value. The set of pre-prepare messages is reprocessed under the new view number.

[0074] Specifically, in the present invention, when the network is initialized, the same reputation value is assigned to each node; when a node receives f + 1 response messages for the first time, its reputation will increase by 10. If a node sends an error message or times out, 20 points will be deducted.

[0075] In one embodiment, a blockchain network consisting of one client and 16 nodes is adopted, and the 16 nodes are divided into 4 groups. In one round of consensus, some nodes are selected to participate. For the convenience of description, nodes [1,1], [2,2], [3,3], and [4,1] are now used as the representative nodes of each organization, and the first node, that is, [1,1], is selected as the main node. After the client sends a request message to the main node, the update of the block ledger will be triggered throughout the network and realized after each node completes the consensus. The consensus process is as Figure 2 shown.

[0076] In the present invention, unless otherwise clearly specified and defined, terms such as "installation", "setting", "connection", "fixation", "rotation", etc. should be understood in a broad sense. For example, it can be a fixed connection, a detachable connection, or integrated; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium, and it can be the communication inside two components or the interaction relationship between two components. Unless otherwise clearly defined, for those of ordinary skill in the art, the specific meanings of the above terms in the present invention can be understood according to specific situations.

[0077] Although the embodiments of the present invention have been shown and described, for those of ordinary skill in the art, it can be understood that various changes, modifications, substitutions, and variations can be made to these embodiments without departing from the principles and spirits of the present invention, and the scope of the present invention is defined by the appended claims and their equivalents.

Claims

1. A PBFT consensus method based on clustering and dynamic scoring, characterized in that: The following steps are involved: Network initialization: assign the same score value to all nodes, and use the improved k-means method to divide all nodes into multiple groups; randomly select a node in each group as the organization representative node, and then randomly select a node from all organization representative nodes as the master node; Consensus phase: S1. Pre-preparation phase: When the master node receives a request message m, it assigns a sequence number x to the request message m, then broadcasts a pre-prepare message to the nodes participating in this round of consensus, and adds the pre-prepare message to the log; S2. Preparation phase: After receiving the pre-prepare message, each node participating in this round of consensus performs the group preparation operation and sends an in-prepare message to the organization representative node of the group to which it belongs; After receiving the in-prepare message, each organization representative node performs out-group preparation operations and sends an out-prepare message; S3. Confirmation phase: After each organization representative node receives the out-prepare message, if the sender of the out-prepare message is the organization representative node and the summary is correct, the out-prepare message is added to the log; it is determined whether there are 2 / 3×k out-prepare messages with the same view number, sequence number and summary in the log. If so, a confirmation message is sent to the master node and the confirmation message is added to the log; k represents the number of organization representative nodes; S4. Commit phase: After receiving the confirmation message, the master node performs a confirmation reply operation and broadcasts the confirmation reply message; After receiving the confirmation reply message, each node participating in this round of consensus verifies whether the sender of the confirmation reply message is the master node. If so, it sends a reply message to the client and adds the reply message to the log. The client receives the reply message and adds the reply message to the log to determine whether f+1 reply messages with the same return result have been received for the request message m. If so, it executes the request message m. f represents the maximum number of Byzantine nodes. Dynamic scoring of consensus nodes: After consensus is completed, the scoring values ​​of all nodes participating in this round of consensus are updated, and the scoring values ​​of all nodes participating in the same round of consensus are updated to the same value; the number of nodes participating in the next round of consensus is calculated based on the updated scoring values.

2. According to claim 1, a PBFT consensus method based on clustering grouping and dynamic scoring is characterized in that: Step S1 uses the improved k-means method to divide all nodes into multiple groups, including: S11. Collect the key performance indicators of each node in the network and normalize them. Assume that the normalized key performance indicators of all nodes form a data set D = {x1, x2, ..., x N }, x n represents the normalized key performance of n=1, 2, ..., N nodes, N represents the number of nodes; the number of classifications is set to k; S12. Randomly select a node from the N nodes as the cluster center; S13. Calculate the sum of the distances between each node and all cluster centers, expressed as Among them, D(x n ) represents node x n The sum of the distances, a i represents the jth cluster center, k' represents the current number of cluster centers, k'≤k; Calculate the probability P of each node being selected as the cluster center based on the sum of distances n , expressed as Generate a random number r, calculate the difference between each probability and the random number r, and select the node corresponding to the minimum difference as the cluster center; S14. Repeat step S13 until the number of cluster centers is equal to k; S15. For each node, calculate the distance between it and each cluster center, and assign the node to the cluster corresponding to the cluster center closest to it; S16. Determine whether the number of nodes in each cluster meets the preset requirements. If so, directly execute step S17; if not, start from the cluster with the largest number of nodes, randomly select nodes to be assigned to clusters that do not meet the preset requirements, until the number of nodes in all clusters meets the preset requirements, and then execute step S17; S17. Calculate the mean of each cluster as the new cluster center, and determine whether the cluster center has changed. If so, execute step S15, otherwise complete the grouping; the mean calculation formula is Among them, u′ j represents the jth cluster c j The mean value of |c j | represents the number of nodes in the jth cluster.

3. According to claim 1, a PBFT consensus method based on clustering grouping and dynamic scoring is characterized in that: In the pre-preparation phase, determining the nodes participating in this round of consensus includes the following steps: Get the number of nodes participating in this round of consensus calculated after the previous round of consensus is completed. i ; Sort all nodes in descending order according to their score values, and select the first Number i nodes participate in this round of consensus.

4. According to claim 1, a PBFT consensus method based on clustering grouping and dynamic scoring is characterized in that: After each round of consensus is completed, the score values ​​of the nodes participating in the consensus are updated. The update formula is: Among them, N i Indicates the number of nodes participating in the i-th round of consensus, S n′(i) S represents the updated score of the n'th node participating in the i-th round of consensus. n′(i-1) Indicates the score value of the n'th node participating in the i-th round of consensus before update; ΔS n′(i) Indicates the score change of the n'th node participating in the i-th round of consensus.

5. According to claim 1, a PBFT consensus method based on clustering grouping and dynamic scoring is characterized in that: The number of nodes participating in the next round of consensus is calculated based on the updated score value, including: Calculate the initial quantity Number, expressed as Among them, N represents the total number of nodes in the network, Score i Represents the updated score value after the i-th round of consensus; Determine whether the initial number Number is greater than or equal to 2N / 3. If so, the number of nodes participating in the next round of consensus is Number. If not, the number of nodes participating in the next round of consensus is 2N / 3+1.

6. A PBFT consensus method based on clustering grouping and dynamic scoring according to claim 1, characterized in that: When the network is initialized, each node is assigned the same reputation value and a time limit for receiving request messages is set; When the master node receives a request message, it starts the timer and stops the timer after the request message reception time limit is reached. If the nodes participating in the consensus process of the request message do not respond within the request message reception time limit, the following operations are performed: S21. Confirmation of the identity of the unresponsive node: If the unresponsive node is a master node or an organization representative node, its reputation value is reset to 100, and a view switch message is sent to the remaining nodes; the view switch message includes the new view number, 2f+1 checkpoint messages, sequence number, low watermark, and 2f pre-prepare messages; If the unresponsive node is a normal node, its reputation value is reduced by 20, and a view switching message is sent to the remaining nodes; S22. View switch judgment: After receiving the view switch message, the node judges whether the new view number is less than the current view number and the sequence number is less than the low watermark. If so, the view switch message is added to the log; it is judged whether there are 2f+1 view switch messages with the same new view number and sequence number in the log. If so, it proceeds to step S23, otherwise no operation is performed; S23. Select the node with the highest reputation value as the master node, and then execute the view switch: The master node updates the view number to the new view number and updates the low watermark value in the view switch message to the sequence number value; Then send a new view message to the rest of the nodes; The new view message includes a new view number, a checkpoint message set of the new view number, and a pre-prepare message set consisting of pre-prepare messages corresponding to sequence numbers greater than the low watermark; The common node receives the new view message, updates the view number to the new view number, updates the low watermark value in the view switch message to the sequence number value, and reprocesses the pre-prepared message set under the new view number.