Abstract

A new networking paradigm, Vehicular Edge Computing (VEC), has been introduced in recent years to the vehicular network to augment its computing capacity. The ultimate challenge to fulfill the requirements of both communication and computation is increasingly prominent, with the advent of ever-growing modern vehicular applications. With the breakthrough of VEC, service providers directly host services in close proximity to smart vehicles for reducing latency and improving quality of service (QoS). This paper illustrates the VEC architecture, coupled with the concept of the smart vehicle, its services, communication, and applications. Moreover, we categorized all the technical issues in the VEC architecture and reviewed all the relevant and latest solutions. We also shed some light and pinpoint future research challenges. This article not only enables naive readers to get a better understanding of this latest research field but also gives new directions in the field of VEC to the other researchers.

1. Introduction

A significant component of future intelligent transportation systems is the vehicular networks. Various mobility-based services are offered by these networks, which vary from content-sharing services (marketing purposes and infotainment) to information spreading applications (emergency operations like information regarding natural calamities, etc.) [1]. According to the forecast by Gartner, Inc., about 0.25 billion connected vehicles will be there in 2020. Moreover, Gartner predicts about 20.8 billion of connected things by 2020 [2]. Vehicular networks are popular as they provide safety, ease of driving, convenience, and greater efficiency through the sharing of useful information. During the last decade, as the technology has emerged dramatically with the invention of cloud computing, the vehicular networks also have been developed and are becoming popular day by day. There are few repercussions of this development as well; for example, more computational capability and data communication are required. According to Intel [3], a vehicle needs to analyze and fuse a gigantic amount of data from the sensor (around 1 GB/s) in order to make safe decisions. Some applications like autonomous driving, augmented reality (AR) techniques [4], and so forth require complex data-processing capabilities and greater storage capacity. The conventional vehicular networks face huge challenges to meet the requirements in terms of storage and communication.

Vehicular Ad hoc Networks (VANETs) depend predominantly on cloud computing [5, 6]. Cloud computing provides centralized computation and storage services using either a cloud server or a bunch of remote servers. Cloud computing benefits the users with virtual servers that allow remote storage capacity and computational facilities. Data that has been stored can be retrieved from anywhere without having large storage and computational capability in the vehicles. Therefore, users can share a huge amount of data among the vehicles. One critical question arises, while dealing with cloud computing, about the delay that takes place while transferring data from vehicles to the cloud server and retrieving the information after being stored and processed. Due to this factor and with a boost in the number of vehicles with increasing mobility, there arises a need for the applications that ensure low latency and uninterrupted services. In addition, high bandwidth is required for the communication among the vehicle and the cloud server. The heavy traffic load also causes more consumption of energy in various wireless devices, which has a massive impact on bandwidth cost. Thus, it has become challenging to meet the demands of computation and communication with the ever-increasing advancement of the vehicular applications. To satisfy the required QoS is another vital challenge faced by Vehicular Cloud Computing [710] services that integrate cloud computing with VANETs.

Contrary to the Vehicular Cloud Computing services, which are centralized, VEC aims at applications with extensively distributed deployments. VEC furthers the benefits yielded by cloud computing services to the edge of the network [1113]. Edge computing is a more suitable solution for improving computational capabilities in vehicular environments [14]. In edge computing, the processing and analysis of data take place in the proximity to the end devices. Edge acts as an intermediary amongst the cloud and vehicles. Servers that have computational and storage capabilities (edge nodes) are deployed in the proximity to the vehicular networks. As the computing and storage services are being provided close to the user (on the edge), better QoS is offered by the services through edge computing. Moreover, a powerful communicational and computational mechanism is needed to support the contemporary applications in vehicular networks [15]. The sensors present in the vehicles collect data and that data is further processed and stored by the edge servers. Therefore, these services ensure low-latency communication and greater context awareness. Edge computing has its pros for low latency applications, for example, safety applications (driving Safety and context awareness) as well as nonsafety applications (video streaming, AR, and infotainment). Table 1 highlights the differences between Vehicular Cloud Computing and VEC.

Software Defined Networking (SDN), characterized by the decoupled control plane and data plane, provides comprehensive network control. The communication between the data plane and the control interrupts the flow of the packet, resulting in an increase in both cost and delay in communication. Thus, SDN focuses on minimizing the communication between data plane and control plane [16]. The SDN controller can also make informed management decisions based on the real-time central global information. Therefore, it is popular in complex network management. SDN provides the controller an overall picture of the network via a programmable control plane and interacts with forwarding devices and offers a programming interface for network management applications. As a result, it helps in the dynamic network deployment and agile network management without interfering with other networks. It also contributes to faster application innovation and optimal resource utilization [17]. With the help of SDN control plane configuration, the network can not only adapt to the changes in the network dynamics but also respond to the emergency situations (e.g., in case of accidents)[16]. The SDN accompanies the edge computing and complements the intelligent transportation system in order to deal with the complexity of a heterogeneous and massive number of vehicles, humongous data flow, and frequent topology change to provide immediate vehicle mobility to extend driving safety.

VEC has received tremendous attention from researchers since its birth, and several surveys have studied various aspects of VEC. In [18], the authors only discussed the SDN-based vehicular fog computing architecture, while the authors in [15] considered vehicles as infrastructure for extensive communication and computation. Moreover, [19] outlines the advantages of the Internet of vehicles with the development of the vehicular fog. However, according to the authors’ knowledge, this is the first contribution that leverages VEC as a complete solution for existing and future applications and services. In this article, we comprehensively highlight the concept of VEC, smart vehicles, its basic component, a network of smart vehicles, and its innovative applications. We have considered and discussed both scenarios of VEC as an infrastructure of smart vehicles besides the smart vehicles communication among all the three layers of VEC, that is, cloud, edge cloud, and smart vehicle layer, respectively. We categorized the technical issues and reviewed all the relevant solutions. In order to help designers and researchers to better understand the concept of VEC, moreover, we identified future challenges that still exist in VEC to get the attention of the researchers for building vigorous future VEC applications.

The rest of the paper is organized as follows: in Section 2, we discuss the VEC architecture. Then we introduce the concept of smart vehicles, basic components, a network of the smart vehicles, its services, and applications, which are categorized into safety and nonsafety application in Section 3. In Section 4, we comprehensively categorize the technical issues of VEC, followed by challenges in Section 5. We conclude this paper in Section 6. Moreover, Figure 1 illustrates the organization of the paper.

