Keywords

1 Introduction

IoT concept promises to integrate appliances and “things” into the Internet environment, including medical equipment, refrigerators, cameras, and sensors. This paradigm is a new type of interaction between objects and people that allows smart cities, infrastructure, and services to be built to improve quality of life and resource use. Improve by opening the door [1]. M-to-M communication, which allows “anything” to connect to the Internet, is not only realism, but actually, it is necessary for our daily life and interaction. We can move disruptive applications like air quality, transportation, smart parking, elder care, living ecosystems, smart grids, smart farming, and medical systems with the help of IoT, and rely on the consistent quality of service (QoS) [2]. We need enough networks and better computing methods to provide low latency and rapid response times for applications if we want to get the most out of IoT.

Cloud-based IoT systems, on the other hand, are far from end-users and face several issues, including faster reaction times, heavy cloud server loads, and a lack of universal mobility. The high bandwidth cost of connection and the high redundancy of data make sending a very large quantity of data sensed by IoT devices to the cloud inefficient in the period of big data. As a substitute for transferring data to the cloud, it might be more cost-effective to put apps and hand them out faster to IoT data. Fog computing is a notion that is well suited to dealing with these kinds of issues [3]. Fog is a new thought that purpose to get the cloud closer to the end-user while also enhancing service quality [4]. Fog is a smart layer that sits in the middle of the cloud and the IoT, allowing for reduced latency, location alertness, and a geographic spread of IoT devices. While at the network’s boundary, Fog computing inherits cloud main features and provides end-users with processing, storage, and network services [5].

The paper is planned as follows: A formal discussion of the Internet of Things, applications, and technology is discussed in Sect. 2. Discuss Cloud computing, their challenges with IoT, and comparisons in Sect. 3. Discuss Fog computing and its architecture and its role in IoT in Sect. 4. Last Sect. 5 discusses the conclusion.

2 Internet of Things

The Internet of Things (IoT) is a term that describes the number of hardware objects which are constantly connected to the Web and acquiring and transmission of data all over the world. The IoT is a collection of computers and other network devices, mechanical and digital machinery, products, creatures, and humans, all of which have a unique identifier (UID) and are not interconnected to one another. It is able of sending data through a network. Human or human-computer interaction is required. The Internet of Things is becoming an increasing area of life and might be seen all around us. Ultimately, the IoT is a game-changer that links together a diverse set of expert machines, frameworks, smart devices, and sensors [6]. The IoT has an interdisciplinary vision to extend its utility to a variety of fields, including the environment, industry, public/private sector, medicine, and transportation as presented in Fig. 1. As a result, the Internet of Things’ primary purpose is to enable objects to connect to other objects and individuals via networks, pathways, or services at any time and from any location. Smart homes, phones, transportation, industrial systems, cameras, smart toys, buildings, smart home appliances, industrial systems, and a plethora of other objects may now communicate through the Internet [7]. An easy explanation of IoT is “IoT or Internet of Things is a network of associated devices that interrelate and exchange information with each other. The technology allows the link of two or more devices that connect and transfer and get information through the internet”.

2.1 IoT Applications

IoT applications appear to be promising in the next years as shown in Fig. 2. To create integrated smart solutions, this technology will most likely be combined with additional technical trends such as AI and programmed things. Technology integration will cause upheaval in several industries, resulting in new opportunities. IoT-based solutions offer efficient monitoring and management of linked devices as well as the automation of daily operations. As a result, task performance is more efficient and convenient.

Fig. 1.
figure 1

IoT devices

Fig. 2.
figure 2

IoT applications

