End-to-End Mechanized Proof of a JIT-Accelerated eBPF Virtual Machine for IoT - Inria - Institut national de recherche en sciences et technologies du numérique
Communication Dans Un Congrès Année : 2024

End-to-End Mechanized Proof of a JIT-Accelerated eBPF Virtual Machine for IoT

Résumé

Abstract Modern operating systems have adopted Berkeley Packet Filters (BPF) as a mechanism to extend kernel functionalities dynamically, e.g., Linux’s eBPF or RIOT’s rBPF. The just-in-time (JIT) compilation of eBPF introduced in Linux eBPF for performance has however led to numerous critical issues. Instead, RIOT’s rBPF uses a slower but memory-isolating interpreter (a virtual machine) which implements a defensive semantics of BPF; and therefore trades performance for security. To increase performance without sacrificing security, this paper presents a fully verified JIT implementation for RIOT’s rBPF, consisting of: i/ an end-to-end refinement workflow to both proving the JIT correct from an abstract specification and by deriving a verified concrete C implementation; ii/ a symbolic CompCert interpreter for executing binary code; iii/ a verified JIT compiler for rBPF; iv/ a verified hybrid rBPF virtual machine. Our core contribution is, to the best of our knowledge, the first and fully verified rBPF JIT compiler with correctness guarantees from high-level specification to low-level implementation. Benchmarks on microcontrollers hosting the RIOT operating system demonstrate significant performance improvements over the existing implementations of rBPF, even in worst-case application scenarios.
Fichier principal
Vignette du fichier
cav24.pdf (990.35 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-04762503 , version 1 (31-10-2024)

Licence

Identifiants

Citer

Shenghao Yuan, Frédéric Besson, Jean-Pierre Talpin. End-to-End Mechanized Proof of a JIT-Accelerated eBPF Virtual Machine for IoT. CAV 2024 - 36th International Conference on Computer Aided Verification, Jul 2024, Montreal, Canada. pp.325-347, ⟨10.1007/978-3-031-65627-9_16⟩. ⟨hal-04762503⟩
49 Consultations
11 Téléchargements

Altmetric

Partager

More