2 KiB
algoritmo di fully synchronous leader election derivato dalla leader election su anello as-far-as-it-can
Comportamento
[!Summary]
Ogni entità riceve identificatori dalla entità precedente in un anello, tenendo traccia dell'identificatore minimo ricevuto, e inoltra alla entità successiva in un anello qualsiasi cambiamento ad esso, applicando però un ritardo dipendente dal valore dell'identificatore.
Quando un'entità avrà ricevuto il suo stesso identificatore dalla entità precedente in un anello, essa diventerà leader, e manderà un broadcast problem di terminazione a tutte le altre.
==Spiegare come scegliere il tempo?==
algoritmo corretto
[!Success] È certo che l'identificatore minimo di tutto il sistema distribuito attraverserà tutte le entità in esso, fino a tornare al futuro leader.
Avendo l'anello un numero finito di nodo di un grafo al suo interno, eventualmente sarà trovato un leader, che a quel punto farà terminare l'esecuzione con il broadcast problem.
costo computazionale distribuito
Costo | notazione O-grande |
---|---|
comunicazione | Dipende. |
tempo | Dipende. |
Tempo
L'identificatore minore compie un giro completo dell'anello dopo:
\color{LightCoral} \mathrm{delay}(\min (Identifier)) \cdot Entities
In più, il broadcast problem di terminazione richiede:
\color{SkyBlue} Entities
Per un totale di:
{
\color{LightCoral} \mathrm{delay}(\min (Identifier)) \cdot Entities
}
+
{
\color{SkyBlue} Entities
}
La notazione asintotica risultante dipende dalla scelta effetuata di \mathrm{delay}(Identifier)
.
Comunicazione
Anche il costo di comunicazione dipende dalla scelta effettuata di \mathrm{delay}(Identifier)
, pertanto il calcolo è completamente omesso da questa pagina.