2. Architecture

This section explains the architecture, role, and mode of operation for each component. The VEC architecture lays its foundation on three layers: cloud layer, edge cloud layer, and smart vehicular layer as shown in Figure 2.

2.1. Cloud Layer

Most important advantages of cloud layer are data aggregation, data mining, analysis optimization, storage, batch processing, and computation of complex data [20], which are beyond the computation power of the edge nodes. Moreover, the cloud can compute the gigantic amount of data and complex computations in a very short time. The cloud infrastructure comprises two parts, storage and computation. The data collected through different edge nodes, which could be used for a later/longer period and need not real-time computation, will be sent to cloud layer through SDN controller, where it is permanently stored for future analysis. The computation part computes and analyzes the complex computational tasks and offers faster performance. The computational tasks, which are sent to the cloud through edge nodes, are not latency-sensitive tasks.

2.2. Edge Cloud Layer

The edge cloud layer ensures the connection between the smart vehicular layer and the cloud layer. For achieving this, the vehicles contain devices that make use of wireless communication protocols, such as 802.11p, 3GPP, 3G, 4G, LTE, and 5G. The purpose is to provide low latency, location awareness, emergency management, caching, content discovery, and computation and improves quality of services since it is at the proximity to vehicles, and it is used for real-time interaction [21]. Edge cloud layer also deals with those applications, which need a quick response with very low latency [22], that is, AR, environment recognition, video analytics, health recognition, and human behavior recognition, and so forth. For this, this layer provides the following services to vehicles/end users.(i)Infotainment as a service (IaaS): it provides useful information to the users, about the events like emergency situations, connected to the VEC. It also offers entertainment services like music, games, movies, and so forth. The aim of these services is to enhance the quality of user experience and safety of the passengers by offering both information and entertainment.(ii)Network as a service (NaaS): the users who have an Internet connection can facilitate other users by providing them connection through the vehicle, roadside units, or micro base stations. This facility is very valuable, particularly in emergencies [23].(iii)Storage as a service (SaaS): vehicles need additional storage for running their applications, which require high storage resources, and for making a backup for a temporary purpose. This need is fulfilled by the edge server, which provides free storage for the particular client to run their applications [23].(iv)Computation as a service (CaaS): those vehicles which are in a parking lot, centers, or a traffic congestion spent their several hours having unused computational resources. There is an opportunity for those vehicles/users who desire to augment the computational resources of their vehicles or mobile devices to achieve massive computational tasks [23].

This layer also provides a communication facility for vehicles to vehicles (V2V) and with an external infrastructure vehicle to Infrastructure (V2I). In V2V, vehicles interact with each other which are in the same range of communication, so information can be propagated through vehicles until it arrives on the edge. For instance, if any vehicle exhibits strange behavior, in case of direction change, violation of the speed limit, or mechanical failure, emergency messages will be sent to neighboring vehicles as well as to edge, which contain the position, speed, and moving direction of that specific vehicle. The V2I is liable for exchange of operational data among vehicles through infrastructures like roadside units, micro base stations, and edge servers over wireless networks. This layer comprises many components and all are being managed through SDN.

SDN-Supported Components: A key requirement of VEC is the management of a high number of vehicles and their intermittent connections. To introduce SDN in the network is always the best way in order to get the overall/global view of the network. Therefore, the following are some SDN components, which are required to integrate for system deployment.(i)SC: SDN controller is the overall central intelligence point of the network. It governs the entire behaviors of the network. It also acts as edge orchestration and resources management for the edge [24].(ii)SES: SDN-based edge server, a group of SRSUs is connected to an edge server over broadband connections. SES provides the vehicles storage and computational facility at the edge of the network. It also stores regional road system information and performs emergency services.(iii)SMBS: SDN micro based station is not only capable of carrying voice data, but it is also more sophisticated. SMBS works under the supervision of the SC, running OpenFlow, and capable of delivering edge services. SMBS is also local intelligence edge device [25].(iv)SRSU: SDN-based roadside unit, running OpenFlow and managed by the SC. It is an edge device. It can exchange data with those vehicles that are in its communication range [24].(v)SSV: SDN-based smart vehicle acts as a forwarding device (end user), armed with On-Board Unit (OBU) and operating OpenFlow. It can communicate with other vehicles, SRSU, and SMBS. It is also considered as Data Plane element.

For control channel, every SSV is equipped with WiMax/(3G, 4G LTE, 5G) and Dedicated Short-Range Communication (DSRC)/LTE-V interface for Data Channel. Under any circumstances, if SDN controller’s connection is lost to deal with this situation, the SSVs support emergency backup mechanism plan and go back to conventional operations like AODV, DSDV, and OLSR routing protocols [25]. Because the architecture is managed in a heterogeneous network environment, as illustrated in Figure 2, in which the entire infrastructure uses different wireless technologies for communication purposes, the communication between V2V and vehicle to SRSU will be done through DSRC/LTE-V, where SMBS is a long-range wireless connection like 3G, 4G LTE, or 5G. The communications between SC and SMBS, SC and SES, SES and SES, and SES and SRSU take place through broadband high-speed connections.

2.3. Smart Vehicular Layer

Vehicles are likely to perform more communication, exchange onboard services, and offer storage [26]. The smart vehicular layer contains a group of vehicles that are geographically close and share computing and storage resources through the wireless network. The smart vehicular layer is responsible for abstracting information from embedded sensors, GPS, camera, radar, lidar, and other devices that vehicles can contain. The collected information can be sent to the edge cloud layer for storage or it serves as input for several services in the application layer. In smart vehicular layer, the vehicle will have communications, storage, intelligence, and learning capabilities to anticipate the driver’s intentions. The idea will help vehicles to use services from other vehicles as smart vehicular computing, offering the computational and offloading facilities for vehicles available at the edge of the network and providing all the services required by the autonomous vehicles.

Therefore, this layer can promote sensing of not only the environment but also the behavior of passenger and drivers in a vehicle. The main component of this layer is a vehicle; vehicles in this paradigm are considered as a smart vehicle and are fully armed with many of the latest sensors and communication equipment. We will discuss the term smart vehicle, its basic components, communication, services, and application in detail in Section 3.

3. Smart Vehicle

