In Practical Byzantine Fault Tolerance(PBFT), the reason why 3f+1
is needed as the way I understand is to allow for the worst case scenario where:
1. f+1 nodes are normal
2. f nodes are unresponsive
3. f nodes are faulty
So in the PREPARE
phase, how is it possible for each node to receive 2f
similar PREPARE
messages from other nodes to start the COMMIT
phase?
Since only f+1
nodes can reliably send the same PREPARE
message, each node should only receive f
of the same PREPARE
message (not counting their own). So how is it possible for them to receive 2f
PREPARE
message to start the quorum and proceed to the next stage?