1 Introduction

Within the last 15 years, industries have been digitalized quickly, and the healthcare system is a part of this evolution [66], on the other hand today’s world has been faced with many challenges such as chronic diseases and COVID-19 that threaten public health issues [31]. The primary function of the healthcare system is continuous monitoring of physical health parameters such as heartbeat, blood glucose level, blood calcium level, height, and weight. This data can be used to obtain a clear perception of the health condition of patients [47, 57] and to provide information periodically for cloud servers. Furthermore, using the e-Medical system, ambulances, nurses, and doctors can remotely access this information on cloud servers through the Internet to know the present health condition of patients [34, 88].

Cloud computing architecture has high storage capability and computation power; therefore, it has been known as an efficient way to process data [29, 43]. However, due to some shortcomings of current cloud models such as network infrastructure dependency, high bandwidth limitation, and unpredictable response time, they cannot be the best solution for critical applications and countering IoT challenges [56, 75, 77]. Thus, Cisco proposed fog computing to overcome such problems and to provide suitable services at the edge of the network. Application of fog computing gives us such advantages as decreasing data center load, reducing response time, decreasing energy consumption, and saving network bandwidth [63].

Fog computing is a newfound paradigm that is proposed to cover the deficiencies of current cloud-based models [49, 97, 111]. Contrary to common cloud computing, fog computing performs the computation and provides storage facilities and communication at the network edge. Therefore, it can execute delay-sensitive computations while reducing energy consumption and decreasing traffic congestion [36, 84]. When a fog node receives a processing request from end devices, based on its available resources, it processes the request using local resources or sends it to the cloud server. Therefore, fog computing leads to enhanced performance and resource efficiency by reducing energy consumption and delay and bandwidth saving [69]. Generally, the features of fog computing are location awareness, low latency, real-time processing, heterogeneity, wireless and mobile access, geographical distribution support, and scalability.

The motivation to study healthcare systems based on fog computing is that until now, there has been no wide and systematic review of fog-based healthcare systems. Most of the existing papers do not include the systematic literature review (SLR) standards or do not discuss or analyze trends, open issues, and future dimensions of fog-based healthcare systems in particular. Therefore, in this paper, the authors performed an SLR to identify, taxonomically categorize, and systematically compare the effective and valid proposed approaches in the field of fog computing in the healthcare application. An SLR highlights, categorizes, analyzes, and provides a comparative overview of recent researches and enables knowledge sharing among the researchers [15, 82]. Specifically, the authors conducted a review of the existing researches based on a methodology to answer the following questions:

  • What classification of research could be used in fog-based healthcare?

  • What are the popular simulation tools used for fog-based healthcare?

  • Which are the evaluation metrics used in fog-based healthcare?

  • Which are the measurement environments used to evaluate fog-based healthcare?

  • What are the future trends, open issues, and challenges in fog-based healthcare?

In this regard, the guidelines in [15, 52] were followed, systematic identification and taxonomic classification of fog-based healthcare systems are provided, and a comparative analysis of the most efficient approaches in terms of potential and limitations are conducted. To this end, 34 studies were selected, classified, and compared. Briefly, the main contributions of this study are as follows:

  • Studying the existing methods and presenting a systematic review for fog computing in healthcare systems

  • Providing a technical classification in healthcare based on fog environment

  • Investigating the basic challenges and issues about fog-based healthcare

  • Providing advantages and disadvantages, evaluation metrics and methods, evaluation environments, and tools in selected papers

  • Highlighting open issues and future perspectives in healthcare based on fog environment

The rest of this paper is organized as follows. A background related to fog computing and healthcare systems and their definitions is provided in Sect. 2. Some related works are summarized in Sect. 3. The adopted methodology for the systematic literature review is described in Sect. 4. The selected fog-based healthcare techniques are discussed in Sect. 5. The obtained findings of the reviewed papers are discussed the Sect. 6. Some open issues are elaborated in Sect. 7. Finally, Sect. 8 presents the conclusion in addition to the paper limitations.

2 Background

The principles and related terminologies of healthcare, fog system architecture, advantages of fog computing, and the critical applied parameters are presented and explained in this section.

2.1 Healthcare

Healthcare has been changed to a growing competitive market. Studying the history of patients can help physicians to consider patient needs in healthcare system designing and offering service, which leads to increase patient satisfaction [74]. Additionally, In the world's current state, due to the spread of infectious and epidemic diseases such as COVID-19, along with the high cost, long-distance, and need for quarantine of this pandemic, accessing to medical centers is difficult and sometimes impossible especially for the elderlies and disabled people [67, 95]. In this context, the smart hospital system (SHS) architecture provides quickly accessing patient information and speeds up the treatment process [71]. This architecture monitors and tracks the patients, biomedical devices, and practitioners within the hospital automatically [37]. Additionally, it collects the variation of vital physiological parameters of patients and environmental conditions in a real-time manner. The captured parameters are sent to a control center that provides easy remote and local access to these parameters through a customizable web service called representational state transfer [2, 6].

The proposed SHS can be validated by implementing two scenarios. The former is related to monitoring the patients; the latter deals with emergency management effected by real-time patient falls [16]. Safety and healthcare quality have a considerable effect on the use of healthcare information technology (HIT) in institutions and hospitals. The healthcare quality is measured based on medical care quality, usual care quality, ambulatory care quality, and special illness care quality. Thousands of sensors may be installed in hospitals and smart buildings to capture different operating parameters, such as patient status, blood pressure, ECG, blood glucose level, room humidity, and temperature.The sensors capture remote data at time intervals and send them to a local storage server. Then this data is analyzed (processed), and the patient condition is reported to the physician, or caregiver as necessary [7]. Usually, the data analyzing and sending the patient's condition are highly time-sensitive, for instance, emergency cases such as heart attack or hypertension, and cloud architecture cannot satisfy some requirements of these applications within the health center [1]. Therefore, fog computing can cover the gap between the health center and sensors, and fog nodes could monitor and respond in emergency cases. Fog computing provides customizable, lightweight, and robust storage and computing infrastructure for health centers and support desktop computers, smartphones, and tablets [55]. Some of the essential scenarios of healthcare system deployments are described in the following [7, 83].

  • Mobile: In this case, the patient mobile phone acts as a connection point between cloud and sensor devices.

  • Home treatment: In this scenario, the patient's web provides a network at home. This scenario has effects on device ownership, necessary ease of use, and decreasing unsettling influences.

  • Hospital: within a medical center, there are mostly exclusive devices that are usually maintained by the medical center itself. The systems are incredibly complicated; therefore, the application users must be eligible experts.

  • Non-Hospital Premises: similar to hospitals, this scenario includes professional points-of-care but includes less number of personnel and simpler infrastructure. Doctor's offices, medical clinics, nursing homes are examples of this scenario. Primary devices are possessed and kept up by the clinic, but sometimes patients need to connect the personal tools to network.

  • Transport: This scenario includes connectivity in a helicopter or an ambulance. It is like the non-hospital deployment scenario, but with more complex infrastructure.

