Anzeige

WebAssembly as a Common Layer for the Cloud-edge Continuum - Presentation slides

University of Neuchâtel
24. Mar 2023
Anzeige

Más contenido relacionado

Similar a WebAssembly as a Common Layer for the Cloud-edge Continuum - Presentation slides(20)

Anzeige

WebAssembly as a Common Layer for the Cloud-edge Continuum - Presentation slides

  1. WebAssembly as a Common Layer for the Cloud-edge Continuum Jämes Ménétrey, Pascal Felber, Valerio Schiavoni University of Neuchâtel, Switzerland Marcelo Pasin HES-SO University of Applied Sciences Western Switzerland University of Neuchâtel, Switzerland Presented at FRAME 2022 The 2nd Workshop on Flexible Resource and Application Management on the Edge Co-located with HPDC 2022 The 31st International Symposium on High-Performance Parallel and Distributed Computing Minneapolis, United States, June 27 - July 1, 2022
  2. Outline  Introduction and motivation  Building the continuum  WebAssembly under the hood  Performance  Conclusion FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM
  3. INTRODUCTION AND MOTIVATION
  4. The scenario in 2022  Cloud applications are everywhere  Cloud-backed handheld apps  High availability and performance  Flexible management  Edge processing capacity is expanding  Proximity, lower latency  Legal compliance  Internet of things is being deployed  Small devices, simple tasks, user-centred FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 1
  5. Disconnected, incompatible silos FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 2
  6. BUILDING THE CONTINUUM
  7. A continuous environment  Ideal integration of different silos  Common execution environment  No unnecessary differences, seamless  Java Virtual Machine  Cloud-edge continuum system before its time  Has become too large, too heavy (remember: IoT)  Containers  Fashionable today for deploying applications (microservices)  There is one type for every architecture (not homogeneous) FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 3
  8. Security must be a birthmark  Cloud applications are hard to fully trust  Providers may be curious  Other tenants may be malicious  Edge applications are almost impossible to trust  No physical control over the machines  Providers do not trust users  Edge and cloud are not under the same control FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 4
  9. Trusted execution environments  Hardware extensions, TEEs  Available in most current architectures  Intel SGX, Arm TrustZone, etc.  Isolated, trusted hardware partitions  Virtually impossible to tamper with a trusted program  Not even the lowest level of software can  Remote attestation  Proves that a given program is running in the TEE FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 5
  10. Managing the continuum  Management is orthogonal to our proposal Discovery, allocation, deployment Access control, authentication Federation, aggregation, abstraction  Manage the continuum remains a challenge Much easier if the machines run the same software FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 6
  11. WEBASSEMBLY UNDER THE HOOD
  12. WebAssembly  Bytecode for the web browsers  Intended to replace JavaScript for compute-bound operations  Backed by the big ones: Microsoft, Google, Mozilla  Several languages can be compiled to WebAssembly  Compact, few dependencies  Sandboxing (as in browsers)  Already being used by standalone applications  Portability  Common development (server and client) FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 7
  13. WebAssembly and TEEs  WebAssembly executed inside TEEs  Twine WebAssembly TEEs using Intel SGX  WaTZ WebAssembly TEEs using Arm TrustZone Added remote attestation FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 8
  14. Live migration  Migrations add flexibility to the continuum  Applications can start in the cloud and move closer to the users  Same for the other way around (from the edge to the cloud)  Migration can be a headache  Segmented memory, indexed structures  Complex systems resources  WebAssembly helps migration  Sandboxing, linear address space, well-defined system resources  But… it’s still hard to migrate an open socket in 2022 FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 9
  15. Limitations  WebAssembly is still incomplete Compiling a large application is still a challenge  WebAssembly is still slow JIT compilation, AOT compilation, work in progress  There is a trade-off for speed Interpreters are smaller, but slower FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 10
  16. PERFORMANCE
  17. Measuring performance  How slow is WebAssembly?  We did a few comparisons of WebAssembly vs. native execution  Tested hardware  Intel Xeon E3-1275 server  NXP MCIMX8M Arm-Cortex-A53  Applications  Polybench/C (compiler performance)  SQLite Speedtest1  Compared using ahead-of-time compilation FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 11
  18. Performance results  Slowdown (different max & min depending on architecture)  Intel 0.8 < slowdown < 3  Arm 1 < slowdown < 2.5 FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 12 Polybench/C SQLite Speedtest1
  19. CONCLUSION
  20. To conclude  Our vision for the cloud-edge continuum  An interoperable, scalable and distributed system  Heterogeneous hardware, same type of software anywhere  We hope this will transform the app ecosystem  Developers will focus more on the business value  Less dealing with the complexity of the infrastructure  WebAssembly seems to be a perfect fit  It abstracts the operating system, device, language  TEEs can provide the necessary security FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 13
  21. Remaining challenges  Many challenges remain  Widening the programming language spectrum  Extending WebAssembly system interface  Supporting neural networks or parallel programming  Building middleware to connect the continuum and compose apps  Facilitating the deployment and migration of applications  Taking into account latency, computation power, localisation  Yet, we are confident that WebAssembly and TEEs are good foundations to develop future large-scale systems FRAME 2022 MÉNÉTREY, PASIN, FELBER, SCHIAVONI: WEBASSEMBLY AS A COMMON LAYER FOR THE CLOUD-EDGE CONTINUUM 14
  22. Acknowledgements
Anzeige