Edge Computing: Applications, State-of-the-Art and Challenges

: The Internet of Things (IoT) is now infiltrating into our daily lives, providing important measurement and collection tools to inform us of every decision. Millions of sensors and devices continue to generate data and exchange important information through complex networks that support machine-to-machine communication and monitor and control critical smart world infrastructure. As a strategy to alleviate resource congestion escalation, edge computing has become a new paradigm for addressing the needs of the Internet of Things and localization computing. Compared to well-known cloud computing, edge computing migrates data calculations or storage to the edge of the network near the end-user. Thus, multiple compute nodes distributed across the network can offload computational pressure from a centralized data center and can significantly reduce latency in message exchanges. Besides, the distributed architecture balances network traffic and avoids spikes in traffic in the IoT network, reduces latency between edge/cloud servers and end-users, and reduces response time for real-time IoT applications compared to traditional cloud services. In this article, we conducted a comprehensive survey to analyze how edge computing can improve the performance of IoT networks. We classify edge calculations into different groups based on the architecture and study their performance by comparing network latency, bandwidth usage, power consumption, and overhead. Through the systematic introduction of the concept of edge computing, typical application scenarios, research status, and key technologies, it is considered that the development of edge computing is still in the initial stage. There are still many problems in practical applications that need to be solved, including optimizing edge computing performance, security, interoperability, and intelligent edge operations management services.


Introduction
Edge computing is an open platform that integrates network, computing, storage, and application core capabilities on the edge of the network that is physically close to the data source [25]. It provides a computing model for edge intelligence services. The location where the edge calculation occurs is called the edge node, which can be any node between the data generation source and the cloud center that has computing resources and network resources. For example, a mobile phone is an edge node between a person and a cloud center, and a gateway is an edge node between a smart home and a cloud center [16] Cisco pointed out in the 2016-2021 Global Cloud Index that the number of devices connected to the Internet will increase from 17.1 billion in 2016 to 27.1 billion. The amount of data generated every day is also increasing, and the amount of data generated by devices worldwide has increased from 218 ZB in 2016 to 847 ZB in 2021 [20]. The traditional cloud computing model uploads all data to the cloud computing center through the network and utilizes the cloud computing center's superior computing power to focus on solving the computing needs of the application. However, the centralized processing model of cloud computing has three shortcomings in the context of the Internet of Everything [35].
1) Real-time demand for all things connected. In the Internet of Everything, with the increase in the number of edge devices, the amount of data generated by these devices is also exploding, resulting in network bandwidth becoming a bottleneck in cloud computing. For example, the literature [1] pointed out that the Boeing 787 generates more than 5 GB of data per second, but the bandwidth between the aircraft and the satellite is not enough to support real-time data transmission. 2) Data security and privacy. With the popularity of smart home, video data for many families in the house installation network camera, the camera will be collected directly uploaded to the cloud computing center will increase the risk of disclosure of user privacy data [3]. 3) Large energy consumption. As more and more user applications run on cloud servers, the demand for energy consumption in large-scale data centers will be difficult to meet in the future. The existing research on energy consumption in cloud computing centers focuses on how to improve energy efficiency [2]. However, improving energy efficiency alone will not solve the enormous energy consumption problem of the data center, which will be more prominent in the environment of all things. In response to this, the development of the application requirements of the Internet of Everything has spawned an edge computing model. The edge computing model is a new type of computing model that performs calculations at the edge of the network. In the edge computing model, the edge device has the processing capability of performing calculation and data analysis, and migrates some or all of the computing tasks performed by the original cloud computing model to the network edge device, reducing the computing load of the cloud server, slowing down the pressure of the network bandwidth, and improving the processing efficiency of data in the era of Internet of Everything. Edge computing is not to replace the cloud, but to complement the cloud, providing a better computing platform for related technologies such as mobile computing and the Internet of Things [5].
The edge computing model has become the supporting platform for the emerging applications of all things, and it is now the trend of the times. In this paper, we introduce the model of edge computing in detail from the aspects of concepts, key technologies, typical applications, current trends, and challenges, aiming to provide a reference for edge computing researchers [6].