The following requirements should be supplied for the healthcare system:

  • Latency: this requirement is variable according to the type of data usage. For example, for ECG in real-time monitoring, based on experiments, the latency of up to 2 to 4 s is acceptable. From a technical point of view, latency is a flexible parameter [4]. More strict necessities are mandatory for Tactile Internet applications, for example, exoskeletons controlling, which enables the paralyzed patients to walk [30]. Establishing remote health applications in non-urban areas is another example with latency limitations because the network bandwidth and infrastructure are often weak in these areas [101].

  • Energy- efficiency: The energy efficiency is a major concern in fog-based healthcare systems, therefore, some in-body sensors have to gain their energy from kinetic energy or heat [68]. Additionally, during the battery replacement, sensors are disabled and some sensors may need to patient’s cooperation during the battery replacement [53].

  • Dependability: A system failure may have different consequences on the patients' lives; it varies from a minor disturbance to a significant threat. Therefore, dependability and resiliency are essential requirements to be considered [53].

  • Security: Because the patient data are almost sensitive, systems, and devices, tampering or manipulation may have severe consequences for the patients. Therefore the security level in healthcare systems should be high. The increased connected devices and remote monitoring lead to more vulnerability, and procedures should be provided to detect and counter security threats. These procedures need to be implemented in devices, systems, and organizations [53].

2.2 Fog computing

Fog computing expands storage, computational power, networking, and data management towards network edge near the IoT devices, and therefore covers the gap between cloud and IoT nodes [79, 100]. Consequentially, computation, networking, data management, and decision-making may occur in the fog instead of a cloud (the path from IoT nodes to cloud), closer to IoT devices. For example, in intelligent transportation systems (ITS), the GPS data compression can be performed at the edge before it is transmitted to the cloud [59, 78, 118].

Similar to the common cloud computing model, fog computing architecture is implemented in a multi-layer network topology. In addition, service models of different types such as infrastructure as a service (IaaS), platform as a service (PaaS), software as a service (SaaS) can be offered in fog computing. End devices such as access points and set-top-boxes could host these services. This distributed computing architecture enables applications to run in the closest point to captured data explored from things, people, or processes [39, 60, 61]. Frankly speaking, fog computing is a type of cloud computing close to the 'ground' that automatically creates the response. Fog nodes include dispersed devices with limited computational and storage resources that are placed at the network edge and provide storage and networking resources and manage distributed computation [91, 93, 94]. In this architecture, each smart thing is connected to one of the fog nodes, fog nodes could be interconnected, and each of them is connected to the cloud [58, 70, 102]. Fog computing is a suitable solution for the healthcare system because it has real-time processing and fast response. One proposed system applies fog computing to predict, detect, and prevent falls by stroke patients, which executes fall-detection algorithms dynamically in cloud resources and edge devices. A proposed fog computing-based smart-healthcare system enables low latency, mobility support, and location and privacy awareness [23].

Six characteristics individualize fog computing form other computing models. However, end-user or end devices may use some of these characteristics.

  • Contextual location awareness and low latency: Since each fog node knows its logical location in the context of the entire fog and the latency of communication with other fog nodes, fog computing architecture provides the lowest possible latency. Additionally, the fog nodes are placed close to end devices; therefore, analyzing and responding to produced data by end devices is much quicker than do the same by a centralized data center or cloud server.

  • Geographical distribution: Unlike centralized cloud architecture, fog computing supports services and applications that are geographically identifiable and deployed distributed. For example, fog computing plays a significant role in delivering high-quality routing services to vehicles along highways, using geographically distributed access points and proxies.

  • Heterogeneity: Fog computing supports multiple types of networks, communication protocols and media, and different data collecting and processing methods.

  • Interoperability and federation: To offer seamless services, different providers should cooperate, fog computing components should interoperate, and services across domains should be federated.

  • Real-time interactions: Fog computing supports applications that include real-time processing.

  • Scalability and agility of federated, fog node clusters: Fog computing supports elastic computation, data, and network load balancing, resource pooling, and it is adaptive.

2.2.1 The architecture of fog computing

A centralized hub in a traditional network can only keep up low volume data that are generated by various devices or transactions. Old data warehouse architectures have high response time and high latency that cannot satisfy the users [112]. The fog servers are geographically distributed along with the fog layer, and they perform computations close to ending devices. Each fog server can process a high volume of data at the network edge. Therefore, only a low amount of workload is transferred to the cloud for processing and storage. In consequence connecting a large number of end devices to the central cloud, which produces a large volume of data, becomes possible. The fog architecture is shown in Fig. 1.

Fig. 1
figure 1

The layered architecture of fog computing in healthcare applications

  • Device layer: This layer includes smart end devices that transmit captured data and event logs to the upper layer. This layer is placed at the bottom of the architecture.

  • Fog layer: This layer includes fog nodes that are deployed at the network edge to extend the storage and processing facilities of the cloud towards the edge. This layer is placed in the middle of the architecture.

  • Cloud layer: This layer includes powerful servers and data centers that process and analyze massive data. This layer is placed at the top of the architecture.

  • Network connectivity in fog architecture: The connections in fog systems are both wireless and wired. "Wired Connectivity" is for connecting a fog node to IoT devices or sensors. "Wireless connectivity" provides flexibility and enhances efficiency and productivity.

The fog nodes are the essential component of fog architecture and are placed at the lowest level. They are either virtual or physical components that are closely connected to smart end-devices and provide computing resources to them [44, 76]. The network connects sensors and higher levels in the hierarchy up to the cloud while providing whatever quality of service (QoS) and low latency to deliver time-sensitive data. The connectivity in the fog system could be either wired or wireless. There are different standards to connect an IoT device or sensor to a fog node. For industrial automation uses, it is crucial to guarantee data delivery; therefore, a type of networking called time-sensitive networking (TSN) or deterministic Ethernet is deployed [59]. Wireless connectivity is more flexible and improves performance and efficiency. Wireless interfaces include various mechanisms, standards, and protocols. The connectivity quality is dependent on parameters such as mobility, availability, level of flexibility, and power consumption [94].

2.3 Metrics definition

The important QoS factors that are used to evaluate fog services are as follows:

Efficiency: Since the fog is close to the end-user, it has tight integration with the user's demands that leads to improvement in the whole system performance and efficiency. Additionally, integrating storage and computational facilities between the cloud and end-user devices leads to fog efficiency [116].

Latency: Some critical services should never be shut down or be delayed. Therefore, fog computing should reduce latency by providing real-time stream processing for latency-sensitive applications—for example, complex event processing or stream mining [117].

Reliability: In the context of real-time applications, a fog computing-based system should be reliable, that means it should be able to perform its required tasks and generate correct results in defined condition and a specified time.

Energy consumption: In a fog computing environment, some energy is consumed by a resource to performe a requested service or to resend some of the requests to the cloud for further data processing. This amount of energy should be considered [72].

Scalability: A scalable system can adapt itself with higher operational demands such as an increase in the number of service requests or application of resources, and can maintain or improve the level of efficiency and performance.

Security: The main security concern in fog computing is to protect available fog/cloud data against threats by secure techniques, and is devices authentication at any gateway. To tackle this problem, an intrusion detection system (IDS) should be established at all layers of the platform [116].

Resource utilization: It refers to the maximal utilization of available resources of a system, and plays a significant role to maintain efficiency.

Accuracy: It describes any parameter near the correct value or the accepted standard. Every calculation should be performed correctly, and the result should be errorless.

Precision/Recall: Recall and precision are two significant metrics for model and algorithm evaluation. The former shows the percentage of total relevant results that the algorithm correctly categorized them; the latter shows the percentage of algorithm results which are related to specified subject.

Throughput: Throughput refers to the maximum amount of data that can be transmitted from one to another point or maximum requested service rate that can be processed in the system in a given time interval.

Response time: The time elapsed between raising a query on a system and responding to that query. Low response times may be crucial for successful computing.

Execution time: Is the time interval between the beginning of running a program and its termination by the operating system or user.

3 Related work and motivation

In this section, the authors explore the surveys related to fog/cloud computing in healthcare, highlight the lack of comprehensive reviews, and show the weaknesses and benefits of them.

Farahani, et al. [27] presented a comprehensive multi-layer architecture of IoT e-health ecosystems includes cloud, fog computing, and device to enable the system to support latency, variety, and speed of data processing. Additionally, they discussed that some challenges such as scalability, data management, interoperability, privacy, and security should be considered for complex data processing in the IoT e-health environment. There should be networks with scalable infrastructures, higher bandwidths, and lower latencies, and data interoperability between various devices, and simpler interfaces for everybody. However, new papers have not been discussed, and the papers selection process is not transparent.

Kumar, et al. [54] showed that Nano-composites play an essential role in healthcare, such as food processing, biomedical, and Nano-carrier applications. Because polymer Nano-composites help in disease recognition and treatment, they discussed the Nano-composite different processing techniques. However, the paper selection process is not transparent and the year of the selected papers is not mentioned.

Thurston and de Leon [106] investigated industry sources, including web sites, white papers, podcasts, and they structured and categorized all the obtained information to provide a holistic view of current issues, standards, and technologies of fog computing relevant to healthcare systems. Additionally, a wide range of functionality of healthcare systems from health monitoring to special care was introduced to defensive purposes. Darwish, et al. [21] surveyed the role of cloud computing and IoT within healthcare systems. They showed that the IoT and cloud computing could complete healthcare systems, which is the main driver to integrate all of them into a unique environment for healthcare systems, called Cloud IoT-Health. This environment can be employed in different healthcare scenarios such as medicine control, remote medical services, and smart hospitals. Additionally, analysis and review of open source projects in healthcare systems are provided. Although, this survey is not fog related and the papers selection process is not clear.

Mahmoud, et al. [62] reviewed the cloud of things (CoT) architecture, platforms, and the application of CoT in the context of healthcare. Reviewing these papers proved that the majority of them did not consider energy efficiency in CoT scenarios. Therefore, it requires further efforts to enhance energy efficiency in CoT architectures, especially in healthcare, in which delay, QoS, and energy efficiency should be balanced simultaneously. However, this work is not related to the fog computing, new papers have not been discussed, the papers selection process is not transparent and a few of the papers have been investigated.

Furthermore, other surveys and literature reviews are investigated, such as [19], studied the researches focused on cybersecurity concern to establish a holistic security model for electronic health records. Authors in [90] tried to present and analyze the latest researches advancements in the field of assisted environment and medical care. They reviewed the articles, focusing on online monitoring, detection, and support of the diagnosis of cardiovascular diseases. Authors in [86] reviewed cardiovascular health studies based on IoT, and find out numerous challenges that should be solved to transform heart health care technologies by IoT innovation. In [92], data management techniques in the healthcare system based on IoT with cloud facilities are also systematically analyzed.

