CM2 Partie1 Flashcards

1
Q

Graphe représentant le système distribué

A
  • Graphe connexe
  • Liens de communication bidirectionnels
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Comment est le canal?

A

le canal est FIFO

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Algorithme synchrone

A
  • gouverné par une horloge globale externe
  • Chaque noeud exécute une suite de rondes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Que se passe-t-il dans une ronde dans une algorithme synchrone?

A
  • chaque noeud envoie un message à chacun de ses voisins
  • Tous les message envoyés dans une ronde sont reçus et traités dans la même ronde
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Algorithme partiellement synchrone

A
  • Pas d’horloge globale extrene
  • Un noeud peut passer à la ronde r+1 s’il a reçu un message de chacun de ses voisins r
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Algorithme asynchrone

A
  • pas d’horloge globale externe
  • L’avancement d’un nœud est lié à ses propres calculs et aux messages qu’il reçoit
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Principe de retransmission/abandon de messages

A
  • La 1er fois que je reçois un message je retransmets
  • Si je reçois encore le même message, je l’abandonne
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Apprendre le graphe sous-jacent au système distribué Complexité

A
  • Nombre de messages transmis ≤ 2nm
    n->nbre de noeuds
    m->nbre de liens
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Une fois le graphe connu par tous les nœuds du système quelle est la 1ère approche que l’on peut imaginer?

A
  • Choisir un nœud particulier (leader) dans le système
  • Résoudre les problèmes avec des algorithmes séquentiels sur ce leader
  • Le leader envoie les résultats aux nœuds du réseau
    *Faiblesse : peu robuste, peut-être coûteux en temps, peu tolérant aux pannes
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Une fois le graphe connu par tous les nœuds du système quelle est la 2ème approche que l’on peut imaginer?

A
  • chaque nœud exécute l’algorithme séquentiel sur le graphe appris
  • Il faut s’assurer que les exécutions séquentielles sur les différents nœuds vont donner un résultat cohérent
    *Faiblesse : peut-être coûteux en temps, peu robuste envers la dynamique
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Diffusion / Broadcast

A
  • Un nœud (source) veut envoyer un message à tous les autres nœuds du système
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Hypothèses de la diffusion/broadcast

A
  • Chaque nœud connaît son ID
  • Le nombre de nœuds dans le système n’est pas connu
  • Le graphe sous-jacent au système n’est pas connu
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Algorithme d’inondation

A
  • ou flooding
  • Utilisation du principe de retransmission / abandon des messages
  • avec une seule source
  • la source ne sait pas que et quand l’algorithme a terminé
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Comment réduire ce nombre d’envois du message dans l’algo d’inondation ?

A

Pour avoir une meilleure efficacité de l’algo de diffusion , nécessité de construire une topologie logique : arbre (couvrant)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

quand se termine l’algorithme d’inondation sur un arbre enraciné?

A
  • quand les feuilles reçoivent le message
    *Mais la racine ne sait pas que l’algorithme est terminé
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

complexité de l’algorithme d’inondation sur un arbre enraciné?

A

(n-1) envois de messages

17
Q

Si de nombreux messages à envoyer dans le fonctionnement du système distribué

A
  • Rentable de construire un arbre couvrant
  • Et de diffuser les messages sur cet arbre
18
Q

Convergecast

A
  • Inverse de la diffusion
  • Chaque nœud veut envoyer un message à un nœud spécifique ( par ex la racine de l’arbre)
19
Q

Algorithme Echo

A
  • Initié par les feuilles de l’arbre
  • Feuilles envoient leur message à leur parent
  • Une fois les messages reçus de tous leurs fils, chaque nœud transmet un message à son parent ;
  • message = données du nœud + données des fils
20
Q

quand se termine l’algorithme echo ?

A
  • Une fois que la racine a reçu un message de chacun de ses fils, l’algorithme Echo est terminé
  • la racine sait que l’algo est terminé, mais les autres nœuds de l’arbre ne le savent pas
21
Q

complexité de l’algorithme echo ?

A

n-1 messages

22
Q

L’algorithme echo est utilisé pour :

A
  • La détection de terminaison, par la racine, d’algorithmes distribués
  • Calculer le nombre de nœuds dans le système
  • Calculer la valeur maximale/minimale d’un paramètre dans le système
  • Calculer la somme des valeurs d’un paramètre
23
Q

Utilisation des arbres permet

A
  • De communiquer (efficacement) de un vers tous
  • De communiquer (efficacement) de tous vers un
  • De récupérer des valeurs/paramètres de tous les nœuds
  • De savoir si tous les nœuds ont terminé
24
Q

Construction d’un arbre couvrant Algorithme basé sur la diffusion et le convergecast : * Terminaison

A

Quand la racine reçoit un message Back de chacun de ses voisins
* Plusieurs arbres peuvent être construits
* Dépend de la vitesse des messages

25
Q

Arbre en largeur

A
  • la source fait tout le travail
  • on a une congestion réseau
26
Q

Arbre en profondeur

A
  • arbre dans lequel on maximise la profondeur de l’arbre
  • travail réparti
  • pas de congestion réseau
  • prend du temps
27
Q

Arbre couvrant en largeur : Algorithme sans contrôle centralisé

A

Algorithme «à la Bellman-Ford»
Complexité en temps : O(D)
Nombre de messages: O(nm)

28
Q

Arbre couvrant en largeur :
Algorithme avec contrôle centralisé

A

Algorithme «à la Dijkstra»
Exécution par vagues
Présence de l’algo Echo dans l’arbre p-1
Complexité temps : O(D*D)
nombre de messages: O(m+nD) avac m : join et nD : vague

29
Q

Une vague est différente de quoi?

A

d’une ronde

30
Q

Comparaison des complexités des deux algos

A

Bellman-Ford est plus bien en temps que le Djikstra
Bellman-Ford est moins bien en nombre de messages que le Djikstra

31
Q

Apprendre Le graphe sous jacent au système distribué Objectif

A

Découvrir le graphe et savoir qui sont les membres du système