Keywords

1 Introduction

The Cloud Computing (CC) paradigm provides on-demand access to computing resources such as processing power, storage, and applications over the Internet. It has revolutionized the way organizations manage their Information Technology (IT) infrastructure by offering several advantages, including scalability, flexibility, cost savings, and reduced IT complexity. The adoption of CC is expected to continue to grow, driven by the increasing demand for digital services, the need for agility and cost savings, as well as the rise and current development of paradigms such as the Internet of Things and Artificial Intelligence [1]. The Internet of Things (IoT) is a global IT infrastructure where physical and virtual objects, devices, and sensors collect and exchange data interconnected through the Internet by using standard communication protocols. Currently, the number of connected IoT devices has reached 21.8 billion in 2021 (projected to be 31 billion in 2025) [2]. Hence, the vast data volume produced by these devices can overwhelm and strain cloud resources, impacting IoT application performance. To tackle this issue, the Fog Computing (FC) paradigm has emerged as a solution that enhances IoT applications by bringing cloud resources closer to devices, reducing network latency, and enhancing response time [3].

There is still an unprecedented pace of technological developments in smart systems. A Smart System (SS) incorporates the processes and functions of sensing, actuation, and control to describe and analyze a situation, and to make decisions based on the available data in a predictive or adaptive manner, thereby performing smart actions [4]. Smart devices or things are fundamental components of a SS generally connected to other devices or networks via different wireless protocols. They can operate to some extent interactively and autonomously, which has been standardized to some extent by the IoT paradigm. SSs address environmental, societal, and economic challenges like limited resources, climate change, population aging, and globalization. As a result, they are increasingly used in a large number of sectors, such as transportation, healthcare, energy, security, logistics, ICT, and manufacturing. SSs can also be categorized via regions by referring to smart homes for smaller, and smart cities for larger areas.

Artificial Intelligence (AI) is the ability of machines to learn from data and perform tasks that would typically require human intelligence [5]. AI plays a crucial role in automating tasks, optimizing performance, improving user experiences, and driving innovation and growth in industries, particularly in the context of CC and IoT. CC provides the necessary infrastructure for storing and processing large datasets, essential for training AI models. IoT devices generate vast amounts of data that can be leveraged to enhance AI models and enable intelligent decision-making. Machine Learning (ML) is a key component of AI, allowing machines to learn from data and improve performance over time. ML encompasses different types, including supervised, unsupervised, and reinforcement learning, which find applications in various domains [6]. Nevertheless, solutions applying ML in Smart Systems (SS) exploiting IoT, CC, and FC, might suffer from its centralized data management scheme for model training, which can be problematic due to the network saturation generated by the huge amount of data, as well as data sources heterogeneity, and data criticism, which lead to problems such as data sharing [7].

Federated Learning (FL) paradigm emerges to enable ML on distributed data by moving the training process to the data instead of moving the data to the training location. FL enables the global model generation that can be distributed to nodes, which then train their data with the same model [8]. This approach circumvents the necessity of transferring extensive data to a centralized location, mitigating privacy concerns and data breach risks. FL facilitates ML model training on distributed data across numerous devices or networks, making it highly advantageous for IoT, FC, and Edge Computing (EC). Using FL, organizations can improve their ML model’s accuracy, and minimize the associated with centralized data storage, security, privacy, and processing [9].

Blockchain (BC) is the base technology of currently available cryptocurrency systems, which was first introduced by S. Nakamoto [10], as an underlying technology that guarantees a trusted, fully distributed, digital money system. A BC system is basically a distributed computing system that is able to store and process a Distributed Ledger (DL) in a Peer-to-Peer (P2P) network model. The reliable distributed decision-making mechanisms of the proposed BC network motivated their deployment on the distributed cloud servers and at the edge of the network. Different BC models were expected to strongly support CC during the life cycle of information processing and management in complex scenarios [11]. Specifically, computational power and immutable storage abilities were the two main properties that BC-CC integrated systems provide.

The integration of CC, IoT, FC, AI/FL, and BC technologies is widely argued to be the SS applications enabling factor. Such integration was proposed and realized in many novel research articles, e.g. [12], and industry-oriented projects provided by ICT leaders, e.g. IBMFootnote 1. In these contributions, the development teams showcased how each integration indeed enhanced the SS application performance (e.g., latency, throughput, security, distributed consistency, decision accuracy, energy efficiency, and privacy) [13]. Indeed, without these technologies, SS application would have remained an unattainable theory.

