• Aucun résultat trouvé

grâce au mode Passthrough, fourni par Xen (figure 2.11). De plus, DD peut être connecté, à travers une interface Backend et des canaux Input/Output (I/O), à un ou plusieurs domaines secondaires Dom Guest, qui hébergent les différentes VM invitées de la MNetBox. Ainsi, tous les paquets de données envoyés/reçus par les Dom Guest transitent obligatoirement par DD. La configuration et la création des Dom Guestse font également au niveau du Dom0. Enfin Les VM invitées communiquent entre elles (ou bien avec l’extérieur de la MNetBox) grâce à un bridge logiciel qui est établi dans DD.

Le framework ODP est déployé au sein de l’espace utilisateur Linux de DD. En outre, un certain nombre de cœurs CPU virtuels (vCPUi) lui sont alloués pour l’accélération du traitement de trafic transitant par DD. ODP permet également de gérer les différentes NIC exploitées ainsi que le bridge, interconnectant les VM invitées. L’architecture proposée dans la figure 2.11 présente deux avantages : 1) la possibilité d’allouer un nombre de vCPU supérieur au nombre de cœurs CPU physiques présents sur l’équipement sous-jacent (CPU overcommitment), bien que cela peut dégrader les performances réseau des VM sur certaines architectures de processeur ; 2) l’exécution isolée du DD impacte peu les performances des ressources physiques sous-jacentes et des Dom Guest.

De ce fait, le principe de notre solution est de substituer les cœurs CPU physiques par des cœurs virtuels présents dans DD. ODP crée alors un nombre de threads correspondant au nombre de vCPU utilisés (un thread pour chaque vCPU). Chaque thread permet par la suite de traiter les paquets de données transitant par DD, selon le mode défini à l’exécution de ODP (voir Section 2.2.1).

2.5 Evaluation des performances

Dans cette section, nous avons comparé les performances fournies par notre nouvelle architecture à celles fournies par une architecture Xen traditionnelle. Pour ce faire, nous avons mesuré les indicateurs suivants : le débit de données et le nombre de paquets traité par seconde. Les implémentations évaluées dans cette partie sont présentées dans la figure 2.12. Chaque MNetBox embarque, dans le Dom0, un noyau Linux propriétaire, développé par VirtuOR et est équipée par un processeur IntelCoreT M2Duo de 2.5 GHz, ainsi que par quatre cartes réseau de type Intel 82571EB Gigabit Ethernet. En outre, des VM de type Linux Debian sont déployées, au sein du DomU et du Dom Guest des architectures « Native » et « New », respectivement. Ces VM intègrent des générateurs de trafic de données qui vont permettre d’évaluer les performances des deux implémentations. Enfin, une autre VM Linux Debian, contenant la version 1.3 de ODP, est instanciée dans le domaine Driver et elle est directement reliée à l’interface réseau sous-jacente via le mode Passthrough. Nous avons utilisé en particulier cette version car elle fournit un outil d’accélération de paquets. Cet outil sera par la suite remplacé, à partir de la version 1.6, par DPDK et Netmap.

Les indicateurs de performance cités précédemment sont mesurés entre deux VM invitées, locali-sées dans deux MNetBox distinctes et connectées à travers une liaison Ethernet. Pour cela, des paquets UDP, d’une taille fixe de 1512 octets, sont générés par la VM source vers la VM destination, à travers l’outil Iperf dans l’architecture native, et à travers un générateur ODP dans la nouvelle architecture. Dans ce second cas, le trafic de données passera par le DD/ODP et transitera directement vers la NIC,

CHAPITRE 2. ACCÉLÉRATION OPTIMISÉE DU TRAITEMENT DES PAQUETS DE

DONNÉES AU SEIN DE LA PLATEFORME MNET 63

FIGURE2.12 – Plateformes d’expérimentation des architectures Xen « Native » et « New ». contrairement à l’architecture native, où les données sont d’abord traitées par Xen avant d’être ache-minées vers la destination. Les résultats obtenus sont illustrés dans les figures 2.13, 2.14 et 2.15.

Les résultats du débit ainsi que du nombre de paquets traités (figure 2.13) sont obtenus à partir d’une moyenne, calculée sur un intervalle de 100 sec. Par ailleurs, nous varions le nombre de cœurs CPU virtuels, embarqués respectivement dans DD, pour l’architecture « New » et dans le DomU, pour l’architecture « Native ». Nous observons que l’utilisation de ODP (architecture « New ») apporte un gain moyen de 15% pour le débit de données (figure 2.13(A)), avec 958 Mbit/s (contre 816 Mbit/s pour l’architecture native) sur une Gigabit NIC, lorsque le nombre de vCPU est supérieur à 1. Même constat pour le nombre moyen de paquets UDP traité à la seconde (figure 2.13(B)), avec une augmentation de 17% pour la nouvelle architecture, en comparaison avec l’architecture Xen traditionnelle. Enfin, le pourcentage d’utilisation de la bande passante digitale (figure 2.14) augmente également grâce à ODP, atteignant les 95%, avec 2 et 3 vCPU. Notons que les performances de la nouvelle architecture stagnent avec l’utilisation de 3 ou 4 vCPU, dû à la saturation de la carte réseau. Ces performances tendent même à baisser sur la plateforme MNet, lorsque le nombre de vCPU est supérieur à 4 (nombre maximum de cœurs physiques dans la MNetBox), en raison du CPU overcommitment.

Nous avons mesuré également, pour chacune des architectures Xen, l’augmentation de l’utilisation des cœurs CPU physiques et virtuels au sein de la MNetBox. Nous avons noté que ODP a ajouté un overhead de 89% des ressources du processeur virtuel du DD. Cependant, cette surexploitation

64 2.5. EVALUATION DES PERFORMANCES

FIGURE2.13 – Moyenne du débit de données et du nombre des paquets traités à la seconde en fonction du nombre de cœurs vCPU.

FIGURE2.14 – Comparaison du pourcentage d’utilisation de la bande passante digitale entre les archi-tectures New et Native .

CHAPITRE 2. ACCÉLÉRATION OPTIMISÉE DU TRAITEMENT DES PAQUETS DE

DONNÉES AU SEIN DE LA PLATEFORME MNET 65

FIGURE2.15 – Comparaison de l’augmentation (en pourcentage) de l’utilisation des CPU physiques (Dom0) et des CPU virtuelles.

n’impacte pas les cœurs CPU physiques utilisés par le Dom0, avec seulement 1% d’overhead. Par ailleurs, le DomU (architecture native) n’utilise que 9.4% des ressources vCPU et, à l’instar du DD, n’affecte pas les performances du Dom0.