Sajid and Abbas [89] reviewed the papers focused on data privacy concerns while considering constraints in healthcare systems. By a detailed exploration, a clear picture of used data privacy aware mechanisms is presented and concluded that a balanced solution for preserve data privacy of patients is required. However, this study is not related to the fog. Kraemer, et al. [53] focused on employing fog computing in healthcare informatics and categorized applications into use case classes. They listed application-specific tasks that could be a candidate for fog computing. Additionally, some of the challenges and issues in the healthcare system are presented, and an overview of medical actuators and sensors is provided. Finally, the assignment of fog computing tasks and types of devices and networks usually used in healthcare systems are discussed. Through this review, it is concluded that a large number of computing tasks, across different application use cases and deployment scenarios, that could be gained from fog computing. However, this study did not compare the papers entirely and did not depict open issues and future work.

provided challenges and recent researches relevant to fog in the healthcare area. They showed the types of developed applications, addressed the categories of diseases, discussed the characteristics of fog deployed in healthcare systems, and highlighted some points that should be considered to improve the use of fog in the healthcare. However, the reviewed papers were not categorized, and open issues and future works were not discussed. Authors in [104] studied to configure the security for IoT-based smart home in the field of real-time health monitoring technologies. Most existing studies are efficient in monitoring the patient and provide the data to the monitoring center. The followings are some of the weakness of previous review papers:

  • Most of the papers do not have a systematic structure; therefore, their decision method is ambiguous.

  • Some papers are not relevant to fog computing.

  • Some papers do not classify reasonably the studied methods.

  • The selected papers in current studies were up to 2018, but this work surveys the papers published recently.

In order to show that a similar SLR has not already been presented, the authors searched Google Scholar (on March 2020). The related reviewed studies, SLRs, and survey papers on the fog/cloud-based healthcare systems are summarized in Table 1 (on March 2020). In terms of focused subject, the works [22, 27, 53, 106] reviewed fog-based healthcare systems. The studies [27, 106] are non-systematic reviews, and the papers selection process is not transparent. The other works, [22, 53], are systematic reviews but the recent papers, evaluation metrics, tools, and evaluation methods are not considered. However, the fog computing concept has been emerged in 2012 [14], whereas the authors in [53] claimed that they reviewed papers from 2005 to 2016. The above reasons motivated us to provide an SLR paper and cover these deficiencies.

Table 1 Some related studies in fog/cloud computing in healthcare

4 Research methodology

Unlike to normal review process, an SLR applies a precise and strict sequence of research steps to review literature [28, 84]. Generally, SLRs use well-defined procedures for identifying, analyzing, and synthesizing the results of papers relevant to a specific subject, and answering to the pre-specified research questions related to the subject [10, 15, 38, 48]. Reviewing the published papers finds out the current gap on the subject and helps the researchers to propose their new ideas. Therefore, in this work, the SLR process is used as an accurate method to classify fog-based healthcare systems.

4.1 Question formalization

Defining the research questions is the most critical step of an SLR. The search string for automatic searching is constructed based on these questions, and they specify the data that will be extracted from each original paper and limit the aggregation process. The research questions of the current study are as follows:

  • RQ1: What classification of research could be used in fog-based healthcare?

  • RQ2: What are the popular simulation tools used for fog-based healthcare?

  • RQ3: Which are the evaluation metrics used in fog-based healthcare?

  • RQ4: Which are the measurement environments used to evaluate fog-based healthcare?

  • RQ5: What are the future trends, open issues, and challenges in fog-based healthcare?

4.2 Paper selection process

The papers for a systematic literature review were selected through two stages choosing process, as follows:

Initial selection: Automated search based on keywords, titles, and abstracts. This step of the research process was exploring through Google Scholar as the main search engine based on well-known academic databases such as ACM, ScienceDirect, Springer, IEEE, SAGE, Taylor, Wiley, and Emerald, based on keywords, titles, and abstracts. The search strings were defined as follows:

fog [AND]

(healthcare < OR > eHealth < OR > health < OR > “Heart Rate” OR “Smart Hospital”)

Final selection: Selection based on the inclusion/exclusion criteria and full text of the paper. The extracted 132 papers from the previous step were explored, and the inclusion/exclusion criteria (as shown in Table 2) were applied, then papers were investigated in full text, and quality assessment was applied, and only papers mentioning the evaluation details and their methods explicitly were selected. As a result, 34 relevant papers were chosen at the final selection to be assessed qualitatively.

Table 2 Inclusion/Exclusion criteria

Figure 2 shows the distribution of published papers based on the publisher. The distribution of research papers over time-based on some scientific publishers such as IEEE, ScienceDirect, Springer, ACM, and Taylor & Francis, and the number of papers are shown in Fig. 3. After that, the authors categorized the 34 selected papers into three categories: resource/service-based, application-based, and communication-based as shown in Table 3. For each category, the papers were sorted based on publisher, year, title, author, and journal name.

Fig. 2
figure 2

Distribution of published paper based on publication

Fig. 3
figure 3

Distribution of papers over the years based on the publication

Table 3 Details of selected papers

5 Classification and review of the selected approaches

In this section, 34 selected papers based on exclusion/ inclusion criteria are discussed. Additionally, the basic properties of each technique, as well as their differences, advantages, and disadvantages, are described and discussed. Although the literature on fog computing in healthcare systems is very diverse and organizing the relevant studies systematically is not a simple task. Considering the studies and reviews on relevant researches issues, achieving the performed classification was normal. Based on the performed review on selected papers, the authors observed that some of them focused on providing resource/service-based approaches, some of them focused on presenting application-based approaches, and the rest of them focused on proposing communication-based approaches. Therefore, the proposed approaches are divided into 3 distinct categories: resource/service-based, application-based, and communication-based, while other categorizations could also be possible. All three classes include a review part and a summary part individually. However, Fig. 4 displays the three categories of a classification of fog computing in the healthcare system. In Sects. 5.1, 5.2 and 5.3, these classifications have been discussed, and their differences, advantages, disadvantages, and evaluation metrics are described.

Fig. 4
figure 4

The classification of fog computing in the healthcare system

5.1 Resource/service-based approaches

