Gradual Stabilization under τ-Dynamics
Résumé
We introduce the notion of gradually stabilizing algorithm as any self-stabilizing algorithm achieving the following additional feature. If at most τ dynamic steps occur starting from a legitimate configuration, a gradually stabilizing algorithm first quickly recover to a configuration from which a specification offering a minimum quality of service is satisfied. It then gradually converges to specifications offering stronger and stronger safety guarantees until reaching a configuration (1) from which its initial (strong) specification is satisfied again, and (2) where it is ready to achieve gradual convergence again in case of up to $\tau$ new dynamic steps. By definition, a gradually stabilizing algorithm is also self-stabilizing. So, it still recovers within finite time (yet more slowly) after any other finite number of transient faults, including for example more than $\tau$ dynamic steps or other failure patterns such as memory corruptions, for example.
We illustrate this new property by considering three variants of a synchronization problem respectively called strong, weak, and partial weak unison. We propose a self-stabilizing algorithm which achieves gradual stabilization in the sense that after one dynamic step from a configuration which is legitimate for the strong unison, it immediately satisfies the specification of partial weak unison, then converges to the specification of weak unison in at most one round, and finally retrieves, after at most (mu+1) D1 + 1 additional rounds, a configuration (1) from which the specification of strong unison is satisfied, and (2) where it is ready to achieve gradual convergence again in case of another dynamic step. D1 is the diameter of the network after the dynamic step, and mu is a parameter satisfying mu >= n + #J, where n is the initial number of processes and #J is an upper bound on the number of processes that join the system during a dynamic step.
Origine | Fichiers produits par l'(les) auteur(s) |
---|