FR2911457A1 - Event e.g. failure, determining method for e.g. Internet network, involves calculating intersection of regrouped paths for trees, and estimating localization of event estimated according to calculated intersection - Google Patents

Event e.g. failure, determining method for e.g. Internet network, involves calculating intersection of regrouped paths for trees, and estimating localization of event estimated according to calculated intersection Download PDF

Info

Publication number
FR2911457A1
FR2911457A1 FR0700236A FR0700236A FR2911457A1 FR 2911457 A1 FR2911457 A1 FR 2911457A1 FR 0700236 A FR0700236 A FR 0700236A FR 0700236 A FR0700236 A FR 0700236A FR 2911457 A1 FR2911457 A1 FR 2911457A1
Authority
FR
France
Prior art keywords
path
event
routing
network
paths
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
FR0700236A
Other languages
French (fr)
Inventor
Anthony Lambert
Mickael Meulle
Jean Luc Lutton
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Priority to FR0700236A priority Critical patent/FR2911457A1/en
Publication of FR2911457A1 publication Critical patent/FR2911457A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The method involves associating a primary path to each path module e.g. border gateway protocol (BGP) router (r1), for each network accessible by the module. Unavailable primary paths are determined in a message sent by the module, where the path is unavailable when the path indicated as retained by the module to reach an indicated network is different from the path associated to the module. The determined paths are regrouped in trees. The intersection of regrouped paths is calculated for the trees. The localization of an event is estimated according to the calculated intersection. Independent claims are also included for the following: (1) a computer program comprising a set of instructions to perform a method for determining an event (2) a device for determining an event comprising a determining unit.

Description

PROCEDE, PROGRAMME D'ORDINATEUR ET DISPOSITIF DE DETERMINATIONMETHOD, COMPUTER PROGRAM, AND DETERMINING DEVICE

