RESEAU DE COMMUNICATIONS IP, À ÉQUIPEMENTS À SÉLECTION DIRECTE DE SERVICE
L'invention concerne le domaine des réseaux de communications internet, qu'ils soient de type IPv4, IPv6 ou mixte IPv4/IPv6. Dans certaines situations, un réseau à protocole internet (ou IP) doit être considéré comme « non géré ». On entend ici par « non géré » le fait de ne pas disposer de compétence locale pour gérer et configurer le réseau. Cela peut résulter d'une impossibilité induite par exemple par la mobilité d'équipements de communication du réseau (ou « hosts ») ou par des raisons techniques, notamment lors de la phase d'installation du réseau. Mais cela peut également résulter d'un choix, comme par exemple dans le cas d'un réseau domestique. On entend ici par « équipement de communication » tout équipement de réseau de type serveur ou terminal, comme par exemple un ordinateur portable ou fixe ou un téléphone mobile ou encore un assistant personnel numérique (ou PDA pour « Personal Digital Assistant »). Un tel réseau non géré fournit certes des services liés à la configuration d'adresses (ou « addressability ») et au routage (ou « reachability »), mais il ne fournit aucun autre service comme par exemple ceux offerts par un service de nommage (ou DNS pour « Domain Name Service »). Par conséquent, lorsqu'un équipement de communication, comme par exemple un terminal, souhaite se connecter à un service choisi, il peut être dans l'impossibilité de déterminer l'adresse de l'équipement qui offre ce service. De plus, pour qu'un réseau non géré puisse évoluer, il est important de prendre en compte ses phases de migration, par exemple d'une version IPv4 vers une version IPv6, pendant lesquelles il existe de façon transitoire des noeuds de type mixte IPv4/IPv6 souhaitant joindre des équipements de type IPv4 ou IPv6, comme par exemple une imprimante. Plus généralement, il
s'agit de gérer les phases de transition entre des réseaux non gérés offrant la possibilité de déterminer l'adresse des équipements offrant un service donné, et les réseaux non gérés n'offrant pas cette capacité. Une telle prise en compte n'existant pas aujourd'hui, certains services peuvent donc être durablement indisponibles ou seulement momentanément. Certes, dans les situations précitées l'utilisateur, qui requiert l'accès à un service, peut lui même fournir à son équipement de communication l'adresse IP de l'équipement qui offre ce service. Mais, cela n'est pas pratique, notamment lorsque le nombre de bits de l'adresse est important. L'invention a donc pour but de remédier à tout ou partie des inconvénients précités. Elle propose à cet effet un procédé de gestion de services offerts par des équipements de communication d'un réseau de communications internet, permettant : • d'une part à un équipement de communication appartenant à un réseau non géré, à sélection directe de service, d'identifier un équipement de communication (de service) offrant un service donné,
• et d'autre part à un équipement de communication appartenant à une portion de réseau non gérée, offrant un moyen de sélection de service, d'identifier des équipements de communication (de service) offrant un service mais appartenant à des portions de réseau non gérées n'offrant pas ce moyen de sélection de service. Ce procédé se caractérise par le fait qu'il consiste à signaler aux équipements de communication qui sont situés non seulement dans les portions de réseau disposant d'un moyen de sélection de service, mais également dans celles qui n'en disposent pas, quels sont les services offerts par les équipements de communication qui sont situés dans les portions de réseau qui ne disposent pas de moyen de sélection de service. Dans un mode de réalisation particulièrement avantageux, la sélection de service est offerte, dans un réseau qui le permet, par intégration dans l'adresse des équipements de communication du réseau, offrant un service, des données de service qui représentent ce service (ou son type et/ou sous-type).
Ainsi, lorsqu'un équipement de communication reçoit l'adresse d'un autre équipement de communication offrant un service, il peut en déduire le type de service offert. Inversement, lorsqu'un équipement de communication, situé dans une portion de réseau non gérée disposant de moyen de sélection de service, doit se connecter à un service donné, il peut en déduire l'adresse de l'équipement qui fournit ce service, soit directement, du fait que l'équipement est directement connecté à la portion de réseau non gérée disposant de moyen de sélection de service, soit indirectement, en passant par un équipement, d'une part, connecté à cette portion de réseau et à la portion de réseau qui ne dispose pas de ce moyen de sélection de service, et d'autre part, fournissant une fonction de passerelle entre les deux réseaux. Pour cela, on mémorise dans les équipements de communication, connectés à une portion de réseau disposant de moyen de sélection de service et à une portion de réseau qui ne dispose pas de ce moyen de sélection de service, les adresses des équipements qui appartiennent à la portion de réseau qui ne dispose pas de moyen de sélection de service et qui contiennent les données de service. Préférentiellement, on stocke dans la mémoire des équipements de communication les données d'adresse, représentatives de l'adresse de l'équipement offrant un service, en correspondance des données de service, représentatives du service offert. Ainsi, l'équipement de communication dispose d'une espèce de répertoire des services disponibles et des adresses correspondantes. Par conséquent, lorsqu'un équipement de communication souhaite accéder à un service désigné, on détermine dans cet équipement de communication les données d'adresse qui représentent l'adresse de l'équipement offrant le service désigné, afin d'adresser de façon classique des paquets IP à ce dernier, à l'adresse extraite. La fourniture des adresses comportant les données de service s'effectue préférentiellement par diffusion, par exemple sous la forme de messages de service. Par ailleurs, lorsque deux équipements offrent un même service mais selon des versions de protocole de couche réseau de types différents, il est
avantageux de sélectionner l'équipement qui utilise l'une des deux versions (par exemple IPv6, ou bien IPv4), puis de générer à destination de cet équipement un paquet selon le format choisi (IPv6 ou IPv4), comprenant un entête comportant au moins les données d'adresse représentatives de l'adresse de destination dudit équipement sélectionné. L'invention propose également un équipement de communication (ou « host ») pour un réseau de communications internet. Cet équipement de communication se caractérise par le fait qu'il comprend des moyens de gestion chargés, lorsqu'ils reçoivent des données d'adresse, représentatives d'une adresse d'un autre équipement appartenant à une portion du réseau, ne disposant pas de moyen de sélection de service, et offrant un service, ainsi que des données de service représentatives de ce service offert, de stocker dans une mémoire les données d'adresse reçues en correspondance des données de service reçues conjointement. Chaque équipement de communication dispose ainsi d'une table de correspondance de services qui lui permet lorsqu'il souhaite accéder à un service désigné, de déterminer facilement les données d'adresse qui représentent l'adresse de l'équipement qui offre ce service désigné, afin d'établir la liaison avec ce dernier. Dans le cas d'un équipement de communication de type mixte (IPv4/IPv6), la table stocke par exemple les services fournis par la portion de réseau IPv4 et les services fournis par la portion de réseau IPv6. Préférentiellement, les moyens de gestion sont agencés, lorsqu'ils ont déterminé dans la mémoire deux équipements offrant un même service mais selon des versions de protocole de couche réseau de types différents, de manière à sélectionner l'équipement qui utilise l'une des deux versions (par exemple IPv6, ou bien IPv4). Ils peuvent ensuite générer à destination de l'équipement sélectionné un paquet selon le format choisi (IPv6 ou IPv4), comprenant un entête comportant au moins les données d'adresse représentatives de l'adresse de destination de l'équipement sélectionné, afin d'établir la liaison avec celui-ci. Un tel équipement de communication peut être par exemple un serveur ou un terminal de communication.
L'invention porte en outre sur un équipement de communication (de service) offrant au moins un service, pour un réseau de communication internet, comprenant des moyens d'émission chargés de diffuser au sein du réseau, à destination des équipements de communication, des messages comportant des données d'adresse, représentatives de son adresse et des données de service, représentatives du service qu'il offre. Dans un mode de réalisation avantageux, les moyens d'émission sont agencés pour placer les données d'adresse et les données de service dans le champ d'adresse de l'entête de paquets de données IP. Par exemple dans le cas d'équipements de service fonctionnant selon la version de protocole IPv6, les moyens d'émission peuvent être agencés de manière à placer les données d'adresse et les données de service dans les soixante quatre derniers bits du champ d'adresse au format IPv6, les soixante quatre premiers bits étant dédiés à l'identification du réseau et à la route permettant de joindre l'équipement dont l'adresse est définie dans les soixante quatre derniers bits. Dans ce cas, une première partie des données de service peut être dédiée à un type de service et codée dans six des soixante quatre derniers bits, et une seconde partie des données de service peut être dédiée à un sous-type dudit type de service et codée avec les données d'adresse dans les cinquante huit bits restants des soixante quatre derniers bits. L'invention est particulièrement bien adaptée aux équipements de communication qui offrent des services ou qui n'en n'offrent pas, et qui utilisent des versions de protocole de couche réseau de type IPv4 et IPv6 et/ou IPv4/IPv6. D'autres caractéristiques et avantages de l'invention apparaîtront à 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 réseau internet de type mixte IPv4/IPv6 comportant des équipements de communication selon l'invention n'offrant pas de service et des équipements de communication selon l'invention offrant des services, et
- la figure 2 illustre de façon schématique un exemple de décomposition de
champ d'adresse au format IPvδ, selon l'invention. Les dessins annexés pourront non seulement servir à compléter l'invention, mais aussi contribuer a sa définition, le cas échéant. L'invention a pour objet de permettre la sélection directe de service au sein d'un réseau de communications internet (IP), qu'il soit de type IPv4, IPv6 ou mixte IPv4/IPv6. On entend ici par « réseau de type mixte », un réseau comprenant, d'une part, des équipements de communication n'utilisant qu'une version de protocole de couche réseau de type IPv4 ou IPv6, et d'autre part, des équipements de communication, dits mixtes du fait qu'ils utilisent les deux versions de protocole de couche réseau de type IPv4 et IPv6. Par ailleurs, on entend ici par « équipement de communication » tout équipement de réseau de type serveur ou terminal, comme par exemple un ordinateur portable ou fixe, ou un téléphone mobile, ou encore un assistant personnel numérique (ou PDA pour « Personal Digital Assistant »). Dans ce qui suit on considère que le réseau IP est de type mixte. Comme cela est illustré sur la figure 1 , un réseau internet N de type mixte IPv4/IPv6 peut être, d'une façon très schématique, assimilé à un ensemble de nœuds, tels que des routeurs périphériques ou de cœur Ri (ici i = 1 à 3 mais il peut prendre n'importe quelle valeur supérieure ou égale à un), raccordés entre eux de manière à assurer le routage des paquets de données qu'ils reçoivent, et un ensemble d'équipements de communication, tels que des terminaux Tj et Sk (ici j = 1 à 3, mais il peut prendre n'importe quelle valeur supérieure ou égale à deux, et k = 1 et 2, mais il peut prendre n'importe quelle valeur supérieure ou égale à un), raccordés à certains routeurs Ri, éventuellement via un ou plusieurs autres terminaux de type serveur d'accès, de manière à échanger entre eux des paquets de données. Les équipements de communication Tj et Sk sont soit de type mixte
(IPv4 et IPv6), soit de type simple (IPv4 ou IPv6). Certains équipements de communication, ci-après appelés équipements de service Sk offrent en outre un ou plusieurs services. Dans ce qui suit on désigne par Tj un équipement de communication n'offrant pas de service. Un service peut appartenir à un type (ou classe) ou bien à un sous-
type (ou sous-classe) d'un type donné. Par exemple, un type de service peut regrouper les équipements de service (par exemple des imprimantes) capables d'imprimer des documents, et ce type peut être subdivisé en au moins un premier sous-type regroupant les équipements de service Sk (ou imprimantes) capables d'imprimer des documents en noir et blanc, et un second sous-type regroupant les équipements de service Sk (ou imprimantes) capables d'imprimer des documents en couleurs. Un réseau IP N comporte généralement des portions de réseau non gérées équipées ou non d'un moyen de sélection de service, tel qu'un DNS. Par conséquent, certains équipements de communication Tj, qui appartiennent à une portion de réseau non gérée n'offrant pas un tel moyen de sélection de service, ne peuvent pas se connecter à des équipements de service Sk. Pour remédier à cet inconvénient, l'invention propose de signaler aux équipements de communication Tj qui sont situés non seulement dans les portions de réseau disposant d'un moyen de sélection de service, mais également dans celles qui n'en disposent pas, quels sont les services offerts par les équipements de service Sk qui sont situés dans les portions de réseau qui ne disposent pas de moyen de sélection de service. Pour ce faire, on peut avantageusement intégrer dans les adresses de ces équipements de service Sk des données de service représentatives des services qu'ils offrent (ou des types et/ou sous-types de services). On génère ainsi des adresses « codées » qui sont fournies à certains au moins des équipements de communication Tj, et notamment à ceux de type mixte, afin qu'ils les stockent dans une mémoire M. Les équipements de communication Tj de type mixte peuvent en effet communiquer non seulement avec des équipements de service Sk de type IPv4 mais également avec ceux de type IPv6, si bien qu'ils peuvent accéder à un nombre plus important d'équipements de service SK. Mais, bien entendu, on peut également fournir les adresses codées aux équipements de communication Tj de type non mixte. Il existe en effet des dispositifs de conversion de format IPv4 vers IPv6 et réciproquement. Dans ce qui suit, on considère, à titre d'exemple illustratif, que tous
les équipements de communication Tj sont de type mixte. Les données de service constituent par exemple l'identifiant d'un type de service et/ou l'identifiant d'un sous-type de service. Dans le cas d'un sous- type d'un type de service, il est avantageux, comme on le verra plus loin, qu'une première partie des données de service constitue un identifiant de type, tandis qu'une seconde partie des données de service constitue un identifiant de sous-type. En d'autres termes, une adresse codée comprend des données d'adresse fournissant l'adresse IP d'un équipement de service Sk, offrant un service, et des données de service fournissant l'identifiant du type du service offert et/ou l'identifiant du sous-type du service offert. Chaque équipement de communication Tj comporte un module de gestion MG couplé à la mémoire M et chargé, lorsqu'on lui fournit des adresses codées (données d'adresse et données de service), de les stocker dans ladite mémoire M. Préférentiellement, les données de service sont stockées par le module de gestion PM sous la forme d'une table de correspondance entre les adresses IP des équipements de service Sk qui offrent un service, et les identifiants de type (et/ou de sous-type) du service. Par exemple, dans le cas d'équipements de communication Tj de type mixte, la table de correspondance peut être subdivisée en deux parties, l'une concernant les services offerts par des équipements de service Sk de type IPv4 et l'autre concernant les services offerts par des équipements de service Sk de type IPvδ. Une fois qu'il dispose des données d'adresse et des données de service des équipements de service Sk du réseau N, un équipement de communication Tj peut alors assurer ce que l'on appelle une sélection directe de service. Une telle sélection consiste à déterminer, en cas de demande d'accès à un service choisi, l'adresse de l'équipement de service Sk qui offre ce service, sans recourir à un équipement tiers, tel qu'un serveur DNS. Selon l'invention, chaque module de gestion MG est agencé de manière à déterminer, dans la mémoire M à laquelle il est couplé, les données d'adresse qui représentent l'adresse IP de l'équipement de service Sk offrant
le service qui est désigné par son identifiant de type (ou de sous-type) dans la demande. Une fois la détermination effectuée, le module de gestion MG dispose de l'adresse IP de l'équipement de service Sk et peut la communiquer au module d'émission/réception MER de l'équipement de communication Tj qu'il équipe afin qu'il établisse une liaison avec cet équipement de service Sk de façon tout à fait standard (c'est-à-dire en générant un paquet au format IPv4 ou IPv6, selon la version utilisée par l'équipement de service Sk déterminé, et comportant dans le champ d'adresse de son entête l'adresse IPv4 ou IPv6 dudit équipement de service Sk, déterminée dans la mémoire M). Bien entendu, si l'équipement de service Sk déterminé supporte le codage d'adresse, on place dans le champ d'adresse de l'entête du paquet qui lui est destiné l'adresse codée (données d'adresse et données de service). Lorsque la détermination d'adresse IP, dans une mémoire M, aboutit à plusieurs possibilités, le module de gestion MG doit effectuer un choix. Par exemple, le module de gestion MG est configuré de manière à sélectionner en priorité un équipement de service Sk qui utilise la version IPv6. Mais, on pourrait également envisager qu'il sélectionne en priorité un équipement de service Sk' qui utilise la version IPv4. On peut également envisager une sélection reposant sur un sous-type particulier lorsque la requête ne désigne qu'un type subdivisé en sous-type. Par exemple, lorsqu'une impression est requise on peut sélectionner en priorité un équipement de service Sk assurant une impression en couleurs. Les adresses codées peuvent être fournies aux équipements de communication Tj soit par une personne, soit par le réseau. Dans la première situation, c'est la personne qui charge dans le l'équipement de communication Tj un fichier d'adresses codées stocké sur un support tel qu'une disquette 3,5 pouces, ou un disque magnéto-optique, ou encore un CD-ROM. Dans la seconde situation, deux cas peuvent être envisagés. Dans un premier cas, une personne est chargée de connecter l'équipement de communication mixte Tj à un serveur (ou à un site internet) afin de télécharger le fichier d'adresses codées qu'il contient et ainsi mettre à
jour la mémoire M de l'équipement de communication mixte Tj. Dans un second cas, qui est actuellement préféré, ce sont les équipements de service Sk qui sont eux-mêmes chargés de diffuser leur adresse codée au moins à destination des équipements de communication mixtes Tj. Les équipements de service Sk comprennent à cet effet un module d'émission ME chargé de diffuser leurs adresses par exemple sous la forme de messages de service comportant chacun des données d'adresse et des données de service. Lorsque les adresses codées sont diffusées sous la forme de messages, il est particulièrement avantageux que chaque message constitue un paquet de données IP, de préférence au format IPv6. Mais, bien entendu, l'adresse codée peut être également transmise sous la forme d'un message constituant un paquet IP au format IPv4. Plus préférentiellement encore, le module d'émission ME se sert du champ d'adresse contenu dans l'entête d'un paquet IP pour « coder » les données d'adresse et une partie au moins des données de service. Par exemple dans le cas du protocole IPv6, le champ réservé à l'adresse IP d'un équipement de communication, dans l'entête d'un paquet IP, comporte 128 bits. Ce champ est subdivisé en deux parties P1 et P2 de 64 bits chacune. Classiquement, la première partie P1 est dédiée à l'identification du réseau et à la route permettant de joindre l'équipement de service Sk dont l'adresse est définie dans la seconde partie P2. Cette seconde partie P2, de 64 bits, n'étant que partiellement utilisée, l'invention propose de l'utiliser pour coder les données d'adresse et une partie au moins des données de service. Le codage peut s'effectuer d'au moins deux façons. Une première façon consiste à agencer le module d'émission ME de chaque équipement de service Sk de sorte qu'il génère un code de 64 bits représentatif à la fois de son adresse IP et de son identifiant de type (et/ou sous-type). Une seconde façon, actuellement préférée et illustrée sur la figure 2, consiste à agencer le module d'émission ME de chaque équipement de service Sk de sorte qu'il subdivise la seconde partie P2, qui suit la première
partie P1 , en deux sous-parties SP1 et SP2. La première sous-partie SP1 est par exemple dédiée à l'identifiant de type, tandis que la seconde sous-partie SP2 est dédiée à la fois à l'identifiant de sous-type (lorsqu'il existe) et à l'adresse IP de l'équipement de service Sk. En d'autres termes, la première sous-partie SP1 comprend une première partie (ou la totalité) des données de service, tandis que la seconde sous- partie SP2 comprend une seconde partie des données de service et les données d'adresse. Il est important de noter que les données d'adresse et la seconde partie des données de service peuvent être confondues en un code constituant la seconde sous-partie SP2. Lorsqu'un codage est prévu, le module d'émission ME de chaque équipement de service Sk met en œuvre un algorithme de codage alimenté en identifiant(s) et adresse et délivrant des codes. Par exemple, la première sous-partie SP1 peut être composée de six bits constitués chacun d'un caractère alphanumérique, choisi parmi neuf (de préférence identiques à ceux utilisés par les DNSs), ou du signe « _ » (« underscore »). La seconde sous-partie SP2 est alors constituée de 58 bits constitués chacun, par exemple, d'un caractère choisi parmi 36 (ordonnés de « a » (n°0) à « z » (n°25), puis de « 0 » (n°26) à « 9 » (n°35), et enfin « _ » (n°36)). Bien entendu, d'autres types de codage peuvent être envisagés. Il est important de noter qu'en présence de champs d'adresse comportant des secondes parties P2 comprenant des codes, le module de gestion MG de chaque équipement de communication Tj est agencé de manière à décoder lesdites secondes parties P2 pour en déduire les identifiant(s) et adresse. Il peut alors stocker ces identifiant(s) et adresse dans la table de correspondance de la mémoire M. Ce mode de transmission d'adresses codées, via le champ d'adresse IP, est particulièrement avantageux car il évite d'utiliser un protocole spécifique dédié à la recherche d'informations de service, comme par exemple le protocole SLP. Les modules de gestion MG et mémoires M des équipements de communication Tj selon l'invention et le module d'émission ME de chaque équipement de service Sk selon l'invention 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. L'invention offre également un procédé dédié à la gestion de services offerts par des équipements de communication Sk d'un réseau de communications internet. Celui-ci peut être notamment mis en œuvre à l'aide des équipements de communication Tj et ou des équipements de service Sk présentés ci- avant. Les fonctions et sous-fonctions principales et optionnelles assurées par les étapes de ce procédé étant sensiblement identiques à celles assurées par les différents moyens constituant ces équipements de communication Tj et/ou ces équipements de service Sk, seules seront résumées ci-après les étapes mettant en œuvre les fonctions principales du procédé selon l'invention. Ce procédé consiste à signaler aux équipements de communication Tj qui sont situés non seulement dans les portions de réseau disposant d'un moyen de sélection de service, mais également dans celles qui n'en disposent pas, quels sont les services offerts par les équipements de service Sk qui sont situés dans les portions de réseau qui ne disposent pas de moyen de sélection de service. Dans un mode de réalisation particulièrement avantageux, la sélection de service est offerte par intégration dans l'adresse d'un équipement de service Sk du réseau des données de service qui représentent ce service (ou son type et/ou sous-type). Les adresses ainsi codées sont préférentiellement mémorisées dans les équipements de communication Tj, par exemple sous la forme d'une table de correspondance entre des données d'adresse, représentatives de l'adresse de l'équipement de service Sk offrant un service, et des données de service, représentatives du service offert. Lorsqu'un équipement de communication Tj souhaite accéder à un service désigné, on peut alors déterminer dans cet équipement Tj les données d'adresse qui représentent l'adresse de l'équipement de service Sk offrant le service désigné, afin d'établir une liaison avec ce dernier. De telles adresses codées sont préférentiellement diffusées via le réseau N, par exemple sous la forme de messages de service.
L'invention ne se limite pas aux modes de réalisation d'équipements de communication, d'équipement de service et de procédé de gestion 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.