Brevet FR2801454A1 — publié le 20010525

RESEAU X25 ET PROCEDE DE TRANSMISSION DE DONNEES La présente invention a pour objet un réseau X25 et un procédé de transmission de données. L'invention est plus particulièrement destinée aux réseaux dont les commutateurs, ou noeuds de commutation, mettent en oeuvre des terminaux, ou des processus, de type X25. Soient ces terminaux sont des terminaux internes, auquel cas leurs mises en oeuvre, au sein d'un commutateur, peuvent concerner la gestion des équipements de ce commutateur, ou d'autres commutateurs, notamment leurs équipements de routage et de commutation. Soient ces terminaux sont des terminaux externes, et auquel cas leur liaison aux circuits du commutateur se réalise par une liaison de données. En pratique, on distingue les terminaux internes des terminaux externes en ce que pour les premiers les données à transmettre sont produites par un logiciel contenu dans les circuits du commutateur, alors que les données à transmettre pour les seconds sont acheminés par des lignes physiques de liaison à ces circuits du commutateur. Des commutateurs qui mettent en oeuvre des terminaux de type X25 sont des équipements comportant essentiellement un circuit gestionnaire de paquets d'information, un Packet Handier, PH. Ce circuit PH, directement raccordé au réseau, est capable d'établir temporairement une liaison entre deux extrémités, d'assurer le transport de paquets d'informations entre ces deux extrémités, notamment par un contrôle de flux, et de libérer la liaison en fin de communication. Un service de type X25 peut ainsi être ouvert à des terminaux internes ou externes aux commutateurs. Pour l'établissement temporaire de la liaison, une adresse d'un commutateur ou d'un terminal appelé, qui est présente dans un paquet d'appel issu d'un commutateur ou d'un terminal appelant, permet de router le paquet d'appel jusqu'au commutateur ou jusqu'au terminal appelé destinataire. Ce paquet d'appel contient de plus une indication de voie logique permettant d'identifier un circuit, dans le commutateur ou le terminal appelant, pour lui transmettre l'acceptation de l'appel par le commutateur ou le terminal appelé. Cette acceptation comporte elle-même une indication de voie logique à utiliser avec ce commutateur ou ce terminal appelé lors d'un transfert de données ultérieur. La libération de la liaison peut être provoquée par un paquet de libération, ou par une temporisation. Pendant la communication, f l'échange des données sur les deux voies logiques est un échange en mode paquet comme au moment de l'établissement de la liaison. Pour la transmission, les terminaux internes accèdent en pratique au circuit PH au travers d'un module d'interface qui met en oeuvre une librairie de fonctions. Les fonctions de cette librairie permettent aux terminaux de gérer l'établissement de la liaison, le transfert des données et la libération de la liaison. Ce module d'interface assure en outre une fonction d'assemblage et de desassembloge en paquets X25 des messages échangés avec les terminaux. En pratique dans un tel cas, un terminal requiert du module d'interface l'établissement d'un circuit virtuel, CV, de type X25 avec un terminal destinataire désigné per son adresse. Le module interface traduit cette requête en un paquet d'appel X25 envoyé au circuit PH du commutateur appelant. Le paquet d'appel X25 est routé jusqu'au circuit PH du commutateur distant, hôte du terminal destinataire. Une analyse, dans le commutateur appelé, de l'adresse appelée par le paquet d'appel permet de déterminer que le destinataire est ou non un terminal interne. Le cas échéant, le paquet d'appel est délivré au module interface du commutateur destinataire qui envoie un événement au terminal interne destinataire pour lui indiquer un appel entrant. La réponse au module interface du terminal interne destinataire acceptant l'appel est transformée en un paquet X25 d'acceptation d'appel qui parcourt le trajet du paquet d'appel en sens inverse. Le terminal source, appelant, initiateur, est prévenu par un événement de l'établissement effectif de la liaison. Cette liaison est identifiée entre le module interface du commutateur appelant et le terminal par un numéro particulier de voie logique. Le terminal source établit alors une demande d'envoi d'un message au module interface en évoquant le numéro de voie logique. Ce message est fragmenté par le module interface en paquets de données X25 délivrés ensuite au circuit PH appelant. En réception, les paquets de données X25 sont réassemblés par l'autre module interface en un message délivré ensuite au terminal destinataire. La liaison est bidirectionnelle. Dans un réseau de type X25, les commutateurs, ou routeurs, peuvent être configurés différemment selon des besoins géographiques ou temporels. Un commutateur à un niveau de réseau peut ainsi être mis en relation par des voies de transmission avec certains commutateurs voisins, et pas avec d'autres. La maintenance d'un tel réseau est naturellement effectuée par des terminaux internes, ou processus, mis en oeuvre dans chaque commutateur. Dans certains cas, par exemple diffusions de table de routage, déclarations de présence d'abonnés, transmission d'information concernant la configuration d'un commutateur ou de la liste des abonnés qui lui sont rattachés, I'accomplissement d'un processus nécessite de faire savoir à tous les autres commutateurs du réseau que la configuration de ce commutateur a changé, et ou que les autres commutateurs doivent se modifier en correspondance. L'acheminement de l'information correspondante est réalisé par un terminal de communication qui utilise le réseau, et le protocole X25. Des informations à transmettre à tous les commutateurs peuvent également résulter de l'intervention d'un opérateur, personne physique, sur un terminal de service, externe, connecté à un commutateur. Les données à transmettre produites par les terminaux internes concernent la gestion du réseau. Dans le cas d'un processus automatique interne au commutateur, le terminal de transmission est un terminal interne utilisant le module interface, dans le cas d'un terminal externe le module interface n'est normalement pas sollicité. Un tel mode de gestion entraîne que les terminaux doivent émettre autant de messages qu'il y a de terminaux auxquels doit être adressée une information. Dans un réseau de type X25, il faut donc établir (successivement ou simultanément selon les possibilité du commutateur) autant de circuits virtuels qu'il y a de terminaux auxquels est adressée cette information. Lorsque ces informations sont communes à tous les commutateurs, par exemple la transmission d'une configuration générale dans le cas d'un terminal interne, le message doit être envoyé sur le réseau aussi souvent qu'il y a de terminaux destinataires à informer. Un tel mode de transmission est évidemment préoccupant en ce sens qu'il occupe le réseau d'une manière totalement inutile, un commutateur voisin du commutateur auquel est reliée un terminal initiateur de la diffusion pouvant émettre un même message N fois. Dans une installation de type préféré o un tel réseau de type X25 est organisé avec un système comportant de l'ordre de 100 terminaux différents, N vaut 100. Dans ce cas, le réseau doit supporter un débit inutile. En outre un tel procédé est peu intéressant pour le module interface et le circuit PH initiateur car ceux-ci sont amenés à devoir consacrer trop de ressources à cette transmission, ressources qu'ils ne peuvent pas utiliser par ailleurs pour gérer au mieux le reste du réseau. Par ailleurs le caractère répétitif de ces messages à transmettre à tous les commutateurs du réseau est particulièrement pénalisant de sorte qu'une utilisation sensible de ce réseau est consacrée au maintien de son propre fonctionnement. L'invention a pour objet de remédier à ce problème en mettant en oeuvre une procédure de diffusion. Dans ce but, une telle procédure de diffusion est mise en place dans les commutateurs qui comportent alors de préférence tous un module de diffusion. Une telle procédure de diffusion a pour objet qu'un commutateur transmet à ses commutateurs adjacents tous les messages qu'il reçoit et qui sont à diffuser aux terminaux. Un commutateur est adjacent d'un autre commutateur si une liaison peut être établie entre ces deux commutateurs sans l'intermédiaire d'un troisième commutateur. Les messages à diffuser sont principalement reconnus par le fait qu'ils sont adressés au module de diffusion du commutateur d'appel. Un code de diffusion présent dans un paquet d'appel concernant un tel message est donc l'adresse de ce module de diffusion. Cette technique de diffusion, dite aussi par inondation, peut par ailleurs être perfectionnée en n'envoyant un message à diffuser d'un commutateur à un autre que si cet autre commutateur ne l'a pas déjà reçu par ailleurs. En agissant ainsi on peut montrer que l'information ne circule qu'une seule fois entre chaque commutateur, et en particulier pas dans toutes les mailles du réseau. Ceci réduit donc le débit global. Dans l'invention un terminal interne initiateur, ou un terminal externe de service initiateur, gère alors un circuit virtuel avec le module de diffusion du commutateur du réseau X25 auquel il est rattaché pour lui délivrer l'information à diffuser. A la différence de la méthode utilisée dans l'état de la technique, ce module de diffusion de ce commutateur propage alors l'information à tous les modules de diffusion des commutateurs du réseau qui sont les voisins de ce commutateur. Par la méthode d'inondation, il en résulte une propagation d'information vers tous les commutateurs. En aval, chaque commutateur de réseau recevant l'information peut la délivrer aux terminaux, de préférence à ceux appartenant à la même catégorie que celle spécifiée par le terminal initiateur, et qui lui sont rattachés. Le module de diffusion effectue donc deux tâches, celle de transmettre aux commutateurs adjacents, et celle de transmettre aux terminaux connectés au commutateur. Dans chacune des deux tâches, connaissant le terminal ou le commutateur qui lui a transmis l'information à diffuser, un module de diffusion ne transmet pas à ce terminal ou à ce commutateur transmetteur l'information à diffuser qu'il vient de recevoir de lui. Cette connaissance est assurée par le repérage de la voie logique par laquelle le service de diffusion a été invoqué. L'invention a donc pour objet un procédé de transmission de données dans lequel - on émet à partir d'un premier terminal de type X25 des informations destinées à un ensemble de deuxièmes terminaux, chaque deuxième terminal étant connecté à un commutateur d'un réseau, - et on reçoit ces données dans les deuxièmes terminaux destinataires, caractérisé en ce que pour atteindre tous les deuxièmes terminaux destinataires de l'ensemble, - on transmet les données à partir du premier terminal à un module de diffusion contenu dans un premier commutateur de ce réseau relié directement à ce premier terminal, et - le module de diffusion diffuse ces données aux commutateurs adjacents à ce premier commutateur. L'invention a également pour objet un réseau comportant des commutateurs de réseau et des terminaux connectés à ces commutateurs, ces commutateurs et ces terminaux étant aptes à établir entre eux des liaisons de type X25 pour transmettre des données, caractérisé en ce que des commutateurs comportent des modules de diffusion qui reçoivent des données à diffuser à tous les terminaux d'un ensemble de terminaux et dont la fonction est de transmettre ces données à diffuser à tous les commutateurs qui leur sont adiacents dans le réseau. L'invention sera mieux comprise à la lecture de la description qui suit et à l'examen des figures qui l'accompagnent. Celles-ci ne sont présentées qu'à titre indicatif et nullement limitatif de l'invention. Les figures montrent: - Figure 1: une représentation schématique d'un réseau de type X25 utilisable pour mettre en oeuvre le procédé de l'invention - Figures 2a et 2b: des modes de transmission des message émis par les terminaux selon l'état de la technique et selon le procédé de I'invention respectivement; - Figure 3: une représentation schématique d'un programme mis en oeuvre dans chaque commutateur du réseau. La figure 1 montre un réseau.. 1 utilisable pour mettre en oeuvre des terminaux de type X25 dans le cadre du procédé de l'invention. Ce réseau comporte un ensemble de commutateurs tels que 2 à 1l 1. Les commutateurs sont reliés entre eux par des liaisons formant par exemple un réseau maillé, plusieurs chemins pouvant être utilisables pour relier un commutateur à un autre. Les circuits de ces commutateurs peuvent lancer des processus automatiques, dits terminaux internes. Dans un commutateur particulier 2, situé par exemple dans un local occupé par un administrateur de réseau, opérateur personne physique du système, peut être disposé par ailleurs un terminal externe de service 12 relié par un bus 13 au commutateur 2. D'autres terminaux, par exemple du même type que le terminal 1 2, peuvent être reliés aux autres commutateurs ou bien ils peuvent comporter un autre type d'équipement. Le commutateur 2 est globalement représenté. Il comporte en pratique des circuits de commutation, de formatage par mise en paquet, de mémorisation, de synchronisation et autres pour transmettre des messages reçus à d'autres commutateurs ou à d'autres terminaux. Un terminal interne au commutateur 2 est destiné à effectuer l'entretien du réseau 1. Dans ce but un des équipements du commutateur 2 comporte un programme 14 dans une mémoire programme 15. Le programme 14 est capable de mettre en oeuvre un système d'exploitation 16 et notamment des applications ou terminaux 1 7 d'entretien du réseau 1. Ces terminaux 17 ont pour objet de modifier la configuration du commutateur 2 et ou de transmettre des informations correspondantes aux autres commutateurs 3 à 11. Le commutateur 2 comporte dans ce but des circuits 18 de type PH de gestion de paquets d'information. Il comporte également d'une manière connue un module interface 19 interposé entre un terminal interne représenté par un programme 17 contenu dans la mémoire 15 et le circuit 18. Le terminal externe 12 est normalement relié par le bus 13 au circuit 18. La figure 2a montre d'une manière schématique, dans l'état de la technique, un envoi d'un message d'information à une multitude de terminaux, internes ou externes, reliés aux commutateurs 2 à 11 du réseau. L'envoi de chaque message comporte une première étape d'établissement d'un circuit virtuel entre le terminal appelant et un terminal destinataire. Cet établissement est réalisé par le circuit interface pour les terminaux internes ou bien il est réalisé par les terminaux externes eux-mêmes. L'envoi du message se produit ultérieurement au cours d'une deuxième étape de transmission. Ces deux étapes doivent être réitérées pour chaque transmission différente entre le terminal initiateur et l'un quelconque des terminaux destinataires. Les messages tous identiques de la figure 2a encombrent donc le réseau par leurs transmissions multiples aux terminaux auxquels ils sont destinés. Les messages représentés sont ceux transmis sur des voies logiques établies dans les commutateurs reliés au terminal initiateur et aux terminaux destinataires. La figure 2a montre schématiquement que pour joindre deux terminaux, la liaison d'un commutateur à un autre commutateur est utilisée deux fois. Tout comme pour l'invention, cette liaison peut par ailleurs être de type quelconque, être supporté par un réseau quelconque. Il reste qu'elle subit ici un trafic multiple. La figure 2b montre d'une manière schématique la modification apportée par le procédé de l'invention. Pour un message à diffuser, un terminal 12 initiateur, ici externe dans l'exemple, requiert l'ouverture d'un circuit virtuel non pas avec un des terminaux destinataires du message à diffuser, mais avec un module de diffusion 20 du commutateur auquel ce terminal initiateur est relié. Le module 20 reçoit ensuite le message. Le module 20 est doté d'une mémoire qui est de nature à pouvoir mémoriser un tel message à diffuser. A priori, il n'y a pas d'échange immédiat en retour entre les terminaux initiateur et destinataires. Puis le module de diffusion 20 diffuse le message mémorisé. Ainsi, un module de diffusion MD1 d'un commutateur de départ transmet un message à diffuser à un module de diffusion MD2 d'un commutateur d'arrivée qui lui est directement adjacent. Ici, la transmission entre les deux modules MD1 et MD2 est montrée comme une transmission utilisant un réseau de type X25, avec ouverture de circuit virtuel entre les deux modules MD1 et MD2. Cependant cette liaison pourrait être de nature différente. Le module MD2 mémorise à son tour le message à diffuser (au moins temporellement). Le module de diffusion MD2 transmet ensuite le message à diffuser d'une part aux terminaux destinataires Destl et Dest2 qui sont reliés à son commutateur. Le module de diffusion MD2 transmet ensuite d'autre part (ou auparavant ou en même temps) le message à diffuser aux autres commutateurs qui lui sont adjacents, et qui sont différents du commutateur de départ. On constate alors que la ligne entre le commutateur du module de diffusion MD1 et celui du module de diffusion MD2 n'est utilisée qu'une seule fois, bien que le message soit transmis à deux destinataires Destl et Dest2 reliés au commutateur du module MD2. En outre l'opération d'ouverture du circuit virtuel à l'endroit du terminal initiateur ne se produit qu'une fois. Par contre, chaque module de diffusion MD2 qui reçoit le message à diffuser ouvre autant de circuits virtuels qu'il y de terminaux reliés à son commutateur. Si le terminal initiateur est interne, l'édition du message à diffuser se termine par l'invocation du module de diffusion (en remplacement du module interface) et ce module de diffusion après établissement du circuit virtuel transmet les informations à diffuser comme ci-dessus. Le module de diffusion = MD1, en émettant ainsi des messages à diffuser peut leur donner au fur et à mesure un numéro d'ordre R. Eventuellement le module de diffusion MD1 peut compléter le rang par l'identification du terminal interne ou du terminal 12, au cas o plusieurs terminaux internes ou externes rattachés à un même commutateur seraient appelés à effectuer des mêmes opérations de diffusion que le terminal 12. Les terminaux initiateurs peuvent par ailleurs agrémenter le message à diffuser d'un code C de catégorie permettant une diffusion sélective des messages à diffuser. Seuls les terminaux destinataires correspondants à cette catégorie recevront le message à diffuser. En liaison par protocole X25, I'adresse du module de diffusion formant code de diffusion sera de préférence placée dans un paquet d'appel. Sa signification est implicitement dans ce cas que l'information reçue ultérieurement par le circuit institué par ce paquet d'appel est une information à diffuser. Il peut en être de même du numéro d'ordre R et ou du code C de catégorie qui peuvent aussi être placé dans le paquet d'appel. La figure 3 montre en détail le fonctionnement du procédé de l'invention. Le programme 14, figure 1, comporte un sous-programme 21 de diffusion. Ce sous-programme 21 est schématiquement représenté sur la figure 3. Ce sous- programme 21 de diffusion comporte pour l'essentiel un test 22 pour vérifier que l'adresse du destinataire est une adresse DIFF du module de diffusion du commutateur de départ. De préférence cette adresse sera une adresse générique, chaque module de diffusion d'un commutateur étant appelable par cette adresse à partir d'un quelconque des modules de diffusion adjacents, ou pouvant en appeler un autre par cette adresse. Si l'adresse est différente, par exemple ADR ou autre signalant que le message doit être acheminé à un terminal particulier, la transmission se produit par la suite normalement. Par contre, si l'adresse du paquet d'appel correspond à celle DIFF du module de diffusion, le sous-programme 21 met en oeuvre, en plus du test 22, une macro-instruction 23 représentant le module de diffusion 20. Une telle macro-instruction 23 a d'abord pour objet de faire transmettre par un commutateur récepteur (2 ici) à tous les commutateurs adiacents en aval un message à diffuser que ce commutateur récepteur vient de recevoir d'un commutateur amont (ou d'un terminal de service externe). Par exemple le commutateur 2 transmet le message à diffuser au commutateur 3, au commutateur 5, au commutateur 7 et au commutateur 10. Dans la pratique, ces commutateurs adjacents avals sont physiquement reliés à des entrées activées de ce commutateur 2 amont. Donc le commutateur 2 sait, parce que cette information a été acquise, et éventuellement mémorisée dans une mémoire 24 au moment de la constitution du réseau, que les commutateurs 3, 5, 7 et 10 sont ses voisins adjacents. La mémoire 24 comporte également la liste des terminaux internes ou externes qui sont connectés à ce commutateur. Ces terminaux connectés peuvent alors recevoir de leur commutateur de connexion l'information à leur diffuser. Dans l'invention, chaque commutateur effectue donc la transmission du message à diffuser à un chacun des commutateurs adjacents, par exemple ici du commutateur 3 au commutateur 4 seulement. De même le commutateur 5 transmettra le message à diffuser au commutateur 6. On remarquera que le commutateur 4 pourrait être également amené à transmettre un même message à diffuser au commutateur 6. De manière à éviter une telle répétition, de préférence, avant d'envoyer un message à un commutateur voisin, un commutateur par exemple le commutateur 4, peut interroger ses voisins, ici le commutateur 6, pour savoir si ce commutateur 6 a déjà reçu le message qu'il s'apprête à lui transmettre. Pour cela, le commutateur 4 signale au commutateur 6 qu'il a l'intention de lui transmettre le message de rang R ou dont l'identité est codée. Cette signalisation peut être réalisée par un paquet d'appel comportant d'une part le code de diffusion (DIFF) et d'autre part le rang R du message à diffuser. Le commutateur 5 ayant déjà transmis au commutateur 6 le message de rang R, le commutateur 6 pourra répondre au commutateur 4, de préférence dans un paquet de données, que le message de rang R a déjà été reçu. Le paquet de données en réponse sera dans ce cas un paquet de refus et la transmission de ce message de rang R ne sera pas effectuée depuis le commutateur 4. Cette consultation préalable est bien entendu très courte. Elle s'apparente à une liaison de signalisation et n'occupe pas particulièrement le lien entre le commutateur 4 et le commutateur 6. En outre, le module de diffusion transmets le message à diffuser à tous les terminaux, internes ou externes, qui sont directement connectés au commutateur de ce module de diffusion, c'est-à-dire qui lui sont connectés sans l'intermédiaire d'un autre commutateur. Cette diffusion se produit aussi bien entendu pour le commutateur de départ vis à vis des autres terminaux reliés à ce commutateur de départ. La diffusion ne se produit pas vers le commutateur ou le terminal qui vient de transmettre le message à diffuser car cette transmission s'est réalisée par une voie logique qui permet d'identifier l'organe transmetteur et de ne pas lui renvoyer ce que lui-même vient d'envoyer. Au besoin le paquet d'appel, ou une zone dans le message à diffuser, désigne les terminaux ou les catégories de terminaux qui sont destinés à recevoir le message à diffuser. A ce titre, le paquet d'appel servant pour le test 22 peut comporter l'information C de catégorie que le module de diffusion du commutateur adjacent récepteur détecte. Cette information de catégorie est de préférence une information de la catégorie du terminal initiateur lui-même. Ce module de diffusion transmet alors ce message à diffuser aux terminaux qui lui sont connectés si la catégorie C leur correspond. En variante, la catégorie peut être elle-même identique à l'adresse d'un terminal. De ce fait seul le terminal destinataire recoit le message prétendument à diffuser. En agissant ainsi, on pourrait envoyer par l'intermédiaire du module de diffusion un message à un seul terminal. REVENDICATIONS 1 - Procédé de transmission de données dans lequel - on émet à partir d'un premier terminal de type X25 des informations destinées à un ensemble de deuxièmes terminaux, chaque deuxième terminal étant connecté à un commutateur d'un réseau, - et on reçoit ces données dans les deuxièmes terminaux destinataires, caractérisé en ce que pour atteindre tous les deuxièmes terminaux destinataires de l'ensemble, - on transmet les données à partir du premier terminal à un module de diffusion contenu dans un premier commutateur de ce réseau relié directement à ce premier terminal, et - le module de diffusion diffuse ces données aux commutateurs adjacents à ce premier commutateur. 2 - Procédé selon la revendication 1, caractérisé en ce que - le module de diffusion du premier commutateur établit une liaison avec chacun des module de diffusion des commutateurs adjacents. 3 - Procédé selon l'une des revendications 1 à 2, caractérisé en ce que - le module de diffusion teste si un commutateur adjacent a déjà reçu les données avant de les lui envoyer. 4 - Procédé selon l'une des revendications 1 à 3, caractérisé en ce que - on diffuse les données à un deuxième terminal relié à un commutateur adjacent si une catégorie de ce deuxième terminal correspond à une catégorie attençiue. 5 - Procédé selon l'une des revendications 1 à 3, caractérisé en ce que - on diffuse les données à un deuxième terminal relié directement à ce premier commutateur si une catégorie de ce deuxième terminal correspond à une catégorie attendue. 6 - Procédé selon l'une des revendications 4 à 5, caractérisé en ce que - la catégorie attendue est celle du premier terminal. 7 - Procédé selon l'une des revendications 4 à 5, caractérisé en ce que - la catégorie attendue est une catégorie contenue dans un message de test. 8 - Procédé selon l'une des revendications 1 à 7, caractérisé en ce que - le premier terminal et ou certains des deuxièmes terminaux sont des terminaux internes ou externes. 9 - Réseau comportant des commutateurs de réseau et des terminaux connectés à ces commutateurs, ces commutateurs et ces terminaux étant aptes à établir entre eux des liaisons de type X25 pour transmettre des données, caractérisé en ce que des commutateurs comportent des modules de diffusion qui reçoivent des données à diffuser à tous les terminaux d'un ensemble de terminaux et dont la fonction est de transmettre ces données à diffuser à tous les commutateurs qui leur sont adjacents dans le réseau. - Réseau selon la revendication 9, caractérisé en ce que chaque module de diffusion d'un commutateur donné comporte un moyen pour savoir si un commutateur adjacent à ce commutateur donné a déjà reçu les données à diffuser.