D'EVENEMENTS AU SEIN D'UN RESEAU GLOBAL La présente invention concerne le domaine des réseaux de réseaux de communication, typiquement le domaine du réseau de réseaux Internet. Les différents réseaux qui composent Internet sont regroupés au sein d'entités appelées systèmes autonomes (AS). Les AS administrent les différents réseaux et routeurs sous heur responsabilité de manière autonome. Toutefois, afin que les réseaux de différents AS puissent communiquer ensemble, il est nécessaire que les AS s'interconnectent et s'échangent des informations sur les moyens de joindre les réseaux qu'ils hébergent. Une fonctionnalité de routage doit ainsi être mise en place entre les systèmes autonomes. De nos jours, cette fonctionnalité est assurée par le protocole BGP (Border Gateway Protocol). Les différents AS qui composent Internet sont donc interconnectés les uns aux autres au moyen de routeurs spécialisés, qui implémentent le protocole BGP. Deux routeurs BGP communiquent par échange de messages. Chaque message contient l'adresse d'un ou plusieurs réseaux ainsi qu'une séquence de numéros qui identifient les AS à traverser successivement pour joindre ce ou ces réseaux. Un routeur BGP ayant reçu plusieurs messages indiquant des chemins vers un réseau donné, compare ces différents chemins et sélectionne celui qu'il considère le meilleur. Cette sélection se base sur de nombreux critères, notamment sur des critères économiques relatifs à des accords d'interconnexion établis entre un AS et les AS voisins. Un routeur BGP recevant un message indiquant que son meilleur chemin vers un réseau est indisponible ou annonçant un nouveau chemin, meilleur que le précédent, sélectionne un nouveau meilleur chemin vers ce réseau et envoie un message cle mise à jour aux routeurs BGP voisins. Par conséquent, tout événement affectant la structure d'interconnexion des AS (panne sur un lien entre deux routeurs BGP voisins, panne d'un routeur E3GP, modification d'accord d'interconnexion entre AS, panne d'un ou plusieurs réseaux d'un AS, etc.) a pour conséquence l'envoi de nombreux messages de mises à jour à travers le réseau Internet.  The present invention relates to the field of networks of communication networks, typically the domain of the network of Internet networks. The different networks that make up the Internet are grouped together in entities called autonomous systems (AS). The AS administrate the different networks and routers under autonomous responsibility. However, in order for networks of different ASs to communicate together, it is necessary for ASs to interconnect and exchange information on how to reach the networks they host. A routing functionality must be set up between the autonomous systems. Today, this functionality is provided by the Border Gateway Protocol (BGP). The different ASs that make up the Internet are therefore interconnected to one another by means of specialized routers, which implement the BGP protocol. Two BGP routers communicate by message exchange. Each message contains the address of one or more networks and a sequence of numbers that identify the AS to cross successively to join this or these networks. A BGP router having received several messages indicating paths to a given network, compares these different paths and selects the one it considers the best. This selection is based on numerous criteria, in particular on economic criteria relating to interconnection agreements established between an AS and the neighboring ASs. A BGP router receiving a message indicating that its best path to a network is unavailable or announcing a new path, better than the previous one, selects a new, better path to that network and sends an update message to the neighboring BGP routers. Consequently, any event affecting the interconnection structure of the ASs (failure on a link between two neighboring BGP routers, failure of an E3GP router, modification of interconnection agreement between AS, failure of one or more networks of an AS, etc.) results in numerous update messages being sent over the Internet.

La figure 1 représente les systèmes autonomes AS1, AS2, AS3, AS4, ASn et des routeurs BGP RI, R2, R3 et R4. A titre d'illustration de l'échange de messages entre routeurs BGP de systèmes autonomes, considérons que le routeur BGP R1 du système autonome AS1 sélectionne un nouveau chemin Chv à destination d'un réseau \/ d'un système autonome ASn. Ce chemin Chv comprend une liste ordonnée d'identifiants des systèmes autonomes à traverser pour atteindre le réseau V. [)ans le cas présent, ce chemin débute par l'identifiant k du système autonome ASk voisin du système autonome AS1, comporte ensuite les identifiants des systèmes autonomes à traverser pour atteindre le système autonome ASn depuis le système autonome ASk et se termine par l'identifiant n du système autonome ASn. Dans un mode de réalisation, le chemin Chv est représenté par la liste des identifiants des systèmes autonomes successivement traversés, avec en tête de liste l'identifiant n du système autonome ASn et en queue de liste l'identifiant k du système autonome Sk. Le routeur BGP R1 du système autonome AS1 envoie alors au routeur E3GP R2 du système autonome AS2 et au routeur BGP R3 du système autonome AS3 un message de misse à jour indiquant un identifiant Idv du réseau V, et le chemin pour atteindre pour atteindre le réseau V. Ce chemin comporte le chemin Chv suivi de l'identifiant 1 du système autonome AS1, soit est représenté par la liste identifiée Chv1. Ensuite, sur réception de ce message de mise à jour, le routeur BGP R3 du système autonome AS3 sélectionne comme meilleur chemin le chemin (Chvl) indiqué par le message reçu pour atteindre le réseau V depuis le routeur R3 et envoie alors au routeur BGP R2 du système autonome AS2 un rnessage de mise à jour indiquant un identifiant Idv du réseau V, et ce meilleur chemin Chvl sélectionné par le routeur R3 pour atteindre le réseau V. Ce chemin comporte le chemin Chvl suivi de l'identifiant 3 du système autonome AS3, soit ChvI3.  FIG. 1 represents the autonomous systems AS1, AS2, AS3, AS4, ASn and BGP routers R1, R2, R3 and R4. As an illustration of the exchange of messages between autonomous system BGP routers, consider that the AS1 AS1 BGP R1 router selects a new path Chv to a network / ASn autonomous system. This path Chv comprises an ordered list of identifiers of the autonomous systems to cross to reach the network V. In the present case, this path starts with the identifier k of the ASk autonomous system neighbor of the autonomous system AS1, then comprises the identifiers autonomous systems to cross to reach the ASn autonomous system from the autonomous system ASk and ends with the identifier n of the ASn autonomous system. In one embodiment, the path Chv is represented by the list of identifiers of the autonomous systems successively traversed, with at the top of the list the identifier n of the autonomous system ASn and at the end of the list the identifier k of the autonomous system Sk. Router BGP R1 of the autonomous system AS1 then sends the router E3GP R2 of the AS2 autonomous system and the router BGP R3 of the autonomous system AS3 a update message indicating an identifier Idv of the network V, and the path to reach to reach the network V This path comprises the path Chv followed by the identifier 1 of the autonomous system AS1, or is represented by the identified list Chv1. Then, on receiving this update message, the router BGP R3 of the autonomous system AS3 selects as the best path the path (Chvl) indicated by the received message to reach the network V from the router R3 and then sends the router BGP R2 of the autonomous system AS2 an update rnessage indicating an identifier Idv of the network V, and this best path Chvl selected by the router R3 to reach the network V. This path includes the path Chvl followed by the identifier 3 of the autonomous system AS3 or ChvI3.

Le routeur BGP R2 du système autonome AS2 reçoit du routeur R1 et du routeur R3 deux chemins différents pour atteindre le réseau V. Il sélectionne le chemin Chvl parmi ces deux chemins, puis envoie au routeur BGP R4 du système autonome AS4 un message de mise à jour indiquant un identifiant Idv du réseau V, et le chemin pour atteindre pour atteindre le réseau V. Ce chemin comporte le chemin Chv1 suivi de l'identifiant 2 du système autonome AS, soit Chv12. Supposons qu'alors le lien entre les systèmes autonomes voisins AS1 5 et AS2 subisse une défaillance. Le routeur BGP R2 du système autonome AS2 sélectionne le chemin Chv13 et envoie alors au routeur BGP R4 du système autonome AS4 un message de mise à jour indiquant un identifiant Idv du réseau V, et le nouveau chemin pour atteindre pour atteindre le réseau V, qui est le chemin représenté 10 par la liste Chv132. Lorsqu'un événement non désiré affectant la structure d'interconnexion des AS survient (par exemple une rupture de liaison inter AS telle que évoquée ci-dessus), il est nécessaire de détecter cet événement et d'identifier le ou les systèmes autonomes ou lien(s) entre systèmes autonomes voisins sur lequel 15 ou lesquels cet événement est survenu. Cette identification n'est pas aisée puisqu'il n'y a pas de supervision opérationnelle globale du réseau internet, ruais seulement des supervisions par système autonome, voire par réseau compris dans ces systèmes autonomes. Néanmoins, il est souhaitable, pour un fournisseur de services d'un système autonome, d'identifier les incidents 20 survenant dans d'autres systèmes autonomes et affectant les voies de transmissions utilisées par le fournisseur de services. Les opérations de détection et d'identification d'événements sont généralement mises en oeuvre à partir de la collecte des messages de mises à jour reçus au niveau de routeurs BGP et de l'analyse des messages collectés. 25 Le volume des messages à traiter est très important et l'interprétation de ce volume de messages est très complexe. Il existe plusieurs types d'approches pour appréhender le problème de la détection, de l'identification et/ou de la localisation des événements affectant la structure d'interconnexion entre AS. 30 On connaît les approches analytiques (cf. par exemple Locating internet routing instabilities , Anja Feldman et al., http://www.acm.org/sigs/sigcomm/sigcomm2004/papers/p479-feldmann 11.pdf), basées sur les étapes de principe suivantes, étant donné un ensemble de rnessages de mises à jour collectés au niveau de routeurs pendant une certaine période de temps : - partitionner l'ensemble des messages collectés tel que chaque groupe de messages formé contienne les messages résultant d'un même 5 événement ; - localiser au sein de chacun des groupes formés, les systèmes autonomes responsables de l'événement. Une hypothèse considérée dans ces approches analytiques pour l'étape de partitionnement des messages est que des messages qui arrivent à 10 des dates proches sont liés à un même événement. Toutefois, l'analyse de I"arrivée des messages au niveau des routeurs montre que les messages arrivent de manière continue dans le temps. Ce qui varie, c'est le nombre de rnessages reçus par unité de temps. II a donc été proposé d'utiliser des valeurs seuils basées sur la 15 fréquence d'arrivée des messages ou la quantité de messages reçus, afin de définir des périodes de temps telles qu'on considère que les messages qui arrivent pendant chaque période sont la conséquence d'un même événement. Toutefois, ces valeurs seuils ont une incidence directe sur la façon dont sont groupés les messages et donc sur le résultat final de la détermination des 20 événements. De plus, des événements peuvent survenir à des dates proches, ce qu'une telle approche ne peut prendre en compte efficacement. Il existe donc un risque important de regrouper ensemble des messages qui appartiennent à des événements différents ou au contraire de scinder un ensemble de messages liés à un même événement. 25 Par ailleurs, une hypothèse considérée dans ces approches analytiques pour l'étape de localisation des AS responsables d'un événement est que, lorsqu'un événement survient, un routeur peut être amené à élire de nouveaux meilleurs chemins à destination de certains réseaux. On appellera anciens meilleurs chemins, les meilleurs chemins d'un routeur avant la 30 survenue d'un événement et nouveaux meilleurs chemins, ces meilleurs chemins après la survenue de l'événement. Les systèmes autonomes responsables de l'événement se situent sur les anciens ou les nouveaux veilleurs chemins. Dès lors, les systèmes autonomes qui apparaissent dans la rnajorité des chemins sont le plus susceptibles d'être à l'origine de l'événement. Un problème est que l'analyse de l'arrivée des messages au niveau des routeurs montre que, lorsqu'un routeur est amené à élire de nouveaux veilleurs chemins, il peut passer par plusieurs meilleurs chemins temporaires avant de se stabiliser sur un nouveau meilleur chemin. On collecte généralement les messages de mise à jour au niveau de quelques dizaines de routeurs BGP. Par nature du protocole BGP, chacun de ces routeurs, avant de retransmettre un message, ajoute le numéro du système autonome auquel il appartient, en tête du chemin contenu dans le message. Il y a donc un biais de rnesure qui peut influencer l'identification des responsables en défaveur des systèmes autonomes d'où proviennent les messages analysés. Une solution proposée est d'utiliser des valeurs seuils basées sur la fréquence d'arrivée des messages pour déterminer l'ancien et le nouveau veilleur chemin. Une limitation de cette solution est toutefois que rien n'assure qu'un routeur converge de façon similaire (durée de la convergence, nombre d'états transitoires, etc.) pour chaque chemin perturbé par un événement. Des différences de convergence peuvent conduire à identifier de manière erronée des meilleurs chemins stables, ce qui aura une incidence sur l'identification des responsables. De plus une identification uniquement basée sur des considérations quantitatives risque d'identifier majoritairement les systèmes autonomes où sont collectées les données. Par ailleurs, il existe un autre inconvénient inhérent à ce type d'approches, qui réside dans le fait qu'elles ne peuvent permettre la génération d'alertes pertinentes au plus tôt. En effet, comme elles se basent généralement sur des valeurs seuils liées à la fréquence d'arrivée des messages ou au volume de messages reçus, elles nécessitent qu'un événement soit suffisamment installé (réception des nouveaux meilleurs chemins stables , par exemple) avant de pouvoir lever une alarme. Cette alarme a pour effet d'avertir l'AS responsable de l'événement détecté, en vue de sa correction.  The router BGP R2 of the autonomous system AS2 receives from the router R1 and the router R3 two different paths to reach the network V. It selects the path Chvl among these two paths, then sends the router BGP R4 of the autonomous system AS4 an update message. day indicating an identifier Idv of the network V, and the path to reach to reach the network V. This path comprises the path Chv1 followed by the identifier 2 of the autonomous system AS, ie Chv12. Suppose then that the link between the neighboring autonomous AS1 5 and AS2 systems suffers a failure. The router BGP R2 of the autonomous system AS2 selects the path Chv13 and then sends to the router BGP R4 of the autonomous system AS4 an update message indicating an identifier Idv of the network V, and the new path to reach to reach the network V, which is the path represented by the list Chv132. When an undesired event affecting the interconnection structure of the ASs occurs (for example an inter-AS link break as mentioned above), it is necessary to detect this event and to identify the autonomous system or links (s) between neighboring autonomous systems on which 15 or which this event occurred. This identification is not easy since there is no overall operational supervision of the Internet network, only autonomous system supervisions, or even network included in these autonomous systems. Nevertheless, it is desirable for a service provider of an autonomous system to identify incidents occurring in other autonomous systems and affecting the transmission paths used by the service provider. Event detection and identification operations are generally implemented from the collection of update messages received at BGP routers and the analysis of collected messages. The volume of the messages to be processed is very important and the interpretation of this volume of messages is very complex. There are several types of approaches to understanding the problem of detecting, identifying and / or locating events affecting the interconnection structure between ASs. Analytical approaches are known (see for example Locating internet routing instabilities, Anja Feldman et al., Http://www.acm.org/sigs/sigcomm/sigcomm2004/papers/p479-feldmann 11.pdf), based on the following principle steps, given a set of updates updates collected at routers for a certain period of time: - partition all the collected messages such that each group of messages formed contains the messages resulting from a same 5 event; - locate within each of the groups formed, the autonomous systems responsible for the event. One hypothesis considered in these analytical approaches for the message partitioning step is that messages arriving at close dates are related to the same event. However, the analysis of the arrival of messages at the level of the routers shows that the messages arrive continuously in time, which varies according to the number of responses received per unit of time. use threshold values based on the arrival frequency of the messages or the quantity of messages received, in order to define time periods such that messages arriving during each period are considered to be the consequence of the same event However, these threshold values have a direct impact on the way the messages are grouped and thus on the final result of the event determination, and events can occur at close dates, which such an approach can not. can take into account effectively.There is therefore a significant risk of grouping together messages that belong to different events or split a set of related messages. 25 In addition, a hypothesis considered in these analytical approaches for the step of locating the ASs responsible for an event is that, when an event occurs, a router may have to elect new, better paths to the event. destination of certain networks. Old best paths, the best paths of a router before the occurrence of an event and new best paths, these best paths after the occurrence of the event will be called. The autonomous systems responsible for the event are located on the old or new watch roads. Therefore, the autonomous systems that appear in most roads are most likely to be at the origin of the event. A problem is that the analysis of the arrival of the messages at the level of the routers shows that, when a router is led to elect new watchpaths, it can go through several better temporary paths before stabilizing on a new best path . Update messages are generally collected at a few dozen BGP routers. By nature of the BGP protocol, each of these routers, before retransmitting a message, adds the number of the autonomous system to which it belongs, at the top of the path contained in the message. There is therefore a bias that can influence the identification of those responsible to the detriment of the autonomous systems from which the messages analyzed originate. One proposed solution is to use threshold values based on the arrival frequency of the messages to determine the old and new track watcher. A limitation of this solution is, however, that nothing assures that a router converges in a similar way (convergence time, number of transient states, etc.) for each path disturbed by an event. Differences in convergence may lead to erroneous identification of the best stable paths, which will affect the identification of those responsible. Moreover, identification based solely on quantitative considerations is likely to identify mainly the autonomous systems where the data are collected. Moreover, there is another disadvantage inherent in this type of approach, which lies in the fact that they can not allow the generation of relevant alerts at the earliest. Indeed, as they are generally based on threshold values related to the arrival frequency of the messages or the volume of messages received, they require that an event is sufficiently installed (reception of the new best stable paths, for example) before ability to raise an alarm. This alarm has the effect of warning the AS responsible for the detected event, with a view to its correction.

On connaît également les approches visuelles (cf. par exemple Visualizing Internet routing dynarnics using link rank , Mohit Lad et al., http://www.cs.ucla.edu/ûmohit/cameraReady/LinkRank.pdf), qui représentent visuellement les changements de chemins, c'est-à-dire les conséquences des événements affectant la structure d'interconnexion des AS, sans toutefois déterminer les événements à l'origine de ces changements. Dans le cas où une approche visuelle propose en outre une technique de localisation d'événements, celle-ci est similaire à celles décrites ci-dessus pour les approches analytiques et présente donc les mêmes inconvénients.  Visual approaches are also known (see, for example, Visualizing Internet routing dynarnics using link rank, Mohit Lad et al., Http://www.cs.ucla.edu/uhmhit/cameraReady/LinkRank.pdf), which visually represent path changes, that is, the consequences of events affecting the interconnection structure of the ASs, but without determining the events that caused these changes. In the case where a visual approach also proposes an event localization technique, it is similar to those described above for the analytical approaches and therefore has the same disadvantages.

Ainsi, à l'heure actuelle, les administrateurs des réseaux ne disposent pas de solution leur permettant d'identifier et de diagnostiquer précisément des événements impactant le routage entre systèmes autonomes à partir des messages de mises à jour échangés entre les routeurs BGP à traiter. Ne pouvant identifier les problèmes au moment où ils surviennent, ils se retrouvent souvent contraints d'attendre des plaintes de clients pour pouvoir localiser et régler la panne. Suivant un premier aspect, la présente invention vise à proposer un procédé de détermination d'événements au sein d'un réseau global comprenant une pluralité de réseaux regroupés dans des entités respectives et des modules de cheminement adaptés pour échanger entre eux des messages de mise à jour de cheminement. Un message de mise à jour de cheminement envoyé par un module de cheminement indique un réseau accessible parmi la pluralité de réseaux et un chemin actuellement retenu par le module de cheminement pour atteindre le réseau indiqué. Le chemin comprend une liste ordonnée d'entités. Un procédé selon l'invention comprend les étapes consistant à : - associer, dans une phase préalable, un chemin de référence respectif, dit chemin primaire, à chaque module de cheminement pour chaque réseau accessible par ledit 30 module ; en fonction de messages de mise à jour échangés par les modules de cheminement, déterminer des chemins primaires indisponibles, un chemin primaire étant indisponible lorsque, dans un message envoyé par un module de cheminement, le chemin indiqué comme actuellement retenu par le module de cheminement pour atteindre le réseau indiqué est différent du chemin primaire associé au module de cheminement pour ledit réseau indiqué ; regrouper les chemins primaires indisponibles déterminés en arborescences, des chemins primaires appartenant à une même arborescence lorsqu'ils permettent d'atteindre un ou des réseaux d'une même entité ; pour au moins une arborescence, on calcule l'intersection des chemins primaires indisponibles regroupés dans l'arborescence ; on estime la localisation d'au moins un événement en fonction de ladite intersection calculée.  Thus, at present, the network administrators do not have a solution allowing them to identify and accurately diagnose events impacting the routing between autonomous systems from the update messages exchanged between the BGP routers to be processed. Unable to identify problems when they occur, they often find themselves forced to wait for customer complaints to locate and fix the problem. According to a first aspect, the present invention aims at providing a method for determining events within a global network comprising a plurality of networks grouped in respective entities and routing modules adapted for exchanging update messages with each other. day of progress. A routing update message sent by a routing module indicates an accessible network among the plurality of networks and a path currently retained by the routing module to reach the indicated network. The path includes an ordered list of entities. A method according to the invention comprises the steps of: associating, in a prior phase, a respective reference path, said primary path, with each routing module for each network accessible by said module; based on update messages exchanged by the routing modules, determining unavailable primary paths, a primary path being unavailable when, in a message sent by a routing module, the path indicated as currently retained by the routing module for reaching the indicated network is different from the primary path associated with the routing module for said indicated network; group the unavailable primary paths determined in trees, primary paths belonging to the same tree when they make it possible to reach one or more networks of the same entity; for at least one tree, the intersection of the unavailable primary paths grouped in the tree structure is calculated; the location of at least one event is estimated as a function of the calculated intersection.

Ainsi selon l'invention, on réalise la détermination des événements en fonction de l'indisponibilité de chemins primaires associés durablement à des modules de cheminement, typiquement des routeurs BGP. On ne considère pas, comme dans l'art antérieur, que lors d'un événement, il y a passage d'une configuration de chemins stables à une autre configuration de chemins stables.  Thus according to the invention, the determination of events is carried out as a function of the unavailability of primary paths durably associated with routing modules, typically BGP routers. It is not considered, as in the prior art, that during an event, there is a transition from a configuration of stable paths to another configuration of stable paths.

Selon l'invention, les anciens chemins stables et les nouveaux chemins stables sont les mêmes et ils correspondent aux chemins primaires. Lorsqu'un message de mise à jour de cheminement indique un changement de chemin par rapport à un chemin primaire associé à un module de cheminement et un réseau de destination, ce message est interprété selon l'invention comme signalant une indisponibilité d'un chemin primaire. L'étude sur de longues périodes (plusieurs mois) des chemins utilisés par des routeurs BGP à destination des différents réseaux de l'Internet, confirme la validité de cette approche. En effet, on constate que chaque routeur possède un chemin préférentiel vers chaque réseau accessible. Ce chemin est celui majoritairement utilisé sur de longues périodes de temps (plusieurs mois). Un événement n'a que des effets temporaires (plus ou moins longs) sur les meilleurs chemins utilisés par un routeur.  According to the invention, the old stable paths and the new stable paths are the same and they correspond to the primary paths. When a routing update message indicates a path change with respect to a primary path associated with a routing module and a destination network, this message is interpreted according to the invention as signaling a unavailability of a primary path . The study over long periods (several months) of the paths used by BGP routers for the different networks of the Internet confirms the validity of this approach. Indeed, we see that each router has a preferential path to each accessible network. This path is the one mostly used over long periods of time (several months). An event has only temporary effects (more or less long) on the best paths used by a router.

Selon l'invention, on aborde donc le problème de la détermination des événements en termes d'indisponibilité de chemins primaires et non plus simplement en termes d'arrivée de messages de mise à jour de cheminement. Le problème à résoudre peut donc être reformulé de la manière suivante : étant donné un ensemble de chemins primaires indisponibles à un instant t, détecter les événements à l'origine de ces indisponibilités et localiser ces événements. La légitimité du regroupement des chemins primaires indisponibles selon l'arborescence à laquelle ils appartiennent et du calcul de leur intersection se présentant sous la forme d'un ou plusieurs sous-chemins d'AS est également confirmée par l'étude sur de longues périodes (plusieurs mois) des chemins utilisés par des routeurs à destination des différents réseaux de l'Internet. Cette étude montre qu'un routeur utilise généralement le même chemin primaire pour joindre les réseaux au sein d'un même système autonome. Ce résultat montre que les réseaux au sein d'un même système autonome sont joints de la même manière. Ils sont donc fortement susceptibles d'être victimes des mêmes événements. Réaliser l'intersection des chemins primaires d'une même arborescence conformément à l'invention permet de : - supprimer le biais de mesure explicité précédemment en référence aux approches analytiques. En effet, dés qu'une arborescence contient plus de deux éléments, réaliser l'intersection des chemins primaires contenus dans cette arborescence supprime des sources possibles des événements étudiés, les systèmes autonomes dans lesquels se trouvent les routeurs émettant un message de mise à jour de cheminement. Ces systèmes autonomes ne seront donc pas pris en compte plus que nécessaire. orienter la localisation des systèmes autonomes à l'origine d'un ou d'événements observés. Supposons qu'un événement survienne au niveau d'un système autonome ASx. Cet événement va rendre indisponible plusieurs chemins primaires, notamment des chemins primaires à destination des réseaux au sein du système autonome ASx. L'arborescence associée à ASx contiendra vraisemblablement de nombreux chemins primaires indisponibles et l'intersection de ces chemins primaires sera vraisemblablement de faible longueur (idéalement l'intersection ne devrait contenir que le système autonome ASx). En outre, le fait de n'exploiter que les messages indiquant les débuts d'indisponibilité des chemins primaires, ainsi que les fins d'indisponibilité des chemins primaires (et non les messages retraçant les différents changements de chemins sur la période d'indisponibilité) permet de diminuer de manière importante le nombre de données à manipuler, ce qui est très important pour pouvoir effectuer un traitement en temps réel d'un événement. En outre, le fait d'estimer la localisation d'événements sur les 10 intersections de chemins primaires permet là encore de réduire considérablement le volume de données à traiter. De plus, la solution proposée exempte d'utiliser des valeurs seuils arbitraires. La solution proposée permet donc de lever les limitations majeures des 15 approches antérieures discutées plus haut. Là où les approches antérieures suivaient un raisonnement grouper les messages puis analyser , l'invention propose d'analyser les messages au fur et à mesure de leur arrivée et de lever une alarme dès qu'un événement est identifié. La technique développée permet donc de générer des alarmes 20 pertinentes au plus tôt. Dans un mode de réalisation, les modules de cheminement échangent des messages conformément au protocole BGP. En effet, le procédé est particulièrement adapté au cas des échanges BGP, puisqu'il permet de réduire considérablement le nombre de données à traiter, qui est très important dans le 25 cas BGP. Dans un mode de réalisation, pour chaque arborescence regroupant des chemins primaires indisponibles, on calcule l'intersection desdits chemins primaires indisponibles et on estime la localisation d'au moins un événement en fonction des intersections respectives calculées. A ce stade, on peut alors 30 expliquer toutes les indisponibilités observées en considérant qu'il y avait eu autant d'événements que d'arborescences, le présent procédé permettant d'estimer la localisation de chacun de ces événements. Cette disposition permet en outre de faciliter la distinction d'événements différents qui apparaissent à des dates proches, par rapport à l'art antérieur. En effet, supposons que deux événements surviennent à des dates proches, l'un sur le système autonome ASx, l'autre sur le système autonome ASy. On s'attend à ce que les intersections des chemins primaires indisponibles contenus dans l'arborescence d'AS ASx et dans l'arborescence d'AS ASy soient de petites tailles. La probabilité que les deux intersections obtenues possèdent des systèmes autonomes AS en commun est donc faible. La probabilité de détermination de deux événements disjoints est par conséquent importante. Dans un mode de réalisation, on compare entre elles les intersections calculées pour les arborescences respectives en vue d'estimer si l'indisponibilité des chemins primaires de plusieurs arborescences est explicable par un même événement. Cette étape permet donc de préciser la détermination des événements. Dans un mode de réalisation, la phase de comparaison des intersections comprend une étape selon laquelle on considère que les événements ont lieu uniquement au niveau de liaisons entre entités voisines. Cette étape est particulièrement efficace car les problèmes affectant les liaisons entre les entités, typiquement les liaisons entre les systèmes autonomes, sont ceux rencontrés en pratique le plus fréquemment. Dans un mode de réalisation, la phase de comparaison des intersections comprend une étape selon laquelle on considère que les événements ont lieu uniquement au niveau des entités et non au niveau des liaisons entre entités. Effectuer cette étape à la suite de l'étape indiquée précédemment permet de préciser encore la détermination d'un événement. Dans un mode de réalisation, une décision de générer une alarme relative à un événement dont la localisation a été estimée est prise en fonction d'au moins une probabilité de collecter ultérieurement des messages de mise à jour annonçant l'indisponibilité de chemins primaires dans une arborescence comprenant des chemins primaires indisponibles du fait dudit événement, étant donné le nombre de chemins primaires déjà indisponibles pour cette arborescence et la durée depuis la dernière réception d'un message indiquant l'indisponibilité d'un chemin primaire pour cette arborescence. Cette disposition permet de définir le moment au plus tôt pour générer une alarme afin de résoudre l'événement tout en disposant des meilleures informations possibles de détermination de l'événement. Ainsi une alarme est générée dès que l'on détermine qu'on ne peut pas avoir de meilleure identification de l'événement, même en recevant encore des messages, ou dès qu'il devient peu probable que l'on reçoive de nouveaux messages liés à cet événement (i.e. on ne dispose éventuellement que d'une identification incomplète de l'événement, mais il est peu probable que des messages à venir permettent de préciser l'identification). Suivant un deuxième aspect, l'invention propose un programme d'ordinateur à installer dans un dispositif de détermination d'événements au sein d'un réseau global comprenant une pluralité de réseaux regroupés dans des entités respectives et des modules de cheminement adaptés pour échanger entre eux des messages de mise à jour de cheminement, un message de mise à jour de cheminement envoyé par un module de cheminement indiquant un réseau accessible parmi la pluralité de réseaux et un chemin actuellement retenu par le module de cheminement pour atteindre le réseau indiqué et comprenant une liste ordonnée d'entités, ledit programme comprenant des instructions pour mettre en oeuvre les étapes qui incombent au dispositif, d'un procédé suivant le premier aspect de l'invention lors d'une exécution du programme par des moyens de traitement dudit dispositif.  According to the invention, therefore, the problem of determining events in terms of unavailability of primary paths and no longer simply in terms of the arrival of routing update messages is addressed. The problem to be solved can therefore be reformulated as follows: given a set of primary paths unavailable at a time t, detect the events at the origin of these unavailabilities and locate these events. The legitimacy of the grouping of the unavailable primary paths according to the tree to which they belong and the calculation of their intersection appearing in the form of one or more AS sub-paths is also confirmed by the study over long periods ( several months) paths used by routers to different networks of the Internet. This study shows that a router typically uses the same primary path to join networks within a single autonomous system. This result shows that the networks within the same autonomous system are joined in the same way. They are therefore highly likely to be victims of the same events. Realizing the intersection of the primary paths of the same tree in accordance with the invention makes it possible to: eliminate the measurement bias explained above with reference to the analytical approaches. Indeed, as soon as a tree contains more than two elements, to make the intersection of the primary paths contained in this tree deletes possible sources of the studied events, the autonomous systems in which are the routers emitting a message of update of path. These autonomous systems will therefore not be taken into account more than necessary. orienting the location of the autonomous systems at the origin of one or more observed events. Suppose an event occurs at an ASx autonomous system. This event will make several primary paths unavailable, including primary paths to networks within the ASx Autonomous System. The tree associated with ASx will likely contain many unavailable primary paths and the intersection of these primary paths is likely to be of short length (ideally the intersection should contain only the ASx autonomous system). In addition, the fact of exploiting only the messages indicating the beginning of unavailability of the primary paths, as well as the end of unavailability of the primary paths (and not the messages tracing the different changes of paths on the period of unavailability) allows to significantly reduce the number of data to handle, which is very important to perform a real-time treatment of an event. In addition, the fact of estimating the location of events on the 10 intersections of primary paths again makes it possible to considerably reduce the volume of data to be processed. In addition, the proposed solution does not use arbitrary threshold values. The proposed solution therefore makes it possible to remove the major limitations of the previous approaches discussed above. Where previous approaches followed a reasoning group messages and then analyze, the invention proposes to analyze the messages as they arrive and to raise an alarm as soon as an event is identified. The developed technique therefore makes it possible to generate relevant alarms at the earliest. In one embodiment, the routing modules exchange messages according to the BGP protocol. Indeed, the method is particularly adapted to the case of BGP exchanges, since it makes it possible to considerably reduce the number of data to be processed, which is very important in the BGP case. In one embodiment, for each tree grouping unavailable primary paths, the intersection of said unavailable primary paths is calculated and the location of at least one event is estimated as a function of the calculated respective intersections. At this stage, we can then explain all the unavailability observed considering that there had been as many events as trees, the present method for estimating the location of each of these events. This arrangement also makes it easier to distinguish between different events that appear on dates that are close to those of the prior art. Indeed, suppose that two events occur on close dates, one on the autonomous system ASx, the other on the autonomous system ASy. It is expected that the intersections of the unavailable primary paths contained in the AS ASx tree and in the AS ASy tree will be small. The probability that the two intersections obtained have autonomous AS systems in common is therefore small. The probability of determining two disjoint events is therefore important. In one embodiment, the intersections calculated for the respective trees are compared with one another in order to estimate whether the unavailability of the primary paths of several trees is explicable by the same event. This step therefore makes it possible to specify the determination of the events. In one embodiment, the intersection comparison phase includes a step of considering that the events take place only at links between neighboring entities. This step is particularly effective because the problems affecting the links between the entities, typically the links between the autonomous systems, are those encountered in practice most frequently. In one embodiment, the intersection comparison phase includes a step of considering that the events take place only at the entity level and not at the entity link level. Performing this step following the step indicated above makes it possible to further specify the determination of an event. In one embodiment, a decision to generate an alarm for an event whose location has been estimated is made based on at least one probability of later collecting update messages announcing the unavailability of primary paths in a location. tree including primary paths unavailable due to said event, given the number of primary paths already unavailable for this tree and the time since the last reception of a message indicating the unavailability of a primary path for this tree. This arrangement makes it possible to define the moment at the earliest to generate an alarm in order to solve the event while having the best information possible for determining the event. Thus an alarm is generated as soon as it is determined that we can not have better identification of the event, even while still receiving messages, or when it becomes unlikely that we receive new messages related at this event (ie only an incomplete identification of the event is possible, but it is unlikely that future messages will make it possible to specify the identification). According to a second aspect, the invention proposes a computer program to be installed in an event determination device within a global network comprising a plurality of networks grouped in respective entities and routing modules adapted to exchange between them, a routing update message sent by a routing module indicating an accessible network among the plurality of networks and a path currently retained by the routing module to reach the indicated network and comprising an ordered list of entities, said program comprising instructions for implementing the steps which are incumbent on the device, of a method according to the first aspect of the invention during execution of the program by means of processing said device.