Resource management improves healthcare system resource efficiency. When a patient's need for smart appliances is growing, and fog computing is leveraged to reduce cloud processing and to store the data close to the user devices, resource management has significant importance. Therefore, the integration of fog and cloud makes effective resource distribution in healthcare systems. It should be decided to perform every process or data storing in fog or cloud, at a low time with low latency. On the other hand, service-based approaches illustrate several types of services such as QoS, energy management, remote control, resilience, security/privacy, and health monitoring. Security services try to counter with network attacks and vulnerabilities and protect sensitive data against attacks. Healthcare monitoring services aim to transfer time-sensitive data in a real-time manner with low latency. The 17 selected resource/service-based mechanisms are presented and discussed in Sect. 5.1.1. Moreover, their differences, advantages, and disadvantages are summarized in Sect. 5.1.2.

5.1.1 Overview of the selected resource/service-based approaches

Elmisery, et al. [25] designed a secretive two-phase process, which supports privacy preserve to patients over their vital data. This process includes a comprehensive privacy middleware that uses intermediate fog nodes at the user side between cloud and IoT devices to enforce user's privacy rules. The fog nodes host the privacy middleware, and the health data of the user may be stored on her/his device or released in a secret form. However, security and complexity issues are not considered.

Cerina, et al. [17] presented an architecture based on May model and growing the use of configurable nodes, using FPGA technology. The proposed architecture has minimal latency, has high security and reliability, and uses lower bandwidth. However, the proposed system needs a particular smartphone, which could be replaced with wearable devices. Additionally, new algorithms are needed that employ variability of heart rate to detect crucial situations embedded on the FPGA node.

Al Hamid, et al. [5] used a fog computing facility to provide security for private healthcare data. They designed a tri-party one round authenticated key agreement protocol using bilinear pairing cryptography that generates a session key for communication participants and communicates securely.

Wang, et al. [113] proposed a framework for fog-based Healthcare IoT systems included a reliable transmission mechanism, which is managed by a self-adaptive filter, which can recollect inaccurate automatically or lost data. Additionally, an RVNS queue was proposed to process filtered data that enables the processor to access the recent received data quickly and improves the speed of processing. They showed that the proposed scheme improved network reliability, and provides a faster processing speed.

Mahmud, et al. [65] analyzed the literature about cloud-based IoT-Healthcare solutions in terms of application mode and system architecture. In conclusion, they presented an IoT-healthcare approach structure based on fog computing and explored how to integrate healthcare solutions into fog-cloud services to extend the cloud-based structure. The authors aimed to design an architecture to build end-to-end solutions comprising sensors, distribute services, applications, and other issues such as machine learning, data analysis, recommendation systems, and context inference.

Sood and Mahajan [99] proposed a healthcare system based on IoT-fog that continuously monitors and analyzes the blood pressure and alerts it to the system consumers via their cell phones. They used an artificial neural network (ANN) to analyze blood pressure statistics because it has precision, recall, and sensitivity. The designed system collects the user's health parameters through IoT sensors, and then identifies the blood pressure level based on it. Simulations showed that the proposed solution reduces response time, has bandwidth efficiency and high accuracy. However, some challenges, such as the privacy and security of information, were remained.

Tao, et al. [105] studied the security and privacy issues in healthcare systems during data capture and transmission. Based on it, a secure data collection design for IoT based healthcare system is presented. Simulations proved that secure data leads to efficiency in terms of energy consumption, cost of computation, and frequency against the attacks.

Zhang, et al. [119] presented an optimized policy for constrained resource allocation in data centers or network tools, using meta-heuristics. They discussed that many emergency accidents, some transmission bottlenecks, could not be rescued instantly, such as severe blood loss, acute respiratory disease, cerebral embolism, acute heart disease. Therefore, they proposed an SA based offloading algorithm (SAOA) and an emergency-based measures algorithm (EMA) to tackle the problem.

Gupta, et al. [35] presented a multi-layer fog-cloud based architecture that decreases the energy consumption, latency, and communication delay in comparison to cloud-only. The layers of the architecture are cloud layer, fog layer, and hardware layer. When a query is made at the hardware layer, the fog layer analyzes and processes the query. In addition, using fog-cloud architecture in the healthcare system could reduce the death rate.

Mahmoud, et al. [63] proposed the most outstanding design of a controlled and active bed system for patients. They presented a task (functional module) assignment strategy to fog devices considering energy consumption and remaining CPU capacity; therefore, the strategy is energy saving. The strategy works incorporate with the edge-ward placement strategy to ensure that delay-sensitive tasks are assigned to fog devices as much as possible; however, the issue of patient mobility has not been mentioned.

Wazid, et al. [115] proposed secure user authentication and key agreement protocol for the fog computing environment. This protocol is called SAKA-FC, and comparing to other schemes provides a high level of security and has low overhead in terms of computation, communication, and storage.

He, et al. [40] designed hierarchical fog-cloud architecture. They described personalized services as intricate event pattern and optimized them by omitting the duplication of personalized services through designing clustering and partitioning algorithms. Thereby, the workload of parallel processing in the cloud has been balanced. This approach is obtained by focusing on the optimization of the complex correlation among the personalized services by the intricate event pattern.

Ullah, et al. [109], based on the sensitive nature of data, presented a secure propagation design for replicated data in a Smart healthcare IoT environment that chunks the data at the data source and transmits it from smart healthcare device to the fog server to be processed or stored. This scheme employs the fog server at the network edge, which decreases the delay of transmitting data from sensors to central cloud storage. They simulated the scheme using NS-2.35 for smart devices.

Saha, et al. [87] proposed an e-healthcare framework to preserve the privacy of patients that deals with electronic medical records (EMRs). This multi-layer framework comprises different end-user devices such as mobile devices, monitoring systems, and laptops; the fog layer included data aggregators, fog accumulators, access points, routers, and servers, and cloud servers. Experiments with the proposed work showed that it has low delay and response time. In addition, the signature exchange was done once, which decreases scheduling limits to some extent.

Wang, et al. [114] designed a novel energy-efficient and trustworthy protocol based on mobile fog computing. They used the fog node with efficient energy management protocol to collect the trustworthy data in the IoT system considering energy consumption and delay. While planning the path for the mobile fog node is performed, the trust value and distance of the next node is simultaneously considered to achieve minimum energy consumption and maximum local trust. Theoretical analysis and experimental results validate that their proposed architecture and method outperform traditional data collection methods in both energy consumption and delay.

