## 2 Edge Computing and Related Computing Paradigms
### Edge Computing  
The storage, management, and processing power of data generated by connected devices have been enhanced by edge computing. In contrast to MCC, edge computing has been placed in close proximity to IoT devices at the edge of the network. It is worth mentioning that edge is as close as one hop from IoT devices and not placed on those devices. Nevertheless, it is possible that edge is more than one hop far from IoT devices in the local IoT network. According to OpenEdge Computing, computation in edge computing is performed at the edge of the network via small data centers in the vicinity of users [41]. The main purpose of edge computing is to provide storage and computation resources in close proximity to the user in a way that is omnipresent [41]. Edge computing is a pivotal computing model for IoT devices--the filtering, preprocessing, and aggregating of IoT data is performed using cloud centers placed in the vicinity of IoT devices [42]. The main advantages of edge computing are as follows [31, 34, 42, 43]:  
* Improve system performance: the most important advantage of edge computing in IoT is achieving ms-level of data processing. Edge computing reduces the overall delay of the system and the demand for communication bandwidth and improves the overall performance of the system. * Protect data security and privacy: cloud platform service providers offer a comprehensive system of centralized data security protection solutions to their customers. However, once centralized stored data becomes leaked, it will lead to serious consequences. In contrast, edge computing allows deploying the most appropriate security solutions in the local vicinity, and most of the computation can be performed on the edge of the network, so less data need to be transferred. Therefore, it reduces the risk of data leakage during the transmission and the amount of stored data in the cloud platform; thus, security and privacy risks will be decreased. IoT devices collect a large amount of data that can contain some sensitive information (e.g., global positioning system (GPS) data, streams from cameras/microphones). An application might need this information to run complex analytics in the cloud; it is important to preserve the privacy of sensitive context once the data leaves where it was generated. Using edge computing, the sensitive data can be preprocessed onsite and passed through a first layer of anonymization, and then the privacy complaint data can be sent to the cloud for further analysis. * Reduce latency: latency in edge computing has been reduced compared with MCC and cloud computing because of the proximity to users. However, if the local computation unit is not powerful enough, the latency in edge computing can be worse than in MCC and cloud computing. * Reduce operational costs: transferring data directly to the cloud platform requires substantial operational costs for data transmission, good bandwidth, and delay characteristics. In contrast, edge computing can reduce data uploading volume; therefore, data transmission volume, bandwidth consumption, and latency will be reduced, consequently reducing operational costs. * High service availability: availability of services is also superior in edge computing; there is no waiting time for a centralized platform to provide the services, and there is no limitation of resources, such as in traditional mobile computing. In contrast to MACC (see Section 2.4.2), edge computing contains small data centers, while MACC basically does not require a data center. Therefore, the availability of services is higher in edge computing. In addition, edge computing can form peer-to-peer and cloud computing hybrid models, so it benefits from broader computing capabilities than does MACC [44]. * Be robust to connectivity issues: when part of the computations can be run directly on the edge, applications will not be disrupted by limited or intermittent network connectivity. This is especially beneficial when applications are running on remote locations with poor network coverage.