Distributed stabilizing data structures

Distributed stabilizing data structures(2006)

引用 22|浏览1
暂无评分
摘要
Distributed algorithms aim to achieve better performance than sequential algorithms in terms of time complexity (or asymptotic time complexity) while keeping or lowering the memory requirement (space complexity) in a node. (In sequential algorithms, the memory requirement is the memory requirement of the algorithm itself.) Self-stabilizing distributed algorithms aim to achieve a comparable performance to non-stabilizing distributed algorithms when transient faults or arbitrary initialization cause the system to enter a state where a non-stabilizing algorithm cannot continue to properly perform its task. Transient faults can affect an existing data structure and alter its data content. As a result, the data structure may lose its properties, and the operations defined over the data structure will have unpredictable and undesirable results, making the data structure unusable. We present several self or snap-stabilizing algorithms for particular data structures. We propose an optimal self-stabilizing distributed algorithm for simultaneously activating non-adjacent processes on an oriented chain (Algorithm SSDS ). We use Algorithm SSDS to accomplish two tasks: local mutual exclusion and line sorting. We propose two uniform, self-stabilizing, deterministic protocols on oriented chains: a time and space optimal solution to the local mutual exclusion problem (Algorithm LMEC ), and a space and (asymptotic) time optimal solution to the distributed sorting problem (Algorithm SORTc ). We extend Algorithm SSDS to an asynchronous oriented ring with a distinguished node with some minor modifications, and we obtain general self-stabilization for simultaneously activated non-adjacent processes in an oriented ring with a distinguished process (Algorithm SSDSR ). We use Algorithm SSDSR to accomplish two tasks: local resource allocation and ring sorting. We propose two uniform, self-stabilizing, deterministic protocols on oriented rings: a time and space optimal solution to the local resource allocation problem (Algorithm LRAR ), and a space and (asymptotic) time optimal solution to the distributed sorting problem (Algorithm SORTr ). We extend Algorithm SSDS to an asynchronous rooted tree, and we obtain general self-stabilization for simultaneously activated non-adjacent processes in a rooted tree (Algorithm SSDST ). We then give two applications of Algorithm SSDST : a time and space optimal solution to the local mutual exclusion problem (Algorithm LMET ) and a space and (asymptotically) time optimal solution to the min heap problem (Algorithm HEAP ). In proving the time complexity of sorting, we introduce the notion of pseudo-time, similar to logical time introduced by Lamport. We present the first snap-stabilizing distributed binary search tree (BST) algorithm. The proposed algorithm uses a heap algorithm (Algorithm Heap) as a preprocessing step. This is also the first snap-stabilizing distributed solution to the heap problem.
更多
查看译文
关键词
Algorithm HEAP,time optimal solution,Algorithm SSDS,Algorithm SSDST,space optimal solution,Algorithm LMET,time complexity,data structure,Algorithm LMEC,Algorithm SSDSR
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要