Farahani, et al. [26] used the collaborative machine-learning concept and proposed an architecture distributing intelligence across the cloud layer, edge/fog layer, and the device layer. This architecture enables physicians to monitor the health parameters of patients continually at any time, anywhere, in a real-time manner and enhances decision-making power. To show the power of proposed architecture, they applied it on an online ECG, as a case study. Results showed that this approach makes a tradeoff between communication latency, accuracy, energy consumption, and processing time.

Jia, et al. [45] proposed a security model, proved its soundness using formal verification method, and analyzed its security against frequent attacks. Besides, they focused on key agreement and authentication issues. They evaluated the performance of proposed approach in terms of computation and communication costs. However, the efficiency improvement was not considered.

5.1.2 Summary of resource/service-based approaches

A categorization and explanation of the resource/service-based fog computing approach in healthcare systems and their active factors are presented in Table 4. A side-by-side evaluation for these studies using evaluation factors in fog is shown in Table 5. The applied evaluation factors are latency, reliability, energy, scalability, resource management, and security.

Table 4 Categorization of recent studies and other information in resource/service-based
Table 5 Comparison of the existing factors in the resource/service-based approaches
Table 6 Categorization of recent studies and other information in application-based
Table 7 Comparison of the existing correctness factors in the application-based approaches

5.2 Application-based approaches

Application-based approaches try to deliver the healthcare system services efficiently, increases patient safety, provides the accessibility of healthcare services, and, more critical, decrease the costs of the medical expenditure. The role of application management is creating an application, provisioning the requested services, deploying application data, and starting the application. The eight application-based approaches are presented and discussed in Sect. 5.2.1. In addition, their advantages, differences, and disadvantages are summarized in Sect. 5.2.2.

5.2.1 Overview of the selected application-based approaches

Singh, et al. [96] Utilized cloud computing, fog computing, and IoT, and proposed a framework based on fog architecture to detect and monitor dengue virus. This latency-aware system classifies users into multiple classes according to their respective symptoms through the Internet of Things (IoT). The results of experiments showed that the fog-based approach provides better execution and response time for classification with zero effect on the accuracy of the system.

Sood and Mahajan [98] Employed decision tree, temporal network analysis (TNA), and wearable sensor technology, and proposed a healthcare system to detect and prevent the prevalence of the Chikungunya virus. This system is fog assisted and cloud-based. Results of experiments in terms of evaluation of TNA graph-based risk assessment, data capturing and integration, and efficiency of the J48 decision tree proved that this system could deliver healthcare services effectively and has better performance.

Vijayakumar, et al. [110] designed an intelligent system to detect and prevent the mosquito-borne diseases early. It is showed that this system could be used to detect and distinguish specific mosquito-borne diseases, and it generates the alert to notify in emergencies for real-time applications to prevent the prevalence. The main goal was to specify the density and mosquito reproduction areas useful for out-breaking the disease. However, the system classification accuracy should be improved by upgrading major risk factors and additional symptoms. Additionally, due to the insecure channel, data integrity and privacy should be considered.

Akrivopoulos, et al. [3] proposed principles for designing applications to tackle the problems related to IoT framework at the network edge. Additionally, they presented the evaluation of a working prototype that collected ECG traces from a tailor-made device and used the patient's smartphone as a fog gateway for securely sharing them with other authorized entities.

Devarajan, et al. [24] presented an energy-efficient healthcare system assisted by fog computing and extending cloud services towards the network edge that maintains the glucose level of blood and instantly generates an emergency alert for preventive actions. Experimental results showed that the proposed system improves prediction accuracy, latency, computational complexity, and energy efficiency.

Dar, et al. [20] leveraged the benefits of complex abilities of smartphones and fog computing and proposed a delay-aware and cost-efficient accident detection and response system, called emergency response and disaster management system (ERDMS). To this end, An Android application was generated that uses sensors of smartphones to detect an accident. When an accident has occurred, it is detected, and a plan to counter it is suggested. For example, a nearby hospital is identified, the emergency department of the hospital is notified, and an ambulance is directed to the accident location. In addition, the victim's family is informed about the incident. All the necessary computation was executed on the nearby available fog nodes.

Gill, et al. [33] presented an information model assisted by fog computing that offers a healthcare system as a cloud service. The proposed model manages the heart patient's data, which came from various IoT devices. The performance evaluation for this model using the iFogSim tool showed that the proposed model is better than the cloud in terms of energy consumption and latency. However, low generalizability and low security are still problematic in the model.

Tuli, et al. [107] Used deep learning and IoT called Health-Fog and proposed a smart healthcare system to diagnose heart diseases based on fog computing automatically. Experiments showed that the system has an excellent performance in terms of latency, network bandwidth, training accuracy, energy consumption, jitter, execution time, and testing accuracy. However, based on different QoS and cloud-fog cost models, the system is not cost-optimal.

5.2.2 Summary of application-based approaches

A categorization and explanation of application-based fog computing approach in healthcare systems and their effective factors are presented in Table 6. A side-by-side evaluation for these studies using evaluation factors is shown in Table 7. The evaluation factors include latency, reliability, energy, scalability, resource management, security, accuracy, execution time, response time, availability.

5.3 Communication-based approaches

Communication management focuses on different methods to connect IoT devices, fog, and cloud in fog-based healthcare systems. In the discussed architecture, the fog nodes are intermediate participants that connect the cloud to IoT devices. The connection channel could be wired or wireless. The common wireless communication technologies supporting fog applications include 3G, 4G, Bluetooth, ZigBee, and WiFi. One of the most important factors in healthcare systems is communication. Communication is necessary to link the patients to a healthcare provider, to transmit their data, and to receive instructions about pharmacologic and non-pharmacologic care. The nine communication-based approaches are presented and discussed in Sect. 5.3.1. Additionally, their advantages, differences, and disadvantages are summarized in Sect. 5.3.2.

5.3.1 Overview of the selected communication-based approaches