The vehicle that is capable of computing and has storage as well as communication facilities and can learn from its environment by making decisions accordingly is known as a smart vehicle. Smart vehicles are equipped with different types of sensors and multi-interface cards, internally (onboard) and externally. With the rising number of smart vehicles equipped with onboard wireless devices (3GPP, IEEE 802.11p, Bluetooth, etc.) and sensors (radar, lidar, etc.), efficient management and transport applications are aiming at enhancing flows of vehicles by minimizing the travel period of time and averting any traffic congestion.

Smart vehicles, with a group of innovative functionalities (i.e., information exchanging, positioning information, etc.), can support specific applications (i.e., safety messages and warnings, gossip-based applications, etc.). Mostly the vehicles within a VEC are equipped with an onboard wireless device, particularly OBU; for example, the onboard radar of smart vehicle is able to slow down the vehicle automatically after detecting traffic congestion. In accident warning systems, sensors can be used to verify if the airbags were deployed when the accident took place. This information is then spread through V2V/V2I within the network [27].

3.1. Basic Components of the Smart Vehicle

Various intelligent systems are deployed within vehicles to offer real-time measurement and safety services [28]. All these devices can communicate with one another in a self-organized manner to create a body sensor network. The onboard sensors of the vehicle acquire the environmental information of the vehicle. At the sensor level, data such as sensor inputs, navigation services, temperature, behaviors detection, and image are gathered and stored in a storage unit for future processing. Based on this information, the vehicle can independently achieve automatic-driving control, including environment sensing, central decision making, and mechanical control.

The architecture of the system should be designed to help drivers to avoid accidents. To attain reliable and ample environment information, the smart vehicle is commonly equipped with multibeam lidars, microwave radars, high-resolution cameras, and so forth. As shown in Figure 3, usually, a smart vehicle is comprised of the following equipment and technologies:(1)CPU: it computes the instructions by performing arithmetic, logical, and I/O operations in an efficient way. Moreover, the communication and applications protocols are also implemented.(2)Wireless transceiver: it transmits data and information among vehicle to vehicle and vehicles to infrastructure.(3)GPS receiver: it receives the Global Positioning System’s information and gives support to provide navigation services. By integration with a communication means, a GPS could automatically report the vehicle’s precise position even with an accuracy of less than 1m. This gathered information facilitates organizing the formation of platoons and could offer relevant and prompt information about accidents, road condition, and so forth.(4)Sensors: various sensors are located internally and externally in a vehicle to measure different factors like speed, distance from surrounding vehicles, and so forth, for instance, an ultrasonic sensor based on sound waves, reflected by the objects. The reflected sound waves can be used to identify the distance and relative velocity of nearby objects.(5)I/O interface: it provides user’s friendly human-vehicle interaction.(6)RADAR: Radio Detection and Ranging monitors the position of neighboring vehicles. Automotive radars are classified as long-range radars and short-range radars. Such sensors are already used in adaptive cruise control systems.(7)LIDAR: Light Detection and Ranging, where the sensor has a one-dimensional scanning capability that can precisely measure the comparative distance of the vehicle by scanning the horizontal surface with laser beams. The sensor uses high-energy rays of the laser to transfer infrared light pulses with a wavelength, ranging from 850 to 950 nm [29].(8)OBU: Onboard Unit, where each vehicle in this system is armed with an OBU, which controls communication of vehicle with SRSUs, SMBSs, and other vehicles through DSRC/LTE-V [25].(9)LCS: Local Camera Sensor is the sensor which observes the behavior of the driver and also provides accurate and reliable object detection.

Technically the smart vehicle must be able to make accurate and reliable environment perception based on incomplete and uncertain information from heterogeneous and multimodal onboard sensors. Moreover, by integration of learning-based into rule-based decision making methods to address the challenges in imperfect environment detection and low predictable traffic participants, a smart vehicle can be able to make a decision and react accordingly.

3.2. A Network of the Smart Vehicles

The vehicular networks pose many challenges that were unknown in the recent past using traditional wireless communication systems. This fact is a result of the highly dynamic vehicular environment and the diverse QoS requirements. Various communication mechanisms have been introduced to tackle these challenges, for example, DSRC, the Federal Communications Commission (FCC) alloted 75 MHz in 5.9 GHz band for DSRC for V2V and V2I communications in USA, and the ITS-G5 in Europe, both based on the IEEE 802.11p standard. The 3rd Generation Partnership Project (3GPP) has initiated projects lately which support vehicle to everything (V2X) services in Long Term Evolution networks and the 5G cellular networks [30, 31]. Each vehicle moving on the road can get access to the information of the surrounding environment with the help of real-time information sharing applications and infrastructures. This forms the basis of road safety and traffic efficiency applications [32].

Generally, there are two types of vehicular communication: V2V and V2I. In addition, other entities such as vehicles, pedestrians, and roadside infrastructure can gather information of their surrounding environment (e.g., receive information from other vehicles or other sensor equipment in range) to process and share it so that more intelligent services could be provided. These services include cooperative collision warning and autonomous driving. A unique virtual vehicle coordination framework [33] has been discussed in our previous detailed overview of fog and big data importance, which would help in the deployment of future smart cities. Figure 4 represents the overall communication process of smart vehicles.

3.2.1. Intravehicle Communication

This term is coined to express communications within the vehicle. The OBUs, which are installed in the vehicles, are able to communicate within the vehicle (i.e., various sensors provide information like traffic congestion, brakes, accelerator, or other nearby objects).

3.2.2. Intervehicle Communication

It signifies communications between different vehicles or among vehicles and sensors that are installed in or on different locations, like roadways, parking lots, and so on. Intervehicle communication implies greater technical challenges as the vehicle communication needs to be once supported when the vehicles are stationary and while they are moving. There can be direct communication between vehicles. The communication of this nature permits the sharing of information between vehicles irrespective of the infrastructure. Nevertheless, V2V communication applies to a limited range. An extensive study has been carried out in the V2V communication environment. Alghamdi et al. [34] developed a system for V2V communication for carrying out intersection coordination to select which needs to go first. Al-Sultan et al. [35] used the systems that send corrective actions to other vehicles. In Zarza et al. [36] and Nassar et al. [37], the systems notify other vehicles of the accidents via V2V communication. Figure 5 represents the V2V mode of communication.

The applications like Road-Accident and Street Parking support V2V communication to enhance the communication range of the vehicular network. These applications share information between vehicles and roadside units when they are not in the range of each other. During this whole process, other vehicles act as intermediaries; they receive information and forward it to enter in the range of the SRSU.

3.2.3. Extravehicle Communication