Basic Concepts and Architecture
As early as 2003, AKMAAI and IBM proposed the purpose of "edge computing" in an internal research project report, "Developing Edge Computing Applications" [3], and provided edge-based services on their Web Sphere through AKAMAI and IBM. In 2004, Pang [4] first proposed edge computing in the open literature at the 20th IEEE International Conference, mentioning that "edge computing is to achieve scalable and highly available Web services that will drive enterprise logic and data processing centers. The advantage to the edge side of the proxy service is that the application's operation on the edge side reduces network latency and results in faster web service response." Therefore, edge computing is a new computing model that provides applications such as converged computing, storage, and networking at the edge of the network near the source or data source. At the same time, edge computing is an enabling technology that addresses the industry's critical needs in agile connectivity, real-time services, data optimization, application intelligence, security, and privacy protection by providing these resources on the edge of the network [4].
Existing research generally divides the architecture of edge computing from the central network to the edge of the network into three layers: the cloud computing layer, the edge computing layer, and the ending layer, as shown in Figure 1 [5][6][7]. Different layers are generally divided according to their computing and storage capabilities. The computing and storage capabilities of the ending layer, the edge computing layer, and the cloud computing layer are sequentially increased. In order to achieve intra-layer and cross-layer communication, each communication technology can be connected by various communication technologies, including wired communication (such as Ethernet, optical fiber), wireless communication (such as Bluetooth, LTE, ZigBee, NFC, IEEE802.11a/b). /c/g/c, satellite link) or a combination of two technologies [8]. Edge computing extends cloud services to the edge of the network by introducing an edge layer between the terminal device and the cloud.
Next, we briefly introduce the composition and function of each layer of the edge computing architecture.
1) Ending layer. The ending layer is the layer closest to the end-user and consists of various IoT devices such as sensors, smartphones, smart vehicles, smart cards, card readers, and more. In order to extend the service time of the terminal equipment, it should be avoided to run complex calculation tasks on the terminal equipment. Therefore, we only collect the raw data from the terminal device and upload it to the upper layer for calculation and storage. The upper layer of the ending layer is connected mainly through the cellular network [7]. 2) Edge computing layer The edge computing layer is located at the edge of the network and consists of a large number of edge nodes, including network devices (such as routers, gateways, access points, base stations, etc.) and specific edge servers. Mobile devices, including mobile phones, vehicles, etc.). These edge nodes are widely distributed between terminal devices and the cloud, such as cafes, shopping centers, bus terminals, streets, parks, etc. Edge nodes can be deployed anywhere in the network connection, such as in a smartphone, on a factory floor, in a roadside unit, in a vehicle, or at the top of a utility pole. They are capable of calculating, transmitting, and temporarily storing received sensory data. Since these edge nodes have only one or two hops from the device, real-time analysis, and delay-sensitive applications can be performed at the edge computing layer [9]. Besides, edge nodes can connect to the cloud data center through the IP core network and are responsible for interacting with the cloud to collaborate for more powerful computing and storage functions. This layer is designed to extend cloud computing to the edge of the network with some computing and storage capabilities. The edge computing layer is responsible for periodically sending data to the cloud layer, providing three main functions of data caching, localization computing, and wireless access to meet the low latency and high traffic demands of mobile devices [10]. 3) Cloud layer. The cloud layer consists of multiple high-performance servers and storage devices with powerful computing and storage capabilities to perform complex computing tasks. The cloud module can effectively manage and schedule edge nodes and cloud computing centers through control policies to provide better services for users. In addition, several paradigms similar to edge computing have been proposed: In 2009, mobile cloud computing (MCC) was first proposed, and mobile cloud computing was mainly focused on the concept of "mobile authorization": Mobile devices have limited resources available, and should be responsible for storing bulk data and performing computationally intensive tasks on remote entities. In 2011, Cisco introduced a new computing paradigm, fog computing [11]. This model overcomes the shortcomings of cloud computing by migrating some of the core functions of the cloud to the edge of the network to solve the problems encountered by the Internet of Things in traditional cloud computing.

Example of Edge Calculation
Examples similar to edge calculations, such as fog calculations, moving edge calculations, etc., are not the same as edge calculations, but they are similar to edge calculation examples in terms of motivation, node equipment, node position, and so on. Collaborative edge computing [3] is a new computing paradigm that uses edge networks and router mesh networks to implement distributed decisions within the network. Decision making is done within the network by sharing data and calculations between edge devices rather than sending all data to a centralized server. This is different from existing computing paradigms that typically perform centralized computing, and edge devices such as gateways are only used to collect data and send it to the server for processing.

