Distributed time-sensitive systems must balance timing requirements (availability) and consistency in the presence of communication delays and synchronization uncertainty. This paper presents maxwait, a simple coordination mechanism with surprising generality that makes these tradeoffs explicit and configurable. We demonstrate that this mechanism subsumes classical distributed system methods such as PTIDES, Chandy-and-Misra with or without null messages, Jefferson's Time-Warp, and Lamport's time-based fault detection, while enabling real-time behavior in distributed cyber-physical applications. The mechanism can also realize many commonly used distributed system patterns, including logical execution time (LET), publish and subscribe, actors, conflict-free replicated data types (CRDTs), and remote procedure calls with futures. More importantly, it adds to these mechanisms better control over timing, bounded time fault detection, and the option of making them more deterministic, all within a single semantic framework. Implemented as an extension of the Lingua Franca coordination language, maxwait enforces logical-time consistency when communication latencies are bounded and provides structured fault handling when bounds are violated.
翻译:分布式时间敏感系统必须在通信延迟和同步不确定性的条件下,平衡时序要求(可用性)与一致性。本文提出maxwait,一种具有惊人通用性的简单协调机制,能够使这些权衡变得明确且可配置。我们证明该机制涵盖了经典的分布式系统方法,如PTIDES、带或不带空消息的Chandy-and-Misra算法、Jefferson的Time-Warp以及Lamport的基于时间的故障检测,同时支持分布式信息物理应用中的实时行为。该机制还能实现许多常用的分布式系统模式,包括逻辑执行时间(LET)、发布-订阅、参与者模型、无冲突复制数据类型(CRDTs)以及带future的远程过程调用。更重要的是,它在单一语义框架内,为这些机制增加了对时序的更好控制、有界时间故障检测以及提高确定性的选项。作为Lingua Franca协调语言的扩展实现,maxwait在通信延迟有界时强制逻辑时间一致性,并在边界被违反时提供结构化的故障处理。