Out of hypervisor (OoH) : when nested virtualization becomes practical - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2023

Out of hypervisor (OoH) : when nested virtualization becomes practical

Au delà de l'hyperviseur (OoH) : quand la virtualisation imbriquée devient pratique

Résumé

Nowadays, virtualized clouds are the de facto execution environment of modern applications, thanks to their very attractive costs and administration tasks simplification. Cloud users sometimes adopt nested virtualization by deploying hypervisors in their virtual machines (for test deployment purposes or to exploit hypervisor mechanisms), which duplicates the intrinsic costs of virtualization, leading to catastrophic performances and making nested virtualization generally unpractical and rarely utilized. In order to alleviate drawbacks induced by virtualization, hardware vendors started releasing, in 2005/2006, processors with technologies to support virtualization and provide better performance. Several hardware-virtualization features such as Intel PML, SPP, CAT, and EPT have been proposed, which currently can only be used by the hypervisor. Nonetheless, these features could also be beneficial to processes running inside virtual machines and then to cloud user applications. This thesis introduces Out of Hypervisor (OoH), a novel research axis driven by similar needs as nested virtualization. Instead of emulating full virtual hardware inside a virtual machine to support a hypervisor, OoH proposes to individually expose hypervisor-oriented hardware virtualization features to the guest OS so that its processes could also benefit from those features, making OoH an excellent alternative to nested virtualization. We prove the relevance of OoH in this thesis with memory write-protection and dirty page tracking in guest userspace. Memory write-protection is one of the key mechanisms to buffer overflow mitigation, a widespread memory safety violation whose prevalence has increased over the years to reach the top vulnerability reported in 2022. And dirty page tracking is at the heart of various essential tasks such as working set size estimation, process checkpointing, and concurrent garbage collection. Working set size estimation is a critical need for cloud providers as it enables efficient overcommitment, which allows efficient resource management. Checkpointing facilitates recovery after failure, and garbage collection promotes efficient memory management and saving. To make these primordial tasks more efficient for cloud users, we apply OoH to Intel SPP (Sub-Page write Permissions) and Intel PML (Page Modification Logging). SPP was introduced in 2018 and provides fine-grained write-protect accesses at a 128B sub-page granularity instead of a traditional 4KB page. And PML is a feature released in 2015 that allows efficient dirty page tracking for improving virtual machines’ live migration.
De nos jours, le cloud est l'environnement d'exécution par excellence des applications modernes, grâce à leurs coûts très attractifs et la simplification des tâches d'administration.Les utilisateurs du cloud réalisent parfois de la virtualisation imbriquée (nested virtualisation) en déployant des hyperviseurs dans leurs machines virtuelles (à des fins de tests de déploiement ou même pour exploiter les mécanismes des hyperviseurs), ce qui exacerbe les coûts intrinsèques de la virtualisation, conduisant à des performances catastrophiques et rendant la virtualisation imbriquée généralement peu pratique et rarement utilisée.Cette thèse introduit Out of Hypervisor (OoH), un nouvel axe de recherche motivé par des besoins semblables à ceux de la virtualisation imbriquée.Au lieu d'émuler du matériel virtuel complet à l'intérieur d'une VM pour supporter un hyperviseur, le principe d'OoH est d'exposer individuellement les fonctionnalités de virtualisation matérielle actuelles au système d'exploitation invité afin que ses processus puissent également en bénéficier.Afin de pallier les dégradations induites par la virtualisation, les fabricants de processeur ont commencé à commercialiser, en 2005/2006, des processeurs dotés de technologies permettant de prendre en charge la virtualisation au niveau du matériel et de ce fait offrir de meilleures performances.Plusieurs fonctionnalités de virtualisation matérielle telles que Intel PML, SPP, CAT et EPT ont été proposées, qui ne peuvent actuellement être utilisées que par l'hyperviseur.Néanmoins, ces fonctionnalités pourraient également être bénéfiques aux processus s'exécutant dans les machines virtuelles, et donc aux applications des utilisateurs dans le cloud.Des exemples concrets d'application pour OoH sont la protection de la mémoire et le tracking des pages mémoire.La protection de la mémoire en écriture est l'un des mécanismes clés des techniques de protection contre les buffers overflows qui sont une vulnérabilité très répandue dont la prévalence a augmenté au fil des ans pour devenir en 2022 le problème de sécurité le plus important et le plus critique.Le suivi des pages sales est au coeur de diverses tâches essentielles, telles que le checkpoint des processus (qui facilite la récupération de données après une défaillance) et le garbage collection (qui favorise une gestion rationnelle et efficace de la mémoire). Ces deux tâches primordiales peuvent être rendues plus efficaces pour les utilisateurs du cloud en tirant parti, respectivement, des technologies Intel PML (Page Modification Logging) et Intel SPP (Sub-Page write Permissions). Pour prouver ceci, cette thèse illustre OoH avec PML et SPP.PML est une fonctionnalité publiée en 2015 qui permet un tracking efficace des pages mémoire modifiées, pour améliorer la migration en live des VMs.SPP a été introduit en 2018, permettant de protéger la mémoire à la granularité d'une sous-page de 128 octets au lieu de 4 Ko.
Fichier principal
Vignette du fichier
2023COAZ4010.pdf (4.46 Mo) Télécharger le fichier
Origine : Version validée par le jury (STAR)

Dates et versions

tel-04071875 , version 1 (17-04-2023)

Identifiants

  • HAL Id : tel-04071875 , version 1

Citer

Stella Bitchebe. Out of hypervisor (OoH) : when nested virtualization becomes practical. Hardware Architecture [cs.AR]. Université Côte d'Azur, 2023. English. ⟨NNT : 2023COAZ4010⟩. ⟨tel-04071875⟩
96 Consultations
64 Téléchargements

Partager

Gmail Facebook X LinkedIn More