Suivant un troisième aspect, l'invention propose un dispositif de détermination d'événements au sein d'un réseau global comprenant une pluralité de réseaux regroupés dans des entités respectives et des modules de cheminement adaptés pour échanger entre eux des messages de mise à jour de cheminement.  According to a third aspect, the invention proposes a device for determining events within a global network comprising a plurality of networks grouped in respective entities and routing modules adapted to exchange update messages between themselves. path.

Un message de mise à jour de cheminement envoyé par un module de cheminement indique un réseau accessible parmi la pluralité de réseaux et un chemin actuellement retenu par le module de cheminement pour atteindre le réseau indiqué et comprenant une liste ordonnée d'entités.  A routing update message sent by a path module indicates an accessible network among the plurality of networks and a path currently retained by the path module to reach the indicated network and including an ordered list of entities.

Un chemin de référence respectif, dit chemin primaire, a été associé dans une phase préalable, à chaque module de cheminement pour chaque réseau accessible par ledit module. Un dispositif selon l'invention comprend les moyens suivants : des moyens pour, en fonction de messages de mise à jour échangés par les modules de cheminement, déterminer des chemins primaires indisponibles, un chemin primaire étant indisponible lorsque, dans un message envoyé par un module de cheminement, le chemin indiqué comme actuellement retenu par le module de cheminement pour atteindre le réseau indiqué est différent du chemin primaire associé au module de cheminement pour ledit réseau indiqué ; des moyens pour regrouper les chemins primaires indisponibles déterminés en arborescences, des chemins primaires appartenant à une même arborescence lorsqu'ils permettent d'atteindre un ou des réseaux d'une même entité ; des moyens pour, pour au moins une arborescence, calculer l'intersection des chemins primaires indisponibles regroupés dans l'arborescence ; 20 des moyens pour estimer la localisation d'au moins un événement en fonction de ladite intersection calculée. D'autres caractéristiques et avantages de l'invention apparaîtront encore à la lecture de la description qui va suivre. Celle--ci est purement illustrative et doit être lue en regard des dessins annexés sur lesquels : 25 la figure 2 représente un système mettant en oeuvre l'invention dans un mode de réalisation ; - la figure 3 est un organigramme d'étapes d'un procédé dans un mode de mise en oeuvre de l'invention. Considérons, en référence à la figure 2, une partie 1 du réseau Internet 30 comportant une pluralité de systèmes autonomes S1,...,Sn au sein desquels figurent des réseaux de communication respectifs. 10 15 Dans cette partie de réseau Internet, des routeurs r1,..., rn implémentant le protocole BGP communiquent de proche en proche par échange de messages de mise à jour de cheminement. Chaque message contient l'adresse d'un ou plusieurs réseaux ainsi qu'un chemin qui identifie les systèmes autonomes à traverser successivement pour joindre chacun de ces réseaux. Un certain nombre de routeurs parmi les routeurs r1 à rn, sont télésurveillés, permettant la collecte des messages de mise à jour de cheminement émis par ces routeurs. Ces routeurs sont par exemple les routeurs r1 à rp, avec (avec p<_n). Les messages de mise à jour de cheminement des routeurs r1 à rp sont collectés au fur et à mesure de leur émission par un dispositif de surveillance 10. Le dispositif de surveillance 10 comporte une mémoire 11 et un module 15 de traitement 12. Le processus de détermination des événements au sein de la partie de réseau 1 va maintenant être décrit, en référence à la figure 3. Dans une phase préalable a/, on associe à chaque routeur BGP r1,..., rp, un chemin de référence, nommé chemin primaire, pour chaque réseau 20 accessible par le routeur au sein des systèmes autonomes Si, ..., Sn. Ce chemin de référence est un chemin préférentiel retenu par le routeur pour transmettre des données à destination du réseau considéré. Les chemins primaires sont par exemple définis en fonction de l'analyse des chemins utilisés par les routeurs pendant une période d'observation longue (par exemple 25 plusieurs mois). Les chemins primaires pour les différents réseaux sont mémorisés en association avec les identifiants des routeurs dans la mémoire 11 du dispositif de surveillance 10. Par ailleurs, une liste des chemins primaires indisponibles est mémorisée dans la mémoire 11, contenant les chemins primaires déterminés 30 indisponibles. Dans l'exemple de réalisation considéré, un algorithme comprenant plusieurs sous-blocs algorithmiques BI à B5 est mis en oeuvre par le module de traitement 12 pour réaliser l'ensemble Proc des différentes étapes b/ à g/ indiquées ci-dessous. Dès qu'il collecte un nouveau message de mise à jour de cheminement (étapeb/), le module de traitement 12 du dispositif de surveillance 10 détermine, à l'aide du premier sous-bloc algorithmique B1, si ce nouveau rnessage affecte l'état de disponibilité ou d'indisponibilité des chemins primaires mémorisés et il met à jour le cas échéant la liste des chemins primaires indisponibles (étape c/). Le chemin primaire passe dans un état d'indisponibilité lorsque, dans le rnessage de mise à jour de cheminement envoyé par un routeur et collecté par le module de traitement 12, le chemin indiqué comme actuellement retenu par le routeur pour atteindre le réseau indiqué est différent du chemin primaire rnémorisé associé au routeur pour le réseau indiqué. Le chemin primaire passe dans un état de disponibilité lorsque, dans le rnessage de mise à jour de cheminement envoyé par un routeur et collecté par le module de traitement 12, le chemin indiqué comme actuellement retenu par le routeur pour atteindre le réseau indiqué est égal au chemin primaire rnémorisé associé au routeur pour le réseau indiqué. Puis toujours à l'aide du premier sous-bloc algorithmique B1, le module de traitement 12 regroupe entre eux les chemins primaires indisponibles appartenant à une même arborescence (étape d/). On appelle arborescence associée au système autonome Sx (x entier de 1 à n), l'ensemble des chemins primaires des routeurs r1 à rp à destination des réseaux situés au sein du système autonome Sx.  A respective reference path, said primary path, has been associated in a prior phase, each routing module for each network accessible by said module. A device according to the invention comprises the following means: means for, as a function of update messages exchanged by the routing modules, to determine unavailable primary paths, a primary path being unavailable when, in a message sent by a module path, the path indicated as currently retained by the routing module to reach the indicated network is different from the primary path associated with the routing module for said indicated network; means for grouping the unavailable primary paths determined in trees, primary paths belonging to the same tree when they make it possible to reach one or more networks of the same entity; means for, for at least one tree, calculating the intersection of the unavailable primary paths grouped in the tree; Means for estimating the location of at least one event according to said calculated intersection. Other features and advantages of the invention will become apparent on reading the description which follows. This is purely illustrative and should be read with reference to the accompanying drawings, in which: FIG. 2 shows a system embodying the invention in one embodiment; FIG. 3 is a flowchart of steps of a method in an embodiment of the invention. Consider, with reference to Figure 2, a part 1 of the Internet network 30 having a plurality of autonomous systems S1, ..., Sn in which there are respective communication networks. In this part of the Internet network, routers r1,..., Rn implementing the BGP protocol communicate step by step by exchange of update update messages. Each message contains the address of one or more networks and a path that identifies the autonomous systems to cross successively to join each of these networks. A number of routers routers r1 to rn, are monitored, allowing the collection of routing update messages issued by these routers. These routers are for example the routers r1 to rp, with (with p <_n). The routing update messages of the routers r1 to rp are collected as and when they are transmitted by a monitoring device 10. The monitoring device 10 comprises a memory 11 and a processing module 12. The process of determination of the events within the network part 1 will now be described, with reference to FIG. 3. In a prior phase a /, we associate with each router BGP r1, ..., rp, a reference path, named primary path for each network 20 accessible by the router within the autonomous systems Si, ..., Sn. This reference path is a preferential path retained by the router for transmitting data to the network in question. The primary paths are for example defined according to the analysis of the paths used by the routers during a long observation period (for example several months). The primary paths for the different networks are stored in association with the identifiers of the routers in the memory 11 of the monitoring device 10. Furthermore, a list of the unavailable primary paths is stored in the memory 11, containing the determined primary paths 30 unavailable. In the exemplary embodiment considered, an algorithm comprising several algorithmic sub-blocks BI to B5 is implemented by the processing module 12 to perform the set Proc of the various steps b / to g / indicated below. As soon as it collects a new routing update message (step b /), the processing module 12 of the monitoring device 10 determines, using the first algorithmic sub-block B1, whether this new rness affects the state of availability or unavailability of the stored primary paths and updates if necessary the list of unavailable primary paths (step c /). The primary path goes into an unavailable state when, in the routing update routine sent by a router and collected by the processing module 12, the path indicated as currently held by the router to reach the indicated network is different the rnored primary path associated with the router for the indicated network. The primary path goes into an availability state when, in the routing update rness sent by a router and collected by the processing module 12, the path indicated as currently held by the router to reach the indicated network is equal to The primary stored path associated with the router for the indicated network. Then again using the first algorithmic sub-block B1, the processing module 12 groups together the unavailable primary paths belonging to the same tree (step d /). The tree associated with the autonomous system Sx (x integer from 1 to n) is called the set of primary paths of the routers r1 to rp intended for the networks located within the autonomous system Sx.

