Cet ouvrage fait partie de la bibliothèque YouScribe
Obtenez un accès à la bibliothèque pour le lire en ligne
En savoir plus
ou
Achetez pour : 57,00 €

Lecture en ligne + Téléchargement

Format(s) : PDF

sans DRM

Réseaux de calcul

De
227 pages
Réseaux de calcul étudie le cœur de trois nouvelles architectures informatiques distribuées : les grappes, les grilles et les nuages de calcul. Il présente leur système nerveux central respectif constitué d'un réseau complexe d'interconnexion et de protocoles de communication spécifiques.
Le lecteur trouvera les clés pour comprendre les contraintes et les problématiques essentielles auxquelles doit faire face un réseau de calcul : faible latence, très haut débit, haute performance, prédictibilité et sécurité. Les différents concepts et les technologies hétérogènes utilisées sont développés afin de permettre d'appréhender aussi bien les caractéristiques et les évolutions des composants physiques que les logiciels et les protocoles de communication spécifiques.
Réseaux de calcul met en perspective les solutions et les technologies mises en œuvre dans les grappes, les grilles et les nuages pour guider les programmeurs et les utilisateurs d'applications de calcul distribué vers des modèles de programmation et d'utilisation efficaces adaptés à chaque besoin.
Introduction. Chapitre 1. Des calculateurs multiprocesseurs aux nuages. Chapitre 2. Utilisation des technologies de calcul en réseau. Chapitre 3. Spécificités des réseaux de calcul. Chapitre 4. Le défi de la latence dans les grappes de calcul. Chapitre 5. Le défi du débit et de la distance. Chapitre 6. Mesurer les performances bout en bout. Chapitre 7. La technologie optique et les grilles. Chapitre 8. Bande passante à la demande. Chapitre 9. Sécurité des réseaux de calcul. Chapitre 10. Guide pratique de configuration. Conclusion : des grilles au futur Internet. Acronymes et définitions. Bibliographie. Index.
Voir plus Voir moins





















Les réseaux de calcul























© LAVOISIER, 2010
LAVOISIER
11, rue Lavoisier
75008 Paris

www.hermes-science.com
www.lavoisier.fr

ISBN 978-2-7462-3006-4
ISSN 2102-3220


Le Code de la propriété intellectuelle n'autorisant, aux termes de l'article L. 122-5, d'une part,
que les « copies ou reproductions strictement réservées à l'usage privé du copiste et non
destinées à une utilisation collective » et, d'autre part, que les analyses et les courtes citations
dans un but d'exemple et d'illustration, « toute représentation ou reproduction intégrale, ou
partielle, faite sans le consentement de l'auteur ou de ses ayants droit ou ayants cause, est
illicite » (article L. 122-4). Cette représentation ou reproduction, par quelque procédé que ce
soit, constituerait donc une contrefaçon sanctionnée par les articles L. 335-2 et suivants du
Code de la propriété intellectuelle.
Tous les noms de sociétés ou de produits cités dans cet ouvrage sont utilisés à des fins
d’identification et sont des marques de leurs détenteurs respectifs.


Printed and bound in England by Antony Rowe Ltd, Chippenham, September 2010.




Les réseaux de calcul

des grappes aux nuages de calcul










Pascale Vicat-Blanc Primet
Sébastien Soudan
Romaric Guillier
Brice Goglin






DIRECTION ÉDITORIALE GUY PUJOLLE
Collection architecture, applications, service
dirigée par MICHEL DIAZ




