Abstract
A failure may occur at all architectural levels of the Internet of Things (IoT) applications: sensor and actuator nodes can be missed, network links can be down, and processing and storage components can fail to perform properly. That is the reason for which fault-tolerance (FT) has become a crucial concern for IoT systems.
Our study aims at identifying and classifying the existing FT mechanisms that can tolerate the IoT systems failure. In line with a systematic mapping study selection procedure, we picked out 60 papers among over 2300 candidate studies. To this end, we applied a rigorous classification and extraction framework to select and analyze the most influential domain-related information. Our analysis revealed the following main findings: (i) whilst researchers tend to study fault-tolerant IoT (FT-IoT) in cloud level only, several studies extend the application to fog and edge computing; (ii) there is a growing scientific interest on using the microservices architecture to address FT in IoT systems; (iii) the IoT components distribution, collaboration and intelligent elements location impact the system resiliency. This study gives a foundation to classify the existing and future approaches for fault-tolerant IoT, by classifying a set of methods, techniques and architectures that are potentially capable to reduce IoT systems failure.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
It is worth mentioning that we considered “Software Engineering” as the Search Topic, since the original search leaded to 193,000 results.
References
Muccini, H., Moghaddam, M.T.: IoT architectural styles. In: Cuesta, C.E., Garlan, D., Pérez, J. (eds.) ECSA 2018. LNCS, vol. 11048, pp. 68–85. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-00761-4_5
Kitchenham, B., Brereton, P.: A systematic review of systematic review process research in software engineering. Inf. Softw. Technol. 55(12), 2049–2075 (2013)
Kitchenham, B.A., Charters, S.: Guidelines for performing systematic literature reviews in software engineering. Technical report, EBSE-2007-01 (2007)
Zhang, H., Babar, M.A., Tell, P.: Identifying relevant studies in software engineering. Inf. Softw. Technol. 53(6), 625–637 (2011). https://doi.org/10.1016/j.infsof.2010.12.010
Muccini, H., Spalazzese, R., Moghaddam, M.T., Sharaf, M.: Self-adaptive IoT architectures: an emergency handling case study. In: Proceedings of the 12th European Conference on Software Architecture: Companion Proceedings, p. 19. ACM (2018)
Muccini, H., Arbib, C., Davidsson, P., Tourchi Moghaddam, M.: An IoT software architecture for an evacuable building architecture. In: Proceedings of the 52nd Hawaii International Conference on System Sciences (2019)
Arbib, C., Arcelli, D., Dugdale, J., Moghaddam, M., Muccini, H.: Real-time emergency response through performant IoT architectures. In: International Conference on Information Systems for Crisis Response and Management (ISCRAM) (2019)
Fayyaz, M., Vladimirova, T.: Survey and future directions of fault-tolerant distributed computing on board spacecraft. Adv. Space Res. 58(11), 2352–2375 (2016)
Petersen, K., Vakkalanka, S., Kuzniarz, L.: Guidelines for conducting systematic mapping studies in software engineering: an update. Inf. Softw. Technol. 64, 1–18 (2015)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Primary Studies
Primary Studies
-
P1: Toward a New Approach to IoT Fault Tolerance, https://doi.org/10.1109/MC.2016.238
-
P2: CEFIoT: A fault-tolerant IoT architecture for edge and cloud, https://doi.org/10.1109/WF-IoT.2018.8355149
-
P3: Reliable and Fault-Tolerant IoT-Edge Architecture, https://doi.org/10.1109/ICSENS.2018.8589624
-
P4: Efficient Fault-Tolerant Routing in IoT Wireless Sensor Networks Based on Bipartite-Flow Graph Modeling, https://doi.org/10.1109/ACCESS.2019.2894002
-
P5: Optimizing Multipath Routing With Guaranteed Fault Tolerance in Internet of Things, https://doi.org/10.1109/JSEN.2017.2739188
-
P6: Brume - A Horizontally Scalable and Fault Tolerant Building Operating System, https://doi.org/10.1109/IoTDI.2018.00018
-
P7: A Watchdog Service Making Container-Based Micro-services Reliable in IoT Clouds, https://doi.org/10.1109/FiCloud.2017.57
-
P8: Towards Fault Tolerant Fog Computing for IoT-Based Smart City Applications, https://doi.org/10.1109/CCWC.2019.8666447
-
P9: Device clustering for fault monitoring in Internet of Things systems, https://doi.org/10.1109/WF-IoT.2015.7389057
-
P10: Decentralized fault tolerance mechanism for intelligent IoT/M2M middleware, https://doi.org/10.1109/WF-IoT.2014.6803115
-
P11: Application of Blockchain in Collaborative Internet-of-Things Services, https://doi.org/10.1109/TCSS.2019.2913165
-
P12: A Review of Aggregation Algorithms for the Internet of Things, https://doi.org/10.1109/ICSEng.2017.43
-
P13: Supporting Service Adaptation in Fault Tolerant Internet of Things, https://doi.org/10.1109/SOCA.2015.38
-
P14: Fault tolerant and scalable IoT-based architecture for health monitoring, https://doi.org/10.1109/SAS.2015.7133626
-
P15: Fault tolerance capability of cloud data center, https://doi.org/10.1109/ICCP.2017.8117053
-
P16: Reaching Agreement in an Integrated Fog Cloud IoT, https://doi.org/10.1109/ACCESS.2018.2877609
-
P17: Byzantine Resilient Protocol for the IoT, https://doi.org/10.1109/JIOT.2018.2871157
-
P18: DRAW: Data Replication for Enhanced Data Availability in IoT-based Sensor Systems, https://doi.org/10.1109/DASC/PiCom/DataCom
-
P19: Power efficient, bandwidth optimized and fault tolerant sensor management for IOT in Smart Home, https://doi.org/10.1109/IADCC.2015.7154732
-
P20: Energy efficiency and robustness for IoT: Building a smart home security system, https://doi.org/10.1109/ICCP.2016.7737120
-
P21: A Microservices Architecture for Reactive and Proactive Fault Tolerance in IoT Systems, https://doi.org/10.1109/WoWMoM.2018.8449789
-
P22: Management of solar energy in microgrids using IoT-based dependable control, https://doi.org/10.1109/ICEMS.2017.8056441
-
P23: A hierarchical cloud architecture for integrated mobility, service, and trust management of service-oriented IoT systems, https://doi.org/10.1109/INTECH.2016.7845021
-
P24: Fault-Tolerant Real-Time Collaborative Network Edge Analytics for Industrial IoT and Cyber Physical Systems with Communication Network Diversity, https://doi.org/10.1109/CIC.2018.00052
-
P25: Fault-Tolerant mHealth Framework in the Context of IoT-Based Real-Time Wearable Health Data Sensors, https://doi.org/10.1109/ACCESS.2019.2910411
-
P26: SCONN: Design and Implement Dual-Band Wireless Networking Assisted Fault Tolerant Data Transmission in Intelligent Buildings, https://doi.org/10.1109/VTCFall.2018.8690787
-
P27: Fault-tolerant application placement in heterogeneous cloud environments, https://doi.org/10.1109/CNSM.2015.7367359
-
P28: A reliable and energy efficient IoT data transmission scheme for smart cities based on redundant residue based error correction coding, https://doi.org/10.1109/SECONW.2015.7328141
-
P29: Distributed Continuous-Time Fault Estimation Control for Multiple Devices in IoT Networks, https://doi.org/10.1109/ACCESS.2019.2892905
-
P30: Trend-adaptive multi-scale PCA for data fault detection in IoT networks, https://doi.org/10.1109/ICOIN.2018.8343217
-
P31: Adaptive and Fault-tolerant Data Processing in Healthcare IoT Based on Fog Computing, https://doi.org/10.1109/TNSE.2018.2859307
-
P32: Fault-Recovery and Coherence in Internet of Things Choreographies, https://doi.org/10.1109/WF-IoT.2014.6803224
-
P33: A Novel Data Reduction Technique with Fault-tolerance for Internet-of-things, https://doi.org/10.1145/3018896.3018971
-
P34: Performance Comparisons of Fault-Tolerant Rouging Approaches for IoT Wireless Sensor Networks, https://doi.org/10.1145/3195106.3195168
-
P35: Rivulet: A Fault-tolerant Platform for Smart-home Applications, https://doi.org/10.1145/3135974.3135988
-
P36: Censorship Resistant Decentralized IoT Management Systems, https://doi.org/10.1145/3286978.3286979
-
P37: Towards a Foundation for a Collaborative Replicable Smart Cities IoT Architecture, https://doi.org/10.1145/3063386.3063763
-
P38: Responsible Objects: Towards Self-Healing Internet of Things Applications, https://doi.org/10.1109/ICAC.2015.60
-
P39: A Multi-agent System Architecture for Self-Healing Cloud Infrastructure, https://doi.org/10.1145/2896387.2896392
-
P40: Reactive Microservices for the Internet of Things: A Case Study in Fog Computing, https://doi.org/10.1145/3297280.3297402
-
P41: Fault Tolerance Techniques and Architectures in Cloud Computing - a Comparative Analysis, https://doi.org/10.1109/ICGCIoT.2015.7380625
-
P42: Energy Efficient Fault-tolerant Clustering Algorithm for Wireless Sensor Networks, https://doi.org/10.1109/ICGCIoT.2015.7380464
-
P43: Layered Fault Management Scheme for End-to-end Transmission in Internet of Things, https://doi.org/10.1007/s11036-012-0355-5
-
P44: An Architectural Mechanism for Resilient IoT Services, https://doi.org/10.1145/3137003.3137010
-
P45: Resilience of Stateful IoT Applications in a Dynamic Fog Environment, https://doi.org/10.1145/3286978.3287007
-
P46: The Optimal Generalized Byzantine Agreement in Cluster-based Wireless Sensor Networks, https://doi.org/10.1016/j.csi.2014.01.005
-
P47: A Reliable IoT System for Personal Healthcare Devices, https://doi.org/10.1016/j.future.2017.04.004
-
P48: Reliable Industrial IoT-based Distributed Automation, https://doi.org/10.1145/3302505.3310072
-
P49: Low-Cost Memory Fault Tolerance for IoT Devices, https://doi.org/10.1145/3126534
-
P50: Idea: A System for Efficient Failure Management in Smart IoT Environments, https://doi.org/10.1145/2906388.2906406
-
P51: Patterns for Things That Fail, https://www.hillside.net/plop/2017/papers/proceedings/papers/07-ramadas.pdf
-
P52: Fall-curve: A Novel Primitive for IoT Fault Detection and Isolation, https://doi.org/10.1145/3274783.3274853
-
P53: Multilevel IoT Model for Smart Cities Resilience, https://doi.org/10.1145/3095786.3095793
-
P54: Energy Efficient Device Discovery for Reliable Communication in 5G-based IoT and BSNs Using Unmanned Aerial Vehicles, https://doi.org/10.1016/j.jnca.2017.08.013
-
P55: A Programming Framework for Implementing Fault-Tolerant Mechanism in IoT Applications, https://doi.org/10.1007/978-3-319-27137-8_56
-
P56: Transient fault aware application partitioning computational offloading algorithm in microservices based mobile cloudlet networks, https://doi.org/10.1007/s00607-019-00733-4
-
P57: Channel Dependability of the ATM Communication Network Based on the Multilevel Distributed Cloud Technology, https://doi.org/10.1007/978-3-319-67642-5_49
-
P58: Design of compressed sensing fault-tolerant encryption scheme for key sharing in IoT Multi-cloudy environment(s), https://doi.org/10.1016/j.jisa.2019.04.004
-
P59: Fault-Tolerant Temperature Control Algorithm for IoT Networks in Smart Buildings, https://doi.org/10.3390/en11123430
-
P60: Virtualization in Wireless Sensor Networks: Fault Tolerant Embedding for Internet of Things, https://doi.org/10.1109/JIOT.2017.2717704
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Moghaddam, M.T., Muccini, H. (2019). Fault-Tolerant IoT. In: Calinescu, R., Di Giandomenico, F. (eds) Software Engineering for Resilient Systems. SERENE 2019. Lecture Notes in Computer Science(), vol 11732. Springer, Cham. https://doi.org/10.1007/978-3-030-30856-8_5
Download citation
DOI: https://doi.org/10.1007/978-3-030-30856-8_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-30855-1
Online ISBN: 978-3-030-30856-8
eBook Packages: Computer ScienceComputer Science (R0)