Hot Most Recent
|Ver.||Summary||Created by||Modification||Content Size||Created at||Operation|
|1||+ 967 word(s)||967||2020-03-26 10:38:23||||
|2||Meta information modification||967||2020-04-23 13:30:41||| ||
|3||Meta information modification||967||2020-04-23 13:40:06||| ||
|4||-61 word(s)||906||2020-10-28 05:14:08||| ||
|5||-61 word(s)||906||2020-10-28 05:14:32||||
The deployment of Internet of Things (IoT) applications is complex since many quality characteristics should be taken into account, for example, performance, reliability, and security. In this study, we investigate to what extent the current edge computing simulators support the analysis of qualities that are relevant to IoT architects who are designing an IoT system. We first identify the quality characteristics and metrics that can be evaluated through simulation. Then, we study the available simulators in order to assess which of the identified qualities they support. The results show that while several simulation tools for edge computing have been proposed, they focus on a few qualities, such as time behavior and resource utilization. Most of the identified qualities are not considered and we suggest future directions for further investigation to provide appropriate support for IoT architects.
The rapid development of the Internet of Things (IoT) affects nearly all aspects of society, including industrial automation; building, as well as HVAC systems; smart metering; and health care . An IoT system often generates huge amounts of data, which requires heavy computational processing . Cloud computing offers attractive computational and storage solutions to cope with these issues, however, cloud-based solutions are often accompanied by drawbacks and limitations, for example, latency, energy consumption, privacy, and bandwidth . Edge computing, in which computation and storage are done closer to where the data is generated, could help to address these challenges by meeting specific requirements, such as low latency or reduced energy consumption .
The design of an IoT system entails several different aspects, in particular the hardware infrastructure (including servers, gateways, communication networks, sensors, and actuators), the application software, and the decision of where to deploy the application software components within the hardware infrastructure. Currently, the most common IoT system approach is to do as much computing and storage as possible in the cloud, however, the combination of edge and cloud computing in edge computing architectures provides new opportunities for the design of efficient IoT systems . Because an IoT system often has to meet many different and possibly conflicting requirements, it is a challenge to design its architecture including identifying the optimal deployment for each component within the resulting edge-cloud continuum . Moreover, the optimality of a deployment is often related to the system’s scalability and a tradeoff must be made. Figure 1 illustrates the software component deployment problem, which concerns the placement of the computation and storage tasks the system should execute.
In case the hardware infrastructure is not readily available, the IoT architect not only needs to solve the software component deployment problem, but also needs to determine the architecture, as well as the entities (things, local nodes, and sometimes even central servers) of the hardware infrastructure. The architect must also ensure that the resulting IoT system is capable of efficiently fulfilling its intended purpose while achieving the desired quality. The quality of an IoT system is typically seen as the degree to which it satisfies the needs of its various stakeholders. The stakeholders’ needs can be categorized into a set of quality characteristics (QCs), such as functional suitability, performance, usability, reliability, security, and maintainability as listed by ISO/IEC 25010 . Here, objective quality metrics are also required, from which the quality of the system can be measured.
To address the challenges of modeling and investigating different aspects of complex systems, computer simulation has proven to be a suitable technique . A large number of simulators exist that enable and facilitate the modeling and assessment of different aspects of IoT systems, for example, load balancing or network utilization. However, they only provide basic predefined attributes for the investigation of the IoT system’s quality  and the integration and use of more sophisticated QCs is often not supported. In addition, simulation has been broadly used to analyze the quality of an IoT system in edge computing before its implementation . Nevertheless, limitations in the extendibility of simulators apply and, as well, a fragmentation of the research regarding the relation between edge computing simulators and QCs can be observed.
In the case of software deployment problems for IoT systems (see Figure 1), an initial step towards understanding how simulation can support IoT system designers is to analyze the available simulators with respect to supported qualities that can be assessed. Thus, in this study, we investigate currently available edge computing simulators and study the support they provide for modeling and analyzing qualities that might be relevant for IoT architects while designing IoT systems. To achieve this, first, we systematically investigated state of the art papers to derive the key qualities and related metrics for IoT systems using edge computing. Accordingly, we extracted and categorized the metrics to form a list of evaluated qualities by other researchers. Finally, by studying current edge computing simulators, we investigated which of the extracted qualities are addressed by the simulators. In summary, the main contributions of this study are: 1) A set of the relevant qualities for edge computing simulation based on a systematic review of the literature. 2) An analysis of the Edge computing simulators in terms of which of the identified qualities and the related metrics they support.