Pour chaque système autonome Sx (x entier de 1 à n), on appelle Arbo(Sx), l'ensemble des chemins primaires indisponibles à destination de réseaux appartenant au système autonome Sx. Arbo(Sx) est donc un sous-ensemble de l'arborescence associée au système autonome Sx. Ces ensembles et leurs contenus sont mémorisés dans la mémoire 11 du module de surveillance 12 et sont réactualisés par le module de traitement 12. Selon les opérations réalisées lors de l'exécution du sous-bloc algorithmique B1 sur des moyens de calcul du module de traitement 12, à chaque réception d'un message annonçant l'indisponibilité d'un chemin primaire c à destination d'un réseau au sein du système autonome Sx, le module de traitement 12 du dispositif de surveillance 10 ajoute c à Arbo(Sx) s'il n'en faisait pas déjà partie. A chaque réception d'un message annonçant la fin de l'indisponibilité d'un chemin primaire c à destination d'un réseau au sein du :système autonome Sx, le module de traitement 12 du dispositif de surveillance retire c de Arbo(Sx). Puis, à l'aide du deuxième sous- bloc algorithmique B2, le module de traitement 12 calcule pour chaque arborescence contenant des chemins primaires indisponibles (ie chaque arborescence d'un système autonome Sx tel 10 que Arbo(Sx) n'est pas vide), l'intersection des chemins primaires indisponibles appartenant à cette arborescence (étape e/). Cette intersection se présente sous la forme d'un ou plusieurs sous-chemins reliant des systèmes autonomes voisins. On appelle Inter(Sx) pour x entier de 1 à n, l'ensemble contenant le résultat de l'intersection des chemins présents dans Arbo(Sx). Inter(Sx) comporte donc un ou plusieurs systèmes autonomes, et/ou un ou plusieurs tronçons, dits sous-chemins, de chemins primaires de Arbo(Sx). Un sous-chemin correspond donc à une liste ordonnée de systèmes autonomes telle que deux systèmes autonomes successifs de la liste sont reliés par un lien.  For each autonomous system Sx (x integer from 1 to n), Arbo (Sx) is the set of primary paths unavailable to networks belonging to the autonomous system Sx. Arbo (Sx) is therefore a subset of the tree associated with the autonomous system Sx. These sets and their contents are stored in the memory 11 of the monitoring module 12 and are updated by the processing module 12. According to the operations performed during the execution of the algorithmic sub-block B1 on calculation means of the processing module 12, at each reception of a message announcing the unavailability of a primary path c to a network within the autonomous system Sx, the processing module 12 of the monitoring device 10 adds c to Arbo (Sx) s he was not already there. Each time a message is received announcing the end of the unavailability of a primary path c to a network within the autonomous system Sx, the processing module 12 of the monitoring device removes c from Arbo (Sx) . Then, using the second algorithmic sub-block B2, the processing module 12 calculates for each tree containing unavailable primary paths (ie each tree of an autonomous system Sx such that Arbo (Sx) is not empty. ), the intersection of unavailable primary paths belonging to this tree (step e /). This intersection is in the form of one or more sub-paths connecting neighboring autonomous systems. We call Inter (Sx) for x integer from 1 to n, the set containing the result of the intersection of the paths present in Arbo (Sx). Inter (Sx) thus comprises one or more autonomous systems, and / or one or more sections, called sub-paths, of primary paths of Arbo (Sx). A subpath thus corresponds to an ordered list of autonomous systems such that two successive autonomous systems of the list are linked by a link.

