skip to main content
10.1145/3526059.3533618acmconferencesArticle/Chapter ViewAbstractPublication PageshpdcConference Proceedingsconference-collections
research-article

WebAssembly as a Common Layer for the Cloud-edge Continuum

Published:27 June 2022Publication History

ABSTRACT

Over the last decade, the cloud computing landscape has transformed from centralised architecture made of large data centres to a distributed and heterogeneous architecture embracing edge and IoT processing units. This shift has created the so-called cloud-edge continuum, which closes the gap between the large datacentres and the end-user devices. Existing solutions are, however, dominated by proprietary silos and incompatible technologies, built around dedicated devices and run-time stacks. In this position paper, we motivate the need for interoperable solutions that would run seamlessly across hardware devices and software environments, while achieving good performance and a high level of security-a critical requirement for code and data processed off-premises. We argue that the technology provided by WebAssembly running on modern virtual machines and shielded within trusted execution environments, combined with a core set of services and support libraries, allows us to meet both goals. We also present preliminary results from a prototype built with these technologies and deployed on the cloud-edge continuum.

Skip Supplemental Material Section

Supplemental Material

FRAME22-fp62.mp4

mp4

49.2 MB

References

  1. Fritz Alder, Arseny Kurnikov, Andrew Paverd, et al. 2018. Migrating SGX enclaves with persistent state. In 48th IFIP International Conference on Dependable Systems and Networks (DSN '18). IEEE.Google ScholarGoogle ScholarCross RefCross Ref
  2. Arm. 2019. Introducing Arm TrustZone. https://developer.arm.com/ip-products/security-ip/trustzone.Google ScholarGoogle Scholar
  3. Sergei Arnautov, Bohdan Trach, Franz Gregor, et al. 2016. SCONE: secure Linux Containers with Intel SGX. In 12th Symposium on Operating Systems Design and Implementation (OSDI '16). USENIX.Google ScholarGoogle Scholar
  4. Daniel Balouek-Thomert, Eduard Gibert Renart, Ali Reza Zamani, et al. 2019. Towards a computing continuum: enabling edge-to-cloud integration for data-driven workflows. The International Journal of High Performance Computing Applications, 33, 6, 1159--1174.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Gaurav Banga and Jeffrey C. Mogul. 1999. Resource containers: a new facility for resource management in server systems. In 3rd Symposium on Operating Systems Design and Implementation (OSDI '99). USENIX.Google ScholarGoogle Scholar
  6. L. Baresi, D. F. Mendonça, M. Garriga, et al. 2019. A unified model for the mobile-edge-cloud continuum. ACM Trans. Internet Technol., 19, 2, Article 29.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Luiz Bittencourt, Roger Immich, Rizos Sakellariou, et al. 2018. The Internet of things, fog and cloud continuum: integration and challenges. Internet of Things, 3, 134--155.Google ScholarGoogle ScholarCross RefCross Ref
  8. Confidential computing consortium. https://confidentialcomputing.io/projects/.Google ScholarGoogle Scholar
  9. Breno Costa, Joao Bachiega Jr, Leonardo Rebouças de Carvalho, et al. 2022. Orchestration in fog computing: a comprehensive survey. ACM Computing Surveys (CSUR), 55, 2, 1--34.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Victor Costan and Srinivas Devadas. 2016. Intel SGX explained. IACR Cryptology ePrint Archive, 86.Google ScholarGoogle Scholar
  11. Advanced Micro Devices. 2019. Secure Encrypted Virtualization API: Technical Preview. Technical report 55766. Advanced Micro Devices.Google ScholarGoogle Scholar
  12. Enarx. https://enarx.io.Google ScholarGoogle Scholar
  13. David Goltzsche, Manuel Nieke, Thomas Knauth, et al. 2019. AccTEE: a WebAssembly- based two-way sandbox for trusted resource accounting. In 20th International Middleware Conference. ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Google. Confidential computing. https://cloud.google.com/confidential-computing.Google ScholarGoogle Scholar
  15. Kiryong Ha, Yoshihisa Abe, Thomas Eiszler, et al. 2017. You can teach elephants to dance: agile VM handoff for edge computing. In 2nd Symposium on Edge Computing (SEC '17). ACM/IEEE.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Andreas Haas, Andreas Rossberg, Derek L. Schuff, et al. 2017. Bringing the web up to speed with WebAssembly. In 38th Conference on Programming Language Design and Implementation (PLDI '17). ACM SIGPLAN.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Abhinav Jangda, Bobby Powers, Emery D. Berger, et al. 2019. Not so fast: analyzing the performance of WebAssembly vs. native code. In USENIX Annual Technical Conference (ATC '19).Google ScholarGoogle Scholar
  18. Hyuk-Jin Jeong, Chang Hyun Shin, Kwang Yong Shin, et al. 2019. Seamless offloading of web app computations from mobile device to edge clouds via HTML5 web worker migration. In Symposium on Cloud Computing (SoCC '19). ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Lv Junyan, Xu Shiguo, and Li Yijie. 2009. Application research of embedded database SQLite. In International Forum on Information Technology and Applications (IFITA'09). IEEE.Google ScholarGoogle Scholar
  20. Chris Lattner and Vikram S. Adve. 2004. LLVM: a compilation framework for lifelong program analysis & transformation. In International Symposium on Code Generation and Optimization (CGO '04). IEEE.Google ScholarGoogle Scholar
  21. Frank McKeen, Ilya Alexandrovich, Alex Berenzon, et al. 2013. Innovative instructions and software model for isolated execution. In 2nd International Workshop on Hardware and Architectural Support for Security and Privacy (HASP '13). ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Memory64 proposal. https://github.com/WebAssembly/memory64.Google ScholarGoogle Scholar
  23. Jämes Ménétrey, Christian Göttel, Anum Khurshid, et al. 2022. Attestation mechanisms for trusted execution environments demystified. In 22nd IFIP International Conference on Distributed Applications and Interoperable Systems (DAIS '22). Springer.Google ScholarGoogle Scholar
  24. Jämes Ménétrey, Marcelo Pasin, Pascal Felber, et al. 2021. Twine: an embedded trusted runtime for WebAssembly. In 37th International Conference on Data Engineering (ICDE '21). IEEE.Google ScholarGoogle ScholarCross RefCross Ref
  25. Jämes Ménétrey, Marcelo Pasin, Pascal Felber, et al. 2022. Watz: a Trusted WebAssembly runtime environment with remote attestation for TrustZone. In 38th International Conference on Distributed Computing Systems (ICDCS '22). IEEE.Google ScholarGoogle Scholar
  26. Microsoft. Azure confidential computing. https://azure.microsoft.com/en- us/solutions/confidential-compute/.Google ScholarGoogle Scholar
  27. Microsoft. Azure Sphere. https://azure.microsoft.com/en-us/services/azure- sphere/.Google ScholarGoogle Scholar
  28. Mozilla. 2019. Standardizing WASI: a system interface to run WebAssembly outside the web. https://hacks.mozilla.org/2019/03/standardizing- wasi-a-webassembly-system-interface/.Google ScholarGoogle Scholar
  29. Louis-Noël Pouchet et al. 2018. PolyBench/C the polyhedral benchmark suite.Google ScholarGoogle Scholar
  30. 2022. WebAssembly Core Specification. Version 2.0. W3C.Google ScholarGoogle Scholar
  31. Weisong Shi, Jie Cao, Quan Zhang, et al. 2016. Edge computing: vision and challenges. IEEE Internet of Things Journal, 3, 5, 637--646.Google ScholarGoogle ScholarCross RefCross Ref
  32. SQLite, Speedtest1. https://sqlite.org/cpu.html.Google ScholarGoogle Scholar
  33. Bill Venners. 1998. The Java virtual machine. Java and the Java virtual machine: definition, verification, validation.Google ScholarGoogle Scholar
  34. Veracruz. https://veracruz-project.com.Google ScholarGoogle Scholar
  35. Wasi-nn proposal. https://github.com/WebAssembly/wasi-nn.Google ScholarGoogle Scholar
  36. Wasi-parallel proposal. https://github.com/WebAssembly/wasi-parallel.Google ScholarGoogle Scholar
  37. WebAssembly micro runtime. https://github.com/bytecodealliance/wasm-micro-runtime.Google ScholarGoogle Scholar
  38. Alon Zakai. 2011. Emscripten: an LLVM-to-JavaScript compiler. In International Conference Companion on Object Oriented Programming Systems Languages and Applications Companion (OOPSLA '11). ACM.Google ScholarGoogle ScholarDigital LibraryDigital Library

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in
  • Published in

    cover image ACM Conferences
    FRAME '22: Proceedings of the 2nd Workshop on Flexible Resource and Application Management on the Edge
    July 2022
    50 pages
    ISBN:9781450393102
    DOI:10.1145/3526059

    Copyright © 2022 ACM

    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 27 June 2022

    Permissions

    Request permissions about this article.

    Request Permissions

    Check for updates

    Qualifiers

    • research-article

    Upcoming Conference

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader