Au delà de l'hyperviseur (OoH) : quand la virtualisation imbriquée devient pratique
| Auteur / Autrice : | Stella Bitchebe |
| Direction : | Alain Bouzaïde Tchana |
| Type : | Thèse de doctorat |
| Discipline(s) : | Informatique |
| Date : | Soutenance le 03/02/2023 |
| Etablissement(s) : | Université Côte d'Azur |
| Ecole(s) doctorale(s) : | École doctorale Sciences et technologies de l'information et de la communication (Nice ; 1992-....) |
| Partenaire(s) de recherche : | Laboratoire : Laboratoire Informatique, signaux et systèmes (Sophia Antipolis, Alpes-Maritimes) |
| Jury : | Président / Présidente : Laurent Réveillère |
| Examinateurs / Examinatrices : Alain Bouzaïde Tchana, Laurent Réveillère, Edouard Bugnion, Gaël Thomas, Guillaume Urvoy-Keller, Renaud Lachaize, Oana Balmau, Natacha Crooks | |
| Rapporteurs / Rapporteuses : Edouard Bugnion, Gaël Thomas |
Mots clés
Mots clés contrôlés
Résumé
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.