Replicação Máquina de Estados Dinâmica
Abstract
State Machine Replication is an approach widely used to implement fault-tolerant systems. The idea behind this approach is to replicate the servers and to coordinate the interactions among clients and servers replicas, making all of these replicas present the same state evolution (changes). Although most of the State Machine Replication implementations were developed for static environments, where system settings (as the servers set) do not change, many applications need reconfigurations in order to change the system parameters and the servers set. In this sense, this paper describes our efforts to add support to reconfigurations in BFT-SMART, which is an State Machine Replication implementation able to tolerate Byzantine failures.References
Aguilera, M. (2004). A pleasant stroll through the land of infinitely many creatures. SIGACT News, 35(2):36–59.
Bessani, A. N., Alchieri, E. A. P., Correia, M., and da Silva Fraga, J. (2008). Depspace: a byzantine fault-tolerant coordination service. SIGOPS Oper. Syst. Rev., 42(4):163–176.
Bessani, A. N., Alchieri, E. A. P., and Souza, P. (2011). Bft-smart: High-performance byzantine-fault-tolerant state machine replication. http://code.google.com/p/bft-smart/.
Castro, M. and Liskov, B. (2002). Practical Byzantine fault-tolerance and proactive recovery. ACM Transactions on Computer Systems, 20(4):398–461.
Chandra, T. D. and Toueg, S. (1996). Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43(2):225–267.
Chockler, G. V., Keidar, I., and Vitenberg, R. (2001). Group communication specifications: A comprehesive study. ACM Computing Surveys, 33(4):427–469.
Clement, A., Wong, E., Alvisi, L., Dahlin, M., and Marchetti, M. (2009). Making byzantine fault tolerant systems tolerate byzantine faults. In Proceedings of the 6th USENIX symposium on Networked systems design and implementation, pages 153–168. USENIX Association.
Correia, M., Neves, N. F., and Verı́ssimo, P. (2006). From consensus to atomic broadcast: Time-free Byzantine-resistant protocols without signatures. The Computer Journal, 49(1).
Douceur, J. (2002). The sybil attack. In Proceedings of the 1st International Workshop on Peer-to-Peer Systems.
Dwork, C., Lynch, N. A., and Stockmeyer, L. (1988). Consensus in the presence of partial synchrony. Journal of ACM, 35(2):288–322.
Hadzilacos, V. and Toueg, S. (1994). A modular approach to the specification and implementation of fault-tolerant broadcasts. Technical report, Department of Computer Science, Cornell University, New York - USA.
Lamport, L., Shostak, R., and Pease, M. (1982). The Byzantine generals problem. ACM Transactions on Programing Languages and Systems, 4(3):382–401.
Lamport, L., Malkhi, D., and Zhou, L. (2010). Reconfiguring a state machine. SIGACT News, 41:63–73.
Lorch, J. R., Adya, A., Bolosky, W. J., Chaiken, R., Douceur, J. R., and Howell, J. (2006). The smart way to migrate replicated stateful services. In Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006, EuroSys ’06, pages 103–115, New York, NY, USA. ACM.
Schneider, F. B. (1990). Implementing fault-tolerant service using the state machine aproach: A tutorial. ACM Computing Surveys, 22(4):299–319.
Zielinski, P. (2004). Paxos at War. Technical Report UCAM-CL-TR-593, University of Cambridge Computer Laboratory, Cambridge, UK.
Bessani, A. N., Alchieri, E. A. P., Correia, M., and da Silva Fraga, J. (2008). Depspace: a byzantine fault-tolerant coordination service. SIGOPS Oper. Syst. Rev., 42(4):163–176.
Bessani, A. N., Alchieri, E. A. P., and Souza, P. (2011). Bft-smart: High-performance byzantine-fault-tolerant state machine replication. http://code.google.com/p/bft-smart/.
Castro, M. and Liskov, B. (2002). Practical Byzantine fault-tolerance and proactive recovery. ACM Transactions on Computer Systems, 20(4):398–461.
Chandra, T. D. and Toueg, S. (1996). Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43(2):225–267.
Chockler, G. V., Keidar, I., and Vitenberg, R. (2001). Group communication specifications: A comprehesive study. ACM Computing Surveys, 33(4):427–469.
Clement, A., Wong, E., Alvisi, L., Dahlin, M., and Marchetti, M. (2009). Making byzantine fault tolerant systems tolerate byzantine faults. In Proceedings of the 6th USENIX symposium on Networked systems design and implementation, pages 153–168. USENIX Association.
Correia, M., Neves, N. F., and Verı́ssimo, P. (2006). From consensus to atomic broadcast: Time-free Byzantine-resistant protocols without signatures. The Computer Journal, 49(1).
Douceur, J. (2002). The sybil attack. In Proceedings of the 1st International Workshop on Peer-to-Peer Systems.
Dwork, C., Lynch, N. A., and Stockmeyer, L. (1988). Consensus in the presence of partial synchrony. Journal of ACM, 35(2):288–322.
Hadzilacos, V. and Toueg, S. (1994). A modular approach to the specification and implementation of fault-tolerant broadcasts. Technical report, Department of Computer Science, Cornell University, New York - USA.
Lamport, L., Shostak, R., and Pease, M. (1982). The Byzantine generals problem. ACM Transactions on Programing Languages and Systems, 4(3):382–401.
Lamport, L., Malkhi, D., and Zhou, L. (2010). Reconfiguring a state machine. SIGACT News, 41:63–73.
Lorch, J. R., Adya, A., Bolosky, W. J., Chaiken, R., Douceur, J. R., and Howell, J. (2006). The smart way to migrate replicated stateful services. In Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006, EuroSys ’06, pages 103–115, New York, NY, USA. ACM.
Schneider, F. B. (1990). Implementing fault-tolerant service using the state machine aproach: A tutorial. ACM Computing Surveys, 22(4):299–319.
Zielinski, P. (2004). Paxos at War. Technical Report UCAM-CL-TR-593, University of Cambridge Computer Laboratory, Cambridge, UK.
Published
2013-05-06
How to Cite
ALCHIERI, Eduardo Adilio Pelinson; BESSANI, Alysson Neves; FRAGA, Joni da Silva.
Replicação Máquina de Estados Dinâmica. In: FAULT TOLERANCE WORKSHOP (WTF), 14. , 2013, Brasília/DF.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2013
.
p. 33-46.
ISSN 2595-2684.
DOI: https://doi.org/10.5753/wtf.2013.23014.
