PhD Thesis: BYZANTINE FAULT TOLERANCE: FROM STATIC SELECTION TO DYNAMIC SWITCHING
نویسنده
چکیده
Byzantine Fault Tolerance (BFT) is becoming crucial with the revolution of online applications and due to the increasing number of innovations in computer technologies. Although dozens of BFT protocols have been introduced in the previous decade, their adoption by practitioners sounds disappointing. To some extant, this indicates that existing protocols are, perhaps, not yet too convincing or satisfactory. The problem is that researchers are still trying to establish ‘the best protocol’ using traditional methods, e.g., through designing new protocols. However, theoretical and experimental analyses demonstrate that it is hard to achieve one-size-fits-all BFT protocols. Indeed, we believe that looking for smarter tactics like ‘fasten fragile sticks with a rope to achieve a solid stick’ is necessary to circumvent the issue. In this thesis, we introduce the first BFT selection model and algorithm that automate and simplify the election process of the ‘preferred’ BFT protocol among a set of candidate ones. The selection mechanism operates in three modes: Static, Dynamic, and Heuristic. For the two latter modes, we present a novel BFT system, called Adapt, that reacts to any potential changes in the system conditions and switches dynamically between existing BFT protocols, i.e., seeking adaptation. The Static mode allows BFT users to choose a single BFT protocol only once. This is quite useful in Web Services and Clouds where BFT can be sold as a service (and signed in the SLA contract). This mode is basically designed for systems that do not have too fluctuating states. In this mode, an evaluation process is in charge of matching the user preferences against the profiles of the nominated BFT protocols considering both: reliability, and performance. The elected protocol is the one that achieves the highest evaluation score. The mechanism is well automated via mathematical matrices, and produces selections that are reasonable and close to reality. Some systems, however, may experience fluttering conditions, like variable contention or message payloads. In this case, the static mode will not be efficient since a chosen protocol might not fit the new conditions. The Dynamic mode solves this issue. Adapt combines a collection of BFT protocols and switches between them, thus, adapting to the changes of the underlying system state. Consequently, the ‘preferred’ protocol is always polled for each system state. This yields an optimal quality of service, i.e., reliability and performance. Adapt monitors the system state through its Event System, and uses a Support Vector Regression method to conduct run time predictions for the performance of the protocols (e.g., throughput, latency, etc). Adapt also operates in a Heuristic mode. Using predefined heuristics, this mode optimizes user preferences to improve the selection process. The evaluation of our approach shows that selecting the ‘preferred’ protocol is automated and close to reality in the static mode. In the Dynamic mode, Adapt always achieves the optimal performance among available protocols. The evaluation demonstrates that the overall system performance can be improved significantly too. Other cases explore that it is not always worthy to switch between protocols. This is made possible through conducting predictions with high accuracy, that can reach more than 98% in many cases. Finally, the thesis shows that Adapt can be smarter through using heursitics.
منابع مشابه
Byzantine Fault Tolerance: From Static Selection To Dynamic Switching. (Byzantine Fault Tolerance: From Static Selection To Dynamic Switching)
Byzantine Fault Tolerance (BFT) is becoming crucial with the revolution of online applications and due to the increasing number of innovations in computer technologies. Although dozens of BFT protocols have been introduced in the previous decade, their adoption by practitioners sounds disappointing. To some extant, this indicates that existing protocols are, perhaps, not yet too convincing or s...
متن کاملBFT Selection
One-size-fits-all protocols are hard to achieve in Byzantine fault tolerance (BFT). As an alternative, BFT users, e.g., enterprises, need an easy and efficient method to choose the most convenient protocol that matches their preferences best. The various BFT protocols that have been proposed so far differ significantly in their characteristics and performance which makes choosing the ‘preferred...
متن کاملByzantine Agreement & Fault Diagnosis Agreement in Dynamic Ad-Hoc Environment
Email: [email protected] Corresponding Author: Shu-Ching Wang Abstract. Since wireless communication and mobile computing are becoming more and more ubiquitous, the reliability and fault tolerance of the Mobile Ad-hoc Network (MANET) has become an important topic. In order to provide a reliable environment, a mechanism that allows a set of nodes to reach a common agreement, even in the pr...
متن کاملA Correctness Proof for a Byzantine-Fault-Tolerant Read/Write Atomic Memory with Dynamic Replica Membership
We prove correctness of a Byzantine-fault-tolerant replication algorithm for a read/write atomic memory that supports a dynamic replica set.
متن کاملGet Off My Prefix! Using Gerontocratic Policies to Improve the Security and Stability of Internet Routing
Inter-domain routing in today’s Internet is plagued by security and reliability problems such as prefix hijacking and route oscillation. The reasons include Byzantine faults (often caused by misconfiguration) and deliberate actions by malicious autonomous systems. We propose a simple family of dynamic route selection policies which can be adopted unilaterally by any autonomous system (AS), do n...
متن کامل