1

Understand that Quorum supports IBFT. Am trying to decide what is the suitable number of nodes to setup up to support X number of byzantine nodes. Using PBFT formula, 3F + 1, I am trying to come out with the number of nodes is required.

E.g., 3F + 1

Assuming 1 byzantine node, is it 3(1) + 1 = 4 nodes to have as minimum no. of nodes nodes count or 4 honest nodes plus 1 malicious nodes, i.e., total of 5 nodes?

Assuming 2 byzantine nodes , is it 3(2) + 1 = 7 nodes to have as minimum no. of nodes count or 7 honest nodes plus 2 malicious nodes, i.e., total of 9 nodes?

Assuming 3 byzantine nodes, is it 3(3) + 1 = 10 nodes to have as minimum no. of nodes count or 10 nodes plus 3 malicious nodes, i.e., total of 13 nodes?

Is it the former or latter count?

1
  • I've edited your question to remove the signature. Please do not tag posts with a signature, as this simply unnecessarily clutters the question (Your name and profile appear below the post already). Please see meta.stackexchange.com/questions/5029/… Jul 6, 2018 at 17:09

2 Answers 2

1

IBFT mode of Quorum is 2F+1. Heres the actual EIP with detailed explanation of the IBFT rounds: https://github.com/ethereum/EIPs/issues/650

3
  • 1
    Thanks but the link says: "Istanbul BFT inherits from the original PBFT by using 3-phase consensus, PRE-PREPARE, PREPARE, and COMMIT. The system can tolerate at most of F faulty nodes in a N validator nodes network, where N = 3F + 1."
    – Nathan Aw
    Jul 31, 2018 at 0:33
  • What happens where there arent enough nodes to reach consensus? Does transactions sent become queued (i.e. processed when other nodes come back online) or transactions will not be processed at all?
    – Nathan Aw
    Jul 31, 2018 at 0:36
  • Quorum is based on concept of block finality: if there is no consensus, chain does not advance.
    – fixanoid
    Jul 31, 2018 at 13:13
1

To reach consensus w IBFT in the presence of F s faulty nodes require N > 3F validator nodes, or N=3F+1. So to Nathan's original question, the total nodes are the former.

To progress in the 3-phase commit requires responses from 2F+1 nodes; so you need ~ 2/3 of the nodes to respond appropriately to reach consensus (7 out of 10 in the case F=3).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.