On appelle Arcs(Sx), l'ensemble de couples de systèmes autonomes voisins obtenus en décomposant chaque sous-chemin de Inter(Sx) en couples de systèmes autonomes voisins. Soit un chemin primaire ou sous-chemin d'un chemin primaire c, on appelle longueur(c), la longueur en nombre de systèmes autonomes du chemin c. Soit un couple de systèmes autonomes (Sx, Sy), on appellera poids(Sx, Sy), une valeur entière représentant le nombre de chemins primaires dont l'indisponibilité peut être expliquée par un événement localisé au niveau du couple (Sx, Sy).  Arcs (Sx) are the set of pairs of neighboring autonomous systems obtained by decomposing each sub-path of Inter (Sx) into pairs of neighboring autonomous systems. Either a primary path or a sub-path of a primary path c, called length (c), the length in number of autonomous systems of path c. Either a pair of autonomous systems (Sx, Sy), we will call weight (Sx, Sy), an integer value representing the number of primary paths whose unavailability can be explained by a localized event at the level of the couple (Sx, Sy) .

Le sous-bloc algorithmique B2 comprend des instructions mettant en oeuvre les opérations suivantes lors d'une exécution du sous-bloc B2 par des moyens de calcul du module de traitement 12.  The algorithmic sub-block B2 comprises instructions implementing the following operations during an execution of the sub-block B2 by calculation means of the processing module 12.

Pour chaque arborescence Arbo(Sx) telle que le contenu de Arbo(Sx) est non nul : - on calcule Inter(Sx), l'intersection des éléments de Arbo(Sx) (Inter(Sx) est un ensemble de sous-chemins entre systèmes autonomes) ; -on détermine Arcs(Sx), l'ensemble de couples de systèmes autonomes obtenus en décomposant les sous-chemins de Inter(Sx) en couples ; - puis dans un mode de réalisation de l'invention, on calcule prob(Sx) , la probabilité de recevoir ultérieurement des messages annonçant l'indisponibilité de chemins primaires de l'arborescence associée à Sx (soit l'ajout de nouveaux éléments dans Arbo(Sx)) ; - pour chaque élément c de Inter(Sx) : ù> si la longueur(c) est égale à 1 (i.e. le contenu de Inter(Sx) est un système autonome) : - on construit le couple (c, c) et on affecte au poids (c,c) la valeur du cardinal de l'ensemble Arbo(Sx), soit poids(c,c) = lArbo(Sx) ; et - on ajoute (c, c) à Arcs(Sx) ; ù> si la longueur(c) est différente de 1 : - on construit les couples (Sy, Sz) où Sy et Sz sont deux systèmes autonomes consécutifs de l'élément c et on affecte au poids(Sy,Sz) la valeur du cardinal de l'ensemble Arbo(Sx), soit poids(Sy,Sz) = lArbo(Sx)l ; - on ajoute (Sy, Sz) à Arcs(Sx). Ainsi, après avoir effectué le calcul des intersections des chemins primaires explicité ci-dessus, on décompose chaque ensemble Arbo(Sx) en un ensemble de couples de systèmes autonomes Inter(Sx). A ce stade, on peut donc expliquer l'indisponibilité des chemins primaires compris dans une arborescence en considérant que ces chemins ont été victimes du même événement. Et on a déterminé que cet événement a pu avoir lieu sur un quelconque des chemins de Inter(Sx).  For each tree Arbo (Sx) such that the content of Arbo (Sx) is non-zero: - we calculate Inter (Sx), the intersection of the elements of Arbo (Sx) (Inter (Sx) is a set of subpaths between autonomous systems); we determine Arcs (Sx), the set of couples of autonomous systems obtained by decomposing the sub-paths of Inter (Sx) in pairs; and then, in one embodiment of the invention, calculating prob (Sx), the probability of subsequently receiving messages announcing the unavailability of primary paths of the tree associated with Sx (ie the addition of new elements in Arbo). (Sx)); - for each element c of Inter (Sx): ù> if the length (c) is equal to 1 (ie the content of Inter (Sx) is an autonomous system): - we construct the pair (c, c) and we assigns to the weight (c, c) the cardinal value of the set Arbo (Sx), that is weight (c, c) = lArbo (Sx); and - (c, c) is added to Arcs (Sx); ù> if the length (c) is different from 1: - we construct the pairs (Sy, Sz) where Sy and Sz are two consecutive autonomous systems of the element c and we assign to the weight (Sy, Sz) the value of the cardinal of the set Arbo (Sx), that is weight (Sy, Sz) = lArbo (Sx) l; - we add (Sy, Sz) to Arcs (Sx). Thus, after calculating the intersections of the primary paths explained above, each set Arbo (Sx) is decomposed into a set of autonomous inter-system pairs (Sx). At this stage, we can explain the unavailability of the primary paths included in a tree by considering that these paths were victims of the same event. And it was determined that this event could have occurred on any of the Inter (Sx) paths.

A ce stade, on a donc pu expliquer toutes les indisponibilités observées, en considérant qu'il y a eu autant d'événements que d'arborescences comportant des chemins indisponibles.  At this stage, we have been able to explain all the observed unavailability, considering that there have been as many events as trees with unavailable paths.

L'étape suivante (étape fi) consiste à comparer les différents ensembles Inter(Sx) obtenus, afin d'estimer si l'indisponibilité des chemins primaires de plusieurs arborescences peut être expliquée par un seul et même événement.  The next step (step fi) consists in comparing the different sets Inter (Sx) obtained, in order to estimate whether the unavailability of the primary paths of several trees can be explained by one and the same event.

Pour ce faire, on utilise, dans le cas considéré, les sous-blocs algorithmiques B3 et B4. Le sous-bloc algorithmique B3 tente d'abord d'expliquer toutes les indisponibilités uniquement au moyen d'événements ayant eu lieu sur des arcs (liens entre deux systèmes autonomes voisins). Le sous-bloc algorithmique B4 est appliqué dans l'exemple considéré à la suite du sous-bloc algorithmique B3 pour essayer d'améliorer le résultat obtenu en fusionnant certains arcs, c'est à dire en localisant les événements au niveau de systèmes autonomes eux-mêmes et non plus d'arcs reliant deux systèmes autonomes. On appelle Arborescence_l l'ensemble des différentes arborescences 15 comportant des chemins primaires indisponibles et associées à des systèmes autonomes. On appelle Expliqués(Sx,Sy) l'ensemble comprenant des systèmes autonomes tel que, pour tout système autonome St de cet ensemble Expliqués(Sx,Sy), l'indisponibilité des chemins primaires dans l'arborescence 20 associée au système autonome St (ie l'indisponibilité des chemins primaires pour atteindre un réseau dans ce système autonome) est due à un événement ayant eu lieu sur l'arc reliant le système autonome Sx au système autonome voisin Sy. A l'étape d'initialisation du sous-bloc algorithmique B3, 25 Expliqués(Sx,Sy) est fixé égal à 0, quel que soit (Sx, Sy). On appelle Equivalents(Sx,Sy) l'ensemble comprenant des arcs reliant cieux systèmes autonomes voisins Sx, Sy (c'est donc l'ensemble des couples (Sx, Sy)) tels qu'un événement survenu sur tout arc de cet ensemble impacte les mêmes arborescences qu'un événement survenu sur l'arc (Sx,Sy). 30 A l'étape d'initialisation du sous-bloc algorithmique B3, Equivalents(Sx,Sy) est fixé égal à 0, quel que soit (Sx, Sy). On appelle Resultattmp, l'ensemble des couples (Equivalents, Expliqués) obtenus à la fin du bloc algorithmique B3. Cet ensemble de couples (Equivalents, Expliqués) vise l'explication des différentes observations à partir d'événements ayant eu lieu au niveau d'arcs seulement. A l'étape d'initialisation du l'iinitialisation de l'algorithme B3, Resultattmp est fixé égal à (0, 0).  To do this, we use, in the case considered, the algorithmic sub-blocks B3 and B4. The algorithmic sub-block B3 first tries to explain all the unavailabilities only by means of events that took place on arcs (links between two neighboring autonomous systems). The algorithmic sub-block B4 is applied in the example considered after the algorithmic sub-block B3 to try to improve the result obtained by merging certain arcs, ie by locating the events at the level of autonomous systems them and not arcs linking two autonomous systems. Arborescence_l is the set of different trees 15 with unavailable primary paths associated with autonomous systems. Explosives (Sx, Sy) are the set comprising autonomous systems such that, for any autonomous system St of this set Explained (Sx, Sy), the unavailability of the primary paths in the tree 20 associated with the autonomous system St ( ie the unavailability of the primary paths to reach a network in this autonomous system) is due to an event having occurred on the arc connecting the autonomous system Sx to the neighboring autonomous system Sy. At the initialization step of the algorithmic sub-block B3, Explained (Sx, Sy) is set equal to 0, whatever (Sx, Sy). Equivalents (Sx, Sy) are called the set of arcs connecting two adjacent autonomous systems Sx, Sy (that is the set of pairs (Sx, Sy)) such as an event occurring on any arc of this set. impacts the same trees as an event occurring on the arc (Sx, Sy). At the initialization step of the algorithmic sub-block B3, Equivalents (Sx, Sy) is set equal to 0, whatever (Sx, Sy). We call Resultattmp, the set of pairs (Equivalents, Explained) obtained at the end of the algorithmic block B3. This set of pairs (Equivalents, Explained) aims to explain the different observations from events that occurred at arcs only. At the initialization stage of the initialization of the algorithm B3, Resultattmp is set equal to (0, 0).