Advantages of Edge Computing
The edge computing model migrates some or all of the computing tasks of the first cloud computing center to the vicinity of the data source. Compared with the traditional cloud computing model, the edge computing model has real-time data processing and analysis, high security, privacy protection, and scalability. Strong, location-aware, and low-traffic advantages.
1) Real-time data processing and analysis. Migrate part or all of the computing tasks of the original cloud computing center to the edge of the network, and process the data on the edge device instead of in the external data center or the cloud; thus improving the data transmission performance, ensuring real-time processing and reducing the computing load of the cloud computing center. 2) High security. The traditional cloud computing model is centralized, which makes it vulnerable to distributed denial of service provisioning and power outages. The edge computing model distributes processing, storage, and applications between edge devices and cloud computing centers, making it more secure. The edge calculation model also reduces the likelihood of a single point of failure. 3) Protect private data and improve data security. The edge computing model processes more data on the local device instead of uploading it to the cloud computing center, so edge computing can also reduce the amount of data that exists at risk. Even if the device is attacked, it will only contain locally collected data, not the damaged cloud computing center. 4) Scalability. Edge computing provides a cheaper scalability path that allows companies to extend their computing power through a combination of IoT devices and edge data centers. The use of IoT devices with processing power also reduces the cost of expansion, so new devices added do not generate significant bandwidth requirements for the network. 5) Location awareness. Edge distributed devices utilize low-level signaling for information sharing. The edge computing model receives information from edge devices within the local access network to discover the location of the device. For example, navigation, the terminal device can deliver relevant location information and data to the edge node for processing according to its real-time location, and the edge node makes judgments and decisions based on the existing data. 6) Low flow. The data collected by the local device can be analyzed locally or pre-processed on the local device. It is not necessary to upload all data collected by the local device to the cloud computing center so that traffic entering the core network can be reduced [14].

Edge Computing Security Threat
1) User awareness of privacy and security Take Wi-Fi network security as an example. In more than 400 million households using wireless connections, 49% of Wi-Fi networks are unsecured, and 80% of households still use default passwords. Set up their routers. For public Wi-Fi hotspots, 89% of hotspots are unsafe. If the user does not protect personal privacy data, devices such as webcams and health monitors are easily exploited by others, and personal privacy data is snooped. 2) Edge devices take into account data collectors and owners Data collected by mobile phones will be stored and analyzed at the cloud service provider, while retaining edge data and making users own is a better privacy data protection solution. Data collected by network edge devices should be stored at the edge, and users should have the right to restrict the use of this data by cloud service providers. To protect user privacy, highly private data should be removed from the edge device.
3) The lack of effective tools for data security defenses Network edge device resources are limited, and existing data security protection methods are not fully applicable to edge computing. Moreover, the highly dynamic environment at the edge of the network makes the network more vulnerable. To enhance the protection of privacy data, researchers have researched privacy protection platforms, such as the Open mHealth platform developed by the Deborah team [32], to standardize the processing and storage of health data, but future research still needs to develop more Tools to process edge calculated data.

