Package bftsmart.tom.core
Class Synchronizer
- java.lang.Object
-
- bftsmart.tom.core.Synchronizer
-
public class Synchronizer extends java.lang.Object
This class implements the synchronization phase described in Joao Sousa's 'From Byzantine Consensus to BFT state machine replication: a latency-optimal transformation' (May 2012) This class implements all optimizations described at the end of the paper
-
-
Constructor Summary
Constructors Constructor Description Synchronizer(TOMLayer tom)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
deliverTimeoutRequest(LCMessage msg)
This method is called by the MessageHandler each time it received messages related to the leader changeLCManager
getLCManager()
void
removeSTOPretransmissions(int regency)
Remove all STOP messages being retransmitted up until the specified regencyvoid
resumeLC()
void
triggerTimeout(java.util.List<TOMMessage> requestList)
This method is called when there is a timeout and the request has already been forwarded to the leader
-
-
-
Constructor Detail
-
Synchronizer
public Synchronizer(TOMLayer tom)
-
-
Method Detail
-
getLCManager
public LCManager getLCManager()
-
triggerTimeout
public void triggerTimeout(java.util.List<TOMMessage> requestList)
This method is called when there is a timeout and the request has already been forwarded to the leader- Parameters:
requestList
- List of requests that the replica wanted to order but didn't manage to
-
removeSTOPretransmissions
public void removeSTOPretransmissions(int regency)
Remove all STOP messages being retransmitted up until the specified regency- Parameters:
regency
- The regency up to which STOP retransmission should be canceled
-
deliverTimeoutRequest
public void deliverTimeoutRequest(LCMessage msg)
This method is called by the MessageHandler each time it received messages related to the leader change- Parameters:
msg
- Message received from the other replica
-
resumeLC
public void resumeLC()
-
-