Managing the Cloud Continuum: Lessons Learnt from a Real Fog-to-Cloud Deployment
<p>mF2C layered architecture, agents blocks and envisioned cloud continuum scenario.</p> "> Figure 2
<p>mF2C deployed at the ESM use case.</p> "> Figure 3
<p>mF2C deployed at the SBS use case: Simplified diagram of the SBS architecture.</p> "> Figure 4
<p>mF2C deployed at the SBS use case: (<b>a</b>) SFHS architecture; (<b>b</b>) Final systems diagram.</p> ">
Abstract
:1. Introducing the Concept
- To illustrate the lessons learnt while designing and implementing a coordinated management solution for the cloud continuum;
- To present the results obtained when deploying the proposed solution in real-world scenarios;
- To propose the obtained validation results to serve as a benchmark for other similar initiatives.
2. Review of the State-of-the-Art
3. mF2C: Managing the Cloud Continuum
3.1. Key Technical Challenges
- The proposed solution must leverage a distributed and decentralized architecture, intended to overcome the limitations of a centralized cloud-based approach in terms of efficiency, agility and security;
- A coordinated orchestration is required to generate individual service workflows, to map these service workflows into those resources best suited for each of the requested services, and to coordinate the interactions among the different devices involved in the service execution. This coordination must be transparent to the user;
- The proposed management framework must enable a timely creation of dynamically provisioned cloud continuum infrastructure, automatic discovery of resources, context-based decision-making, stateless communication and transparent connectivity;
- The dynamic provisioning also requires advanced service scheduling to decide how the service’s individual functions are split across different devices and mapped into different physical resources. Dynamic refinements of the scheduling should be possible based on runtime conditions;
- The envisioned dynamic mapping strategy requires a high-performance service execution through parallel computing to accommodate resource volatility and real-time service demands;
- An appropriate runtime system for the envisioned novel service execution paradigm shall be considered to optimize the characteristics of the resources brought by the combination of fog and cloud computing;
- Security and privacy need to address critical security requirements for coordinating and managing distributed components within the cloud continuum scenario;
- The proposed architectural framework must be able to address the mobility and scalability implications of service execution, interaction and communication among the different devices;
3.2. Proposed Architecture
3.3. Addressing the Challenges
4. Performance Results
4.1. Scenario 1: Emergency Situation Management in Smart Cities (ESM)
4.2. Scenario 2: Smart Boat Service (SBS)
4.3. Scenario 3: Smart Fog-Hub Service (SFHS)
5. Lessons Learnt from a Real Deployment
5.1. Focus Area on Design and Implementation
5.2. Focus Area on Deployment and End User Experience
6. Conclusions and Opportunities
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Abbreviations
AC | Agent Controller |
AI | Artificial Intelligence |
API | Application Programming Interface |
AWS | Amazon Web Services |
CAPEX | Capital Expenditure |
CAU | Control Area unit |
CIMI | Cloud Infrastructure Management Interface |
ESM | Emergency Situation Management |
ETSI | European Telecommunications Standard Institute |
F2C | Fog-to-Cloud |
GDPR | General Data Protection Regulation |
GUI | Graphical User Interface |
IMA | Industrial Monitoring Application |
IoB | Internet of Behavior |
IoT | Internet of Things |
KPI | Key Performance Indicators |
LoRa | Long Range |
MEC | Multi-Access Edge Computing |
OFRA | OpenFog Reference Architecture |
POI | Point of Interest |
PM | Platform Manager |
QoS | Quality of Service |
RPI | Raspberry Pi |
SBS | Smart Boat Service |
SFHS | Smart Fog-Hub Service |
SLA | Service Level Agreement |
References
- Heslop, B. How Connected Devices Are Reshaping Consumer Behavior. Available online: https://www.contentstack.com/blog/all-about-headless/connected-devices-shape-consumer-behavior-infographic (accessed on 22 April 2021).
- Bonomi, F.; Milito, R.; Zhu, J.; Addepalli, S. Fog computing and its role in the Internet of Things. In Proceedings of the MCC Workshop on Mobile Cloud Computing, Helsinki, Finland, 13–17 August 2012; pp. 13–16. [Google Scholar]
- Hu, Y.C.; Patel, M.; Sabella, D.; Sprecher, N.; Young, V. Mobile Edge Computing: A key Technology Towards 5G; ETSI White Paper; European Telecommunications Standards Institute: Sophia Antipolis, France, 2015; ISBN 979-10-92620-08-5. [Google Scholar]
- Garcia, J.; Simó, E.; Masip-Bruin, X.; Marín-Tordera, E.; Sànchez-López, S. Do we really need cloud? Estimating the fog computing capacities in the city of Barcelona. In Proceedings of the 11th IEEE/ACM International Conference on Utility and Cloud Computing (UCC), Zurich, Switzerland, 17–20 December 2018. [Google Scholar] [CrossRef]
- Bittencourt, L.; Immich, R.; Sakellariou, R.; Fonseca, N.; Madeira, E.; Curado, M.; Villas, L.; DaSilva, L.; Lee, C.; Rana, O. The internet of things, fog and cloud continuum: Integration and challenges. Internet Things 2018, 3, 134–155. [Google Scholar] [CrossRef] [Green Version]
- Fortino, G.; Savaglio, C.; Spezzano, G.; Zhou, M. Internet of Things as System of Systems: A Review of Methodologies, Frameworks, Platforms, and Tools. IEEE Trans. Syst. Man Cybern. Syst. 2021, 51, 223–236. [Google Scholar] [CrossRef]
- Ramírez, W.; Masip-Bruin, X.; Marin-Tordera, E.; Souza, V.B.C.; Jukan, A.; Ren, G.J.; de Dios, O.G. Evaluating the Benefits of Combined and Continuous Fog-to-Cloud Architectures. Comput. Commun. 2017, 113, 43–52. [Google Scholar] [CrossRef] [Green Version]
- mF2C Project. Available online: https://www.mf2c-project.eu/index.html# (accessed on 22 April 2021).
- Open Fog Consortium Working Group. OpenFog Reference Architecture for Fog Computing, White paper, February. 2017. Available online: https://www.iiconsortium.org/pdf/OpenFog_Reference_Architecture_2_09_17.pdf (accessed on 22 April 2021).
- ETSI, Multi-access Edge Computing (MEC). Available online: http://www.etsi.org/technologies-clusters/technologies/multi-access-edge-computing (accessed on 22 April 2021).
- Masip-Bruin, X.; Marín-Tordera, E.; Tashakor, G.; Jukan, A.; Ren, G.J. Foggy Clouds and Cloudy Fogs: A Real Need for Coordinated Management of Fog-to-Cloud (F2C) Computing Systems. IEEE Wirel. Commun. Mag. 2016, 23, 120–128. [Google Scholar] [CrossRef] [Green Version]
- Gupta, H.; Nath, S.B.; Chakraborty, S.; Ghosh, S.K. SDFog: A Software Defined Computing Architecture for QoS Aware Service Orchestration over Edge Devices. arXiv 2016, arXiv:1609. [Google Scholar]
- Van Eyk, E.; Toader, L.; Talluri, S.; Versluis, L.; Uță, A.; Iosup, A. Serverless is More: From PaaS to Present Cloud Computing. IEEE Internet Comput. 2018, 22, 8–17. [Google Scholar] [CrossRef] [Green Version]
- Villari, M.; Fazio, M.; Dustdar, S.; Rana, O.; Ranjan, R. Osmotic Computing: A New Paradigm for Edge/Cloud Integration. IEEE Cloud Comput. 2016, 3, 76–83. [Google Scholar] [CrossRef] [Green Version]
- Coughlin, T. Convergence Through the Cloud-to-Thing Consortium. IEEE Consum. Electron. Mag. 2017, 6, 14–17. [Google Scholar] [CrossRef]
- Inter-IoT Project. Available online: https://inter-iot.eu (accessed on 22 April 2021).
- RECAP Project. Available online: https://recap-project.eu (accessed on 22 April 2021).
- DITAS Project. Available online: https://www.ditas-project.eu (accessed on 22 April 2021).
- Lightkone. Available online: https://www.lightkone.eu/index.php/about (accessed on 22 April 2021).
- CLASS Project. Available online: https://class-project.eu (accessed on 22 April 2021).
- DRUID-NET Project. Available online: https://druidnet.netmode.ntua.gr/ (accessed on 22 April 2021).
- Choi, N.; Kim, D.; Lee, S.J.; Yi, Y. A Fog Operating System for User-Oriented IoT Services: Challenges and Research Directions. IEEE Commun. Mag. 2017, 55, 44–51. [Google Scholar] [CrossRef]
- OpenFog, OpenFog Reference Architecture | OpenFog Consortium. Available online: https://www.iiconsortium.org/pdf/OpenFog-Reference-Architecture-Executive-Summary.pdf (accessed on 22 April 2021).
- Saurez, E.; Hong, K.; Lillethun, D.; Ramachandran, U.; Ottenwälder, B. Incremental deployment and migration of geo-distributed situation awareness applications in the fog. In Proceedings of the 10th ACM International Conference on Distributed and Event-based Systems-DEBS 16, Irvine, CA, USA, 20–24 June 2016; pp. 258–269. [Google Scholar]
- Varghese, B.; Wang, N.; Li, J.; Nikolopoulos, D.S. Edge-as-a-Service: Towards distributed Cloud architectures. arXiv 2017, arXiv:1710.10090. [Google Scholar]
- Lewis, G.; Echeverría, S.; Simanta, S.; Bradshaw, B.; Root, J. Tactical cloudlets: Moving cloud computing to the edge. In Proceedings of the IEEE Military Communications Conference MILCOM, Baltimore, MD, USA, 6–8 October 2014; pp. 1440–1446. [Google Scholar]
- Zavodovski, A.; Mohan, N.; Kangasharju, J. eDisco: Discovering Edge Nodes Along the Path. arXiv 2018, arXiv:1805.01725. [Google Scholar]
- Mendoza, E.A.S.; da Conceicao, A.F.; Aliaga, A.H.M.; Vieira, D. Pytos: A Framework for Mobile Computation Offloading in Python. In Proceedings of the 11th International Conference on Signal-Image Technology and Internet-Based Systems, SITIS 2015, Bangkok, Thailand, 23–27 November 2015; pp. 262–269. [Google Scholar]
- Marjanović, M.; Antonić, A.; Žarko, I.P. Edge Computing Architecture for Mobile Crowdsensing. IEEE Access 2018, 6, 10662–10674. [Google Scholar] [CrossRef]
- Available online: https://azure.microsoft.com/en-gb/overview/future-of-cloud/ (accessed on 22 April 2021).
- Bal, H.E.; Maassen, J.; van Nieuwpoort, R.V.; Drost, N.; Kemp, R.; van Kessel, T.; Palmer, N.; Wrzesinska, G.; Kielmann, T.; van Reeuwijk, K.; et al. Real-world distributed computer with ibis. IEEE Comput. 2010, 23, 54–62. [Google Scholar] [CrossRef]
- Wilde, M.; Hategan, M.; Wozniak, J.M.; Clifford, B.; Katz, D.S.; Foster, I. Swift: A language for distributed parallel scripting. Parallel Comput. 2011, 24, 633–652. [Google Scholar] [CrossRef] [Green Version]
- Taverna Workflow Management System. Available online: http://www.taverna.org.uk (accessed on 22 April 2021).
- Deelman, E.; Vahi, K.; Juve, G.; Rynge, M.; Callaghan, S.; Maechling, P.J.; Mayani, R.; Chen, W.; Da Silva, R.F.; Livny, M.; et al. Pegasus, a workflow management system for science automation. Future Gener. Comput. Syst. 2015, 46, 17–35. [Google Scholar] [CrossRef] [Green Version]
- Badia, R.M.; Ejarque, J.; Lordan, F.; Lezzi, D.; Conejero, J.; Cid-Fuentes, J.Á.; Becerra, Y.; Queralt, A. Workflow Environments for Advanced Cyberinfrastructure Platforms. In Proceedings of the IEEE 39th International Conference on Distributed Computing Systems (ICDCS), Dallas, TX, USA, 7–10 July 2019; ICDCS, 2019; pp. 1720–1729. [Google Scholar]
- Mortazavi, S.H.; Salehe, M.; Gomes, C.S.; Phillips, C.; de Lara, E. Cloudpath: A multi-tier cloud computing framework. In Proceedings of the Second ACM/IEEE Symposium on Edge, SEC 2017, San Jose, CA, UAS, 12–14 October 2017; pp. 20:1–20:13. [Google Scholar]
- Gupta, H. Umakishore Ramachandran. FogStore: A Geo-Distributed Key-Value Store Guaranteeing Low Latency for Strongly Consistent Access. In Proceedings of the 12th ACM International Conference on Distributed and Event-based Systems, DEBS, Hamilton, New Zealand, 25–29 June 2015; 2018; pp. 148–159. [Google Scholar]
- Gupta, H.; Xu, Z.; Ramachandran, U. DataFog: Towards a Holistic Data Management Platform for the IoT Age at the Network Edge. In Proceedings of the USENIX Workshop on Hot Topics in Edge Computing, HotEdge 2018, Boston, MA, USA, 10 July 2018. [Google Scholar]
- Available online: https://www.mcobject.com/extremedbfamily (accessed on 22 April 2021).
- Available online: https://www.ibm.com/products/informix/embedded-for-iot (accessed on 22 April 2021).
- Available online: https://redislabs.com/blog/ideal-iot-edge-database-redis-enterprise/ (accessed on 22 April 2021).
- Available online: https://www.harperdb.io/ (accessed on 22 April 2021).
- Available online: https://yottadb.com/use-cases/internet-of-things/ (accessed on 22 April 2021).
- Martí, J.; Queralt, A.; Gasull, D.; Barceló, A.; Costa, J.J.; Cortes, T. Dataclay: A Distributed Data Store for Effective Inter-player Data Sharing. J. Syst. Softw. 2017, 131, 129–145. [Google Scholar] [CrossRef] [Green Version]
- Shah-Mansouri, H.; Wong, V.W. Hierarchical Fog-Cloud Computing for IoT Systems: A Computation Offloading Game. IEEE Internet Things J. 2018, 5, 3246–3257. [Google Scholar] [CrossRef] [Green Version]
- Naha, R.K.; Garg, S.; Chan, A.; Battula, S.K. Deadline-based dynamic resource allocation and provisioning algorithms in Fog-Cloud environment. Future Gener. Comput. Syst. 2020, 104, 131–141. [Google Scholar] [CrossRef]
- Mahmud, R.; Srirama, S.N.; Ramamohanarao, K.; Buyya, R. Profit-aware application placement for integrated Fog–Cloud computing environments. J. Parallel Distrib. Comput. 2020, 135, 177–190. [Google Scholar] [CrossRef]
- Masip-Bruin, X.; Marin-Tordera, E.; Jukan, A.; Ren, G.J. Managing resources continuity from the edge to the cloud: Architecture and performance. Future Gener. Comput. Syst. 2018, 79, 777–785. [Google Scholar] [CrossRef] [Green Version]
- Gill, S.S.; Garraghan, P.; Buyya, R. ROUTER: Fog enabled cloud based intelligent resource management approach for smart home IoT devices. J. Syst. Softw. 2019, 154, 125–138. [Google Scholar] [CrossRef]
- Skarlat, O.; Bachmann, K.; Schulte, S. Fogframe: Iot service deployment and execution in the fog. KuVS-Fachgespräch Fog Comput. 2018, 1, 5–8. [Google Scholar]
- Dechouniotis, D.; Athanasopoulos, N.; Leivadeas, A.; Mitton, N.; Jungers, R.M.; Papavassiliou, S. 2020. Edge computing resource allocation for dynamic networks: The DRUID-NET vision and perspective. Sensors 2020, 20, 2191. [Google Scholar] [CrossRef] [PubMed]
- Azure IoT Edge. Available online: https://azure.microsoft.com/en-us/services/iot-edge (accessed on 22 April 2021).
- Azure IoT GitHub. Available online: https://github.com/Azure/iot-edge/ (accessed on 22 April 2021).
- Amazon Web Services Greengrass. Available online: https://aws.amazon.com/greengrass (accessed on 22 April 2021).
- Distributed Management Task Force, Cloud Infrastructure Management Interface (CIMI), October. 2012. Available online: https://www.dmtf.org/sites/default/files/TechNoteCIMIv6_comments_10.31.12_0.pdf (accessed on 22 April 2021).
- Kahvazadeh, S.; Souza, V.B.; Masip-Bruin, X.; Marín-Tordera, E.; Garcia, J.; Diaz, R. Securing combined fog-to-cloud systems through an SDN approach. In Proceedings of the 4th Workshop on CrossCloud Infrastructures & Platforms, Belgrade, Serbia, 23 April 2017; pp. 1–6. [Google Scholar] [CrossRef]
Challenge | Technical Requirement | mF2C Strategy |
---|---|---|
Coordinated orchestration | Individual service workflows | The Task Management detects application’ tasks, finds data dependencies between them and builds a task graph or workflow |
Efficient mapping of workflows into resources | Services and resources are categorized in the Platform Manager and the Agent Controller modules respectively, and the Recommender issues the proper set of resources to execute a service. Then, the Task Management and Scheduling blocks allocate the mapping also according to the feedback from the QoS and Lifecycle components | |
Coordinated operation of all devices involved in service execution | The Lifecycle components in the Platform Manager handle the actions required to enable a coordinated operation of the whole set of actions | |
User agnostic operation | Services are orchestrated with no need for the user to intervene. In fact, the user should only identify devices used to connect, profile and sharing model (if any) | |
Volatility | The Recommender and the Discovery process handle the unavoidable volatility caused by systems mobility | |
Infrastructure adaptability | Dynamic infrastructure provisioning | Clusters of devices may be dynamically reconfigured (reduced/extended) to face devices mobility, through the proposed resources discovery strategy. Resources can also be re-provisioned to meet QoS enforcing. |
Automatic resources discovery | Devices serving as leaders use their Wi-Fi interface to broadcast beacons containing mF2C-specific Vendor-Specific Information Elements (VSIEs) and regular agents perform a Wi-Fi scan looking for beacons containing mF2C VSIEs to detect the presence of nearby leaders. | |
Context based decision making | The Landscaper component contains an updated and accurate view of the physical and logical topology, used by the Recommender to decide on the resources best suited to execute a particular service. | |
Transparent connectivity | The proposed hierarchical approach, setting clusters and branches with a clear horizontal and vertical communication strategy, facilitates a completely transparent connectivity. | |
Adequate services scheduling | The Task Scheduling schedules the different tasks in the distributed computing platform, leveraging the Recommender outcome, where the required data is and which resources can perform the specific task. | |
High performance service execution | A parallel computing approach, based on COMPSs [35] is considered in the Task Scheduling component to facilitate the simultaneous execution of different tasks in non-concurrent workflows | |
Appropriate Runtime system | Resources characteristics optimization | The Landscaper and the Recommender components are responsible for keeping an accurate view of the available resources and to “recommend” what resources will best suit specific service needs, respectively. |
QoS guarantees | QoS providing and QoS enforcing blocks are responsible for identifying the resources needed to meet the expected QoS and for adapting that set of resources to real-time needs in runtime respectively. SLA policies are also proposed to meet specific mF2C and cloud continuum requirements. | |
Security and privacy provisioning | Security guarantees | mF2C follows a secure by design approach, consisting in using: (i) appropriate tools for security development (e.g., DAST); (ii) DevSecOps; (iii) design strategies based on well-maintained libraries (e.g., OpenSSL), standard interfaces (e.g., GSSAPI) and standard protocols/formats (e.g., HTTPS, OAuth2, OIDC, JWT); (iv) securing fog-to-fog, inter-fog and fog-to-cloud communications via encrypting messages (e.g., AES, RSA) and well-designed APIs (e.g., CIMI). |
Privacy guarantees | Confidentiality and integrity are protected in intra-agent communications through the default private Docker network. Encryption and secure transport protocols are used for external agent communications. GDPR compliance for user data is handled through a consent process supported by message token generation, cryptography and access control. | |
Scalability, viability and resilience | Mobility impact on services execution | Mobility impacts on QoS, and the QoS enforcement component is responsible for predicting the need for additional resources in advance, which are dynamically added to the execution by the Policies block. |
Devices communication and interaction | CIMI is used to facilitate mF2C systems communication and interaction, either through the invocation of functionalities in other components or through the access to shared data. | |
Scalable solution | Dataclay [44] as a distributed solution to handle huge data volumes, and COMPSs [35] as a distributed execution runtime supporting the Task Management and Scheduling components, are used for scalability purposes. | |
Highly constrained devices | The microagent version of the agent is specifically designed to be deployed on highly constrained devices. | |
Resilient solution | The mF2C solution includes a set of policies to handle devices failures that may interrupt global performance, mainly focusing on leader nodes. |
KPI | Description | Result |
---|---|---|
Latency | Measurement of the time it takes for the physical alarm to be started when a measurement exceeds a threshold | The mF2C environment provides an improvement of about 76% compared to the cloud only environment |
Reliability/QoS | The end user application is based on continuous data communication, intrinsic redundancy of the mF2C architecture, guarantees better use of bandwidth and resilience capabilities | Availability increased to 90% with the use of the mF2C environment. This represents a 10% improvement of the commercial offer. |
CAPEX savings | Economic impact of the mF2C system compared to an alternative architecture where a cloud-based application is enriched with a powerful Fog device at the edge level | This represents CAPEX savings of at least 17% |
KPI/Target | Description | Result |
---|---|---|
Expanded Coverage/20% | Expanded coverage of transmitting Smart Boat sensor data to cloud by using fog devices and LoRa communication. | Successfully achieved with a multi-hop solution |
Improved Stability/20% | Facilitate usage of fog devices and boat to boat communication enables functionalities in dark zones without coverage. | Boat can be monitored successfully using LoRa also without 3G/4G network over large period of time (days, weeks). |
More Responsive Applications | Communication response time improvement using mF2C instead of cloud | Mobile device—mF2C latency is 2.5x lower than mobile device—cloud. |
Lower Operational Cost and Potential Improvement of ROI | Usage of mF2C in software development provides some tools in the package. This means a lower number of tools to maintain for development and running the application | As mF2C brings its own cloud and fog deployment platform, its own orchestration engine on agents and an abstracted way of sensor interaction, we estimated that 15–20% fewer resources are required for development and operation. |
Contribution to Safety on Sea | Safety on sea is a prime concern of our customers. With an expanded coverage and improved stability of the application this KPI can be achieved. | The application provides communication between the boats in no network coverage zones and allows transmitting sensor data from no coverage zones to the cloud. The KPI is largely achieved. |
KPI | Description | Result |
---|---|---|
Response Time | The end user application requires real-time response, end-to-end response time for the proximity calculation is performed balancing fog and cloud processing to obtain better response times. | The mF2C environment provides an improvement of at least 15% compared to the cloud only environment. |
Resilience | The end user application is based on continuous data communication, intrinsic redundancy of the mF2C architecture, guarantees better use of bandwidth and resilience capabilities. | At least 3RPI connect to each device with handover capability to link to the strongest signal in the field, so mF2C guarantees better coverage, resilience capabilities and better use of bandwidth. |
Data Locality and Regulatory Compliance | Processing of personal data is done at the edge using security/privacy by design mF2C features, thus fulfilling the GDPR constraints (compliant or not). | Full GDPR compliancy and control on personal data management. |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Masip-Bruin, X.; Marín-Tordera, E.; Sánchez-López, S.; Garcia, J.; Jukan, A.; Juan Ferrer, A.; Queralt, A.; Salis, A.; Bartoli, A.; Cankar, M.; et al. Managing the Cloud Continuum: Lessons Learnt from a Real Fog-to-Cloud Deployment. Sensors 2021, 21, 2974. https://doi.org/10.3390/s21092974
Masip-Bruin X, Marín-Tordera E, Sánchez-López S, Garcia J, Jukan A, Juan Ferrer A, Queralt A, Salis A, Bartoli A, Cankar M, et al. Managing the Cloud Continuum: Lessons Learnt from a Real Fog-to-Cloud Deployment. Sensors. 2021; 21(9):2974. https://doi.org/10.3390/s21092974
Chicago/Turabian StyleMasip-Bruin, Xavi, Eva Marín-Tordera, Sergi Sánchez-López, Jordi Garcia, Admela Jukan, Ana Juan Ferrer, Anna Queralt, Antonio Salis, Andrea Bartoli, Matija Cankar, and et al. 2021. "Managing the Cloud Continuum: Lessons Learnt from a Real Fog-to-Cloud Deployment" Sensors 21, no. 9: 2974. https://doi.org/10.3390/s21092974