A Typical Application of Edge Computing
Edge computing has achieved excellent results in many application scenarios. In this section, we will introduce several emerging application scenarios based on the edge computing framework design, some of which are discussed in the European Telecommunications Standards Institute (ETSI) white paper, such as video analytics and big mobile data. There are also review papers [4,5] that describe vehicle interconnection, healthcare, intelligent building control, ocean monitoring, and the combination of wireless sensor and actuator networks with edge computing.
1) Health care. Edge computing can aid in healthcare, for example, to support healthcare for patients with stroke.
Researchers have recently proposed a smart healthcare infrastructure called U-fall that uses edge computing technology to leverage smartphones [6]. With the aid of edge calculations, U-fall senses motion detection in real-time with smart device sensors. Edge computing can also help health consultants assist their patients regardless of their geographic location. Edge computing enables smartphones to collect patient physiological information from smart sensors and send it to a cloud server for storage, data synchronization, and sharing. 2) Video analysis. In the era of the Internet of Things, cameras for surveillance and control are ubiquitous, and traditional terminal devices-the cloud server architecture-may not be able to transmit video from millions of terminal devices. In this case, edge computing can aid in video analysis based applications.
With the help of edge computing, a large amount of video is not uploaded to the cloud server, but data analysis is performed in an edge server close to the terminal device, and only a small portion of data that cannot be processed by the edge server is uploaded to the cloud computing center. 3) Vehicle interconnection. Access to the vehicle is facilitated by Internet access, enabling it to connect to other vehicles on the road. If all the data collected by the vehicle is uploaded to the cloud for processing, the Internet load will be too large, resulting in a delay in transmission. Therefore, the edge device itself needs to have the ability to process video, audio, signals, and the like. Edge computing can provide the corresponding architecture, service, and support capabilities for this need, shortening the end-to-end delay, enabling data to be processed faster, and avoiding accidents such as car accidents caused by untimely signal processing. A car can communicate with other nearby vehicles and inform them of any expected risks or traffic congestion. 4) Mobile big data analysis. Ubiquitous mobile devices can collect large amounts of data, which is critical to the business because it extracts analytical and useful information that can benefit different business units. Big data analytics is the process of extracting meaningful information from raw data. Implementing a deployed edge server near a mobile device can improve big data analytics with high network bandwidth and low latency. For example, first, collect and analyze big data in a nearby edge server, and then pass the results of the big data analysis to the core network for further processing, thereby alleviating the pressure on the core network. 5) Intelligent building control. The intelligent building control system consists of wireless sensors deployed in different parts of the building. The sensor is responsible for monitoring and controlling the built environment, such as temperature, gas level, or humidity. In a smart building environment, buildings deploying edge computing environments can share information through sensors and react to any anomalies. These sensors can maintain the building atmosphere based on aggregate information received by other wireless nodes. 6) Marine monitoring and control. Scientists are studying how to deal with any catastrophic events in the ocean and learn about climate change in advance. This can help people take quick action to mitigate the severe consequences of catastrophic events. 7) Sensors deployed in specific locations in the ocean transmit large amounts of data, which requires a large number of computing resources and storage resources. Using a traditional cloud computing center to process large amounts of data received may result in delays in predictive transmission. In this case, edge calculations can play an essential role in preventing data loss or sensor data transmission delay by processing nearby near the data source. 8) Smart home. With the development of the Internet of Things technology, the smart home system has been further developed. It uses a large number of IoT devices to monitor and control the internal state of the home in real-time, receive external control commands and finally complete the regulation of the home environment to improve home safety and convenience. Comfort. Due to the privacy of family data, users are not always willing to upload data to the cloud for processing, especially for some home internal video data. Edge computing can push home data processing to the internal home gateway, reduce the outflow of household data, reduce the possibility of data leakage, and improve the privacy of the system. 9) Smart city. Forecasts show that a city of one million people will likely generate 200 PB of data per day [7]. Therefore, applying an edge computing model to process data at the edge of the network is the right solution. For example, in urban road surface inspection, sensors are installed on the street lamps on both sides of the road to collect public road surface information and to detect environmental data such as air quality, light intensity, and noise level. When the street lamp fails, it can immediately feedback to the maintenance personnel, and assist the health first aid. And the field of public safety.

Edge Computing Security Technology
The concepts of edge computing and related architectures are reviewed above, and the security threats under the edge computing paradigm are analyzed. In response to these security threats, many scholars at home and abroad have researched security technology issues in the context of marginal computing. This paper starts with the characteristics of edge computing network architecture and summarizes the four technical aspects of intrusion detection, access control, defense strategy and critical management in an edge computing environment.

Edge Computing Intrusion Detection Technology
Intrusion detection system (IDS) detection algorithms and deployments have different requirements in different network environments. With the widespread adoption of cloud computing and the rise of edge computing, many scholars have conducted extensive research on intrusion detection systems for edge computing.
Intrusion detection is mainly used to monitor and detect abnormal data on the host side or the network side. Many studies in the cloud computing environment have similar reference values for edge computing intrusion detection technology. In 2010, Zhou et al. [38] proposed a collaborative intrusion detection system suitable for cloud environments, which improves the efficiency of intrusion detection in the face of coordinated attacks. Mazzariello et al. [39] proposed a network-based intrusion detection system in a cloud computing environment. By defining a series of intrusion rules to determine intrusion behavior, the system has a high detection rate when detecting external attacks. In order to handle large-scale network data and application access to manage control traffic in the cloud, Gul et al. [40] proposed a multi-threaded distributed intrusion detection system model in 2011. In this model, the cloud intrusion detection system can process large-volume data packets, analyze them, and generate reports efficiently. The system automatically sends security reports to users through third-party IDS detection services.

