Optimisation de la compilation de déparseurs pour processeurs réseau implémentés sur FPGA

Thomas Luinaud

Thèse de doctorat (2022)

Accéder à ce document
Disponible
Libre accès au texte intégral dans PolyPublie
Texte Texte • 901kB •

Résumé

Les réseaux de télécommunication ont vu leur taille, leur complexité et leur débit augmenter de façon très importante ces dernières années. Pour suivre cette évolution, les commutateurs, responsables d'aiguiller les paquets, ont perdu en flexibilité ce qui a rendu l'intégration de nouveaux protocoles plus compliquée. Afin de redonner de la flexibilité aux réseaux, le paradigme du réseau défini par logiciel — Software Defined Networking (SDN) a été introduit. Avec le SDN, le plan des données et le plan de contrôle sont séparés et peuvent donc être modifiés de manière indépendante. Récemment, afin de rendre le plan des données programmables, l'architecture de commutateur indépendante des protocoles — Protocol Independent Switch Architecture (PISA) a été introduite avec le langage P4 permettant de la programmer. Dans cette thèse, nous nous intéressons à l'optimisation de la compilation d'applications décrites dans le langage P4 en vue de leur implémentation sur des réseaux prédiffusés programmables — Field Programmable Gate Array (FPGA). Tout d'abord, nous cherchons à définir les limites des FPGA pour l'implémentation d'applications décrites avec le langage P4. Pour cela, nous proposons une évaluation des différents éléments composant l'architecture PISA, et des pistes de travail afin d'améliorer l'implémentation de plans des données sur FPGA. Les résultats de notre évaluation montrent que la microarchitecture actuelle des FPGA limite l'implémentation de certains types de comparaisons ainsi que le débit maximum qui peut être atteint. Également, nos résultats montrent que l'implémentation du déparseur, responsable de générer le paquet à émettre, peut être améliorée. À la suite de notre analyse de l'implémentation de programmes P4 sur FPGA, nous avons identifié deux éléments limitant les implémentations actuelles du déparseur. D'une part, le graphe de déparsage généré depuis P4 est trop séquentiel. D'autre part, les architectures de déparseurs ne tirent pas suffisamment avantage de la structure interne des FPGA. Pour augmenter le parallélisme exprimé par le graphe de déparsage, nous proposons d'effectuer une fermeture transitive du graphe. Cette transformation permet d'exposer le parallélisme pour l'évaluation des conditions de transition entre les sommets du graphe. Avec la transformation du graphe de déparsage, nous proposons une nouvelle architecture de déparseur générée depuis le graphe. L'architecture proposée maximise l'utilisation de connexions fixes afin de tirer avantage de la capacité de reconfiguration du FPGA. Notre approche permet ainsi de générer des déparseurs depuis des programmes P4 utilisant de 4× à 10× moins de ressources que les travaux précédents. Afin de réduire le coût d'implémentation de notre nouvelle architecture, nous proposons d'élaguer le graphe de déparsage en effectuant la spécialisation de programmes P4. La spécialisation est effectuée à l'aide de l'évaluation symbolique de certaines variables du programme P4. L'élagage du graphe de déparsage permet de réduire de 50 % l'utilisation de ressources par le déparseur comparé à la première approche proposée.

Programme:
Génie informatique
Directeurs ou directrices:
Adresse URL de PolyPublie:
Université/École:
Polytechnique Montréal
OAI:
oai:publications.polymtl.ca:10357
ORCID
Date du dépôt:
01 févr. 2023 15:03
Dernière modification:
14 oct. 2026 11:09
Citer en APA 7:
Luinaud, T. (2022). Optimisation de la compilation de déparseurs pour processeurs réseau implémentés sur FPGA [Thèse de doctorat, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/10357/

Statistiques

Total des téléchargements à partir de PolyPublie

Téléchargements par année

Provenance des téléchargements

Actions réservées au personnel

Afficher document
Afficher document