The term extravehicular communication represents the communication between vehicle and the outside world, that is, V2I (vehicle to edge nodes, SRSU, SMBS, etc.).

Deploying edge computing environments along with the road can ensure communication between the moving vehicles. A vehicle can interact with the other approaching vehicles and notify them in case of any risk or traffic bottleneck and the number of pedestrians on the road. Moreover, edge computing facilitates accessible, trustworthy, and distributed environments that are in synchronization with the local sensors [38].

V2I allows the exchange of wireless information between vehicles and infrastructure (e.g., SRSU, SMBS etc.). As the OBU of the vehicles has limited processing and storage capacity, some applications rely on the edge servers as platform or middleware. In some cases, V2I communication is expected to access global information, for example, in gas-station systems. Likewise, some applications can extract weather information and traffic congestion via V2I communication. Figure 5 shows the V2I communication environment in detail.

3.3. Smart Vehicle Services

The smart vehicles provide numerous types of services. Some of these services, which include assistant driving, autonomous vehicle, platoon, and parking lots, are being described in the following sections.

3.3.1. Assistant Driving

These days, there are vehicles like cars, buses, and trains which are designed in such a way that they provide useful information, that is, accidents, closure of roads, and traffic jams with the help of sensors, actuators, and processors. This provides greater safety and better navigation of the vehicles. This information about the traffic patterns can be beneficial for various profit and nonprofit organizations [39]. The National Highway Traffic Safety Administration distributes intelligent vehicles into five layers [40]. Figure 6 depicts the development of autonomous vehicles from the intelligent vehicles, where the first four layers depict intelligent vehicles, while the last layer shows the fully self-driving (autonomous driving).

3.3.2. Autonomous Vehicle

With the evolution of the smart vehicles towards autonomous driving, there is a need to have maximum connectivity among these vehicles. Therefore, the rising vehicular networks are considered as the most significant component in the development of intelligent transportation system and smart cities. The vehicular networks are expected to provide various high-end applications, which range from road safety to improvement in the traffic efficiency and from automatic driving to uninterrupted access to the Internet services [30, 31]. Automated vehicles are becoming popular around the globe, which has caused a revolution in the automobile industry lately. However, there are many impediments like security, dependability, and privacy while having established fully automated versions of vehicles. This fact cannot be overlooked where the automated vehicles are prone to various security threats; for example, if an AV software is generalized, then a single attack can lead to many mishaps. Similarly, the systems that are connected through the Internet might be hacked by the unauthorized users and there are many more threats that are yet not known.

The vehicle is designed in such a way that it can anticipate the safety-critical issues and perform functions accordingly while monitoring the road conditions at the same time during the entire journey. This type of design assumes that the driver will provide the destination or navigation but she/he is not likely to be there for control during the entire trip. Therefore, safe operation is the function of the automated vehicular systems [41].

Though the automated vehicular system is quite different from the connected vehicular technology, it is related to the latter. The connected vehicular networks enable the vehicles to share information through the transportation infrastructure. Vehicles might also share sensor information with the neighboring vehicles, which can in return provide an AV with additional information on which the decision making can be based. Experts from the international forums like Business Insider and World Economic Forum foresee the impact of the automated vehicles on the overall economical avenue and the transition of the mode of moving from one place to another. In the future, we might see a switchover from the personal vehicles towards the ride of the automated vehicles like Uber or Lyft [42].

3.3.3. Platoon

A platoon is a group of smart vehicles, which have driving support systems where one vehicle follows the other one. The platoon is formed with a number of vehicles driven by technology and connected with each other through shared communication. Platooning is possible due to the development of various technologies named Advanced Driver Assistance Systems, Adaptive Cruise Control, Lane Departure Warning System, Blind Spot Information System, and Drowsiness Detection System which are fully equipped with sensors and actuators. Modern vehicles control processes; the human-machine interface and the amalgamation of these technologies help the vehicles to participate in cooperative platooning.

The fuel efficiency of heavy trucks can be enhanced using cooperative platooning as the speed changes can be anticipated, thereby causing the vehicle to maintain a steady speed. As the emission of carbon dioxide is directly proportional to fuel consumption, the cooperative platooning indirectly may reduce environmental pollution. Another benefit of cooperative platooning is the enhancement of road safety. In case of emergency, the message is delivered to all the vehicles in a platoon, and then a suitable mechanism is devised by the automated system accordingly; for example, in case of collisions among vehicles, an automated braking system will be enabled [43].

3.3.4. Parking Lots

In the urban areas, the number of parked vehicles in the parking lots is huge. Moreover, the parked vehicles are extensively distributed geographically in street parking, outer parking, and so on. The parking vehicles do not change their locations, unlike moving vehicles, for a certain long period. Therefore, these parked vehicles are not expected to carry information from place to place. Nonetheless, the parked vehicles act as communication infrastructures and have their own specified features. As the SSV is complemented with wireless communication devices and the rechargeable battery, it is easier for the parked SSVs to communicate with each other and these parked vehicles can even connect to the nearby moving SSVs. The parked SSVs, therefore, serve as static backbones for the improvement of connectivity among the vehicles. These SSVs can act as communication infrastructures by carrying and transferring data packets on to other vehicles. The parked SSVs become credible and easy communication nodes due to their abundance, long time of staying, and wide distribution within the urban area. The number of parked vehicles in a parking lot and the parking time are the key factors that influence the usage of parked vehicles as communication infrastructures [15].

Heavy computation tasks can be carried out through the collaboration of SSVs when they join under suitable communication conditions, that is, parking lots. According to [44], due to constrained resources, individual vehicles are not able to meet huge computation demands. To overcome this problem, the parked SSVs provide powerful underutilized computation resources and achieve the assigned tasks in less time efficiently. This environment can be regarded as small data centers and thus can perform tedious tasks that need greater computational capability. Figure 7 explains the parking lots environment.

3.4. Smart Vehicle Applications

VEC and the concept of utilizing smart vehicles as infrastructures have opened an arena of various associated vehicular applications, for example, driving safety, AR, infotainment services, and video streaming. For the applications where high computational processing is the demand, the VEC networks play an important role in rushing up computing, thereby minimizing the delay like if an accident takes place, we need to formulate a solution to reschedule traffic lights and to dissipate large traffic backlog in a suitable way. This has an exceptional demand in the computation resources [45]. In this section, applications have been divided into two groups, that is, safety applications and nonsafety applications. VEC supports both types of applications, which are discussed below. Table 2 shows different applications with their bandwidth, latency, and data requirement.

