Conception de réseaux de télécommunications : optimisation et expérimentations Jean-François Lalande Directeurs de thèse: Jean-Claude Bermond - Michel Syska Université de Nice-Sophia Antipolis Mascotte, projet commun CNRS-I3S-INRIA 10 décembre 2004
Introduction Contexte Contexte Problématiques Optimisation dans les réseaux de cœur Conception du réseau Allocation des ressources Deux contextes particuliers Réseaux optiques Réseaux satellitaires Contributions Algorithmiques Expérimentations Logicielles
Introduction Démarche Démarche Optimisation dans les réseaux Modélisation des réseaux: mathématiques discrètes Méthodes algorithmiques Optimisation combinatoire et heuristiques Programmation linéaire Génération de colonnes Relaxation du modèle pour traiter des réseaux réels Algorithmes d approximation: arrondis aléatoires
Introduction Plan de l exposé Plan de l exposé Réseaux optiques Routage Protection Réseaux satellitaires Contributions logicielles
Les réseaux WDM Les réseaux WDM Problématique du routage Réseau physique: Nœuds : add/drop + routeur Arcs : câbles de fibres Requêtes : connexions entre 2 nœuds Connexion: route de longueurs d onde
Les réseaux WDM Les réseaux WDM Problématique du routage Réseau physique: Nœuds : add/drop + routeur Arcs : câbles de fibres Requêtes : connexions entre 2 nœuds Connexion: route de longueurs d onde
Les réseaux WDM Les réseaux WDM Problématique du routage Réseau physique: Nœuds : add/drop + routeur Arcs : câbles de fibres Requêtes : connexions entre 2 nœuds Connexion: route de longueurs d onde
Les réseaux WDM Routage Routage Avec: M. Bouklit, D. Coudert, C. Paul, H. Rivano Publications: AlgoTel 2003, SIROCCO 2003 Routage Application au routage optique Une couche: une longueur d onde Arrondi aléatoire (Raghavan) Approximation du multiflot fractionnaire (Fleisher) Algorithme de poussée de flot Amélioration de la complexité
Les réseaux WDM Protection des réseaux WDM Protection des réseaux WDM Avec: Michel Syska, Yann Verhoeven Publication: Roadef 2005 Protection 1 panne unique Protection à 100% Protection par arc/chemin B j C k E A D FIG.: Protection par arc/chemin
Les réseaux WDM Protection des réseaux WDM Protection des réseaux WDM Avec: Michel Syska, Yann Verhoeven Publication: Roadef 2005 Protection 1 panne unique Protection à 100% Protection par arc/chemin B j C k E A D FIG.: Protection par arc/chemin
Les réseaux WDM Protection des réseaux WDM Protection M : N B C E A F D Types de protection Protection M:N Partage de capacité de protection
Les réseaux WDM Protection des réseaux WDM Protection M : N B C E A F D Types de protection Protection M:N Partage de capacité de protection
Les réseaux WDM Protection des réseaux WDM Protection M : N B C E A F D Types de protection Protection M:N Partage de capacité de protection
Les réseaux WDM Protection des réseaux WDM Protection M : N B C E A F D Types de protection Protection M:N Partage de capacité de protection
Les réseaux WDM Principe de résolution Principe de résolution Baroni, Bayvel, Gibbens (JLT) Génération des chemins Requêtes z de taille size(z) Les plus courts chemins + µ Marche aléatoire limitée par pcc + µ Programme linéaire en nombres entiers Variable δp,z: A chemin p utilisé pour la requête z Variable fe,z: j flot arc e pour la requête z pour la panne j Variable f j : fibres optiques sur j Contraintes d exclusion, de capacité
Les réseaux WDM Principe de résolution Flot de protection Routes principales pour la requête z B C E z Flot de protection pour z pour une panne AB B C E δ A p 1,z z A δ A p 2,z δ A p 1,z δ A p 3,z F D δ A p 1,z A f AB AF,z f AB AD,z f AB BD,z F f AB DE,z D f AB FE,z Pour la requête z: size(z) = δ A p 1,z + δa p 2,z + δa p 3,z GP = {AB, AD, BD, DE, AF, FE} Au nœud D: f AB AD,z + f AB BD,z = f AB DE,z GP AB = {AD, BD, DE, AF, FE} FIG.: Variables du PL pour z = (A, E)
Les réseaux WDM Intérêt du modèle Intérêt du modèle B C E A D F FIG.: Pannes disjointes B j C k E A D FIG.: Réutilisation de la capacité principale
Les réseaux WDM Intérêt du modèle Intérêt du modèle Améliorations Moins de variables: réseaux réels Variables de flot entières mais non 0/1 Un cas de partage supplémentaire Relaxation Intégrité des variables Arrondi de la solution fractionnaire
Les réseaux WDM Arrondi aléatoire Arrondi aléatoire Arrondi aléatoire [Rag94] Arrondi aléatoire sur un multiflot fractionnaire B C E 3 A D FIG.: Arrondi aléatoire d une commodité
Les réseaux WDM Arrondi aléatoire Arrondi aléatoire Arrondi aléatoire [Rag94] Arrondi aléatoire sur un multiflot fractionnaire B 0.5 C 0.6 E 3 3 A 1.2 1.8 0.7 0.1 D 2.4 FIG.: Arrondi aléatoire d une commodité
Les réseaux WDM Arrondi aléatoire Arrondi aléatoire Arrondi aléatoire [Rag94] Arrondi aléatoire sur un multiflot fractionnaire B 0.5 C 0.6 E 3 3 A 1.2 p1=1.2/3 p2=1.8/3 1.8 0.7 0.1 D 2.4 FIG.: Arrondi aléatoire d une commodité
Les réseaux WDM Arrondi aléatoire Arrondi aléatoire Arrondi aléatoire [Rag94] Arrondi aléatoire sur un multiflot fractionnaire B 0.5 C 0.6 E 3 3 A 1.2 p1=1.2/3 p2=1.8/3 1.8 0.7 0.1 D 2.4 FIG.: Arrondi aléatoire d une commodité
Les réseaux WDM Arrondi aléatoire Arrondi aléatoire Arrondi aléatoire [Rag94] Arrondi aléatoire sur un multiflot fractionnaire B 0.5 C 0.6 E 3 3 A 1.2 p1=1.2/3 p2=1.8/3 1.8 0.7 0.1 D 2.4 FIG.: Arrondi aléatoire d une commodité
Les réseaux WDM Arrondi aléatoire Arrondi aléatoire Arrondi aléatoire [Rag94] Arrondi aléatoire sur un multiflot fractionnaire B 0.5 C 0.6 E 3 3 A 1.2 p1=1.2/3 p2=1.8/3 1.8 0.7 0.1 D 2.4 FIG.: Arrondi aléatoire d une commodité
Les réseaux WDM Arrondi aléatoire Adaptation de l algorithme Arrondi des chemins principaux/protection Tirage des chemins principaux Tirage du flot de protection pour chaque chemin principal Garantie de qualité 100% des cas de protection Solution valide avec probabilité 1 1 E
Les réseaux WDM Résultats expérimentaux Résultats expérimentaux Réseau Source Nœuds Arcs Requêtes R 3 Europe 11 50 110 NSFNET Nsfnet 14 21 140 R 1 France 20 34 118 EU USA 64 150 190 TAB.: Caractéristiques des réseaux testés
Les réseaux WDM Résultats expérimentaux Temps de résolution 350 300 LSV BBG 250 Temps 200 150 100 50 0 R3 Nsfnet R1 EU FIG.: Temps en secondes
Les réseaux WDM Résultats expérimentaux Nombre de fibres Nombre de fibres 110 100 90 80 70 60 50 40 LSV BBG R3 Nsfnet R1 EU FIG.: Nombre total de fibres
Les réseaux WDM Résultats expérimentaux Nombre de longueurs d onde Nombre de longueurs d onde 3500 3000 2500 2000 1500 1000 500 LSV BBG R3 Nsfnet R1 EU FIG.: Nombre total de longueurs d onde
Les réseaux WDM Résultats expérimentaux Nombre de longueurs d onde Nombre de longueurs d onde 665 660 655 650 645 640 Marche aleatoire Parcours en largeur 0 1 2 3 4 5 FIG.: Nombre total de longueurs d onde: BBG fractionnaire mu
Les réseaux WDM Bilan Bilan Algorithme LSV Bonne relaxation Algorithme d approximation pour la solution entière Réseaux réels Que faire quand aucune solution n est trouvée? Du point de vue de l algorithme: Augmenter le nombre de chemins générés Réaliser un max-flot sur le réseau Du point de vue du réseau: Augmenter les capacités
Allocation de fréquences dans les réseaux satellitaires Plan de l exposé Réseaux optiques Réseaux satellitaires Allocation de fréquences Contributions logicielles
Allocation de fréquences dans les réseaux satellitaires Problématique Communications satellites/terminaux Avec: S. Alouf, E. Altman, J. Galtier, C. Touati Publications: Infocom 2005, Combinatorial Optimization in Communication Networks Problématique proposée par Alcatel Prévoir sa plage de réception Division en espace (largeur de bande) Division en temps (cyclique) Communication avec des terminaux au sol Terminaux Placés sur des spots au sol Spot découpé en zones: demandes spécifiques
Allocation de fréquences dans les réseaux satellitaires Problématique Demandes des terminaux FIG.: Répartition géographique des spots Types de demandes Demande en nombre timeslots Un timeslot est typé (largeur fréquence, durée) Zone envoie plusieurs type de timeslots
Allocation de fréquences dans les réseaux satellitaires Problématique Demandes Type Largeur Nombre de Durée Nombre de de bande porteuses timeslots 1 187.5 192 2944 18 2 750 96 736 36 3 3000 12 184 288 4 6000 6 92 576 Définition des demandes Type=(b,t) avec b t = cte A placer dans un espace (B,T)=(36000,52992) type i b i divise B type i t i divise T
Allocation de fréquences dans les réseaux satellitaires Problématique Interférences lobes antennes interférences de transmission zone z spot s spot s FIG.: Interférence d une zone z sur une zone z
Allocation de fréquences dans les réseaux satellitaires Méthode de résolution Méthode de résolution Programmation linéaire Satisfaction de la demande en nombre de timeslot typés Génération de colonnes Heuristiques de génération de combinaisons Zones qui émettent avec interférence acceptable Allocation de la trame Algorithme de placement des timeslots sur la trame
Allocation de fréquences dans les réseaux satellitaires Programme linéaire Réponse à la demande Programmation linéaire Variables: x Fi famille typée (couple famille-type) Contrainte de satisfaction de la demande Placement des familles typées sur l aire BxT Caractéristique d une famille F i Spot s = (z, z1, z2) F T i (s) = t j (production de type j) F A i (z) = on (zone allumée)
Allocation de fréquences dans les réseaux satellitaires Programme linéaire j, z, / spot s = (z, z 1, z 2 ), Fi M x Fi d(z, t j ) F T i (s) = t j i / et Fi A (z) = on
Allocation de fréquences dans les réseaux satellitaires Génération de colonnes Génération de colonnes Générer des colonnes par heuristiques Maître zones actives Placement des timeslots sur B T Résoudre le programme linéaire entier processus action optimal avec l ensemble courant de colonnes Sauver les colonnes utilisées Esclave types émis
Allocation de fréquences dans les réseaux satellitaires Algorithme de placement Algorithme de placement x y 0 4 8 16 24 32
Allocation de fréquences dans les réseaux satellitaires Algorithme de placement Algorithme de placement 0 1 2 3 4 x y 0 4 8 16 24 32
Allocation de fréquences dans les réseaux satellitaires Algorithme de placement Algorithme de placement 0 1 2 3 4 8 x y 0 4 8 16 24 32
Allocation de fréquences dans les réseaux satellitaires Algorithme de placement Algorithme de placement 0 1 2 3 4 8 9 10 11 x 12 13 14 15 16 y 0 4 8 16 24 32
Allocation de fréquences dans les réseaux satellitaires Algorithme de placement Algorithme de placement 0 1 2 3 4 8 9 10 11 x 12 13 14 15 16 18 y 0 4 8 16 24 32
Allocation de fréquences dans les réseaux satellitaires Algorithme de placement Algorithme de placement 0 1 2 3 4 8 9 10 11 x 12 13 14 15 16 18 19 20 21 22 23 24 y 0 4 8 16 24 32
Allocation de fréquences dans les réseaux satellitaires Algorithme de placement Algorithme de placement 0 1 2 3 4 8 9 10 11 x 12 13 14 15 16 18 19 20 21 22 23 24 y 0 4 8 16 24 32
Allocation de fréquences dans les réseaux satellitaires Résultats expérimentaux T Surface Type 4 Type 4/3 2 Type 4/2 8 Type 4/1 32 Type 3 Type 3/2 Type 3/1 4 16 B/2 Type 2 Type 2/1 Type 1 4
Allocation de fréquences dans les réseaux satellitaires Résultats expérimentaux Surface minimale 0 500 1000 1500 2000 2500 3000 3500 Surface 0 500 1000 1500 2000 2500 3000 Seuil FIG.: Valeurs d aires obtenues sur l ensemble des seuils possibles
Allocation de fréquences dans les réseaux satellitaires Bilan Bilan Qualité du plan de fréquence Tolérance de 1% d éloignement de l optimum Combinaisons de zones perdues lorsque le seuil diminue Information importante pour Alcatel Génération de colonnes Pas forcément exhaustive Passer le seuil d aire BT
MASCOPT Plan de l exposé Réseaux optiques Réseaux satellitaires Contributions logicielles Mascopt
MASCOPT Bibliothèque de graphes et de réseaux Une nouvelle bibliothèque Bibliothèque de modèles et d algorithmes Graphes Réseaux Sur l initiative de Michel Syska Deux ingénieurs experts: Bruno Bongiovanni Yann Verhoeven Contributions de l équipe Mascotte
MASCOPT Bibliothèque de graphes et de réseaux Une nouvelle bibliothèque Bibliothèque de modèles et d algorithmes Graphes Réseaux Sur l initiative de Michel Syska Deux ingénieurs experts: Bruno Bongiovanni Yann Verhoeven Contributions de l équipe Mascotte
MASCOPT Bibliothèque de graphes et de réseaux Une nouvelle bibliothèque Origines Validations de nos expérimentations Projet RNRT Porto Réutilisabilité Accessibilité Mascopt: boîte à outils réutilisable Caractéristiques 40 000 lignes de code Accessible au plus grand nombre Extensible et Interfaçable
MASCOPT Conception Conception Modèle de haut niveau Manipulation de structures complexes Facilité d écriture d algorithmes Modèle objet Héritage Algorithmes pour les graphes dans les réseaux Efficacité d implémentation
MASCOPT Conception // Lecture des graphes GraphChooser gc = new GraphChooser() ; HashMap my_graphs = gc.getgraphhashmapmgl(args[0]) ; DiGraph G = (DiGraph)my_graphs.get(new String("Cable")) ; DiGraph R = (DiGraph)my_graphs.get(new String("Request")) ; // Routage Routing routing = new Routing(G, R) ; routing.route() ; // Chemins solutions HashMap pathsforeachrequest = baroni.getpaths() ;
MASCOPT Services Contributions Modèles Définition des modèles Expérimentations d algorithmes Services Cohérence des données Entrées/Sorties Algorithmes Graphes: flot, chemins, arbres couvrants,... Réseau: routage, groupage, protection,...
MASCOPT Services Interface graphique Interface graphique Module autonome Affichage des résultats Trace graphique des algorithmes
MASCOPT Services Interface graphique Interface graphique Module autonome Affichage des résultats Trace graphique des algorithmes Technique Java Ilog Cplex (Concert) Licence LGPL Dépôt à l APP
MASCOPT Bilan Bilan Collaboratif Implémenter nos expérimentations Collaborer avec la communauté Perspectives Validation de l existant Construire des interfaces: capitaliser Etoffer les modèles de réseaux
Conclusion Conclusion Réseaux WDM Routage, groupage Protection Modèle plus efficace Programme linéaire et arrondi aléatoire Réseaux satellitaires Génération de colonnes Architecture maître/esclave Conception des antennes
Conclusion Mascopt Caractéristiques et objectifs de la bibliothèque Services et algorithmes Perspectives Protection dans les réseaux WDM Conversion de longueurs d onde Optimisation des reconfigurations des brasseurs Vers une politique de protection multicouche? Mascopt: collaboration simulation
Conclusion