Mémoire de maîtrise (2021)
Résumé
De nos jours, plusieurs architectures réseau innovantes, telles que les réseaux définis en logiciel (SDN) et la virtualisation des fonctions de réseau (NFV), ont été proposées, afin de répondre aux besoins des applications modernes, en bande passante et flexibilité. L'objectif de ces architectures est d'augmenter la programmabilité des réseaux, afin de faciliter leur gestion, et rendre plus flexible le déploiement des nouveaux services. En effet, le SDN repose sur la centralisation de l'intelligence du réseau dans une entité appelée Contrôleur SDN, et la suppression des fonctions de contrôle dans les équipements de transfert de données. D'un autre côté, la NFV se base sur l'exploitation des fonctions réseau (p. ex., routage, filtrage, équilibrage de charge) sous la forme d'applications qui s'exécutent dans des machines virtuelles, au lieu d'utiliser du matériel spécifique, cher et peu flexible. Dans ces architectures, le logiciel devient de plus en plus important, en prenant en charge des fonctions qui étaient auparavant remplies par du matériel dédié. Toutefois, cette "softwarisation" favorise davantage l'occurrence des bogues de performance dans les réseaux, et complique énormément le diagnostic de leurs causes profondes. Le travail de recherche que nous présentons dans cette thèse porte sur l'analyse de performance des solutions logicielles utilisées dans la mise en oeuvre des infrastructures SDN et NFV. En effet, nous proposons une approche d'analyse qui se base sur le traçage dans la collecte des données de performance requises pour les analyses. Pour appliquer cette approche, nous avons instrumenté le code source de plusieurs logiciels, comme DPDK, Open vSwitch, et KVMGT. Les points de trace insérés permettent de mettre en lumière le fonctionnement du logiciel observé, et de décrire en détails les interactions entre ses différents mécanismes. Pour capturer les données exportées par ces points de trace, nous avons utilisé un outil qui s'appelle Linux Trace Toolkit Next Generation (LTTng). Ce traceur est particulièrement connu pour son faible surcoût et sa capacité à tracer le noyau Linux, ainsi que les applications qui s'exécutent dans l'espace utilisateur. Afin de minimiser l'impact du traçage sur les performances du logiciel observé, nous avons fait des compromis entre le niveau de détails des données à exporter et le surcoût que nous estimons que l'utilisateur peut tolérer. Notre évaluation des surcoûts induits par la phase de collecte des données montre que l'impact du traceur sur le temps d'exécution du programme surveillé est très faible (<2%). Toutefois, le surcoût en termes d'espace de stockage est assez élevé. Pour atténuer ce surcoût, nous avons proposé une méthode qui permet de réduire la taille des traces générées.
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements
