Skip to main content

WebAssembly in IoT: Beyond Toy Examples

  • Conference paper
  • First Online:
Web Engineering (ICWE 2023)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 13893))

Included in the following conference series:

Abstract

WebAssembly enables running the same application code in a range of devices in headless mode outside the browser. Furthermore, it has been proposed that WebAssembly applications can be made isomorphic so that they can be liberally allocated to a set of computers that comprise the runtime environment. In this paper, we explore if WebAssembly truly enables the development of comprehensive IoT applications with the same ease as more traditional techniques would enable.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 84.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Arnold, K., Gosling, J., Holmes, D.: The Java Programming Language. Addison Wesley Professional, Boston (2005)

    Google Scholar 

  2. Bryant, D.: WebAssembly outside the browser: a new foundation for pervasive computing. Keynote at ICWE’20, 9–12 June, Helsinki, Finland (2020)

    Google Scholar 

  3. Bytecode Alliance: Welcome to WASI. https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-intro.md. Accessed 05 Dec 2022

  4. Smilkov, D., Thorat, N., Yuan, A.: Introducing the WebAssembly backend for TensorFlow.js. https://blog.tensorflow.org/2020/03/introducing-webassembly-backend-for-tensorflow-js.html. Accessed 11 Mar 2020

  5. De Macedo, J., Abreu, R., Pereira, R., Saraiva, J.: On the runtime and energy performance of webassembly: is WebAssembly superior to JavaScript yet? In: 2021 36th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW), pp. 255–262. IEEE (2021)

    Google Scholar 

  6. Hall, A., Ramachandran, U.: An execution model for serverless functions at the edge. In: Proceedings of the International Conference on Internet of Things Design and Implementation, pp. 225–236. IoTDI 2019, Association for Computing Machinery, New York, NY, USA, April 2019. https://doi.org/10.1145/3302505.3310084

  7. Kaebisch, S., Kamiya, T., McCool, M., Charpenay, V., Kovatsch, M.: Web of Things (WoT) Thing Description. https://www.w3.org/TR/wot-thing-description/. Accessed 09 Dec 2022

  8. Kaitai project: Kaitai home page. https://kaitai.io/. Accessed 24 Jan 2023

  9. Kim, M., Jang, H., Shin, Y.: Avengers, assemble! Survey of WebAssembly security solutions. In: 2022 IEEE 15th International Conference on Cloud Computing (CLOUD), pp. 543–553. IEEE (2022)

    Google Scholar 

  10. Kotilainen, P., Autto, T., Järvinen, V., Das, T., Tarkkanen, J.: Proposing isomorphic microservices based architecture for heterogeneous IoT environments. In: Taibi, D., Kuhrmann, M., Mikkonen, T., Klünder, J., Abrahamsson, P. (eds.) Product-Focused Software Process Improvement. PROFES 2022. LNCS, vol. 13709, pp. 621–627. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-21388-5_47

  11. Lehmann, D., Kinder, J., Pradel, M.: Everything old is new again: binary security of \(\{\)WebAssembly\(\}\). In: 29th USENIX Security Symposium (USENIX Security 20), pp. 217–234 (2020)

    Google Scholar 

  12. Li, B., Dong, W., Gao, Y.: Wiprog: a webassembly-based approach to integrated IoT programming. In: IEEE INFOCOM 2021-IEEE Conference on Computer Communications, pp. 1–10. IEEE (2021)

    Google Scholar 

  13. Li, B., Fan, H., Gao, Y., Dong, W.: ThingSpire OS: a WebAssembly-based IoT operating system for cloud-edge integration. In: Proceedings of the 19th Annual International Conference on Mobile Systems, Applications, and Services, pp. 487–488 (2021)

    Google Scholar 

  14. Long, J., Tai, H.Y., Hsieh, S.T., Yuan, M.J.: A lightweight design for serverless function as a service. IEEE Softw. 38(1), 75–80 (2020)

    Article  Google Scholar 

  15. Losant IoT Inc: Embedded Edge Agent. https://docs.losant.com/edge-compute/embedded-edge-agent/overview/. Accessed 09 Nov 2022

  16. Mäkitalo, N., Bankowski, V., Daubaris, P., Mikkola, R., Beletski, O., Mikkonen, T.: Bringing WebAssembly up to speed with dynamic linking. In: Proceedings of the 36th Annual ACM Symposium on Applied Computing, pp. 1727–1735 (2021)

    Google Scholar 

  17. Mäkitalo, N., et al.: WebAssembly modules as lightweight containers for liquid IoT applications. In: Brambilla, M., Chbeir, R., Frasincar, F., Manolescu, I. (eds.) ICWE 2021. LNCS, vol. 12706, pp. 328–336. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-74296-6_25

    Chapter  Google Scholar 

  18. Massey, S., Shymanskyy, V.: wasm3: The fastest WebAssembly interpreter, and the most universal runtime. https://github.com/wasm3/wasm3. Accessed 09 Dec 2022

  19. Mendki, P.: Evaluating WebAssembly enabled serverless approach for edge computing. In: 2020 IEEE Cloud Summit, pp. 161–166. IEEE (2020)

    Google Scholar 

  20. Mikkonen, T., Pautasso, C., Taivalsaari, A.: Isomorphic Internet of Things architectures with web technologies. Computer 54(7), 69–78 (2021)

    Article  Google Scholar 

  21. Mikkonen, T., Systä, K., Pautasso, C.: Towards liquid web applications. In: Cimiano, P., Frasincar, F., Houben, G.-J., Schwabe, D. (eds.) ICWE 2015. LNCS, vol. 9114, pp. 134–143. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-19890-3_10

    Chapter  Google Scholar 

  22. Mikkonen, T., Taivalsaari, A.: Software reuse in the era of opportunistic design. IEEE Softw. 36(3), 105–111 (2019)

    Article  Google Scholar 

  23. Mozilla: WebAssembly. https://developer.mozilla.org/en-US/docs/WebAssembly/JavaScript_interface/Memory. Accessed 05 Jan 2023

  24. Oliveira, F., Mattos, J.: Analysis of WebAssembly as a strategy to improve JavaScript performance on IoT environments. In: Anais Estendidos do X Simpósio Brasileiro de Engenharia de Sistemas Computacionais, pp. 133–138. SBC (2020)

    Google Scholar 

  25. OpenAPI Initiative: OpenAPI Specification. https://github.com/OAI/OpenAPI-Specification. Accessed 09 Dec 2022

  26. Padmanabhan, S., Jha, P.: WebAssembly at eBay: A Real-World Use Case. https://tech.ebayinc.com/engineering/webassembly-at-ebay-a-real-world-use-case/. Accessed 22 May 2019

  27. Raymond Hill. 2019.: gorhill/uBlock. https://github.com/gorhill/uBlock. Accessed 09 Dec 2022

  28. Rossberg, A.: Introduction - WebAssembly 1.1 (Draft 2022–04-05). https://www.w3.org/TR/wasm-core-2/intro/introduction.html. Accessed 12 Jan 2022

  29. Strimpel, J., Najim, M.: Building Isomorphic JavaScript Apps: From Concept to Implementation to Real-World Solutions. O’Reilly Media, Sebastopol (2016)

    Google Scholar 

  30. Swagger project: Swagger home page. https://swagger.io/. Accessed 24 Jan 2023

  31. Vetere, P.: Why wasm is the future of cloud computing. https://www.infoworld.com/article/3678208/why-wasm-is-the-future-of-cloud-computing.html. Accessed 09 Dec 2022

  32. Wang, W.: Empowering web applications with WebAssembly: are we there yet? In: 2021 36th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 1301–1305. IEEE (2021)

    Google Scholar 

  33. wasmCloud Project: wasmCloud home page. https://wasmcloud.com/. Accessed 30 Jan 2022

  34. Wen, E., Weber, G.: Wasmachine: bring IoT up to speed with a WebAssembly OS. In: 2020 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops), pp. 1–4. IEEE (2020)

    Google Scholar 

Download references

Acknowledgments

This work has been supported by Business Finland (project LiquidAI, 8542/31/2022).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pyry Kotilainen .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Kotilainen, P. et al. (2023). WebAssembly in IoT: Beyond Toy Examples. In: Garrigós, I., Murillo Rodríguez, J.M., Wimmer, M. (eds) Web Engineering. ICWE 2023. Lecture Notes in Computer Science, vol 13893. Springer, Cham. https://doi.org/10.1007/978-3-031-34444-2_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-34444-2_7

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-34443-5

  • Online ISBN: 978-3-031-34444-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics