Actuator behaviour modelling in IoT-Fog-Cloud simulation

View article
PeerJ Computer Science
LPDS Cloud of the MTA SZTAKI website is available at: https://www.sztaki.hu/en/science/departments/lpds (accessed in October, 2020).
The Amazon Web Service website is available at: https://aws.amazon.com/ec2/pricing/on-demand/ (accessed in October, 2020).
The WonderNetwork website is available at: https://wondernetwork.com/pings (accessed in October, 2020).
The Ericsson website is available at: https://www.ericsson.com/en/mobility-report/articles/massive-iot-in-the-city (accessed in May, 2021).
The AWS Architecture Guidelines and Decisions website is available at: https://aws.amazon.com/blogs/compute/low-latency-computing-with-aws-local-zones-part-1/ (accessed in May, 2021).

Main article text

 

Introduction

The actuator and mobility models of dissect-cf-fog

Actuator model

Requirements for modelling the internet of mobile things

Actuator implementation in DISSECT-CF-Fog

  • source: Holds a reference to the IoT device generating sensor data, so the system keeps track of the data source.

  • destination: Holds a reference to the Application of a fog node where the data has been originally forwarded to.

  • dataFlowPath: In some cases fog nodes cannot process the current data fragment, therefore they might send it to another one. This parameter keeps track of the visited fog nodes by the data before it has been processed.

  • bulkStorageObject: Contains one or more sensor-generated data that has been wrapped into one DataCapsule.

  • evenSize: The size of the response message sent from a fog node to the actuator component (in bytes). This helps to simulate network usage while sending information back to the actuator.

  • actuationNeeded: Not every message from the IoT device requires an actuator response event. This logical value (true–false) holds true, if the actuator should take action after the data has been processed, otherwise it is false.

  • fogProcess: A logical value (true–false), that is true, if the data must be processed in a fog node, and should not be sent to the cloud. It is generally set to true, when real-time response is needed from the fog node.

  • startTime: The exact time in the simulator, when the data was generated.

  • processTime: The exact time in the simulator, when the data was processed.

  • endTime: The exact time in the simulator, when the response has been received by the actuator.

  • maxToleratedDelay and priorityLevel: These two attributes define the maximum delay tolerated by the smart device and the priority of the data. Both of them could play a major role in task-scheduling algorithms (e.g. priority task scheduling), but they have no significant role in the current extension.

  • actuatorEvent: This is the specific event type that is sent back to the actuator for execution.

  • sensorNum: The number of applied sensors in a device. It is directly proportional to the size of the generated data.

  • mttf: The mean time until the sensor fails. This attribute is essential to calculate the sensor’s average life expectancy, which helps in modelling sensor failure events. If the simulation’s time exceeds the mttf value, the sensor has a higher chance to fail. If a sensor fails, the actuator forces it to stop.

  • minFreq and maxFreq: These two numbers represent the maximum and minimum sampling rate of the sensor. If a sensor does not have a predefined sampling rate but rather senses changes in the environment, then these are environment-specific attributes and their values could be defined by estimating the minimum and maximum time interval between state changes in the environment. These attributes are necessary to limit the possible frequency value of a sensor when the actuator imposes an event which affects the frequency.

  • fogDataRatio: An estimation on how often the sensor generates data, that requires a fog process. This value is usually higher in the case of sensors that generate sensitive data or applications that require real-time response.

  • actuatorRatio: An estimation on how often the sensor generates data, that requires actuator action. This is typically an environment-specific attribute. The more inconsistent and variable the environment is, the higher its chance to trigger the actuator, thus the value of this attribute should be set higher. This attribute has an impact on the DataCapsule’s actuationNeeded value. If the actuatorRatio is higher, then it is more likely to set the actuationNeeded attribute to true.

  • maxLatency: Its value determines the maximum latency tolerated by the device when communicating with a computing node. For instance, in the case of medical devices, this value is generally lower than in the case of agricultural sensors. Mobile devices may move away from fog nodes inducing latency fluctuations and this attribute helps to determine whether a computing node is suitable for the device, or the expected latency exceeds this maxLatency limitation, therefore the device should look for a new computing node. This attribute plays a major role in triggering fog-selection actuator events when the IoT device is moving between fog nodes.

  • delay: The delay of the data generating mechanism of the sensor.

  1. It can execute an event selected by the strategy. This is the typical usage, and it is performed automatically for devices needing actualisation, every time after the data have been processed by a computing unit, and a notification is sent back to the device.

  2. Single events can also be fired by the actuator itself. If there is no need for an intermediate computing unit (i.e. data processing and reaction for the result), the actuator can act immediately, wherever it is needed as we mentioned in “Actuator Model”.

Representing IoMT environments in DISSECT-CF-Fog

Evaluation

The logistics IoT scenario

Smart healthcare scenario

Large-scale experiments of the smart healthcare scenario

Conclusion

Additional Information and Declarations

Competing Interests

The authors declare that they have no competing interests.

Author Contributions

Andras Markus performed the experiments, analyzed the data, performed the computation work, prepared figures and/or tables, and approved the final draft.

Mate Biro performed the experiments, performed the computation work, prepared figures and/or tables, and approved the final draft.

Gabor Kecskemeti conceived and designed the experiments, performed the computation work, authored or reviewed drafts of the paper, and approved the final draft.

Attila Kertesz conceived and designed the experiments, analyzed the data, authored or reviewed drafts of the paper, and approved the final draft.

Data Availability

The following information was supplied regarding data availability:

The source code of the extension is available at GitHub:

https://github.com/andrasmarkus/dissect-cf/tree/actuator.

Funding

This research was supported by the Hungarian Scientific Research Fund under the grant number OTKA FK 131793, by the Hungarian Government under the grant number EFOP-3.6.1-16-2016-00008, and by the UNKP-21-3 New National Excellence Program of the Ministry for Innovation and Technology from the source of the National Research, Development and Innovation Fund. The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.

5 Citations 1,754 Views 400 Downloads