Article Dans Une Revue IEEE Transactions on Computers Année : 2025

Virtual NVMe-based Storage Function Framework with Fast I/O Request State Management

Résumé

Current cloud environments provide numerous storage functions to virtual machines such as disk encryption, snapshotting, compression and so on. These functions are implemented using software stacks inside the hypervisor's kernel, emulator, or as a userspace polling driver like SPDK. However, each stack brings its own limitations: Linux's kernel I/O stack cannot easily integrate proprietary technologies such as Intel SGX, while SPDK requires significant changes in software development and tooling yet lacks the rich feature set of existing solutions like Linux LVM. To remedy these limitations, we introduce NVMetro, a high-performance storage framework for virtual machines based on the NVMe protocol. NVMetro provides multiple I/O paths that can be dynamically combined to fit the needs of each storage function. It links these paths together with an eBPF-based I/O router/classifier framework, as well as a userspace software stack for out-of-kernel I/O processing. We implemented three different storage functions with NVMetro and evaluated them under various workloads. Our results show that NVMetro approaches the performance of kernel-bypass solutions like SPDK while maintaining the compatibility and ease of use of in-kernel storage stacks.

Fichier principal
Vignette du fichier
NVMetro_TC_Postprint_HAL.pdf (714.62 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Licence

Dates et versions

hal-05025782 , version 1 (08-04-2025)

Licence

Identifiants

Citer

Tu Dinh Ngoc, Boris Teabe, Georges da Costa, Daniel Hagimont. Virtual NVMe-based Storage Function Framework with Fast I/O Request State Management. IEEE Transactions on Computers, In press, ⟨10.1109/TC.2025.3558033⟩. ⟨hal-05025782⟩
1265 Consultations
365 Téléchargements

Altmetric

Partager

  • More