[go: up one dir, main page]

FR3030076A1 - Procede de gestion d'un reseau de nœuds de calcul - Google Patents

Procede de gestion d'un reseau de nœuds de calcul Download PDF

Info

Publication number
FR3030076A1
FR3030076A1 FR1462157A FR1462157A FR3030076A1 FR 3030076 A1 FR3030076 A1 FR 3030076A1 FR 1462157 A FR1462157 A FR 1462157A FR 1462157 A FR1462157 A FR 1462157A FR 3030076 A1 FR3030076 A1 FR 3030076A1
Authority
FR
France
Prior art keywords
management
management node
nodes
group
node
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.)
Granted
Application number
FR1462157A
Other languages
English (en)
Other versions
FR3030076B1 (fr
Inventor
Mathieu Perotin
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.)
Bull SAS
Original Assignee
Bull SAS
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 Bull SAS filed Critical Bull SAS
Priority to FR1462157A priority Critical patent/FR3030076B1/fr
Priority to US15/534,816 priority patent/US10826779B2/en
Priority to PCT/FR2015/053368 priority patent/WO2016092197A1/fr
Publication of FR3030076A1 publication Critical patent/FR3030076A1/fr
Application granted granted Critical
Publication of FR3030076B1 publication Critical patent/FR3030076B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17356Indirect interconnection networks
    • G06F15/17362Indirect interconnection networks hierarchical topologies
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/34Signalling channels for network management communication
    • H04L41/344Out-of-band transfers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Procédé de gestion d'un réseau de nœuds de calcul interconnectés par une pluralité de dispositifs d'interconnexions caractérisé en ce qu'il comporte les étapes suivantes : - organisation des nœuds de calcul en groupes de nœuds de calcul, - pour chaque groupe de nœuds de calcul, connexion (1010) des dispositifs d'interconnexion interconnectant les nœuds du groupe à un nœud de gestion de groupe, ledit nœud de gestion étant dédié au groupe de nœuds de calcul - sur chaque nœud de gestion exécution (1030) d'une fonction de management par la mise en œuvre de modules de gestion indépendants, chaque module de gestion d'un nœud de gestion étant apte à communiquer avec les autres modules de gestion du même nœud de gestion.

Description

