Cloud Edge Computing for Internet of Things Elasticity Management Rayene Moudjari Zaidi Sahnoun Allel Hadjali LIRE Laboratory, Constantine II LIRE Laboratory, Constantine II LIAS, ENSMA University Abdelhamid Mehri University Abdelhamid Mehri Poitiers, France Constantine, Algeria Constantine, Algeria allelhadjali@ensma.fr rayanemath@gmail.com sahnounz@yahoo.fr sent back to the sensors and devices. This process creates great pressure on the network, specifically in the data transmission costs of bandwidth and resources. Abstract Thus, supporting the billion connected things’ huge amount of generated data, which are generally referred A major ingredient that encourages the Cloud to as big data, based on Cloud exclusively is not an computing solution wide adoption is their efficient solution. Especially, IoT applications that are ability to allocate and des-allocate resources in time-sensitive where very short response times are non- automatic and optimal manner according to negotiable. To this end, centralized big data processing customer’s need or what is referred to Cloud era have pushed the horizon of a new computing Elasticity. Nowadays, with the emerging paradigm called “Edge Computing” [Shi16]. This new Cloud edge computing for IoT’s systems, the paradigm proposes substantial computing and storage existing centralized elasticity management resources placed at the Internet’s edge in close solution must be revisited to cover the proximity to mobile devices or sensors. The edge introduced new requirements. In this paper, we computing has the potential to address the computing provide a first analysis step towards the Cloud capability limitation, the concerns of response time Edge computing elasticity management requirement, bandwidth cost saving, as well as data solution. safety and privacy. Keywords: Elasticity; Cloud Computing; In recent years, due to elasticity property usefulness, Edge Computing; Internet of Things. different works [Nas16, Gal12] have investigated the issues related to elasticity improvement. However, most 1. Introduction of them consider elasticity control or management in Over the past decades, Cloud Computing has been the Cloud computing specific environments, characterized model of choice for exposing resources as services, by centralized, large datacenters [Par16, Dup15, and which means shielding users from the complexity of the Moh15]. Actually, with the cloud edge computing cyber-physical world’s resources, describing resources emergence, systems are more complex, with geo- in a machine-readable format so they can be distribution, built upon several abstraction layers (As a discovered, and shifting the burden of managing result of multi paradigms convergence: IoT, Edge resources internally to Cloud providers’ in-return of a Computing, Cloud Computing). Such new fee (pay-as-you-go) [Mel11]. characteristics impose new advanced mechanism rather With the progressing development of information the traditional centralized one, for a decentralized technology, Internet of Things (IoT) has come to play a elasticity management solution able to cover systems crucial role in our daily lives. It is driving a digital new requirements. transformation in all current modern lives aspects. IoT The present paper constitutes an initiative or a first refers to the interaction and communication between step towards elasticity management in cloud edge billions of devices that produce and exchange data computing system. We analyze elasticity solution related to real-world objects [Atz10]. dimensions for complex, geo-distributed systems Cloud Computing has been used as a complementary running on edge and cloud computing, their technology for IoT due to its scalable and distributed requirements, and possible or revisited solutions for data management scheme. In conventional Cloud decentralized Cloud edge computing elasticity Computing, all data must be uploaded to centralized management. The paper is organized as follows; servers, and after computation, the results need to be Section 2 provides an overview about elasticity; Section 3 presents an analysis of Cloud edge computing Copyright © by the paper’s authors. Copying permitted only for private elasticity management solution. Finally, we conclude and academic purposes. the paper in Section 4 with ongoing works. In: A. Editor, B. Coeditor (eds.): Proceedings of the XYZ Workshop, Location, Country, DD-MMM-YYYY, published at http://ceur-ws.org Page 130 Cloud Edge Computing for Internet of Things Elasticity Management ICAASE'2018 2. Overview of Elasticity addition to its internal storage / computing capabilities, edge/ cloud computing may relay data to other edge/ One of the key factors motivating Cloud Computing cloud computing so that it uses external popularity is Elasticity property, which is considered as storage/computing capabilities (Figure 2, Figure 3). unique characteristic of Cloud paradigm compared to the other technologies. Elasticity is the degree to which a system is able to adapt to workload changes by allocating and des -allocating resources in autonomic manner, such that at each point in time the available resources match the current demand as close as possible [Her13]. Thus, the elastic service should be able to collect new computing resources when their workload is increased, but also to discard any exceeding resources when workload is decreased. According to Galante and de Bona classification [Gal12], the Cloud elastic resource provisioning is ensured through three elementary methods: Horizontal scale, Vertical scale, and Migration.The emerging systems and services are characterized by the combination and the integration of different paradigms. Figure 1: Thing’s Life Cycle These paradigms turn out to be particularly effective in moving computation and storage capabilities closer to data production sources and data consumption destinations. Recently, most of introduced solutions consider elasticity at large-scale and centralized Cloud data centers [Par16] or less frequently in distributed edge/fog environments. Managing elasticity at Cloud Edge computing is a new research direction that must be explored. 3. Cloud Edge Computing Elasticity Cloud and edge computing complement each other to form a mutually beneficial and inter-dependent service continuum. Some functions are naturally more Figure 2: Edge Computing Life Cycle advantageous to carry out in centralized Cloud, while others are better suited to the edge. This complementary relation is described in [Maa18] through possible Cloud Edge Computing scenarios. Thing’s life cycle is defined around three functions (Figure 1): Sensing (collecting/ capturing data); Actuating (processing data); and Communicating (distributing data). Similarly, Edge and Cloud Computing life cycle is defined around three functions (Figure2, Figure 3). Depending on application requirement, the edge/ cloud computing supports: Storing (saving data that was submitted by things, other edges, and/or clouds); Processing (acting on data that was submitted by things, other edges, and/or clouds); and relaying (transferring data to other parties). In Figure 3: Cloud Computing Life Cycle International Conference on Advanced Aspects of Software Engineering Page 131 ICAASE, December, 01-02, 2018 Cloud Edge Computing for Internet of Things Elasticity Management ICAASE'2018 The Cloud Edge Computing life cycle analysis According to pre-described life cycle, the presence of conducts us to define new possible elasticity multiple layers with different computing capabilities, dimensions by coordinating, horizontally and vertically, leads to new elasticity dimensions definition. The the system layers (Edge / Cloud Computing). For more introduced dimensions are a result of system new layers visibility, we propose Cloud Edge Computing for IoTs coordination (see Figure 4), principally: model (Figure 4). The architecture considers three  Inter Edges elasticity: defined by Edges layers: cooperation establishment. In this case, edge  IoT Devices layer (Front-End): consists of servers relay some data to external edges for mobile IoT devices that can use sensors to storage/ processing. This solution is performed sense information from their surrounding horizontally in system intra layer level (edge environment and utilize actuators to modify it. computing layer). They are deployed at the front end of the edge  Inter Cloud Edge elasticity: in contrary to the computing structure. first one, this solution is performed vertically  Edge Computing Layer (Near-End): consists in system inter layers level (Cloud/edge of multiple distributed nodes (edge servers computing layers). It is defined by Cloud- with medium computational capacity and Edge Cooperation establishment. The edge (or limited storage) that provide functionalities for Cloud) servers relay some data to external IoT devices under the orchestration of the Clouds (or edges) for storage/ processing. cloud computing layer.  Cloud Computing Layer (Far-End): defines Despite cloud edge computing new elasticity the cloud servers in the far end environment dimensions possibilities, resulting from multiple layers that provide more computing power and more computing capabilities convergence, different data storage. challenges must be explored and solved to ensure the desired elastic behavior. As reported by [Car18], managing elasticity for such emerging paradigms is crucial but in the same time challenging task. The first faced problem is determining which elasticity strategy to be executed. In other words, when it is more convenient to use resources from the same layer (edge / or Cloud)? When we should take resources from multiples layers? It is more advantageous, and for which property (cost, time, availability ...) resources should be taken by the same, or multiple layers? Second, along the past years, the reference model for elasticity management for Cloud systems is the IBM autonomic control MAPE (Monitor, Analyze, Plane, and Execute) loop [Jac04]. To realize elasticity, we need to observe the system state evolution, define the elasticity adaptation to be performed, and finally reconfigure the system. Now, with the emergence of new complex, distributed Cloud edge computing environments, managing elasticity according to a single centralized decisional MAPE loop may not be sufficient, so multiples MAPE loops may be introduced to cooperatively make decision. For this purpose, different suggested design patterns [Wey13] must be explored, analyzed and adapted to Cloud edge Figure 4: Cloud Edge Computing Elasticity Dimensions computing system context. International Conference on Advanced Aspects of Software Engineering Page 132 ICAASE, December, 01-02, 2018 Cloud Edge Computing for Internet of Things Elasticity Management ICAASE'2018 In previous works [Mou17, Mou18], we proposed a [Shi 16] W.Shi , J.Cao, Q.Zhang , J.Cao, Q.Zhang, Y. Li, and L. Xu, “Edge computing: Vision and challenges,” IEEE Internet multi agent system for cloud of clouds elasticity of Things Journal, vol. 3, no. 5, p.637–646, 2016. management. The system development is inspired from [Nas 16] A. Naskos, Cloud elasticity: a survey, algorithmic aspects IBM autonomic control loop, principally three of cloud, Computing, p.151–167, 2016. functions are considered: Surveying; Planning [Gal 16] G. Galante, L. Bona, A survey on cloud computing Adaptation Strategy, and Executing Adaptation elasticity, in: IEEE Fifth International Conference on Strategy. The system cooperative agents ensures Utility and Cloud Computing, UCC, p.263–270, 2012. elasticity management at both intra /and inter cloud [Her 13] N.Herbst, S. Kounev, R. Reussner, Elasticity in cloud levels. Now, with the definition of Cloud edge computing: what is and what is not ?, in: Proceedings of computing system new dimension, the proposed 10th International Conference on Autonomic Computing, solutions should be revisited and extended to consider p.23–27, 2013. the discussed new system’s architecture and [Car18] V.Cardellini, T.Galinac Grbac, M.Nardelli, N.Tanković, requirements. As a plan, we intend to: Truong HL. QoS- Based Elasticity for Service Chains in Distributed Edge Cloud Environments. In: Ganchev I.,  Define an appropriate multiples MAPE loops van der Mei R., van den Berg H. (eds) Autonomous design to support cooperative decentralized Control for a Reliable Internet of Services. Lecture Notes decision for Cloud edge computing elasticity in Computer Science, vol. 10768, 2018. control. [Maa 18] Z. Maamar , T.Baker ,M.Sellami ,M.Asim ,E. Ugljanin ,  Enrich the planner decisional logic (Elasticity N. Faci, Cloud vs edge: Who serves the Internet‐of‐Things better?, Internet Technology letters, Controller Agent) to be able to support new 2018. elasticity dimensions (Inter Edges elasticity, [Mou 17] R. Moudjari, Z. Sahnoun Towards cloud of clouds Inter Cloud –Edge elasticity). elasticity management system, in: The 28th International  Adopt the proposed Top Clouds Cooperation Workshop on Database and Expert Systems Applications, [Mou18] mechanism in Inter Edges and Inter DEXA, p.152–156, 2017. Clouds-Edges elasticity contexts, to define [Mou 18] R. Moudjari, Z. Sahnoun, F.Belala, Towards a Fuzzy respectively, the possible Top Edges Bigraphical Multi Agent System for Cloud of Clouds Elasticity Management, International Journal of Cooperation and Top Clouds-Edges Approximate Reasoning, Vol.102, p.86-107, 2018. Cooperation. [Par 16] F. Paraiso, P. Merle, L. Seinturier, SoCloud: a service- oriented component-based PaaS for managing portability, 4. Conclusion provisioning, elasticity, and high availability across In this paper, we presented an analysis of elasticity multiple clouds , Computing 98, p. 539–565, 2016. management in Cloud edge computing systems [Dup 15] Dupont, J. Lejeune, F. Alvares, T. Ledoux, Experimental problem. First, we introduced the elasticity visions in analysis on autonomic strategies for cloud elasticity, in: International Conference on Cloud and Autonomic both traditional cloud computing architecture and new Computing, p.81–92, 2015. Cloud edge computing systems. Next, we discussed the [Moh 15] M. Mohamed, M. Amziani, D. Belaid, S. Tata, T. Melliti, challenges related to designing elasticity mechanisms in An autonomic approach to manage elasticity of business those new systems. Finally, and as a result of Cloud processes in the cloud, Future Gener. Comput. Syst. edge computing systems analysis process, we identified Vol.50, p. 49–61, 2015. new elasticity dimensions to be considered in our future [Jac 04] B. Jacob, A Practical Guide to the IBM Autonomic elasticity management solutions. Computing Toolkit, IBM, International Technical Support Organization, 2004. [Wey 13] D.Weyns, B.Schmerl, V.Grassi, S.Malek, R. Mirandola, References C.Prehofer, J.Wuttke, J.Andersson, H.Giese, K. Göschka, [Mel 11] P. Mell, T. Grance, The NIST Definition of Cloud On Patterns for Decentralized Control in Self-Adaptive Computing, Special Publication, vol.800, National Systems, Software Engineering for Self-Adaptive Systems Institute of Standards & Technology, p.145, 2011. II. Lecture Notes in Computer Science, vol 7475, 2013. [Atz 10] L. Atzori, A. Iera, and G. Morabito, “The internet of things: A survey”, Computer networks, vol. 54, no. 15, p. 2787– 2805, 2010. International Conference on Advanced Aspects of Software Engineering Page 133 ICAASE, December, 01-02, 2018