Le sous-bloc algorithmique B3 mis en oeuvre par le module de traitement 12 comprend des instructions mettant en oeuvre les opérations suivantes lors d'une exécution du sous-bloc B3 par des moyens de calcul du module de traitement 12. Tant que Arborescences _1 n'est pas vide, répéter les opérations suivantes : -. Identifier Arbo(Sx) telle que Arbo(Sx)l = Maxsy cArborescence_I IArbo(Sy)I -. Pour chaque couple (Su, Sv) de Ares(Sx) : -Pour chaque Arbo (Sy) e Arborescences_l : - Si (Su, Sv) e Arcs(Sy), alors on ajoute au poids(Su, Sv) le cardinal de l'ensemble Arbo(Sy) et on ajoute le système autonome Sy à l'ensemble Expliqués(Su, Sv). - Identifier (Sa, Sb) l'élément de Arcs(Sx) tel que le poids(Sa, Sb) = MaX(Su,sv)eAres(sx))poids(SU, SV). - Pour chaque élément (Su, Sv) de Ares(Sx) : - Si l'ensemble Expliqués(Su, Sv) est égal à l'ensemble Expliqués(Sa, Sb), alors on ajoute à l'ensemble Equivalent(Sa, Sb) le couple (Su, Sv). - On ajoute alors le couple (Equivalents(Sa, Sb), Expliqués(Sa, Sb)) à l'ensemble des couples Resultattmp. - Puis pour chaque système autonome Su indiqué dans Expliqués(Sa, Sb), on 25 retire Arbo(Su) de Arborescences On obtient ainsi, après l'exécution du sousbloc algorithmique B3, par événement détecté, un couple (Equivalents, Expliqués) où Expliqués représente l'ensemble des arborescences (les arborescences associés aux systèmes autonomes éléments de l'ensemble Expliqués) dont l'indisponibilité 30 des chemins primaires est considérée comme due à l'événement détecté et où Equivalents représente l'ensemble des éléments de topologies (liens entre systèmes autonomes) considérés pouvant être, à probabilité égale, à l'origine de l'événement détecté.  The algorithmic sub-block B3 implemented by the processing module 12 comprises instructions implementing the following operations during an execution of the sub-block B3 by calculation means of the processing module 12. As long as Trees _1 n is not empty, repeat the following operations: -. Identify Arbo (Sx) such as Arbo (Sx) l = Maxsy Arborescence_I IArbo (Sy) I -. For each pair (Su, Sv) of Ares (Sx): -For each Arbo (Sy) e Arborescences_l: - If (Su, Sv) e Arcs (Sy), then we add to the weight (Su, Sv) the cardinal of the set Arbo (Sy) and add the autonomous system Sy to the set Explained (Su, Sv). - Identify (Sa, Sb) the element of Arcs (Sx) such that the weight (Sa, Sb) = MaX (Su, sv) eAres (sx)) weight (SU, SV). - For each element (Su, Sv) of Ares (Sx): - If the set Explained (Su, Sv) is equal to the set Explained (Sa, Sb), then we add to the Equivalent set (Sa, Sb) the couple (Su, Sv). - Then add the pair (Equivalents (Sa, Sb), Explained (Sa, Sb)) to all Resultattmp couples. Then, for each autonomous system Su indicated in Explained (Sa, Sb), Arbo (Su) is removed from Trees. Thus, after the execution of the algorithmic subblock B3, by detected event, a pair (Equivalents, Explained) where Explained represents the set of trees (the trees associated with the autonomous systems elements of the Explained set) whose unavailability of the primary paths is considered as due to the detected event and where Equivalents represents all the elements of topologies ( links between autonomous systems) considered to be, at equal probability, the origin of the detected event.

A ce stade, on a ainsi expliqué les différentes indisponibilités de chemins primaires à partir d'événements localisés sur des arcs entre deux systèmes autonomes. Le sous-bloc algorithmique B4 mis en oeuvre par le module de traitement 12 comprend des instructions mettant en oeuvre les opérations indiquées ci-dessous lors d'une exécution du sous-bloc B4 par des moyens de calcul du module de traitement 12. On appelle Resultatfinal, l'ensemble des couples (Equivalents, Expliques) obtenus à la fin du bloc algorithmique B4, qui vise l'amélioration du résultat de détermination d'événements obtenu par le sous-bloc B3 en fusionnant certains arcs. On affecte la valeur initiale o à l'ensemble Résultatf;nal. On appelle Expliqués(Sx) l'ensemble comprenant des systèmes autonomes tel que, pour tout système autonome St de cet ensemble Expliqués(Sx), l'indisponibilité des chemins primaires dans l'arborescence associée au système autonome St (ie l'indisponibilité des chemins primaires pour atteindre un réseau dans ce système autonome) est due à un événement ayant eu lieu sur le système autonome Sx. Expliqués(Sx) est initialisé à o lors de l'initialisation du sous-bloc algorithmique B4. On affecte la valeur initiale 0 aux poids associés au système autonome Sx, x entier de 1 à 1 soit poids(Sx) = 0 ; Selon B4, tant que l'ensemble Resultattmp n'est pas vide, répéter les opérations suivantes : -• on affecte à la valeur o à un ensemble Noeuds (destiné à contenir des systèmes autonomes) ; -, on identifie le couple (Equivalents(Sa, Sb), Expliqués(Sa, Sb)), élément de Resultattmp, tel que poids(Sa, Sb) = MaxEqujvaIents(su,sv) c Resultattmp poids(Su,Sv). - Pour chaque couple (Su, Sv) de l'ensemble Equivalents(Sa, Sb) : - on ajouter Su et Sv à l'ensemble Noeuds ; - Puis pour chaque élément Su de l'ensemble Noeuds : - pour chaque élément (Equivalents(Su',Sv'), Expliqués(Su',Sv')) de Resultattmp: ù* si Su appartient à au moins un couple de Equivalents(Su',Sv') : - on ajoute au poids(Su) le poids(Su,Sv') ; - on ajoute à l'ensemble Expliqués(Su) le contenu de l'ensemble Expliqués(Su',Sv') ; - on marque (Equivalents(Su',Sv'), Expliqués(Su', Sv')) ; .- on identifie ensuite l'élément Sc de l'ensemble Noeuds tel que poids(ASc) = IMaXSu e Noeuds poids(Su) ;  At this stage, the various unavailabilities of primary paths have been explained from events located on arcs between two autonomous systems. The algorithmic sub-block B4 implemented by the processing module 12 comprises instructions implementing the operations indicated below during an execution of the sub-block B4 by calculation means of the processing module 12. Final result, the set of (Equivalent, Explicit) pairs obtained at the end of the algorithmic block B4, which aims at improving the event determination result obtained by the sub-block B3 by merging certain arcs. We assign the initial value o to the set Resultf; nal. Explained (Sx) is the set comprising autonomous systems such that, for any autonomous system St of this set Explained (Sx), the unavailability of the primary paths in the tree associated with the autonomous system St (ie the unavailability of primary paths to reach a network in this autonomous system) is due to an event that occurred on the autonomous system Sx. Explained (Sx) is initialized to o when initializing the algorithmic sub-block B4. We assign the initial value 0 to the weights associated with the autonomous system Sx, where x is an integer of 1 to 1, ie weights (Sx) = 0; According to B4, as long as the Resultattmp set is not empty, repeat the following operations: - • we assign the value o to a set of nodes (intended to contain autonomous systems); -, we identify the pair (Equivalents (Sa, Sb), Explained (Sa, Sb)), Resultatt element, such as weight (Sa, Sb) = MaxEqujvaIents (su, sv) c Resultatt weight (Su, Sv). For each pair (Su, Sv) of the set Equivalents (Sa, Sb): add Su and Sv to the set of nodes; - Then for each element Su of the set Nodes: - for each element (Equivalent (Su ', Sv'), Explained (Su ', Sv')) of Resultattm: ù * if Su belongs to at least a pair of Equivalents (Su ', Sv'): the weight (Su) is added to the weight (Su, Sv '); - we add to the set Explained (Su) the contents of the set Explained (Su ', Sv'); - we mark (Equivalents (Su ', Sv'), Explained (Su ', Sv')); the element Sc of the set Nodes is then identified as weight (ASc) = IMaXSu e Nodes weight (Su);

-- si l'ensemble Expliqués(Sc) = Expliqués(Sa,Sb) (cela signifie que la décomposition en noeuds ne permet pas d'expliquer plus d'indisponibilités de chemin primaire dues à un même événement) : - on ajoute à l'ensemble Résultatf;nal le couple (Equivalents(Sa, Sb), Expliqués(Sa, Sb)) ; - on retire (Equivalents(Sa, Sb), Expliqués(Sa, Sb)) de l'ensemble Resultattmp ; -. si l'ensemble Expliqués(Sc) # Expkqués(Sa,Sb) (la décomposition en noeuds permet d'expliquer plus d'indisponibilités de chemins primaires) : - pour chaque élément Su de l'ensemble Noeuds : Si Expliqués(Su) = Expliqués(Sc), alors on ajoute à l'ensemble Equivalents(Sc) le système autonome Su ; - puis on ajoute à l'ensemble Resultatfinal le couple (Equivalents (Sc), Expliqués (ASc)) ; et pour chaque élément (Equivalents(Su, Sv), Expliqués(Su, Sv)) marqué de Resultattmp : - on retire (Equivalents(Su, Sv), Expliqués (Su, Sv)) de Resultattmp.  - if the set Explained (Sc) = Explained (Sa, Sb) (this means that the decomposition into nodes does not explain more primary path unavailability due to the same event): - we add to the set Result f; nal the pair (Equivalents (Sa, Sb), Explained (Sa, Sb)); - Remove (Equivalents (Sa, Sb), Explained (Sa, Sb)) from the set Resultattmp; -. if the set Explained (Sc) # Expedited (Sa, Sb) (the decomposition into nodes makes it possible to explain more unavailability of primary paths): - for each element Su of the set Nodes: Si Explained (Su) = Explained (Sc), then we add to the set Equivalents (Sc) the autonomous system Su; - then we add to the set Resultfinal the pair (Equivalents (Sc), Explained (ASc)); and for each element (Equivalents (Su, Sv), Explained (Su, Sv)) marked of Resultattm: - one removes (Equivalents (Su, Sv), Explained (Su, Sv)) of Resultattmp.