The Internet of Things’ potential applications is not only many, but also diversified, as they touch practically every element of people’s, institutions’, and society’s daily lives. Manufacturing and industry, healthcare, agriculture, smart cities, security, and emergencies are all examples of IoT areas. The number of devices and features that the IoT can do is predicted to continue to grow. The ambiguity of the representation of “thing” indicates this. The IoT aids in the development of smart nations and smart cities. The Internet of Things (IoT) aids cities in terms of management by combining it with vital infrastructural facilities, such as mobility and medical. It also helps in different areas such as water management, trash, and emergency management. In comparison to the conventional approach, which was impeded by information delay, which can be critical in real emergencies, its real-time and exact data allows for faster responses. Traditional technologies and resources are used in current court systems. Outside of basic legal responsibilities, they rarely use current analytics or automation. Superior analytics, better evidence, and improved processes are brought to judicial systems by the Internet of Things, which speeds up processes, eliminates unnecessary procedures, manages corruption, lowers costs, and improves satisfaction. The optimization and data analysis of IoT assist consumers both personally and professionally. The Internet of Things functions as a team of personal assistants, counselors, and security. It improves our quality of life, work, and pleasure. Current manufacturing technology makes use of standard technologies as well as modern distribution and analytics.

2.2 Technology

The creation of a computing system in which electronic artifacts can be distinctively acknowledged and can think and act in concert with other objects to accumulate data on which programmed events are based necessitates and use of clustering of better and more effective innovations, which can only be accomplished through the combination of various techniques that enable artifacts to be distinctively recognized and converse with one another [8].

The main goal of the IoT is to connect things and substances all over the world through the internet, wireless sensor networks (WSNs), and smartphones so that they can share information automatically, much as people do. Numerous strategies can be employed to accomplish this purpose. Radio Frequency Identification (RFID) identifies mobile phones, sensors, actuators, and embedded devices, and nanotechnology allows them to communicate with one another [9]. Sensors, scanning and monitoring systems, supply chain management; smart grids, smart air quality monitoring, smart farming, and data analytics are all instances of IoT in action. The IoT’s basic concept is to agree to the independent exchange of valuable information among imperceptibly embedded different exclusively certain real-world devices in our vicinity, fueled by advanced technologies like RFID and Wireless Technologies, which are detected by sensing devices and then processed for the result, based on which an automatic achievement is carried out [10].

3 Internet of Things

The cloud-to-IoT integration, known as CoT, has numerous advantages. It can, for example, assist in the management of IoT resources and the provision of cost- effective andwell-organized IoT services. It enables fast, minimal deployment and adaptability for complicated data processing and implementation, in addition to improving IoT data and processing flow. The CoT concept is complex; it brings the latest challenges to the IoT system that a conventional centralized cloud computing system cannot address, like latency, capability limitations, limited resource devices, network breakdown heavily congested, and greater security [11]. Furthermore, for IoT applications with time-sensitive operations or insufficient Internet connection, the centralized solution is ineffective. Milliseconds can be critical in a variety of situations, including telemedicine and medical care. A similar situation occurs in vehicle-to-vehicle communications, in which it is impossible to prevent mishaps or accidents. Delays are caused by the centralized cloud strategy [12]. To overcome these difficulties, a more capable cloud computing model with lower latency constraints is required [13]. To improve these issues, Cisco recommended a novel technique known as Fog computing [14].

Challenges of Cloud with IoT: Unluckily, nothing is perfect, and cloud technology, especially for IoT applications, has several flaws which are presented through Fig. 3. Due to the distance between clients and data processing centers, the cloud cannot provide very low latency for many IoT programs. In any Web system, system problems and network outages can occur for any reason, enabling consumers to access an interruption; to avoid difficulties, many businesses use several connection routes with automated redundancy. Many organizations deploy numerous connected channels with managed failover to avoid issues. Confidential data is communicated across interconnected global channels with thousands or millions of gigabytes of data from some of the other users; it’s no surprise that the network is vulnerable to cyber-attacks or data theft (Table 1).

Fig. 3.
figure 3

Challenges of cloud with IoT

Table 1. Assessment between cloud computing and fog computing [15].
Table 2. IoT challenges

4 FoG Computing

