Brevet FR2812734A1 — publié le 20020208

Méthode d'identification d'éléments limitant les performances d'un réseau de communication. La présente invention concerne une méthode d'identification d'éléments limitant les performances d'un réseau de communication. Un tel réseau relie une pluralité d'éléments chacun connecté à au moins un autre élément. On distingue les éléments terminaux, accessibles aux usagers du réseau, les éléments intermédiaires tels que commutateurs ou routeurs qui sont disposés entre les différents terminaux, et les liens physiques qui appartiennent également au réseau. Le réseau permet d'acheminer de l'information entre deux terminaux ou même entre deux éléments intermédiaires, le terme information devant ici être pris dans son acception la plus large. Couramment, l'information est transmise par paquets de données qui sont traités indépendamment les uns des autres. Le protocole de communication "II'" employé dans le réseau lnternet est un exemple de ce type de transmission de l'information. Le réseau interconnecte donc une pluralité d'éléments et il convient de s'assurer qu'il présente les performances requises. Ces performances consistent essentiellement à assurer la transmission d'un volume d'information donné dans un délai donné, en partant d'un terminal, en passant par un ou plusieurs éléments intermédiaires, pour arriver à un autre terminal. Les différents éléments, intermédiaires ou terminaux, sont pourvus d'équipements qui peuvent limiter les performances de transmission. On pense au débit d'une interface, à un taux de perte d'information, à la saturation des ressources d'un processeur ou au temps de transit entre deux points du réseau. A titre d'exemple, le temps de transit entre deux terminaux dépend du débit de l'interface de sortie du premier terminal, de la charge d'un commutateur et du débit sur un lien physique. Le temps de transit est une variable répartie car elle met en jeu plusieurs éléments du réseau, tandis que le débit de l'interface, la charge du commutateur et le débit du lien sont des variables locales car elles ne concernent qu'un élément du réseau. Une variable répartie qui dépend donc de plusieurs variables locales peut tomber en dessous d'un seuil de performances requis. La présente invention a ainsi pour objet une méthode d'identification de la ou des variables locales qui sont responsables de cette baisse de performance. Selon l'invention, cette méthode pour identifier au moins un élément limitant comprend les étapes suivantes - mesures d'une variable répartie définissant l'état d'un service de communication entre deux éléments de ce réseau, - mesures d'un ensemble de variables locales définissant l'état de certains éléments au moins du réseau ; la méthode comprend de plus une étape pour calculer une fonction de corrélation multidimensionnelle de la variable répartie avec les variables locales, l'élément limitant étant celui dont la variable locale présente la plus forte contribution dans cette fonction. De préférence, la fonction de corrélation est une régression multilinéaire. Avantageusement, la méthode comprend une étape pour supprimer de cet ensemble une variable locale dont le coefficient de corrélation avec une autre variable locale excède un seuil prédéterminé. De même , la méthode comprend une étape pour supprimer de cet ensemble une variable locale dont le coefficient de corrélation avec la variable répartie est inférieur à un seuil prédéterminé. Eventuellement, la méthode comprend une étape pour supprimer de cet ensemble les variables locales dont les coefficients de corrélation avec la variable répartie sont les plus faibles, un nombre prédéterminé de variables locales étant retenu dans l'ensemble. Selon une caractéristique additionnelle, la méthode comprend une étape de présélection des variables locales composant cet ensemble. Ainsi, cette étape de présélection rejette de l'ensemble les variables locales intrinsèquement corrélées à la variable répartie de par la constitution du réseau. Pareillement, cette étape de présélection rejette de l'ensemble les variables locales qui présentent un nombre de mesures inférieur à un niveau prédéterminé. Suivant un mode de réalisation privilégié de l'invention, cet ensemble comportant n variables locales, la méthode comprend une étape pour produire des modèles dérivés obtenus en retenant certaines au moins des combinaisons comportant au plus d variables locales, d étant inférieur à n, et elle comprend de plus un étape pour substituer l'un de ces modèles dérivés au modèle initial. Avantageusement, la méthode comprend, pour chaque modèle dérivé, une étape pour calculer un estimateur d'influence pour chacune des variables locales. De plus, la méthode comprend une étape de sélection de ces modèles dérivés. Ainsi, cette étape de sélection retient les modèles dérivés dont tous les estimateurs d'influence excèdent un seuil de validation prédéterminé ou ceux pour lesquels le rapport entre chaque estimateur d'influence et l'estimateur d'influence le plus élevé excède un rapport de validation prédéterminé. D'autre part, la méthode comprend une étape pour calculer un estimateur d'erreur pour chacun des modèles dérivés qui estime l'erreur entre celui-ci et la variable répartie. De plus, l'étape de sélection conserve le modèle dérivé qui est associé à l'estimateur d'erreur présentant la valeur la plus faible. La présente invention apparaitra maintenant avec plus de détails dans le cadre de la description qui suit d'exemples de réalisation donnés à titre illustratïf en se référant aux figures annexées qui représentent - la figure 1, un schéma d'un réseau auquel s'applique l'invention, et - la figure 2, un schéma d'une procédure de réduction du nombre de variables locales selon l'invention. En référence à la figure 1, le réseau NET connecte notamment un premier T1, un deuxième T2 et un troisième T3 terminal respectivement par l'intermédiaire d'une première 11, d'une deuxième 12 et d'une troisième 13 interface. Le réseau comporte trois commutateurs SW1, SW2, SW3, et un routeur ROUT. La liaison du premier T1 au troisième T3 terminal implique donc la première interface 11, le premier commutateur SW1, le routeur ROUT, le deuxième commutateur SW2 et le troisième interface 13. Cette liaison permet d'assurer un service de communication. La variable répartie que constitue le temps de transit entre le premier T1 et le troisième T3 terminaux dépend donc d'une pluralité de variables locales au nombre desquelles figurent - le débit de la première interface 11, - le taux d'utilisation du processeur du premier commutateur SW1, - le débit sur le lien entre le premier commutateur SW1 et le routeur ROUT, - le volume instantané de donnés traitées par le routeur BOUT, - le taux d'erreurs sur le lien entre le routeur ROUT et le deuxième commutateur SW2, - le taux d'utilisation de la mémoire du deuxième commutateur SW2, et - le débit de la troisième interface 13. Si ce temps de transit devient trop élevé, il s'agit de savoir quelle variable locale en est la principale cause, et éventuellement quelles autres variables locales jouent également un moindre rôle dans cette baisse de performance. Les différentes variables, locales ou réparties, sont des valeurs moyennes de valeurs instantanées échantillonnées en synchronisme. Diverses techniques peuvent être utilisées pour acquérir la valeur de ces variables et on mentionnera donc la mesure intrusive et la collecte d'indicateurs locaux. La mesure intrusive se fait au moyen d'un programme qui effectue une action prescrite durant laquelle différentes variables sont mesurées telles que le temps total d'exécution. La collecte d'indicateurs locaux consiste à consulter les listes d'indicateurs tenus par la plupart des équipements, ces indicateurs reflétant leurs états. Cette consultation peut se faire au moyen d'un protocole de communication dédié à la gestion comme SNMP pour le vocable anglo-saxon "Simple Network Management Protocol". La recherche de la ou des variables locales responsables de la dégradation de la variable répartie se fait au moyen d'une corrélation multidimensionnelle. A titre d'exemple, cette recherche s'obtient en opérant une régression multilinéaire par minimisation des moindres carrés et pour plus de détails, on peut se référer à l'ouvrage : "Numerical Recipes : The Art Of Scientific Computing", William H. PRESS, Saul A. TEUKOLSKI, William T. VETTERLING, Brian P. FLANNERY, Cambridge University Press. Si l'on note M le modèle de la variable répartie - Vj est la série temporelle de la variable locale j, - Wj le poids de la variable j dans le modèle, - C est une constante, et - lest le vecteur identité(1,1,.,1). La régression multilinéaire conduit à l'obtention des poids Wj suite à la minimisation de la fonction de mérite X2 qui représente la somme des carrés des écarts entre les valeurs du modèle et les valeurs correspondantes de la variable répartie - Ri est la ième valeur de la variable répartie, - Vji est la ième valeur de la variable locale j, - C et Wj ont les valeurs précédemment définies. A titre d'exemple, considérons le cas d'une variable répartie R dépendant de trois variables locales, V, V2, V3 i 1 2 3 4 5 R 151 163 219 247 178 V1 64 68,8 114,4 125,6 81,2 V2 1428 1464 1752 2516 1584 V3 784,74 838,86 1077,8 1384,5 807,27 Le modèle est de la forme: M=C.I+W1.V1 +W2.V2+W3.V3 La fonction de mérite XZ s'écrit II convient alors de dériver cette fonction par rapport à W1, W2, W3 et C La résolution de ce système de quatre équations à quatre inconnues donne la solution suivante W1 = 1,182 W2 = 0,0194 W3 = - 0,00130 C=51,67 II apparaît que la variable répartie R est fortement corrélée à la variable locale V1 qui représente le principal élément limitant. Ainsi, si cette variable représente le taux d'utilisation du processeur du premier commutateur SW1, une valeur anormalement élevée de la variable répartie (le temps de transit) sera corrigée en remplaçant ce processeur par un processeur plus puissant. Une solution alternative consisterait, dans le cas où le réseau le permet, à décharger ce premier commutateur SW1, en déroutant une partie du trafic qui lui est alloué sur un autre commutateur. II apparaît également que la variable locale C2 a un poids W2 sensiblement supérieur à celui W3 de la variable V3. Ainsi, il est possible de quantifier la contribution respective des différentes variables locales Vj à la valeur de la variable répartie R, contribution qui est directement lié à leurs poids respectifs Wj. On en déduit ainsi, selon le rapport entre ces poids, la présence d'un ou de plusieurs éléments limitant. Dans l'exemple numérique ci-dessus, seulement trois variables locales sont prises en compte. Cependant dans un réseau d'une taille importante, le nombre de telles variables est beaucoup plus considérable, jusqu'à plusieurs dizaines de milliers. Or, le temps de calcul d'un modèle d'une variable répartie croît avec le cube du nombres des variables locales considérées. A priori, toutes les variables locales du réseau peuvent influer sur une variable répartie et devraient donc apparaître dans le modèle correspondant. II apparaît ainsi que ce temps de calcul peut rapidement devenir démesuré. II est donc préférable de prévoir des moyens pour réduire tant que faire se peut le nombre des variables impliquées dans le modèle. On prévoit par conséquent une table dans laquelle figurent toutes les variables, qu'elles soient locales ou réparties. En référence à la figure 2, un premier moyen consiste à rechercher si deux variables locales sont fortement corrélées pour, dans l'affirmative, supprimer une de ces variables du modèle. L'ensemble des p variables locales figure dans une liste d'entrée et l'on considère la variable Vj, la valeur j figurant dans un premier compteur initialisé à 1. Un deuxième compteur est prévu qui est initialisé à la valeur I = j + 1. Dans une opération d'agrégation, le calcul du coefficient de corrélation k, entre les variables Vj et VI est alors effectué. La variable Vj est introduite dans une liste de sortie et si le coefficient de corrélation k excède un seuil prédéterminé, 0,9 par exemple, la variable VI est supprimée de la liste d'entrée. L'opération précédente est itérée en incrémentant le deuxième compteur d'une unité jusqu'à ce que I atteigne la valeur p. Lorsque ce deuxième compteur atteint la valeur p, le premier compteur est à son tour incrémenté d'une unité, j = j + 1, le deuxième compteur est réinitialisé, I = j + 1, et un nouveau coefficient de corrélation est calculé. L'opération d'agrégation est ainsi poursuivie jusqu'à ce que les premier et deuxième compteurs soient respectivement affectés des valeurs (p - 1) et p. Un deuxième moyen pour réduire le nombre de variables locales à prendre en compte dans le modèle consiste à calculer le coefficient de corrélation de chaque variable locale avec la variable répartie. Selon une première option, seules sont conservées les variables locales conduisant à un coefficient supérieur à un seuil prédéterminé, 0,5 par exemple. Selon une deuxième option, seules sont conservées les variables locales conduisant aux coefficients les plus élevés. Dans ce cas, on retient un nombre prédéterminé de variables locales, 5 par exemple. On remarquera que, alternativement, le deuxième moyen peut être mis en oeuvre avant le premier moyen. Un troisième moyen pour diminuer le nombre de variables locales consiste à effectuer une présélection de ces variables. En premier lieu, il est préférable de supprimer toutes les variables dite de "haut niveau" qui ne permettraient pas d'exercer une action corrective sur l'un des éléments du réseau. II en est ainsi du taux de paquets perdus suite à une saturation des ressources d'un équipement ; bien que cette variable soit locale, elle renseigne peu sur la correction à apporter. II en va de même des différents temps de transit. L'information correspondante est portée dans la table en regard des variables concernées. En second lieu, il est avantageux de supprimer les variables locales qui sont naturellement corrélées à la variable répartie, de par la nature du réseau. En effet, de telles variables n'apportent pas d'information additionnelle. Par exemple, le temps de transit réseau et le taux de paquets perdus sont intrinsèquement corrélés. Là aussi, l'information correspondante est portée dans la table en regard des variables concernées. En troisième lieu, il est souhaitable de supprimer les variables locales qui ne présentent pas suffisamment de valeurs mesurées pendant une période donnée, ceci qu'elle qu'en soit la raison. Cette information peut également être portée dans la table en regard des variables concernées. Ce troisième moyen peut naturellement être employé avant le premier ou le deuxième moyen. Il est préférablement employé au.début de la méthode selon l'invention. Bien que divers moyens aient été proposés pour limiter le nombre de variables locales, ce nombre peut s'avérer encore trop élevé pour obtenir un temps de calcul du modèle acceptable. Ainsi si n variables locales ont été retenues, on peut calculer des modèles dérivés en retenant toutes les combinaisons qui comptent au plus d variables locales, étant entendu que d est un nombre entier inférieur à n fixé de manière appropriée. II convient alors de sélectionner celui ou ceux des modèles dérivés qui décrivent au mieux le phénomène étudié et qui seront substitués au modèle initial pour le calcul de la régression multilinéaire. Pour ce faire on définit un estimateur d'influence Elj qui précise l'influence de la variable locale Vj dans le modèle dérivé en cause. Cet estimateur prend par exemple la forme suivante Elj = CCja. BSEjb. Wjc. CAWd. Qe , où - CCj est le coefficient de corrélation de la variable locale Vj et de la variable répartie R, - BSEj est l'erreur, - CAW est la somme des valeurs absolues des poids Wj, - Q le nombre de variables locales intervenant dans le modèle, et - a, b, c, d et e sont des paramètres d'ajustement. Le coefficient de corrélation CCj est défini comme suit - Ri est la ième valeur de la variable répartie R, - Rm est la valeur moyenne de la variable répartie R, - Vji est la ième valeur de la variable locale j, et - Vjm est la valeur moyenne de cette variable locale j. L'erreur BSEj est définie comme suit - Rmin est la valeur minimale de la variable répartie R, - Rmax est la valeur maximale de la variable répartie R, et - u est un exposant de pondération. Généralement, on adopte la valeur 0 pour l'exposant de pondération u, l'erreur correspondant alors à l'erreur standard telle que définie dans l'ouvrage précédemment cité. De même, à titre d'exemple, les paramètres d'ajustement sont fixés comme suit a=1 ; b=-2; c=2; d=-2; e=2. II s'ensuit que l'estimateur d'influence Elj prend la forme suivante Elj = CCj. (Wj . Q. CAW)2 / BSEj2 Les estimateurs d'influence Elj sont donc calculés relativement à certains au moins des modèles dérivés pour chaque variable locale. De préférence, tous les modèles dérivés sont pris en compte. Selon une première option, un modèle dérivé est sélectionné seulement si tous les estimateurs d'influence relatifs à ce modèle excédent un seuil de validation prédéterminé. Selon une deuxième option qui peut être retenue alternativement ou cumulativement avec la première option, un modèle dérivé est sélectionné seulement si le rapport entre chaque estimateur d'influence et l'estimateur d'influence le plus élevé excède un rapport de validation prédéterminé. La première option, la seconde option ou une combinaison de ces deux options peuvent conduire à un unique modèle dérivé sélectionné. Cependant, dans le cas contraire, il convient de décider lequel des modèles sélectionnés doit être conservé. Pour ce faire on définit un estimateur d'erreur EE qui précise l'erreur entre le modèle dérivé MD concerné et la variable répartie. Cet estimateur prend par exemple la forme suivante - MDi est la ième valeur du modèle dérivé MD, - MD est la valeur moyenne du modèle dérivé MD, et - t est un exposant de correction. Généralement, on adopte la valeur 0 pour l'exposant de correction t, ce qui correspond ici aussi à l'erreur dite standard. Avantageusement, le modèle dérivé qui est conservé est celui qui conduit à l'estimateur d'erreur présentant la valeur la plus faible. Par ailleurs, l'invention a été décrite en référence à une variable répartie particulière, à savoir un temps de transit entre deux terminaux. Elle s'applique naturellement à tout type de variable répartie et on mentionnera, entre autres - le temps de transit entre deux points quelconques du réseau, - le temps de réponse applicatif, c'est à dire le temps qui s'écoule entre la formulation d'une requête par un usager et la réponse à cette requête, - le taux de paquets perdus entre deux points du réseau. De même, il ne faut en aucun cas considérer que les variables locales mentionnées plus haut puissent constituer une quelconque limitation de l'invention. Ainsi, les exemples de réalisation de l'invention présentés ci-dessus ont été choisis pour leur caractère concret. Il ne serait cependant pas possible de répertorier de manière exhaustive tous les modes de réalisation que recouvre cette invention. En particulier, toute étape ou tout moyen décrit peut-être remplacé par une étape ou un moyen équivalent sans sortir du cadre de la présente invention. REVENDICATIONS 1) Méthode d'identification d'au moins un élément limitant les performances d'un réseau comprenant les étapes suivantes - mesures d'une variable répartie (R) définissant l'état d'un service de communication entre deux éléments (T1, T3) de ce réseau, - mesures d'un ensemble de variables locales définissant l'état de certains éléments (11, SW1, ROUT, SW2, 13) au moins du réseau, caractérisé en ce qu'elle comprend de plus une étape pour calculer une fonction de corrélation multidimensionnelle de ladite variable répartie avec lesdites variables locales, ledit élément limitant (SW1) étant celui dont la variable locale présente la plus forte contribution dans ladite fonction. 2) Méthode selon la revendication 1, caractérisée en ce que ladite fonction de corrélation est une régression multilinéaire dans laquelle un modèle initial M est ainsi défini - Vj est une série temporelle de la variable locale j, - Wj le poids de la variable locale j dans le modèle, soit ladite contribution, - C est une constante, et - 1 est le vecteur identité(1,1,.,1). 3) Méthode selon l'une quelconque des revendications 1 ou 2, caractérisée en ce qu'elle comprend une étape pour supprimer dudit ensemble une variable locale (Vj) dont le coefficient de corrélation avec une autre variable locale (VI) excède un seuil prédéterminé. 4) Méthode selon l'une quelconque des revendications précédentes, caractérisée en ce qu'elle comprend une étape pour supprimer dudit ensemble une variable locale (Vj) dont le coefficient de corrélation avec ladite variable répartie est inférieur à un seuil prédéterminé. 5) Méthode selon l'une quelconque des revendications 1 à 3, caractérisée en ce qu'elle comprend une étape pour supprimer dudit ensemble les variables locales (Vj) dont les coefficients de corrélation avec ladite variable répartie sont les plus faibles, un nombre prédéterminé de variables locales étant retenu dans ledit ensemble. 6) Méthode selon l'une quelconque des revendications précédentes, caractérisée en ce qu'elle comprend une étape de présélection desdites variables locales (Vj) composant ledit ensemble. 7) Méthode selon la revendication 6, caractérisée en ce ladite étape de présélection rejette dudit ensemble les variables locales (VJ) intrinsèquement corrélées à ladite variable répartie de par la constitution dudit réseau. 8) Méthode selon la revendication 6, caractérisée en ce ladite étape de présélection rejette dudit ensemble les variables locales (Vj) qui présentent un nombre de mesures inférieur à un niveau prédéterminé. 9) Méthode selon l'une quelconque des revendications 2 à 8 caractérisée en ce que, ledit ensemble comportant n variables locales (Vj), elle comprend une étape pour produire des modèles dérivés obtenus en retenant certaines au moins des combinaisons comportant au plus d variables locales, d étant inférieur à n, et en ce qu'elle comprend de plus un étape pour substituer l'un de ces modèles dérivés audit modèle initial (M). 10) Méthode selon la revendication 9 caractérisée en ce que, pour chaque modèle dérivé, elle comprend une étape pour calculer un estimateur d'influence pour chacune desdites variables locales (Vj). 11) Méthode selon la revendication 10, caractérisée en ce que ledit estimateur d'influence Elj est ainsi défini Elj = CCja . BSEjb . Wjc . CAWd . Qe , où - CCj est le coefficient de corrélation des variables Vj et R, - BSEj est un terme d'erreur, - CAW est la somme des valeurs absolues des poids Wj, - Q le nombre de variables locales intervenant dans ledit modèle dérivé, - a, b, c, d et e sont des paramètres d'ajustement. 12) Méthode selon la revendication 11, caractérisée en ce que lesdits paramètres d'ajustement sont fixés comme suit a=1 ; b=-2; c=2; d=-2; e=2. 13) Méthode selon l'une quelconque des revendications 11 ou 12, caractérisée en ce que ledit terme d'erreur BSEj est ainsi défini - Rmin est la valeur minimale de ladite variable répartie R, - Rmax est la valeur maximale de ladite variable répartie R, et - u est un exposant de pondération. 14) Méthode selon la revendication 13, caractérisée en ce que ledit exposant de pondération vaut 0. 15) Méthode selon l'une quelconque des revendications 9 à 14, caractérisée en ce qu'elle comprend une étape de sélection desdits modèles dérivés. 16) Méthode selon la revendication 15, caractérisée en ce que ladite étape de sélection retient lesdits modèles dérivés dont tous les estimateurs d'influence (Elj) excèdent un seuil de validation prédéterminé. 17) Méthode selon l'une quelconque des revendications 15 ou 16, caractérisée en ce que ladite étape de sélection retient lesdits modèles dérivés pour lesquels le rapport entre chaque estimateur d'influence (Elj) et l'estimateur d'influence le plus élevé excède un rapport de validation prédéterminé. 18) Méthode selon l'une quelconque des revendications 15 à 17, caractérisée en ce qu'elle comprend une étape pour calculer un estimateur d'erreur pour chacun desdits modèles dérivés qui estime l'erreur entre celui-ci et ladite variable répartie. 19) Méthode selon la revendication 18, caractérisée en ce que ledit estimateur d'erreur EE est ainsi défini - MDi est la ième valeur du modèle dérivé MD, - MD est la valeur moyenne du modèle dérivé MD, et - t est un exposant de correction. 20) Méthode selon la revendication 19, caractérisée en ce que ledit exposant de correction vaut 0. 21) Méthode selon l'une quelconque des revendications 18 à 20, caractérisée en ce que ladite étape de sélection conserve le modèle dérivé qui est associé à l'estimateur d'erreur (EE) présentant la valeur la plus faible.