We need new testing tools and simulators to assess the behavior of distributed applications in the emerging computing environments of the Internet of Things.
The Internet of Things (IoT), cloud computing, and machine learning will allow for more adaptive cities, houses, and infrastructure. However, the vision of intelligent cyber-physical systems will not be implemented with centralized cloud resources alone as these are simply too far away from sensor-equipped IoT devices, yielding high latencies, network bottlenecks, unnecessary energy consumption, and in many cases also privacy concerns. Addressing this, edge and fog computing promise resources in closer proximity to sensor-equipped IoT devices. However, to develop and research new IoT applications for these new environments, adequate tools are needed that allow to test and evaluate the performance, dependability, and efficiency of applications.
As it is still much harder to assess whether IoT applications will meet their non-functional requirements (such as constraints for their performance, dependability, and efficiency), compared to, for instance, cloud applications, we are currently working on simulation/emulation tools at different granularities. For example, simulations can help to estimate the power usage of applications deployed across edge, fog, and cloud resources over time. Moreover, emulation of network controllers can enable research on the behavior of real-time tasks on IoT devices, while combining hybrid testbeds with co-simulation can essentially provide “staging environments” for distributed IoT applications. These tools will help to develop new resource management methods, where an efficient and reliable distributed resource management is widely understood to be essential for the new computing environments of the Internet of Things.
If you have any questions or are interested in collaborating with us on this topic, please get in touch with Lauritz!