Gia, et al. [32] employed the concept of fog computing at smart gateways, proposed advanced solutions such as notification service, distributed storage, and embedded data mining, thereby, enhanced health monitoring system. If the smart gateway did not receive any data from the particular sensor during an interval, the internal temperature of an embedded gateway exceeds than specific a threshold, or heart rate was not in the range of regular heart rate, then the gateway transmits some real-time requests to the remote cloud that notifies the end-user device. This approach avoids some unanticipated conditions related to the patient's reactions within the disease treatment process. Experiments showed that the use of fog computing achieves more than 90% bandwidth efficiency and provides real-time response at the network edge with low-latency.

Rahmani, et al. [85] using fog computing concept in healthcare IoT systems and the importance of gateways at the network edge, designed a geo-distributed mediator layer of intelligence between cloud and sensor nodes. They proposed a smart e-health gateway called UT-GATE, to provide different higher-level services such as embedded data mining, local storage, and real-time local data processing, by the gateway. Additionally, they implemented an early warning score (EWS) health monitoring to practically show the efficiency and relevance of the proposed system on considering a medical case study.

Kumari, et al. [55] analyzed the role of IoT, fog computing, and cloud computing to offer ubiquitous context-aware services to the end-users. They presented a multi-layer patient-driven healthcare architecture to real-time collect, transmit, and process the data. In some situations, it is not possible to store the real data in a hospital. Cloud computing could manage this situation; however, in real-time cases, just a little delay could lead to severe life-threatening, which is inevitable in the cloud computing paradigm. Therefore, to tackle this problem, the emerging fog computing paradigm is introduced, which is located between cloud and IoT devices.

Giri, et al. [34] proposed a security protocol based on fog computing to transmit data from healthcare sensors to local fog servers in the e-medical system. This protocol called SecHealth, and includes four phases: (a) setup phase, (b) registration phase, (c) authentication phase, and (d) data delivery phase. Security analysis showed that it could overcome all the possible known attacks.

Talaat, et al. [103], using caching algorithms and real-time scheduling, proposed an effective load balancing strategy for a fog computing environment, which is applicable for healthcare applications. The main novelty of this work is studying the particular nonfunctional and functional needs of fog computing architecture to achieve load balancing in healthcare applications.

Ullah, et al. [108] established a peer-to-peer communication between wearables and healthcare sensing devices that efficiently share secret data with an aggregating node that could share data with fog server. The data could be extracted by the fog servers and be stored in local storage. However, the cloud is updated later in cloud storage. To this end, two algorithms for message extraction at fog server and message receiving at aggregator were designed. However, the proposed approach has weak security and privacy.

Kharel, et al. [50] proposed architecture to provide remote smart health monitoring services in the absence of the Internet. This architecture is also useful for the people living in places where no health services are available. In addition, it could minimize the load on the cloud, and it helps in stepping forward to create an energy-efficient health monitoring system.

Asif-Ur-Rahman, et al. [9] proposed a heterogeneous Internet of healthcare things (IoHT) based on cloud, a multi-layer communication framework comprising five layers, namely, perception, mist, fog, cloud, and application provided by fog and mist computing. The resources available at the mist layer are used to process the raw data produced by the IoHT nodes. This framework delegates and delivers processes to layers with lightweight loads, and guarantees optimal resource usage, performs load balancing and ensures lowest transmission delay; guarantees the most desirable data-sensitive resource allocation. However, security issues are not considered.

Al-khafajiy, et al. [8] proposed a framework that provides fog2fog communication, which leads to optimal job allocation, optimal resource management, and achieving the highest QoS and a sustainable network paradigm for healthcare applications. In addition, an architecture was proposed comprising three layers called things, fog nodes, and cloud data center. This framework and architecture are incorporated together. However, it seems to be problems with architecture scalability.

5.3.2 Summary of communication-based approaches

A categorization and explanation of the communication-based fog computing approach in healthcare systems and their effective factors are presented in Table 8. A side-by-side evaluation for these studies using evaluation factors in fog is shown in Table 9. The evaluation factors include scalability, latency, reliability, energy, resource management, security.

Table 8 Categorization of recent studies and other information in communication-based
Table 9 Comparison of the existing correctness factors in the communication-based approaches
Table 10 Main advantages and disadvantages of distinct categories

6 Discussion

The selected fog-based healthcare techniques were reviewed in the previous sections. This section provides a statistical analysis of the declared approaches.

  • RQ1: What classification of research could be used in fog-based healthcare?

A comparison of proposed fog-based healthcare approaches up to now based on the declared classification in Sect. 5 is presented in Fig. 5. The proposed approaches are categorized into three classes: communication-based, application-based, and resource/service-based. The resource/service-based approaches have 50% of total studies, which is the highest percentage. On the other hand, communication-based approaches have 26%, and application-based approaches have 24% of total studies. All the 34 selected papers of three distinct categories are analyzed and based on Tables 4, 6 and 8 the advantages and constraints of each category are presented and compared in Table 10.

Fig. 5
figure 5

Percentage of the presented fog computing approaches in healthcare systems

Fig. 6
figure 6

Percentage of the presented popular tools and simulation environments in the literature

Fig. 7
figure 7

Percentage of metrics in the reviewed techniques of fog-based healthcare

Fig. 8
figure 8

