Self-Stabilizing Emulation of State-Machine Replication: Implementation and Evaluation of Self-Stabilizing Emulation of State-Machine Replication with Global Restart Mechanism - Karlberg, Daniel; Kem, Daniel (My University, 2021)
The use of distributed systems has grown dramatically in our modern society over the past few decades. Today we see many digital services being distributed such as cloud storage and automotive systems. These distributed services are being used by every sector of our society from banking and finance to more traditional industries such as manufacturing and military. In other words, These systems are part of our daily lives and are vital to the daily operation of our society. At the same time as these systems are important, they also create critical points in our society. Faults and failures of these distributed systems could have large negative effects on fragile parts of society. This is the reason for the initialization of this project, to implement and validate recent research and advancements in the area of self-stabilization and fault-tolerance for distributed systems, and evaluate if the research can increase the levels of faulttolerance in these systems. This research could allow distributed systems to not only handle communication faults and crashing of participants in the system, but also arbitrary transient faults. Our project has contributed with the first, the best to our knowledge, real-world implementation and evaluation of a stack of self-stabilizing distributed algorithms, which together provide the service of a self-stabilizing emulation of state-machine replication. The project demonstrates that recent advancements in the area of selfstabilization can provide real-world distributed systems with a higher degree of fault-tolerance.
Keywords: self-stabilizing; self-stabilization; distributed systems; distributed computing; fault-tolerance; consensus; reconfiguration; state-machine; replication; totalorder broadcast