3 research outputs found

    The Weakest Failure Detector for Solving Wait-Free, Eventually Bounded-Fair Dining Philosophers

    Get PDF
    This dissertation explores the necessary and sufficient conditions to solve a variant of the dining philosophers problem. This dining variant is defined by three properties: wait-freedom, eventual weak exclusion, and eventual bounded fairness. Wait-freedom guarantees that every correct hungry process eventually enters its critical section, regardless of process crashes. Eventual weak exclusion guarantees that every execution has an infinite suffix during which no two live neighbors execute overlapping critical sections. Eventual bounded fairness guarantees that there exists a fairness bound k such that every execution has an infinite suffix during which no correct hungry process is overtaken more than k times by any neighbor. This dining variant (WF-EBF dining for short) is important for synchronization tasks where eventual safety (i.e., eventual weak exclusion) is sufficient for correctness (e.g., duty-cycle scheduling, self-stabilizing daemons, and contention managers). Unfortunately, it is known that wait-free dining is unsolvable in asynchronous message-passing systems subject to crash faults. To circumvent this impossibility result, it is necessary to assume the existence of bounds on timing properties, such as relative process speeds and message delivery time. As such, it is of interest to characterize the necessary and sufficient timing assumptions to solve WF-EBF dining. We focus on implicit timing assumptions, which can be encapsulated by failure detectors. Failure detectors can be viewed as distributed oracles that can be queried for potentially unreliable information about crash faults. The weakest detector D for WF-EBF dining means that D is both necessary and sufficient. Necessity means that every failure detector that solves WF-EBF dining is at least as strong as D. Sufficiency means that there exists at least one algorithm that solves WF-EBF dining using D. As such, our research goal is to characterize the weakest failure detector to solve WF-EBF dining. We prove that the eventually perfect failure detector 3P is the weakest failure detector for solving WF-EBF dining. 3P eventually suspects crashed processes permanently, but may make mistakes by wrongfully suspecting correct processes finitely many times during any execution. As such, 3P eventually stops suspecting correct processes

    Approved by Adviser

    No full text
    This thesis describes theoretical and practical contributions to isolating partial failures in distributed systems to small, local neighborhoods of impact. Specifically, we develop scalable techniques for minimizing the impact of crash faults in a broad class of static resource allocation problems. Our particular lens of investigation focuses on the generalized dining philosophers problem as a fundamental abstraction for distributed resource allocation. Within this domain of inquiry, we construct fault-tolerant algorithms that restrict the scope of failures precipitated by crash faults. Additionally, we prove impossibility results for our techniques and optimality results for our constructions under different models of mutual exclusion and process synchronization. An overarching theme of our work is the central role of locality (and the limitations imposed by local knowledge) in the construction of scalable algorithms supporting the survivability and availability of distributed systems from a global perspective. ii To my wife Hilary, without whom not. iii ACKNOWLEDGMENTS First and foremost I would like to thank my committee members Paul Sivilotti, Bruce Weide, and Neelam Soundarajan for their friendship and wisdom. Years ago I read a dissertation on computer architecture, the dedication in which I cannot state any better myself: thanks to my committee, for never locking out interrupts. Thanks also to Anish Arora for his characteristically sage comments, and to Stu Zweben for guidance in the ways of leadership. I am similarly indebted to all th
    corecore