FR 2903548 A1 20080111 FR 0606101 A 20060705 1 PROCEDE DE PILOTAGE AUTOMATIQUE D'UN RESEAU DE TELECOMMUNICATIONS AVEC MUTUALISATION LOCALE DE CONNAISSANCES Le domaine de l'invention est celui du pilotage automatique d'un réseau de télécommunication. L'invention concerne plus précisément un procédé de mutualisation locale de connaissances destiné à être utilisé pour réaliser le pilotage automatique d'un réseau de télécommunications. Un réseau de télécommunication comprend un grand nombre de liens (tels que des liens physiques ou hertziens) et d'équipements (tels que des routeurs de coeur ou de bord, des commutateurs, des pare-feux, des middle box, des terminaux, etc.). Ces équipements sont chargés de nombreuses tâches de contrôle du réseau, telles que des tâches de routage, de filtrage, de surveillance, etc. Ces tâches de contrôle nécessitent pour leur bon fonctionnement de disposer d'informations de diverses natures portant sur les liens et les autres équipements du réseau (par exemple la charge, état de fonctionnement û en service/hors service û de liens ou d'équipements, détection de trafics illicites, etc.), et plus généralement sur l'ensemble des objets qui sont pris en charge par les processus de gestion et de contrôle de réseau. Par exemple, afin de pouvoir correctement effectuer une tâche de routage, un équipement doit connaître la charge ou l'indisponibilité des liens et des autres équipements situés dans le réseau (la connaissance de l'état d'un lien étant détenue par les équipements connectés à chaque extrémité du lien). Les tâches de contrôle dans les équipements classiques présentent un certain nombre d'inconvénients qui sont détaillés ci-après. Non-mutualisation Dans les équipements classiques, les tâches de contrôle sont réalisées de manière indépendante les unes des autres. Ainsi, chaque tâche de 2903548 2 contrôle collecte et représente, indépendamment des autres, les informations qui lui sont nécessaires. Mais les différentes tâches nécessitent souvent de collecter les mêmes informations. 5 Ceci à pour effet de grever les performances globales du réseau du fait de nombreux échanges similaires, et de surcharger les équipements du fait du fait d'opérations redondantes. Portée globale des connaissances Par ailleurs, dans les équipements classiques, la portée des 10 informations est le plus souvent globale. Ainsi, dans de nombreux cas, chaque noeud du réseau est tenu informé de toute modification survenant dans le réseau. Par exemple, le routage dynamique de type OSPF ( Open Shortest Path First ) nécessite de répercuter à tout le réseau les changements 15 survenant sur tout lien auquel un équipement est connecté. Tout équipement du réseau doit alors être tenu au courant d'une grande quantité d'informations, pas nécessairement pertinentes. Cette particularité rend impossible l'extension sans modification des architectures réseau (le passage à l'échelle) car elle provoque une grande 20 quantité d'échanges entre les équipements et implique des capacités de stockage et de traitement très importantes. Hétérogénéité des connaissances Dans les équipements classiques, du fait de l'indépendance des tâches de contrôle, les différentes informations utiles au contrôle sont représentées 25 d'une façon très disparate. Cette hétérogénéité rend difficile la conception de mécanismes de pilotage qui consistent à automatiser les décisions de contrôle de façon cohérente ou encore à réaliser de façon concertée un méta-contrôle (mécanisme de contrôle du contrôle) puisque les différents mécanismes de 30 contrôle doivent prendre en compte des données de nature différentes selon des formats trop divers. 2903548 3 PRESENTATION DE L'INVENTION L'invention a pour objectif de s'affranchir des inconvénients susmentionnés en relation avec les équipements classiques (nonmutualisation, portée globale, hétérogénéité). 5 Elle propose à cet effet une mutualisation locale des connaissances destinées à être utilisées pour alimenter les tâches de contrôle. Plus précisément, et selon un premier aspect, l'invention concerne un procédé de pilotage d'un réseau de télécommunications comportant des équipements chargés de réaliser des tâches de contrôle du réseau, 10 caractérisé en ce que : on élabore pour chaque équipement une base de connaissances destinée à stocker, sous la forme d'éléments dénommés faits, des informations requises pour que l'équipement réalise les tâches de contrôle dont il est chargé ; 15 - on associe un voisinage à chaque équipement ; - on mutualise avec une portée délimitée les faits stockés dans les différentes bases de connaissances en mettant en oeuvre pour chaque équipement une diffusion des faits stockés dans la base de connaissances dudit équipement vers d'autres équipements du réseau 20 identifiés par le voisinage associé audit équipement. Certains aspects préférés, mais non limitatifs, de ce procédé sont les suivants : - le voisinage associé à un équipement est un voisinage physique correspondant à un ensemble d'équipements du réseau situés à une 25 distance de n sauts à partir dudit équipement ; - le voisinage associé à un équipement est un voisinage logique correspondant à un ensemble d'équipements du réseau inclus dans une liste d'équipements ; - on met régulièrement à jour les bases de connaissances ; 2903548 4 - on associe en outre un mode de diffusion à chaque équipement, et la transmission des faits en vue de la mutualisation est réalisée en fonction du mode de diffusion associé audit équipement ; - le mode de diffusion est un mode parmi une diffusion directe, une 5 diffusion par saut, et une diffusion de type gradient par itération ; le procédé est utilisé pour le pilotage d'une réservation de ressources sur des chemins d'un réseau de télécommunications, avec pour voisinage un voisinage physique, avec pour faits des éléments de topologie métrée permettant de connaître les M chemins les plus courts pour chaque 10 équipement destination, et avec pour taches de contrôle le calcul d'un indicateur reflétant la correspondance entre les besoins d'une requête en ouverture d'un chemin et les capacités de chacun des M chemins ; le procédé est utilisé pour une défense contre une attaque de type déni de service, avec pour voisinage, un voisinage logique constitué des 15 routeurs de bord du réseau ; - les faits peuvent être des histogrammes d'adresses de destination réalisés à partir des adresses de destination dans les routeurs de bord du réseau, et les taches de contrôle peuvent consister à surveiller le dépassement de seuil pour le nombre de messages à 20 destination d'une même adresse ; le pilotage peut consister à supprimer les messages en direction d'une adresse pour laquelle ledit seuil est dépassé. Selon Sun autre aspect, l'invention concerne un équipement d'un réseau de télécommunications caractérisé en ce qu'il comporte des moyens pour 25 mettre en oeuvre le procédé selon le premier aspect de l'invention. Selon encore un autre aspect, l'invention concerne un réseau de télécommunications comportant des moyens pour mettre en oeuvre le procédé selon le premier aspect de l'invention. D'autres aspects, buts et avantages de la présente invention 30 apparaîtront mieux à la lecture de la description détaillée suivante de formes 2903548 5 de réalisation préférées de celle-ci, donnée à titre d'exemple non limitatif, et faite en référence aux dessins annexés sur lesquels : - la figure 1 est un schéma représentant un voisinage physique avec n=1 ; 5 - la figure 2 est un schéma représentant un voisinage logique correspondant à une liste de routeurs de bord ; - la figure 3 est un schéma représentant le pilotage d'un réseau MPL.S/GMPLS avec trois chemins ouverts ; - la figure 4 est un schéma représentant une attaque DDOS 10 provenant de quatre routeurs de bord. Base de connaissances Dans le cadre de l'invention, toutes les informations requises par les tâches de contrôles d'un équipement sont représentées de manière uniforme dans une base de connaissances maintenue au niveau de l'équipement. 15 Cette base peut, par exemple, être maintenue sous un format tel que RDF ('Resource Description Format') ou KIF ('Knowledge Interchange Format'). Cette base est constituée d'éléments structurés dénommés faits . Une base de connaissances pourra par exemple contenir les faits suivants : 20 -surcharge des noeuds voisins, - surcharges des liens voisins, - état des liens voisins (hors service ou non), - état des noeuds voisins (hors service ou non), - histogramme des adresses les plus fréquentes, 25 -nombre d'alarmes sur les noeuds voisins. Un voisinage est associé à chaque équipement, et permet de caractériser la portée d'un fait. Ce voisinage est défini comme suit. Contrairement au cas des équipements classiques, dans le cadre de l'invention les faits ne portent pas sur l'ensemble du réseau mais sur un 30 sous-ensemble des équipements du réseau. Ce sous-ensemble correspond à un voisinage topologique physique ou logique selon la nature du fait. 2903548 6 Un voisinage physique d'un équipement donné pourra correspondre à tous les équipements situés à une distance de n sauts autour de celui-ci à partir de liens physiques. Un voisinage logique pourra regrouper un ensemble arbitraire 5 d'équipements. II correspond ainsi à un ensemble d'équipements du réseau inclus dans une liste d'équipements. Un voisinage logique peut être donné par configuration ou encore par abonnement d'un équipement auprès d'un autre. Deux exemples de voisinages sont les suivants. 10 Un voisinage physique de l'équipement A, avec n=2, regroupe tous les équipements reliés physiquement à l'équipement A ainsi que tous les équipements reliés aux équipements reliés à l'équipement A ; On a représenté de manière schématique sur la figure 1 un voisinage physique Vp de l'équipement A avec n=1. Ce voisinage logique regroupe les 15 équipements El reliés physiquement à l'équipement A par des liens représentés sous la forme de traits pleins sur la figure 1. Un voisinage logique de l'équipement A peut correspondre à une liste de routeurs de bord Rb. Un tel voisinage logique est représenté de manière schématique sur la figure 2. 20 Mutualisation locale des bases de connaissances On mutualise avec une portée délimitée les faits stockés dans les différentes bases de connaissances en mettant en oeuvre pour chaque équipement une diffusion des faits stockés dans la base de connaissances dudit équipement vers d'autres équipements du réseau identifiés par le 25 voisinage associé audit équipement. En d'autres termes, les informations stockées dans les bases de connaissances sont mutualisées par transmission des informations d'un équipement vers ses voisins. Un équipement va ainsi transmettre chaque fait de sa base de 30 connaissances à ses voisins. Plus précisément, un équipement transmet ses faits à ses voisins identifiés par le voisinage associé audit équipement. 2903548 7 Cette transmission peut s'effectuer selon différentes variantes ; elle est préférentiellement réalisée par diffusion. On notera qu'outre un voisinage, un mode de diffusion peut également être associé à chaque équipement. 5 Ainsi la diffusion des faits d'un équipement A vers ses voisins (identifiés par le voisinage) est réalisée en fonction du mode de diffusion associé à l'équipement A. A titre d'exemples de mode de diffusion, on peut citer : - diffusion directe : les faits sont diffusés à tous les voisins directs ; 10 - diffusion par saut : les faits sont diffusés à des voisins qui eux- mêmes diffusent à leurs propres voisins et ainsi de suite jusqu'à arriver à n sauts ; - gradient par itération ; les faits sont diffusées à un certain nombre de noeuds obtenus par itération suivant la méthode du gradient. 15 La diffusion des informations de l'équipement A à destination des autres équipements voisins se fait à l'initiative de A, à intervalle régulier. La durée de l'intervalle peut varier selon la nature du fait. A titre d'exemple, les instants de diffusion peuvent être synchrones si les faits se produisent régulièrement, avec un intervalle dépendant des 20 mesures effectuées pour récupérer les informations. Les instants de diffusion peuvent également être asynchrones, toujours en fonction des mesures : par exemple, à chaque relevé de mesures, une diffusion est effectuée. Tâches de contrôle par voisinage L'existence de la base de connaissances mutualisées permet 25 d'alimenter des tâches de contrôle avec des connaissances pertinentes. Les connaissances disponibles ont effectivement une grande fraîcheur car elles sont collectées dans le voisinage de l'équipement ; elles sont en outre adaptées à la tâche de contrôle. Pilotage 30 Le pilotage automatique consiste à mettre en oeuvre des tâches de contrôle alimentées à des intervalles de temps ad hoc, en connaissances 2903548 8 cohérentes provenant des bases de connaissances mutualisées ayant une portée délimitée par des voisinages. On notera que l'on met en oeuvre des mécanismes de mise à jour de la base de connaissances mutualisées. 5 La base de connaissances mutualisées alimente les taches de contrôle du réseau de télécommunications de façon coordonnée puisque les informations sont fraîches et pertinentes. Deux exemples de pilotage d'un réseau de télécommunications sont présentés ci-après. On relèvera que si toutes les tâches de contrôle du 10 réseau sont alimentées par les bases de connaissances mutualisées reprenant l'ensemble des informations nécessaires, un pilotage global et cohérent du réseau de télécommunications est obtenu. Les deux exemples présentés ci-après concernent plus précisément : - le pilotage de la réservation de ressources sur les chemins d'un 15 réseau MPLS/GMPLS ; et - le pilotage d'une défense contre une attaque de type DOS/DDOS. Pilotaqe de l'ouverture des routes dans un réseau MPLS/GMPLS Dans le cadre des réseaux MPLS ( Multi-Protocol Label Switching 20 /GMPLS ( Generalized MPLS ), le pilotage préconisé correspond à l'ouverture de chemins au fil de l'eau et à la réservation sur lesdits chemins d'une certaine quantité de ressources pour une connexion ou un ensemble de connexions. On trouvera à ce titre sur la figure 3 un schéma d'un réseau 25 MPLS/GMPLS avec trois chemins ouverts entre un équipement A et un équipement B. II est possible d'optimiser les réseaux MPLS/GMPLS grâce à ce pilotage automatique dès lors que chaque chemin Cl, C2, C3 est ouvert à bon escient et que les ressources nécessaires sont réservées et allouées par 30 les tâches de contrôle alimentées avec les informations des bases de connaissances mutualisées. 2903548 9 Dans cette perspective, le pilotage consiste à ouvrir lesdits chemins, au fil de l'eau, au fur et à mesure que les requêtes de demande d'ouverture se présentent au réseau de télécommunications. L'objectif est de choisir pour chaque requête le chemin qui permettra de minimiser la probabilité de rejeter 5 de futures requêtes. Un problème concerne le provisionnement des connaissances nécessaires au contrôle et utiles pour faire les bons choix. La plupart des travaux publiés sur le sujet font l'impasse sur cette question en tenant pour acquis que les informations utiles sont disponibles, là où elles sont utilisées. 10 Mais cette hypothèse est mise à mal par les études et expérimentations réalisées à large échelle. En effet, cela implique une architecture centralisée ou bien une architecture décentralisée à information globale. Dans le premier cas, il est communément admis que la centralisation pose un problème crucial de passage à l'échelle. Il est en effet bien 15 compréhensible que si les capacités de calcul, de stockage, et de traitement de données sont bornées et centralisées, on se confronte à deux types de risque inacceptables. Non seulement le risque de saturation est d'autant plus grand que le réseau est étendu et fortement dynamique, mais en plus la perspective d'un crash de cette machine est un risque inacceptable. 20 Dans le deuxième cas, chaque noeud du réseau dispose de toutes les informations utiles sur l'ensemble du réseau. Si l'on s'affranchit dans ce cas des deux risques majeurs inhérents à la centralisation (la charge de calcul est répartie sur l'ensemble du réseau et le crash d'un noeud n'est pas fatal pour l'ensemble du système), c'est un autre problème qui se pose alors. La 25 charge supplémentaire occasionnée sur le réseau par des échanges globaux croît en effet exponentiellement lorsque le réseau est plus étendu et plus fortement dynamique. En revanche, lorsque dans le cadre de l'invention on se fonde sur une base de connaissances mutualisées tel que définie plus haut, un mécanisme 30 de pilotage automatique simple peut alors être mis en place pour choisir les chemins les plus adaptés. 2903548 10 Ainsi, lorsqu'une requête pour l'ouverture d'un chemin arrive dans un réseau, le pilotage suivant est mis en oeuvre dans le cadre de l'invention. En utilisant la base de connaissances mutualisées constituée à partir des échanges de faits qui sont ici des éléments de topologie métrée avec 5 une portée locale de n noeuds, chaque noeud peut savoir quelles sont les M chemins les plus courts pour chaque noeud destination. Un mécanisme de mise à jour de ces connaissances est mis en place avec une fréquence de f fois par seconde. Pour chacun de ces M chemins, une tâche de contrôle calcule un 10 indicateur qui reflète la correspondance entre les besoins de la requête et les capacités des liens utilisés par le chemin. Cet indicateur est calculé en utilisant les faits de la base de connaissances mutualisées. La meilleure valeur des indicateurs concernés par l'ouverture d'un chemin permet de déterminer alors la liaison à suivre en sortie d'un noeud. 15 Le pilotage consiste alors à automatiser ce contrôle de l'ouverture des chemins et du provisionnement des ressources tout au long du chemin. Pilotage d'une défense contre une attaque de type DoS/DDoS Le déni de service (Denial of Service - DoS) est une attaque qui bloque, 20 pour un utilisateur, l'accès à sa machine ou qui retarde le temps de réponse et le rend inacceptable. Le DoS peut survenir suite à une attaque programmée par une personne malveillante surchargeant intentionnellement une ressource ou un système. Le DDoS (Distributed DoS) est une attaque similaire, provenant de 25 plusieurs sources simultanément. On trouvera sur la figure 4 un schéma illustrant une attaque DDOS provenant de quatre routeurs de bord Rb avec des flots (représentés par des flèches F) convergeant vers le même équipement terminal B. Les faits de la base de connaissances mutualisées ici utilisées pour 30 réaliser une défense contre une attaque de type DOS/DDOS correspondent à un histogramme d'adresses de destination réalisé à partir des adresses de 2903548 11 destination les plus fréquentes dans les routeurs de bord du réseau de télécommunications. La portée locale est définie ici par un voisinage logique constitué des routeurs de bord Rb du réseau de télécommunications comme cela est 5 montré à la figure 4.. La transmission des faits (ici les histogrammes) entre les différents équipements permet de constituer les bases de connaissances mutualisées. La mise à jour des connaissances est effectuée avec une fréquence de f fois par seconde. 10 La tâche de contrôle correspond à la surveillance d'un dépassement de seuil pour le nombre de messages en direction d'une même adresse de destination. Une vérification des adresses d'émission permet en complément de consolider le diagnostic. Le pilotage peut alors être réalisé par une action de contrôle sur les 15 flots. II s'agit par exemple de détruire les messages en direction de cette adresse. 20 REVENDICATIONS 1. Procédé de pilotage automatique d'un réseau de télécommunications comportant des équipements chargés de réaliser des tâches de contrôle du réseau, caractérisé en ce que : on élabore pour chaque équipement une base de connaissances destinée à stocker, sous la forme d'éléments dénommés faits, des informations requises pour que l'équipement réalise les tâches de contrôle dont il est chargé ; on associe un voisinage à chaque équipement ; on mutualise avec une portée délimitée les faits stockés dans les différentes bases de connaissances en mettant en oeuvre pour chaque équipement une diffusion des faits stockés dans la base de connaissances dudit équipement vers d'autres équipements du réseau identifiés par le voisinage associé audit équipement. 2. Procédé selon la revendication 1, caractérisé en ce que le voisinage associé à un équipement est un voisinage physique correspondant à un ensemble d'équipements du réseau situés à une distance de n sauts à partir dudit équipement. 3. Procédé selon la revendication 1, caractérisé en ce que le voisinage associé à un équipement est un voisinage logique correspondant à un ensemble d'équipements du réseau inclus dans une liste d'équipements. 4. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'on met régulièrement à jour des bases de connaissance pour alimenter les tâches de contrôle de connaissances pertinentes. 30 5. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'on associe en outre un mode de diffusion à chaque équipement, et en 2903548 13 ce que la transmission des faits en vue de la mutualisation est réalisée en fonction du mode de diffusion associé audit équipement. 6. Procédé selon la revendication précédente, caractérisé en ce que le 5 mode de diffusion est un mode parmi une diffusion directe, une diffusion par saut, et une diffusion de type gradient par itération. 7. Procédé de pilotage d'une réservation de ressources sur des chemins d'un réseau de télécommunications, caractérisé en ce qu'il met en oeuvre le 10 procédé selon la revendication 2 avec pour faits des éléments de topologie métrée permettant de connaître les M chemins les plus courts pour chaque équipement destination, et pour tâches de contrôle, le calcul d'un indicateur reflétant la correspondance entre les besoins d'une requête en ouverture d'un chemin et les capacités de chacun des M chemins. 15 8. Procédé de pilotage d'une défense contre une attaque de type déni de service, caractérisé en ce qu'il met en oeuvre le procédé selon la revendication 3 avec pour voisinage, un voisinage logique constitué des routeurs de bord du réseau. 20 9. Procédé selon la revendication précédente, ayant pour faits, des histogrammes d'adresses de destination réalisés à partir des adresses de destination dans les routeurs de bord du réseau, et pour tâches de contrôle, la surveillance d'un dépassement de seuil pour le nombre de messages à 25 destination dune même adresse. 10. Procédé selon la revendication précédente dans lequel le pilotage consiste à supprimer les messages en direction d'une adresse pour laquelle ledit seuil est dépassé. 2903548 14 11. Equipement d'un réseau de télécommunications caractérisé en ce qu'il comporte des moyens pour mettre en oeuvre le procédé selon l'une des revendications précédentes. 5 12. Réseau de télécommunications caractérisé en ce qu'il comporte des moyens pour mettre en oeuvre le procédé selon l'une des revendications 1 à 10.