The fog environment, which can be positioned nearer to IoT devices/sensors, is made up of conventional network elements including gateways, switches, set-top boxes, proxy servers, Ground Stations, and others. These elements can execute applications and provide a broad range of computing, storage, networking, and other functionalities. As a result, Fog computing can build massive geographical dispersion of Cloud-based services thanks to the networking components. The National Institute of Standards and Technology defines fog computing as “Between smart end-devices and conventional cloud or data centers, there exists a horizontal, physical or virtual resources paradigm. “This approach enables geographically segregated, delayed applications to leverage from pervasive, scalable, layered, pooled, and distributed computing, storage, and network access. [16]. Fog computing is a decentralized computing approach that brings the typical cloud computing technology to the edge of the network. At the network’s edge, fog computing provides processing, storage, monitoring, and service capabilities. Fog in the IoT is a great supplement to prior cloud computing offerings. There is currently a significant effort focusing on various scenarios in IoT applications across several businesses in which the IoT can be applied [17]. Data, Volume, Latency, and Bandwidth are three criteria of today’s networks that Fog addresses. Fog is a new technology that is mostly utilized in conjunction with the Internet of Things. Data and Fog computing is used to distribute services from the network core to the network edge. This technology provides data, computation, storage, and application services to end-users in the same way that Cloud does. Fog is a decentralized computing approach that pulls data from a centralized location, processes it, and sends it to a network edge device (set-top box, access point). Fog computing is a technology in which the service is hosted locally and used by the user.To put it another way, fog computing is a methodology that allows IoT data to be processed nearby in smart devices not sent to the cloud. The computation, storage, and networking resources are all available in the cloud and fog structures. Data acquired by sensors is not transferred to a cloud server in fog computing; instead, it is sent to devices such as network edges or set-top boxes [15]. Fog computing is related to cloud computing in certain ways. Both computer technologies offer their registered clients application, storage, data, and computational services. Fog computing, on the other hand, provides services closer to end-users than cloud computing, which provides services distantly.

End- users can get data, compute, storage, and application services from both Cloud and Fog. Fog, on either side, differs from Cloud in terms of proximity to end-users, geographical distribution, and mobility assistance. Fog computing is characterized as “an extremely virtualized environment that offers networking, storage, and compute resources across obsolete CC information centers, typically but not always located at the network edge"[4]. A fog structure has several edge nodes with limited processing capabilities, which are commonly referred to as fog nodes. These fog nodes have fewer processing and storage facilities. Cloudlets are edge and numerous server nodes in a fog network [18], which play a part in the shared computing environment rather than outside the network edge Clients, may be able to get a real-time response for critical latency applications by using fog devices. Even though Cisco coined the term, numerous researchers and industries characterized fog computing in a variety of ways. Yi et al. cover a wide range of fog computing topics [20]. It is defined as a “geographically shared computing framework with a pool of requirements that contains different universally linked heterogeneous computing devices at the network edge that is not entirely flawlessly supported by cloud services to collectively offer transmission, storage, and elastic computation in remote surroundings to an enormous scale of users nearby,” according to the specification. “System-level flat architecture that splits storage, resources, computing services, and networking from every place together with the range from Cloud to Things,” The Open Fog Consortium claims [19].

Fog computing is best suited to IoT-based systems with globally distributed end devices, where cloud communication is spotty but minimal delay is needed. Fog is fit for IoT applications that create terabytes of data regularly and can’t transport it to and from the cloud. From an IDC analysis, edge devices are expected to contribute 10% of global data by 2020. As a result, there will be greater demand for fog computing systems that provide low latency while still offering comprehensive intelligence. Envision, a New York-based renewable energy company has experienced a 15% rise in production from its massive network of wind turbines thanks to the fog. The company is currently analyzing up to 20 terabytes of data each second from 3 million sensors on the 20,000 turbines it oversees. By relocating processing to the edge, Envision was able to decrease data management time between 10 min to seconds, giving them actionable intelligence and significant economic gains. Fog computing is being used by Plat One, some other IoT company, to improve data handling for its over 1 million sensors. The ParStream platform is used by hundreds and thousands of devices, including lighting systems and parking, port and mobility management, and a network of 50,000 coffee makers, to transmit real-time sensor data [20]. According to Joe Skorupa, Distinguished Vice President Analyst for Gartner’s General Managers team, “With real-time business processes on the line, the massive number of devices, combined with the sheer volume, velocity, and structure of IoT data, causes issues, particularly in the areas of security, data, storage management, servers, and the data center network. To achieve the business requirements connected with IoT, data center managers will need to employ more forward-looking capacity management in these areas. “Over the projection period, the fog computing market is expected to grow at a CAGR of 55.6 percent, from $ 22.28 million in 2017 to $ 203.48 million in 2022. With the rise of interconnected devices and cloud technology, fog computing’s prominence is expected to increase. The growth of fog computing is being fueled by a rising growth of real applications, increased awareness of data security, and the need to analyze at the network’s edge.

