FaaS Execution Models for Edge Applications

In this paper, we address the problem of supporting stateful workflows following a Function-as-a-Service (FaaS) model in edge networks. In particular we focus on the problem of data transfer, which can be a performance bottleneck due to the limited speed of communication links in some edge scenarios and we propose three different schemes: a pure FaaS implementation, StateProp, i.e., propagation of the application state throughout the entire chain of functions, and StateLocal, i.e., a solution where the state is kept local to the workers that run functions and retrieved only as needed. We then extend the proposed schemes to the more general case of applications modeled as Directed Acyclic Graphs (DAGs), which cover a broad range of practical applications, e.g., in the Internet of Things (IoT) area. Our contribution is validated via a prototype implementation. Experiments in emulated conditions show that applying the data locality principle reduces significantly the volume of network traffic required and improves the end-to-end delay performance, especially with local caching on edge nodes and low link speeds.

[1]  Ruichuan Chen,et al.  Lessons learned from migrating complex stateful applications onto serverless platforms , 2021, APSys.

[2]  Vatche Ishakian,et al.  The rise of serverless computing , 2019, Commun. ACM.

[3]  Luciano Baresi,et al.  A Unified Model for the Mobile-Edge-Cloud Continuum , 2019, ACM Trans. Internet Techn..

[4]  Schahram Dustdar,et al.  Optimized container scheduling for data-intensive serverless edge computing , 2021, Future Gener. Comput. Syst..

[5]  Joseph M. Hellerstein,et al.  Transactional Causal Consistency for Serverless Computing , 2020, SIGMOD Conference.

[6]  Emmett Witchel,et al.  Boki: Stateful Serverless Computing with Shared Logs , 2021, SOSP.

[7]  Mark Campbell,et al.  Smart Edge: The Effects of Shifting the Center of Data Gravity Out of the Cloud , 2019, Computer.

[8]  Peter Pietzuch,et al.  Faasm: Lightweight Isolation for Efficient Stateful Serverless Computing , 2020, USENIX Annual Technical Conference.

[9]  Anurag Khandelwal,et al.  Le Taureau: Deconstructing the Serverless Landscape & A Look Forward , 2020, SIGMOD Conference.

[10]  Marc Sánchez Artigas,et al.  Comparison of FaaS Orchestration Systems , 2018, 2018 IEEE/ACM International Conference on Utility and Cloud Computing Companion (UCC Companion).

[11]  David Wentzlaff,et al.  Architectural Implications of Function-as-a-Service Computing , 2019, MICRO.

[12]  Wen Zhang,et al.  Kappa: a programming framework for serverless computing , 2020, SoCC.

[13]  Marco Conti,et al.  On Realizing Stateful FaaS in Serverless Edge Networks: State Propagation , 2021, 2021 IEEE International Conference on Smart Computing (SMARTCOMP).

[14]  Deke Guo,et al.  Dependency-Aware Application Assigning and Scheduling in Edge Computing , 2021, IEEE Internet of Things Journal.

[15]  μActor: Stateful Serverless at the Edge , 2021 .

[16]  Mahmut T. Kandemir,et al.  Kraken: Adaptive Container Provisioning for Deploying Dynamic DAGs in Serverless Platforms , 2021, SoCC.

[17]  J. Lee,et al.  One step forward, two steps back. , 2014, The Lancet. Oncology.

[18]  Rajkumar Buyya,et al.  A Holistic View on Resource Management in Serverless Computing Environments: Taxonomy and Future Directions , 2021, ACM Comput. Surv..

[19]  Eyal de Lara,et al.  SessionStore: A Session-Aware Datastore for the Edge , 2020, 2020 IEEE 4th International Conference on Fog and Edge Computing (ICFEC).

[20]  Dejun Yang,et al.  Load Balancing for Interdependent IoT Microservices , 2019, IEEE INFOCOM 2019 - IEEE Conference on Computer Communications.

[21]  이화영 X , 1960, Chinese Plants Names Index 2000-2009.

[22]  Ioannis Psaras,et al.  Store Edge Networked Data (SEND): A Data and Performance Driven Edge Storage Framework , 2021, IEEE INFOCOM 2021 - IEEE Conference on Computer Communications.

[23]  Perry Cheng,et al.  The serverless trilemma: function composition for serverless computing , 2017, Onward!.

[24]  Joseph M. Hellerstein,et al.  Serverless Computing: One Step Forward, Two Steps Back , 2018, CIDR.

[25]  Huiba Li,et al.  FaaSNet: Scalable and Fast Provisioning of Custom Serverless Container Runtimes at Alibaba Cloud Function Compute , 2021, USENIX Annual Technical Conference.

[26]  Jun Li,et al.  Service Placement for Collaborative Edge Applications , 2021, IEEE/ACM Transactions on Networking.

[27]  Renchao Xie,et al.  When Serverless Computing Meets Edge Computing: Architecture, Challenges, and Open Issues , 2021, IEEE Wireless Communications.

[28]  Claudio Cicconetti,et al.  A Decentralized Framework for Serverless Edge Computing in the Internet of Things , 2021, IEEE Transactions on Network and Service Management.

[29]  Admela Jukan,et al.  Engineering and Experimentally Benchmarking a Container-based Edge Computing System , 2020, ICC 2020 - 2020 IEEE International Conference on Communications (ICC).

[30]  Ion Stoica,et al.  Caerus: NIMBLE Task Scheduling for Serverless Analytics , 2021, NSDI.

[31]  Chi Zhang,et al.  Online dispatching and scheduling of jobs with heterogeneous utilities in edge computing , 2020, MobiHoc.

[32]  Jingyuan Zhang,et al.  In Search of a Fast and Efficient Serverless DAG Engine , 2019, 2019 IEEE/ACM Fourth International Parallel Data Systems Workshop (PDSW).

[33]  Michael Gerndt,et al.  Microservices vs Serverless: A Performance Comparison on a Cloud-native Web Application , 2020, CLOSER.

[34]  Cristina L. Abad,et al.  The State of Serverless Applications: Collection, Characterization, and Community Consensus , 2021, IEEE Transactions on Software Engineering.