1 Location, Proximity, Affinity - The key factors in FaaS David Haja∗, Zoltan Richard Turanyi†, Laszlo Toka∗‡ ∗MTA-BME Network Softwarization Research Group, Budapest University of Technology and Economics †Ericsson Research, Hungary ‡MTA-BME Information Systems Research Group, Budapest University of Technology and Economics Email: [email protected], [email protected], [email protected] Abstract—The Function-as-a-Service paradigm emerged not also demonstrates the necessity for low latency in processing only as a pricing technique, but also as a programming model information shared between the users. promising to simplify developing to the cloud. Interestingly, while Even though communication is significantly faster the closer placing functions across hosts under the service platform is believed to be flexible, currently the available platforms pay the parties are (e.g., in same data center, same rack, same little attention to co-locate connected functions, or data with the server machine, same process), currently available FaaS plat- respective processing function in order to improve performance. forms miss to co-locate entities that often communicate with Even though the local function invocation and data access might each other. Furthermore, most of the available FaaS platforms be an order of magnitude faster than their remote intra-cloud suffer from cold-start latency when a new virtual machine counterparts. In this paper, we therefore propose a Function-as- a-Service platform design that reaps the performance benefits of (VM) or container has to be launched. The size of the image co-location. We build the platform on WebAssembly, a secure to mount, the programming language used, the number of and flexible tool for efficient local function invocations, and libraries and dependencies all have an impact on this latency. on a distributed in-memory database, which allows arbitrary WebAssembly [5] (or Wasm) was announced in 2015, data placement. On top we advocate smart placement strategies designed by the World Wide Web Consortium (W3C) for for function executions and data, decoupled from the functions. Hence we envision good horizontal scaling of functions while enabling high-performance applications inside browsers [6]. keeping the experienced processing latency to that of a single Since then a new industry partnership, the Bytecode Al- machine case. liance [7], has been formed by Mozilla, Fastly, Intel, and Index Terms—Function as a Service, FaaS, WebAssembly, Red Hat. The alliance’s purpose is to implement standards platform, runtime, co-location, performance and to propose new ones that decouple WebAssembly from JavaScript and make runtimes outside of the browser feasible. WebAssembly can essentially provide the same security capa- I. INTRODUCTION bilities and language independence as containers, but it allows In recent years Function-as-a-Service (FaaS), often referred for lighter composition in terms of startup and function call. to as serverless computing, has become one of the popular We argue that the right placement of function executions paradigms in cloud computing. Numerous projects managed and data helps FaaS platforms to reap performance benefits by companies and academic institutions offer FaaS services,1 of co-location. We therefore propose a novel FaaS platform such as Amazon’s AWS Lambda [1], Apache OpenWhisk [2] design based on WebAssembly for isolation and fast local Google Cloud Functions [3], Microsoft Azure Functions [4]. function calls; a distributed in-memory datastore to allow INFOCOMMUNICATIONS JOURNAL Using FaaS, developers do not need to care about resource1 data mobility; and smart location selection strategies to co- Location, Proximity, AffinityLocation, – Proximity,allocation, scaling Affinity or scheduling, - since the platform handles locate data and function execution as the main novelty of our The key factors in FaaS these. Most of these platforms operate with container tech- presented platform design. The contribution of this paper is The key factorsnologies; in the user’s FaaS executable code is packed into a container twofold: i) we suggest to use WebAssembly as an emerging Location, Proximity,that is instantiated Affinity when the appropriate - function call request virtualization technique; ii) we consider advanced strategies first arrives. With this relatively lightweight technology it is for both determining the location of user functions and data. David Haja∗, Zoltan Richard Turanyi†, Laszlo Toka∗‡ easy to arrange process isolation and resource provisioning. Furthermore, we define the role of each system component and ∗MTA-BME NetworkLocation, Softwarization Research Proximity, Group, Budapest UniversityAffinity of Technology – and Economics The key factorsFaaS platforms in FaaS and solutions gain more and more attention major capabilities that those components need to provide. We †Ericsson Research,in the Hungary Infocom domain, and researchers investigate its usability also present the benefits, identify the challenges and missing David Haja∗, Zoltan Richard Turanyi†, Laszlo Toka∗‡ ‡MTA-BME Information SystemsThe Research key Group,factors Budapestfor the backendin University FaaS of e.g., of tactile Technology Internet and applications, Economics and edge capabilities that need to be defined for a complete system. MTA-BME Network Softwarization Research Group, Budapest University of Technology and Economics ∗ Email: [email protected], [email protected],computing-based applications. [email protected] While its usage for telco ser- This paper is organized as follows. In Section II we present David Haja1 ,† ZoltanEricsson Richard Research, vicesTuranyi Hungary requires2 and massive Laszlo performanceToka3 as well, the low end-to-end the related state of the art. In Section III we introduce ‡MTA-BME Information Systems Research Group, Budapestdelay of such University platforms of isTechnology an absolute and minimum Economics in general. WebAssembly, present the activity that allows WebAssembly Email: [email protected], [email protected],For example the deployment [email protected] of a multi-party Augmented to operate outside the browsers, highlight the benefits and Abstract—The Function-as-a-Service paradigm emerged not Realityalso demonstrates application the in necessity an edge computing for low latency infrastructure in processing with the challenges of using WebAssembly in FaaS platforms. In only as a pricing technique, but also as a programming model ainformation FaaS platform shared on between top provides the users. excellent context for scaling Section IV we introduce a novel FaaS system design based promising to simplify developing to the cloud. Interestingly, while ephemeralEven though functions communication to the need is of significantly the users, but faster this the use closer case on WebAssembly and locality awareness. We conclude the placing functions across hosts under the service platform is believedAbstract to—The be flexible, Function-as-a-Service currently the available paradigm platforms emerged pay not alsothe parties demonstrates are (e.g., the in necessity same data for low center, latency same in rack, processing same littleonly asattention a pricing to co-locate technique, connected but also functions, as a programming or data with model the informationserver machine, shared same between process), the currently users. available FaaS plat- respectivepromising processingto simplify developingfunction in to order the cloud. to improve Interestingly, performance. while formsEven miss though to co-locate communication entities is that significantly often communicate faster the closer with Evenplacing though functions the local across function hosts invocation under the and service data access platform might is each other. Furthermore, most of the available FaaS platforms believed to be flexible, currently the available platforms pay the parties are (e.g., in same data center, same rack, same be an order of magnitude faster than their remote intra-cloud serversuffer machine,from cold-start same process), latency when currently a new available virtual FaaS machine plat- counterparts.little attention In to this co-locate paper, connected we therefore functions, propose or a data Function-as- with the a-Servicerespective platform processing design function that in reaps order the to performance improve performance. benefits of forms(VM) or miss container to co-locate has to entities be launched. that often The communicate size of the image with co-location.Even though We the build local function the platform invocation on WebAssembly, and data access a secure might eachto mount, other. theFurthermore, programming most language of the available used, theFaaS number platforms of andbe an flexible order of tool magnitude for efficient faster local than function their remote invocations, intra-cloud and sufferlibraries from and cold-start dependencies latency all have when an a impact new virtual on this machine latency. oncounterparts. a distributed In this in-memory paper, we database, therefore which propose allows a Function-as- arbitrary WebAssembly [5] (or Wasm) was announced in 2015, a-Service platform design that reaps the performance benefits of (VM) or container has to be launched. The size of the image data placement. On top we advocate smart placement strategies todesigned mount, by the the programming World Wide language Web Consortium used, the(W3C) number for of forco-location. function We executions build the and platform data, decoupled
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages8 Page
-
File Size-