However, those SS applications had to be tested and evaluated extensively in order to prove their reliability and out-performance compared to classical systems. In most cases, SS applications under construction were individually simulated using tools that were either specifically implemented for their specific targeted applications, or using tools that do not include all factors and elements of realized SS application. For example, simulation tools specifically developed for evaluating BCs were used on a side to individually evaluate the BC part of the implemented SS application. Meanwhile, different CC-IoT-FC tools were used to evaluate the Cloud-Edge part of the system.

In this position paper, we tackle this issue by introducing a SIMulation-as-a-Service (SIMaaS) framework that deploys CC, IoT, FC, AI, and BC technologies for reliable simulation of comprehensive SS applications. We have already developed two comprehensive simulation tools, namely FoBSim [14] and DISSICT-CF-Fog [15], which simulate many scenarios that are typically realized in BC and CC-IoT-Fog applications, respectively. In SIMaaS, our goal is to integrate these tools into a unified comprehensive framework for simulating BC-assisted Cloud-Edge SS applications. We aim to use AI technology to optimize the harmonization process and predict optimal configurations based on user-defined parameters. Also, we explore the integration of AI methods into deployed tools to enhance the generation of realistic emulation results.

The paper is structured as follows: Sect. 2 reviews the use and need of emerging technologies for Smart Systems, and Sect. 3 presents related simulation approaches. Section 4 introduces our main proposal for a simulation as a service approach, and finally Sect. 5 concludes the paper.

2 State-of-the-Art in Using Emerging Technologies for Smart Systems

The vast amount of data generated by devices poses challenges for both centralized and decentralized computing systems within CC. While decentralization has helped to mitigate some of these challenges, technologies such as IoT, FC, ML, FL, and BC have addressed them significantly. The integration of these technologies has the potential to enhance the functioning of various application fields within Smart Systems, which leverage technology to improve efficiency, sustainability, and quality of life for residents. This section presents a discussion of some literature reviews and survey papers related to the integration of these technologies to enhance IoT solutions, with a special focus on FC, BC, and FL, and their capabilities and features.

Table 1. Literature reviews integrating IoT-BC-FC-FL technologies

Table 1 summarizes six literature review studies in the last three years on the integration of the aforementioned technologies. In general, most of the solutions integrate these technologies in pairs, such as BC-FC, BC-FL, and FC-FL. These studies provide valuable taxonomies and insights into how to integrate these technologies in terms of architecture, applications, mechanisms, and algorithms, among others. However, studies also reveal that there are still open issues related to security, interoperability, scalability, heterogeneity, and distributed data management, as well as new potential applications and integration of IoT-BC-FC-FL. In general, these findings highlight the need for further research and development in integrating these paradigms. In addition, two important aspects must be considered. First, integrating these technologies (BC-FC-FL) is a promising research direction that requires further investigation. Second, the creation of simulation tools is necessary to test and customize SS applications, as well as to evaluate the performance of the integrated system in different scenarios.

3 Related Simulation Approaches

3.1 Blockchain Simulation

Generally, BC-based systems are designed and tested with reference to different layers, including Infrastructure (i.e., devices and equipment used to perform the BC computations, communications, and/or storage services), Data Layer (e.g., structures of shared data, encryption methods/mechanisms, storage frameworks/approaches, etc.). The Network Layer defines the connections among elements of the first layer, including technical aspects of the P2P communication protocols. The Consensus Layer represents the rules that network members must follow to maintain the security of the system. Additionally, this layer defines different conceptual types of system elements such as miners, users, servers, full nodes, light nodes, etc. The concrete definition of protocols and mechanisms of those layers should produce robust, application-oriented, and security-oriented BC-based systems. That is, a careful and accurate design process of those layers enables BC-based solutions that adhere to the initial applications’ requirements. Accordingly, the Application layer defines the developed system interfaces, business and economic models, system monitoring tools, etc. Examples of applications where BC technology was found beneficial include IoT, SS, FC, Cryptocurrency applications, decentralized credential governance, NFTs, and many more.

As discussed by Smetanin et al. [21], BC-based systems can be evaluated, benchmarked, and validated either formally (e.g. Markov Chains, Queuing Theory), by emulation (e.g. Cloud-based, real testbeds), or by simulation (e.g. BlockSim [22], FoBSim [14]). During the first design and implementation stages of these BC-based solutions, simulations play a pivotal role in the parameterization and configuration recommendations. This is because most BC simulation frameworks are open-source and freely available. However, most available simulators require sufficient programming skills, computing resources, runtime environments, and continuous reconfiguration to find the appropriate parameterization for a scenario. Furthermore, most of these simulators target a specific mechanism or a small portion of the BC network workflow. For example, all of these tools allow the simulation of one consensus algorithm, one application, or fixed/limited data structure templates.

