@phdthesis{21628,
abstract = {{This thesis considers the realization of distributed data structures and the construction of distributed protocols for self-stabilizing overlay networks.
In the first part of this thesis, we provide distributed protocols for queues, stacks and priority queues that serve the insertion and deletion of elements within a logarithmic amount of rounds.
Our protocols respect semantic constraints such as sequential consistency or serializability and the individual semantic constraints given by the type (queue, stack, priority queue) of the data structure.
We furthermore provide a protocol that handles joining and leaving nodes.
As an important side product, we present a novel protocol solving the distributed $k$-selection problem in a logarithmic amount of rounds, that is, to find the $k$-smallest elements among a polynomial number of elements spread among $n$ nodes.
The second part of this thesis is devoted to the construction of protocols for self-stabilizing overlay networks, i.e., distributed protocols that transform an overlay network from any initial (potentially illegitimate) state into a legitimate state in finite time.
We present protocols for self-stabilizing generalized De Bruijn graphs, self-stabilizing quadtrees and self-stabilizing supervised skip rings.
Each of those protocols comes with unique properties that makes it interesting for certain distributed applications.
Generalized De Bruijn networks provide routing within a constant amount of hops, thus serving the interest in networks that require a low latency for requests.
The protocol for the quadtree guarantees monotonic searchability as well as a geometric variant of monotonic searchability, making it interesting for wireless networks or applications needed in the area of computational geometry.
The supervised skip ring can be used to construct a self-stabilizing publish-subscribe system.
}},
author = {{Feldmann, Michael}},
title = {{{Algorithms for Distributed Data Structures and Self-Stabilizing Overlay Networks}}},
doi = {{10.17619/UNIPB/1-1113}},
year = {{2021}},
}