Seminar Report on Edge Computing (Subject Code: MCO2S01) By JASON MARANDI M.Tech 1st Sem Roll No: 32013211 COMPUTER ENGINEERING(Cyber Security) December 7,2020 DEPARTMENT OF COMPUTER ENGINEERING NATIONAL INSTITUTE OF TECHNOLOGY KURUKSHETRA,HARYANA - 136119 ABSTRACT The centralized cloud computing infrastructure provides storage and processing capabilities for large volume of data produced by different devices. These data need to be transferred through communication channel from the place it is generated to the Cloud. Thus it result in high bandwidth bandwidth requirement and latency. Thus the concept of Edge Computing arises which is, to bring the computation of the data closer to the point of its origin. In many real time applications such as financial transactions, health care, gaming, autonomous vehicles etc. a very low levels of latency can be tolerated. Thus to reduce latency and and save bandwidth Edge Computation can be used at the edge of the network. Some of the implementations of edge computing such as Fog Computing, Mobile Edge Computing(MEC) and Cloudlets has been discussed in this report. Keywords: Cloud Computing, Edge Computing, Fog Computing, Mobile Edge Computing, Cloudlet. i Contents Abstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i List of Figures iii List of Tables iv 1 Introduction 1.1 Origin and Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 2 2 Cloud Computing 3 3 Edge Computing 3.1 Proprties of Edge Computing [3] . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Layered components of Edge Computing . . . . . . . . . . . . . . . . . . . 5 6 7 4 Implementations of Edge Computing 4.1 Mobile Edge Computing(MEC) . . . 4.2 Fog Computing . . . . . . . . . . . . 4.3 Cloudlets . . . . . . . . . . . . . . . 4.4 Comparison of Inmplementations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 9 10 10 11 5 Use Cases 12 6 Challenges 13 7 Conclusion 14 Bibliography 15 ii List of Figures 2.1 Client-server model diagram . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3.1 3.2 3.3 Edge in client-server model . . . . . . . . . . . . . . . . . . . . . . . . . . . Edge Computing model diagram . . . . . . . . . . . . . . . . . . . . . . . . General overview of edge computing components . . . . . . . . . . . . . . . 5 6 7 4.1 4.2 4.3 Mobile Edge Computing Infrastructure . . . . . . . . . . . . . . . . . . . . Fog Computing Infrastructure . . . . . . . . . . . . . . . . . . . . . . . . . Fog Computing Infrastructure . . . . . . . . . . . . . . . . . . . . . . . . . 9 10 10 iii List of Tables 4.1 Comparision of Edge Computing Implementations . . . . . . . . . . . . . . iv 11 Chapter 1 Introduction The rapid development of technology has seen an increase in the number of devices in recent years. The rise in the number of devices means the increase in the volume of data generated. And this will continue to rise as the devices connected to the internet increases. Managing and processing this large volume is data is a challenging task. Cloud Computing being a resource rich solution in terms of storage and computation can deal with such huge volume of data. But the problem rises in transmission of data. Sending all the data generated by the edge devices to a centralized data center or to the cloud causes bandwidth and latency issues. . In some application scenarios that require realtime feedback, such as traffic monitoring, financial transaction, autonomous vehicles etc., cloud computing will not be able to meet business real-time requirements. Here the Edge Computing comes to play. Edge computing offers a more efficient alternative i.e. data is to be processed and analyzed closer to the point where it’s created. Therefore data does not have to traverse over a network to a cloud or data center to be processed, and hence we can save bandwidth and decrease the latency. 1.1 Origin and Background The roots of edge computing reach back to the late 1990s, when Akamai introduced content delivery networks (CDNs) to accelerate web performance. A CDN uses nodes at the edge close to users to prefetch and cache web content. CDNs are especially valuable for video content, because the bandwidth savings from caching can be substantial. In 1997, Brian Noble and his colleagues first demonstrated edge computing’s potential value to mobile computing. They showed how speech recognition could be implemented with acceptable performance on a resource-limited mobile device by offloading computation to a nearby server. Edge computing generalizes and extends the CDN concept by leveraging cloud computing infrastructure. As with CDNs, the proximity of cloudlets to end users is crucial. However, instead of being limited to caching web content, a cloudlet can run arbitrary code just as in cloud computing. This code is typically encapsulated in a virtual machine (VM) or a 1 lighter-weight container for isolation, safety, resource management, and metering. 1.2 Concept The increase of devices at the edge of the network is producing a massive amount of data to be computed at data centers, pushing network bandwidth requirements to the limit. Despite the improvements of network technology, data centers cannot guarantee acceptable transfer rates and response times, which could be a critical requirement for many applications. Furthermore, devices at the edge constantly consume data coming from the cloud, forcing companies to build content delivery networks to decentralize data and service provisioning, leveraging physical proximity to the end user. In a similar way, the aim of Edge Computing is to move the computation away from data centers towards the edge of the network, exploiting smart objects, mobile phones or network gateways to perform tasks and provide services on behalf of the cloud. By moving services to the edge, it is possible to provide content caching, service delivery, storage and computation, resulting in better response times and transfer rates. 2 Chapter 2 Cloud Computing It is the practice of using a network of remote servers hosted on the internet to store, manage, and process data, rather than a local server or a personal computer. Cloud also know as data center. A data center traditionally refers to server hardware on your premises to store and access data through your local network. Figure 2.1: Client-server model diagram In Figure 2.1 we can see the view of Cloud Computing model.In these types of model most of the work is done by the central server and the clients only interact as needed.. If you’ve ever used an email client or a web browser, this should be familiar. While you may compose your email or read a web page on your device, the server is what handles the background routing and formatting of your emails or the rendering of the web content, 3 usually coupled with resources pulled from a database. Services provided by Cloud Computing: Infrastructure as a Service (IaaS) Platform as a Service (PaaS) Software as a Service (SaaS) Cloud is capable of dealing with large volume data which require storage and computation power to process it. Now, to use the services of cloud computing the data must first be transferred to the cloud which is generally far from where the data is generated or needed. Nowadays data generated by edge device are generally huge in volume. Thus, transmission of such large volume of data over the internet give rise to issue of bandwidth and latency. Therefore centralized cloud computing suffers from bandwidth issue and latency. Introducing Edge Computing solve the issue of latency and save bandwidth, as computation is done locally at the edge of network. 4 Chapter 3 Edge Computing To define Edge Computing let us first define what is an edge. An Edge is any computing and network resources along the path between data sources and cloud data centers as shown in Figure 2.2. Figure 3.1: Edge in client-server model Thus Edge Computing can be defined broadly as all computing outside the cloud happening at the edge of the network. Generally near the source of the data. More formal definition of edge computing is ”Edge computing is a distributed computing paradigm that brings computation and data storage closer to the location where it is needed, to improve response times and save bandwidth”. Edge can relate to data processing as well as local processing of the real time data. The various edge components that can be counted upon are Data processing and storing. Edge computing enables data stream acceleration, including real-time data processing without latency. It allows smart applications and devices to respond to data almost instantaneously as it’s being created, eliminating lag time. Edge computing allows for efficient data processing in that large amounts of data can be processed near the source, reducing Internet bandwidth usage. This both eliminates costs and ensures that applications can be used effectively in remote locations. In addition, the ability to process data without ever putting it into a public cloud adds a useful property for securing of sensitive data. 5 Figure 3.2: Edge Computing model diagram 3.1 Proprties of Edge Computing [3] 1. Proximity: In Edge computing, computation resources and services are available in the proximity of the users that can improve their experience. 2. Dense Geographical Distribution: Edge computing brings the Cloud services closer to the user by deploying numerous computing platforms at the edge the network. The platforms/devices are densely distributed across the geographical region. 3. Mobility Support: As the number of mobile devices is rapidly growing, Edge computing also supports mobility, such as the Locator ID Separation Protocol (LISP), to communicate directly with mobile devices. 4. Location Awareness: The location awareness attribute of Edge computing allows the mobile users to access services from that Edge server closest to their physical location. 5. Low Latency: The low latency property of Edge computing enables the users to execute their resource-intensive and delay-sensitive applications on the resource-rich Edge devices (e.g. router, access point, base station, or dedicated server). Some terms related to Edge Computing: 6 Edge Node:An edge node is a generic way of referring to any edge device, edge server, or edge gateway on which edge computing can be performed. Edge Devices:Any device which produces data like sensors, or any embedded systems through which data is collected and delivered. Edge Clusters/Servers:An edge cluster/server is a general-purpose IT computer that is located in a remote operations facility and act as a sever. Edge Gateways: An edge gateway are devices that serves as a network entry point for other edge devices that are connected to the cloud services. Edge cloud: Edge clouds are micro-data centers that can store, analyze, and process data near to the edge devices. 3.2 Layered components of Edge Computing Edge computing involves multiple layers of abstraction that organize tasks and resources to allow for heterogeneous, distributed tasks to be concurrently processed on heterogenous, distributed hardware in a managed fashion. This may vary from implementation to implementation as Edge Computing is a new and emerging field. Figure 3.3: General overview of edge computing components 1. Distributed data and infrastructure: This layer deals with how devices and data sources are organized into networks and hierarchies that structure how they can and will be used by the layers above them.This abstraction can reorganize, for instance, devices into contained groups by device class, department of use, or ownership, with needing to relocate the physical device to allow for segmentation to take place at the network level. 7 2. Data transport and integration service bus: The data transport and information service bus, or data layer for short, handles direct communication paths between hosts in your distributed infrastructure. These paths can serve a couple of purposes: to handle framework control messages, as in the integration service bus, or to pass data messages, as in the data transport. 3. Semantic data layer: A semantic data layer is a layer of abstraction that provides a consistent way of interpreting data. It deals with what kind of data is being used. 4. Application layer: The application layer is the most visible to the user of an edge computing framework. In this layer, one or more functions, or small pieces of computation to be performed, are distributed over the framework, either statically, automatically, or dynamically (if efficient resource scheduling is provided). These functions perform predefined tasks, usually on incoming data, and, if necessary, provide the results of their computation to other functions. End users can either use existing functions compatible with their chosen edge computing framework or write their own as the software allows. 8 Chapter 4 Implementations of Edge Computing Edge Computing is implemented in following 3 ways [5]: 4.1 Mobile Edge Computing(MEC) MEC can be defined as an implementation of Edge Computing to bring computational and storage capacities to the edge of the network within the Radio Access Network to reduce latency and improve context awareness. The MEC nodes or servers are usually co-located with the Radio Network Controller or a macro base-station. Figure 4.1 depicts the infrastructure of MEC. Figure 4.1: Mobile Edge Computing Infrastructure 9 4.2 Fog Computing The Fog Computing implementation is a decentralized Computing infrastructure based on Fog Computing Nodes (FCNs) placed at any point of the architecture between the end devices and the cloud. The FCNs are heterogeneous in nature and thus can be based on different kinds of elements including devices such as gateways, switches, routers, servers, etc. Figure 4.2: Fog Computing Infrastructure 4.3 Cloudlets A Cloudlet can be defined as a trusted cluster of computers, well connected to the Internet, with resources available to use for nearby mobile devices. A cloudlet is viewed as a “data center in a box” whose goal is to “bring the cloud closer”. They have lighter computing capabilities than clouds. Figure 4.3: Fog Computing Infrastructure 10 4.4 Comparison of Inmplementations In table 4.1 comparison of edge computing implementations is given based on how they work,where they are located and in which devices they could be implemented. EC Elements Node Device Node location Software Architecture Context awareness Proximity Access Mechanisms Internode Communication Fog Computing Mobile Edge Computing Routers,Switches,Access Servers running in points,Gateways base stations Varying between End Radio Network ConDevices and Cloud troller/Macro Base Station Fog Abstraction Layer Mobile Orchestrator based based Medium High One or Multiple Hops One Hop Bluetooth,WiMobile Networks Fi,Mobile Networks,Wired Cable Supported Partial Cloudlets Data Center in a box Local/Outdoor installation Cloudlet Agent based Low One Hop Wi-Fi,Wired Cable Partial Table 4.1: Comparision of Edge Computing Implementations 11 Chapter 5 Use Cases Following are few use cases of Edge Computing: 1. Automotive: While driving all the information coming through sound, vision, movement, and all our other senses are processed to give us a sense of the environment and what we need to do to maintain the vehicle’s desired course. In autonomous vehicles, this information is ingested through sensors, and needs to be processed on the fly too. The processing should be close to vehicle for making real time decision. 2. Manufacturing: With Industry 4.0 initiatives moving from the pilot stages to mass deployments, industrial leaders are starting to experience speed limitations in data transmissions. Indeed, to support more advanced networks of Industrial IoT devices, and ultimately – fully automated factories, a greater level of resilience, speed and bandwidth is required. Again, edge architecture could deliver that. 3. Augmented Reality (AR) and Virtual Reality (VR): Edge computing gaming applications also multiplied in recent years due to the rising demand for AR/VR gaming experiences. The current roadblock to wider adoption, however, is high gaming hardware costs. As VR apps require significant computational power and storage for visualizations, gamers need to purchase expensive head-mounted displays, consoles, and PC rigs. Edge computing could majorly democratize the costs of VR and spur its adoption in other industries such as education, hospitality, or travel. 4. Health Care: In many hospitals, there are hundreds of systems generating quite a large amount of data in different formats and levels of quality. Each medical practitioner has his or her own ways to label the data, making it difficult to use the information produced by different practitioners. Edge computing makes it possible to leverage collaborative machine learning to use all related data on multiple sites. And because such highly personal data can’t ever leave the hospital due to privacy concerns, this type of analysis must happen at the edge. Also, by enabling edge computing, crucial data can be transmitted from the ambulance to the hospital in real time, saving time and arming emergency department teams with the knowledge they need to save lives. 12 Chapter 6 Challenges 1. General Purpose Computing on Edge Nodes: Making general purpose edge nodes that can do the computation. In [5] theory edge computing is incorporated in devices like routers, gateway, base stations etc. but in practical this may decrease the efficiency of the main purpose of that particular device. So general purpose devices are needed. 2. Discovering Edge Nodes: Discovering resources and services in a distributed computing environment means finding appropriate edge nodes that can that can be leveraged in a decentralised cloud set up. 3. Partitioning and Offloading Tasks: In a distributed environment making use of edge nodes for offloading computations poses the challenge of partitioning computational tasks efficiently among the edge nodes. 4. Uncompromising Quality-of-Service (QoS) and Experience (QoE): Quality delivered by the edge nodes can be captured by QoS and quality delivered to the user by QoE. For example if edge computing is implemented in a base station then the services provided by base station should remain uncompromised after implementing base station. 5. Using Edge Nodes Publicly and Securely: Edge nodes will be used publicly so securing data in the edge computing environment is a challenge on its own. Right from the devices that generate data, then in transmission channel while transmitting the data to edge servers and also securing the edge servers. 13 Chapter 7 Conclusion Edge Computing try to overcome the problem of latency and bandwidth caused in the centralized cloud computing, by doing the computing at the edge of the network i.e. where the data is generated and needed. Implementations of Edge Computing are in the form of Mobile edge Computing(MEC), Fog Computing and Cloudlet, all carry the same concept that is bringing computation of cloud to the edge of the network but they differ in some set of features. Edge computing is considered as new technology and there is a lack of standardization. 14 Bibliography [1] K. Dolui and S. K. Datta, ”Comparison of edge computing implementations: Fog computing, cloudlet and mobile edge computing,” 2017 Global Internet of Things Summit (GIoTS), Geneva, 2017, pp. 1-6, doi: 10.1109/GIOTS.2017.8016213. [2] M. Satyanarayanan, ”The Emergence of Edge Computing,” in Computer, vol. 50, no. 1, pp. 30-39, Jan. 2017, doi: 10.1109/MC.2017.9. [3] Wazir Zada Khana , Ejaz Ahmedb , Saqib Hakakb , Ibrar Yaqoobc , Arif Ahmedd (2019). Edge computing: A survey. Future Generation Computer Systems. 97. 10.1016/j.future.2019.02.05. [4] Blesson Varghese, Nan Wang, Sakil Barbhuiya, Peter Kilpatrick and Dimitrios S. Nikolopoulos. (2016). Challenges and Opportunities in Edge Computing. [5] K. Dolui and S. K. Datta, ”Comparison of edge computing implementations: Fog computing, cloudlet and mobile edge computing,” 2017 Global Internet of Things Summit (GIoTS), Geneva, 2017, pp. 1-6, doi: 10.1109/GIOTS.2017.8016213. [6] Making Sense of Edge Computing by Cody Bumgardner and Caylin Hickey. https://www.manning.com/books/making-sense-of-edge-computing 15