Lessons Learned from Building Edge Software System Testbeds
Tobias Pfandzelter, David Bermbach
TL;DR
The paper addresses the challenge of evaluating edge software at scale without physical infrastructure by detailing five iterative edge testbeds (MockFog family and Celestial). It presents concrete architectural lessons, from network emulation and virtualization choices to cloud integration, time synchronization, and automation practices, highlighting how each iteration informed the next. The authors contribute practical guidance on when to specialize versus generalize, the importance of testing the testbed itself, and the trade-offs between containers and microVMs, as well as advanced topics like visualization and orchestration. The work has practical impact for researchers and educators by offering a cost-efficient, repeatable blueprint for building and using edge testbeds while identifying open challenges and avenues for future work.
Abstract
Edge computing requires the complex software interaction of geo-distributed, heterogeneous components. The growing research and industry interest in edge computing software systems has necessitated exploring ways of testing and evaluating edge software at scale without relying on physical infrastructure. Beyond simulation, virtual testbeds that emulate edge infrastructure can provide a cost-efficient yet realistic environment to evaluate edge software. In this experience paper, we share lessons learned from building a total of five edge software testbeds. We describe pitfalls in architecture and development as well as experiences from having students use our testbed tooling in distributed systems prototyping classes. While we remain confident that building custom testbed tooling is the right approach for edge computing researchers and practitioners alike, we hope this paper allows others to avoid common mistakes and benefit from our experience.
