Self-stabilizing Communication Abstractions for Replicated Systems
Examensarbete för masterexamen
A self-stabilizing application can in the presence of transient faults resume its regular execution in a finite amount of time. The benefits of self-stabilizing replicated applications are becoming increasingly important as the traffic on the internet grows and the need for globally accessibly storage increases as we become more connected. There are two studied protocols, uniform reliable broadcast and set-constrained delivery broadcast. These can be used in combination to implement more powerful applications, one such example is the atomic snapshot application which is implemented and verified together with the studied protocols. By combining multiple protocols together, the implementation become more general and provide more reusability for the applications. This report validates the correctness and evaluates the performance of two selfstabilizing communication protocols as well as the applications. The main focus of the report is the correctness and performance of the studied protocols under different system settings and environments. In order to achieve this, two different environment is used for experimental evaluation and the system settings are varied across the experiments. The authors believe that the current implementation is correct, since the system is able to recover after the last occurrence of a transient fault. The recovery period is fairly short and has negligible impact on performance.
science , computer science , engineering , thesis , self-stabilization , faulttolerance , replicated systems , distributed systems , computer network