Brevet FR2938992A1 — publié le 20100528

Procédé et dispositif de découverte de la topologie de niveau 3 d'un réseau internet IP d'entreprise L'invention se rapporte à un procédé de découverte de la topologie de niveau 3 selon la norme OSI d'un réseau d'entreprise de type IP et plus généralement d'un procédé de cartographie correspondant. L'architecture d'un réseau informatique d'entreprise de type IP, c'est-à-dire utilisant le protocole internet (IP), évolue à une vitesse telle que la documentation associée n'est pas mise à jour suffisamment rapidement pour fournir une image réelle de la topologie du réseau. A cette fin de nombreux outils informatiques ont été développés destinés à découvrir automatiquement et à afficher graphiquement la topologie du réseau. Les outils développés sont pour la plupart des outils de supervision du réseau qui n'offrent pas une vision adéquate du réseau soit parce qu'ils ne fournissent pas assez d'informations, par exemple en se bornant aux équipements réseau, soit à l'inverse parce que l'intervention de l'opérateur est nécessaire pour renseigner des informations complémentaires. C'est pourquoi des outils ont été proposés qui mettent en oeuvre des procédés de découverte d'informations de niveau 3, le niveau 3 étant défini dans la classification de la norme OSI (en anglais Open Systems Interconnexion). Les informations de niveau 3 concernent essentiellement les routeurs et les sous-réseaux, un sous-réseau étant défini par des machines informatiques du réseau IP interconnectées entre elles et qui peuvent communiquer entre elles sans avoir à passer par un routeur de niveau 3. De tels procédés de recherche ne se limitent pas aux sous-réseaux sous- jacents d'un même routeur mais peuvent également aller au-delà du routeur. Le document EP 1 211 843 Al décrit un procédé de découverte de la topologie d'un réseau IP de niveau 3 selon la norme OSI qui ne se limite pas aux sous-réseaux sous-jacents d'un même routeur mais qui permet d'aller au-delà du routeur. Le procédé décrit dans ce document comprend tout d'abord une première étape de découverte des différents sous-réseaux de l'ensemble du réseau et pour chacun d'entre eux de l'ensemble de leurs liens de connectivité immédiate avec les sous-réseaux et routeurs sous-jacents de niveau 3 les plus proches et ensuite une deuxième étape d'extraction de la topologie du réseau global. Le procédé de découverte décrit est certes un procédé de découverte exhaustive ayant une portée large des liens de connectivité des différents sous- réseaux avec leurs voisins mais il présente l'inconvénient d'être peu efficace et long à mettre en oeuvre dans le cas où plusieurs sous-réseaux se rebouclent entre eux au travers de routeurs. En effet, la recherche n'est pas orientée de prime abord sur la découverte de la topologie en elle-même, et autorise plusieurs fois de manière redondante la découverte d'un même sous-réseau à une étape différente du procédé. Le problème technique est d'améliorer l'efficacité de la découverte de la topologie IP de niveau 3 du réseau global dans le cas où plusieurs sous-réseaux sont rebouclés entre eux au travers de routeurs. A cet effet, l'invention a pour objet un procédé de découverte de la topologie IP de niveau 3 d'un réseau de type internet comprenant : un ensemble de routeurs IP de niveau 3 et un ensemble de sous-réseaux IP formant des noeuds interconnectés selon une topologie de graphe prédéterminée, et un terminal de découverte connecté à l'un des sous-réseaux de l'ensemble des réseaux appelé sous-réseau initial, le procédé comprenant les étapes consistant à partir du terminal de découverte à : déterminer le sous-réseau initial auquel est rattaché le terminal de découverte, affecter au sous-réseau initial la valeur zéro en tant que rang de sous-réseau, caractérisé en ce qu'il comporte les étapes consistant à : dans une boucle récursive de paramètre de parcours courant (Nbsauts), rechercher les sous-réseaux ayant un même rang de sous-réseau (Nbsauts) à partir de l'ensemble des sous-réseaux de rang immédiatement inférieur d'un nombre un à la valeur courante (Nbsauts), le rang d'un sous-réseau quelconque par rapport au terminal de découverte étant le nombre minimal de routeurs nécessaires pour accéder audit sous-réseau à partir du terminal de découverte, et affecter aux sous-réseaux déterminés ayant un même rang de sous-réseau (Nbsauts) la valeur courante du paramètre de parcours courant (Nbsaut) en tant que rang de sous-réseau. Suivant des modes particuliers de réalisation, le procédé de découverte comporte l'une ou plusieurs des caractéristiques suivantes : - l'étape de recherche de sous-réseaux de même rang Nbsaut comprend pour chaque sous-réseau de rang Nbsaut-1 balayé, une étape de détermination des routeurs connectés en tant qu'unités physiques audit sous-réseau de rang Nbsauts -1 indépendamment d'un routage virtuel mis en oeuvre dans un quelconque des routeurs ; - le procédé comprend pour chaque routeur déterminé les étapes consistant à : déterminer les interfaces physiques actives connectées, pour chaque interface, déterminer le sous-réseau associé et vérifier qu'il n'est pas un sous-réseau de rang inférieur ou égal au rang courant de sous-réseau moins un, et dans le cas où le sous-réseau associé est d'un rang supérieur l'enregistrer dans une mémoire des sous-réseaux à balayer au prochain cycle d'indice de rang de sous-réseau Nbsauts + 1 ; - le procédé comprend l'étape consistant à : enregistrer le sous-réseau associé déterminé dans une mémoire des sous-réseaux déjà balayés ; - lors de l'étape de l'enregistrement d'un sous-réseau associé déterminé dans la mémoire des sous-réseaux déjà balayés, l'adresse IP et le masque du sous-réseau sont enregistrés dans un même enregistrement ; - l'étape de détermination des routeurs comprend les étapes consistant à : récupérer la plage d'adresse du sous-réseau balayé, et pour chaque adresse IP contenue dans la plage récupérée, tester l'activité de l'adresse l'envoi d'un message de test, et enregistrer l'adresse active lorsqu'une machine active est détecté à cette adresse, et pour chaque adresse IP active enregistrée, envoyer une requête UDP sur le port de destination associé au service SNMP, et dans le cas où la réponse à cette requête indique que le port n'est pas fermé, envoyer une requête de type sysName, et après réception de la réponse, dans le cas où la variable sysName est renseignée et la machine renseignée n'est pas déjà connue dans la liste des enregistrements des routeurs, récupérer la liste des interfaces IP des équipements avec leur masque qui leurs sont associés, et dans le cas où deux sous-réseaux sont détectés, la machine est déterminée comme étant un routeur de niveau 3, enregistrer le routeur déterminé ; - l'étape de récupération de la liste des interfaces physiques comprend les étapes consistant à : interroger la table ipAddrTable et plus précisément le sous-ensemble ipAdEntNetMask dont l'OID est .1.3.6.1.2.1.4.20.1.3 avec une requête SNMP de type getBulkRequest disponible à partir de la version 2c de SNMP, rapatrier d'un seul paquet toutes les données du sous-ensemble ipAdEntNetMask ; et - lors de l'étape de l'enregistrement d'un routeur déterminé, l'adresse IP du routeur déterminé et les adresses des sous-réseaux connectés sont enregistrés dans un même enregistrement sous la forme d'une liste. L'invention a également pour objet un procédé de cartographie comprenant un procédé de découverte de topologie tel que défini ci-dessus et une étape d'affichage du réseau à partir des enregistrements des sous-réseaux et des routeurs, sous la forme de couches concentriques ou parallèles, chaque couche regroupant les sous-réseaux enregistrés de même rang Nbsauts étant distante du sous-réseau initial de rang 0 de manière proportionnelle au rang de sous-réseau, et délimités par des zones frontière formés par les routeurs de même rang de routeur. L'invention a également pour objet un système de mise en oeuvre du procédé de découverte de la topologie IP de niveau 3 d'un réseau de type Internet comprenant : un ensemble de routeurs IP de niveau 3 et un ensemble de sous-réseaux IP formant des noeuds interconnectés selon une topologie de graphe prédéterminée, et un terminal de découverte connecté à l'un des sous-réseaux de l'ensemble des réseaux appelé sous-réseau initial, le terminal de découverte étant apte à déterminer le sous-réseau initial auquel est rattaché le terminal de découverte et à affecter au sous-réseau initial la valeur zéro en tant que rang de sous-réseau, caractérisé en ce que le terminal de découverte comprend ; des moyens pour rechercher selon une boucle récursive de paramètre de parcours courant (Nbsauts) les sous-réseaux ayant un même rang de sous-réseau (Nbsauts) à partir de l'ensemble des sous-réseaux de rang immédiatement inférieur d'un nombre un à la valeur courante (Nbsauts), le rang d'un sous-réseau quelconque par rapport au terminal de découverte étant le nombre minimal de routeurs nécessaires pour accéder audit sous-réseau à partir du terminal de découverte, et pour affecter aux sous-réseaux déterminés ayant un même rang de sous-réseau (Nbsauts) la valeur courante du paramètre de parcours courant (Nbsaut) en tant que rang de sous-réseau. Suivant des modes particuliers de réalisation, le système comporte l'une ou plusieurs des caractéristiques suivantes : - les moyens pour rechercher les sous-réseaux de même rang Nbsaut sont aptes à déterminer des routeurs connectés en tant qu'unités physiques audit sous-réseau de rang Nbsauts -1 indépendamment d'un routage virtuel mis en oeuvre dans un quelconque des routeurs ; et - les moyens pour rechercher les sous-réseaux de même rang Nbsaut sont aptes pour chaque routeur déterminé à déterminer les interfaces physiques actives connectées, et pour chaque interface à déterminer le sous-réseau associé et à vérifier qu'il n'est pas un sous-réseau de rang inférieur ou égal au rang courant de sous-réseau moins un, et dans le cas où le sous-réseau associé est d'un rang supérieur à l'enregistrer dans une mémoire des sous-réseaux à balayer au prochain cycle d'indice de rang de sous-réseau Nbsauts + 1. L'invention a également pour objet un support d'enregistrement d'un programme d'enregistrement d'instructions aptes à être exécutées par un ordinateur mettant en oeuvre un procédé tel que défini ci-dessus. L'invention sera mieux comprise à la lecture de la description d'une unique forme de réalisation qui va suivre, donnée uniquement à titre d'exemple et faite en se référant aux dessins sur lesquels : - la Figure 1 est une vue d'une architecture générale de niveau 3 d'un réseau de type Internet, - la Figure 2 est un ordinogramme d'un procédé de découverte de la topologie IP de niveau d'un réseau de type décrit à la figure 1, - la Figure 3 est un ordinogramme détaillé d'une étape particulière de l'ordinogramme décrit à la figure 2. Suivant la figure 1, un réseau 2 d'entreprise de type internet c'est-à-dire mettant en oeuvre les protocoles IP (Internet Protocol), encore appelé Intranet est représenté au niveau 3, le niveau 3 étant défini selon la classification OSI (Open System Interconnexions). Le réseau 2 comprend un ensemble de sous-réseaux logiques interconnectés entre eux au travers de routeurs selon une topologie de graphe prédéterminée mais inconnue. Ainsi, les composants de niveau 2 selon le modèle OSI tels que des commutateurs d'accès ne sont pas considérés dans le procédé de découverte de niveau 3. En outre, si des contextes virtuels sont mis en oeuvre sur un même routeur considéré en tant qu'entité physique, ils sont ici représentés comme des routeurs indépendants. Le réseau 2 comprend un terminal de découverte 3 avec un ordinateur 4 ayant des moyens de détermination de sous-réseaux 5. Le terminal de découverte 3 est connecté à un sous-réseau quelconque 6 du réseau dénommé sous-réseau initial. En plus du terminal de découverte 3 un premier et deuxième routeurs 8 et 10 sont connectés au sous-réseau initial 6. L'ensemble 12 formé par le sous-réseau initial 6 est défini comme l'ensemble des sous-réseaux ayant un rang de sous-réseau nul. Le premier routeur 8 et le deuxième routeur 10 sont qualifiés de routeur ayant un rang de routeur égal à 1. L'ensemble 12 de sous-réseaux est formé par les sous-réseaux qui sont connectés aux premier et deuxième routeurs 8, 10, de rang de routeur égal à 1, excepté le sous-réseau initial 6 de rang de sous-réseau égal à zéro. Ici, l'ensemble 12 appelé ensemble de sous-réseaux de rang de sous- réseaux égal à 1 est formé des sous-réseaux 16, 18, 20 connectés au premier routeur 8 et des sous-réseaux 22, 24 connectés au deuxième routeur 10. Les routeurs de rang 2 sont les routeurs connectés aux sous-réseaux de rang de sous-réseaux égal à 1 qui ne sont pas des routeurs de rang de routeur égal à 1. Ici, les routeurs de rang de routeur égal à 2 sont des routeurs 24, 26, 28, 30 connectés respectivement aux sous-réseaux 18, 20, 20 et 22, 22. Il est à noter que sur la figure 1, les sous-réseaux interconnectés à au moins deux routeurs sont représentés chacun par un motif ayant un intérieur grisé tandis que sous-réseaux connectés à un seul routeur sont représentés chacun par un motif ayant un intérieur blanc. L'ensemble 32 de sous-réseaux est formé par les sous-réseaux connectés aux routeurs de rang de routeur égal à 2 excepté les sous-réseaux de rang de sous-réseau égal à 1. Ici, l'ensemble 32 appelé ensemble des sous-réseaux de rang de sous- réseau égal à 2 est formé par des sous-réseaux 34, 36, 38, 40, 42, 44 connectés respectivement aux routeurs de rang de routeur égal à 2, 24, 24, 26, 28, 28, 30. Les routeurs de rang de routeur égal à 3 sont les routeurs connectés aux sous-réseaux de rang de sous-réseau égal à 2 qui ne sont pas des routeurs de rang de routeur égal à 2. Ici, les routeurs de rang de routeur égal à 3 sont des routeurs 46, 48, 50 connectés respectivement aux sous-réseaux 34, 38, 42. L'ensemble 52 de sous-réseaux est formé par les sous-réseaux qui sont connectés aux routeurs de rang de routeur égal à 3 excepté les sous-réseaux de rang de sous-réseau égal à 2. Ici, l'ensemble 52 appelé ensemble des sous-réseaux de rang de sous-réseau égal à 3 est formé par des sous-réseaux 54, 56, 58, 60 connectés aux routeurs de rang de routeur égal à 3 respectivement les routeurs 46, 48, 48, 50. Ainsi, une description ordonnée de la topologie au niveau 3 du réseau 2 est effectuée par l'ordinateur 4 du terminal de découverte 3 dans laquelle les routeurs et les sous-réseaux sont ordonnés en fonction respectivement de leur rang de routeur et de leur rang de sous-réseau qui leur ont été affectés par l'ordinateur 4. De manière générale, le rang de sous-réseau affecté par l'ordinateur 4 et représenté par la variable dénommée Nbsauts, pour un sous-réseau donné par rapport au terminal de découverte 3 est le nombre minimal de routeurs nécessaires pour accéder audit sous-réseau à partir du terminal de découverte 3. De manière générale, le rang de routeur d'un routeur affecté par l'ordinateur 4 à un routeur est égal au rang minimal du ou des sous-réseaux qui lui sont connectés augmenté du nombre 1. Il est à noter que dans la topologie du réseau 2 donnée à titre d'exemple dans la figure 1, le sous-réseau 22 est connecté à la fois aux deux routeurs 28 et 30 de rang 2, et au routeur 10 de rang 1. Il est à remarquer également qu'une boucle de sous-réseaux existe. Elle est définie par la chaîne des connexions reliant le sous-réseau initial 6 au routeur 10, le routeur 10 au sous-réseau 22, le sous-réseau 22 au routeur 28, le routeur 28 au sous-réseau 20, le sous-réseau 20 au routeur 8, et le routeur 8 au sous- réseau initial 6. Suivant la figure 2, un ordinogramme 100 du procédé de découverte comprend un ensemble d'étapes parcourues selon un algorithme de type récursif au cours desquelles le réseau est sondé par rang de sous-réseau croissant, c'est à dire en incrémentant le paramètre Nbsauts. La découverte de la topologie du réseau IP est mise en oeuvre à partir d'un point donné dans le réseau, plus précisément ici le terminal de découverte 3 par l'échange de messages de requête et réponse appartenant aux protocoles Internet. Tout d'abord, lorsque Nbsaut est égal à zéro, le sous-réseau de rang de sous-réseau égal à zéro sur lequel se trouve le terminal de recherche 3 est déterminé ainsi que les routeurs de rang de routeur égal à 1. Le terminal de découverte 3 implémentant l'algorithme à la recherche des routeurs de rang de routeur égal à 1 effectue cette recherche. Une fois le où les routeurs détectés, l'ordinateur 4 essaie de trouver à quels autres sous-réseaux ceux-ci sont connectés, l'ordinateur 4 les mémorise et enfin on balaye le sous-réseau courant afin de récolter les informations sur les machines qui y sont connectés. Puis, la recherche de routeurs sur les sous- réseaux mémorisés peut reprendre ainsi de suite de manière successive. Le procédé de découverte avance ainsi de manière itérative au saut par saut en incrémentant la variable Nbsauts jusqu'à atteindre la limite de saut fixé en début de procédé ou jusqu'à atteindre les limites du réseau ou des routeurs ne délivrant pas d'informations sur leurs interconnexions externes. Plus précisément, dans une première étape 102 d'initialisation, une première pile 104 de travail des sous-réseaux courants à balayer correspondant au rang de la valeur courante de la variable Nbsaut, ainsi qu'une pile 106 de préparation des sous-réseaux à balayer au prochain saut sont vidées c'est-à-dire mise dans un état de référence correspondant au vide. De plus, une mémoire 108 de stockage des sous-réseaux et de routeurs déjà balayés est également initialisée par une mise à un état de référence correspondant au vide. La variable courante de rang de sous-réseaux, dénommée Nbsauts est mise à zéro et un nombre maximal de rang de sous-réseaux à découvrir est fixé également au cours de l'étape 102 par une saisie de l'opérateur. Dans une étape suivante 110, le sous-réseau initial 6 est déterminé. Puis dans une étape 112, le sous-réseau initial 6 déterminé est empilé dans la pile de travail 104. Dans une étape 114 de branchement d'une première boucle, une boucle de découverte récursive, paramétrée par la valeur du nombre de sauts, Nbsauts, est amorcée par la valeur initiale de Nbsaut égale à zéro. Dans une étape 116 consécutive à l'étape de branchement 112, la valeur courante du paramètre Nbsauts est comparée à la valeur du nombre de sauts maximal prédéterminée et fixée lors de l'étape d'initialisation 102. Lorsque le nombre de sauts maximal est dépassé, alors le procédé est terminé dans l'étape d'arrêt 120. A l'inverse, lorsque le nombre de sauts courant Nbsauts est inférieur ou égal au nombre de sauts maximal, alors un ensemble d'étapes de balayage des sous-réseaux courants correspondant à un rang de sous-réseau égal à Nbsauts est mis en oeuvre. Dans une étape 122, la pile de travail 104 est consultée. Dans le cas où la pile 104 n'est pas vide, dans une étape 124 la pile 104 est dépilée d'une unité de sous-réseau pour amorcer le parcours d'une deuxième boucle. Dans une étape 126, les routeurs connectés au sous-réseau dépilé en 124 et en cours d'analyse sont déterminés. Dans une étape 128 de branchement d'une troisième boucle de parcours des routeurs déterminés à l'étape 126, chaque routeur courant associé à un pointeur de parcours de la troisième boucle est examiné. Dans une étape suivante 130, les interfaces du routeur courant balayé en cours d'examen et correspondant au pointeur courant de la troisième boucle sont déterminées. Dans une étape suivante de branchement 132 d'une quatrième boucle de parcours des interfaces déterminés à l'étape 128, chaque interface balayée associée à un pointeur de parcours de la quatrième boucle est examiné. Dans une étape 134 suivante, pour l'interface balayée en cours d'examen le sous-réseau associé est déterminé s'il en existe un. S'il n'en n'existe pas le pointeur de la quatrième boucle est incrémenté et le procédé saute à l'étape de branchement 132. S'il existe un sous-réseau associé, dans une étape suivante 136, il est examiné si le réseau a déjà été balayé et examiné en allant lire la mémoire 108 de stockage des sous-réseaux déjà balayés. Si le sous-réseau a déjà été balayé et examiné en se trouvant enregistré dans la mémoire 108, alors le pointeur de la quatrième boucle est incrémenté et on examine l'interface suivante en sautant à l'étape 132. Si le sous-réseau n'a pas déjà été balayé, dans une étape 138 consécutive à 136, il est vérifié si le sous-réseau se trouve dans la pile de travail 104. Si le sous-réseau est enregistré dans la pile de travail 104, alors le pointeur d'interface de la quatrième boucle est incrémenté et on examine l'interface suivante en sautant à l'étape 132. Si le sous-réseau n'est pas enregistré dans la pile de travail 104, alors dans une étape 140 le sous-réseau associé est empilé dans la pile 106 de sous-réseau à balayer au prochain saut. Dans une étape 142, on examine si toutes les interfaces du routeur déterminé courant ont été balayées et si tel n'est pas le cas, le procédé saute à l'étape 132. Lorsqu'il est déterminé dans l'étape 142 que toutes les interfaces ont été examinées, il est déterminé dans l'étape 144, si tous les routeurs déterminés à l'étape 126 ont été examinés. S'il existe encore au moins un routeur à examiner, alors le procédé saute à l'étape 128. Si tous les routeurs ont été examinés, le sous-réseau courant dépilé à l'étape 124 est analysé dans l'étape 146 et les informations associées à ce sous-réseau courant sont ajoutées dans le fichier de stockage 108 des sous-réseaux déjà balayés. Parmi les informations associées à ce sous-réseau figure le rang de sous-réseau auquel lui a été affectée la valeur courante de Nbsauts par l'ordinateur 4. Ensuite, le procédé saute à l'étape 122, et dans le cas où la pile de travail 104 n'est pas vide on recommence l'ensemble des étapes 124, 126, 128, 130, 132, 136, 138, 140, 142, 144, 146. Dans le cas où la pile 104 est vide, dans une étape 148, le contenu de la pile de préparation 106 des sous-réseaux est transféré dans la pile de travail 104, la pile de préparation 106 étant alors dans un état de référence vide. Dans une étape suivante 150, il est vérifié si le contenu de la pile de travail 104 est vide. Si la pile de travail 104 est vide, alors le procédé de découverte est terminé dans l'étape d'arrêt 120. Sinon, le paramètre parcours de la première boucle, Nbsauts, est incrémenté d'une unité dans l'étape 152 et la première boucle de découverte est à nouveau mis en oeuvre en progressant à l'étape 116 puis à l'étape 122 si la portée maximale de la découverte fixé par le nombre maximal admissible de sauts le permet. Ainsi, chaque sous-réseau est analysé une seule fois et la mémoire 108 de stockage des sous-réseaux déjà balayés contient de manière ordonnée la topologie du réseau selon un ordre régi par le paramètre du nombre de sauts. Un affichage graphique de la topologie du réseau de niveau 3 est effectué directement à partir des données structurées contenues dans la mémoire de stockage. En variante, l'affichage graphique est effectué au fur et à mesure de la découverte des entités du réseau, l'éloignement des entités découvertes par rapport au terminal de recherche étant fonction du paramètre Nbsauts. Dans la figure 3, l'étape 126 est décrite de manière détaillée en un ensemble d'étapes. Dans une première étape 200, la plage des adresses IP du sous-réseau en cours d'examen est récupérée. A partir de l'adresse IP du sous-réseau et de son masque fournis à l'étape 124, les adresses IP de la borne minimale et maximale des machines que contient ce sous-réseau sont déterminées. Par exemple, si l'adresse IP du sous-réseau est égale à 192.168.30.0 et le masque est égal à 255.255.255.0, alors la plage est définie par la borne minimale égale à 192.168.30.0 et la borne maximale 192.168.30.255. De ce fait, les adresses disponibles de cette plage sont 192.168.30.1, 192.168.30.2, ..., 192.168. 30.254. Dans une étape de branchement 202, une cinquième boucle est parcourue pour chaque adresse IP de cette plage sauf celle qui a déjà été enregistrée du routeur déjà découvert. Ainsi, un routeur déjà répertorié n'est pas à nouveau balayé et examiné. Dans une étape suivante 204, pour chaque adresse IP 204, l'équipement associé à cette adresse est testé pour savoir s'il est actif ou non. Pour cela, l'ordinateur 4 envoie une commande ICMP Echo Request (ICMP désignant en anglais Internet Control Message Protocol) à la machine sondée identifiée par son adresse IP qui est censée répondre par un ICMP Echo Reply. Au cas où la machine sondée ne répond pas, une autre méthode est utilisée qui consiste à utiliser le protocole TCP de manière détournée par rapport à sa finalité originellement prévue, la présence d'une machine étant détectée même si elle ne répond pas à l'ICMP Echo Request. Pour cela, le principe est d'envoyer un paquet de type TCP ACK sur le port 80 par exemple, le paquet servant habituellement à transférer des données et TCP désignant en anglais Transmission Control Protocol (protocole faisant partie du coeur des protocoles internet). Comme la machine sondée distante n'a pas au préalable établi de connexion et ne comprend pas pourquoi elle reçoit ce message, elle répond par un message RST (abréviation de Reset) qui indique sa présence. Ce test est aussi valable pour un paquet TCP SYN qui demande à la machine distante l'établissement de connexions. Si le port de la machine distante sur lequel est envoyé le paquet, est fermé alors celle-ci répondra par un paquet de type RST, dans le cas contraire elle entamera la seconde étape de l'établissement de la connexion par l'envoi d'un paquet SYN/ACK, deux cas de figures qui dévoileront la présence de la machine ciblée. Dans une étape suivante 206, l'ordinateur 4 teste si la machine a répondu dévoilant ainsi sa présence sur le sous-réseau. Si elle ne l'a pas fait, le procédé reboucle à l'étape 202. Si elle a émis une réponse, le procédé va alors à une étape 208 suivante. Dans l'étape 208, l'adresse I P active est mémorisée. Puis dans une étape 210, on teste si toutes les adresses IP de la plage de la boucle ont été parcourues. Si à l'étape 210 toutes les adresses IP de la plage parcourue ont été testées, on sort de la cinquième boucle pour poursuivre à une étape 212. Dans l'étape de branchement 212, une sixième boucle est parcourue par un pointeur décrivant toutes les adresses IP trouvées comme étant actives. Dans une étape 214 pour chaque adresse IP active courante, l'ordinateur 4 envoie un paquet UDP (abréviation en anglais de User Datagram Protocol) à destination du port 161 associé au service SNMP (Simple Network Management Protocol). Le paquet ne contient pas de données mais juste les paramètres adéquats pour vérifier si le destinataire possède sur ce port un service soit ouvert, soit fermé ou filtré. Dans une étape 216 suivante, l'état du port est testé. S'il est fermé, il n'y a pas d'accès possible au protocole SNMP et on va alors à l'étape 150. Sinon on continue à une étape 218 consécutive. A l'étape 218 une requête de type get-request est envoyée sur la variable SysName de MIB-II (RFC 1213 de la machine), permettant de relever le nom de la machine. Dans une étape 220, si la variable SysName est renseignée, une étape 222 est mise en oeuvre. Sinon, on retourne à l'étape 212 de branchement de la sixième boucle, le pointeur étant sur l'adresse IP active suivante. Dans l'étape 222, si ce nom est déjà connu parmi les routeurs déjà découverts, on retourne à l'étape 212 de branchement de la sixième boucle, le pointeur étant sur l'adresse IP active suivante. Sinon on continue à une étape suivante 224. Dans l'étape 224, la table ipAddrTable et plus précisément le sous-ensemble ipAdEntNetMask (dont l'OID (abréviation anglaise de Object Identifier) est .1.3.6.1.2.1.4.20.1.3) avec une requête SNMP de type GetBbulkRequest disponible à partir de la version 2C de SNMP et qui permet de rapatrier d'un seul paquet toutes les données du sous-ensemble. IpAdEntNetMask renseigne pour chaque interface IP le masque qui lui est associé. L'adresse IP de l'interface est retrouvée grâce à l'OID du champ : OID Valeur ipAdEntNetMask Adresse I P Masque I P .1.3.6.1.2.1.4.20.1.3 .192.168.40.1 255.255.255.0 Tableau I Dans une étape 226, on teste si la machine est reliée à deux sous-réseaux ou plus précisément si elle possède deux adresses I P actives c'est-à-dire n'appartenant pas au même sous-réseau auquel cas on peut considérer qu'il fonctionne au minimum au niveau 3 du modèle OSI. Une machine gérable par SNMP et qui possède plus d'une interface IP de sous-réseau différents est alors considéré comme un routeur. Finalement, avec l'adresse IP et le masque trouvés dans la table ipAdEntNetMask, un sous-réseau est déterminé. L'avantage d'identifier un sous-réseau par la table ipAdEntNetMask réside dans le fait que cette méthode permet de trouver les cas où un même routeur possède deux adresses IP ou plus appartenant au même sous-réseau. Cette configuration apparaît dans le cas où l'un des protocoles HSRP (Hot Standby Router Protocol) ou VRRP (Virtual Router Redundancy Protocol, décrit dans la RFC 3768) sont implémentés et font apparaître dans la table deux adresses IP de passerelles dont une virtuelle. La table ipAdEntNetMask permet donc de lister des sous-réseaux auxquels le routeur est relié. Les interrogations sur les objets MIB du type Table sont des requêtes du type GetRequest disponibles à partir de la version 2C de SNMP. Elles permettent de rapatrier toutes les valeurs de la table en un paquet et non pas par incrémentation comme dans la version 1 où il faut envoyer une requête GetNext pour parcourir chacune des valeurs de la table. Dans le cas où c'est une valeur unique qui est demandée, alors on utilise une requête du type get-request, les requêtes getBulkRequest et get-request engendrant une réponse du type get-response. Dans une étape 228 si le test effectué à l'étape 226 résulte en une détection de routeurs, le routeur est enregistré dans la mémoire 106 de stockage des sous-réseaux à balayer au prochain saut. Le routeur est enregistré avec son rang de routeur auquel la valeur courante Nbsauts lui a été préalablement affectée par l'ordinateur 4. La sixième boucle est poursuivie jusqu'à à l'étape 230 où il est testé si des adresses IP encore actives n'ont pas été encore examinés. Si c'est le cas, le procédé est poursuivi à l'étape 212 de branchement. Dans le cas contraire, l'étape 126 est terminée et le procédé de découverte continue alors à l'étape 128. Le procédé de découverte décrit à la figure 2 parcourt les routeurs et les sous-réseaux en les structurant en fonction du nombre minimal de saut pour aller d'un sous-réseau au terminal de découverte, ce qui évite de parcourir plusieurs fois un même sous-réseau dans le cas où il existe une boucle de sous-réseau telle que celle décrite par les sous-réseaux 6, 20, 22. En outre, identifier un sous-réseau par la table ipAdEntNetMask rend possible de trouver toutes les interfaces d'un routeur, indépendamment de tout cloisonnement virtuel de type VRF (Virtual Routing and Forwarding) implémenté sur ce routeur. REVENDICATIONS1.- Procédé de découverte de la topologie IP de niveau 3 d'un réseau (2) de type internet comprenant : un ensemble de routeurs IP (8, 10, 24, 26, 28, 30, 46, 48, 50) de niveau 3 et un ensemble de sous-réseaux IP (6, 18, 20, 22, 24, 34, 36, 38, 40, 42, 44) formant des noeuds interconnectés selon une topologie de graphe prédéterminée, et un terminal de découverte (3) connecté à l'un des sous-réseaux de l'ensemble des réseaux appelé sous-réseau initial (6), le procédé comprenant les étapes consistant à partir du terminal de découverte (3) à : déterminer (110) le sous-réseau initial (6) auquel est rattaché le terminal de découverte (3), affecter au sous-réseau initial (6) la valeur zéro en tant que rang de sous- réseau, caractérisé en ce qu'il comporte les étapes consistant à : dans une boucle récursive de paramètre de parcours courant (Nbsauts), rechercher les sous-réseaux (34, 36, 38, 40, 42, 44) ayant un même rang de sous-réseau (Nbsauts) à partir de l'ensemble des sous-réseaux (18, 20, 22) de rang immédiatement inférieur d'un nombre un à la valeur courante (Nbsauts), le rang d'un sous-réseau quelconque par rapport au terminal de découverte (3) étant le nombre minimal de routeurs nécessaires pour accéder audit sous-réseau à partir du terminal de découverte (3), et affecter aux sous-réseaux (34, 36, 38, 40, 42, 44) déterminés ayant un même rang de sous-réseau (Nbsauts) la valeur courante du paramètre de parcours courant (Nbsaut) en tant que rang de sous-réseau. 2. Procédé de découverte selon la revendication 1, caractérisé en ce que l'étape de recherche de sous-réseaux de même rang Nbsaut comprend pour chaque sous-réseau de rang Nbsaut-1 balayé, une étape de détermination (126) des routeurs connectés en tant qu'unités physiques audit sous-réseau de rang Nbsauts -1 indépendamment d'un routage virtuel mis en oeuvre dans un quelconque des routeurs. 3. Procédé de découverte selon la revendication 2, caractérisé en ce que le procédé comprend pour chaque routeur déterminé les étapes consistant à : déterminer (130) les interfaces physiques actives connectées, pour chaque interface, déterminer (134) le sous-réseau associé et vérifier qu'il n'est pas un sous-réseau de rang inférieur ou égal au rang courant de sous-réseau moins un, et dans le cas où le sous-réseau associé est d'un rang supérieur l'enregistrer dans une mémoire (106) des sous-réseaux à balayer au prochain cycle d'indice de rang de sous-réseau Nbsauts + 1. 4. Procédé de découverte selon la revendication 3, caractérisé en ce qu'il comprend l'étape consistant à : Enregistrer (146) le sous-réseau associé déterminé dans une mémoire (108) des sous-réseaux déjà balayés. 5. Procédé de découverte selon la revendication 4, caractérisé en ce que lors de l'étape de l'enregistrement (146) d'un sous-réseau associé déterminé dans la mémoire (108) des sous-réseaux déjà balayés, l'adresse IP et le masque du sous-réseau sont enregistrés dans un même enregistrement. 6. Procédé de découverte selon la revendication 2, caractérisé en ce que l'étape de détermination (126) des routeurs comprend les étapes consistant à : récupérer (200) la plage d'adresse du sous-réseau balayé, et pour chaque adresse IP contenue dans la plage récupérée, tester l'activité de l'adresse (206) par l'envoi (204) d'un message de test, et enregistrer (208) l'adresse active lorsqu'une machine active est détecté à cette adresse, et pour chaque adresse IP active enregistrée, envoyer (214) une requête UDP sur le port de destination (161) associé au service SNMP, et dans le cas où la réponse à cette requête indique que le port n'est pas fermé, envoyer (218) une requête SNMP de type sysName, et après réception de la réponse, dans le cas où une variable sysName est renseignée et la machine renseignée n'est pas déjà connue dans une liste des enregistrements des routeurs, récupérer (224) une liste des interfaces IP des équipements avec leur masque qui leurs sont associés, et dans le cas où deux sous-réseaux sont détectés, la machine est déterminée (226) comme étant un routeur de niveau 3,enregistrer (228) le routeur déterminé. 7. Procédé de découverte de topologie selon la revendication 6, caractérisé en ce que l'étape (224) de récupération de la liste des interfaces physiques comprend les étapes consistant à : interroger une table ipAddrTable et plus précisément un sous-ensemble ipAdEntNetMask dont l'OID est .1.3.6.1.2.1.4.20.1.3 avec une requête SNMP de type getBulkRequest disponible à partir de la version 2c de SNMP, rapatrier d'un seul paquet toutes les données du sous-ensemble ipAdEntNetMask. 8. Procédé de découverte de topologie selon la revendication 6, caractérisé en ce que lors de l'étape (228) de l'enregistrement d'un routeur déterminé, l'adresse IP du routeur déterminé et les adresses des sous-réseaux connectés sont enregistrés dans un même enregistrement sous la forme d'une liste. 9. Procédé de cartographie comprenant un procédé de découverte de topologie défini selon une des revendications 1 à 8 et une étape d'affichage du réseau à partir des enregistrements des sous-réseaux et des routeurs, sous la forme de couches concentriques ou parallèles, chaque couche regroupant les sous-réseaux enregistrés de même rang Nbsauts étant distante du sous-réseau initial de rang 0 de manière proportionnelle au rang de sous-réseau, et délimités par des zones frontière formés par les routeurs de même rang de routeur. 10. Système de découverte de la topologie IP de niveau 3 d'un réseau de type Internet comprenant : un ensemble de routeurs IP de niveau 3 et un ensemble de sous-réseaux IP formant des noeuds interconnectés selon une topologie de graphe prédéterminée, et un terminal de découverte (3) connecté à l'un des sous-réseaux de l'ensemble des réseaux appelé sous-réseau initial (6), le terminal de découverte (3) étant apte à déterminer le sous-réseau initial (6) auquel est rattaché le terminal de découverte (3) et à affecter au sous-réseau initial (6) la valeur zéro en tant que rang de sous-réseau, caractérisé en ce que le terminal de découverte (3) comprend ;des moyens (5) pour rechercher selon une boucle récursive de paramètre de parcours courant (Nbsauts) les sous-réseaux (34, 36, 38, 40, 42, 44) ayant un même rang de sous-réseau (Nbsauts) à partir de l'ensemble des sous-réseaux (18, 20, 22) de rang immédiatement inférieur d'un nombre un à la valeur courante (Nbsauts), le rang d'un sous-réseau quelconque par rapport au terminal de découverte (3) étant le nombre minimal de routeurs nécessaires pour accéder audit sous-réseau à partir du terminal de découverte (3), et pour affecter aux sous-réseaux (34, 36, 38, 40, 42, 44) déterminés ayant un même rang de sous-réseau (Nbsauts) la valeur courante du paramètre de parcours courant (Nbsaut) en tant que rang de sous-réseau. 11. Système de découverte selon la revendication 10, caractérisé en ce que les moyens (5) pour rechercher les sous-réseaux de même rang Nbsaut sont aptes à déterminer des routeurs connectés en tant qu'unités physiques audit sous-réseau de rang Nbsauts -1 indépendamment d'un routage virtuel mis en oeuvre dans un quelconque des routeurs. 12. Système de découverte selon la revendication 11, caractérisé en ce que les moyens pour rechercher les sous-réseaux de même rang Nbsaut sont aptes pour chaque routeur déterminé à déterminer les interfaces physiques actives connectées, et pour chaque interface à déterminer le sous-réseau associé et à vérifier qu'il n'est pas un sous-réseau de rang inférieur ou égal au rang courant de sous-réseau moins un, et dans le cas où le sous-réseau associé est d'un rang supérieur à l'enregistrer dans une mémoire (106) des sous-réseaux à balayer au prochain cycle d'indice de rang de sous-réseau Nbsauts + 1. 13. Support d'enregistrement d'instructions aptes à être exécutées par un ordinateur (4) mettant en oeuvre un procédé défini selon l'une des revendications 1 à 9.