The predicted term of the market is between 2017 and 2022. Cisco Systems, Inc. (United States), Microsoft Corp. (United States), ARM Holding Plc. (United kingdom), Dell Inc. (United States), Intel (United States), Fujitsu (Japan), GE Digital (United states), Nebbiolo Technologies (United States), Schneider Electric Software, LLC (Japan), Toshiba Corporation (Japan), and PrismTech Corporation (United States) are the major players in fog computing development [20]. Thus according to Zion Industry Report, the global fog business has the potential to approach $768 million U.S. dollars by 2025 [20].

4.1 The FoG Computing Architecture

The Fog is associated with the physical and conceptual components that resemble hardware and software needed to create an IoT network. The system consists of IoT devices, nodes, aggregation nodes, data services, remote cloud storage, and a localized data storage server/cloud. Fog is a middle layer. The Fog layer is a group of Fog nodes, which act as a virtual representation of IoT. While transferring data to the cloud layer, the Middle layer conducts preliminary processing of data, enabling speedier decision-making and execution.

  • IoT devices are devices that use various wired and wireless technologies to connect to an IoT network. These gadgets generate massive amounts of data regularly. Zwave, HART, NFC, Bluetooth, BLE, Zigbee, NFC, ISA- 100.11A, 6LoWPAN, and other wireless technologies are all employed in IoT. IPv4, IPv6, MQTT, CoAP, XMPP, AMQP, and other IoT protocols are used.

  • A fog node is a device that can compute, store data, and connect to the internet. To assist end devices, additional fog nodes are scattered across such a broader area. Different topologies are used to connect fog nodes. Depending on the requirements, fog nodes can be located in a factory, on top of the buildings, close to a railway track, on transportation, and so on. Examples include switches, embedded servers, controllers, routers, cameras, and other fog nodes. These fog nodes process highly sensitive data.

    • Responsibilities of a Fog node are:

    • Real-time data were taken by IoT devices

    • For real-time analytics, run IoT-enabled applications.

    • capable of handling temporary data storage

    • Sends cloud summaries of data collected from devices regularly.

  • Cloud: All of the fog nodes connect and transmit information to the cloud layer. Data that is less sensitive is processed, analyzed, and stored at the cloud layer [21] (Fig. 4).

Fig. 4.
figure 4

The structural design of fog computing

Significance of Fog Computing

  • Fog, in comparison to cloud technology, offers better security.

  • Data is analyzed at the Fog layer before being transferred to the cloud layer, reducing bandwidth usage and operating costs.

  • Fog computing minimizes latency, resulting in faster response times.

  • Fog computing allows for improved data handling with not as much latency and bandwidth use.

  • Fog is important for concurrent data analysis, and it has a wide geographical dispersion.

  • There are a lot of nodes.

  • Wireless access has a major impact.

  • Streaming and real-time applications are prevalent.

  • Heterogeneity

4.2 FoG Computing in IoT

