Robust Overlay networks for Volunteer Computing - Decentralized Volunteer Computing Architecture with Fault-tolerance Design

University essay from Chalmers tekniska högskola/Institutionen för data- och informationsteknik

Abstract: The potential vulnerability of Centralized Volunteer Computing systems is the single point of failure, which can be triggered by attacks on malicious purpose, or even by the normal use which may lead to the resource exhaustion on the central server. To originally eliminate this vulnerability, a variety of decentralized architecture designs have been proposed for Volunteer Computing. These solutions widely adopted some decentralized design models, such as hierarchical design with super peers, and equal peer design in form of peer-to-peer networks. Regardless of the variation among them, certain vulnerabilities still exist due to the decentralization of the architecture, which makes the architecture less robust when network size changes fast due to volunteers’ join and leave. These proposals then also provided certain fault-tolerant mechanisms to against these vulnerabilities of the decentralized architecture, in order to improve the robustness of the system. But none of them paid attention on the locality of influence of the system changes, which should be taken into account as a key factor of the fault-tolerance design to strengthen the decentralized architecture of the system.

This thesis proposes a decentralized architecture design, which originally eliminates the single point of failure hazard, and breaks through the bottleneck of resource exhaustion. The proposed design is in form of a layered system: it uses the principle of MapRecude to construct a multi-level tree structure at the top layer. This structure is decentralized by distributing also the management and control of Volunteer Computing to volunteers. But it has a vulnerability that makes the tree structure fragile. To improve the robustness of the system, this thesis constructs a second layer – a peer-to-peer overlay network layer, coupling it with the top layer for fault-tolerance, and the construction of the second layer is guided by the consideration about the locality of influence of the system changes. A prototype has been built up where some simulations are launched to study the fault-tolerance of this decentralized system design for Volunteer Computing.

  CLICK HERE TO DOWNLOAD THE WHOLE ESSAY. (in PDF format)