Brevet FR2843510A1 — publié le 20040213

L'invention concerne le domaine des transmissions asynchrones et plus précisément les interfaces de ligne de telles transmissions. Dans ce type de transmission, les données sont transmises en blocs ou trames appelés cellules dont le débit n'est pas réglé sur un cycle préétabli. Comme ces données sont appelées à être traitées en réception par des automates et autres outils fonctionnels de télécommunication à base de logique synchrone (outils de routage, de pontage, de gestion de flux...), les 10 cellules peuvent comporter des délimiteurs caractères d'entête et caractères de fin de cellule, ou caractères d'entête et nombre déterminé de caractères dans chaque cellule. Dans certains cas, les délimiteurs et le nombre de caractères ou d'octets des cellules sont normalisés. Il en est ainsi dans les réseaux ATM (Asynchronous Transfer Mode), par exemple utilisés dans les réseaux locaux et étendus pour transmettre des communications de voix et de données ("data"). Le format d'une cellule ATM est défini dans la recommandatation de 20 l'Union Internationale des Télécommunications (ITU), sous la référence de la norme ITU-T 1.361, par une entête de 5 octets et une longueur de données utiles ("payload") de 48 octets, portant la longueur totale d'une cellule ATM à 53 octets. Les cinq octets de l'entête sont 4 octets d'adressage VPI (Virtual Path Identifier), VCI (Virtual Channel Identifier), 25 PTI (Payload Type Identifier), CLP (Cell Loss Priority) et un cinquième octet HEC (Header Error Control) contenant le résultat de calcul d'une vérification CRC standard (Cyclic Redundancy Check) à partir des quatre octets précédents ou contrôle de redondance cyclique. Les interfaces de réception ligne recevant les cellules ATM comportent essentiellement deux 30 couches de traitement, la première, de transmission, et, la seconde, de convergence. La première couche transforme les signaux électriques analogiques représentant les cellules successives en un train d'octets et un signal d'horloge. Ces deux types de signaux sont ensuite traités par la seconde couche pour fournir à l'automate concerné les données extraites des cellules à travers un bus série ou parallèle, des données complémentaires sur la nature de ces données, le signal d'horloge et des signaux dits de délinéation, c'est-àdire de marquage de début et de fin de trame, qui correspondent aux début et fin de cellule. C'est donc cette couche de convergence qui, pour générer les signaux de délinéation, assure la détermination des entêtes des cellules dans le flux d'octets reçus de la couche de transmission et donc ce qu'on peut appeler la récupération des cellules. Pour cela, à partir d'un octet arbitraire, i, la couche de convergence calcule un CRC standard à partir du polynome générateur x8 + x2 + x + 1 sur la base de quatre octets successifs (i, i+l, i+2, i+3) et compare le résultat au contenu du cinquième octet considéré comme HEC. L'entête est déterminée 10 si le résultat est identique au contenu. Dans le cas contraire, la couche de convergence écarte l'octet i et calcule le CRC standard sur la base des octets i+1 à i+4 pour comparer à l'octet suivant pris comme HEC; on procède de façon plus économique en injectant un code "syndrome" et réitère jusqu'à identifier une entête de cellule. Ce procédé itératif répond aux recommandations de la norme ATM. Cependant, ces calculs de détermination de l'entête sont compliqués et 20 nécessitent des ressources coteuses en électronique, le nombre de portes logiques nécessaires étant important. La demanderesse a donc cherché à simplifier la récupération des cellules ATM aux terminaisons des lignes des réseaux de transmission ATM. 25 C'est ainsi qu'elle propose son procédé de récupération, en terminaison d'une ligne d'un réseau de transmission asynchrone de type ATM, des cellules de P octets de données transmis sur la ligne, dans lequel - on lit cinq octets successifs arbitraires [i - i+(L-l)] transmis sur la ligne; - on effectue L-1 contrôles de redondance cyclique sur les L-1 premiers octets [i - i + (L-2)]; - on calcule un contrôle de redondance cyclique standard à partir des L-1 contrôles de redondance cyclique précédents; - on compare le résultat de ce calcul au contenu du Lieme octet [i+(L-l)] et - en cas d'identité, on a récupéré un bloc de données, sinon, - en cas de différence, on recommence la suite des quatre étapes précédentes sur les L octets suivants [i+L - i + (2 L-l)]. Le procédé de l'invention évite les ressources supplémentaires de l'art antérieur. De préférence, on prend pour valeur de L la valeur 5. L'invention sera mieux comprise à l'aide de la description suivante d'un mode préféré de mise en oeuvre du procédé, en référence à la figure unique annexée. Soit donc, en sortie de première couche de traitement, dite de transmission, d'une interface de réception ligne asynchrone, un train d'octets (1) et son signal d'horloge (2) à traiter par la seconde couche dite de convergence de cette interface pour en déterminer les entêtes (10, 1 1...) de cellules de données constituées de L octets constituant l'entête de la cellule et de P-L octets constituant le payload de la cellule. En pratique, P = 53 et L = 5. Naturellement, on a la relation P = nL+r (1) n et r étant des entiers quotient et reste de la division de P par L. La couche de convergence sélectionne un octet arbitraire de rang i dans le train d'octets (1) grâce au signal d'horloge (2). On peut supposer, pour plus de simplicité, que l'entier i modulo P appartient à l'intervalle [1, P - 1]. En effet, si i = O ou P, l'entête de cellule et la cellule, par le traitement des octets i à i + L-1, sont déterminées par la couche de convergence. Sinon, selon l'état de l'art, on traite en plus l'octet i + L en tenant compte du résultat précédent selon un processus différent, 30 notamment en injectant un code "syndrome", puis on réitère ce processus jusqu'à trouver l'octet tel que i = P ou, ce qui revient au même, i = O. Selon l'invention, on n'a pas besoin de processus différent car on réitère toujours le même processus, qui est le processus initial, non pas à partir de 35 l'octet i + 1, mais à partir de l'octet i + L. Ainsi, les couches de transmission et de convergence n'ont pas besoin d'être affectées ou réinitialisées et il n'est pas nécessaire d'augmenter le nombre des mémoires tampons. On pourrait prétendre que si, dans la relation (1), le reste r est nul, on ne pourra pas déterminer la cellule, sinon il se trouverait un entier m et un entier k tels que i+ mL = kP (2) c'est-à-dire, tenant compte de la relation (1) i (k-m) P modulo n ce qui est contraire aux hypotheses selon lesquelles i est entier différent de OouP. Dans la relation (2), on exprime qu'on détermine la kième cellule au bout de m itérations du processus initial sur m tranches de L octets successifs. Dans le cas d'une cellule ATM, comme la longueur P est un nombre 20 premier (53), le reste r n'est pas nul, quelle que soit la longueur L de l'entête de cette cellule. Ainsi, il est possible de vérifier la relation (2) sans enfreindre ces hypothèses, et, tenant compte de la relation (1), la relation (2) devient 25 i+m P-r kP n m=n0-(kP- i) m=n P(3) P-r Il suffit donc d'itérer m fois le même processus et on obtient la détermination des cellules à partir de la kime cellule. Dans le cas des cellules ATM, P = 53, L = 5, d'o n = 10 et r = 3 et on en déduit la relation donnant le numéro de la première cellule déterminée 40 k= 5m+i (4) m et k, entiers, étant déterminés en fonction du rang (aléatoire) de i sélectionné par la couche de convergence au moyen des formules suivantes: i = 5j, k = 5, m = 53 -j, j different de O i=5j+ 1, k=2,m=21-j to (5) i = 5j + 2, k = 4, m = 42-j i = 5j + 3, k = 1, m = 10 j,jdifférentde10 i = 5j + 4, k = 3, m = 31 -j, j different de 10 dans lesquelles j est un entier choisi dans l'ensemble {0,..., 10} 15 Le procédé permet donc au pire de déterminer les cellules ATM à partir de la cinquième suivant celle dans laquelle le premier traitement a été effectué et au mieux dès la première cellule. Plus intéressant est de pouvoir constater que, au delà d'un certain nombre M prédéterminé d'itérations, la détermination des cellules est un échec. Ainsi, on peut compter le nombre m de comparaison effectuées et on compare ce nombre à un nombre M maximal prédétermine. Dans le cas de la détermination des cellules ATM, puisque le nombre m est plus égal à 52, ce nombre M est égal à 52. On remarquera que le retard entraîné par ce nombre d'itérations est négligeable. Il faut noter aussi que le procédé s'applique chaque fois que le reste r dans 30 la formule (1) est différent de zéro et il n'est donc pas limité à la détermination de cellules ATM. REVENDICATIONS 1.- Procédé de récupération, en terminaison d'une ligne d'un réseau de transmission asynchrone de type ATM, des cellules de P octets de données transmis sur la ligne, dans lequel - on lit L octets successifs arbitraires [i - i+(L-l)] transmis sur la ligne - on effectue L-1 contrôles de redondance cyclique sur les L-1 premiers octets [i - i + (L2)]; - on calcule un contrôle de redondance cyclique standard à partir des L-1 10 contrôles de redondance cyclique précédents; - on compare le résultat de ce calcul au contenu du Lième octet [i+(L-1)] et - en cas d'identité, on a récupéré un bloc de données, sinon, - en cas de différence, on recommence la suite des quatre étapes précédentes sur les L octets suivants [i+L - i + (2 L-1)]. 15 2.- Procédé selon la revendication 1, dans lequel on compte le nombre (m) de comparaisons effectuées et on compare ce nombre à un nombre (M) maximal prédéterminé.