Données :
- Liste de nœuds bootstrap (en dur ou en config)
Algo:
- Sélectionner 5 nœuds au hasard parmi les nœuds bootstrap
- Envoyer les 2 requêtes suivantes à ces 5 nœuds :
- Demander leur numéro et hash de bloc courant
- Demander la liste des nœuds qu’ils connaissent
- Sélectionner 5 endpoint au hasard parmi les nouveaux endpoints reçus
- Envoyer les 2 requêtes suivantes à ces 5 nœuds :
- Demander leur numéro et hash de bloc courant
- Demander la liste des nœuds qu’ils connaissent
- Sélectionner 5 endpoint au hasard parmi les nouveaux endpoints reçus
- Envoyer la requête suivante à ces 5 nœuds :
- Demander leur numéro et hash de bloc courant
Stoker dans une OrderedMap tous les endroits par blockstamp: OrderedMap<Blocstamp, [Endpoints]>.
Considérer le consensus comme étant le premier endpoint (le plus haut), avec plus d’un tiers des endpoints connus.