André Pérez, Gestion des ressources et des défaillances dans les réseaux
IP, MPLS et Ethernet, 2009
Eric Fleury et David Simplot-Ryl, Réseaux de capteurs, 2009
2Table des matières
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Chapitre 1. Des calculateurs multiprocesseurs aux nuages . . . . . . . . . . 17
1.1. L’explosion de la demande en moyens de calcul . . . . . . . . . . . . . 17
1.2. Les grappes de calculateurs . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.2.1. Emergence des grappes de calculateurs . . . . . . . . . . . . . . . 19
1.2.2. Anatomie d’une grappe de calculateurs . . . . . . . . . . . . . . . 19
1.3. Les grilles de calcul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.3.1. Les grilles de calcul haute performance . . . . . . . . . . . . . . . 23
1.3.2. Les grilles de calcul « pair à pair » . . . . . . . . . . . . . . . . . . 23
1.4. Le calcul dans un nuage de calculateurs . . . . . . . . . . . . . . . . . . 26
1.5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Chapitre 2. Utilisation des technologies de calcul en réseau . . . . . . . . . 31
2.1. Anatomie d’une application de calcul distribué . . . . . . . . . . . . . . 31
2.1.1. Parallélisation et distribution d’un algorithme . . . . . . . . . . . 33
2.1.1.1. Parallélisme gros grain . . . . . . . . . . . . . . . . . . . . . 33
2.1.1.2. P à grain fin . . . . . . . . . . . . . . . . . . . . . 34
2.1.2. Modélisation des applications parallèles . . . . . . . . . . . . . . 35
2.1.3. Exemple d’application de grille . . . . . . . . . . . . . . . . . . . 36
2.1.4. Classification générale des applications distribuées . . . . . . . . 38
2.1.4.1. Le calcul largement distribué . . . . . . . . . . . . . . . . . . 38
2.1.4.2. Le calcul à couplage lâche . . . . . . . . . . . . . . . . . . . 39
2.1.4.3. Le calcul en pipeline . . . . . . . . . . . . . . . . . . . . . . 40
2.1.4.4. Le calcul fortement synchronisé . . . . . . . . . . . . . . . . 40
2.1.4.5. Le calcul interactif et collaboratif . . . . . . . . . . . . . . . 41
2.1.4.6. Note . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.2. Modèles de programmation des applications parallèles distribuées . . . 41
2.2.1. Principaux modèles . . . . . . . . . . . . . . . . . . . . . . . . . . 416 Réseaux de calcul
2.2.2. Contraintes des applications à parallélisme fin . . . . . . . . . . . 42
2.2.3. La bibliothèque de communication MPI . . . . . . . . . . . . . . . 43
2.3. La coordination des ressources distribuées dans une grille . . . . . . . 45
2.3.1. Soumission et exécution d’une application distribuée . . . . . . . 45
2.3.2. Les gestionnaires de grilles . . . . . . . . . . . . . . . . . . . . . . 47
2.4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Chapitre 3. Spécificités des réseaux de calcul . . . . . . . . . . . . . . . . . . 49
3.1. Typologie des réseaux de calcul . . . . . . . . . . . . . . . . . . . . . . 49
3.1.1. Le réseau dans les grappes . . . . . . . . . . . . . . . . . . . . . . 50
3.1.2. Le dans les grilles . . . . . . . . . . . . . . . . . . . . . . . 50
3.1.3. Le réseau dans les nuages de calcul . . . . . . . . . . . . . . . . . 52
3.2. Transparence du réseau . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.2.1. Avantage de la transparence . . . . . . . . . . . . . . . . . . . . . 53
3.2.2. Fondations de la t des réseaux . . . . . . . . . . . . . 54
3.2.3. Les limites de TCP et IP dans les grappes . . . . . . . . . . . . . . 56
3.2.4. Limites de TCP et de la transparence du réseau dans les grilles . . 58
3.2.5. TCP dans un réseau à haut produit débit-délai . . . . . . . . . . . 58
3.2.6. Limites de l’absence de contrôle des communications . . . . . . . 59
3.3. Analyse détaillée des caractéristiques attendues des protocoles . . . . . 61
3.3.1. Critères topologiques . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.3.1.1. Nombre de sites impliqués . . . . . . . . . . . . . . . . . . . 61
3.3.1.2. d’utilisateurs impliqués . . . . . . . . . . . . . . . . 61
3.3.1.3. Contraintes de localisation des ressources . . . . . . . . . . 62
3.3.2. Critères de performance . . . . . . . . . . . . . . . . . . . . . . . . 62
3.3.2.1. Degré de couplage intertâches . . . . . . . . . . . . . . . . . 62
3.3.2.2. Sensibilité à la latence et au débit . . . . . . . . . . . . . . . 63
3.3.2.3. au débit et à son contrôle . . . . . . . . . . . . . . 64
3.3.2.4. Sensibilité à la confidentialité et à la sécurité . . . . . . . . . 65
3.3.2.5. Synthèse des exigences . . . . . . . . . . . . . . . . . . . . . 66
3.4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Chapitre 4. Le défi de la latence dans les grappes de calcul . . . . . . . . . 69
4.1. Principes-clés des réseaux haute performance de grappe . . . . . . . . 70
4.2. Support logiciel pour les réseaux haute performance . . . . . . . . . . . 71
4.2.1. Transferts zéro-copie . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.2.2. OS-bypass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.2.3. Notification des événements . . . . . . . . . . . . . . . . . . . . . 73
4.2.4. Le problème des traductions d’adresses . . . . . . . . . . . . . . . 74
4.2.5. Modèles de programmation non bloquants . . . . . . . . . . . . . 76
4.2.5.1. Cas 1 : passage de message . . . . . . . . . . . . . . . . . . . 76
4.2.5.2. Cas 2 : modèle d’accès à distance . . . . . . . . . . . . . . . 77
4.3. Description des principaux réseaux haute performance . . . . . . . . . 78Table des matières 7
4.3.1. Dolphins SCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.3.2. Myricom Myrinet et Myri-10G . . . . . . . . . . . . . . . . . . . . 79
4.3.3. Quadrics QsNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.3.4. Infiniband . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.3.5. Synthèse des caractéristiques des réseaux haute performance . . . 84
4.4. Convergence entre réseaux rapides et traditionnels . . . . . . . . . . . . 85
4.5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
Chapitre 5. Le défi du débit et de la distance . . . . . . . . . . . . . . . . . . 89
5.1. Obstacles au haut débit . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5.2. Principe de fonctionnement et limites du contrôle
de congestion de TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.2.1. Slow Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.2.2. Congestion Avoidance . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.2.3. Fast Retransmit . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.2.4. Modèle analytique . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
5.3. Limites de TCP sur de longues distances . . . . . . . . . . . . . . . . . 95
5.4. Configuration de TCP pour le haut débit . . . . . . . . . . . . . . . . . 96
5.4.1. Configurations matérielles . . . . . . . . . . . . . . . . . . . . . . 97
5.4.2. Configuration logicielle . . . . . . . . . . . . . . . . . . . . . . . . 97
5.4.3. Paramètres des drivers de cartes réseaux . . . . . . . . . . . . . . 100
5.5. Approches de contrôle de congestion alternatives
à celle de TCP standard . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
5.5.1. Utilisation de flots parallèles . . . . . . . . . . . . . . . . . . . . . 101
5.5.2. Modification de TCP . . . . . . . . . . . . . . . . . . . . . . . . . 102
5.5.2.1. Modifications du Slow Start . . . . . . . . . . . . . . . . . . 102
5.5.2.2. Méthodes de détection de congestion . . . . . . . . . . . . . 103
5.5.2.3. de régulation de débit . . . . . . . . . . . . . . . . 104
5.5.3. Approches à base d’UDP . . . . . . . . . . . . . . . . . . . . . . . 104
5.6. Exploration des variantes TCP pour le très haut débit . . . . . . . . . . 105
5.6.1. HighSpeed TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.6.2. Scalable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.6.3. BIC-TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.6.4. H-TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
5.6.5. CUBIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
5.7. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Chapitre 6. Mesurer les performances bout en bout . . . . . . . . . . . . . . 111
6.1. Objectifs de la mesure et de la prédiction du réseau dans une grille . . 111
6.1.1. Exemple illustratif : performance réseau et réplication
des données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
6.1.2. Objectifs d’un système de mesure des performances
dans une grille . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1148 Réseaux de calcul
6.2. Problématique et méthodes . . . . . . . . . . . . . . . . . . . . . . . . . 115
6.2.1. Terminologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
6.2.2. Inventaire des caractéristiques utiles dans une grille . . . . . . . . 119
6.2.3. Méthodes de mesure . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.2.3.1. Méthode active . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.2.3.2. passive . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.2.4. Outils de mesure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.3. Systèmes de mesure des performances réseau de grilles . . . . . . . . . 123
6.3.1. e2emonit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.3.2. PerfSONAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.3.3. Considérations architecturales . . . . . . . . . . . . . . . . . . . . 124
6.3.4. Déploiement des capteurs dans la grille . . . . . . . . . . . . . . . 126
6.3.5. Coordination des mesures . . . . . . . . . . . . . . . . . . . . . . . 128
6.4. Prédiction des performances . . . . . . . . . . . . . . . . . . . . . . . . 130
6.4.1. L’outil Network Weather Service . . . . . . . . . . . . . . . . . . . 130
6.4.2. Fonction coût du réseau . . . . . . . . . . . . . . . . . . . . . . . . 132
6.4.3. Formulation de la fonction coût . . . . . . . . . . . . . . . . . . . 133
6.4.4. Précision de l’estimation . . . . . . . . . . . . . . . . . . . . . . . 134
6.5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
Chapitre 7. La technologie optique et les grilles . . . . . . . . . . . . . . . . 137
7.1. Réseaux optiques et paradigmes de commutation . . . . . . . . . . . . 138
7.1.1. Communications optiques . . . . . . . . . . . . . . . . . . . . . . 138
7.1.1.1. Multiplexage de longueur d’onde . . . . . . . . . . . . . . . 139
7.1.1.2. Optical Add-Drop Multiplexers . . . . . . . . . . . . . . . . 139
7.1.1.3. Cross-Connect . . . . . . . . . . . . . . . . . . . . . 140
7.1.2. Paradigmes de commutation optique . . . . . . . . . . . . . . . . . 141
7.1.2.1. commutation optique de paquets . . . . . . . . . . . . . . . . 141
7.1.2.2. de rafales . . . . . . . . . . . . . . . . 142
7.1.2.3. optique de circuits . . . . . . . . . . . . . . . . 142
7.1.3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.2. Plans fonctionnels des réseaux de transport . . . . . . . . . . . . . . . . 144
7.2.1. Plan de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.2.2. Plan de contrôle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.2.2.1. Routage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.2.2.2. Signalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.2.3. Plan de gestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
7.2.4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
7.3. Plan de contrôle unifié : GMPLS/ASTN . . . . . . . . . . . . . . . . . . 148
7.3.1. Commutation par étiquettes . . . . . . . . . . . . . . . . . . . . . . 148
7.3.2. Protocoles : OSPF-TE/RSVP-TE/LMP/PCEP . . . . . . . . . . . 149
7.3.3. Modèles de service GMPLS . . . . . . . . . . . . . . . . . . . . . 150
7.3.4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151Table des matières 9
Chapitre 8. Bande passante à la demande . . . . . . . . . . . . . . . . . . . . 153
8.1. Modèle de service actuel : neutralité du réseau . . . . . . . . . . . . . . 154
8.1.1. Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8.1.2. Limites et problématiques . . . . . . . . . . . . . . . . . . . . . . . 156
8.1.3. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
8.2. Modèle « pair à pair » pour des services de fourniture de bande passante 157
8.2.1. UCLP/Ca*net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.2.2. GLIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.2.3. Modèle « pair à pair » orienté service . . . . . . . . . . . . . . . . 158
8.2.4. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8.3. Modèle d’overlay pour des services de fourniture de bande passante . 159
8.3.1. GNS-WSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.3.2. Carriocas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
8.3.3. StarPlane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
8.3.4. Phosphorus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
8.3.5. DRAGON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
8.3.6. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
8.4. Marché de bande passante . . . . . . . . . . . . . . . . . . . . . . . . . 162
8.5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Chapitre 9. Sécurité des réseaux de calcul . . . . . . . . . . . . . . . . . . . . 165
9.1. Exemple introductif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
9.2. Principes et méthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
9.2.1. Principes de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . 167
9.2.2. Contrôler l’accès à une ressource . . . . . . . . . . . . . . . . . . 168
9.2.3. Limite de l’approche par authentification . . . . . . . . . . . . . . 170
9.2.4. authentification contre autorisation . . . . . . . . . . . . . . . . . 171
9.2.5. Approches décentralisées . . . . . . . . . . . . . . . . . . . . . . . 172
9.3. Sécurisation des communications . . . . . . . . . . . . . . . . . . . . . 172
9.4. Virtualisation réseau et sécurité . . . . . . . . . . . . . . . . . . . . . . . 173
9.4.1. Approches classiques de virtualisation réseau . . . . . . . . . . . 174
9.4.2. Le protocole HIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
9.5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Chapitre 10. Guide pratique de configuration . . . . . . . . . . . . . . . . . 177
10.1. Configuration matérielle . . . . . . . . . . . . . . . . . . . . . . . . . . 178
10.1.1. Mémoire tampon . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
10.1.2. Bus PCI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
10.1.3. Puissance de calcul : CPU . . . . . . . . . . . . . . . . . . . . . . 179
10.1.4. Mémoire vive : RAM . . . . . . . . . . . . . . . . . . . . . . . . . 179
10.1.5. Disques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
10.2. Importance de l’ajustement des paramètres de TCP . . . . . . . . . . . 18010 Réseaux de calcul
10.3. Petit guide pratique de tuning . . . . . . . . . . . . . . . . . . . . . . . 182
10.3.1. Calcul du BDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
10.3.2. Configuration logicielle . . . . . . . . . . . . . . . . . . . . . . . 183
10.3.3. Autres solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
10.4. Utilisation de multiflux . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
10.5. Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Conclusion : des grilles au futur Internet . . . . . . . . . . . . . . . . . . . . 187
Acronymes et définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211Introduction
Depuis l’avènement de l’ordinateur en 1940, les besoins en puissance de calcul
n’ont cessé de s’accroître. Aujourd’hui, les grands domaines scientifiques tels que la
physique des hautes énergies, l’astro-physique, la climatologie, la biologie, l’imagerie
médicale s’appuient sur les nouvelles technologies de mutualisation et de partage du
potentiel informatique planétaire au travers de grilles internationales pour faire face
à la demande de moyens de traitement de leurs données respectives. Les chercheurs
soumettent quotidiennement des centaines de travaux de calcul à des infrastructures
distribuées de grande envergure telles que la grille européenne EGEE [EGE], qui re-
groupe plus de 100 000 processeurs, et bientôt EGI (European Grid Infrastructure),
qui en agrègera plus du double, ou la grille TERAGRID [PRO ] aux Etats-Unis. De-
main, de nombreux domaines industriels tels que l’automobile, l’énergie et le trans-
port, faisant de plus en plus appel à la simulation numérique, pourront bénéficier
de grands réservoirs de ressources informatiques mises en commun. Dans un futur
proche, cette approche s’étendra au commerce électronique, à la finance et à l’indus-
trie du loisir.
Au cours des quinze dernières années, trois technologies-clés se sont succédées
pour répondre toujours mieux à cette demande croissante en puissance de calcul. Ces
trois technologies incarnent la révolution du calcul en réseau : les grappes de calcu-
lateurs, les grilles de calcul et les nuages de calcul. Nous en donnons ci-dessous une
rapide définition :
– une grappe de calcul (cluster) est une collection d’ordinateurs individuels inter-
connectés via des réseaux très courte distance, très faible latence et haut débit ;
– une grille de calcul (grid) est l’agrégation d’un très grand nombre de ressources
de calcul et de stockage distribuées et interconnectées via des réseaux longue distance.
On distingue les grilles de calcul dédiées aux calculs intensifs des grilles de données
qui stockent, traitent et permettent l’accès à des volumes de données massifs, de l’or-
dre de la centaine de gigaoctets, voire du téraoctet ;
1112 Réseaux de calcul
– un nuage de calcul (cloud) fournit des services d’accès à des ressources via Inter-
net. L’infrastructure sous-jacente est totalement masquée aux usagers. Les ressources
mises à disposition sont généralement des machines virtuelles hébergées dans des cen-
tres de ressources, aussi nommés data centers.
A l’origine, ce sont les avancées spectaculaires des technologies de transmission
et de communication qui ont permis aux chercheurs d’imaginer ces architectures dis-
tribuées et qui ont rendu possible l’agrégation et la mutualisation des moyens in-
formatiques, vecteurs de la montée en puissance du calcul global. Les technologies
matérielles et logicielles des réseaux d’interconnexion, transparentes en apparence,
y jouent un rôle complexe, difficile à appréhender et peu souvent étudié. Pourtant la
place du réseau est, ici, centrale et son évolution sera certainement une clé des sys-
tèmes informatiques ubiquitaires à venir.
En effet, pour utiliser pleinement un réseau de communication mutualisé, des poli-
tiques de partage mises en œuvre par des mécanismes robustes et extensibles d’arbi-
trage et d’orchestration des communications sont nécessaires. Ces mécanismes sont
aujourd’hui implantés dans des logiciels distribués nommés protocoles de commu-
nication. Ces protocoles masquent la complexité du matériel et de l’organisation des
échanges. Les services de transfert de l’information sur un réseau reposent sur des pro-
tocoles et des logiciels de communications qui sont bâtis selon un modèle en couches
et le principe de bout en bout. Ces principes architecturaux offrent un compromis in-
téressant et robuste entre le besoin de fiabilité et celui de performance. Ils sont bien
adaptés aux infrastructures réseaux bas à moyen débit et non fiables et lorsque les be-
soins de transport sont relativement homogènes et que les contraintes de sécurité sont
assez faibles. Dans le cadre des réseaux haut débit et des environnements de grille de
calcul, il apparaît que les ordres de grandeur et les rapports des constantes numériques
en jeu sont assez éloignés des hypothèses initialement faites pour la conception des
protocoles et des architectures des logiciels de communication. Par exemple la taille
d’une trame Ethernet (entre 64 octets et 1 500 octets), paramètre qui conditionne de
manière indirecte la taille maximale des unités de transfert émises sur un réseau IP, a
été définie pour satisfaire des contraintes de propagation sur un câble coaxial de 200 m
et une vitesse de transfert de 10 Mbit/s. Aujourd’hui on utilise des liens optiques et les
débits peuvent être supérieurs à 10 Gbit/s. Sur les réseaux étendus, à l’époque de la
conception de l’Internet Protocol (IP), les débit d’accès étaient de l’ordre de 64 kbit/s.
Aujourd’hui on déploie des fibres optiques avec des débits d’accès de 100 Mbit/s à
1 Gbit/s. On a des liens à plus de 100 Gbit/s de débit dans les cœurs de réseau.
Comme la charge de travail n’est pas contrôlée par le réseau, traditionnellement
c’est la couche transport, première couche de bout en bout, qui réalise l’adaptation
aux fluctuations de performances liées aux variations de charge. La complexité de la
couche transport dépend de la qualité de service offerte par le réseau sous-jacent en
termes de garanties de service strictes de délai ou de taux de perte. Dans le modèleIntroduction 13
IP, offrant un service réseau sans garantie, deux principaux protocoles de transport
sont classiquement utilisés : un protocole rudimentaire, UDP, qui ne fait que du mul-
tiplexage de flux, et un protocole fiable très sophistiqué, TCP, qui réalise aussi bien
l’adaptation aux pertes de paquets que le contrôle de congestion par contrôle de débit
d’émission. TCP a été conçu pour s’adapter à un type de couche réseau sans garantie
de qualité de service (IP), pour des réseaux locaux et des réseaux longue distance à
faible débit ainsi que pour des classes d’applications limitées.
Mais ces protocoles de transport ne sont pas très bien adaptés aux infrastructures
très haut débit. Prenons l’exemple d’une simple connexion TCP sur un lien entre Lyon
et Montréal, de délai aller-retour de l’ordre de 100 ms et 10 Gbit de débit de bout en
bout. Par construction de l’algorithme d’évitement de congestion de TCP, si un seul
paquet est perdu, il faudra une heure et quarante minutes pour réparer et retrouver
le débit maximal. Le protocole TCP conçu pour réagir dynamiquement (c’est-à-dire
dans un intervalle de quelques millisecondes) aux phénomènes de congestion est peu
réactif dans de telles conditions !
Au cours des dix dernières années, un certain nombre d’alternatives à TCP ont été
proposées et implantées dans les systèmes d’exploitation modernes.
L’aspect protocolaire n’est pas l’unique paramètre à prendre en considération pour
évaluer et améliorer la performance de bout en bout. En effet, au sein même des nœuds
de communication utilisés, les délais dus aux différents mouvements de données et aux
opérations de contrôle à l’intérieur d’une machine ne sont pas du tout négligeables par
rapport aux délais rencontrés sur le réseau proprement dit (câbles et routeurs). Il faut
aussi prendre en compte l’hétérogénéité des besoins de performance.
Les protocoles utilisés dans le contexte du calcul distribué se sont petit à petit
diversifiés du fait de l’hétérogéneité des technologies physiques sous-jacentes et des
besoins des applications. Mais lorsque l’utilisateur final d’un cluster ou d’une grille
peine à obtenir les performances qu’il pourrait escompter au regard des performances
théoriques du matériel utilisé, il a souvent des difficultés à comprendre les verrous qui
limitent ces performances.
Cet ouvrage propose donc au lecteur de concentrer son regard plus particulière-
ment sur le cœur des architectures multimachines distribuées : le réseau d’intercon-
nexion et ses protocoles de communication. L’objectif est de présenter, de synthétiser
et d’articuler les différentes technologies réseau utilisées par les infrastructures de cal-
cul distribué actuelles et futures. Comme ces technologies sont très hétérogènes, aussi
bien au niveau de leurs caractéristiques physiques que de leurs logiciels, notre but est
de proposer le bon niveau d’abstraction pour aider le lecteur à structurer et à compren-
dre les problématiques essentielles. Il s’agit de distinguer les lignes directrices qui,
d’une part, ont orienté les évolutions technologiques aussi bien au niveau matériel que14 Réseaux de calcul
logiciel et, d’autre part, peuvent guider les programmeurs et utilisateurs d’applica-
tions de calcul distribué à adopter un modèle de programmation et une infrastructure
adaptés à chaque besoin.
Cet ouvrage se donne donc deux objectifs :
– permettre au lecteur familier des réseaux de communication de mieux compren-
dre quels sont les enjeux et les défis que la nouvelle révolution du calcul distribué pose
aux réseaux et à leurs logiciels de communication ;
– permettre au lecteur familier du calcul distribué de mieux comprendre quelles
sont les limites des outils matériels et logiciels actuels, et comment il peut adapter au
mieux son application à l’infrastructure de calcul et de communication dont il dispose
pour obtenir les meilleures performances possibles.
Pour atteindre ces deux objectifs, nous passons alternativement d’un point de vue à
l’autre, introduisant les principes de base du calcul distribué et des réseaux et détaillant
progressivement les approches les plus novatrices dans ces deux domaines.
Dans le chapitre 1, nous identifions les besoins, les motivations et les forces pous-
sant, au fil des ans, le secteur informatique vers le calcul distribué et l’utilisation mas-
sive des réseaux de calcul. Nous détaillons les différentes technologies de calcul en
réseau qui se sont succédées et en montrons les différences technologiques et con-
ceptuelles.
Dans le chapitre 2, nous classifions les applications de calcul distribué et analysons
les spécificités et les contraintes de communications de chacune de ces classes d’ap-
plications. Nous présentons en particulier la bibliothèque de communication par pas-
sage de messages, MPI, très utilisée par les programmeurs d’applications parallèles
distribuées.
Dans le chapitre 3, nous passons en revue les principes de base des réseaux de
communication traditionnels et leurs protocoles. Nous inventorions leurs limites au
regard des contraintes du calcul distribué exposées au chapitre précédent et analysons
en particulier le chemin des communications dans un contexte TCP/IP.
Les deux chapitres suivants sont consacrés à une analyse détaillée de deux défis
majeurs que le calcul distribué pose au réseau : la latence et le débit. Deux types d’ap-
plications caractéristiques servent à illustrer le propos : les applications de calcul par-
allèle sensibles au délai et les applications intensives en communications et sensibles
au débit. Dans ces chapitres, nous mettons aussi en exergue l’interaction étroite entre
le niveau matériel et le niveau logiciel, élément caractéristique du calcul en réseau.
Le chapitre 4 étudie comment le défi de la latence a été relevé dans les infrastruc-
tures de grappes de calculateurs pour bien répondre aux besoins des applications très
sensibles au délai d’acheminement de l’information entre les unités de calcul.Introduction 15
Le chapitre 5 se focalise sur les besoins des applications transférant des masses
importantes de données aussi bien pour les amener de leur point d’acquisition vers les
centres de calcul où elles sont traitées que pour les déplacer entre espaces de stock-
age afin de les conserver et les mettre à disposition de communautés larges et très
dispersées. Nous étudions ainsi comment le protocole TCP réagit dans les environ-
nements à haut produit débit-délai et détaillons les différentes approches proposées
pour permettre le transport d’informations à haut débit sur de très longues distances.
Le chapitre 6 s’intéresse à la mesure et à la prédiction de performance. Il per-
met au lecteur venant du domaine du calcul distribué de comprendre les apports des
infrastructures et outils de mesure et de prédiction des performances du réseau.
Le chapitre 7 montre comment les nouvelles technologies de commutation optique
rendent possible l’accès protégé à une capacité de communication adaptée aux besoins
de chaque application.
Le chapitre 8 présente les nouveaux services de gestion dynamique de bande pas-
sante, tels ceux actuellement proposés au sein de l’Open Grid Forum et qui apportent
des solutions aux applications ayant de forts besoins ponctuels en très haut débit.
Le chapitre 9 introduit la problématique et les principes de sécurité dans les réseaux
de calcul. Ce chapitre présente les principales solutions déployées aujourd’hui ainsi
que quelques clés à même de rassurer l’utilisateur d’infrastructures de calcul distribué.
Le chapitre 10 propose quelques exemples et exercices de paramétrage de proto-
cole et de système pour obtenir de hautes performances dans un réseau très haut débit
avec les outils actuellement disponibles dans le système Linux.
Pour conclure, nous synthétisons les différentes technologies réseau et les pro-
tocoles utilisés dans le calcul en réseau, et dressons quelques perspectives pour les
futurs réseaux qui intègreront, entre autres, notre future réserve de puissance de calcul
planétaire.Chapitre 1
Des calculateurs multiprocesseurs aux nuages
1.1. L’explosion de la demande en moyens de calcul
La demande en moyens de calcul ne cesse de croître du fait de l’avancée tech-
nologique des méthodes d’acquisitions et de traitements numériques, de l’explosion
subséquente des volumes de données et de l’expansion de la connectivité et des échan-
ges d’informations. Cette demande toujours croissante se décline de manière variable
selon les secteurs scientifiques, industriels ou domestiques considérés.
Les applications scientifiques ont toujours eu besoin de plus en plus de ressources
de calcul. Néamoins, un fait nouveau est apparu ces dernières années : la science
d’aujourd’hui est devenue une interdépendance très complexe entre disciplines, tech-
nologies et équipements.
Dans de nombreuses disciplines, le scientifique ne peut plus travailler seul sur sa
paillasse ou avec sa feuille blanche. Il doit s’en remettre à d’autres spécialistes qui
lui fournissent les outils techniques et méthodologiques complémentaires et indis-
pensables à sa propre recherche. C’est ce que l’on appelle le développement de la
multidisciplinarité.
Par exemple, les chercheurs en science de la vie ont aujourd’hui à analyser des
quantités énormes de données expérimentales qui ne peuvent être traitées que par
des équipes d’experts multidisciplinaires réalisant des études et des expérimentations
complexes et requérant des calculs intensifs. L’organisation en communautés et l’in-
tensification des échanges entre chercheurs auxquels on a assisté ces dernières années
augmentent le besoin de mutualiser les données et de collaborer étroitement.18 Réseaux de calcul
Ainsi ces équipes, rassemblant des expertises diverses et complémentaires, deman-
dent des environnements de travail coopératifs permettant d’analyser et de visualiser
de grands ensembles de données biologiques, de discuter les résultats et d’adresser
des questions de recherche biologique de manière interactive.
Ces environnements doivent combiner des ressources de visualisation avancées,
une connectivité à haute bande passante et l’accès à d’importantes réserves de res-
sources de calcul. Avec de tels environnements, les biologistes espèrent, par exem-
ple, pouvoir analyser des images de cellules à très haute résolution. En effet, jusqu’à
présent, les dispositifs actuels ne permettent que de visualiser des portions de cellule,
et ce à un faible niveau de résolution. Il est aussi impossible d’obtenir une informa-
tion contextuelle comme la localisation dans la cellule, le type de cellule ou l’état
métabolique.
Un autre exemple est celui de la recherche sur le climat, dont l’un des objectifs
principaux est de calculer une estimation adéquate des statistiques de la variabilité in-
terne du climat et ainsi de prévoir l’augmentation de la concentration en gaz à effet de
serre. Les aires d’étude sont très variées, allant de l’étude de la stabilité de la circula-
tion océanique aux changements de la circulation atmosphérique sur un continent en
passant par les statistiques des événements extrèmes. C’est un domaine fondamental
qui nécessite de combiner de nombreuses données issues de sources très hétérogènes
et par nature distantes géographiquement, de coupler divers modèles mathématiques
et de croiser des points de vue d’experts variés et complémentaires.
Du côté des applications industrielles, c’est aussi l’expansion de l’usage de la
simulation numérique qui accroît le besoin en puissance de calcul. La simulation
numérique est un outil permettant de simuler des phénomènes physiques réels et com-
plexes (résistance d’un matériau, usure d’un mécanisme sous différents types de sol-
licitations, etc.) à l’aide d’un programme informatique. L’ingénieur peut ainsi étudier
le fonctionnement et les propriétés du système modélisé et en prédire l’évolution.
Les simulations numériques scientifiques reposent sur la mise en œuvre de modèles
mathématiques souvent basés sur la technique des éléments finis et la visualisation
des résultats des calculs par des images de synthèse. Tous ces calculs nécessitent de
grandes puissances de traitement.
De plus, pour les entreprises, la rentabilisation de l’infrastructure informatique est
un facteur primordial. Le coût de la maintenance, mais aussi de plus en plus le coût en
énergie, devient prohibitif. Or, le besoin d’accéder à une immense puissance de calcul
peut être plus ou moins sporadique. L’entreprise ne requiert pas une disponibilité con-
tinue de ressources massives. Seules quelques heures ou quelques nuits par semaine
peuvent suffire : l’externalisation et la virtualisation des ressources informatiques de-
viennent de plus en plus intéressantes dans ce secteur.

Un pour Un
Permettre à tous d'accéder à la lecture
Pour chaque accès à la bibliothèque, YouScribe donne un accès à une personne dans le besoin