Brevet FR2695782A1 — publié le 19940318

Procédé de transmission de données entre réseaux à protocoles hétérogènes et convertisseurs de protocole pour la mise en oeuvre du procédé. La présente invention concerne un procédé de transmission de données entre un appareil émetteur, relié à un premier réseau de transmission de données selon un premier protocole prévoyant une trame comportant un premier champ de bits de données et un champ associé de bits de contrôle d'intégrité des données du premier champ, et un appareil récepteur relié au premier réseau à travers un second réseau de transmission de données selon un second protocole prévoyant une trame comportant un second champ de bits de données, et, le cas échéant, on adapte les débits de transmission des deux réseaux. Un tel procédé sert à établir une passerelle logique entre des réseaux locaux à protocoles incompatibles et permet ainsi les communications entre les appareils raccordés à ces réseaux locaux. De même, il permet de raccorder des réseaux locaux distants, à protocoles identiques, par exemple du type de la marque enregistrée ETHERNET, au travers d'un réseau public disposant d'un protocole incompatible avec ceux-ci, par exemple le protocole HDLC (High Data Link Control"). Dans ce dernier cas, il est connu de convertir, en "entrée" sur le réseau public, les données du réseau ETHERNET qui se trouvent en mode paquet et les présenter en mode circuit au réseau HDLC. Pour respecter le norme du protocole HDLC, on calcule et transmet un mot de code de contrôle (CRC2), à partir de tous les bits du paquet, c'est-à-dire des données à transmettre , des adresses des appareils émetteur et destinataire et d'un mot de code de contrôle (CRC1) de l'intégrité du paquet qui a été calculé par l'appareil émetteur du réseau ETHERNET. Ce respect de la norme du protocole utilisé dans le second réseau, HDLC dans cet exemple, a paru, jusqu'à maintenant, être une condition sine qua non pour y transmettre correctement les données, du fait que le protocole prévoit toutes les situations possibles et traite les remèdes aux situations anormales. Cette "sécurité" présente cependant l'inconvénient de nécessiter un logiciel volumineux et complexe qui, pour ne pas ralentir le débit de transmission, doit être mis en oeuvre par des composants spécifiques rapides, comme des circuits intégrés. Or, bien qu'intégrés, ces circuits sont, de par leur complexité, relativement coûteux. De plus, en cas de problème lors du raccordement de deux réseaux, leur complexité matérielle et logicielle ne facilite pas la localisation du problème. La présente invention vise à pallier ces inconvénients. A cet effet, la présente invention concerne tout d'abord un procédé de transmission de données entre un appareil émetteur, relié à un premier réseau de transmission de données selon un premier protocole prévoyant une trame comportant un premier champ de bits de données et un champ associé de bits de contrôle d'intégrité des données du premier champ, et un appareil récepteur relié au premier réseau à travers un second réseau de transmission de données selon un second protocole prévoyant une trame comportant un second champ de bits de données, et, le cas échéant, on adapte les débits de transmission des deux réseaux, procédé caractérisé par le fait que, à l'interface entre les deux réseaux, on convertit les bits du premier champ et du champ de contrôle associé exclusivement en bits du second champ qui sont reconnus par l'appareil récepteur et à partir desquels il extraît les bits de donnés du premier champ. Finalement, la demanderesse s'est aperçu que le calcul du mot de code (CRC2) dans le deuxième réseau était une lourde contrainte, quant à la complexité matérielle et logicielle de la conversion, et qu'on pouvait s'en passer. A cet égard, elle est allée en l'encontre du préjugé évoqué. Comme il existe déjà un mot de code (CRC1) protégeant la transmission dans le premier réseau, l'adjonction d'un autre mot de code (CRC2) dans le deuxième réseau ne servirait qu'à localiser un défaut de transmission dans ce second réseau. I1 est en fait plus avantageux de transmettre de façon transparente les données du premier réseau, avec la seule conversion nécessaire mais sans les protéger à nouveau. Si l'appareil récepteur, relié au second réseau, détecte un défaut au moyen du champ de contrôle du premier protocole, il pourra demander une retransmission des données à partir de l'appareil émetteur. En d'autres termes, le second protocole sert, avec une adaptation minimale, d'extension au premier protocole, le premier réseau disposant ainsi d'un maillon d'extension. Avantageusement, on relie l'appareil récepteur audit deuxième réseau à travers un troisième réseau de transmission de données selon le premier protocole. L'intérêt de cette mise en oeuvre est de pouvoir assimiler, dans un ensemble de réseaux d'un même protocole, un réseau de protocole différent à un maillon intermédiaire de cet ensemble de réseaux à protocole unique. Avantageusement, on intègre un réseau à protocole HDLC au sein d'un ensemble de réseaux à protocole ETHERNET. L'invention concerne aussi un convertisseur de protocole pour la mise en oeuvre du procédé de l'invention, agencé pour être relié à un premier réseau de transmission de données selon un premier protocole prévoyant une trame comportant un premier champ de bits de données et un champ associé de bits de contrôle d'intégrité des données du premier champ, et à un second réseau de transmission de données selon un second protocole prévoyant une trame comportant un second champ de bits de données, caractérisé par le fait qu'il comporte des moyens agencés pour convertir les bits du premier champ et du champ de contrôle associé exclusivement en bits du second champ. Le convertisseur, ayant une tâche relativement légère, peut être réalisé beaucoup plus simplement que ceux de l'art antérieur et, en particulier, peut utiliser séquentiellement des circuits logiques uniques, qu'il faudrait dupliquer si sa tâche était plus lourde. L'invention concerne enfin, pour la mise en oeuvre du procédé de l'invention, un convertisseur de protocole de transmission de données agencé pour être relié à un réseau de transmission de données selon un protocole prévoyant une trame comportant un champ global de bits de données contenant, en positions connues, un champ primaire de bits de données ainsi qu'un champ de bits de contrôle d'intégrité des données du champ primaire, caractérisé par le fait qu'il comporte des moyens agencés pour aiguiller, puis mémoriser, les bits du champ global vers un champ de bits de contrôle ou vers un autre champ de bits de données selon que les bits considérés occupent ou non lesdites positions connues. En effet, bien que le concept inventif de l'invention soit unique, les deux convertisseurs selon l'invention peuvent être mis séparément dans le commerce et utilisés respectivement en nombres différents. Cela est par exemple le cas si l'appareil récepteur des données reçoit celles-ci, provenant du type de convertisseur de l'invention mentionné en premier, selon le second protocole, mais ne les retransmet pas ce qui lui permet de n'utiliser, du premier protocole, que la partie concernant la position des données reçues. De même, les nombres des convertisseurs de chaque type seront différents si les données issues du premier type de convertisseur sont diffusées vers plusieurs convertisseurs du second type. L'invention sera mieux comprise au moyen de la description suivante de la forme de réalisation préférée de deux convertisseurs de protocole pour la mise en oeuvre du procédé de l'invention, en référence au dessin annexé, dans lequel - la figure 1 représente schématiquement deux réseaux ETHERNET reliés, à travers respectivement les deux convertisseurs de l'invention, à un même réseau à protocole HDLC modifié, - la figure 2 montre les champs de bits d'un paquet ETHERNET, - la figure 3 montre un champ de données transmises selon le protocole HDLC ainsi qu'un champ de contrôle d'intégrité du champ de données, prévu par le protocole HDLC et, - les figures 4 et 5 sont des schémas par blocs représentant les convertisseurs de l'invention, effectuant respectivement une conversion ETHERNET/HDLC modifié et une conversion HDLC modifié/ETHERNET. Deux réseaux 1 et 31, ici de même type, ETHERNET, représentés sur la figure 1, sont respectivement reliés à l'entrée d'un convertisseur 10 de protocole ETHERNET en protocole HDLC modifié (comme expliqué plus loin) et à la sortie d'un convertisseur 20 du protocole HDLC modifié en protocole ETHERNET. La sortie du convertisseur 10 est reliée à l'entrée du convertisseur 20 par une liaison 40 d'un réseau de transmission de données selon le protocole HDLC. Aux réseaux 1 et 31 sont respectivement raccordés des appareils, ici des terminaux, de transmission de données 2, 3, 4 et 32, 33, 34. Dans cet exemple, il n'est prévu, par la clarté de l'exposé, qu'une possibilité de transmission unidirectionnelle du réseau 1 vers le réseau 31. On rappellera que le protocole ETHERNET prévoit une trame 50, représentée sur la figure 2, pour la transmission de paquets de bits, à 10 Mb/s, qui comporte un champ 51 d'adresse du destinataire du paquet, un champ 52 d'adresse de l'émetteur du paquet, un champ 53 de données, contenant les informations utilisables par le destinataire du paquet, et un champ 54 de contrôle de l'intégrité des champs 51, 52 et 53, contenant un mot de code de contrôle CRC1. Le paquet est repéré par la présence d'un signal électrique. Pour sa part, le protocole HDLC concerne une transmission en mode circuit, c'est-a-dire permanente, qu'il y ait ou non des données à transmettre. Les données sont transmises dans des trames (60), dont l'une est représentée très schématiquement sur la figure 3, comportant un champ 61 de données utilisables par leur destinataire, et un champ 62 de contrôle d'intégrité des données, du champ 61, contenant un mot de code de contrôle CRC2. La non présence de trame 60 est indiquée par la présence de fanions. Le convertisseur 10 ETHERNET/HDLC modifié, représenté plus en détail sur la figure 4, comporte en entrée un circuit 11 d'interface ETHERNET, disposant des éléments matériels et logiciels d'un circuit d'interface ETHERNET du type connu. En réponse à la réception d'un paquet ETHERNET, le circuit 11 fournit à sa sortie les bits du paquet ETHERNET reçu, ici émis par le terminal 2 à destination du terminal 32, dont il a reconnu l'adresse du destinataire 32. La sortie du circuit 11 est uniquement reliée à l'entrée de données d'un circuit 16 de gestion du protocole HDLC modifié, dont la sortie constitue la sortie du circuit 10. Pour la simplicité de l'exposé, les signaux de service permettant la gestion des transmissions selon les protocoles ETHERNET et HDLC, et en particulier les fanions de repérage des limites des champs de bits, ne sont pas exposés en détail ici. Le circuit 16 comporte les éléments matériels et logiciels d'un circuit connu gérant l'émission de bits selon le protocole HDLC, hormis les éléments concernant le champ de contrôle 61, la modification du protocole HDLC portant sur le fait que la présence du champ de contrôle 61 n'est pas prévue. Les bits du paquet, reçus à l'entrée du circuit 16, sont mis en mémoire tampon 17 puis envoyés à un circuit 18 où ils sont convertis exclusivement en bits du champ de données 61 d'où ils sont ensuite émis en sortie du circuit 10. La mémoire tampon 17 assure l'adaptation de débit entre les bits issus du réseau ETHERNET 1, à 10 Mb/s, et ceux émis sur le réseau HDLC 40, ici à 64 kb/s. On comprendra que la conversion de bits reçus par le circuit 16 dépend de la façon dont chaque protocole prévoit de représenter physiquement un bit pour, en particulier, permettre ou non de transmettre, de façon implicite avec les bits de données, un signal d'horloge facilitant la réception de ces bits. De même si, contrairement à la présente description, les bits étaient, dans un protocole, codés par blocs jointifs, ils pourraient être convertis en d'autres blocs, à codage différent et éventuellement de longueur différente. Dans le présent exemple, les bits reçus par le convertisseur 10 en provenance du réseau ETHERNET 1, sont codés selon le code MANCHESTER, qui permet la transmission d'un signal d'horloge. Le circuit 11 comporte un transcodeur 12 qui reçoit les bits du paquet, provenant de l'entrée du circuit 11, et transforme chaque bit reçu en un bit présenté selon le code Non Retour à Zéro (NRZ), code selon lequel le circuit 16 reçoit les bits du paquet ETHERNET. Le convertisseur 20 HDLC modifié /ETHERNET, représenté sur la figure 5, comporte en entrée un circuit d'interface 21, constitué des éléments matériels et logiciels d'un circuit connu gérant la réception de bits selon le protocole HDLC, hormis les éléments concernant le champ de contrôle 62. La sortie du circuit 21 est reliée à l'entrée d'un circuit 22 qui comporte une mémoire tampon 23, ici un registre à décalage, recevant les bits de données du champ 61, issus du circuit 21, ainsi qu'une logique d'aiguillage 24 reliée à la sortie du registre 23. Le registre 23 a pour rôle de stocker temporairement les bits d'un paquet en attendant leur émission vers le réseau 31. Sa capacité est adaptée au nombre de messages, plus précisément de bits, qu'il est prévu de stocker temporairement. Dans cet exemple, le débit instantané sur le réseau ETHERNET 31 est supérieur à celui du réseau HDLC 40, si bien que le registre 23 permet l'adaptation, ici augmentation, de débit instantané en assurant que la totalité d'un paquet soit disponible avant son émission sur le réseau 31. La logique d'aiguillage 24 comporte un comparateur (non représenté), ayant en mémoire la position des champs ETHERNET, qui est relié en entrée à -la sortie du registre 23 et aiguille les bits sortant du registre 23 vers une parmi quatre mémoires 25, 26, 27 et 28 en fonction du dernier fanion qu'il a reconnu et qui annonçait le début de l'un des quatre champs 51, 52, 53 et 54. Les mémoires 25, 26, 27 et 28 reçoivent respectivement les champs ETHERNET 51, 52, 53 et 54, véhiculés dans le champ global 61 HDLC, qui sont ensuite émis sur le réseau ETHERNET 31, par un circuit 29 d'interface ETHERNET de type connu, pour y être reçus par le terminal destinataire 32. On comprendra que la taille des quatre champs ETHERNET 51, 52, 53 et 54 n'est limitée en aucune façon par celle du champ 61 de données HDLC, puisqu'un ensemble de données à transmettre, ici un paquet ETHERNET, peut occuper moins d'un champ 61 ou être réparti sur plusieurs champs 61, dont la présentation de façon jointive à la sortie du circuit 21 rétablit l'unité de l'ensemble des données transportées. On remarquera aussi que la présence des mémoires 25, 26, 27 et 28, et non d'une seule mémoire contenant tous les bits du paquet ETHERNET issu du terminal 2, n'est nécessaire que dans le cas où le contenu d'un ou plusieurs des quatre champs 51, 52, 53 et 54 doit être exploité, ce qui est le cas si un contrôle d'intégrité des données est effectué à ce niveau de la chaîne de transmission, à partir du mot de code CRC1 du champ 54. Ceci serait en particulier le cas si le réseau 31 était inexistant, le terminal récepteur 32 comportant alors le transcodeur 20, dépourvu dans ce cas du circuit 29 d' interface ETHERNET. Dans le cas général, où une possibilité de transmission dans un sens ou l'autre est souhaitée entre les réseaux 1 et 31, il est alors respectivement adjoint aux transcodeurs 10 et 20, de préférence de façon intégrée avec ceux-ci, des transcodeurs ayant la fonction des transcodeurs 20 et 10. REVENDICATIONS 1. Procédé de transmission de données entre un appareil émetteur (2), relié à un premier réseau (1) de transmission de données selon un premier protocole prévoyant une trame (50) comportant un premier champ (51, 52, 53) de bits de données et un champ associé (54) de bits de contrôle d'intégrité des données du premier champ (51, 52, 53), et un appareil récepteur (20, 32) relié au premier réseau (1) à travers un second réseau (40) de transmission de données selon un second protocole prévoyant une trame (60) comportant un second champ (61) de bits de données, et, le cas échéant, on adapte les débits de transmission des deux réseaux, procédé caractérisé par le fait que, à l'interface (10) entre les deux réseaux (1,40), on convertit les bits du premier champ (51, 52, 53) et du champ de contrôle associé (54) exclusivement en bit du second champ (61) qui sont reconnus par l'appareil récepteur (20, 32) et à partir desquels il extrait les bits de données du premier champ (51, 52, 53). 2. Procédé de transmission selon la revendication 1, dans lequel on relie l'appareil récepteur (32) audit deuxième réseau (40) à travers un troisième réseau (31) de transmission de données selon le premier protocole. 3. Procédé selon l'une des revendications 1 et 2, dans lequel le premier protocole est le protocole ETHERNET et le second protocole, le protocole HDLC. 4. Convertisseur (10) de protocole de transmission de données pour la mise en oeuvre du procédé de la revendication 1, agencé pour être relié à un premier réseau (1) de transmission de données selon un premier protocole prévoyant une trame (50) comportant un premier champ (51, 52, 53) de bits de données et un champ associé (54) de bits de contrôle d'intégrité des données du premier champ (51, 52, 53), et à un second réseau (40) de transmission de données selon un second protocole prévoyant une trame (60) comportant un second champ (61) de bits de données, caractérisé par le fait qu'il comporte des moyens (10, 11, 12, 16) agences pour convertir les bits du premier champ (51, 52, 53) et du champ de contrôle associé (54) exclusivement en bits du second champ (61). 5. Convertisseur selon la revendication 4, dans lequel il est prévu des moyens de stockage (17) agencés pour écrire et lire une mémoire tampon à des vitesses différentes, respectivement en fonction des débits de transmission des premier et second réseaux (1, 40) afin d'assurer une adaptation de débit entre lesdits réseaux (1, 40). 6. Convertisseur selon l'une des revendications 4 et 5, dans lequel les moyens convertisseurs (10, 11, 12) sont agencés pour recevoir des données selon le protocole ETHERNET et pour, en réponse, fournir des données selon le protocole HDLC. 7. Convertisseur selon l'une des revendications 4 à 6, dans lequel des moyens décodeurs sont agencés pour recevoir les bits du premier champ (51, 52, 53) et du champ de contrôle (54) selon le code MANCHESTER et pour transmettre en réponse, vers les moyens convertisseurs (16), des bits correspondants codés selon le code NRZ. 8. Convertisseur de protocole de transmission de données pour la mise en oeuvre du procédé de la revendication 1, agencé pour être relié à un réseau (40) de transmission de données selon un protocole prévoyant une trame (60) comportant un champ global (61) de bits de données contenant, en positions connues, un champ primaire (51, 52, 53) de bits de données ainsi qu'un champ (54) de bits de contrôle d'intégrité des données du champ primaire (51, 52, 53), caractérisé par le fait qu'il comporte des moyens (21, 22, 23, 24, 25, 26, 27, 28) agencés pour aiguiller, puis mémoriser, les bits du champ global (61) vers un champ (28) de bits de contrôle ou vers un autre champ (25, 26, 27) de bits de données selon que les bits considérés occupent ou non lesdites positions connues. 9. Convertisseur selon la revendication 8, dans lequel des moyens de stockage comportent une mémoire tampon (23, 25, 26, 27, 28) agencée pour recevoir les bits du champ global (61) de données et pour les transmettre vers les moyens aiguilleurs (21, 22, 23, 24), à leur demande. 10. Convertisseur selon l'une des revendications 8 et 9, dans lequel les moyens aiguilleurs (21, 22, 23, 24) sont agencés pour recevoir des données selon le protocole HDLC et pour, en réponse, fournir des données selon le protocole ETHERNET.