Brevet FR2867642A1 — publié le 20050916

DISPOSITIF ET PROCÉDÉ DE TRAITEMENT DE TRAMES À CHAMP À UTILISATION MULTIPROTOCOLAIRE, POUR UN RÉSEAU DE COMMUNICATIONS L'invention concerne le domaine des réseaux de communications, et plus précisément le traitement de trames de données au sein de tels réseaux. Comme le sait l'homme de l'art, un certain nombre de techniques permettent à des réseaux, utilisant des protocoles de communication lo différents, d'échanger des données incluses dans des trames et d'assurer des services. Parmi ces techniques, on peut notamment citer l'encapsulation, qui permet à des réseaux différents de communiquer entre eux, et la conversion (ou mise en correspondance) qui permet à des réseaux de mettre en oeuvre des services offerts par d'autres réseaux. Afin de permettre l'ajout de nouvelles caractéristique ou fonctionnalités protocolaires, les techniques utilisées ont tendance à additionner ou empiler les champs de trame spécifiques à chaque protocole les uns au dessus des autres. Cela requiert en outre certaines modifications de la mise en oeuvre standard des protocoles. Or, ces techniques ont pour conséquence de dupliquer les informations de contrôle dans chaque unité de données de protocole (ou PDU pour Protocol Data Unit ), ce qui provoque un surdébit substantiel, génère des obstacles à I"'interfonctionnement" (ou "interopérabilité") des équipements de réseau et/ou à l'interconnectivité des réseaux et accroît la complexité de gestion des trames. L'invention a donc pour but d'améliorer la situation. Elle propose à cet effet un dispositif de traitement de trames de données pour un réseau de communications supportant au moins un protocole de communication, et comprenant, d'une part, des moyens de détection chargés, en cas de réception d'une trame de données, de déterminer parmi des ensembles de valeurs prédéfinies, qui correspondent respectivement à des traitements protocolaires différents, celui auquel appartient la valeur prise par un champ de trame choisi (contenu dans la trame reçue) utilisé par le protocole, et d'autre part, des moyens de traitement chargés de déterminer un traitement protocolaire spécifique qui correspond audit ensemble déterminé par les moyens de détection et devant être appliqué à la trame reçue. Préférentiellement, les moyens de traitement sont chargés d'ordonner l'application à la trame reçue du traitement protocolaire spécifique qui correspond à l'ensemble déterminé. Lorsque les moyens de traitement peuvent accéder à une première table de correspondance entre des identifiants d'ensembles de valeurs et des traitements protocolaires, ils peuvent être agencés de manière à déterminer io un traitement protocolaire correspondant à un ensemble de valeurs déterminé par les moyens de détection. De même, lorsque les moyens de traitement peuvent accéder à une seconde table de correspondance entre des traitements protocolaires et des valeurs protocolaires dédiées, ils peuvent être agencés de manière à ordonner le remplacement dans la trame reçue de la valeur de son champ de trame choisi par une valeur protocolaire dédiée au traitement spécifique déterminé. Par ailleurs, le dispositif peut comprendre une première mémoire, accessible à ses moyens de détection et stockant les différents ensembles de valeurs. Il peut également comprendre une seconde mémoire, accessible à ses moyens de traitement et stockant la première et/ou la seconde table(s) de correspondance. En outre, les moyens de détection peuvent être chargés de modifier les valeurs qui définissent l'un au moins des ensembles en fonction d'instructions reçues, provenant, par exemple, d'un plan de contrôle du réseau, dont les moyens de traitement constituent éventuellement l'une au moins des parties. Le protocole du réseau peut être, par exemple, un protocole dit de niveau 2 . Dans ce cas, il peut s'agir d'un protocole Ethernet et son champ de trame choisi peut être le champ dit Ethernet VLAN Tag . Mais, il peut également s'agir d'un protocole de tramage/encapsulation, comme par exemple le protocole GFP. De façon particulièrement avantageuse, l'un au moins des ensembles de valeurs peut être dédié à un traitement propre à un autre protocole ou service, différent de celui supporté par le réseau, comme par exemple GMPLS, L2-LSP et leurs évolutions et variantes. Par exemple, les moyens de traitement peuvent être agencés de manière à ordonner le remplacement de la valeur du champ Ethernet VLAN Tag par la valeur du champ dit GMPLS label . L'invention propose également un équipement de réseau équipé d'une partie au moins d'un dispositif de traitement du type de celui présenté ci-avant. L'invention propose en outre un procédé de gestion de trames de io données pour un réseau de communications supportant au moins un protocole de communication, et consistant, d'une première part, à choisir un champ de trame utilisé par le protocole au sein de trames de données, d'une deuxième part, à associer au champ de trame choisi des ensembles de valeurs correspondant à des traitements protocolaires différents, et d'une troisième part, en cas de réception d'une trame de données, à déterminer l'ensemble auquel appartient la valeur qui est contenue dans son champ de trame choisi, afin de déterminer le traitement protocolaire spécifique qui correspond à l'ensemble déterminé et devant être appliqué à la trame reçue. D'autres caractéristiques et avantages de l'invention apparaîtront à 20 l'examen de la description détaillée ci-après, et des dessins annexés, sur lesquels: - la figure 1 illustre de façon schématique un routeur équipé d'un exemple de réalisation d'un dispositif de traitement de trames selon l'invention, de type distribué, - la figure 2 illustre de façon schématique un exemple de trame de données à double encapsulation, de type classique, et - la figure 3 illustre de façon schématique un exemple de trame de données selon l'invention. Les dessins annexés pourront non seulement servir à compléter 30 l'invention, mais aussi contribuer à sa définition, le cas échéant. L'invention a pour objet de permettre l'utilisation d'un champ de protocole pour coder une information ou une fonctionnalité, éventuellement nouvelle, nécessaire au support par un réseau d'un protocole ou d'un service, éventuellement nouveau. L'invention propose à cet effet d'équiper chaque réseau de communications d'au moins un dispositif de traitement de trames de données s D, par exemple du type de celui illustré sur la figure 1. L'invention concerne tout réseau de communications au sein duquel les données sont transmises dans des champs de trame, et notamment les réseaux supportant un protocole dit à technologie de niveau 2, comme par exemple les réseaux Ethernet, ATM, FR, et X25, ainsi que le protocole GFP io (pour Generic Framing Procedure , aka G.7041) qui n'est pas un protocole à technologie de niveau 2 (ou de couche 2 ) mais un protocole de tramage/encapsulation (ou framing ). Par ailleurs, l'invention peut être mise en oeuvre soit sous une forme centralisée, soit sous une forme distribuée. Dans un cas comme dans l'autre, les dispositifs D selon l'invention doivent être raccordés aux, ou implantés au moins partiellement dans, les équipements (ou noeuds) de réseau R chargés de router ou commuter les trames de données au sein du réseau, comme par exemple les routeurs ou les commutateurs. On considère dans ce qui suit, à titre d'exemple illustratif, qu'un premier réseau Ethernet est raccordé à un second réseau à protocole Internet (ou IP). Considérée au sein du premier réseau (ici Ethernet), l'invention consiste tout d'abord à identifier (ou choisir) parmi les champs qui constituent les trames de données au format du protocole Ethernet, et plus précisément l'un des champs de contrôle du protocole qui constituent ce que l'homme de l'art appelle les unités de données de protocole (ou PDU pour Protocol Data Unit ), celui qui sert à assurer un traitement protocolaire particulier pour ledit protocole Ethernet. Par exemple on identifie le champ dit Ethernet VLAN Tag , chargé de définir des sous-réseaux virtuels au sein d'un même domaine Ethernet en distinguant les différents sous-réseaux par un identifiant appelé VLAN Tag . Puis, on associe à ce champ de trame choisi au moins deux ensembles de valeurs (ou intervalles de valeurs dans le cas le plus simple) correspondant respectivement à son traitement protocolaire natif (ou un nouveau traitement protocolaire de substitution), pour le protocole Ethernet, et à un traitement protocolaire différent, pour un autre protocole ou service que s l'on souhaite voir supporté ou mis en oeuvre par le premier réseau Ethernet. Cet autre protocole ou service peut être, par exemple, GMPLS (pour Generalized Multi Protocol Label Switching ) ou L2-LSP (pour Layer 2 Label Switched Path ). Il est rappelé qu'un service L2-LSP est un circuit (ou une connexion) virtuel(le) reposant sur un plan de contrôle GMPLS et lo requérant une infrastructure de réseau à technologie (quasi) de niveau 2. Par exemple, le premier ensemble de valeur correspond aux différentes valeurs que peut prendre le champ Ethernet VLAN Tag, tandis que le second ensemble de valeur correspond aux différentes valeurs que peut prendre le champ GMPLS label selon le protocole GMPLS. Une fois les ensembles définis, on les stocke dans une mémoire M1 du dispositif D. Il peut bien sûr s'agir d'une mémoire spécifique ou d'un espace mémoire réservé à cet effet et contenu dans une mémoire partagée entre plusieurs fonctions. Ce dernier comporte à cet effet, tout d'abord, des moyens de détection implantés, de préférence sous la forme de modules MD, dans chaque noeud R du premier réseau Ethernet. Chaque module de détection MD est chargé d'observer chaque trame qui parvient au niveau du module d'émission / réception MER du noeud R dans lequel il est implanté, afin de déterminer la valeur de son champ de trame choisi (ici Ethernet VLAN Tag). Une fois la valeur déterminée, le module de détection MD accède à la mémoire M1 pour déterminer l'ensemble de valeurs auquel il appartient. Le dispositif D comporte par ailleurs des moyens de traitement qui peuvent être soit centralisés dans un équipement de gestion du réseau, soit distribués sous la forme de modules de traitement MT dans chaque noeud R comportant un module de détection MD, comme illustré sur la figure 1. En d'autres termes, le premier réseau Ethernet peut comporter soit un dispositif D distribué dans chaque noeud R, pour ce qui concerne ses modules de détection MD, et dans un équipement de gestion pour ce qui concerne son module de traitement MT, soit une multiplicité de dispositifs D comportant à la fois un module de détection MD et un module de traitement MT et implantés chacun dans un noeud R de manière à traiter localement les trames reçues, comme c'est le cas dans l'exemple illustré sur la figure 1. Lorsque chaque noeud R est équipé d'un dispositif D complet, le module de traitement MT est chargé de déterminer le traitement protocolaire spécifique qui correspond à l'ensemble qui a été déterminé par le module de détection MD associé, et qui doit être appliqué à la trame reçue. Pour ce faire, le dispositif D comprend préférentiellement une mémoire (ou espace mémoire lo réservé) M2, couplée au module de traitement MT, et dans laquelle est stockée une première table de correspondance entre les identifiants des ensembles de valeurs (stockées dans la mémoire Ml) et les traitements protocolaires associés. Certains de ces traitements peuvent correspondre, éventuellement au sein d'une autre table, à des valeurs protocolaires dédiées destinées à remplacer une valeur de champ de trame choisi, contenu dans une trame reçue. Par exemple, un traitement protocolaire, correspondant à un ensemble de valeurs, peut consister à déterminer dans une table de labels du noeud R, à l'aide du module de traitement MT, l'identifiant de LSP qui identifie la connexion LSP avec le noeud suivant sur le chemin de la trame reçue. Il est avantageux que chaque dispositif D dispose de sa propre table de labels, étant donné que les labels ont fréquemment une signification locale et/ou temporaire associée à deux noeuds du réseau. De la sorte, un même ensemble de valeurs peut correspondre au sein de deux noeuds distants à un même traitement protocolaire, mais à des valeurs protocolaires (identifiants LSP) différentes. Lorsque le réseau ne comprend qu'un unique module de traitement MT centralisé, ce dernier est chargé de déterminer le traitement protocolaire spécifique, qui correspond à l'ensemble qui a été déterminé par l'un des modules de détection MD implanté dans l'un des routeurs R qu'il supervise, et qui doit être appliqué à la trame que ce routeur R a reçue. La détermination du traitement protocolaire est identique à celle décrite ci-avant, si ce n'est que la mémoire M2 contenant la table de correspondance identifiants d'ensemble/traitements protocolaires est préférentiellement stockée dans le serveur de gestion dans lequel est implanté le module de traitement MT. Il est plus commode que le serveur de gestion dispose de la mémoire M2, mais cela n'est pas obligatoire. Le module de traitement MT centralisé peut en effet récupérer les valeurs stockées dans la mémoire M2 en même temps que les informations sur la trame reçue à traiter. Chaque module de détection MD est préférentiellement agencé de manière à remplacer, dans la mémoire M1 qui lui est associée, les valeurs qui définissent l'un au moins des ensembles dont il assure la détection. II peut io également être agencé de manière à ajouter dans la mémoire M1 qui lui est associée, un nouvel ensemble de valeurs. Ce remplacement ou cet ajout est effectué en fonction d'instructions reçues préférentiellement du plan de contrôle du réseau PC, lequel est soit centralisé, par exemple dans un serveur de gestion, soit distribué dans chaque noeud R, comme illustré sur la figure 1. Il est important de noter qu'un plan de contrôle PC distribué peut faire partie intégrante d'un dispositif D, comme illustré, ou qu'en variante un module de traitement MT distribué peut constituer tout ou partie d'un plan de contrôle PC distribué. Par ailleurs, chaque module de traitement MT est préférentiellement agencé de manière à remplacer, dans la mémoire M2 qui lui est associée, le traitement protocolaire qui est associé à l'un au moins de ses ensembles. II peut également être agencé de manière à ajouter dans la mémoire M2 qui lui est associée, un traitement protocolaire qui est associé à un nouvel ensemble. Ce remplacement ou cet ajout est effectué en fonction d'instructions reçues préférentiellement du plan de contrôle du réseau PC, présenté ci-avant. La mise à jour des contenus des mémoires M1 et M2 peut se faire dynamiquement, et de façon périodique ou bien chaque fois qu'une 30 modification est décidée par l'opérateur du réseau. Grâce à l'invention, on peut désormais changer la sémantique d'une partie choisie de la PDU d'une trame en fonction de sa valeur. Ainsi, un noeud R peut gérer plusieurs protocoles et/ou services différents sur une même s interface, à un même instant (paquet après *paquet), et avec un unique protocole hôte. L'infrastructure d'un réseau, par exemple Ethernet, n'a donc pas besoin d'être modifiée pour permettre audit réseau de supporter un ou plusieurs autres protocoles et/ou nouveaux services que celui ou ceux pour lequel il a été initialement conçu, exception faite des moyens de traitement qui doivent être adaptés aux nouveaux traitements protocolaires envisagés (comme par exemple être capables de gérer les labels GMPLS (ou G-labels)). En particulier, le protocole hôte du réseau n'a pas besoin d'être modifié ou adapté, puisque seul le traitement protocolaire de l'un au moins des champs lo de contrôle est changé conformément à la configuration du plan de contrôle PC qui est transparente aux fonctions de bas niveau. On se réfère maintenant aux figures 2 et 3 pour comparer, à l'aide d'un exemple, la différence entre une trame de données de l'art antérieur et une trame de données selon l'invention. On a représenté sur la figure 2 un exemple de trames de données TDE de l'art antérieur permettant le transport de données dans un réseau Ethernet, dans le cas d'une double encapsulation de type IP/MPLS. Plus précisément, la trame Ethernet TE, contenant les données à transporter, est encapsulée à l'aide d'une première capsule Cl constituée de deux champs de contrôle MPLS (Label 1 et Label 2, chacun constitués de quatre octets), elle-même encapsulée à l'aide d'une seconde capsule C2 constituée de trois champs d'entête de la trame Ethernet pour le transport (SP-DA (adresse destination), SP-SA (adresse source) et Type, constitués respectivement de six octets, six octets et deux octets). La trame Ethernet TE encapsulée comprend classiquement un champ DA de six octets, un champ SA de six octets, un champ VLAN Tag de quatre octets, un champ type de deux octets, un champ de données comportant entre quarante six et mille cinq cents octets, un champ de bourrage (ou padding ) dont le nombre d'octets varie selon le nombre d'octets du champ de données, et un champ FCS de quatre octets. Dans un réseau selon l'invention, la double encapsulation de la trame Ethernet TE n'a plus lieu d'être, puisque l'on peut utiliser le champ VLAN Tag pour véhiculer les informations de contrôle d'un champ de type GMPLS label, par exemple. Par conséquent, la trame de données TDE de la figure 2 se présente désormais sous la forme illustrée sur la figure 3, c'est-à-dire sous la forme d'une nouvelle trame Ethemet NTE dans laquelle le champ VLAN Tag sert à la fois à sa fonction native, qui correspond à un premier ensemble de s valeurs, et à un Label GMPLS (ou L2-LSP), qui correspond à un second ensemble de valeurs. Ainsi, lorsqu'un noeud R du réseau Ethernet reçoit une trame NTE, son (ou le) dispositif D analyse le contenu du champ VLAN Tag afin de déterminer s'il désigne sa fonction native ou bien un traitement protocolaire de lo label GMPLS. Puis, une fois la détermination effectuée le noeud R peut appliquer à la trame NTE reçue le traitement protocolaire approprié. Le dispositif de traitement D selon l'invention, et notamment son module de traitement MT et son (ou ses) module(s) de détection MD, peuvent être réalisés sous la forme de circuits électroniques, de modules logiciels (ou informatiques), ou d'une combinaison de circuits et de logiciels. Comme mentionné précédemment, l'invention ne nécessite aucune addition ou modification aux standards protocolaires existants, exception faite des extensions GMPLS nécessaires au support des L2-LSPs (lesquelles ne génèrent pas de complexité en terme de gestion). En outre, l'invention permet une réduction importante du nombre de champs de contrôle d'encapsulation puisqu'elle permet de supprimer la duplication d'informations de contrôle. De plus, l'invention permet de conserver en l'état l'infrastructure, la technologie et le protocole d'un réseau, sans modification des standards. Par ailleurs, l'invention permet un fonctionnement au minimum dual qui autorise l'introduction progressive de nouveaux protocoles et/ou services tant au niveau des noeuds (carte après carte) qu'au niveau du réseau (noeud après noeud). L'invention permet également de bénéficier au sein d'un réseau Ethernet des caractéristiques du protocole GMPLS, et notamment en termes de routage, de signalisation, de protection et d'ingénierie de trafic. Enfin, l'invention peut être facilement mise en oeuvre par une intégration au moins partielle dans les unités de traitement des réseaux (ou io NPU pour Network Process Unit ) ou dans les processeurs, étant donné que seul le traitement de certains champs de contrôle choisis est modifié (sémantique, format interne) et non le format externe des unités de données de protocole (PDUs). L'invention ne se limite pas aux modes de réalisation de dispositif de traitement, d'équipement de réseau (ou noeud) et de procédé de traitement décrits ci-avant, seulement à titre d'exemple, mais elle englobe toutes les variantes que pourra envisager l'homme de l'art dans le cadre des revendications ci-après. lo Ainsi, dans la description qui précède on a décrit un exemple de mise en oeuvre de l'invention pour un protocole de niveau 2, tel que le protocole Ethernet. Mais, l'invention n'est pas limitée à ce seul type de protocole. Elle s'applique également à certains protocoles de tramage/encapsulation, comme par exemple le protocole GFP. Dans ce cas, son champ de trame choisi peut être par exemple le champ dit Channel Identifier (CID), chargé de définir l'un des canaux de communication aux points de terminaison des liaisons logiques GFP, ou bien un champ dit de réserve (ou Spare ) libre d'utilisation. Le champ CID peut, par exemple, être utilisé pour définir un compteur à décrément, qui est initialisé selon un adressage relatif à partir d'un noeud émetteur (ou source), et permettant de déterminer lors de la réception de la trame GFP dans un noeud si cette trame GFP à atteint sa destination finale et peut donc être retirée du médium de transmission ou si ladite trame GFP est destinée à un noeud situé en aval sur le lien de communication. 2867642 Il REVENDICATIONS 1. Dispositif de traitement de trames de données (D) pour un réseau de communications supportant au moins un protocole de communication, caractérisé en ce qu'il comprend des moyens de détection (MD) agencés, à réception d'une trame de données, pour déterminer parmi des ensembles de valeurs prédéfinies, correspondant respectivement à des traitements protocolaires différents, celui auquel appartient une valeur prise par un champ de trame choisi contenu dans ladite trame reçue et utilisé par ledit protocole, lo et des moyens de traitement (MT) agencés pour déterminer un traitement protocolaire spécifique, correspondant audit ensemble déterminé par lesdits moyens de détection (MD) et devant être appliqué à ladite trame reçue. 2. Dispositif selon la revendication 1, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour ordonner l'application à ladite trame reçue du traitement protocolaire spécifique correspondant à l'ensemble déterminé. 3. Dispositif selon l'une des revendications 1 et 2, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour accéder à une première table de correspondance entre des identifiants d'ensembles de valeurs et des traitements protocolaires de manière à déterminer un traitement protocolaire correspondant à un ensemble de valeurs déterminé par lesdits moyens de détection (MD). 4. Dispositif selon l'une des revendications 1 à 3, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour accéder à une seconde table de correspondance entre des traitements protocolaires et des valeurs protocolaires dédiées de manière à ordonner le remplacement dans la trame reçue de la valeur de son champ de trame choisi par une valeur protocolaire dédiée audit traitement spécifique déterminé. 5. Dispositif selon l'une des revendications 1 à 4, caractérisé en ce qu'il comprend une première mémoire (Ml), accessible auxdits moyens de détection (MD), et dans laquelle sont stockés lesdits ensembles de valeurs. 6. Dispositif selon l'une des revendications 3 à 5, caractérisé en ce qu'il comprend une seconde mémoire (M2), accessible auxdits moyens de traitement (MT), et dans laquelle sont stockées lesdites première et/ou seconde tables de correspondance. 7. Dispositif selon l'une des revendications 1 à 6, caractérisé en ce que lesdits moyens de détection (MD) sont agencés pour modifier les valeurs définissant l'un au moins desdits ensembles en fonction d'instructions reçues. 8. Dispositif selon la revendication 7, caractérisé en ce que lesdites instructions proviennent d'un plan de contrôle (PC) dudit réseau. 9. Dispositif selon la revendication 8, caractérisé en ce que lesdits moyens de traitement (MT) constituent une partie au moins dudit plan de contrôle (PC). 10. Dispositif selon l'une des revendications 1 à 9, caractérisé en ce que ledit protocole est un protocole dit de niveau 2 . 11. Dispositif selon la revendication 10, caractérisé en ce que ledit protocole est un protocole Ethernet et en ce que ledit champ de trame choisi est le champ dit Ethernet VLAN Tag . 12. Dispositif selon l'une des revendications 1 à 9, caractérisé en ce que ledit protocole est un protocole de tramage/encapsulation. 13. Dispositif selon la revendication 12, caractérisé en ce que ledit protocole est le protocole GFP et en ce que ledit champ de trame choisi est le champ dit Channel Identifier . 14. Dispositif selon l'une des revendications 1 à 13, caractérisé en ce que l'un au moins desdits ensembles de valeurs est dédié à un traitement propre à un autre protocole ou service différent de celui supporté par ledit réseau. 15. Dispositif selon la revendication 14, caractérisé en ce que ledit autre protocole ou service est choisi dans un groupe comprenant au moins GMPLS, L2-LSP et des évolutions et variantes de ces derniers. 16. Dispositif selon l'une des revendications 3 à 10 en combinaison avec les revendications 11 et 15, caractérisé en ce que lesdits moyens de traitement (MT) sont agencés pour ordonner le remplacement de la valeur du champ Ethernet VLAN Tag par la valeur d'un champ dit GMPLS label . 17. Equipement de réseau (R) pour un réseau de communications supportant au moins un protocole de communication, caractérisé en ce qu'il comprend une partie au moins d'un dispositif de traitement de trames (D) selon l'une des revendications précédentes. 18. Procédé de gestion de trames de données pour un réseau de communications supportant au moins un protocole de communication, caractérisé en ce qu'il consiste i) à choisir un champ de trame utilisé par ledit protocole au sein de trames de données, ii) à associer audit champ de trame choisi des ensembles de valeurs correspondant à des traitements protocolaires différents, et iii) à réception d'une trame de données, à lo déterminer l'ensemble auquel appartient la valeur contenue dans son champ de trame choisi, de manière à déterminer le traitement protocolaire spécifique, correspondant à l'ensemble déterminé, devant être appliqué à ladite trame reçue.