Wiki di ZooBC
Gestire un nodo

La coda

Ogni nuovo nodo attende in una coda pubblica tra la sua registrazione e la sua ammissione. La coda decide chi viene ammesso dopo; il timer di ammissione decide quando. L'ordine bilancia impegno e pazienza: ciò che conta è lo stake moltiplicato per il tempo già atteso.

L'ordine

I nodi in coda sono classificati in base al loro stake moltiplicato per il numero di blocchi di attesa. In caso di parità prevale l'altezza di registrazione più bassa, poi l'id del nodo più basso. Un nodo in coda può aumentare il suo stake in qualsiasi momento e conserva l'attesa accumulata; l'aumento costa solo la commissione della transazione e richiede la stessa prova di proprietà della registrazione (registrare un nodo).

Il prodotto fa sì che, per superare qualcuno che ha atteso dieci volte di più, tu debba bloccare dieci volte tanto.

Due rettangoli in scala, con larghezza pari allo stake e altezza pari ai giorni di attesa: i 6.000 di A sono più dei 5.000 di B, quindi A viene ammesso per primo
Due rettangoli in scala, con larghezza pari allo stake e altezza pari ai giorni di attesa: i 6.000 di A sono più dei 5.000 di B, quindi A viene ammesso per primo

I nodi in coda non hanno un punteggio di partecipazione. Un nodo riceve il punteggio predefinito del 20 % quando viene ammesso, e il timer di ammissione fa entrare un nodo alla volta, quindi due nodi non entrano mai insieme.

Farsi vedere: la presenza

Un seggio è pensato per un nodo che lavora, quindi un nodo in coda deve dimostrare di essere online una volta in ogni finestra di 5.760 blocchi (un giorno). Qualsiasi segno del nodo sulla catena vale, per esempio un'attestazione che ha firmato. Se non ce n'è nessuno, il software del nodo invia da sé una transazione QueueAttendance (tipo 59). La sua commissione viene prelevata dallo stake, senza mai portare lo stake sotto il minimo, e va al pool di longevità.

Una finestra senza alcun segno fa ripartire l'attesa del nodo. Nell'arco dell'intera attesa, un nodo può mancare finestre per l'equivalente di un ciclo di ammissione: max(2, ritardo massimo di ammissione ÷ un giorno), cioè 90 finestre su mainnet, dove il ritardo massimo è di 90 giorni. La 91ª finestra mancata lo toglie dalla coda. Per essere ammesso, un nodo deve inoltre aver segnalato la sua presenza nell'ultima finestra valutata.

Uscire dalla coda costa il 10 %

Ritirare un nodo in coda costa il 10 % del suo stake, anche quando il proprietario usa la transazione corretta, RemoveNodeRegistration. Un'esclusione per presenza mancata costa lo stesso 10 %. In entrambi i casi l'altro 90 % torna al proprietario (subito, dopo un'esclusione), e il 10 % va al pool di longevità, che paga i nodi che lavorano (pool). Nulla viene bruciato (ZBC non viene mai bruciato).

Questo costo esiste a causa del minimo di ingresso. Un nuovo arrivato deve bloccare almeno la metà dello stake mediano dei nodi già in coda. Senza un costo di uscita, qualcuno potrebbe parcheggiare in coda uno stake molto grande per alzare quel minimo a tutti gli altri, e poi ritirarlo gratis.

Quando ogni nodo attivo è sospeso

La coda funge anche da riserva. Se ogni nodo attivo è sospeso, il nodo in coda meglio piazzato che ha segnalato la sua presenza può produrre un blocco, e quel blocco lo ammette subito. La catena può quindi ripartire anche quando l'intero registro è diventato silenzioso.

Leggere la coda

La coda è pubblica. GET /api/v1/nodes?status=queued elenca ogni nodo in coda con il suo stake e la sua altezza di registrazione, così chiunque può calcolare l'ordine e vedere chi è il prossimo.

Vedi anche