Abstract
Given a set of n different deterministic finite state machines (DFSMs), we examine the problem of tolerating k faults among them. The traditional approach to this problem involves replication, requiring n.k backup DFSMs. For example, given two state machines, say A and B, to tolerate two faults, this approach maintains two copies each of A and B, thus resulting in a total of six DFSMs in the system. In this paper, we question the optimality of such an approach and present another approach based on the ‘fusion’ of state machines allowing for more efficient backups. We introduce the theory of fusion machines and provide an algorithm which can generate fusion machines corresponding to a given set of machines. Further, we have implemented this algorithm and tested it for various examples. It is important to note that our approach requires only k backup DFSMs, as opposed to the n.k backup DFSMs required by the replication approach.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Lamport, L.: The implementation of reliable distributed multiprocess systems. Computer networks 2, 95–114 (1978)
Pease, M., Shostak, R., Lamport, L.: Reaching agreement in the presence of faults. J. ACM 27 (1980)
Gafni, E., Lamport, L.: Disk paxos. Distrib. Comput. 16, 1–20 (2003)
Tenzakhti, F., Day, K., Ould-Khaoua, M.: Replication algorithms for the world-wide web. J. Syst. Archit. 50 (2004)
Schneider, F.B.: Implementing fault-tolerant services using the state machine approach: A tutorial. ACM Computing Surveys 22, 299–319 (1990)
Sivasubramanian, S., Szymaniak, M., Pierre, G., van Steen, M.: Replication for web hosting systems. ACM Comput. Surv. 36, 291–334 (2004)
Budhiraja, N., Marzullo, K., Schneider, F.B., Toueg, S.: The primary-backup approach, 199–216 (1993)
Sussman, J.B., Marzullo, K.: Comparing primary-backup and state machines for crash failures. In: PODC 1996. Proceedings of the fifteenth annual ACM symposium on Principles of distributed computing, p. 90. ACM Press, New York (1996)
Schneider, F.B.: Byzantine generals in action: Implementing fail-stop processors. ACM Trans. Comput. Syst. 2, 145–154 (1984)
Garg, V.K., Ogale, V.: Fusible data structures for fault tolerance. In: ICDCS 2007. Proceedings of the 27th International Conference on Distributed Computing Systems (2007)
Huffman, D.A.: The synthesis of sequential switching circuits. Technical report, Massachusetts, USA (1954)
Hopcroft, J.E.: An n log n algorithm for minimizing states in a finite automaton. Technical report, Stanford, CA, USA (1971)
Balasubramanian, B., Ogale, V., Garg, V.K.: Fusion generator (implemented in java 1.6). In Parallel and Distributed Systems Laboratory (2007), http://maple.ece.utexas.edu
Balasubramanian, B., Ogale, V., Garg, V.K.: Fault tolerance in finite state machines using fusion. Technical Report TR-PDS-2007-003, Parallel and Distributed Systems Laboratory, The University of Texas at Austin (2007)
Glushkov, V.M.: The abstract theory of automata. RUSS MATH SURV. 16, 1–53 (1961)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Balasubramanian, B., Ogale, V., Garg, V.K. (2007). Fault Tolerance in Finite State Machines Using Fusion. In: Rao, S., Chatterjee, M., Jayanti, P., Murthy, C.S.R., Saha, S.K. (eds) Distributed Computing and Networking. ICDCN 2008. Lecture Notes in Computer Science, vol 4904. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-77444-0_10
Download citation
DOI: https://doi.org/10.1007/978-3-540-77444-0_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-77443-3
Online ISBN: 978-3-540-77444-0
eBook Packages: Computer ScienceComputer Science (R0)