3.4.1. Safety Applications

This category of applications focuses on improving safety by limiting the chances of accidents. These applications keep track of the driving environment and notify the drivers of expected hazardous points to prevent accidents.

(a) Driving Safety. The Global Camera Sensor installed on a traffic control signal can pinpoint the motion in the area by identifying the specific number plates within the detection field area [46]. It can also record the present location together with the vehicle number to the local edge server [47]. A smart local camera sensor (LCS) is deployed at the vehicle’s front side to record the activities of the driver. Spatiotemporal video object segmentation technique is used to detect the interaction of the driver with the hand-held devices [48]. This LCS will give a warning message to the driver for this activity. Repetitive warnings at the right time will help the driver to avoid any hazardous situation and will keep him safe [49]. The LCS unit must be capable of generating these warning messages to the drivers [50]. After sending a certain number of messages, LCS reports to the edge server for disturbing exercise with the vehicle. The identifier includes the activity proof and the number of the vehicles.

(b) Context-Awareness. The context-aware systems use context information related to the user which can be used to modify their operations according to the environmental situations at any place and time. Context-aware applications are those applications that adapt the operations according to the context of the user, which is provided by sensing the contextual information specific to the environment [51]. The context-aware applications consist of the following parts [52]:(i)Context Acquisition: gathers context-specific information from different sensors.(ii)Processing: it applies reasoning techniques to obtain the contextual information.(iii)Acting: contextually facilitating the users according to their current place and time.

By the knowledge of context, it can also help to produce a context-aware concise information, which will utilize less radio resource for transmission. For instance, if a BS would like to transmit text information to a user, the BS can transmit only its contextual coded data. The user would extract the desired content just from the context by utilizing an appropriate decoder and big-data analytics technique such as NLP [53].

3.4.2. Nonsafety Applications

VEC applications stress not only upon the safety services but also on developing nonsafety applications, for example, multimedia applications like video streaming, AR, and infotainment services. The number of streaming applications has increased significantly and these contribute a large proportion of the network traffic.

(a) Video Streaming. Video streaming is an essential form of IoT communication [54] and it involves smartphones, for example, for video crowdsourcing [55]. The Internet of Vehicles (IoV) is used by various applications like intelligent transportation system and mobile multimedia. In IoV, the users connect their mobile phones through Internet connectivity and access the multimedia content from the remote servers. However, it is challenging to maintain the QoS while considering the parameters of the video streaming applications like jitter, buffering, throughput, and transmission delays. This challenge is faced due to the high mobility of vehicles in IoV. In [56], a distributed reliable real-time streaming in vehicular cloud-fog networks was proposed. A utility function is considered to improve the QoS of real-time streaming as well as the fairness of resource reservation between mobile devices. The utility function takes into account the provision of content for streaming and the number of tokens for the reservation of content from the service providers, edge, and cloud. Every mobile device, in a network, inquires its probable location, the amount of data for streaming, and thus the needed tokens for content provisioning expected to effectively reserve streaming content from computing service providers. In this way, the mobile device will have a high probability to receive a sufficient amount of content by paying a certain number of tokens. Therefore, the streaming utility can be augmented, hence making it more reliable.

Now, it is quite possible to visualize innovative solutions to the parking lot monitoring problem. As, in [57], a scheme based on an edge computing is projected in which each vehicle uploads the contents of the street collected by the camera for video analytics. ParkMaster makes the system capable of estimating the precise location for each parked vehicle. It can also track and count parked vehicles through the information provided by the vehicle’s camera, GPS, and inertial sensors.

(b) Augmented Reality. AR is an evolving multimedia application that incorporates real scenes into virtual scenes without a glitch and it can superpose the virtual scenes onto the real scenes and increase the conventional real image information. This technology can augment the traffic awareness of the vehicles or pedestrians within the vicinity of the drivers. In addition, the head-up display curtails the distractions for the drivers and thus increases driving safety. The head-up-display (HUD) based navigation system with AR-based contents is examined in [58]. Likewise, the HUD-based navigation system has also been studied for safety and convenience services [59]. Recently, an application is developed as walk navigation, which uses camera and GPS to execute a car navigation system with AR technology. It is very much convenient as it directs the driver through a virtual path. The driver is able to get the real-time navigation to get driving condition without hindering his safety.

The output of the device’s camera is analyzed by the edge computing application, thereby covering the objects viewed with AR content. AR involves complex storing operations and tedious data processing tasks; therefore, it needs an increased level of data storage, computation, and communication. The VEC is regarded as the best alternative to fulfill the demand of AR applications in a vehicular network with specific requirements of mobility, location awareness, and low latency.

(c) Infotainment Services. These types of services help to entertain the passengers and keep them informed while navigating towards their destination. The infotainment services are made part of many research projects in order to enhance the comfort of the vehicle occupants. For instance, a European research project is developed while emphasizing on the establishment of Cooperative Vehicle-Infrastructure Systems (CVIS). To ensure uninterrupted V2V and V2I communication, the CVIS is expected to deliver a number of convenience and business applications and safety applications. Fleetnet [60] is a German project and its prime goal is to provide a platform for V2V communications to provide a nonsafety application (e.g., web access) and safety services (e.g., cooperative driving). TracNet is an automotive vehicle Internet access system brought out by Microsoft. This project can bring internet services to the vehicular video screen. This can also turn the whole vehicle into an IEEE 802.11-based Wi-Fi hotspot; therefore, the handheld devices or laptops can also be connected to go online. Additionally, the aim of the infotainment services is to provide the travelers with the required information services and to entertain them to make the journey enjoyable, for example, maps downloads, automatic tolling systems, and parking payment systems.

4. VEC Technical Issues Categorization

In this section, some technical issues of VEC have been categorically highlighted. Table 3 gives a brief overview of this section.

4.1. Latency

Various upcoming vehicular applications need real-time mobility support (e.g., positioning systems and smart traffic lights). This factor makes network latency an important area to ponder upon. The long distance between the cloud and the vehicles is not the only parameter that causes latency. In addition, it may also be caused by the inability of routing an optimal path, delays in queueing, or various other factors. However, the new vehicular applications need a lot of computational capacity to process the complex tasks. To achieve less delay in the transmission of data and maximum throughput, some approaches have been categorized.

4.1.1. Routing Approach

