Regeneration of Replicated Objects: A Technique and Its Eden Implementation

We have designed and implemented a replicated directory system based on a method called Regeneration. The directory system allows selection of arbitrary objects to be replicated, choice of the number of replicas for each object, and placement of the copies on machines with independent failure modes. Copies may become inaccessible due to node crashes, but as long as a single copy survives, the replication level is restored by automatically replacing lost copies on other active machines. The paper focuses on the Regeneration algorithm for replica replacement and on its application to a replicated directory structure in the Eden system. Analytically, we use a simple probabilistic approach to compare the availability provided by the algorithm with other replication techniques. Empirically, we have measured the performance of the implementation.