Edge Computing Access Control Technology
At present, there are few types of research on access control technology in the edge computing environment. This paper comprehensively compares access control technologies in different network environments and proposes new requirements for edge computing access control technology. In 2012, Pervez et al. [43] proposed a cloud-based data oblivious access control policy evaluation (O-ACE), which can reveal information about access control policies to cloud service providers and unauthorized users. Under the premise, provide a data access interface to achieve secure sharing of data.

Edge Computing and Mobility Management
1) Calculate the uninstallation. Computational offloading means that the terminal device uninstalls some or all of the computing tasks to the resource-rich edge server to solve the shortcomings of the terminal device in terms of resource storage, computing performance, and energy efficiency. The main technique for calculating the offload is the offload decision. The uninstallation decision mainly solves the problem of how the mobile terminal uninstalls the computing task, how much to uninstall, and what to uninstall. According to the optimization goal of the unloading decision, the computational unloading is divided into three types: aiming at reducing the delay, aiming at reducing the energy consumption, and balancing the energy consumption and the delay. 2) Mobility management. Edge computing relies on the geographically widespread nature of resources to support application mobility. An edge computing node only serves the surrounding users. Cloud computing mode supports application mobility when the server location is fixed and data is transmitted to the server through the network. Therefore, mobile management applied in edge computing is a new mode. There are two main issues involved: resource discovery, that is, users need to quickly discover the resources available around them and select the most suitable resources. Edge discovery resource discovery needs to adapt to heterogeneous resource environments, and also needs to ensure the speed of resource discovery, so that applications can provide services to users without interruption. Another issue is resource switching, where computing resources used by mobile applications may switch between multiple devices as the user moves. Resource switching To migrate the service program's operational site, ensuring service continuity is a key focus of edge computing research. Some applications expect to continue to serve users after a user's location changes. The heterogeneity of edge computing resources and the diversity of networks require changes in the adaptive computing power and network bandwidth of the migration process. In [8], the authors optimized the trade-off between migration gain and migration cost by selectively migrating virtual machines to optimal locations.

Challenge
At present, edge computing has received extensive attention from all walks of life, and the results are blooming in many application scenarios; however, there are still many problems in the practical application of edge computing [5]. In this article, we analyze several of the main issues, including optimizing edge computing performance, security, interoperability, and intelligent edge operations management services. 1) Optimize edge calculation performance. In the edge computing architecture, the computing power of different levels of edge servers is different, and load distribution will become an important issue. User requirements, latency, bandwidth, power consumption, and cost are key metrics that determine the load distribution strategy. For different workloads, the weight and priority of the indicator should be set so that the system can choose the optimal allocation strategy. Cost analysis needs to be done during the run, distributing interference between workloads and resource usage, all of which pose challenges to the edge computing architecture. 2) Security. The distributed architecture of edge computing increases the dimension of the attack vector. The smarter the edge computing client, the more vulnerable it is to malware infections and security breaches. In the edge computing architecture, computing near the data source is a more appropriate method to protect privacy and data security. However, due to the limited resources of network edge devices, existing data security protection methods are not fully applicable to edge computing architectures for edge devices with limited resources. Moreover, a highly dynamic environment at the edge of the network can make the network more vulnerable and difficult to protect. 3) Interoperability. The interoperability of edge devices is the key to the large-scale implementation of edge computing architectures. Interoperability between heterogeneous edge devices and systems is required between different vendors by establishing relevant standard specifications and common collaboration protocols. 4) Intelligent edge operation management service.
Service management of network edge devices needs to meet the identification service priority, flexible and scalable, and isolation lines in complex environments in the IoT environment. In the case where sensor data and communication are unreliable, how the system provides reliable services by utilizing multi-dimensional reference data sources and historical data records is a problem that needs attention at present.

Conclusion
This paper systematically introduces the edge computing model from the basic concepts, application scenarios, research status, key technologies, and existing challenges. The core idea of edge computing is to provide computing, storage, and network resources for applications on the edge of the network. It is a new computing architecture. The edge computing architecture can meet the needs of users for delay-sensitive applications and reduce the load pressure on the core network. It is worth noting that the computing and storage resources of a single edge node are limited, and the security is lower than that of the cloud computing center. How to achieve security, high-performance collaboration and intelligent management between edge nodes is an urgent problem to be explored and studied.