fondements de l’algorithmique des réseaux
DESCRIPTION
Fondements de l’algorithmique des réseaux . Stéphane Devismes. Plan. Réseau ? Algorithme distribué ? Problème à résoudre ? Exemple : circulation d’un jeton Conclusion. Plan. Réseau ? Algorithme distribué ? Problème à résoudre ? Exemple : circulation d’un jeton Conclusion. Réseaux. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/1.jpg)
SCI121
Fondements de l’algorithmique des réseaux
Stéphane Devismes
17/04/2014
![Page 2: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/2.jpg)
SCI121
Plan
• Réseau ?• Algorithme distribué ?• Problème à résoudre ?• Exemple : circulation d’un jeton• Conclusion
17/04/2014
![Page 3: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/3.jpg)
SCI121
Plan
• Réseau ?• Algorithme distribué ?• Problème à résoudre ?• Exemple : circulation d’un jeton• Conclusion
17/04/2014
![Page 4: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/4.jpg)
SCI121
Réseaux
17/04/2014
• « En informatique, un réseau est un ensemble interconnecté d’appareils électroniques, géographiquement distants qui échangent des informations »
Wikipédia
![Page 5: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/5.jpg)
SCI121
Exemples de réseaux
• Internet• Le réseau de l’Université• Le réseau téléphonique (filaire, cellulaire)• GPS• Réseau de capteurs (surveillance sismique)• ...
17/04/2014
![Page 6: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/6.jpg)
SCI121
Appareils Electroniques
17/04/2014
![Page 7: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/7.jpg)
SCI121
Interconnections
17/04/2014
![Page 8: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/8.jpg)
SCI121
Echange d’informations
17/04/2014
![Page 9: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/9.jpg)
SCI121
Couches de communication (Modèle OSI)
17/04/2014
ApplicationPrésentation
SessionTransport
RéseauMAC
PhysiqueEnvoi d’un seul bit d’information point à point
Envoi d’une trame de bits (message) point à point
Protocoles réseaux : Algorithmes distribués
Deux fonctions : - Envoi(M,v)- Réception(M,v)
Utilisateur final
![Page 10: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/10.jpg)
SCI121
Objectifs
• Communiquer : mail, chat …• Echanger : fichiers (mp3, doc)• Partager les resources :– Physique (imprimantes)– De calculs (applications)
• Accélérer le calcul– Grid computing– SETI@HOME
17/04/2014
![Page 11: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/11.jpg)
SCI121
Plan
• Réseau ?• Algorithme distribué ?• Problème à résoudre ?• Exemple : circulation d’un jeton• Conclusion
17/04/2014
![Page 12: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/12.jpg)
SCI121
Modèle théorique pour les réseaux : Les systèmes distribués
• Machines ≈ Processus
17/04/2014
![Page 13: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/13.jpg)
SCI121
Les systèmes distribués
• Machines ≈ Processus• Caractéristiques:– Pas de contrôle centralisé• Programmes locaux• Mémoires locales
17/04/2014
![Page 14: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/14.jpg)
SCI121
Les systèmes distribués
• Machines ≈ Processus• Caractéristiques:– Pas de contrôle
centralisé• Programmes locaux• Mémoires locales
– Asynchrones– Pas de temps global
17/04/2014
![Page 15: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/15.jpg)
SCI121
Les systèmes distribués
• Machines ≈ Processus• Caractéristiques:– Pas de contrôle
centralisé• Programmes locaux• Mémoires locales
– Asynchrones– Pas de temps global– Interconnectés
17/04/2014
![Page 16: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/16.jpg)
SCI121
Les systèmes distribués
• Machines ≈ Processus• Caractéristiques:– Pas de contrôle centralisé
• Programmes locaux• Mémoires locales
– Asynchrones– Pas de temps global– Interconnectés
• Passage de messages asynchrone et FIFO
17/04/2014
![Page 17: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/17.jpg)
SCI121
FIFO
17/04/2014
![Page 18: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/18.jpg)
SCI121
FIFO
17/04/2014
A
![Page 19: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/19.jpg)
SCI121
FIFO
17/04/2014
B A
![Page 20: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/20.jpg)
SCI121
FIFO
17/04/2014
C B A
![Page 21: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/21.jpg)
SCI121
FIFO
17/04/2014
AC B
![Page 22: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/22.jpg)
SCI121
FIFO
17/04/2014
BC
![Page 23: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/23.jpg)
SCI121
FIFO
17/04/2014
C
![Page 24: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/24.jpg)
SCI121
Les systèmes distribués
• Hypothèses– Liens bidirectionnels
17/04/2014
![Page 25: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/25.jpg)
SCI121
Liens bidirectionnels : pas toujours !
17/04/2014
![Page 26: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/26.jpg)
SCI121
Les systèmes distribués
• Hypothèses– Liens bidirectionnels– Identité unique
(e.g., adresse IP)
17/04/2014
12
4078
42
167
23
![Page 27: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/27.jpg)
SCI121
Les systèmes distribués
• Hypothèses– Liens bidirectionnels– Identité unique – Topologie statique et
connexe (≈graphe) • Nous excluons ici les
réseaux téléphoniques sans-fils !
17/04/2014
1674078
12
2342
![Page 28: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/28.jpg)
SCI121
Rappel : Connexité
Connexe !
17/04/2014
![Page 29: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/29.jpg)
SCI121
Rappel : Connexité
Pas connexe !
17/04/2014
![Page 30: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/30.jpg)
SCI121
Algorithme distribué
17/04/2014
![Page 31: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/31.jpg)
SCI121
Algorithme DistribuéExemple : Calcul d’un arbre couvrant
17/04/2014
![Page 32: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/32.jpg)
SCI121
Algorithme DistribuéExemple : Calcul d’un arbre couvrant
17/04/2014
![Page 33: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/33.jpg)
SCI121
Algorithme DistribuéExemple : Calcul d’un arbre couvrant
17/04/2014
![Page 34: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/34.jpg)
SCI121
• Entrées réparties
Algorithme DistribuéExemple : Calcul d’un arbre couvrant
17/04/2014
Racine= fauxRacine= vrai
Racine= faux
Racine= fauxRacine= faux
![Page 35: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/35.jpg)
SCI121
• Entrées réparties• Calculs locaux– Mémoires locales– Programmes locals– Envoi de messages– Décision locale
Algorithme DistribuéExemple : Calcul d’un arbre couvrant
17/04/2014
Racine= faux
![Page 36: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/36.jpg)
SCI121
• Entrées réparties• Calculs locaux– Mémoires locales– Programmes locals– Envoi de messages– Decision locale
• Sorties réparties
Algorithme DistribuéExemple : Calcul d’un arbre couvrant
17/04/2014
Racine= fauxRacine= vrai
Racine= faux
Racine= fauxRacine= faux
![Page 37: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/37.jpg)
SCI121
Algorithme DistribuéExemple : Calcul d’un arbre couvrant
• Entrées réparties• Calculs locaux– Mémoires locales– Programmes locals– Envoi de messages– Decision locale
• Sorties réparties• Tâche globale
17/04/2014
Racine= fauxRacine= vrai
Racine= faux
Racine= fauxRacine= faux
![Page 38: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/38.jpg)
SCI121
Evaluation des performancesQuel est le meilleur algorithme ?
• #Messages
• Volume (en bits)
• Temps (en rondes)
• Occupation mémoire (en bits)
17/04/2014
![Page 39: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/39.jpg)
SCI121
Plan
• Réseau ?• Algorithme distribué ?• Problème à résoudre ?• Exemple : circulation d’un jeton• Conclusion
17/04/2014
![Page 40: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/40.jpg)
SCI121
Problèmes classiques
• Echange de donnée : routage, diffusion, …
• Accords : consensus, élection, …
• Auto-organisation : arbre couvrant, clustering
• Allocation de ressources : exclusion mutuelle, diner des philosophes…
17/04/2014
![Page 41: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/41.jpg)
SCI121
Echange de donnée : routage
17/04/2014
![Page 42: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/42.jpg)
SCI121
Echange de donnée : routage
17/04/2014
Source
Destination
![Page 43: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/43.jpg)
SCI121
Echange de donnée : routage
17/04/2014
![Page 44: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/44.jpg)
SCI121
Accord : électionCalculer un chef !
17/04/2014
![Page 45: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/45.jpg)
SCI121
Accord : électionCalculer un chef !
17/04/2014
42
22
34
5856
7231
15
12
![Page 46: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/46.jpg)
SCI121
Accord : électionCalculer un chef !
17/04/2014
42
22
34
5856
7231
15
1212
12
12 12
12
12 12
12 12
![Page 47: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/47.jpg)
SCI121
Auto-organisation : k-Clustering
17/04/2014
![Page 48: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/48.jpg)
SCI121
Auto-organisation : k-Clustering
17/04/2014
![Page 49: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/49.jpg)
SCI121
Auto-organisation : k-Clustering
• Ex. k=2
17/04/2014
≤k
![Page 50: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/50.jpg)
SCI121
Auto-organisation : k-Clustering
• Ex. k=2
17/04/2014
≤k
![Page 51: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/51.jpg)
SCI121
Allocation de ressources : exclusion mutuelle
17/04/2014
![Page 52: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/52.jpg)
SCI121
Allocation de ressources : exclusion mutuelle
17/04/2014
![Page 53: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/53.jpg)
SCI121
Allocation de ressources : exclusion mutuelle
17/04/2014
![Page 54: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/54.jpg)
SCI121
Allocation de ressources : exclusion mutuelle
17/04/2014
![Page 55: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/55.jpg)
SCI121
Allocation de ressources : exclusion mutuelle
17/04/2014
![Page 56: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/56.jpg)
SCI121
Plan
• Réseau ?• Algorithme distribué ?• Problème à résoudre ?• Exemple : circulation d’un jeton• Conclusion
17/04/2014
![Page 57: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/57.jpg)
SCI121
Circulation d’un jeton
• Plan– Définition– Solution dans un réseau en anneau (token ring)– Solution dans un réseau en arbre– Solution dans un réseau quelconque
17/04/2014
![Page 58: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/58.jpg)
SCI121
Circulation d’un jeton : définition
• Un message appelé « jeton »
– Circule séquentiellement dans le réseau
– Il doit visiter tous les processus
– La circulation termine
17/04/2014
![Page 59: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/59.jpg)
SCI121
Circulation d’un jeton dans un anneau
17/04/2014
![Page 60: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/60.jpg)
SCI121
Circulation d’un jeton dans un anneau
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
![Page 61: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/61.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Un initiateur
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
![Page 62: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/62.jpg)
SCI121
Circulation d’un jeton dans un anneau
• L’initiateur envoie le jeton J sur le canal 0
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
J
![Page 63: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/63.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod 2
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1 J
![Page 64: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/64.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod 2
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
J
![Page 65: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/65.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod 2
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
J
![Page 66: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/66.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod 2
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
J
![Page 67: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/67.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod 2
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
J
![Page 68: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/68.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod 2
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
J
![Page 69: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/69.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod 2
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1J
![Page 70: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/70.jpg)
SCI121
Circulation d’un jeton dans un anneau
• Sur réception, l’initiateur décide la terminaison
17/04/2014
0
11
1
1
11
1
0
0
000
0
0
1
![Page 71: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/71.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Quasiment le même algorithme !
17/04/2014
0
0
0 0 0
0
1
11
2
![Page 72: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/72.jpg)
SCI121
Circulation d’un jeton dans un arbre
• L’initiateur envoie le jeton J sur le canal 0
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 73: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/73.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 3• (2+1) mod 3 = 0
17/04/2014
0
0
0 0 0
0
1
11
2J
![Page 74: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/74.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 3• (2+1) mod 3 = 0
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 75: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/75.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 1• (0+1) mod 1 = 0
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 76: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/76.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 3• (0+1) mod 3 = 1
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 77: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/77.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 1• (0+1) mod 1 = 0
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 78: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/78.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 3• (1+1) mod 3 = 2
17/04/2014
0
0
0 0 0
0
1
11
2J
![Page 79: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/79.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 2• (0+1) mod 2 = 1
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 80: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/80.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 2• (0+1) mod 2 = 1
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 81: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/81.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 1• (0+1) mod 1 = 0
17/04/2014
0
0
0 0 0
0
1
11
2
J
![Page 82: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/82.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal i, un non-initiateur renvoie le jeton sur le canal (i+1) mod δ
• Ici δ = 2• (1+1) mod 2 = 0
17/04/2014
0
0
0 0 0
0
1
11
2J
![Page 83: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/83.jpg)
SCI121
Circulation d’un jeton dans un arbre
• Sur réception du canal δ-1, l’initiateur décide la terminaison
• Ici δ-1 = 1
17/04/2014
0
0
0 0 0
0
1
11
2
![Page 84: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/84.jpg)
SCI121
Circulation d’un jeton dans un réseau quelconque ?
• Est-ce que l’algorithme précédent fonctionne ?
NON !
17/04/2014
![Page 85: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/85.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0 0
0
0
0
0
1
1
1
1
1
1
![Page 86: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/86.jpg)
SCI121
Solution
• Algorithme de Tarry (1885)
• Problème de Labyrinthe• « Ne reprendre l'allée initiale qui a conduit à un
carrefour pour la première fois que lorsqu'on ne peut pas faire autrement »
• Sommets = intersections• Liens = allées entre les intersections des arêtes
17/04/2014
![Page 87: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/87.jpg)
SCI121
Variables
• Pour chaque processus
– Un pointeur P {NULL} {0…δ-1}∈ ∪ (initialisé à NULL)
– Un tableau de Booléen VISITE[0…δ-1], initialement toutes les cases sont à faux.
17/04/2014
![Page 88: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/88.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0 0
0
0
0
2
1
1
1
1 11
02
![Page 89: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/89.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0 0
0
0
0
2
1
1
1
1 11
02
J
![Page 90: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/90.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0 0
0
0
0
2
1
1
1
1 11
02
J
![Page 91: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/91.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0 0
0
0
0
2
1
1
1
1 11
02
J
0
![Page 92: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/92.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1
1
1
1 11
02
J
0
0
![Page 93: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/93.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1
1
1
1 11
2
J
0
0
0
![Page 94: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/94.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1
1
1
1 11
2J
0
0
0
![Page 95: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/95.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1
1
1
1 11
2
J
0
0
0
![Page 96: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/96.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1
1
1
1 11
2
J
0
0
0
![Page 97: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/97.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1
1
1 11
2
J
0
0
0
1
![Page 98: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/98.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1
1 11
2
J0
0
0
1
1
![Page 99: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/99.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J
0
0
0
1
1
1
![Page 100: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/100.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J
0
0
0
1
1
1
![Page 101: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/101.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J0
0
0
1
1
1
![Page 102: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/102.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J
0
0
0
1
1
1
![Page 103: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/103.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J
0
0
0
1
1
1
![Page 104: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/104.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J
0
0
0
1
1
1
![Page 105: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/105.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J 0
0
0
1
1
1
![Page 106: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/106.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J
0
0
0
1
1
1
![Page 107: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/107.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
0
2
1 11
2
J
0
0
0
1
1
1
![Page 108: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/108.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
2
1 11
2
J
0
0
0
1
1
10
![Page 109: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/109.jpg)
SCI121
Exemple
17/04/2014
0
1
2
0
1
0
0
0
2
1 11
20
0
0
1
1
10
Terminé !
![Page 110: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/110.jpg)
SCI121
Plan
• Réseau ?• Algorithme distribué ?• Problème à résoudre ?• Exemple : circulation d’un jeton• Conclusion
17/04/2014
![Page 111: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/111.jpg)
SCI121
Conclusion
• Depuis 40 ans– La plupart des problèmes d’algorithmiques
réparties ont été résolus de manière efficace
– En supposant des réseaux sans pannes …
17/04/2014
![Page 112: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/112.jpg)
SCI121
Conclusion: Challenge actuel• Les réseaux modernes sont à grande-échelle et fait de
machines hétérogènes et produites en masses à faible coût, e.g.– Internet
• (10 milliard de machine connectée d’ici 2016)• Internet des objets
– Réseaux sans fils• Communication radio : beaucoup de pertes de messages • Crash de machines à cause des batteries limitées
⇒ Forte probabilité de pannes⇒ Intervention humain impossible
⇒ Besoin d’algorithmes distribués tolérant les pannes
17/04/2014
![Page 113: Fondements de l’algorithmique des réseaux](https://reader035.vdocuments.net/reader035/viewer/2022062218/568166e8550346895ddb2a86/html5/thumbnails/113.jpg)
SCI12117/04/2014
Merci de votre attention !