Risk and Mitigation of Nondeterminism in Distributed Cyber-Physical Systems - Bateni, Soroush; Lohstroh, Marten; Wong, Hou Seng; Kim, Hokeun; Lin, Shaokai; Menard, Christian; Lee, Edward A. (Proceedings (ACM and IEEE International Conference on Formal Methods and Models for Co-Design), 2023)
Asynchronous frameworks for distributed embedded systems, like ROS and MQTT, are increasingly used in safety-critical applications such as autonomous driving, where the cost of unintended behavior is high. The loose coordination between the components in these frameworks gives rise to nondeterminism, where factors such as communication timing can lead to arbitrary ordering in the handling of messages. In this paper, we show that this problem compromises safety and complicates system design in Autoware.Auto 1.0, a popular open-source autonomous driving framework based on ROS 2. We extend the LINGUA FRANCA coordination language to support distributed execution, port Autoware.Auto to LINGUA FRANCA, and show that our solution avoids the identified problems. We assess the performance of our federated runtime implementation and show that it is competitive for this application. We also compare our achievable throughput to ROS 2 and MQTT using microbenchmarks and find that we can match or exceed the throughput of those frameworks while preserving determinism.CCS CONCEPTS* Computing methodologies → Distributed programming languages; * Computer systems organization → Embedded and cyber-physical systems.