DOI: 10.1145/3838730 ISSN: 1049-331X

Reverb: Ex-Vivo Rewinding IoT Device Faulty Execution Trace with Edge-Side Recording

Ruibo Lu, Wei Zhou, Shandian Shen, Ke Wang, Yuqing Zhang

Failures recovery is essential for forensic analysis and bug diagnosis, yet remains challenging for resource-constrained IoT devices in deployment. These devices lack facilities to record incorrect program states, and advanced hardware tracing mechanisms are typically unavailable. Production environments further restrict their already limited resources. We present Reverb , a lightweight ex-vivo IoT device failure recovery system tailored for edge-centric IoT deployments. Reverb leverages the fact that most external inputs pass through a centralized edge, enabling edge-side input recording without modifying device runtime behavior. For device-local and non-deterministic events not observable at the edge devices, we use recorded external input-guided program analysis to deduce missing local inputs. By combining recorded and inferred data, the cloud can faithfully replay complete device executions on demand. We implemented a prototype and evaluated it in both smart home and industrial scenarios. Reverb introduces no runtime overhead on devices and incurs minimal long-term storage cost. Across 19 failing executions on 13 real-world devices, it successfully reconstructed traces with high consistency to real hardware. The recovered traces further enabled automated bug diagnosis to identify root causes.

More from our Archive