FLASH INFORMATIQUE FI



Les processeurs de réseau




Philippe JOYE


avec l’aide de Aron Bernasconi, Michel Rast & Dominique Rhème (Ecole d’Ingénieurs et d’Architectes de Fribourg) et les appuis de Thomas Martinson & Daniel Gachet (Keymile SA)

Introduction

Actuellement, la Suisse développe (trop) peu d’équipements de réseaux de télécommunications (multiplexeurs, routeurs, switches). Les caractéristiques de ces équipements technologie de pointe, haute valeur ajoutée, domaine en pleine extension devraient pourtant en faire des produits particulièrement adaptés à la spécificité suisse.

La technologie mise en oeuvre dans les équipements de réseau est actuellement le plus souvent du matériel et du logiciel en combinaison avec des microprocesseurs dont l’architecture est traditionnelle. Les demandes de protocoles de télécommunications de plus en plus complexes (p. ex. voix sur IP) et l’augmentation rapide des débits (Gigabit/s) ont encouragé l’apparition d’une nouvelle génération de composants, sortes de processeurs spécialisés pour les systèmes de télécommunications, appelés Network Processors. Ces network processors possèdent à la fois des interfaces de types télécom, des processeurs embarqués orientés sur les protocoles (IP, ATM, Ethernet) et une très grande rapidité. Cette technologie étant très nouvelle, il est aujourd’hui encore difficile de séparer le rêve de la réalité.

Le projet réalisé dans le cadre du laboratoire de télécommunications de l’Ecole d’Ingénieurs et d’Architectes de Fribourg visait à développer un module exploratoire (software et hardware) comprenant des fonctions de circuits (2 et 34Mbit/s) et un interfonctionnement IP/ATM. Ce module, basé sur un network processor, devrait au minimum présenter des fonctions de couche 2 (bridging) et si possible des fonctions de couche 3 (routage), et ceci pour des vitesses au minimum de 100Mbit/s à chaque interface. Il s’agissait de profiter au maximum des circuits disponibles commercialement (par exemple cartes d’évaluation proposée par les fabricants).

Ce développement a été précédé d’une évaluation technique et commerciale serrée des produits existants sur le marché. L’étude technique a étudié la faisabilité en fonction d’un cahier des charges technico-économique en mettant l’accent sur les possibilités de programmation du network processeur. L’étude commerciale consistait à étudier des aspects stratégiques importants comme la pérennité du composant, l’évolution des prix, et les perspectives commerciales de l’entreprise fournissant le composant.

Les réseaux d’aujourd’hui

L’explosion de l’utilisation d’Internet a causé une augmentation dramatique de la demande en largeur de bande. Cette demande a créé à son tour un gros marché pour les routeurs IP à très haute performance et très haut débit dans les coeurs de réseaux. Les très grandes largeurs de bande vont donc demander aux pauvres routeurs des vitesses de traitement encore plus grandes et des gestions de tâches concurrentes encore plus exigeantes.

Avec l’introduction des nouveaux services Internet, le trafic va non seulement augmenter, mais il va également évoluer dans sa diversité. Les services temps réel comme le transport de la voix sur IP et la diffusion de vidéo et de son sur le Web constitueront la majeure partie du trafic en terme de quantité. Une fois encore, on demandera aux éléments de réseaux (routeurs et switches) de s’adapter aux nouveaux protocoles dans les plus brefs délais.

Les fournisseurs d’accès et les exploitants de réseaux ne sont plus capables de modifier leurs équipements tous les trois mois sous prétexte que de nouvelles fonctions avec de nouveaux accès doivent être fournis. Ils vont donc privilégier des solutions souples et facilement configurables.

Qu’est ce qu’un processeur de réseau ?

En parlant simplement, un processeur de réseau est un élément programmable qui est optimisé pour le traitement des paquets de données. Plus spécialement, il est conçu pour pouvoir traiter très rapidement les fonctions des couches 3 (réseau) à 7 (application) du modèle OSI. Des tâches spécialisées consistent par exemple à parser une en-tête ou à rechercher une image binaire sur un très grand flux binaire.

De façon générale un processeur de réseau (en anglais NPU pour Network Processor Unit) remplacera des architectures de processeurs classiques qui ont été utilisées jusqu’à ce jour. En effet les vitesses de traitement demandées (10 Gigabit/s) ne pourront plus être garanties.

Figure 1 - Block Diagram of Typical NPU 

Les architecture des processeurs de réseau qui commencent à être proposées sur le marché intègrent dans un seul circuit plusieurs unités de calcul (CPU) Chacune de ces unités sera dédiées à une tâche très précise et indépendante comme la lecture et le traitement des données reçues sur un port physique. Travaillant massivement en parallèle, ces micro-engines programmables en assembleur déchargeront le CPU central qui pourra alors entièrement se consacrer aux tâches de routage de haut niveau.

La figure 1 montre un exemple de structure interne que proposent les processeurs de réseaux.

Les Architectures

Actuellement, les éléments de réseau sont presque entièrement centrés sur des processeurs CISC très puissants. Comme le montre la figure 2, chaque sortie spécifique à un type d’interface dispose de composants spécifiques liés à un bus de données compatibles avec le processeur principal.

Figure 2 - Traditional Router Block Diagram 

L’architecture proposée avec l’utilisation d’un processeur de réseau pourrait ressembler à celle proposée dans la figure 3.

Figure 3 - A Possible Generic Architecture 

Le parallélisme du traitement proposé par le processeur de réseau permettra une très bonne intégration des nouveaux protocoles sans modification matérielle (hardware).

Conclusion

Les processeurs de réseau présentent pour les fournisseurs de matériel une bonne opportunité de rendre leur développement plus souple et plus facilement adaptable aux désirs des clients. Cependant, cet avantage demandera un effort de développement plus soutenu des différents composants logiciels à mettre en oeuvre. En effet, la synchronisation des multiples CPU se révèle hautement critique à gérer.

Référence

[1] A guide to Network Processors, MicroDesign Resources 2000, L.Gwennap & Bob Wheler

[2] Microprocessor Report, December 2000

[3] Network + Interopt 2000, Conference Slide

[4] Intel IXP1200 Network Processor Documentation

[5] Motorola C- Port Documentation

[6] Vitesse Sitera Technical Documentation

[7] MMC / AMCC Technical Documentation



Cherchez ...

- dans tous les Flash informatique
(entre 1986 et 2001: seulement sur les titres et auteurs)
- par mot-clé

Avertissement

Cette page est un article d'une publication de l'EPFL.
Le contenu et certains liens ne sont peut-être plus d'actualité.

Responsabilité

Les articles n'engagent que leurs auteurs, sauf ceux qui concernent de façon évidente des prestations officielles (sous la responsabilité du DIT ou d'autres entités). Toute reproduction, même partielle, n'est autorisée qu'avec l'accord de la rédaction et des auteurs.


Archives sur clé USB

Le Flash informatique ne paraîtra plus. Le dernier numéro est daté de décembre 2013.

Taguage des articles

Depuis 2010, pour aider le lecteur, les articles sont taggués:
  •   tout public
    que vous soyiez utilisateur occasionnel du PC familial, ou bien simplement propriétaire d'un iPhone, lisez l'article marqué tout public, vous y apprendrez plein de choses qui vous permettront de mieux appréhender ces technologies qui envahissent votre quotidien
  •   public averti
    l'article parle de concepts techniques, mais à la portée de toute personne intéressée par les dessous des nouvelles technologies
  •   expert
    le sujet abordé n'intéresse que peu de lecteurs, mais ceux-là seront ravis d'approfondir un thème, d'en savoir plus sur un nouveau langage.