Percentage of evaluation metrics in categorized papers

  • RQ2: What are the popular simulation tools used for fog-based healthcare?

    The statistical percentage of simulation and modeling tools used in the literature is shown in Fig. 6. The iFogSim platform has the highest percentage of usage, with 17%. The NS-2.35 toolkit for modeling and simulation has 9% of usage. Additionally, other tools such as the JAVA platform, MATLAB, and mathematical tools have been used with a lower percentage.

  • RQ3: Which are the evaluation metrics used in fog-based healthcare?

    The importance percentages of the evaluation metrics are shown in Fig. 7 Using (1), to obtain the importance percentage of metric i (Imp_percentage(i)), the number of occurrences of metric i (ocurr_no(i)) should be divided by the sum of occurrences of all metrics and multiplying this value by 100 [46]. The latency has most usage in the evaluation of the composition approaches by 17%, and energy has 16%, security has 13%, resource utilization has 11%, and the scalability has 9.00%, reliability has 6%, accuracy has 4%, throughput has 3%, and other metrics have 21%.

    According to Tables 5, 7 and 9 based on essential metrics of fog-based healthcare, 18% of resource/service-based techniques have tried to improve the latency. In the application-based category, 16% of the papers have tried to improve security, latency, and scalability. In the communication-based category, 20% of the papers have tried to improve energy. The results are shown in Fig. 8.

    $$\mathrm{Imp}\_\mathrm{percentage}(i)= \frac{Occurr\_no(i)}{{\sum }_{j=1}^{param\_no}Occurr\_no(j)}*100$$
    (1)
  • RQ4: Which are the measurement environments used to evaluate fog-based healthcare?

According to Fig. 9, the most significant percentage comprising 50% of studies used a simulation environment to evaluate the proposed approach. Additionally, 25% of the studies used data sets to evaluate the presented approach in fog-based healthcare. In addition, the authors observed that 16% of the case studies proved their experiments using the designing method. Finally, 6% of the research studies have a prototype evaluation method. However, as indicated in Tables 4, 6 and 8 in the service / resource-based approach, the types of evaluation are simulation, design, and real testbed, which the most common type is a simulation. Moreover, the communication-based and application-based papers used more realistic test approach.

Fig. 9
figure 9

Percentage of the applied measurement environments in the literature

7 Open issues and future directions

While employing the fog computing technologies in healthcare systems brings us a huge potential advantage, it is still broadly agreed that fog computing is in elementary stages and may have several problems. This review showed that some important topics related to the use of fog technologies in healthcare systems were studied less. Therefore, some open issues and research directions are presented in this section. In this section, to answer RQ5, the authors observe the main challenges and future directions are shown in Fig. 10.

Fig. 10
figure 10

The open issues and challenges of some papers in the fog-based healthcare

  • RQ5: What are the future trends, open issues, and challenges in fog-based healthcare?

  • Big data analytics: Due to recent advancement of technologies, big data has a significant role to provide healthcare services. Big data of healthcare includes the data generated by different unstructured, semi-structured, and structured sources [12, 41]. They are comprised of complex and large sets of electronic medical data, therefore managing and storing them in data repositories is difficult [5, 11, 18]. Therefore, fog computing is a suitable approach to analyze big data in a real-time manner [42], which can be a challenging issue.

  • Interoperability of products and services: One of the crucial success factors in fog computing environments is interoperability. Due to the broad interoperability of operating systems, services, platforms, and devices, it becomes a big challenge in healthcare systems based on fog computing. Some researches, such as [64], discussed this issue. However, due to heterogeneous and non-standard implementation of IoT and fog interfaces, interoperability is still a big problem.

  • Security: E-medical systems include sensitive and private data of the patients, and usually, insecure channels such as the Internet are used to transmit the data. An adversary may mount different attacks to access or manipulate these sensitive and private data [78, 80]. Therefore, security is a significant concern, and a security mechanism should be established to protect the system against security vulnerabilities. It is still in the elementary phase and is challenging.

  • Latency management: Some of the remote healthcare applications need real-time data transfer, and the delay and latency are harmful. The main goal of latency management in fog computing is to force the system to produce a final service response within an acceptable time interval. This time interval is the maximum latency, which is tolerable for application QoS requirement, or a service request. It is still a challenging task to reduce latency and delay in fog computing environments.

  • Scalability: The smart healthcare approaches based on fog computing should be implemented on large-scale networks, but most of the reviewed papers did not consider it. Ensuring scalability in terms of events management and flexible subscription is still agreed to be a challenging issue. However, most of the reviewed studies done their evaluation on small scale systems.

  • Network communication: In fog computing architecture, fog nodes are intermediate networking components, which connect devices, cloud servers, and end-users. In this heterogeneous network environment, many healthcare applications need to continuous data transmission, whereas bandwidth consumption increases significantly [13, 21]. A software-defined network (SDN) could efficiently manage heterogeneous fog networks [51]. It can solve some issues, such as QoS, high packet loss rate, collisions, irregular connectivity, and scalability through programmability and flexibility. Due to fog network resources limitations, supporting SDN in fog systems makes management of fog network more adaptable [73, 81]. Combining network function virtualization (NFV) and fog computing, leads to flexibility and speed in the establishment, deployment, and management of new applicant-based approaches. Using SDN/NFV technologies to support QoS requirements in fog computing is interesting for research.

  • Assessment environment: It is observed that researchers have mainly used simulator-based tools to evaluate the studies. Since resource allocation and task scheduling may have different results in real environments, the healthcare approaches based on fog computing need to be run in the real environment. Therefore, implementing the discussed approaches in real-world experimentation is very interesting in research directions.

8 Conclusion and limitation

A systematic review of fog-based healthcare systems and an analysis of its applications and challenges were presented in this study. In addition, classification and discussion of different application use cases were provided. The authors selected 34 articles published between 2015 and March 2020, in the field of fog computing approaches in healthcare systems, and categorized them into three main classes: communication, application, and resource/service. Based on our classification, the resource/service-based category was on the top of the others with 52% frequency, application-based by 26%, and communication-based by 24%. The most used tool and platforms were iFogSim by 17%. In addition, the comparison of evaluation methods showed that 52% of the studies applied to a simulation environment. In addition, most of the reviewed papers attempted to improve latency by 17% and then, energy and security by 16% and, respectively, 13%. Finally, the authors proposed some challenges and open issues that are worth of further in-depth study and research in fog-based healthcare.

The authors have tried to provide a rigorous systematic review, but it has some limitations that should be taken into consideration. In this research, only ESCI-indexed journals and conferences were considered for their best qualifications. Therefore, books, book chapters, non-English scripts, commentaries and review articles, and short articles were excluded. Furthermore, the articles were classified into three categories: resource/service, application, and communication, however, they could be classified otherwise. Moreover, in this systematic review, five research questions were considered, but some other research questions could be proposed.