===== Elections (2/2) ===== ==== Election sur un arbre couvrant (suite) ==== ==== Racine initiateur ==== === Hypothèses === * L'initiateur, P_{i_0} est la racine * Communications FIFO, sans perte, par arbre couvrant === Principe === * P_{i_0} envoie REQ à tous ses fils, pour choisir quand toutes les réponse seront remontées. * Chaque fils qui n'est pas feuille transmet à ses fils. * Lorsqu'un processus aura reçu les réponses de tous ses fils, il répondra à son parent la meilleur valeur de ses fils et de lui-même. * Lorsque P_{i_0} a reçu toutes les réponse, il connait la meilleur capacité et chez qui, et proclame. === Corrigé (du support de cours) === * Phase I - Initialisation * P_{i_0} émet le message //ElDemande()// vers tous ses fils * lorsqu'un site //non feuille// reçoit le message, il transmet ce message à l'ensemble de ses fils. * lorsqu'un site //feuille// P_{j} reçoit le message //ElDemande()// il transmet à son père les message EL\left(c_j, j\right) * Phase 2 - Remontée des informations * lorsqu'un site P_{i\ne i_0} a reçu tous les messages El\left(c_j, j\right) de ces fils, il transmet à son père le message EL\left(c_k, k\right)c_k = \max\left\{c_i, c_j\right\} * Phase 3 - Election *Lorsque le site P_{i_0} a reçu tous les messages EL\left(c_k, k\right) de ses fils, il s'élit si max\left\{ c_k\right\} < c_{i_0} sinon il élit P_k tel que c_k = max\left\{ c_k \right\} * **Phase 4 - Proclamation ** * La racine proclame le résultat par l'émission du message //ELU(k)// vers l'ensmeble de ses fils. *Lorsqu'un site reçoit le message //ELU(k)// il mémorise l'information puis s'il est non-feuille, il transmet ce message //ELU(k)// à tous ses fils. ==== Initiateur n'est pas la racine === ==== Election dans un réseau quelconque ==== === Maillage complèt et diffusion === ==== Navigation ==== [[algo_dist_1|]] -- [[algo_dist_3|]]