CWASI: A WebAssembly Runtime Shim for Inter-function Communication in the Serverless Edge-Cloud Continuum

Metadane

  • Autorzy: Cynthia Marcelino, Stefan Nastic
  • Rok: 2023/2025
  • Źródło: 8th ACM/IEEE Symposium on Edge Computing (SEC 2023)
  • DOI: 10.1145/3583740.3626611
  • arXiv: 2504.21503
  • PDF: https://arxiv.org/pdf/2504.21503v1
  • Status: to-read
  • Kategoria główna: Systems
  • Podkategorie: WebAssembly, Serverless, Edge Computing, Communication
  • Tagi: #webassembly #wasm #serverless #edge-computing #inter-function #communication #wasi #project:js-runtime-energy

Streszczenie

CWASI to OCI-compliant runtime shim dla WebAssembly, który optymalizuje komunikację między ko-lokowanymi serverless funkcjami w Edge-Cloud Continuum. Standardowe podejście w Wasm polega na komunikacji przez zdalne usługi (object storage, key-value stores) nawet dla ko-lokowanych funkcji — CWASI eliminuje ten overhead przez wybór optymalnego mechanizmu wymiany danych w zależności od lokalności funkcji.

CWASI redukuje latencję komunikacji między ko-lokowanymi funkcjami o do 95% i zwiększa throughput o do 30×.


Kluczowe Wnioski

  • Ko-lokowane Wasm functions domyślnie komunikują się przez zdalne usługi — duży overhead
  • CWASI: 3-mode communication model (lokalny shared memory / lokalny IPC / zdalny)
  • Redukcja latencji: do 95% dla ko-lokowanych funkcji
  • Wzrost throughput: do 30×
  • OCI-compliant: działa z istniejącymi container orchestration (K8s)
  • Szczególnie ważne dla edge gdzie bandwidth jest ograniczony

Metodologia

  • Architektura: shim pomiędzy WASI a runtimem, intercepts syscalls i przekierowuje przez optymalną ścieżkę
  • 3 tryby: (1) shared memory (same host), (2) local IPC (same node, different container), (3) remote (different node)
  • Ewaluacja: synthetic benchmarks + real-world workflows na edge nodes
  • Metryki: latencja komunikacji, throughput, overhead shim

Główne Koncepcje

  • Runtime Shim: warstwa pośrednia między aplikacją a runtimem — może intercept/modify calls
  • OCI (Open Container Initiative): standard dla container images i runtimes — zapewnia kompatybilność
  • Ko-lokowane funkcje: funkcje uruchomione na tym samym hoście — mogą współdzielić pamięć
  • WASI networking: standard Wasm dla dostępu sieciowego — przez system calls

Wyniki

KomunikacjaBez CWASIZ CWASIPoprawa
Ko-lokowane (same host)~100ms (przez object store)~5ms (shared memory)95% szybciej
Throughputbaseline30× wyższy30×

Przydatne Cytaty

“CWASI reduces the communication latency between the co-located serverless functions by up to 95% and increases the communication throughput by up to 30x.” (Abstract)


Datasety

  • Własne eksperymenty na edge nodes

Powiązane Tematy

  • Lumos 2025 (ten sam zespół — performance model Wasm)
  • Besozzi 2025 (Wasm vs unikernels)
  • Colosi 2025 (Wasm workflows)
  • Implikacje energetyczne: mniej sieciowych wywołań = mniej energii (#JE-4)

Notatki

Elementów w folderze: 0.