Brevet FR2745968A1 — publié le 19970912

La présente invention concerne un procédé d'espacement de cellules ATM multiplexant plusieurs trafics de profils variés et concerne également un dispositif pour sa mise en oeuvre. L'invention s'applique à la gestion des ressources dans les réseaux ATM, et plus précisément au lissage appelé "shaping" en terminologie anglo-saxonne, du trafic émis par une source ATM. La source qui injecte des cellules dans un réseau ATM peut être un usager ATM (accès UNI, abréviation anglo-saxonne pour "User Network Interface") ou un point de raccordement entre deux réseaux ATM (NNI, abréviation anglo-saxonne pour "Network Network Interface" ou PUNI, abréviation anglo-saxonne pour "Public User Network Interface"). Les sources lissent le trafic qu'elles émettent avec obligation de respecter un contrat de conformité basé sur un algorithme spécifique I'Algorithme d'Espacement Virtuel ou GCRA, abréviation anglo-saxonne pour "Generic Cell Rate Algorithm" dont une définition est donnée par la Recommandation 1.371 de I'IUT-T (Union Internationale des Télecommunications, Section des Télécommunications). Cet algorithme permet de prendre en compte deux profils types de trafic : le trafic à débit constant CBR, abréviation anglo-saxonne pour "Constant Bit Rate" et le trafic à débit variable VBR, abréviation anglo-saxonne pour "Variable Bit Rate" Il s'appuie sur deux paramètres : le débit crête et le débit moyen. Le débit crête est déterminé par le paramètre PCR, abréviation anglo-saxonne pour "Peak Cell Rate", exprimé en cellules par secondes et le débit moyen est déterminé par les paramétres PCR et 5CR, abréviation anglo-saxonne pour "Sustainable Cell Rate", exprimé en cellules par secondes, et le paramètre MBL, abréviation anglo-saxonne pour "Maximum Burst Lenght", exprimé en cellules définissant la longueur maximale d'une rafale de cellules. Une source ATM multiplexe des trafics de diverses natures. Les solutions actuelles ne permettent pas un lissage des trafics de natures diverses pour les rendre conformes au contrat négocié avec un réseau destinataire gérant un profil normalisé de trafic. Les profils normalisés sont le profil à débit constant C8R et le profil à débit variable VBR. La présente invention a pour but de pallier l'inconvénient précité. A cet effet, I'invention a pour objet un procédé d'espacement de cellules ATM transitant dans un commutateur ATM et émises par des sources ATM multiplexant des profils divers à destination d'un ou plusieurs réseaux de débit déterminé, caractérisé en ce qu'il consiste: - a agréger les sources émettant des cellules à destination d'un même réseau et à donner aux sources un profil global normalisé CBR ou VBR, les sources étant affectées d'une priorité déterminée, - à prendre en compte les priorités de chacune des sources pour permettre des qualités de service déterminées, - a combiner des sources multiplexant des profils CBR et VBR pour obtenir une source ayant un profil globalement VBR ou CBR, tout en préservant les caractéristiques des sources à profil CBR dans le cas d'un profil globalement VBR, - a partager la bande passante du lien physique supportant les flux de cellules sortantes, entre les profils VBR et CBR, et à allouer le reste de la bande passante non consommée par les précédents profils VBR et CBR, à des sources dites complémentaires de profil UBR, abréviation anglo-saxonne pour Undefined Bit Rate, et - a adapter le débit des sources de profil globalement VBR ou CBR au débit d'un lien physique déterminé par lequel les cellules sortantes doivent transiter pour accéder à un réseau détermine. L'invention a pour avantages de garantir une qualité de service malgré des sources de moindre qualité, et de prendre en compte des liens de profil et de débit différents. D'autres avantages et caractéristiques de la présente invention apparaîtront plus clairement à la lecture de la description qui suit et des figures annexées qui représentent - la figure 1, les principales étapes du procédé d'espacement de cellules ATM selon l'invention, - la figure 2, un schéma du processus de préservation de la composante CBR, - la figure 3, le principe d'allocation de la bande passante d'un lien aux différents trafics CBR, VBR et UBR, - la figure 4, un schéma fonctionnel d'un dispositif d'espacement pour la mise en oeuvre du procédé selon l'invention, - la figure 5, les relations entre les composantes VBR, CBR et UBR d'un dispositif selon l'invention et les caractéristiques des dispositifs d'espacement élémentaires, - la figure 6A, un cadencement de rafales de cellules à éviter, - la figure 6B, un cadencement de rafales de cellules préféré, - la figure 7, le schéma synoptique de l'algorithme CGRA selon la Recommandation 1.371 de l'UIT-T, et - la figure 8, les trois cas possibles A, B et C de l'algorithme CGRA représentés temporellement. Les principales étapes du procédé selon l'invention sont illustrées par le bloc diagramme de la figure 1. Le procédé selon l'invention consiste: - dans une première étape 1, à agréger des sources de profil différent, en leur donnant un profil normalisé CBR ou VBR, - dans une deuxième étape 2, à prendre en compte les priorités de chacune des sources pour offrir des qualités de service déterminées, - dans une troisième étape 3, à combiner des sources à profil CBR et VBR en une source ayant un profil global CBR ou VBR tout en préservant les caractéristiques des sources CBR, dans le cas d'un profil global VBR, - dans une quatrième étape 4, à allouer une partie de la bande passante non utilisée par les sources CBR et VBR à des sources complémentaires UBR, et - dans une cinquième étape 5, à adapter les différents débits d'accès des réseaux receveurs de cellules aux débits des différentes sources émettrices de cellules. La figure 2 illustre schématiquement le processus de préservation de la composante CBR du procédé selon l'invention. Les sources de profil respectivement CBR et VBR sont combinées ou multiplexées, puis lissées pour les rendre conformes au contrat négocié avec le réseau destinataire, selon un profil global normalisé soit VBR soit CBR. Cette double fonction lissagelmultiplexage est représentée symboliquement par le bloc LISSEURIMUX 6. Dans le cadre d'un profil global normalisé VBR, le procédé préserve les caractéristiques des composantes CBR tout en assurant la conformité VBR. Le bloc DEMUX 7 symbolise un réseau auquel est connecté le bloc LISSEUR/MUX 6 via son point de raccordement symbolisé par un trait vertical sur la figure 2. La figure 3 illustre le principe d'allocation de la bande passante d'un lien aux différents trafics de profil CBR, VBR et UBR empruntant ce lien. Ce diagramme représente la répartition des différents débits dans le temps à l'intérieur du débit physique du lien ; le trafic UBR comblant le débit physique du lien laissé disponible par les trafics CBR et VBR. La figure 4 illustre un schéma fonctionnel d'un dispositif d'espacement de cellules ATM pour la mise en oeuvre du procédé selon l'invention. Le dispositif selon l'invention comporte un nombre déterminé N de limiteurs de cellules 81 à 8N, délimités par une ligne fermée discontinue. Chaque limiteur 81 à 8N génère un trafic au profil normalisé CBR ou VBR et dispose d'une bande passante partagée entre des sources CBR et VBR. La bande passante non utilisée par les sources CBR et VBR est utilisée par les sources UBR. Chaque limiteur 81 à 8N est capable de combiner les sources CBR et VBR en un trafic globalement CBR ou VBR. Dans le second cas, il est capable de préserver les caractéristiques des composantes CBR tout en assurant la conformité VBR. Les limiteurs générant des cellules destinées à un même réseau sont agrégés en groupes 9i, délimités par une ligne fermée continue en trait gras, avec 1 Dans chaque groupe 91 à 9L, chaque limiteur 81 à 8N voit les sources au travers d'ensemble de files d'attente de cellules ATM, respectivement 111, 121 et 131. Il y a F files d'attente dans chaque ensemble 111, 121 et 131 chaque file d'attente correspondant à une source. Les files sont hiérarchisées selon une priorité décroissante, par les limiteurs 81 à 8N. Chaque file porte un numéro, de O à F-1. La file O est la plus prioritaire. Chaque limiteur 81 à 8N livre des cellules ATM avec un profil normalisé VBR ou CBR, dont les caractéristiques sont exprimées par trois paramètres PCRg, SCRg, MBLg (I'indice g signifiant global). Pour pouvoir préserver les caractéristiques des composantes CBR dans les flux de cellules sortants de profil VBR, chaque limiteur 81 à 8N comporte trois dispositifs d'espacement élémentaires ou "shapers": - un premier "shaper" PCR global 141 contrôlé au travers du paramètre PCRg qui assure l'espacement sur le débit crête généré par le limiteur 81, - un deuxième "shaper" PCR 151 contrôlé au travers du paramètre PCRc qui est utilisé pour générer la composante CBR, et - un troisième "shaper" SCR 161 contrôlé au travers du paramètre PCRv, SCRv, MBLv qui est utilisé pour générer la composante VBR. Les relations entre les caractéristiques de ces trois "shapers" 141,151,161 et celles du limiteur 81 correspondant sont: PCRg = PCRc + PCRv SCRg = PCRc + SCRv La figure 5, s'appuyant sur la figure 3, illustre les relations entre les composantes VBR, CBR, UBR d'un limiteur 81 et les caractéristiques des trois "shapers" 151 et 161. Un algorithme d'arbitrage est activé chaque fois qu'au moins un lien destinataire L1 à LL est prêt à recevoir une cellule. Cet algorithme est mis en oeuvre par un ou plusieurs processeurs symbolisés sur la figure 4 par un bloc arbitre groupe, 171, couplé en sortie des limiteurs 81 à 8N du groupe 91 et en sortie de l'ensemble 10 de files d'attente dédiées aux sources complémentaires UBR, et par un bloc arbitre global 18 couplé en sortie de chaque groupe 91 à 9L. Ces deux types de blocs respectivement, 171 à 17L et 18, permettent de sélectionner une file d'attente d'où sera extraite une cellule, parmi toutes les files gérées par les limiteurs 81 à 8N de chaque groupe 91 à 9L Cet algorithme comporte quatre étapes détaillées ci-après Dans une première étape, il consiste à déterminer la file d'attente O à F-l à servir, pour chacun des ensembles 111, 121 et 131 de files d'attente F. Au plus bas niveau, c'est-à-dire pour chaque ensemble 111, 121 et 131 de files d'attente F, la file d'attente à servir est la file non vide de priorité la plus élevée. Dans une deuxième étape, il consiste à déterminer le limiteur éligible 81 à 8N, pour chacun des groupes de limiteurs 91 à 9L Le choix se fait parmi les limiteurs 81 à 8N, remplissant les conditions suivantes: Le "shaper" PCR global 141 est OK (le "shaper" PCR 151 est OK I'une des files CBR 121 ou VBR 111 ou UBR 10 est non vide) (le "shaper" SCR 161 est OK l'une des files VBR 111 ou UBR 10 est non vide) (I'une des files UBR 10 est non vide). Quand un "shaper" est dit OK, cela signifie que pour ce "shaper" une cellule peut être émise. Si plusieurs limiteurs 81 à 8N remplissent ces conditions, I'un d'eux est retenu, soit par priorité fixe, soit par priorité tournante. Dans une troisième étape, il consiste à déterminer parmi les groupes 91 à 9L, celui qui va fournir la prochaine cellule à émettre. Un groupe 91 à 9L est éligible s'il remplit les deux conditions suivantes - le lien associé (lien L1 à LL) est capable de recevoir une cellule, et - le groupe 91 à 9L a une cellule à émettre, c'est-à-dire que l'un des limiteurs 81 à 8N a été élu, ou alors l'une des files UBR 10 complémentaire globale du groupe est non vide. Dans le premier cas, le groupe est dit éligible niveau 0, dans le second il est dit éligible niveau 1. Le niveau 1 est moins prioritaire que le niveau 0. Si plusieurs groupes sont éligibles, I'un deux est retenu, soit par priorité fixe, soit par priorité tournante. Le groupe élu utilise le niveau d'éligibilité pour sélectionner soit l'un des limiteurs 81 à 8N soit l'une des files UBR 10. Dans une quatrième et dernière étape, il consiste à extraire et émettre une cellule si un groupe a été retenu. Les lignes de programmation en langage clair, correspondant à cette quatrième étape sont données ci-après. ISII le groupe est éligible niveau 1 /ALORS/ extraire une cellule de l'ensemble des files UBR complémentaire globale /SINON/ pour le limiteur retenu /SI/le "shaper" CBR est OK /ALORS/ /SI/ au moins l'une des files CBR est non vide /ALORS/ extraire une cellule CBR /SINON SI/ au moins l'une des files CBR est non vide /ALORS/ extraire une cellule VBR sans toucher aux ressources du "shape VBR /SINON SI/ au moins l'une des files UBR est non vide /ALORS/ extraire une cellule UBR /FIN SI/ /SINON SI/le "shape VBR est OK /ALORS/ /SI/ au moins l'une des files VBR est non vide /ALORS/ extraire une cellule VBR, mettre à jour les ressources du "shape VBR /SINON SI/ au moins l'une des files UBR est non vide /ALORS/ extraire une cellule UBR /FIN SI/ /SINON/ extraire une cellule UBR /FIN SI/ /FIN SI/ Les "shapers" PCR 151 destinés à générer des débits crête sont réalisés à partir de dispositifs de minuterie appelés ci-après "timers" La valeur de chargement du "timer", c'est-à-dire l'intervalle de temps de décomptage est égale à la période du flux CBR à générer, soit 1/PCR. Deux options pour le redémarrage du "timer" après la fin du décomptage appelé ci-après "timeout" sont possibles soit le "timer" est relancé dès le "timeout", soit il est relancé lorsqu'une cellule est effectivement extraite du "shaper" La figure 6A illustre un cadencement à éviter et la figure 6B le cadencement préféré. Pour limiter les rafales A, B de "timeout" sur plusieurs "shapers" PCR fonctionnant simultanément à des fréquences dans des rapports entiers, les rafales sont avantageusement déphasées comme illustré à la figure 6B. Les "shapers" SCR 161 destinés à générer des débits moyens sont réalisés à partir de l'algorithme GCRA. Ce dernier est illustré par le schéma synoptique de la figure 7. Cet algorithme se traduit temporellement par le diagramme de la figure 8 où figurent trois cas possibles d'instants d'arrivée des cellules, respectivement repérés A, B et C sur les figures 7 et 8. Dans cet algorithme, une valeur de référence est définie, appelée TATi, abréviation anglo-saxonne pour "Theorical Arrival Time", et où ti correspond à une valeur courante de l'instant d'arrivée d'une cellule. A ce temps d'arrivé théorique TATi est associée une limite ou plage de tolérance L. Dans le cas correspondant à l'instant d'arrivée A, la cellule arrive avant le TATi et est, de plus en dehors de la limite L. Dans ce cas, la cellule est rejetée. Dans le cas correspondant à l'instant théorique d'arrivée B, la cellule arrive avant l'instant TATi mais à l'intérieur de la plage de tolérance L. Elle est donc considérée comme conforme et est donc conservée. L'algorithme calcule alors le temps théorique d'arrivée de la prochaine cellule, c'est-à-dire le paramètre d'incrémentation I. Le nouveau temps théorique d'arrivée s'écrivant alors TATi+1 = TATi + I et l'algorithme se met alors en attente d'une nouvelle cellule. Dans le cas correspondant à l'instant d'arrivée C, la cellule arrive après le temps théorique d'arrivée TATi et en-dehors de la plage de tolérance L. Le temps théorique d'arrivée suivant va être alors calculé non plus en partant du temps théorique TATi mais en partant de l'instant d'arrivée C. Dans ce dernier cas, il se produit un décalage. Les valeurs de la limite L et de l'incrément I sont calculés à partir des paramètres PCRv, SCRv et MLBv correspondant au profil VBR selon les relations suivantes: S C Rv REVENDICATIONS 1. Procédé d'espacement de cellules ATM transitant dans un commutateur ATM et émises par des sources ATM multiplexant des profils divers à destination d'un ou plusieurs réseaux de débit déterminé, caractérisé en ce qu'il consiste: - à agréger (1) les sources émettant des cellules à destination d'un même réseau et à donner aux sources un profil global normalisé CBR ou VBR, les sources étant affectées d'une priorité déterminée, - à prendre en compte (2) les priorités de chacune des sources pour permettre des qualités de service déterminées, - à combiner (3) des sources multiplexant des profils CBR et VBR pour obtenir une source ayant un profil globalement VBR ou CBR, tout en préservant les caractéristiques des sources à profil CBR dans le cas d'un profil globalement VBR, - à partager (4) la bande passante du lien physique supportant les flux de cellules sortantes, entre les profils VBR et CBR, et à allouer le reste de la bande passante non consommée par les précédents profils VBR et CBR, à des sources dites complémentaires de profil UBR, et - à adapter (5) le débit des sources de profil globalement VBR ou CBR au débit d'un lien physique déterminé par lequel les cellules sortantes doivent transiter pour accéder à un réseau déterminé. 2. Dispositif d'espacement de cellules ATM pour la mise en oeuvre du procédé selon la revendication 1, caractérisé en ce qu'il comporte un nombre déterminé de groupes de limiteurs (91 à 9L), fonction du nombre de liens physiques (L1 à LL) supportant des échanges de cellules entre le dispositif d'espacement et des réseaux de débits divers auxquels il est connecté, chaque groupe (91 à 9L) regroupant un nombre déterminé de limiteurs (81 à 8N) servant un même réseau, chaque limiteur (81) comportant: - un premier ensemble (111) de files d'attente recevant des cellules émises par des sources de profil VBR, - un deuxième ensemble (121) de files d'attente recevant des cellules émises par des sources de profil CBR, -un troisième ensemble (131) de files d'attente recevant des cellules émises par des sources complémentaires de profil UBR, - un premier dispositif élémentaire (161) d'espacement du débit moyen couplé en sortie du premier ensemble (111) de files d'attente, - un deuxième dispositif élémentaire (151) d'espacement du débit crête couplé en sortie du deuxième ensemble (121) de files d'attente - un troisième dispositif élémentaire (141) d'espacement global du débit crête couplé en sortie des premier et deuxième dispositifs élémentaires d'espacement (161 et 151), et en sortie du troisième ensemble (131) de files d'attente, chaque limiteur (81 à 8N) disposant d'une bande passante partagée entre les sources de profil CBR et VBR, la bande passante non utilisée par les sources de profil CBR et VBR étant utilisée par les sources complémentaires de profil UBR, et en ce chaque groupe (91 à 9L) comporte: - un quatrième ensemble (10) de files d'attente recevant des cellules émises par des sources complémentaires globales de profil UBR, et - un bloc d'arbitrage (171) couplé en sortie des limiteurs (81 à 8N) et du quatrième ensemble (10) de files d'attente, et en ce que le dispositif d'espacement comporte un bloc d'arbitrage global (18) couplé en sortie des blocs d'arbitrage (171 à 17L) de chaque groupe (91 à 9L) de limiteurs, les sorties du bloc d'arbitrage global (18) étant couplées respectivement aux liens physiques (L1 à LL) avec les réseaux. 3. Dispositif selon la revendication 2, caractérisé en ce que les blocs d'arbitrage (171 à 17L) de chaque groupe (91 à 9L) de limiteurs et le bloc d'arbitrage global (18) mettent en oeuvre un algorithme d'arbitrage consistant à sélectionner une file d'attente déterminée parmi toutes les files d'attente dès qu'un lien physique (L1 à LL) est prêt à recevoir une cellule pour permettre d'adapter le débit des sources de profil globalement VBR ou CBR au débit du lien physique destinataire. 4. Dispositif selon l'une quelconque des revendications 2 et 3, caractérisé en ce que le premier dispositif élémentaire (161) d'espacement du débit moyens est basé sur l'algorithme d'espacement virtuel. 5. Dispositif selon l'une quelconque des revendications 2 à 4, caractérisé en ce que le deuxième dispositif élémentaire (151) d'espacement du débit crête est basé sur un "timer" dont la valeur de chargement est égale à la période du flux de cellules émises selon un profil CBR. 6. Dispositif selon la revendication 5, caractérisé en ce que le "timer" est relancé après la fin du décomptage de la valeur de chargement. 7. Dispositif selon la revendication 5, caractérisé en ce que le "timer" est relancé lorsqu'une cellule est effectivement extraite du deuxième dispositif élémentaire (151) d'espacement.