To address those limitations, earlier we proposed FoBSim [14], an extensible and open-source simulation framework that allows to reliably mimic integrated BC-FC applications using five different consensus algorithms, four possible application templates, including cryptocurrency and smart contracts, and further allows to deploy the BC network in the fog or end-user layer without affecting any other parameters.

3.2 IoT-Fog-Cloud Simulation

Using simulation tools in order to validate and evaluate various algorithms and methodologies for Distributed Computing infrastructures is a common research practice, since they realistically mimic real computing systems, yet are affordable. With the emergence of IoT and FC, simulator requirements were expanded not just to model aspects of CC, but to simulate IoT-Fog-Cloud ecosystems in order to investigate the cooperation of the Cloud-to-Things Continuum. To accommodate this, certain simulators started their path as standalone cloud simulators, but later they were further developed towards IoT and/or fog modeling.

The requirements of a well-usable simulator include (but are not limited to) the following properties and capabilities [23]: (i) granularity of basic infrastructure modeling, including physical and virtual machines, containers, and IoT entities such as sensors and actuators; (ii) granularity of higher-level components such as network, energy, mobility, and cost modeling; (iii) support for processing types (i.e., batch and stream processing); (iv) methods for resource management (i.e., scheduling, offloading, and migration algorithms); (v) a graphical user interface for configuration and result analysis (occasionally with XML, JSON descriptions); and finally, (vi) availability of source code and appropriate code quality (including comments and code complexity) to facilitate the learning curve of the simulator.

IoT-Fog-Cloud simulators are typically (discrete) event-based, meaning that the simulation time and real-time are separated. Thus, events occur only at discrete (simulated) moments, where the inner state of the concrete simulation can change until it reaches the stopping condition. General-purpose simulators improve scalability by simplifying less relevant parts of the system and reducing granularity. These solutions focus on high-level components, supporting expandability, and the degradation of reliability is negligible. On the other hand, network simulators consider modeling detailed connections among the network components, including communication protocols, which may restrict extensibility and scalability.

With the emergence of FC, cloud-based research is still present and active, due to constantly emerging new technologies. OpenDC [24] provides simulation options for data centers with virtual machines and containers equipped with energy and cost meters, and it also addresses the latest trends in serverless computing, and supports modeling of ML-based TensorFlow workloads.

CloudSim is the most decisive simulator in the field of CC so far, therefore, numerous extensions are built upon it to broaden its capabilities for analyzing complex systems. For instance, the latest version of iFogSim, which follows expands the sense-process-actuate model and investigates application scheduling and dynamic resource provisioning in an IoT-Fog-Cloud environment, it expands its functionality with service migration and mobility, cluster formation involving the multi-layered topology, and microservice deployment, as well.

Besides, it is worth mentioning PureEdgeSim [25], which is not a direct extension of CloudSim, but CloudSim Plus, which is already an improved version of the original cloud simulator. This phenomenon also strengthens the lack of interoperability among the different code bases, since these versions are typically developed by different research groups. However, PureEdgeSim supports the integration of IoT with cloud and edge resources, resource management with task offloading decisions, and IoT devices with mobility functions.

To deal with the challenges of complex IoT-Fog-Cloud systems, we proposed the DISSECT-CF-Fog [15] by extending the DISSECT-CF cloud simulator. This simulation solution is independent of any CloudSim-base simulators, and its modular structure and own discrete event system make it competitive in research. It is able to utilize multi-layered Fog-Cloud architecture, and IoT sensors and actuators. Its application model is based on virtual machines, but it supports both batch- and stream-processing-based simulations. It also supports pricing schemes for real providers, energy measurements, and device mobility. Offloading algorithms ensure optimal resource management. However, support of blockchain-based evaluation is missing; DISSECT-CF-Fog’s abilities make it a perfect choice for our proposed Simulation as a Service platform.

4 The Proposed Simulation as a Service Platform

Fig. 1.
figure 1

Components of the proposed SIMaaS framework

Building on our previously proposed simulator solutions, we aim to create a comprehensive simulation environment that is capable of evaluating integrated SSs. Figure 1 depicts our envisioned SIMaaS framework, which will be able to simulate and analyze blockchain-based smart systems. The current version of DISSECT-CF-Fog can model application executions at three main layers, namely cloud, fog, and end-user layers, while FoBSim handles the end-user and fog layers. Users of SIMaaS can provide requirements of the smart applications with various parameters they plan to develop. Once the application requirements are given through the GUI of SIMaaS, they are converted to a unified description format, and the Parameter Classifier is triggered to extend and fine-tune the given parameters. It will also use machine learning algorithms with possible pre-analysis executions of the simulators for fine-tuning. First, FoBSim will be used to determine infrastructure needs for blockchain operation for the given application, the results of which will be added to the application description and forwarded to DISSECT-CF-Fog to perform the simulation of the whole application in the second step. The raw analysis results meeting the expected QoS (e.g., latency, energy efficiency, throughput, budget) are passed to the Compact Analyzer, whose main objective is to prepare and unify the results in an understandable form for proper representation at the GUI. We may also configure DISSECT-CF-Fog to request FoBSim for a modified initial analysis and a more fitting application description. Finally, the developers can view the final parameterization recommendations and expected behavior metrics of the system.