Routing approach considers the geographic routing, that is, position-based routing, which makes decisions locally. A specific node, which transmits a data packet, is required to consider three positions, that is, its current position, destination position, and its one-hop neighbor. In [64], a routing scheme named improved geographic routing (IGR) was proposed, which aimed at the vehicles moving in a city environment. IGR makes use of the VEC to utilize computational resources and vehicular communication. In the updated greedy forwarding mode, the error rate of the link is treated in the path selection. The IGR shows a substantial improvement in the packet rate along with end-to-end delay.

In [65], a greedy approach of routing named Edge Node Based Greedy Routing (EBGR) was also presented. The prime objectives of EBGR are to augment the packet behavior for the network whose mobility is high and to enhance the reliability of the delivered messages. In EBGR, the forwarding of the packet takes place to the node, which is present at the edge of the transmission range of forwarding node along with the consideration of the nodes that are in direction of the destination. Prasanth et al. examined that the delay in the transmission of a packet can be minimized in comparison to the current routing protocols, that is, GSR, GPCR, and A-STAR, of VANET.

4.1.2. SDN Approach

This type of networking focuses on a logically centralized network control plane. It helps to implement a robust mechanism for the management of resources and traffic control. An SDN-oriented network provides flexibility, programmability, and knowledge of the network. Tomoviv et al. [66] presented a model for IoT which backs real-time data mobility and scalability. The integration of edge/fog computing and SDN can solve the latency issues in the services, which are sensitive and require real-time analysis. Efficient management and distribution of network services can also be achieved with this integration. Therefore, in [25], authors presented a VANET architecture known as FSDN, which integrates SDN and edge computing as a potential solution. They took into account the VANET components supported by SDN which have centralized control. These components consider various factors, for example, physical medium, mobility, and capability.

A software-defined mobile-edge vehicular networking was proposed in [67], where the most critical prerequisite for QoS for wireless services is the delay in the high-speed vehicular environment. To target the latency requisites in mobile scenarios, authors reveal an entire series of latency control mechanisms, from radio access steering to processing the caches at base stations. Sophisticated processing competency is a basic feature to consider while setting up vehicular technologies for the emerging driving machines, as these machines cannot rely only on wireless infrastructure to ensure the safety of the drivers.

4.1.3. 5G Approach

With the advent of 5G mobile communication networks, the performance of the existing vehicular networks can not only be enhanced but the new applications of vehicular networks can also be supported. In [68], a model of 5G software designed vehicular networks (SDVNs) is recommended which amalgamates the technologies of edge/fog and cloud computing. The edge/fog cell is developed at the edge of the 5G vehicular networks to avoid repeated handover between RSU and vehicles. A multihop approach is adopted for the vehicular communication within the edge/fog cell. 5G SDVNs are better than the conventional methods in terms of their throughput as well as transmission latency. 5G software defined vehicular networks have the potential to provide maximum flexibility and compatibility for the demands of future pilotless vehicles and ITSs. In [69], another 5G next-generation VANET model is designed which is based on the core of SDN, Cloud-RAN, and edge/fog computing technologies. The motive of this universal approach is to combine the SDN and CRAN specific features with the 5G communication technologies so the resources are properly allocated with a global approach. This model also resulted in better throughput and minimized delay.

A new architecture named Foud is examined in [70]. This is a hybrid-computing model for V2G networks. Foud, as the name indicates, provides edge/fog and cloud to the V2G networks. Temporary fog and permanent cloud are the two submodels, which make the infrastructure of Foud. Edge computing is used as a submodel of Foud due to the dynamic mobile communication resources. Moreover, 5G technologies are used to overcome the problem of extreme growth of the vehicular terminals and mobile data traffic.

4.2. Scheduling and Load-Balancing

Vehicle networks ensure an effective communication to improve the dissemination of data among vehicles. A large number of vehicles conduct the data dissemination, which results in an increase in the load. The recent scheduling algorithms are developed in such a way to adjust to the varying challenges of the queue length. One such algorithm is the classic shortest queue policy. The shortest queue would not imply a minimum waiting time; thus time-based scheduling proves to be more efficient and reliable. Therefore, Chen et al. [71] proposed a scheduling based on two dynamics, that is, response time and queue length. This enables having a varying communication environment for the vehicular communications. They formulated a three-layer vehicular cloud design that finds its origin in the edge/fog computing. The architecture is based on a compositional approach, which is known as PEPA. PEPA aids in the modeling of large-scale systems because of its characteristics of compositionality and abstraction. In [72], a distributed public vehicle (PV) scheduling system is projected which integrates edge computing technologies and vehicular sensing. This model includes the components of metadata collection, an approximation of costs, responding to requests, and PV scheduling. Edge nodes gather and save the metadata and these nodes act as intermediaries. The data is then sensed and extracted by vehicular networks. The PV system supports a heuristic insertion algorithm and a cooperative strategy between vehicle nodes, edge nodes (fog nodes), and the cloud to send requests as well as to schedule routes for PVs.

If an edge server fails, then recovering the lost connection and continuing the services require a demanding scheduling algorithm. In [73], authors put forward a real-time scheduling algorithm. As the connected vehicular environment is quite related to the MANET in terms of the varying components of the mobile environment, the presented model is different and an augmented form of the previous models, that is, Earliest Deadline First [74] and Most Requested First [75]. As this algorithm makes use of the existing algorithms and utilizes the edge server service queues, it gained better and near-optimal results in terms of the varying demands of delay.

The fragmented network devices in the edge computing networks have weak computational power. Therefore, how to allocate the tasks is important in IoV, which require computation and balancing the load according to the capacity of the equipment of edge networks. Therefore, in [76], an SDN-based MPSO-CO was presented, which is a centralized load-balancing algorithm. This is to optimize the workload between the edge/fog networks so the latency can be efficiently minimized and the QoS can be improved in the SDCFN (software defined cloud/fog networking) using the proposed architecture.

4.3. Offloading

Edge servers can curtail transmission cost and generate a fast response in the offloading services because of the closeness to the vehicular users. Despite the fast response rate, the edge servers usually face the limitation of the resources as compared to the conventional cloud servers, which have a large computational capacity. The edge servers take a certain time to perform the computation tasks. This is especially true for the edge servers located at the road segments, which have a high density of vehicles in comparison to others. In [77], a computational offloading infrastructure was analyzed, which stresses upon the computational effectiveness of the transfer frameworks of V2I and V2V modes of communication. Moreover, an efficient predictive combination-mode relegation scheme while taking into account the time consumption of the execution of the tasks and the mobility of the vehicles was also proposed. In this model, the tasks are offloaded to the MEC servers over direct uploading and predictive relay transmissions.

