Network Abstractions for Characterizing Communication Requirements in Asynchronous Distributed Systems
Hugo Rincon Galeana, Ulrich Schmid
TL;DR
This work introduces network abstractions—sequence-based directed graphs that capture guaranteed causal message chains and relate them to end-to-end delays—to characterize the necessary and sufficient communication patterns for solving distributed problems in asynchronous byzantine systems. By formalizing runs with message delay maps $\sigma$ and event delays, the authors define static, finite, and dynamic network abstractions and show how liveness properties translate into graph connectivity conditions. They then provide protocols for the FR and FRR problems, proving that FR is solvable under a $2f+1$-strong root condition, while FRR requires stronger, time-evolving connectivity: a dynamic network abstraction where each graph is $2f+1$-strongly vertex connected and admits a $2f+1$-co-root with respect to any $f$ faulty processes. The results yield both impossibility (under weaker abstractions) and optimality (under the identified abstractions) and offer a principled, epistemic-inspection-friendly framework for analyzing communication requirements in asynchronous distributed systems. Practically, this framework guides the design of robust protocols in environments with Byzantine faults and time-varying networks, connecting connectivity guarantees to achievable liveness and agreement properties. All mathematical notation is consistently presented within $...$ delimiters.
Abstract
Whereas distributed computing research has been very successful in exploring the solvability/impossibility border of distributed computing problems like consensus in representative classes of computing models with respect to model parameters like failure bounds, this is not the case for characterizing necessary and sufficient communication requirements. In this paper, we introduce network abstractions as a novel approach for modeling communication requirements in asynchronous distributed systems. A network abstraction of a run is a sequence of directed graphs on the set of processes, where the $i$-th graph specifies some ``potential'' message chains that can be guaranteed to arise in the $i$-th portion of the run. Formally, they are defined via associating message sending times with the end-to-end delays that would arise if the message was indeed sent by the sender's protocol. Network abstractions also allow to reason about future causal cones that might arise in a run, hence also facilitate reasoning about liveness properties, and are inherently compatible with temporal epistemic reasoning frameworks. We demonstrate the utility of our approach by providing necessary and sufficient network abstractions for solving the canonical firing rebels with relay (FRR) problem, and variants thereof, in asynchronous message-passing systems with up to $f$ byzantine processes connected via point-to-point links. FRR is not only a basic primitive in clock synchronization and consensus algorithms, but also integrates several distributed computing problems, namely triggering events, agreement and even stabilizing agreement, in a single problem instance.
