ASE 2024
Sun 27 October - Fri 1 November 2024 Sacramento, California, United States

Ensuring the reliability and consistency of Internet of Things (IoT) systems is critical. Traditional approaches to maintaining consistency often rely on retry and rollback mechanisms, which can be inadequate and lead to further complications. These methods struggle with the complexity and heterogeneity of IoT systems, failing to provide robust and general solutions for real-time consistency assurance.

In this paper, we present MOCO, a \underline{MO}del-based approach designed to address the unique challenges of maintaining runtime \underline{CO}nsistency in IoT systems through runtime verification. MOCO leverages an active automata learning approach to model device behaviors, enabling the detection and correction of inconsistencies between physical and digital states. By monitoring system operations against these learned models, MOCO can identify inconsistencies and generate appropriate resolutions. When inconsistencies are detected, our method determines their cause and implements resolution operations that restore consistency without relying solely on retries or rollbacks. This approach also includes notifying users of necessary interventions, thereby enhancing overall system reliability. We evaluate the effectiveness and performance of MOCO through extensive experiments. Our results demonstrate that MOCO can effectively maintain system consistency with negligible performance overhead.