Saqib et al. [78] examined a reliable model for computation offloading which is named as FogR. It assumed that the fog networks could respond to any emergency with greater reliability in the smart traffic systems. If a certain edge node fails, the things will accordingly connect to some other edge/fog node that is available in their proximity. If a vehicle is trying to make its way toward its destination through traffic in case of an emergency, then it can easily do so using the smart traffic systems.

Y. Bi [79] proposed a cross-layer and neighboring vehicle-aided fast handoff approach to offer a user-friendly experience and enable them to always be connected online whenever they are running through the urban roads. The vehicle could take help from its neighboring vehicles in order to get the qualified vehicle, to specify the target AP, and to gather the relevant information before entering the coverage of the target AP. With this assistance from the neighboring vehicles, the vehicle can get the IP address by choosing the target AP. This can significantly reduce the handoff delay. In this prehandoff process, a vehicle can also continue its exchanging of data with the existing AP. This would help achieve high throughput.

4.4. Resource Management

Connectivity is a feature that needs to be embedded in the vehicles [80, 81], so connected vehicles are developed to increase the situational analysis and provide more information about the travel environment. In contrast, there is a great challenge in gathering, storing, and processing all the data of these vehicles and then the management of the resources is yet another task. Miao et al. [82] suggested a Fuzzy Logic based Resource Management scheme (FLRM) with edge computing in VANETs. The FLRM scheme administers the resources in a local server. In FLRM, the request time and download time are recorded by the V2I mode of communication. A survival time for each resource is determined using the collected information with the help of popularity evaluation algorithm based on fuzzy logic. The resource list can be updated by modular processing survival time. This proposed model manages resources efficiently and resources are shared to fulfill the demand of the users in case of dynamic topology, unstable connectivity, or limited storage capacity of local servers.

To transfer services from a source node to the target node, an edge server must have a sufficient number of resources. In reality, an edge node has an inadequate collection of resources and therefore these can become overloaded when many user’s requests arrive at once; for instance, at the time of peak traffic, it results in degraded performance. Reference [83] targeted the management strategies in each edge node (fog node), channeling resource management in FeRANs. The QoS is improved, focusing on real-time vehicular services. To support this, two schemes were introduced, named fog resource reservation and fog resource reallocation. The on-hop probability for real-time vehicular services is enhanced using this approach even when the fog resource is loaded.

Traffic congestion causes the loss of billions of dollars annually due to fuel consumption and lost time. In order to address these concerns, Brennand et al. [84] proposed a real-time mechanism for ITSs as FOX (Fast Offset XPath). This mechanism is used to monitor and manage the congestion of traffic in the VANETs. By taking edge/fog computing benefits, FOX mechanism could be able to cut down the average driving time, fuel consumption, and emission.

4.5. Security and Privacy

The security and privacy issues are usually prevalent in vehicular crowd sensing, which requires the user identity and location privacy to be protected. In this regard, various solutions have been proposed in the domain of crowdsensing and vehicle-based sensing. Edge computing, being an emerging paradigm, addresses these issues. Basudan et al. [85] presented a privacy-preserving protocol, which aims at improving security in a crowdsensing-based road condition monitoring system while making use of edge computing. Particularly, this proposition introduced certificateless aggregate signcryption scheme which is so effective in cutting communication overhead and also has a faster verification process. This scheme is said to have the minimum computational cost as compared to the other schemes [86, 87]. In addition to this, the system model considers a control center, RSUs, cloud servers, and vehicles to be the part of the road surface condition monitoring system.

The vehicular communication network, which is considered as an important element of intelligent transportation systems [88], supports several mobile applications from content sharing to the information-providing services [89]. Therefore, it is important to establish a method that is secure and ensures efficient data sharing. In [90], a data sharing scheme was projected, which analyzed a multiauthority CP-ABE scheme by effective decryption, while protecting a CP-ABE system safe against the collusion attack. The main decryption is put forward to Cloud. To ensure forward and backward security, they developed an effective user and multi-authority CP-ABE.

In VANETs, trust must be developed among vehicles to secure the integrity and ensure the reliability of applications. Reliable sources ensure the collection of credible information from the surrounding vehicles. Soleymani et al. [91] projected a fuzzy trust model which is considered to be fast, more accurate, and reliable so that the information received from the authorized vehicles is accurate and sound. This model conducts a series of security checks in order to ensure the credibility of the information received. In addition to this, the model not only detects the defective nodes and unauthorized attackers but also handles the uncertainty of data in the vehicular networks including both line-of-sight and non-line-of-sight scenarios. In [92], DREAMS was suggested where edge servers perform local reputation management tasks on vehicles. The projected system rises overall performance by maintaining a distributed reputation, ensuring trusted reputation, using available reputation, and updating accurate reputation. Most importantly, this model implements multiweighted logic to update the accurate reputation of the system. The resource allocation in computational offloading by the service providers is optimized based on the reputation of the vehicles. DREAMS is also able to augment any misbehavior detection and enhances the recognition rate of misbehaving vehicles.

All of the components in a large VANET are not trustworthy; therefore negative messages [93], which show the attributes of the nonreliable sources, are required to be generated in order to make VANET more secure. The distribution of negative messages is based on Meet-Table in VANET. Huang et al. [94] put forth a model named Meet-Fog, which is based on fog and Meet-Table techniques to accurately spread negative messages like CRL (Certificate Revocation List) in VANET. This scheme completely transfers the computing requirements to the edge instead of the cloud, thereby reducing the bandwidth and storage requirements of a cloud. In [95], an efficient revocation architecture for VANET was presented. This utilizes edge computing and Merkle hash tree which increases the effectiveness of the certificate status checking process. The amount of the revocation information can be curtailed, as the edge node is unique for every specific region, while the Merkle hash tree validates the integrity of the certificate status. Therefore, there is no need for the vehicles trusting the edge nodes. In this scheme, the verification delay is also reduced in comparison to other approaches using CRL checking.

5. Challenges

The proximity and decentralization of the service infrastructure to the edge provide different benefits for networks like low latency, efficient energy utilization, and greater throughput. The latest vehicles are being embedded with different sensors for processing and wireless communication capabilities. This has enabled many potential benefits to be exploited such as safety, efficiency, and comfort while they are on the road. However, different challenges to the VEC arise, which are illustrated in this section.