The adoption and mass acceptance of smart applications is greatly hindered by the general lack of trust associated with the nature of monitoring and tracing apps, and the reluctance of people to share their personal data. Integrating Blockchain-based data management and AI methods (e.g., FL) into SSs can enhance the performance, trust, and privacy of their applications, which are getting more and more crucial. To enhance trust prior to solution deployment, reliable simulations can be performed to predict the behavior of such solutions. Our SIMaaS proposal is expected to mainly address the limitations [21] of current integrated SS simulation tools as follows:

  • Abstraction vs. Accuracy: We aim to optimize the balance between the needed accuracy of system configuration, and the parameter and run-time abstraction methods usually deployed in simulation frameworks. Focusing the framework on abstract evaluation of different system elements is beneficial for achieving bug-free tools, but it harms the correctness and accuracy of the final results when highly complex systems are being simulated. The balance between these two factors is a determinant for valid simulations and evaluations. We aim to address this issue by deploying hierarchical algorithms with Pareto optimizations to obtain simulation results closest to real testbeds.

  • Access to historical data: We will use available real-world data for two main reasons – as a reference objective for our optimization algorithms and as a benchmark comparison point for users of the SIMaaS tool. Additionally, we will allow users to save their previously run simulation scenarios (including configurations and results) so that they will save time and cost for future simulation attempts.

  • Benchmarks for comparisons: We also plan to provide comprehensive reference configuration parameters that are dynamically changing in real-time while users are inputting their parameter configurations. In this way, users can easily define their initial application requirements using templates based on real cases that have been previously deployed, tested, or simulated.

  • Relation of characteristics: We will use our knowledge, experience, and continuously published state-of-the-art analysis related to the configuration of BC and CC-based SSs, for example [26]. Accordingly, pre-analysis shared between the two simulators shall be the most accurate and efficient (in terms of computational and time cost).

  • Resource constraints: This is related to the previous knowledge of the SIMaaS users, related to all the technologies deployed within. It is rare to have developers who are individually knowledgeable about accurate and realistic parameterization of all these technologies integrated into one solution. For this reason, our team aims to collectively define those constraints, as we do have members who are individually knowledgeable of the constraints of two or more integrated technologies. In this way, developers would be required to provide ranges of (instead of crisp) numerical configuration values.

  • Machine learning: We will use recent advances and reliable AI methods (e.g., FL) to mainly address two issues, namely continuous learning on system initial configuration recommendations, and AI-integrated Pareto optimization of pre and raw analysis. We will also provide modifiable ML templates that simulate several AI-BC integrated solutions. This service is planned to be provided as checkboxes in the GUI so that developers can assess AI integration with BC-based SSs.

  • User-friendliness: We also plan to fine-tune a GUI that allows for easy configuration and characterization of SS scenarios to be simulated. After the simulation, the GUI is planned to provide readable and visualized analysis that facilitates making fast final design decisions.

Concerning the use cases we aim to cover and support with our comprehensive simulation environment, we plan to support the investigation of smart systems exploiting all novel ICT technologies we addressed in this paper: IoT, cloud, fog, and edge infrastructures, as well as Blockchain networks, and AI-based services. The use cases we covered so far with DISSECT-CF-Fog include sensor-based and drone-supported weather prediction and IoT-assisted logistics scenarios, while with FoBSim we analysed blockchain-based healthcare and certification management scenarios. In the future, we aim to address unified scenarios, where the complementary capabilities of the two simulators can be exploited.

5 Conclusion

The use of emerging technologies has an undeniable effect on the evolution of Smart Systems, providing various smart applications addressing governmental and industrial processes, and the citizen life of smart cities. In this position paper, we proposed a SIMulation-as-a-Service (SIMaaS) framework for designing and analyzing the behavior of smart systems exploiting Cloud and Fog Computing, the Internet of Things, Blockchain, and Artificial Intelligence methods. In this vision, we build on our previously developed FoBSim and DISSICT-CF-Fog simulators and integrate their use to support the modeling of BC-assisted Cloud-Edge smart system applications. We plan to use AI technology to optimize this harmonization and predict optimal configurations for the simulated smart applications. We also plan to provide a reusable template-based environment to assist future realization as a public service.