I'm looking for a simulator or emulator to validate an approach that solves cascading failures on interdependent IoT devices, so I'm wondering if there is one that can simulate failures and dependencies between IoT devices?
It might be possible with NetSim (https://www.tetcos.com/iot-wsn.html) but you might have to write a bit of code to program the "failure and dependencies".
ns-3: This is an open-source discrete-event network simulator that can be used to simulate wireless networks, including IoT networks. It has a module for simulating wireless sensor networks and supports several popular IoT protocols.
OMNet++: This is an open-source discrete event simulation tool that can be used to simulate networks of all kinds, including IoT networks. It includes support for simulating wireless sensor networks and several popular IoT protocols.
Cooja: This is a network simulator for wireless sensor networks that is part of the Contiki OS project. It can be used to simulate interactions between IoT devices and supports several popular IoT protocols.
Dear Fredrick Ishengoma , Sai R N Thank yu so much for your answers,
I have found that the simulator iFogSim is a good choice for simulating IoT devices' failures and interactions using the sense-process-actuate model. Failures and recovery actions can be simulated in the form of events.
There are several simulators and emulators available for IoT devices that can simulate failures and dependencies between devices. Here are a few options that you can explore:
Contiki: Contiki is an open-source operating system for the Internet of Things (IoT) that comes with a network simulator called Cooja. Cooja is an emulator that allows you to simulate a network of IoT devices and their interactions.
OMNeT++: OMNeT++ is a discrete event simulation framework that is widely used for modeling and simulating complex networks. It includes a suite of tools and libraries for building and simulating networked systems, including IoT devices.
NS-3: NS-3 is another popular discrete-event network simulator that is widely used for research and education. It includes support for simulating IoT devices and their interactions.
IoT-LAB: IoT-LAB is a large-scale IoT testbed that provides a platform for testing and validating IoT applications and services. It includes a range of IoT devices that can be configured and programmed to simulate various failure scenarios.
Eclipse Mosquitto: Eclipse Mosquitto is an open-source message broker that supports the MQTT protocol, which is widely used in IoT applications. It includes support for simulating various network failure scenarios, such as network latency, packet loss, and connectivity issues.