Brevet FR3078417A1 — publié le 20190830

PROCÉDÉ DE CONFIGURATION D'UNE ARCHITECTURE RÉSEAU ET ARCHITECTURE RÉSEAU ASSOCIÉE 1. Domaine technique de l'invention L'invention concerne un procédé de configuration d'une architecture réseau. En particulier, l'invention concerne un procédé de configuration d'une architecture réseau pour une transmission de type multidiffusion (ou muiticast en anglais) par un serveur source d'un flux de données vers des machines clients via un réseau informatique comprenant des machines reliées entre elles, en particulier pour la transmission de données de type flux audiovisuel temps réel (aussi appelé streaming en anglais). 2. Arrière-plan technologique La transmission de flux audiovisuel sur un réseau d'une source vers de multiples destinations est usuellement effectué en multidiffusion ou muiticast en anglais. Le cheminement des flux de la source vers les multiples destinations est déterminé par un arbre déployé sur une topologie. Sur chacune des branches, le flux n'est transporté qu'une fois, ce qui différencie la multidiffusion de diffusions multiples point-à-point ou unicast. La multidiffusion permet ainsi de diminuer la bande passante requise pour la transmission du flux de données. Dans les réseaux de transmission de données audiovisuels, une des principales problématiques est la robustesse, c'est-à-dire la capacité à continuer la transmission des données malgré un problème dans le réseau pour assurer la contrainte temps réel. En particulier, la transmission doit s'effectuer sans pertes et sans délais, afin d'éviter les pertes d'informations ou les microcoupures dans la transmission qui réduisent l'expérience utilisateur à la destination. De nombreuses solutions permettant cette robustesse ont été imaginées. En particulier, le standard de facto est Multicast VPN ou MVPN en réseau IP/MPLS traditionnel. Il s'agit d'une architecture basée sur des services de niveau 2 et 3 construits sur des tunnels résilients (E. C. Rosen and R. Aggarwal, « RFC 6513: Multicast in MPLS/BGP IP VPNs », 2012). Cette solution est basée sur un arbre de diffusion multicast établi par le protocole PIM, basé sur l'IGP. Bien que résiliente, cette solution ne permet 2 pas d'éviter l'impact suite à un reroutage. Ghannami et Shao (A. Ghannami and C. Shao, « Efficient Fast Recovery Mechanism in Software-Defined Networks », 11th International Conference for Internet Technology and Secured Transactions (ICITST -2016), 2016) ont proposé une solution sur 5 des réseaux SDN, dans laquelle des chemins de diffusion sont déployés sur la topologie et rapidement activés en cas de panne grâce aux possibilités offertes par les Fast Failover Group de la technologie OpenFlow. Il ne s'agit néanmoins pas d'arbres de multidiffusion, mais de multiples diffusions point-à-point. Enfin, Xiong et Chen X. Xiong and T. Chen, « MTM: A Reliable Multiple Trees 10 Multicast for Data Center Network », International Conference on Networking, Architecture, and Storage (NAS), 2017) ont proposé une autre approche, dans laquelle les destinations sont séparées en N groupes, portés par N arbres. Chaque destination sélectionne un voisin de secours appartenant à un autre arbre que le sien. En cas de panne d'un arbre, toutes les destinations portées par cet arbre basculent vers le voisin 15 de secours pour récupérer le flux. Les solutions à base d'arbre pour déterminer le cheminement des données sont dépendantes d'un calcul d'arbres. Pour s'assurer de la robustesse d'une telle solution, les arbres sont calculés de façon à être disjoints, de sorte qu'un problème sur un machine d'un des arbres n'impacte pas ou peu le ou les autres arbres. L'objectif est de 20 fournir une diversité de chemin à chaque destination afin que, en cas de panne, la livraison du flux de données soit assuré sans impact. Une telle approche de calcul d'arbre est par exemple présentée par Médard et al. (M. Médard, S. G. Finn, R. A. Barry, and R. G. Gallager, « Redundant Trees for Preplanned Recovery in Arbitrary Vert ex-Redundant or Edge-Redundant Graphs », 25 IEEE/ACM TRANSACTIONS ON NETWORKING, vol. 7, no. 5, /999), dans lequel un algorithme d'ordonnancement des noeuds permet de définir deux arbres totalement disjoints à partir d'une topologie où chaque destination est joignable par 2 chemins totalement disjoints. La recherche de deux arbres totalement disjoints, bien que parfait en théorie 30 pour une robustesse maximale, pose des problèmes car un réseau réel n'a pas forcément la possibilité de contenir ces deux arbres disjoints, auquel cas le calcul de 3 Médard et al. ne fournira aucun résultat. Une autre solution est de calculer des arbres les plus disjoints possibles, permettant d'obtenir d'une part une forte robustesse, et d'autre part d'ajouter certains critères à l'élaboration des arbres au-delà du simple fait qu'ils soient disjoints ou non. 5 Le problème de calcul d'arbre disjoints a également été abordé par la classe des algorithmes génétiques dans le cas de Spanning Trees (S. Kubler, J. Robert, J.-P. Georges, and E. Rondeau, « Dual path communications over multiple spanning trees for networked con trol systems, » Engineering Applications of Articial Intelligence, vol. 25, pp. 1460-1470, Oct. 2012). L'encodage proposé s'adapte à des Spanning Tree, mais pas à 10 des cas plus généraux de calcul d'arbre, contrairement à l'encodage proposé dans (N. Shimamoto, A. Hiramatsu, and K. Yamasaki, « A dynamic routing control based on a genetic algorithm,» San Francisco, CA, USA, pp. 1123-1128, IEEE, /993) qui traite du calcul d'un seul arbre. Les solutions existantes présentent un certain nombre d'inconvénients. 15 D'une part, elles nécessitent généralement un graphe où toutes les destinations sont joignables par deux chemins strictement disjoints. Pour des raisons géographiques et économiques, les topologies des réseaux de transport ne remplissent pas toujours ces contraintes. D'autre part, les solutions existantes ne s'intéressent pas au problème de la 20 contrainte de délai, supposant que les caractéristiques physiques du réseau utilisé remplissent cette contrainte. Or, les applications de transmission de flux audiovisuel nécessitent une transmission continue des données en temps réel, et le délai de transmission doit donc être contraint. Les inventeurs ont donc cherché une solution à ces inconvénients. 25 3. Objectifs de l'invention L'invention vise à pallier au moins certains des inconvénients des procédés de configuration d'architecture réseau connus. En particulier, l'invention vise à fournir, dans au moins un mode de réalisation 30 de l'invention, un procédé de configuration d'architecture réseau permettant la transmission en multidiffusion d'un flux de données audiovisuel continu, dans un délai 4 contraint, et résilient. L'invention vise aussi à fournir, dans au moins un mode de réalisation, un procédé de configuration d'architecture réseau compatible avec tout type de topologie de l'architecture réseau. 5 4. Exposé de l'invention Pour ce faire, l'invention concerne un procédé de configuration d'une architecture réseau comprenant un serveur source, une pluralité de machines clientes et une pluralité de machines noeuds, pour une transmission de type multidiffusion par le serveur source d'un flux de données vers les machines clientes via deux arbres de 10 transmission de flux de données disjoints dans lesquels le serveur source forme une racine des arbres, les machines clients forment des feuilles des arbres et les machines noeuds forment des noeuds des arbres, le procédé comprenant les étapes suivantes : - une étape de construction d'un graphe initial à partir de l'architecture réseau, chaque serveur source, machine cliente et machine noeud 15 formant un point du graphe, lesdits points étant reliés par des liens bidirectionnels et pondérés en fonction de la bande passante et du délai de transmission de données entre les points, - une étape de calcul de deux arbres de transmission de flux de données les plus disjoints possible entre le point formé par le serveur source vers 20 tous les points formés par les machines clientes, - une étape de configuration de l'architecture réseau par un contrôleur de réseau en fournissant au serveur source et aux machines noeuds une configuration de routage représentative des deux arbres de transmission de flux de données, 25 caractérisé en ce que l'étape de calcul des deux arbres de transmission de flux de données les plus disjoints possible comprend les sous-étapes suivantes : - Calcul d'une première solution par application itérative d'un algorithme Ml DCST; - Calcul d'une seconde solution par application itérative d'un routage 30 contraint en délai consécutivement pour chacun des arbres ; - Création de tables des routes exhaustives ; 5 - Application d'un algorithme génétique basé sur les tables des routes et les deux solutions précédemment calculées. Dans la suite de la description, on définira une racine d'un arbre comme étant une source, par exemple un serveur. Une feuille d'un arbre désigne une ou plusieurs 5 machines clientes se situant en une extrémité d'un chemin de l'arbre, et un noeud d'un arbre désigne une ou plusieurs machines faisant le lien entre la source et différentes machines, par exemple des terminaux. Par création de tables de routes exhaustives, on comprendra l'identification de toutes les routes possibles qui respectent les contraintes de délai. 10 Un procédé de configuration selon l'invention permet donc d'obtenir deux arbres les plus disjoints possible permettant la configuration d'une architecture réseau permettant la transmission en multidiffusion d'un flux de données audiovisuel continu, dans un délai contraint, et résilient, d'une source vers plusieurs machines clientes. Avantageusement et selon l'invention le calcul de deux chemins les plus 15 indépendants possible, les moins coûteux en bande passante et contraint en délai entre le serveur source et ladite machine cliente est effectué via un algorithme MIDCST décrit dans l'invention. Selon cet aspect de l'invention, contrairement à l'art antérieur en particulier l'algorithme Bejerano et al., cela permet le calcul des deux arbres sur tout type de 20 graphe initial. L'algorithme MIDCST est une variation de l'algorithme de Suurballe-Tarjan qui permet de trouver deux chemins les plus indépendants possibles, entre deux points d'un graphe dont les liens sont pondérés suivant deux dimensions, les moins coûteux suivant la première dimension (ici la bande passante) et sous contrainte d'un seuil pour la 25 seconde dimension (ici le délai). Avantageusement et selon l'invention, la sous-étape d'attribution de chemins aux différents arbres est effectuée suivant des paramètres quantitatifs d'indépendance et d'optimisation d'utilisation des liens. 30 Selon cet aspect de l'invention, cette étape garanti une indépendance maximale et participe à l'obtention d'un résultat plus optimal. 6 L'invention concerne également un procédé de configuration d'une architecture réseau comprenant une pluralité de serveurs sources, une pluralité de machines clientes et une pluralité de machines noeuds, pour une transmission de type multidiffusion par 5 chaque serveur source d'un flux de données vers les machines clientes via deux arbres de transmission de flux de données disjoints dans lesquels le serveur source forme une racine des arbres, les machines clients forment des feuilles des arbres et les machines noeuds forment des noeuds des arbres, le procédé comprenant les étapes suivantes : - une étape de construction d'un graphe initial à partir de l'architecture 10 réseau, chaque serveur source, machine cliente et machine noeud formant un point du graphe, lesdits points étant reliés par des liens bidirectionnels et pondérés en fonction de la bande passante et du délai de transmission de données entre les points, - une étape de calcul d'une forêt d'arbre de transmission, ladite forêt 15 comprenant, pour chaque serveur source, deux arbres de transmission de flux de données les plus disjoints possible entre le point formé par le serveur source vers tous les points formés par les machines clientes, - une étape de configuration de l'architecture réseau par un contrôleur de réseau en fournissant au serveur source et aux machines noeuds une 20 configuration de routage représentative des deux arbres de transmission de flux de données, caractérisé en ce que l'étape de calcul de la forêt d'arbre de transmission comprend, pour chaque serveur source, une étape de calcul des deux arbres de transmission de flux de données les plus disjoints possible d'un procédé de 25 configuration selon l'invention. Un procédé selon l'invention permet d'étendre le procédé de configuration pour la transmission à partir d'un serveur source à un procédé de configuration d'une architecture comprenant plusieurs serveurs sources. Pour chaque source, deux arbres de transmission de flux de données les plus disjoints possible sont calculés selon l'étape 30 de calcul décrite précédemment et l'ensemble des arbres calculés forme une forêt associant à chaque serveur source deux arbres de transmission de flux. 7 L'invention concerne également une architecture réseau, comprenant un contrôleur de réseau, un serveur source, une pluralité de machines clientes et une pluralité de machines noeuds, pour une transmission de type multidiffusion par le 5 serveur source d'un flux de données vers les machines clientes via deux arbres de transmission de flux de données disjoints dans lesquels le serveur source forme une racine des arbres, les machines clients forment des feuilles des arbres et les machines noeuds forment des noeuds des arbres, caractérisé en ce que le serveur source, la pluralité de machines clientes et la pluralité de machines noeuds sont configurés par le 10 contrôleur de réseau pour réaliser ladite transmission d'un flux de données selon deux arbres calculés selon un procédé selon l'invention. L'invention concerne également un procédé de configuration et une architecture caractérisés en combinaison par tout ou partie des caractéristiques mentionnées ci-dessus ou ci-après. 15 5. Liste des figures D'autres buts, caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante donnée à titre uniquement non limitatif et qui se réfère aux figures annexées dans lesquelles : - la figure 1 est un diagramme schématique d'un algorithme LARAC, 20 - la figure 2 est un diagramme schématique d'un algorithme de Suurballe-Tarjan, - la figure 3 est un diagramme schématique de l'algorithme MIDCST, - la figure 4 est un diagramme schématique d'un procédé de calcul de deux arbres de transmission de flux de données les plus disjoints possible selon un mode de réalisation de l'invention basé sur l'algorithme MIDCST, 25 - la figure 5 est un diagramme schématique d'un procédé de calcul de deux arbres de transmission de flux de données les plus disjoints possible selon un mode de réalisation de l'invention basé sur l'algorithme LARAC, - la figure 6 est un diagramme schématique d'un procédé général de fonctionnement d'un algorithme génétique, 30 - la figure 7 est un diagramme schématique d'un procédé de calcul de deux arbres de transmission de flux de données les plus disjoints possible selon un mode de 8 réalisation de l'invention basé sur un algorithme génétique et les deux procédés précédents, - la figure 8 est un diagramme schématique d'un procédé de calcul de toutes les routes possibles entre un noeud source et un noeud destinations, 5 - la figure 9 est une représentation schématique illustrant des exemples d'encodage d'un arbre de diffusion sous forme de chromosome comme proposé dans (N. Shimamoto, A. Hiramatsu, and K. Yamasaki, « A dynamic routing con trol based on a genetic algorithm, » San Francisco, CA, USA, pp. 1123-1128, IEEE, 1993), 10 - la figure 10 est une représentation schématique illustrant des exemples d'encodage d'une paire d'arbres de diffusion sous forme de chromosome exploitable par l'algorithme génétique, - la figure 11 est une représentation schématique illustrant un exemple de mutation aléatoire d'une paire d'arbres sous forme de chromosome, 15 - la figure 12 est une représentation schématique illustrant un exemple de mutation appelée « Swap » d'une paire d'arbres sous forme de chromosomes, - la figure 13 est une représentation schématique illustrant un exemple de croisement de deux paires d'arbres sous forme de chromosome, - la figure 14 est un diagramme schématique d'une étape de calcul d'une forêt 20 d'arbres de transmission de flux de données d'un procédé selon un mode de réalisation de l'invention. 6. Description détaillée d'un mode de réalisation de l'invention Les réalisations suivantes sont des exemples. Bien que la description se réfère à 25 un ou plusieurs modes de réalisation, ceci ne signifie pas nécessairement que chaque référence concerne le même mode de réalisation, ou que les caractéristiques s'appliquent seulement à un seul mode de réalisation. De simples caractéristiques de différents modes de réalisation peuvent également être combinées pour fournir d'autres réalisations. 30 Le procédé selon l'invention permet la configuration d'une architecture réseau comprenant un serveur source, une pluralité de machines clientes et une pluralité de 9 machines noeuds, pour une transmission de type multidiffusion par le serveur source d'un flux de données vers les machines clientes via deux arbres de transmission de flux de données disjoints dans lesquels le serveur source forme une racine des arbres, les machines clients forment des feuilles des arbres et les machines noeuds forment des 5 noeuds des arbres. De façon connue, un tel procédé de configuration comprend une étape de construction d'un graphe initial à partir de l'architecture réseau, chaque serveur source, machine cliente et machine noeud formant un point du graphe, lesdits points étant reliés par des liens bidirectionnels et pondérés en fonction de la bande passante et du délai de 10 transmission de données entre les points, une étape de calcul de deux arbres de transmission de flux de données les plus disjoints possible entre le point formé par le serveur source vers tous les points formés par les machines clientes, et une étape de configuration de l'architecture réseau par un contrôleur de réseau (ou équivalent) en fournissant au serveur source et aux machines noeuds une configuration de routage 15 représentative des deux arbres de transmission de flux de données. L'architecture ainsi configurée par le contrôleur de réseau permet de mettre en oeuvre la transmission du flux de données entre les différents éléments qui la composent. Le procédé de configuration est particulier en ce que l'étape de calcul des deux arbres de transmission de flux de données les plus disjoints possible est améliorée par 20 rapport aux méthodes connues, en particulier par rapport à la solution de Bejerano et al., déjà décrite. En particulier, la figure 7 représente schématiquement une étape de calcul de deux arbres de transmission de flux de données les plus disjoints possible d'un procédé selon un mode de réalisation de l'invention. L'étape de calcul des deux arbres diffère sur 25 plusieurs sous-étapes qui seront décrites plus loin en référence aux figures 4,5, et 8 à 13. En particulier, l'étape de calcul des deux arbres de transmission de flux de données les plus disjoints possible comprend plusieurs sous-étapes parmi les suivantes : - une sous-étape de calcul d'une première solution par application itérative d'un algorithme MIDCST; 30 - une sous-étape de calcul d'une seconde solution par application itérative d'un routage contraint en délai consécutivement pour chacun des arbres ; 10 - une sous-étape de création de tables des routes exhaustives ; et - une sous-étape d'application d'un algorithme génétique basé sur les tables des routes et les deux solutions précédemment calculées. 5 La description de ces sous-étapes nécessite au préalable une définition de l'algorithme de LARAC, déjà connu et utilisés dans ces sous-étapes, ainsi qu'une variation de l'algorithme de Suurballe-Tarjan créée spécifiquement pour la mise en oeuvre de ce procédé de configuration et mise en oeuvre dans ces sous-étapes. La figure 1 représente schématiquement un algorithme LARAC, pour 10 « Lagrangian Relaxation based Aggregated Cost », permettant de calculer un chemin entre deux points d'un graphe pondéré par au moins deux dimensions. Le chemin est le moins coûteux suivant une dimension et sous un seuil défini pour l'autre dimension. Par exemple, en réseau de télécommunication, l'algorithme LARAC permet de trouver le chemin le moins coûteux en bande passante, sous contrainte de délai. Son 15 fonctionnement détaillé est décrit dans la publication A. Juttner, B. Szviatovski, I. Mcs, and Z. Rajk, « Lagrange relaxation based Method for the QoS routing problem », IEEE INFOCOM, vol. 2, pp. 859868, 2001. L'algorithme de LARAC est utilisé dans différentes sous-étapes décrit plus loin. Toutefois, dans d'autres modes de réalisation, il peut être remplacé par d'autres 20 algorithmes de routage contraints, par exemple l'algorithme « Constrained Bellman- Ford », décrit par Widyono dans R. Widyono, "The design and evaluation of routing algorithms for realtime channels", International Computer Science Institute Berkeley, 1994. La figure 2 représente schématiquement un algorithme de Suurballe-Tarjan, 25 connu de l'art antérieur et permettant de calculer deux chemins strictement à noeuds disjoints entre deux points d'un graphe pondéré. Son fonctionnement détaillé est décrit dans la publication J. W. Suurballe and R. E. Tarjan, « A Quick Method for Finding Shortest Pairs of Disjoint Paths », in Networks, 1984 déjà citée. Cet algorithme peut également assurer le calcul de deux chemins strictement à noeuds disjoints entre deux 30 points d'un graphe pondéré, si la première étape présentée en figure 2 est ignorée. La figure 3 représente schématiquement une variation de l'algorithme de 11 Suurballe-Tarjan, appelée MIDCST. Cette variation de l'algorithme de Suurballe-Tarjan contraint en délai à indépendance maximale permet de trouver deux chemins les plus indépendants possible, entre deux points d'un graphe pondéré par deux dimensions, les moins 5 coûteux suivant la première dimension et sous contrainte d'un seuil pour la seconde dimension (ici le délai). La première différence avec l'algorithme de Suurballe-Tarjan est l'utilisation d'un algorithme de LARAC ou équivalent pour obtenir deux chemins les moins coûteux et sous contrainte de délai. La seconde différence est la mise en place d'une tolérance 10 permettant d'assurer deux chemins les plus indépendants possibles plutôt que de limiter l'algorithme à la recherche de chemins strictement indépendants. De la même manière que l'algorithme de Suurballe-Tarjan, une indépendance de lien ou de noeuds peut être recherchée. 15 La figure 4 représente schématiquement un procédé de calcul de deux arbres de transmission de flux de données les plus disjoints possible selon un mode de réalisation de l'invention basé sur l'algorithme MIDCST. Ce procédé est appelé IS pour plus de lisibilité. Pour chaque destination qui n'est pas encore jointe par les deux arbres, 20 l'algorithme MIDCST est appliqué. Chacun des chemins appartenant à la paire ainsi calculée est alors affecté à l'un des deux arbres de sorte à respecter la plus grande indépendance possible et, en cas d'égalité, le plus grand partage de noeuds ou de liens déjà présents dans l'arbre. Ce procédé tente de maximiser l'indépendance des arbres, tout en optimisant 25 l'utilisation de noeuds ou liens communs au sein d'un arbre, le tout sous contrainte de délai. La figure 5 représente schématiquement un procédé de calcul de deux arbres de transmission de flux de données les plus disjoints possible selon un mode de réalisation 30 de l'invention basé sur l'algorithme LARAC. Ce procédé est appelé RTF (« Red Tree First ») pour plus de lisibilité. 12 Un premier arbre est calculé de la manière suivante. Pour chaque destination qui n'est pas encore jointe par l'arbre, l'algorithme LARAC est appliqué entre la source et la destination. Le chemin le plus léger parmi ceux obtenu est ajouté à l'arbre. La pondération du graphe est temporairement modifiée pour que les noeuds ou liens 5 appartenant à l'arbre aient un poids nul. On itère cette opération jusqu'à ce que toutes les destinations soient jointes par l'arbre. Une fois l'arbre complet, la pondération du graphe est temporairement modifiée pour que les noeuds ou liens appartenant à l'arbre aient un poids maximal. Le second arbre est alors calculé dans ce contexte suivant le même procédé. 10 Ce procédé tente d'obtenir des arbres les plus léger possible, en priorisant la création du premier arbre, et maximise l'indépendance des arbres, le tout sous contrainte de délai. La figure 6 représente schématiquement le procédé général de fonctionnement 15 d'un algorithme génétique : à partir d'une population de solutions existante, une nouvelle population est générée grâce à des opérateurs de croisement et de mutation afin de converger vers un individu optimal, ou quasi-optimal suivant des contraintes de calcul données. 20 La figure 7 représente schématiquement le procédé de calcul de deux arbres de transmission de flux de données les plus disjoints possible selon un mode de réalisation de l'invention basé sur un algorithme génétique et les deux procédés IS et RTF. Deux paires d'arbres sont d'abord calculées à l'aide des procédés IS et RTF présentés précédemment. Des tables des routes sont ensuite remplies à l'aide d'un 25 procédé décrit en figure 8. Une population aléatoire de paires d'arbres est alors générée, incluant les paires calculées précédemment. Des opérateurs de croisement et mutation définis suivant un mode de réalisation de l'invention sont ensuite appliqués afin de générer une nouvelle population, et ce de manière itérative jusqu'à atteinte d'un objectif qui peut être défini par un temps de calcul, un nombre d'itérations ou encore un 30 seuil de qualité. Comme précédemment, cet algorithme peut rechercher une indépendance de 13 liens ou de noeuds, suivant la valeur choisie pour Y avant le calcul de valeur d'adaptation. Dans la figure 7, c'est le nombre de liens communs qui est pris en compte. Les deux arbres obtenus sont les arbres de transmission de flux de données les plus disjoints possible. 5 Le procédé de configuration peut donc réaliser l'étape de configuration de l'architecture réseau par un contrôleur de réseau en fournissant au serveur source et aux machines noeuds une configuration de routage représentative des deux arbres de transmission de flux de données. 10 La figure 8 représente schématiquement le procédé de calcul de toutes les routes possibles entre un noeud source et un noeud destinations afin de remplir une table des routes simples contraintes en délai exhaustive. On appelle route simple toute route qui ne contienne pas de cycles. Une exploration du graphe à partir du noeud source à l'aide d'une pile contenant 15 les chemins vers différents noeuds permet de trouver toutes les routes simples possibles. Une telle route est alors ajoutée à la table des routes si elle satisfait la contrainte en délai. La figure 9 représente schématiquement des exemples d'encodage d'un arbre de 20 diffusion sous forme d'une chaine de caractères appelée chromosome comme proposé dans (N. Shimamoto, A. Hiramatsu, and K. Yamasaki, « A dynamic routing control based on a genetic algorithm, » San Francisco, CA, USA, pp. 1123-1128, IEEE, 1993). Un tel encodage est appelé « Path-oriented » dans la littérature. Un arbre est constitué d'un ensemble de routes vers les différentes destinations 25 qu'il joint. Ces routes correspondent à un nombre entier dans la table des routes possibles vers un noeud donné. Chaque caractère du chromosome correspond à une destination de l'arbre, sa valeur correspondant à l'identifiant de route dans la table de cette destination. En haut à gauche par exemple, l'arbre représenté en pointillés est encodé dans le chromosome (1,1,2). Cela signifie que cet arbre est une combinaison du 30 chemin 1 de la table dl, du chemin 1 de la table d2 et du chemin 2 de la table d3. Chacun des liens de l'arbre représenté appartient à l'un de ces chemins. 14 La figure 10 représente schématiquement des exemples d'encodage d'une paire d'arbres de diffusion sous forme de chromosome exploitable par l'algorithme génétique présenté en figure 7. 5 Il s'agit d'accoler l'encodage « Path-oriented » décrit en figure 9 de deux arbres de diffusion. A gauche par exemple, la paire d'arbre représentée est encodé dans le chromosome (1,4,3,2,1,1). Cela signifie que cette paire contient l'arbre A (en pointillés) qui est une combinaison du chemin 1 de la table dl, du chemin 4 de la table d2 et du chemin 3 de la table d3; et l'arbre B (en points-tirets) qui est une combinaison du 10 chemin 2 de la table dl, du chemin 1 de la table d2 et du chemin 1 de la table d3. Chacun des liens de l'arbre représenté appartient à l'un de ces chemins. La figure 11 représente schématiquement un exemple d'application de l'opérateur de mutation aléatoire utilisé dans l'algorithme génétique présenté en figure 15 7. Une position aléatoire du chromosome est sélectionnée, et prend une nouvelle valeur aléatoire. Dans l'exemple, c'est le gène en position 2 qui passe de la valeur 4 à une nouvelle valeur aléatoire 2. L'arbre en pointillés est alors modifié en conséquence. 20 La figure 12 représente schématiquement un exemple d'application de l'opérateur de mutation appelé « Swap » selon un mode de réalisation de l'invention, utilisé dans l'algorithme génétique présenté en figure 7. Deux valeurs du même chromosome sont échangées. Ces deux valeurs correspondent à des routes vers une même destination, c'est-à-dire que les positions de 25 ces valeurs sont distantes d'exactement le nombre de destinations totales. L'opérateur de mutation dépend de la longueur du chromosome. Dans l'exemple, les gènes en position 1 et 4 sont échangés, car ils correspondent au premier gène de chaque arbre. Les chemins vers dl des arbres en pointillés et en points-tirets sont échangés. 30 La figure 13 représente schématiquement un exemple d'application de l'opérateur de croisement utilisé dans l'algorithme génétique présenté en figure 7, sur 15 deux paires d'arbres sous la forme de chromosomes. Deux paires de valeurs sont échangées entre les deux chromosomes parents. Ces valeurs se trouvent aux mêmes positions dans les deux chromosomes, et sont respectivement distantes d'exactement le nombre de destinations totales. Cette 5 opération correspond à l'échange d'une paire de chemins pour une même destination entre deux paires d'arbres de diffusion. Dans l'exemple, les paires de gènes en position 3 et 6 sont échangés, car ils correspondent au troisième gène de chaque arbre. La paire (3,1) est échangée avec la paire (1,2). Les arbres associés aux chromosomes sont alors modifiés en conséquence. 10 La figure 14 représente schématiquement une étape de calcul d'une forêt d'arbres de transmissions de flux de données d'un procédé de configuration selon un mode de réalisation de l'invention. Les tables des routes nécessaires au fonctionnement de l'algorithme génétique 15 présenté en figure 7 sont établies de manière similaire au procédé présenté en figure 8 pour chacune des sources. A chaque chromosome est affecté un second chromosome de même longueur, indiquant le numéro de la table dans laquelle la valeur doit être lue. Ce chromosome associé subit les mêmes transformations que le chromosome représentant les arbres. Lors du fonctionnement de l'algorithme génétique, l'opérateur 20 de mutation aléatoire présenté en figure 11 doit être modifié. Les valeurs aléatoires sont prises dans une table différente de la table utilisée pour le gène associé dans le second arbre. L'opérateur « Swap » et l'opérateur de croisement, présentés respectivement en figure 12 et 13, ne sont pas modifiés. L'algorithme génétique présenté en figure 7 est alors appliqué sans l'intégration 25 des résultats des heuristiques IS et RTF, respectivement présentés en figure 4 et 5, incompatibles avec la présence de plusieurs sources. On obtient alors de multiples arbres - autrement appelé une « forêt » - chacun ayant pour racine l'un des noeuds source initialement souhaités. 30 En résumé, un procédé de configuration selon l'invention comprend l'utilisation d'un algorithme LARAC pour calculer un chemin qui soit le plus léger possible et 16 contraint en délai. Cet algorithme LARAC est exploité par l'algorithme MIDCST pour en déduire deux chemins vers une destination, ces deux chemins étant les plus légers possible, les plus indépendants possible et contraints en délai. L'algorithme MIDCST est lui-même exploité par les procédés IS et RTF, chacun de ces procédés étant exploité par 5 l'algorithme génétique, comme précédemment décrit. L'algorithme génétique permet alors de calculer deux arbres les plus légers possible, les plus indépendants possible et contraints en délai. L'invention proposée ne se limite pas au calcul d'arbres dans un graphe, mais 10 comprend aussi la détermination d'arbres de transmission de données entre en un serveur source vers des machines clients de façon à configurer une architecture de réseau. Les résultats des calculs sont transmis aux composants de l'architecture réseau, par exemple aux routeurs et aux commutateurs du réseau, pour implémenter le ou les arbres de transmission, REVENDICATIONS1. Procédé de configuration d'une architecture réseau comprenant un serveur source, une pluralité de machines clientes et une pluralité de machines noeuds, pour une transmission de type multidiffusion par le serveur source d'un flux de données vers les machines clientes via deux arbres de transmission de flux de données disjoints dans lesquels le serveur source forme une racine des arbres, les machines clients forment des feuilles des arbres et les machines noeuds forment des noeuds des arbres, le procédé comprenant les étapes suivantes : a) une étape de construction d'un graphe initial à partir de l'architecture réseau, chaque serveur source, machine cliente et machine noeud formant un point du graphe, lesdits points étant reliés par des liens bidirectionnels et pondérés en fonction de la bande passante et du délai de transmission de données entre les points, b) une étape de calcul de deux arbres de transmission de flux de données les plus disjoints possible entre le point formé par le serveur source vers tous les points formés par les machines clientes, c) une étape de configuration de l'architecture réseau par un contrôleur de réseau en fournissant au serveur source et aux machines noeuds une configuration de routage représentative des deux arbres de transmission de flux de données, caractérisé en ce que l'étape de calcul des deux arbres de transmission de flux de données les plus disjoints possible comprend les sous-étapes suivantes : - Calcul d'une première solution par application itérative d'un algorithme M I DCST; - Calcul d'une seconde solution par application itérative d'un routage contraint en délai consécutivement pour chacun des arbres ; - Création de tables des routes exhaustives ; - Application d'un algorithme génétique basé sur les tables des routes et les deux solutions précédemment calculées. 18 2. Procédé de configuration selon la revendication 1, caractérisé en ce que la sous-étape de calcul d'une première solution à partir du graphe initial comprend : a) la création d'une liste des machines clientes dites non traitées, 5 b) pour chaque machine cliente non traitée, le calcul d'une paire de chemins à partir du serveur source via un algorithme MIDCST, les chemins de la paire étant les plus indépendants possible, les moins coûteux en bande passante et contraints en délai, c) l'attribution de chaque chemin de la paire à un arbre, suivant la plus 10 grande indépendance des deux arbres ou, en cas d'égalité, le plus grand nombre de liens réutilisés. En cas d'égalité, la machine cliente sera à traiter lors de l'itération suivante. Sinon, la machine clientes est supprimée de la liste des machines clientes non traitées d) la répétition des étapes b) et c) jusqu'à ce que la liste des machines 15 clientes non traitées soit vide 3. Procédé de configuration selon la revendication 1, caractérisé en ce que la sous- étape de calcul d'une seconde solution à partir du graphe initial comprend : a) la création d'une liste des machines clientes dites non traitées, 20 b) pour chaque machine cliente non traitées, le calcul d'un chemin à partir du serveur source via un algorithme contraint en délai, le chemin le moins coûteux en bande passante sous contrainte de délai, c) la sélection du chemin le moins coûteux, la modification de la pondération à zéro des liens de ce chemin, et la suppression de la 25 machine cliente de la liste des machines clientes non traitées, d) la répétition des étapes b) et c) jusqu'à ce que la liste des machines clientes non traitées soit vide, e) la modification de la pondération au poids total du graphe de tous les liens appartenant à des chemins sélectionnés lors de l'étape c), 30 f) la répétition des étapes a) à d) pour la création d'un second arbre. 19 4. Procédé de configuration d'une architecture réseau comprenant une pluralité de serveurs sources, une pluralité de machines clientes et une pluralité de machines noeuds, pour une transmission de type multidiffusion par chaque serveur source d'un flux de données vers les machines clientes via deux arbres de transmission de 5 flux de données disjoints dans lesquels le serveur source forme une racine des arbres, les machines clients forment des feuilles des arbres et les machines noeuds forment des noeuds des arbres, le procédé comprenant les étapes suivantes : g) une étape de construction d'un graphe initial à partir de l'architecture réseau, chaque serveur source, machine cliente et 10 machine noeud formant un point du graphe, lesdits points étant reliés par des liens bidirectionnels et pondérés en fonction de la bande passante et du délai de transmission de données entre les points, h) une étape de calcul d'une forêt d'arbre de transmission, ladite forêt 15 comprenant, pour chaque serveur source, deux arbres de transmission de flux de données les plus disjoints possible entre le point formé par le serveur source vers tous les points formés par les machines clientes, une étape de configuration de l'architecture réseau par un contrôleur 20 de réseau en fournissant au serveur source et aux machines noeuds une configuration de routage représentative des deux arbres de transmission de flux de données, caractérisé en ce que l'étape de calcul de la forêt d'arbre de transmission comprend, pour chaque serveur source, une étape de calcul des deux arbres de transmission de flux 25 de données les plus disjoints possible d'un procédé de configuration selon la revendication 1. 5. Architecture réseau, comprenant un contrôleur de réseau, au moins un serveur source, une pluralité de machines clientes et une pluralité de machines noeuds, pour 30 une transmission de type multidiffusion par le serveur source d'un flux de données vers les machines clientes via deux arbres de transmission de flux de données 20 disjoints dans lesquels le serveur source forme une racine des arbres, les machines clients forment des feuilles des arbres et les machines noeuds forment des noeuds des arbres, caractérisé en ce que le serveur source, la pluralité de machines clientes et la pluralité de machines noeuds sont configurés par le contrôleur de réseau pour 5 réaliser ladite transmission d'un flux de données selon deux arbres calculés selon un procédé selon l'une des revendications 1 à 3, ou selon une forêt calculée selon un procédé selon la revendication 4.