On obtient ainsi un couple (Equivalents, Expliqués) par événement détecté où Expliqués représente l'ensemble des arborescences dont l'indisponibilité des chemins primaires est considérée comme due à l'événement détecté et où Equivalents représente l'ensemble des éléments de topologies (liens entre systèmes autonomes et systèmes autonomes) considérés pouvant être à l'origine de l'événement détecté, à probabilité égale.  We thus obtain a couple (Equivalents, Explained) by detected event where Explained represents the set of trees whose unavailability of the primary paths is considered as due to the detected event and where Equivalents represents all the elements of topologies (links between autonomous systems and autonomous systems) considered to be at the origin of the detected event, with equal probability.

Dans un mode de réalisation, le module de traitement 12 est adapté pour déterminer dans une étape g/, de générer ou non, une alarme relative à un événement détecté, en vue d'indiquer à un centre de maintenance d'un système autonome, qu'un événement a eu lieu sur le système autonome ou sur un lien entre ce système autonome et un système autonome voisin, suite à la localisation déterminée selon le procédé décrit ci-dessus de l'événement (c'est-à-dire que le système autonore, ou un lien entre ce système autonome et son voisin a été identifié dans un ensemble Equivalents d'un couple de l'ensemble Résultatfinal)• Pour cela, une étape de décision, basée par exemple sur une inférence bayésienne, est utilisée pour générer une alarme dès que l'on constate que l'on ne peut pas avoir de meilleure identification de l'événement même en recevant encore des messages ou dès qu'il devient peu probable que des messages à venir permettent de préciser l'identification. Cette décision est effectuée en fonction de la probabilité de recevoir des messages indiquant l'indisponibilité de chemins primaires pour une arborescence donnée, étant donné le nombre de chemins primaires déjà indisponibles pour cette arborescence et la durée depuis la dernière réception d'un message indiquant l'indisponibilité d'un chemin primaire pour cette arborescence. Le sous-bloc algorithmique B5 mis en oeuvre par le module de traitement 12 comprend des instructions mettant en oeuvre les opérations indiquées ci-dessous lors d'une exécution du sous-bloc B5 par des moyens de calcul du module de traitement 12 : - pour chaque couple (Equivalents, Expliqués) de Resultatf;nal (chacun de ces couples correspondant donc à un événement distinct) : - on calcule la probabilité de pouvoir préciser cet événement, en fonction des prob(Sx), fournies par le sous-bloc algorithmique B2, des éléments Sx de l'ensemble Expliqués; - si cette probabilité est faible (par exemple si elle est inférieure à une valeur seuil de 5%), on génère une alarme pour cet événement et on retire le couple (Equivalents, Expliqués) de Resultat final.  In one embodiment, the processing module 12 is adapted to determine in a step g /, to generate or not, an alarm relating to a detected event, in order to indicate to a maintenance center of an autonomous system, that an event occurred on the autonomous system or on a link between that autonomous system and a neighboring autonomous system, following the location determined by the above-described process of the event (i.e. the autonore system, or a link between this autonomous system and its neighbor has been identified in a set Equivalents of a pair of the set Final result) • For this, a decision step, based for example on a Bayesian inference, is used to generate an alarm as soon as we see that we can not have a better identification of the event even while receiving messages or when it becomes unlikely that future messages can clarify the id entification. This decision is made based on the probability of receiving messages indicating the unavailability of primary paths for a given tree, given the number of primary paths already unavailable for this tree and the time since the last receipt of a message indicating unavailability of a primary path for this tree. The algorithmic sub-block B5 implemented by the processing module 12 comprises instructions implementing the operations indicated below during an execution of the sub-block B5 by calculation means of the processing module 12: each pair (Equivalents, Explained) of Resultatf; nal (each of these pairs therefore corresponding to a distinct event): - we calculate the probability of being able to specify this event, according to the prob (Sx), provided by the algorithmic sub-block B2, elements Sx of the set Explained; if this probability is low (for example if it is lower than a threshold value of 5%), an alarm is generated for this event and the pair (Equivalents, Explained) of Final result is withdrawn.

Ainsi une solution de détermination d'événements selon l'invention permet de détecter, d'identifier et de localiser des événements au sein d'un réseau global comprenant plusieurs réseaux qui sont exploités sans unité.  Thus, an event determination solution according to the invention makes it possible to detect, identify and locate events within a global network comprising several networks that are operated without a unit.

La détermination des événements selon l'invention est effectuée sans utiliser de valeurs seuils arbitraires qui peuvent fausser les résultats. En outre, les événements peuvent être déterminés en temps réel, au fil de l'arrivée des messages de mise à jour du cheminement. Les messages ne doivent pas être d'abord groupés avant d'effectuer les calculs. La solution selon l'invention permet de réduire considérablement la puissance de calcul nécessaire, puisqu'on réduit le nombre de messages considérés et puisqu'on limite les données manipulées aux données concernant les intersections de chemins primaires indisponibles au sein des arborescences. La solution permet ainsi une réactivité accrue lors de pannes : les exploitants du réseau pourront diagnostiquer plus rapidement et plus efficacement les pannes, sans être obligés d'attendre les plaintes des clients. Hormis la détection de pannes, les exploitants du réseau pourront également isoler des problèmes récurrents, mais non cruciaux, qui affectent la qualité du service offert à un ou quelques clients en particulier. Ces phénomènes sont aujourd'hui masqués par le flot des messages reçus. A plus long terme, les résultats fournis par cette invention, permettront d'obtenir une meilleure compréhension du routage BGP. On pourra notamment identifier les motifs d'interconnexion "à problèmes" qui impactent les performances du routage. Cela permettra d'optimiser le routage en corrigeant la structure d'interconnexion existante, mais aussi d'anticiper et donc d'éviter des problèmes lors d'une restructuration partielle d'un réseau ou lors de la création d'un nouveau réseau.  The determination of the events according to the invention is carried out without using arbitrary threshold values which can distort the results. In addition, events can be determined in real time, as routing update messages arrive. Messages should not be grouped together before performing the calculations. The solution according to the invention makes it possible to considerably reduce the computing power required, since the number of messages considered is reduced and the data manipulated is limited to data concerning intersections of primary paths that are unavailable within the trees. The solution enables increased responsiveness during outages: network operators will be able to diagnose faults more quickly and efficiently, without having to wait for customer complaints. With the exception of fault detection, network operators will also be able to isolate recurring but non-critical issues that affect the quality of service provided to one or more specific customers. These phenomena are today masked by the flow of messages received. In the longer term, the results provided by this invention will provide a better understanding of BGP routing. In particular, it will be possible to identify the "problem" interconnection patterns that affect the performance of the routing. This will optimize the routing by correcting the existing interconnection structure, but also to anticipate and thus avoid problems during a partial restructuring of a network or when creating a new network.

L'invention permet également une évaluation des systèmes autonomes. En identifiant les systèmes autonomes les plus fréquemment à l'origine d'événements ayant perturbés le routage, il pourra être décidé le cas échéant de proscrire les routes passant par ces systèmes autonomes et dans le cas de systèmes autonomes voisins il pourra être décidé de reconsidérer les rnodalités de l'accord d'interconnexion passé avec lui. L'invention a été décrite ci-dessus en référence au protocole BGP utilisé entre les routeurs des systèmes autonomes de l'internet. Néanmoins, l'invention est applicable à des messages révélateurs de modifications de chemins émis selon tout autre protocole de communication. Dans un mode de réalisation, des alarmes et autres mesures pour corriger les événements peuvent être prises dès qu'une intersection de chemins primaires a été calculée pour au moins une arborescence, l'événement affectant cette arborescence étant alors localisé sur cette intersection (les étapes effectuées ultérieurement permettant d'affiner si nécessaire le diagnostic, en identifiant précisément l'événement comme provenant d'une liaison entre deux systèmes autonomes ou d'un système autonome lui-même). Les algorithmes utilisés ci-dessus pour déterminer la localisation à partir des intersections de chemins primaires calculés ont été décrits à titre d'exemples. D'autres méthodes peuvent bien sûr être utilisées.  The invention also allows an evaluation of the autonomous systems. By identifying the autonomous systems most frequently at the origin of events having disturbed the routing, it will be possible to decide if necessary to proscribe the roads passing by these autonomous systems and in the case of neighboring autonomous systems it may be decided to reconsider the details of the interconnection agreement with him. The invention has been described above with reference to the BGP protocol used between the routers of the autonomous systems of the Internet. Nevertheless, the invention is applicable to messages revealing changes in paths issued according to any other communication protocol. In one embodiment, alarms and other measures for correcting events can be taken as soon as an intersection of primary paths has been computed for at least one tree, the event affecting that tree being then located on this intersection (the steps performed later to refine the diagnosis if necessary, identifying the event precisely as coming from a link between two autonomous systems or from an autonomous system itself). The algorithms used above to determine the location from the calculated primary path intersections have been described as examples. Other methods can of course be used.

Claims (9)

REVENDICATIONS 1. Procédé de détermination d'événements au sein d'un réseau global comprenant une pluralité de réseaux regroupés dans des entités respectives (S1,..., Sn) et des modules de cheminement (ri, ...,rp) adaptés pour échanger entre eux des messages de mise à jour de cheminement, un message de mise à jour de cheminement envoyé par un module de cheminement indiquant un réseau accessible parmi la pluralité de réseaux et un chemin actuellement retenu par le module de cheminement pour atteindre le réseau indiqué et comprenant une liste ordonnée d'entités, ledit procédé comprenant les étapes consistant à : associer, dans une phase préalable, un chemin de référence respectif, dit chemin primaire, à chaque module de cheminement pour chaque réseau accessible par ledit module ; en fonction de messages de mise à jour échangés par les modules de cheminement, déterminer des chemins primaires indisponibles, un chemin primaire étant indisponible lorsque, dans un message envoyé par un module de cheminement, le chemin indiqué comme actuellement retenu par le module de cheminement pour atteindre le réseau indiqué est différent du chemin primaire associé au module de cheminement pour ledit réseau indiqué ; regrouper les chemins primaires indisponibles déterminés en arborescences, des chemins primaires appartenant à une même arborescence lorsqu'ils permettent d'atteindre un ou des réseaux d'une même entité ; pour au moins une arborescence, calculer l'intersection des chemins primaires indisponibles regroupés dans l'arborescence ; 20 25estimer la localisation d'au moins un événement en fonction de ladite intersection calculée.  A method for determining events within a global network comprising a plurality of networks grouped into respective entities (S1, ..., Sn) and routing modules (ri, ..., rp) adapted for exchanging routing update messages with each other, a routing update message sent by a routing module indicating an accessible network among the plurality of networks and a path currently retained by the routing module to reach the indicated network. and comprising an ordered list of entities, said method comprising the steps of: associating, in a prior phase, a respective reference path, said primary path, with each path module for each network accessible by said module; based on update messages exchanged by the routing modules, determining unavailable primary paths, a primary path being unavailable when, in a message sent by a routing module, the path indicated as currently retained by the routing module for reaching the indicated network is different from the primary path associated with the routing module for said indicated network; group the unavailable primary paths determined in trees, primary paths belonging to the same tree when they make it possible to reach one or more networks of the same entity; for at least one tree, calculating the intersection of the unavailable primary paths grouped in the tree; Estimating the location of at least one event according to said calculated intersection. 2. Procédé selon la revendication 1, selon lequel, les modules de cheminement (ri, ...,rn) échangent des messages conformément au protocole BGP.  2. Method according to claim 1, wherein the routing modules (ri, ..., rn) exchange messages according to the BGP protocol. 3. Procédé selon la revendication 1 ou la revendication 2, selon lequel pour chaque arborescence regroupant des chemins primaires indisponibles, on calcule l'intersection desdits chemins primaires indisponibles et on estime la localisation d'au moins un événement en fonction desdites intersections respectives calculées.  3. Method according to claim 1 or claim 2, wherein for each tree grouping unavailable primary paths, the intersection of said unavailable primary paths is calculated and the location of at least one event is estimated as a function of said calculated respective intersections. 4. Procédé la revendication 3, selon lequel on compare entre elles les intersections calculées pour les arborescences respectives en vue d'estimer si l'indisponibilité des chemins primaires de plusieurs arborescences est explicable par un même événement.  4. Method according to claim 3, in which the intersections calculated for the respective trees are compared with one another in order to estimate whether the unavailability of the primary paths of several trees is explicable by the same event. 5. Procédé selon la revendication 4, selon lequel la phase de comparaison des intersections comprend une étape selon laquelle on considère que les événements ont lieu uniquement au niveau de liaisons entre entités.  5. The method according to claim 4, wherein the intersection comparison phase comprises a step according to which events are considered to take place only at the level of links between entities. 6. Procédé selon la revendication selon la revendication 4 ou la revendication 5, selon lequel la phase de comparaison des intersections comprend une étape selon laquelle on considère que les événements ont lieu uniquement au niveau des entités et non au niveau des liaisons entre entités.  The method according to the claim of claim 4 or claim 5, wherein the intersection comparison phase comprises a step of considering that the events occur only at the entity level and not at the inter-entity links. 7. Procédé selon l'une des revendications précédentes, selon lequel une décision de générer une alarme relative à un événement dont la localisation a été estimée est prise en fonction d'au moins une probabilité de collecterultérieurement des messages de mise à jour annonçant l'indisponibilité de chemins primaires dans une arborescence comprenant des chemins primaires indisponibles du fait dudit événement, étant donné le nombre de chemins primaires déjà indisponibles pour cette arborescence et la durée depuis la dernière réception d'un message indiquant l'indisponibilité d'un chemin primaire pour cette arborescence.  7. Method according to one of the preceding claims, wherein a decision to generate an alarm relating to an event whose location has been estimated is taken as a function of at least a probability of subsequently collecting update messages announcing the unavailability of primary paths in a tree including primary paths unavailable due to said event, given the number of primary paths already unavailable for this tree and the time since the last reception of a message indicating the unavailability of a primary path for this tree. 8. Programme d'ordinateur à installer dans un dispositif de détermination d'événements (10) au sein d'un réseau global comprenant une pluralité de réseaux regroupés dans des entités respectives (S1,..., Sn) et des modules de cheminement (ri, ...,rp) adaptés pour échanger entre eux des messages de mise à jour de cheminement, un message de mise à jour de cheminement envoyé par un module de cheminement indiquant un réseau accessible parmi la pluralité de réseaux et un chemin actuellement retenu par le module de cheminement pour atteindre le réseau indiqué et comprenant une liste ordonnée d'entités, ledit programme comprenant des instructions pour mettre en oeuvre les étapes qui incombent au dispositif, d'un procédé selon l'une des revendications précédentes lors d'une exécution du programme par des moyens de traitement dudit dispositif.  A computer program to be installed in an event determination device (10) within a global network comprising a plurality of networks grouped into respective entities (S1, ..., Sn) and tracking modules. (ri, ..., rp) adapted to exchange routing update messages with each other, a routing update message sent by a routing module indicating an accessible network among the plurality of networks and a path currently selected by the routing module to reach the indicated network and comprising an ordered list of entities, said program comprising instructions for implementing the steps which are incumbent on the device, a method according to one of the preceding claims when a program execution by processing means of said device. 9. Dispositif (10) de détermination d'événements au sein d'un réseau global comprenant une pluralité de réseaux regroupés dans des entités respectives (Si,..., Sn) et des modules de cheminement (ri,  9. Device (10) for determining events within a global network comprising a plurality of networks grouped in respective entities (Si, ..., Sn) and routing modules (ri, .,rp) adaptés pour échanger entre eux des messages de mise à jour de cheminement, un message de mise à jour de cheminement envoyé par un module de cheminement indiquant un réseau accessible parmi la pluralité de réseaux et un chemin actuellement retenu par le module de cheminement pour atteindre le réseau indiqué et comprenant une liste ordonnée d'entités, un chemin de référence respectif, dit chemin primaire, ayant été associé 30 dans une phase préalable, à chaque module de cheminement pour chaque réseau accessible par ledit module ; 5 10 15ledit dispositif comprenant les moyens suivants : des moyens pour, en fonction de messages de mise à jour échangés par les modules de cheminement, déterminer des chemins primaires indisponibles, un chemin primaire étant indisponible lorsque, dans un message envoyé par un module de cheminement, le chemin indiqué comme actuellement retenu par le module de cheminement pour atteindre le réseau indiqué est différent du chemin primaire associé au module de cheminement pour ledit réseau indiqué ; des moyens pour regrouper les chemins primaires indisponibles déterminés en arborescences, des chemins primaires appartenant à une même arborescence lorsqu'ils permettent d'atteindre un ou des réseaux d'une même entité ; des moyens pour, pour au moins une arborescence, calculer l'intersection des chemins primaires indisponibles regroupés dans l'arborescence ; des moyens pour estimer la localisation d'au moins un événement en fonction de ladite intersection calculée...DA1: 20080718  ., rp) adapted to exchange routing update messages with each other, a routing update message sent by a routing module indicating an accessible network among the plurality of networks and a path currently held by the module of the routing module. routing to reach the indicated network and comprising an ordered list of entities, a respective reference path, said primary path, having been associated in a prior phase, with each routing module for each network accessible by said module; Said device comprising the following means: means for, depending on update messages exchanged by the routing modules, determining unavailable primary paths, a primary path being unavailable when, in a message sent by a routing module , the path indicated as currently retained by the routing module to reach the indicated network is different from the primary path associated with the routing module for said indicated network; means for grouping the unavailable primary paths determined in trees, primary paths belonging to the same tree when they make it possible to reach one or more networks of the same entity; means for, for at least one tree, calculating the intersection of the unavailable primary paths grouped in the tree; means for estimating the location of at least one event according to said calculated intersection ... DA1: 20080718
FR0700236A 2007-01-12 2007-01-12 Event e.g. failure, determining method for e.g. Internet network, involves calculating intersection of regrouped paths for trees, and estimating localization of event estimated according to calculated intersection Withdrawn FR2911457A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0700236A FR2911457A1 (en) 2007-01-12 2007-01-12 Event e.g. failure, determining method for e.g. Internet network, involves calculating intersection of regrouped paths for trees, and estimating localization of event estimated according to calculated intersection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0700236A FR2911457A1 (en) 2007-01-12 2007-01-12 Event e.g. failure, determining method for e.g. Internet network, involves calculating intersection of regrouped paths for trees, and estimating localization of event estimated according to calculated intersection

Publications (1)

Publication Number Publication Date
FR2911457A1 true FR2911457A1 (en) 2008-07-18

Family

ID=38284083

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0700236A Withdrawn FR2911457A1 (en) 2007-01-12 2007-01-12 Event e.g. failure, determining method for e.g. Internet network, involves calculating intersection of regrouped paths for trees, and estimating localization of event estimated according to calculated intersection

Country Status (1)

Country Link
FR (1) FR2911457A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768501A (en) * 1996-05-28 1998-06-16 Cabletron Systems Method and apparatus for inter-domain alarm correlation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768501A (en) * 1996-05-28 1998-06-16 Cabletron Systems Method and apparatus for inter-domain alarm correlation

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
FELDMANN A ET AL: "LOCATING INTERNET ROUTING INSTABILITIES", COMPUTER COMMUNICATION REVIEW, ACM, NEW YORK, NY, US, vol. 34, no. 4, October 2004 (2004-10-01), pages 205 - 218, XP001224050, ISSN: 0146-4833 *
PEI ET AL: "An analysis of convergence delay in path vector routing protocols", COMPUTER NETWORKS, ELSEVIER SCIENCE PUBLISHERS B.V., AMSTERDAM, NL, vol. 50, no. 3, 22 February 2006 (2006-02-22), pages 398 - 421, XP005185895, ISSN: 1389-1286 *
WONG T ET AL: "Internet Routing Anomaly Detection and Visualization", DEPENDABLE SYSTEMS AND NETWORKS, 2005. DSN 2005. PROCEEDINGS. INTERNATIONAL CONFERENCE ON YOKOHAMA, JAPAN 28-01 JUNE 2005, PISCATAWAY, NJ, USA,IEEE, 28 June 2005 (2005-06-28), pages 172 - 181, XP010817793, ISBN: 0-7695-2282-3 *

Similar Documents

Publication Publication Date Title
Aceto et al. A comprehensive survey on internet outages
Dhamdhere et al. Inferring persistent interdomain congestion
Dhamdhere et al. Twelve years in the evolution of the internet ecosystem
EP2081321A2 (en) Sampling apparatus distinguishing a failure in a network even by using a single sampling and a method therefor
JP4444107B2 (en) Method and system for evaluating connectivity of data communication network and related information technology program
US7889666B1 (en) Scalable and robust troubleshooting framework for VPN backbones
EP1743454A1 (en) Performance measurement in a packet transmission network
WO2005122473A1 (en) Performance measurement in a packet transmission network
EP3189636A1 (en) Method of monitoring and of warning of routing configuration in a cluster comprising static communication links and computer program implementing this method
FR2903548A1 (en) METHOD FOR AUTOMATICALLY CONTROLLING A TELECOMMUNICATIONS NETWORK WITH LOCAL KNOWLEDGE MUTUALIZATION
CN111600805A (en) Bayes-based power data network congestion link inference algorithm
EP3624402A1 (en) Method for detecting illegal sources responsible for an attack distributed by denial-of-service through flooding of link and associated installation
FR2911457A1 (en) Event e.g. failure, determining method for e.g. Internet network, involves calculating intersection of regrouped paths for trees, and estimating localization of event estimated according to calculated intersection
FR2848757A1 (en) Tagged data routing path determining device for communication network, has treatment unit for calculating possible path between outgoing and destination node to find ideal path with respect to performance of paths on criterions
Shariati et al. Monitoring and data analytics: Analyzing the optical spectrum for soft-failure detection and identification
Kajackas et al. Internet infrastructure topology assessment
FR2980939A1 (en) MULTI-SKIP ROUTING PROTOCOL
EP3231137B1 (en) Overlay network for communication network connecting data centres of a cloud services provider
WO2020221779A1 (en) Methods and devices for measuring reputation in a communication network
EP3627795A1 (en) Method for detecting and filtering illegal streams in a satellite communication network
EP4280560A1 (en) Method for detecting routing anomalies between autonomous systems
FR2921533A1 (en) METHOD FOR ROUTING DATA DISTRIBUTED IN A NETWORK, FAULT TOLERANT
EP2273727A1 (en) Method for obtaining service availability information in a communication network, apparatus and corresponding computer program
FR2909502A1 (en) Data packet traffic monitoring method for internet protocol telecommunication network, involves arranging collected data packet based on number port, obtaining reference traffic model, and comparing two entropy values with each other
Tashiro et al. Following the Data Trail: An Analysis of IXP Dependencies

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20081029