5.1. Mobility

Traditional models of sensor networks consider a static environment. Similarly, ad hoc network also focuses on limited mobility based on laptops and handheld devices carried by the users. However, mobility is a norm for vehicular networks. The patterns of mobility for the vehicles have a robust correlation. Each vehicle on the road has a constantly changing set of neighbors, some of which it has never come across before and is quite unlikely to have an interaction with in the future. This ever-changing nature of the vehicular dynamics can hinder the utility of reputation-based schemes. To rate different vehicles based on the reliability of their reports is dubious to prove useful; that is, any specific vehicle may not receive sufficient information from the same vehicle to make its decision about that vehicle. In addition, as two vehicles are likely to be in the communication range for a few seconds, we could not consider protocols, which require interaction between sender and receiver. An upgraded mobility model is needed so it can provide data related to the accurate vehicular behaviors, like vehicular speed, prediction of the vehicular reputation, and distributions in both space and time. In particular, we need to develop a more elaborate mobility model, which studies the mobility patterns accurately and precisely for different environments that are useful for practical applications. Knowledge of prevalent vehicular behaviors and mobility patterns can help conduct better communication and computational resource utilization. Therefore, mobility between edge nodes and between edge and cloud can also be studied. Contrary to conventional data centers, edge devices are geographically deployed over heterogeneous platforms. The QoS across platforms must also be optimized.

5.2. Routing and Forwarding

In the case of routing and forwarding, many questions arise like the switching of edge servers and their services from source to destination according to the movement of the vehicle.(1)Edge server switching: vehicles usually make decisions of their next move in a short span of time as the vehicles are constantly in motion at a blazing speed. Therefore, it is difficult to predict which particular vehicle is going to take its services from which one of the base stations or edge servers, based on traffic and public transportation information making the transition patterns of vehicles migration for predicting vehicles next location. Despite the fact that many techniques have been applied to determine the issue, still this is an open research problem and much work is needed to be done.(2)Service switching: as discussed above, when the vehicle changes its position from one edge server to another, then the services, which it was using from the previous edge server, would be transferred to a new edge server. In [96], an algorithm to predict the QoS for service recommendations was proposed. Although this algorithm works efficiently for the mobile user, it may not be quite efficient in a vehicular environment. This is a very complicated and delicate task to obtain timely and reliable service transmission between vehicles and edge servers in order to maintain the QoS in a vehicular environment.

5.3. Content Caching

Content caching such as prefetching and cooperative caching can be implemented in VEC. The caching contents could also include those elements that the vehicles have not requested but they catch those contents over the wireless connection. It may be useful for the vehicles to save and forward those unrequested contents (e.g., alarms generated in case of trouble). In addition to this, there are still gaps in caching policies that create the most effective temporal and spatial scope of the vehicular contents. By caching-in contents that are out of their spatial scope (e.g., emergency signals on the far-off side yet in the relevance area) and also caching-out the old contents (e.g., an hour ago traffic congestion information on a highway), furthermore, some more burning technical implications are as follows:(i)Although vehicle-to-vehicle communication can enhance the capacity of the network in terms of content caching, yet it is still not able to validate a reliable and high-rate data service for the vehicles due to the extremely dynamic and uncertain network topology and strict channel condition.(ii)Since the SRSUs are deployed in different locations and different network operators own them, the cooperation of the SRSUs to provide contents to the vehicles must be considered in terms of the pricing model.(iii)A caching scheme needs to be developed to enhance content hit rate with the minimum handover cost, by identifying cache size splitting, prevalent content updates, and ensuring mobility-aware caching for smooth handover even with high mobility of the vehicles.

Moreover, these vehicular caching systems require such strategies, which by taking into account the topographies and network configurations efficiently explore the advantages.

5.4. Deployment of Network Elements

A sufficient number of network elements enhance the network’s performance on a large scale. Since the deployment of the network equipment incurs a high cost, it is essential to optimally install an appropriate number of the network elements. The major concern is to find a suitable location so the efficiency of vehicular networks can be maximized. In addition to this, the cost must be optimized and also the edge servers and SRSUs should be deployed at such points where the available resources can be managed optimally. Due to varied traffic distribution in the urban environment, more servers are deployed in the congested areas. As servers play a vital role in sending traffic packets, the SRSUs present next to the servers cause the traffic packets to enter the infrastructure without any need for multihop communications. Through the infrastructure, these packets would be transferred to other nodes in the network. By accessing, the infrastructure through fewer hops exceedingly cuts the receiving time of servers that are sending messages to the other nodes. Therefore, it is ultimately required to develop an optimal model, which measures the minimum need of edge servers as well as SRSUs to be deployed in order to minimize the deployment cost and maximize the QoS.

5.5. Security and Privacy

The dynamics of the vehicular networks, their flexibility, and nonrigidness have put the security and privacy of data into question with the prime challenge being the authentication security [22]. As the vehicular edge, nodes act as access points to the hybrid clouds, which comprise edge nodes and the central cloud, so there is a risk of infringement of security and privacy. A hacker can send illegal commands and proscribed messages while having access to any of the edge nodes. This can result in the unreliability of the services provided by the network [97]. In addition to this, the user’s privacy is also at risk in the case of the network being hacked as the hackers can have access to the private information of the clients. In the smart grid networks, Diffie-Hellman key exchange [98] and public key infrastructure [99] strengthened frameworks for the authentication issues. Moreover, Fan et al. [90] examined novel multiauthority CP-ABE scheme with the most effective decryption to comprehend data access control in a vehicular network and design an efficient user and attribute revocation methodology. However, there are still many security issues that are likely to arise due to the high expansion rate of vehicular edge networks. More dynamic frameworks need to be established to better encrypt the information so that the security and privacy cannot be breached and the edge computing becomes more secure.

6. Conclusion

In this paper, we have discussed the architecture for VEC, which was developed to support a high level of scalability, real-time data delivery, and mobility. VEC is regarded as a suitable model for vehicles as it is able to reduce latency for services that require real-time decision making. Thus, VEC also greatly enhances the computational performance as compared to traditional systems by promoting smart vehicular computing and making the best use of currently underutilized computational resources of the individual vehicle. Further, a wide range overview has been conducted on the study of previous work of VEC. Moreover, we have discussed several future directions and open challenges for academics and researchers related to this field.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work was supported by the National Natural Science Foundation of China (61602054 and 61571066).