Le volume de trafic échangé dans les centres de données croît de façon exponentielle et tout nous porte à croire que cette tendance devrait continuer dans un avenir proche. Afin de suivre cette augmentation, de nombreux progrès dans le domaine des réseaux ont été effectués : les débits des interfaces réseau modernes atteignent aujourd’hui des vitesses supérieures à 40Gbps. Néanmoins, l’exploitation de ces interfaces à haut débit est limitée par l'architecture des piles réseau génériques qui sont incapables de traiter les paquets reçus à une vitesse suffisamment rapide. De nombreuses solutions matérielles et logicielles sont donc récemment apparues afin d'augmenter la vitesse de traitement des paquets.
Dans cette thèse, nous étudierons différentes approches, reposant sur l’utilisation de logiciel, de matériel ou d’une combinaison des deux, afin d’améliorer les performances de la partie traitement de paquets réseau sur des hôtes de type serveur. Certaines solutions étudiées sont basées sur le routeur modulaire Click qui utilise, pour exécuter ses fonctions réseau, différents types de matériel (GPU, les FPGA, exécution en parallèle sur de multiples cœurs). Nous explorerons également des solutions logicielles alternatives à Click. Nous comparerons les solutions logicielles et matérielles de traitement de paquets en fonction de différents critères et discuterons de leurs contraintes et de leurs exigences ainsi que de leurs possibilités d'intégration dans des environnements virtualisés.
Comme première contribution, nous proposons une architecture de réseau « fabric » résiliente et hautement performante. Notre objectif est de construire un réseau maillé de niveau 2 utilisant uniquement des cartes d'accélération matérielle qui effectuent le traitement des paquets en place des routeurs et des commutateurs. Nous avons décidé d'utiliser, pour la communication entre ces cartes réseau intelligentes, le protocole TRILL qui permet d’avoir une meilleure utilisation des liens réseau tout en assurant un transfert de données au moindre coût entre les hôtes. Le traitement des paquets du plan de données est déchargé sur une carte réseau programmable qui effectue le traitement en parallèle. De plus, nous proposons d'utiliser l'API ODP afin que le code de l'application de traitement de paquets puisse être réutilisé par toute autre solution prenant en charge ladite l'API.
Notre deuxième contribution consiste à l’implémentation d’un plan de données du protocole TRILL sur la carte réseau intelligente MPPA (Massively Parallel Processor Array) prenant en charge l’API ODP. Nos résultats expérimentaux montrent que nous pouvons traiter les trames TRILL à un débit de ligne en full-duplex (jusqu'à 40Gbps) pour différentes tailles de paquets tout en réduisant le temps de latence.
Comme troisième contribution, nous proposons une analyse mathématique de l'impact des différentes topologies de réseau sur la charge du plan de contrôle. Nous avons examiné diverses topologies de réseau et comparé leurs charges induites par le trafic de contrôle. Nous avons également montré que la topologie hypercube était celle qui convenait le mieux à notre cas d'utilisation de centre de données PoP, car elle n'avait pas une charge de plan de contrôle élevée et avait une meilleure résilience que la topologie fat-tree tout en ayant une distance moyenne plus courte entre les nœuds.