Data storage gets extremely expensive and complicated whenever the sensor or program generates a big amount of data. When dealing with massive amounts of data, network bandwidth becomes expensive, necessitating the use of large data centers to tackle the problem. Fog has emerged as a viable alternative to traditional data management techniques. Fog has great potential for the collection of data; data distribution process, storage, and network connectivity resources. It saves a lot of energy, reduces the density of space and instance, and improves the data’s effectiveness and performance. The fog paradigm is valuable for applications that require huge amounts of data, fast network activities, and immediate processing. Real-time, hybrid, and independent data centers benefit from Fog, which improves operational reliability and effectiveness. Fog can also help keep systems up and running while saving funds on electricity, data center security, and dependability. By concentrating computer resources across a huge number of nodes, fog computing saves money. The availability, efficiency, and utility of fog nodes define their position. It also relieves the strain on corporate data centers. An additional major benefit of fog is the reduction in data congestion. Fog computing advantages include actual working on time, and heterogeneous and autonomous data centers, which facilitate better effectiveness and safety. Fog computing can also save you cost on energy, data center security, and dependability while keeping your things running smoothly. By sharing system resources across a vast network, fog computing cuts costs. The availability, efficiency, and utility of fog nodes define their position. It also relieves the strain on corporate data centers. Nevertheless, this technique offers great ability can save governments, organizations, and even individual customers a large amount of money [19]. Fog brings the cloud’s capabilities closer to where data is generated and processed. As a result, more people will be able to access the Internet simultaneously. It offers a network and services similar to cloud technology, but it also has more quality and reliability. According to IDC, network edge devices will produce 45 percent of all data by 2025, with 10 percent of that data coming from mobile phones, wearable technology, smart home devices, transportation, as well as other edge devices. In the next five years, Fog is considered to be the only technology that will outlast AI, Internet of Things app development, and 5G [20].

Fog computing can be used to resolve challenges that occur during cloud integration with IoT [30]. Many of the shortcomings of present computer systems based primarily on cloud technology and end-user device connected to IoT systems could be overcome with fog computing. Fog computing, can resolve numerous IoT difficulties as described in Table 2 (Fig. 5).

Fig. 5.
figure 5

Communication between cloud servers, Fog devices, and sensors

4.3 Areas Where FoG Works with IoT

  • Real medical assessment using fog technology, in which patients with electronic scans can be supervised in actual for medical emergencies and the adequate doctors are alerted as soon as possible.

  • One key field is real-time rail monitoring, which involves deploying fog nodes to railway tracks to analyze track conditions for high-speed trains. High-speed data analysis is provided by fog nodes, which improves the railway system’s safety and reliability.

  • Another area is real-time air quality monitoring using fog computing because poor air quality ultimately gets impacts the ambient conditions in our environment.

  • Optimization of the pipeline for Pipelines is used to carry gas and oil. As a result, with such a gas pipeline system, real-time pressure monitoring and a flow compressor are required.

  • The IoT and cloud paradigms are increasingly driving increased agricultural production at cheaper costs. The Fog Nodes technology minimizes overall latency caused by data transport to the cloud for processing.

The Fog paradigm comes since the cloud is not suitable for numerous IoT applications. Fog has distributed architecture that satisfies IoT requirements and manages huge amounts of data generated by sensors, which would be prohibitively exclusive and time-taking to send to the cloud for processing and analysis. Fog reduces the amount of bandwidth and provides an ease of communication among sensors and the cloud, allowing IoT to have a greater impact.

5 Conclusion

The fog paradigm can be regarded as a technique to provide improved services more quickly and cost-effectively, as well as a way to avoid the more extensive internet, whose speeds are often constrained by the carrier. IoT has a very bright and scalable future.The majority of affluent countries are investing billions of dollars in Smart Infrastructure to replace present infrastructure. The IoT promises to improve human lives and business productivity. Through globally dispersed and locally intelligent networks of smart devices and a rich ecosystem of application development, it has the potential to enable the extension and advancement of core services in health care, transportation, air quality monitoring, logistics, security, and education. However, significant efforts will be necessary to mobilize the industry to advance beyond the early stages of market development and into market maturity by utilizing the IoT’s hidden possibility. The market may place varying demands on mobile networks in terms of service distribution, customer billing models, and ability to supply IoT services, among other things, posing a challenge to mobile service providers. In summary, this paper present a detailed study about Fog computing and its contributions to the IoT, and how this technology explores guidelines and open issues related to the cloud with the Internet of Things.