1 Procédé de gestion d'un réseau de noeuds de calcul DOMAINE TECHNIQUE DE L'INVENTION [0001] L'invention se rapporte à un procédé de gestion d'un réseau de noeuds de calcul. [0002] On entendra par réseau de noeuds de calcul, dans le cadre du présent document tout réseau de machines, une machine étant au moins parmi : un ordinateur, un serveur, une lame.... Sont en particulier visées les grappes de serveurs, c'est-à-dire les supercalculateurs ou encore les calculateurs hautes performances. Est encore visé le domaine du calcul haute performance désigné comme HPC. ETAT DE LA TECHNIQUE ANTERIEURE [0003] Les supercalculateurs actuels ont une puissance de calcul de l'ordre du pétaflops (101 5 opérations à virgule flottante par seconde (flops)). Ces performances sont atteintes en faisant travailler conjointement 5000 à 6000 ordinateurs/serveurs interconnectés selon des topologies spécifiques. Ces interconnexions sont réalisées en utilisant des commutateurs et des câbles. Dans les cas d'un supercalculateur, pour désigner un ordinateur/serveur, on parle de noeud de calcul, ou tout simplement de noeud. [0004] Les réseaux utilisés dans ce domaine du calcul haute-performance sont très spécialisés et nécessitent une gestion adaptée. Typiquement, ces services, dits de « Fabric Management » ou « Fabric Manager », doivent offrir des fonctionnalités de routage, afin de rendre les communications possibles, mais aussi d'acquisition et de traitement des données de production (remontés d'erreurs et compteurs d'exploitation). [0005] Les commutateurs, et donc le réseau, sont administrés par un noeud de management connecté au réseau. Le noeud de management gère les noeuds de calcul et les commutateurs via le même réseau physique. Le protocole de gestion des commutateurs dépend de la nature des commutateurs. Dans la pratique, pour un supercalculateur on utilise des commutateurs InfiniBand le protocole utilisé est donc défini par la spécification InfiniBand. 3030076 2 [0006] Le noeud de management, mettant en oeuvre une fonction de management, permet de configurer et de surveiller les commutateurs. Le nombre de défaillances croissant avec le nombre de commutateurs, il finit par être important. Les besoins d'analyse du comportement du supercalculateur sont 5 également importants. Cela implique de nombreux échanges de maintenance sur le réseau. Un échange de maintenance est une utilisation de ressource qui n'est pas lié aux calculs demandés au supercalculateur. Dans le cas qui nous intéresse il s'agit, par exemples, d'un message d'alerte émis pas un commutateur dont l'un des ports est défaillant, ou d'un message de collecte émis par un noeud de gestion 10 pour récupérer des statistiques sur un commutateur. [0007] L'accroissement de la puissance des supercalculateurs implique l'augmentation du nombre de noeuds, donc l'augmentation du nombre d'interconnexions, donc l'augmentation du nombre de messages de maintenance réseau entre les commutateurs et le noeud de management. 15 [0008] Cela a deux conséquences fâcheuses : - Le noeud de gestion qui a en charge le traitement des messages émanant des équipements n'est plus capable de prendre en compte tous les messages, par manque de puissance de calcul ou de capacité réseau, 20 - Cette non prise en compte, ou ce retard de prise en compte entraîne un délai sur les décisions impactant le réseau haute-performance : des congestion peuvent apparaître et s'installer durablement, pénalisant les applications, voire paralysant le super-calculateur. [0009] Ce phénomène d'effondrement est avéré pour un supercalculateur de 25 8000 noeuds comportant un millier de commutateur. Un tel supercalculateur n'atteint pas l'exaflops (101'18 flops) qui est pourtant l'objectif actuel de la recherche sur les supercalculateurs. [0010] Ainsi, les solutions existantes sont aujourd'hui centralisées. On peut prendre en exemple le couple {OpenSM, IBMS} qui est la solution proposées par 30 certains fabricants de supercalculateur afin de gérer les réseaux de type InfiniBand (IB). OpenSM, responsable de l'acquisition des topologies et du routage commence à induire une latence importante pour ce qui est du calcul des routes, 3030076 3 et IBMS, centralisant les erreurs en une unique base de données induit une charge CPU importante. [0011] Par ailleurs, peu de possibilités de corrélation d'erreur sont offertes, ce qui est d'autant plus regrettable que cette fonctionnalité devient salvatrice à ces 5 échelles. [0012] Enfin, la gestion des données d'exploitation (compteurs d'erreurs et de performance) ne se fait que laborieusement, des requêtes individuelles, émanant d'un unique point central devant être émises pour les rassembler.
10 EXPOSE DE L'INVENTION [0013] L'invention vise à remédier à tout ou partie des inconvénients de l'état de la technique identifiés ci-dessus, et notamment à proposer des moyens pour permettre de prendre en charge la croissance en complexité des supercalculateurs. 15 [0014] Dans ce but, la présente invention propose une modélisation fine de ces rôles et une implémentation découpée en modules individuels, bien qu'interconnectés, et distribuables. Chaque module peut à son tour être distribué au gré d'une hiérarchisation du supercalculateur, ce qui permet à l'invention de fonctionner jusqu'aux tailles de supercalculateurs qui font l'objet d'une recherche 20 active, c'est-à-dire des supercalculateurs exaflopiques et plus encore. [0015] Dans ce dessein, un aspect de l'invention se rapporte à un procédé de gestion d'un réseau de noeuds de calcul interconnectés par une pluralité de dispositifs d'interconnexions caractérisé en ce qu'il comporte les étapes suivantes : 25 - Organisation des noeuds de calcul en groupes de noeuds de calcul, - Pour chaque groupe de noeuds de calcul, connexion des dispositifs d'interconnexion interconnectant les noeuds du groupe à un noeud de gestion de groupe, ledit noeud de gestion étant dédié au groupe de noeuds de calcul 30 - Sur chaque noeud de gestion exécution d'une fonction de management par la mise en oeuvre de modules de gestion indépendants, chaque module de gestion d'un noeud de gestion étant apte à communiquer avec les autres modules de gestion du même noeud de gestion. 3030076 4 [0016] Outre les caractéristiques principales qui viennent d'être mentionnées dans le paragraphe précédent, le procédé/dispositif selon l'invention peut présenter une ou plusieurs caractéristiques complémentaires parmi les suivantes, considérées individuellement ou selon les combinaisons techniquement possibles: 5 - un noeud de gestion de groupe est connecté hors-bande à des dispositifs d'interconnexion ; - des communications entre modules de gestion d'un même noeud de gestion se font de manière asynchrone ; - les modules de gestion sont choisi dans le groupe formé d'au moins : 10 - Module de gestion de topologie réseau, - Module de gestion de routage, - Module de supervision réseau, - Module de relevé de performances réseau - au moins un noeud de gestion est connecté à un noeud de gestion de 15 niveau 2 ; - les communications entre le au moins un noeud de gestion et le noeud de gestion de niveau 2 se font hors bande ; - un module d'un noeud de gestion traite des messages reçus d'au moins un dispositif d'interconnexion pour réduire la quantité de données 20 envoyées vers le noeud de gestion de niveau 2. [0017] L'invention a également pour objet un dispositif de stockage numérique comportant un fichier correspondant à des codes instructions mettant en oeuvre le procédé selon l'une des revendications précédentes. [0018] L'invention a également pour objet un dispositif mettant en oeuvre un 25 procédé selon une combinaison des caractéristiques précédentes. BREVE DESCRIPTION DES FIGURES [0019] D'autres caractéristiques et avantages de l'invention ressortiront à la lecture de la description qui suit, en référence aux figures annexées, qui illustrent : 30 - la figure 1, une vue d'une partie d'un supercalculateur selon l'invention ; - la figure 2, une vue d'étape du procédé selon l'invention. [0020] Pour plus de clarté, les éléments identiques ou similaires sont repérés par des signes de référence identiques sur l'ensemble des figures. 3030076 5 [0021] L'invention sera mieux comprise à la lecture de la description qui suit et à l'examen des figures qui l'accompagnent. Celles-ci sont présentées à titre indicatif et nullement limitatif de l'invention.
5 DESCRIPTION DETAILLEE D'UN MODE DE REALISATION [0022] La figure 1 montre de manière simplifiée une mise en oeuvre de l'invention. La figure 1 montre un premier groupe G1 de noeuds G1.i de calcul, chacun des noeuds G1.i du premier groupe G1 de noeuds étant connecté à au moins un port S1.i.j d'un commutateur S1.i d'un premier groupe S1 de 10 commutateurs. [0023] Dans la pratique tous les noeuds de calcul du premier groupe de noeuds de calcul sont connectés à des ports de même nature. Il s'agit de ports InfiniBand ou équivalent. Chaque commutateur du premier groupe S1 de commutateur est lui-même connecté à au moins un autre commutateur du premier groupe S1 de 15 commutateur. Cela permet de connecter tous les noeuds de calcul du premier groupe G1 de noeuds de calcul entre eux et ainsi d'établir un réseau entre eux. Les différentes connexions physiques et les câbles correspondant ne sont pas montrés pour ne pas encombrer les figures. [0024] La figure 1 montre que chaque commutateur du premier groupe de 20 commutateurs à une structure identique. Chaque commutateur du premier groupe de commutateurs comporte, schématiquement : - un microprocesseur de traitement général, - un circuit spécialisé ou ASIC de traitement de la commutation, - une mémoire de stockage comportant plusieurs zone dont au moins : 25 - une première zone réseau comportant des codes instructions pour assurer la commutation et la gestion du commutateur, - une deuxième zone comportant une table de routage ; - une pluralité de connecteurs, ou ports, de traitements selon un premier format, usuellement le format InfiniBand, 30 - un connecteur, ou port, de gestion selon un deuxième format, usuellement le format Ethernet, ce port est donc un port hors bande relativement à la pluralité de connecteurs infiniband ; 3030076 6 - un bus pour interconnecter les différents éléments précités du commutateur. [0025] Les connecteurs, ou ports, sont des interfaces physiques de communications, ou interfaces réseau. 5 [0026] Lorsque l'on prête une action à un dispositif celle-ci est en fait effectuée par un microprocesseur du dispositif commandé par des codes instructions enregistrés dans une mémoire du dispositif. Si l'on prête une action à une application, celle-ci est en fait effectuée par un microprocesseur du dispositif dans une mémoire duquel les codes instructions correspondant à l'application sont 10 enregistrés. D'un point de vue fonctionnel, pour la compréhension de ce paragraphe, on n'établit pas de différence entre un microprocesseur, un microcontrôleur ou une unité arithmétique et logique. [0027] La figure 1 montre aussi un deuxième groupe G2 de noeuds G2.i de calcul, chacun des noeuds G2.i du deuxième groupe G2 de noeuds étant connecté 15 à au moins un port S2.i.j d'un commutateur S2.i d'un deuxième groupe S2 de commutateurs. [0028] Le deuxième groupe de noeuds de calcul et le deuxième groupe de commutateurs associé au deuxième groupe de noeuds de calcul sont constitués d'éléments identiques à ceux du premier groupe de noeuds de calcul associé au 20 premier groupe de commutateurs. Les commutateurs du deuxième groupe de commutateurs sont fonctionnellement identiques aux commutateurs du premier groupe de commutateurs. L'organisation de ces éléments peut varier d'un groupe à l'autre ou être identique. [0029] L'homme du métier comprendra aisément que le nombre de groupe 25 n'est pas limité à deux, mais que la description de deux suffit pour illustrer l'invention. [0030] La figure 1 montre que les commutateurs du premier groupe de commutateurs sont connectés, via leur connecteur de gestion, à un premier commutateur Cl de gestion. Le premier commutateur de gestion est représenté 30 comme un dispositif unique, mais il pourrait s'agir d'une pluralité de commutateurs interconnectés afin de constituer un réseau permettant d'interconnecter tous les commutateurs du premier groupe de commutateurs. Le fait d'utiliser le connecteur de gestion permet de réaliser une connexion hors bande, c'est-à-dire que les 3030076 7 messages émis via le connecteur de gestion ne circulent pas sur les câbles connectés à la pluralité de connecteurs. Le réseau formé via la pluralité de connecteurs est donc dédié aux noeuds de calcul. D'une manière générale hors-bande signifie que les signaux dits hors bandes sont échangés sur des canaux ou 5 liens n'influençant pas les performances des canaux ou liens utilisés par le dispositif pour remplir ses fonctions pricnipales. [0031] La figure 1 montre un premier noeud N1 de gestion connecté au premier commutateur de gestion. Le premier noeud N1 de gestion comporte au moins et de manière schématique : 10 - un microprocesseur 110 ; - une mémoire 120 de stockage comportant plusieurs zones dont au moins : - une zone 121 module de routage ; - une zone 122 module de topologie ; 15 - une zone 123 module de supervision ; - une zone 124 module de performance réseau ; - au moins une première interface 130 réseau d'un format compatible avec un connecteur du premier commutateur de gestion ; - dans une variante une deuxième interface 140 réseau ; 20 - un bus 150 pour interconnecter les éléments du noeud de gestion. [0032] La figure 1 montre que les commutateurs du deuxième groupe de commutateurs sont connectés, via leur connecteur de gestion, à un deuxième commutateur C2 de gestion. Le deuxième commutateur de gestion est représenté comme un dispositif unique, mais il pourrait s'agir d'une pluralité de commutateurs 25 interconnectés afin de constituer un réseau permettant d'interconnecter tous les commutateurs du deuxième groupe de commutateurs. [0033] La figure 1 montre un deuxième noeud N2 de gestion connecté au deuxième commutateur de gestion. Le deuxième noeud N2 de gestion comporte au moins et de manière schématique les mêmes éléments que le premier noeud 30 de gestion, c'est à dire : - un microprocesseur 210, - une mémoire 220 de stockage comportant plusieurs zones dont au moins : 3030076 8 - une zone 221 module de routage, - une zone 222 module de topologie, - une zone 223 module de supervision, - une zone 224 module de performance réseau ; 5 - au moins une première interface 230 réseau d'un format compatible avec un connecteur du premier commutateur de gestion, - dans une variante une deuxième interface 240 réseau. - un bus 250 pour interconnecter les éléments du noeud de gestion. [0034] Les zones modules comportent des codes instructions dont l'exécution 10 correspond aux fonctions du module. [0035] La figure 1 montre que le premier noeud N1 de gestion et le deuxième noeud N2 de gestion sont connectés à un noeud NS de gestion de niveau 2. Ces connexions se font à travers un commutateur CS de gestion de niveau 2 connecté au premier commutateur Cl de gestion et au deuxième commutateur C2 de 15 gestion. [0036] Dans une variante hors bande de l'invention le premier noeud de gestion est : - connecté au premier commutateur de gestion via sa première interface réseau, 20 - connecté au commutateur de gestion de niveau 2 via sa deuxième interface réseau. [0037] Dans cette variante hors bande les messages échangés entre le noeud de gestion et les commutateurs d'un groupe de commutateur ne circulent pas sur les mêmes câbles que les messages échangés entre le noeud de gestion et le 25 noeud de gestion de niveau 2. D'une manière plus générale cela signifie que l'on peut allouer une bande passante dédiée à l'échange de messages entre le noeud de gestion et un groupe de commutateurs. Aucun autre message ne pourra utiliser cette bande passante. Cela peut être obtenu par des moyens physiques, en séparant physiquement les réseaux comme cela a été illustré, mais cela peut 30 aussi être réalisé avec des commutateurs capables de gérer un contrat de qualité de service ou QoS. [0038] La figure 2 montre une étape d'organisation de noeuds de calcul en groupes de noeuds de calcul. Dans cette étape les noeuds sont organisés en 3030076 9 groupes, par exemple, en fonction de commutateurs auxquels ils sont connectés, ou inversement on choisit un nombre prédéterminé de noeuds et on les interconnecte via des commutateurs. On obtient ainsi un groupe de noeuds. Des groupes de noeuds ainsi connectés sont également interconnectés par 5 l'établissement de connexions entre les commutateurs des différents groupes de noeuds. Ainsi regrouper des noeuds revient à regrouper des commutateurs. Tout noeud de calcul connecté à un commutateur d'un groupe de commutateurs, défini selon l'invention, fait partie du même groupe de noeuds de calcul. Autrement dit, tous les noeuds directement connectés à un même commutateur font partie d'un 10 même groupe de noeuds de calcul. Un tel groupe comporte par ailleurs une pluralité de commutateurs. [0039] Les commutateurs en question sont des dispositifs d'interconnexion tel que décrits pour la figure 1. Pour un groupe de noeuds ils sont connectés, dans une étape 1010 à un noeud de gestion et ce hors bande. Chaque noeud de gestion 15 est à son tour connecté à un noeud de gestion de niveau 2.. Les noeuds de gestions, tous niveaux confondus, ont donc une structure en arbre qui s'adapte aux besoins de disponibilité et de passage à l'échelle. [0040] Une fois ces connexions réalisées, le supercalculateur, correspondant à l'ensemble des noeuds de calcul des groupes de noeuds de calcul, peut-être 20 démarré. Le démarrage d'un supercalculateur comporte une étape de mise à jour des tables de routages de commutateurs que comporte le supercalculateur. Cette mise à jour est réalisée selon un paramétrage initial connu du supercalculateur. [0041] Une fois les paramètres initiaux écrits dans les différents éléments, commutateurs, noeuds de gestion et noeud de gestion de niveau 2, on démarre les 25 différents services de gestion sur les noeuds de gestion et le noeud de gestion de niveau 2. Les différents services de gestions correspondent aux modules précédemment décrits. [0042] Une particularité de l'invention est que ces services sont exécutés de manière indépendante et décentralisée. Chaque service correspond à au moins 30 un processus sur le dispositif qui le met en oeuvre. Il s'agit des modules [0043] Parmi les services que chaque noeud exécute, on a au moins : - un service de gestion de topologie : c'est le service qui : 3030076 10 - maintient à jour une base de topologie permettant de connaître à tout instant, au moins, l'état de chaque connecteur de chaque commutateur ; - un service de routage permettant de calculer des tables de routages 5 pour mettre à jour des commutateurs ; - un service de supervision pour : - gérer les messages émis par les commutateurs ; - agréger des données produites par les autres services avant de transmettre ces données agrégées vers un service du 10 noeud de gestion de niveau 2. Cette agrégation, par exemple une synthèse par corrélation, permet de diminuer le volume des communications reçues par le noeud de gestion de niveau 2. Une telle corrélation est, par exemple, le fait de détecter qu'un certain nombre de message de pannes de 15 connecteurs pour un même commutateur correspond à une panne du commutateur, il est donc inutile de relayer les messages de pannes des connecteurs ; - un service de relevé de performances réseau qui récupère et enregistre des données de performances de commutateurs connectés au noeud 20 de gestion mettant en oeuvre le service. [0044] Un noeud de gestion met aussi en oeuvre un mécanisme de communication entre module. Un tel mécanisme est asynchrone de manière à ce que la gestion des messages ne soit pas bloquante pour les différents services. [0045] Un tel mécanisme asynchrone est, par exemple un mécanisme par 25 abonnement. Un service s'abonne à des messages émis. Lorsqu'un message auquel il est abonné est publié, il va alors le lire. [0046] Un tel mécanisme permet des optimisations dans la gestion des commutateurs. Par exemple considérons un scénario dans lequel un connecteur d'un commutateur tombe en panne. Dans ce cas : 30 - le commutateur envoie un message de panne à son noeud de gestion, celui auquel il est connecté ; 3030076 11 - le service de supervision du noeud de gestion met à jour la base de topologie et réveille le service de topologie du noeud de gestion recevant le message ; - le service de topologie publie un message indiquant le panne et 5 commence un traitement visant à déterminer si des hypothèses de calcul routage sont encore valable, un tel calcul dure en général une dizaine de secondes ; - le service de routage reçoit le message indiquant la panne de connecteur et commence à calculer de nouvelles tables de routage en 10 se basant sur des hypothèses de topologie courantes. Un tel calcul dure en général plus de d'une dizaine de secondes ; - le service de topologie détecte un changement dans les hypothèses de topologie et publie ce changement ; - le service de routage reçoit le message de changement de 15 d'hypothèses de topologie, interrompt le calcul en cours et reprend un calcul sur la base des nouvelles hypothèses. [0047] Les temps donnés ci-dessus correspondent à des tailles de topologie à plus de 50000 noeuds de calcul. Sur des topologies plus petites ces durées sont réduites en conséquences. 20 [0048] Dans l'exemple ci-dessus, on constate, avec l'invention, que le calcul de ces tables de routages peut commencer directement au moment de la détection de la panne. Si les hypothèses portant sur la topologie n'ont pas changé, alors le calcul du routage se fera en quelques secondes comme avant l'invention, dans des temps d'exécution comparable. Par contre si le calcul des hypothèses, 25 selon l'invention, révèle que l'hypothèse initiale n'est plus valide alors le calcul du routage est interrompu et repris avec un algorithme dit « algorithme de routage agnostique », c'est à dire un algorithme insensible à la topologie. Avant l'invention, on fait le calcul selon l'hypothèse initiale et si ça échoue alors, et seulement alors, on bascule sur l'algorithme insensible à la topologie. 30 [0049] De plus avec l'invention, ces calculs peuvent être effectués simultanément sur plusieurs noeuds, c'est-à-dire que l'on peut gérer simultanément deux pannes intervenant sur deux commutateurs de deux groupes de noeuds de calcul différents. 3030076 12 [0050] Un autre mécanisme de communication approprié serait un mécanisme de boîte à lettre, chaque service ayant sa propre adresse de boîtes à lettre, l'ensemble des boîtes lettres étant gérés par le service de communication. [0051] Dans une variante de l'invention un noeud de gestion exécute 5 également un service de relevé de performances réseau. C'est le module de performance réseau. Les performances réseau, sont, par exemple : - débit par port ; - nombre de paquet ; - longueur des files d'attente ; 10 - nombre d'erreur ; - protocoles utilisés ; [0052] Ces données sont disponibles au niveau des commutateurs et rapatriées à intervalle régulier par les noeuds de gestion. Ces données sont alors 15 agrégées par le noeud de gestion et transmises après agrégation éventuellement avec des données produites par les autres modules. [0053] Cela permet de maîtriser la bande passante utilisée par le noeud de gestion pour la transmission des informations de performance. [0054] Le module de performance réseau stocke aussi les données de 20 performance ce qui permet de répartir les données de performance brutes du supercalculateur sur les noeuds de gestion. Une interrogation peut alors se faire à partir du noeud de gestion de niveau 2 qui va alors chercher les données sur les noeuds de gestion en fonction de l'interrogation. On obtient donc un stockage réparti sur les noeuds de gestion, ce qui permet de s'affranchir d'un dispositif 25 centralisé de stockage. Cela est intéressant car un tel dispositif centralisé doit, pour être tolérant aux pannes, mettre en oeuvre des redondances systèmes. Avec l'invention ces redondances sont naturelles car elles sont matérialisées par les noeuds de gestion qui sont matériellement indépendant les uns des autres. De plus un système centralisé doit être capable d'avoir une grande capacité de 30 stockage correspondant aux données produites par tous les commutateurs du supercalculateur. Avec l'invention chaque noeud de gestion a une capacité de stockage qui correspond aux données produites par les commutateurs qu'il gère.
3030076 13 Avec l'invention on obtient une capacité de stockage importante et résiliente avec une complexité moindre qu'une capacité équivalente centralisée. [0055] Avec l'invention on retrouve toutes les fonctions d'un « fabric manager » classique mais elles sont distribuées et exécutées de manière à leur 5 permettre d'être mise en oeuvre même dans des contextes de supercalculateur à plus de 1000 commutateurs. [0056] L'invention permet de continuer à appliquer des procédés de conception de supercalculateur connus, notamment en termes de mise en place de topologie de câblage, mais en ayant un mode de gestion beaucoup plus réactif 10 et adapté à des topologies de taille croissante. [0057] La mise en oeuvre du procédé permet donc d'aboutir à un supercalculateur opérationnel et gérable.

Claims (10)

  1. REVENDICATIONS1. Procédé de gestion d'un réseau de noeuds de calcul interconnectés par une pluralité de dispositifs d'interconnexions caractérisé en ce qu'il comporte les étapes suivantes : - organisation (1000) des noeuds de calcul en groupes de noeuds de calcul ; - pour chaque groupe de noeuds de calcul, connexion (1010) des dispositifs d'interconnexion interconnectant les noeuds du groupe à un noeud de gestion de groupe, ledit noeud de gestion étant dédié au groupe de noeuds de calcul ; - sur chaque noeud de gestion, exécution (1030) d'une fonction de management par la mise en oeuvre de modules de gestion indépendants, chaque module de gestion d'un noeud de gestion étant apte à communiquer avec les autres modules de gestion du même noeud de gestion.
  2. 2. Procédé de gestion selon la revendication 1, caractérisé en ce qu'un noeud de gestion de groupe est connecté hors-bande à des dispositifs d'interconnexion.
  3. 3. Procédé de gestion selon l'une des revendications précédentes, caractérisé en ce que des communications entre modules de gestion d'un même noeud de gestion se font de manière asynchrone.
  4. 4. Procédé de gestion selon l'une des revendications précédentes caractérisé en ce que les modules de gestion sont choisis dans le groupe formé d'au moins : - module de gestion de topologie réseau, - module de gestion de routage, - module de supervision réseau, - module de relevé de performances réseau.
  5. 5. Procédé de gestion selon l'une des revendications précédentes, caractérisé en ce que au moins un noeud de gestion est connecté à un noeud de gestion de niveau 2.
  6. 6. Procédé de gestion selon la revendication 5, caractérisé en ce que les communications entre le au moins un noeud de gestion et le noeud de gestion de niveau 2 se font hors bande. 3030076 15
  7. 7. Procédé de gestion selon l'une des revendications 5 à 6, caractérisé en ce qu'un module d'un noeud de gestion traite des messages reçus d'au moins un dispositif d'interconnexion pour réduire la quantité de données envoyées vers le noeud de gestion de niveau 2. 5
  8. 8. Dispositif de stockage numérique comportant un fichier correspondant à des codes instructions mettant en oeuvre le procédé selon l'une des revendications précédentes
  9. 9. Dispositif mettant en oeuvre le procédé selon l'une des revendications 1 à 7.
  10. 10
FR1462157A 2014-12-10 2014-12-10 Procede de gestion d'un reseau de nœuds de calcul Active FR3030076B1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR1462157A FR3030076B1 (fr) 2014-12-10 2014-12-10 Procede de gestion d'un reseau de nœuds de calcul
US15/534,816 US10826779B2 (en) 2014-12-10 2015-12-08 Method for managing a network of compute nodes
PCT/FR2015/053368 WO2016092197A1 (fr) 2014-12-10 2015-12-08 Procédé de gestion d'un réseau de nœuds de calcul

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1462157A FR3030076B1 (fr) 2014-12-10 2014-12-10 Procede de gestion d'un reseau de nœuds de calcul

Publications (2)

Publication Number Publication Date
FR3030076A1 true FR3030076A1 (fr) 2016-06-17
FR3030076B1 FR3030076B1 (fr) 2016-12-09

Family

ID=52469159

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1462157A Active FR3030076B1 (fr) 2014-12-10 2014-12-10 Procede de gestion d'un reseau de nœuds de calcul

Country Status (3)

Country Link
US (1) US10826779B2 (fr)
FR (1) FR3030076B1 (fr)
WO (1) WO2016092197A1 (fr)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005106668A1 (fr) * 2004-04-15 2005-11-10 Raytheon Company Systeme et procede de detection et de gestion d'une defaillance d'un noeud hpc

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3521955B2 (ja) * 1994-06-14 2004-04-26 株式会社日立製作所 階層型ネットワーク管理システム
US6414955B1 (en) * 1999-03-23 2002-07-02 Innovative Technology Licensing, Llc Distributed topology learning method and apparatus for wireless networks
US6694304B1 (en) * 2000-02-17 2004-02-17 Cisco Technology System and method for retrieving network management table entries
US6983317B1 (en) * 2000-02-28 2006-01-03 Microsoft Corporation Enterprise management system
US7167476B1 (en) * 2002-04-12 2007-01-23 Juniper Networks, Inc. Systems and methods for routing data in a network device
US7506342B2 (en) * 2002-07-23 2009-03-17 Bea Systems, Inc. System and method for implementing J2EE connector architecture
US20040068479A1 (en) * 2002-10-04 2004-04-08 International Business Machines Corporation Exploiting asynchronous access to database operations
US7564798B2 (en) * 2003-08-27 2009-07-21 Finisar Corporation Methods and devices for testing and monitoring high speed communication networks
JP4516397B2 (ja) * 2004-10-05 2010-08-04 株式会社日立製作所 レイヤ2スイッチ
US20070156907A1 (en) * 2005-12-30 2007-07-05 Galin Galchev Session handling based on shared session information
US20070226225A1 (en) * 2006-03-22 2007-09-27 Yiu Timothy C Mobile collaboration and communication system
US20070250625A1 (en) * 2006-04-25 2007-10-25 Titus Timothy G Real-time services network quality control
US8040811B2 (en) * 2006-08-22 2011-10-18 Embarq Holdings Company, Llc System and method for collecting and managing network performance information
WO2008064602A1 (fr) * 2006-11-29 2008-06-05 Yongmin Zhang Procédé et système de calcul de groupe à groupe
KR101382393B1 (ko) * 2007-01-16 2014-04-09 삼성전자주식회사 서버 및 그의 동시접속 제어 방법
WO2010054370A1 (fr) * 2008-11-10 2010-05-14 Imentor Interactive Plateforme technologique et procédés pour faciliter, cultiver et surveiller des relations de conseil
JP5146539B2 (ja) * 2008-12-12 2013-02-20 富士通株式会社 グループ管理装置
US8194680B1 (en) * 2009-03-11 2012-06-05 Amazon Technologies, Inc. Managing communications for modified computer networks
US9106540B2 (en) * 2009-03-30 2015-08-11 Amazon Technologies, Inc. Providing logical networking functionality for managed computer networks
US8738745B1 (en) * 2010-03-31 2014-05-27 Amazon Technologies, Inc. Managing use of intermediate destination hardware devices for provided computer networks
US8488577B1 (en) * 2012-06-06 2013-07-16 Google Inc. Apparatus for controlling the availability of internet access to applications
US9197548B2 (en) * 2012-08-15 2015-11-24 Dell Products L.P. Network switching system using software defined networking applications
US9635088B2 (en) * 2012-11-26 2017-04-25 Accenture Global Services Limited Method and system for managing user state for applications deployed on platform as a service (PaaS) clouds
US9532266B2 (en) * 2013-06-05 2016-12-27 Huawei Technologies Co., Ltd. Systems and methods for managing a wireless network
US9787546B2 (en) * 2013-08-07 2017-10-10 Harris Corporation Network management system generating virtual network map and related methods
US10505794B2 (en) * 2013-12-11 2019-12-10 Essity Hygiene And Health Aktiebolag Configuration of distributed data acquisition equipment
IN2014DE00404A (fr) * 2014-02-13 2015-08-14 Netapp Inc
IN2014DE00743A (fr) * 2014-03-13 2015-09-18 Netapp Inc

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005106668A1 (fr) * 2004-04-15 2005-11-10 Raytheon Company Systeme et procede de detection et de gestion d'une defaillance d'un noeud hpc

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HUSSAIN HAMEED ET AL: "A survey on resource allocation in high performance distributed computing systems", PARALLEL COMPUTING, vol. 39, no. 11, 14 October 2013 (2013-10-14), pages 709 - 736, XP028779066, ISSN: 0167-8191, DOI: 10.1016/J.PARCO.2013.09.009 *

Also Published As

Publication number Publication date
FR3030076B1 (fr) 2016-12-09
US20170353358A1 (en) 2017-12-07
US10826779B2 (en) 2020-11-03
WO2016092197A1 (fr) 2016-06-16

Similar Documents

Publication Publication Date Title
FR2883117A1 (fr) Architecture de noeud de communication dans un systeme de reseau sur puce globalement asynchrone.
EP2894872B1 (fr) Procédé d'ordonnancement de tâches dans un réseau à courants porteurs en ligne
EP2923461B1 (fr) Dispositif et procédé de retransmission de données dans un commutateur réseau
EP2454850A1 (fr) Procede et systeme pour la gestion performante et automatisee de reseaux virtuels.
EP3189636A1 (fr) Procédé de surveillance et d'alerte de configuration de routage dans un cluster comprenant des liens de communication statiques et programme d'ordinateur mettant en oeuvre ce procédé
WO2010034920A1 (fr) Determination et gestion de reseaux virtuels
EP2572478A1 (fr) Procede d'optimisation de routage dans un cluster comprenant des liens de communication statiques et programme d'ordinateur mettant en oeuvre ce procede
WO2007107674A2 (fr) Procede de communication de donnees entre des systemes de traitement heterogenes connectes en reseau local et systeme de communication mettant en oeuvre ce procede
FR3030076A1 (fr) Procede de gestion d'un reseau de nœuds de calcul
EP2591588B1 (fr) Accès à un réseau de noeuds répartis sur une architecture de communication a l'aide d'un serveur de topologie avec sélection multicritères
EP2577920A1 (fr) Procede de routage pseudo-dynamique dans un cluster comprenant des liens de communication statiques et programme d'ordinateur mettant en oeuvre ce procede
EP2394393B1 (fr) Procédé de gestion des echanges de flux de données dans un réseau de télécommunication autonome
Meiklejohn et al. Loquat: A framework for large-scale actor communication on edge networks
EP3216175B1 (fr) Procédé de surveillance et de contrôle déportés d'un cluster utilisant un réseau de communication de type infiniband et programme d'ordinateur mettant en oeuvre ce procédé
EP1912408B1 (fr) Procédé de gestion d'une base de données partitionnée dans un réseau de communication
EP2955887B1 (fr) Procédé de répartition de charge dynamique dans un réseau privé
EP2721487B1 (fr) Procede, dispositif et programme d'ordinateur pour la mise à jour logicielle de clusters optimisant la disponibilite de ces derniers
FR3061391A1 (fr) Reseau informatique de noeuds communiquant entre eux par messages en pair a pair et procede d'interconnexion entre noeuds associe
WO2013088019A1 (fr) Procédé et programme d'ordinateur de gestion de pannes multiples dans une infrastructure informatique comprenant des équipements à haute disponibilité
FR3026910A1 (fr) Procede d'autorisation de demandes de transmission.
WO2023031288A1 (fr) Procédé de détermination d'une topologie d'interconnexion entre commutateurs d'un réseau de communication, produit programme d'ordinateur et dispositif correspondants
EP3783501A1 (fr) Procédé rapide d établissement de routes de communication entre ordinateurs d'un superordinateur
FR2642252A1 (fr) Unite d'interconnexion entre circuits, notamment du type crossbar procede de mise en oeuvre d'une unite d'interconnexion entre circuits, et utilisations d'une unite d'interconnexion entre circuits
Rudish Design and Implementation of DPIPE, A P2P File Transfer Protocol for Large File Transfers in Datacenter Environments
WO2013088018A1 (fr) Procédé et programme d'ordinateur de configuration d'équipements dans une infrastructure informatique ayant une architecture de type infiniband

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20160617

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9

PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11

PLFP Fee payment

Year of fee payment: 12