Vai al contenuto
buybitcoinsmart

Glossario / Transazioni e commissioni

Mempool

Noto anche come Memory pool.

Che cos'è la mempool?
La mempool è l'insieme delle transazioni valide di cui un nodo è venuto a conoscenza ma che non ha ancora visto in un blocco, tenute in memoria mentre attendono che un miner le raccolga.

Non esiste un'unica mempool. Ogni nodo mantiene la propria, limitata in Bitcoin Core a 300 megabyte per impostazione predefinita, e scarta le transazioni più economiche quando si raggiunge quel limite. Quello che ti mostra un sito web di mempool è la visione della coda di un solo nodo, abbastanza precisa per scegliere una commissione ma mai autorevole.

Come funziona

L'arrivo è un processo di filtraggio, non un numero di turno in una coda. Quando una transazione raggiunge un nodo, viene controllata rispetto alle regole di consenso e poi rispetto alla politica di relay di quel nodo, e solo se supera entrambe il nodo la conserva e la inoltra ai peer. Una transazione rifiutata semplicemente non viene inoltrata, e se la rifiutano abbastanza peer non arriva mai a nessun miner.

Lo spazio di archiviazione è limitato, cosa che sorprende chi si aspetta una sala d'attesa infinita. L'impostazione -maxmempool vale 300 megabyte per impostazione predefinita, e quando l'archivio si riempie il nodo elimina le transazioni con la commissione per unità di dimensione più bassa e alza la propria soglia di accettazione sopra il minimo abituale. Anche tutto ciò che è ancora in attesa dopo -mempoolexpiry ore viene scartato, e quel valore predefinito è 336 ore, cioè esattamente 14 giorni. Da Bitcoin Core 0.14.0, il contenuto sopravvive a un riavvio perché viene scritto in un file mempool.dat, quindi spegnere il tuo nodo non cancella più quello che sapeva.

L'ordinamento è per prezzo per unità di dimensione. Un miner che compone un blocco candidato ordina per commissione per unità di dimensione e riempie dall'alto il budget di 4.000.000 unità di peso, valutando una transazione insieme a tutte le transazioni madre non confermate da cui dipende. Bitcoin Core 31.0 ha ricostruito la mempool proprio intorno a questa idea, raggruppando le transazioni collegate in cluster fino a 64 membri e classificandole in base alla commissione per unità di dimensione alla quale verrebbero davvero minate. L'ora di arrivo non conta nulla, ed è per questo che una transazione trasmessa stamattina può essere superata per tutto il pomeriggio da altre successive che pagano di più.

Poiché ogni nodo applica le proprie impostazioni, il contenuto varia da macchina a macchina. Un nodo riavviato un'ora fa sa meno di uno in funzione da un mese, un nodo che esegue Bitcoin Knots filtra in modo diverso da uno che esegue Bitcoin Core, e ai miner possono essere consegnate direttamente transazioni che non hanno mai viaggiato sulla rete.

Perché questo conta quando compri bitcoin

Controllare la coda prima di spostare bitcoin è l'abitudine più economica che esista in bitcoin. Lo stesso prelievo può costare qualche centinaio di satoshi in un fine settimana tranquillo e decine di migliaia durante un'ondata di attività, e nulla nel tuo wallet ti avverte in quale situazione ti trovi. Uno sguardo alla commissione per unità di dimensione attuale per il blocco successivo prima di premere preleva vale più di qualsiasi impostazione di commissione offerta da un wallet.

L'exchange che usi cambia quanto questo conta. Binance, Kraken e Coinbase prezzano i prelievi di bitcoin in base alla rete, quindi la cifra che indicano sale quando la coda è lunga e scende quando si svuota, e aspettare un'ora tranquilla vale denaro reale. Le piattaforme che invece pubblicano una commissione di prelievo fissa incassano lo stesso importo qualunque cosa faccia la coda, il che le rende punitive in una giornata tranquilla e convenienti durante la congestione. Sapere su quale modello ti trovi ti dice se aspettare ti serve a qualcosa.

La congestione arriva anche senza preavviso e per motivi estranei ai pagamenti. Le ondate di conio di token del 2023 e il lancio di Runes ad aprile 2024 hanno riempito di dati i blocchi, spingendo i risparmiatori comuni in una gara al rialzo alla quale non avevano alcun interesse a partecipare. Se effettui acquisti ricorrenti tramite Swan o River con prelievi automatici, la risposta sensata è una soglia che sposta i bitcoin in meno transazioni e più grandi, invece di un calendario settimanale fisso che ignora lo stato della coda.

Leggere la coda prima di premere preleva

Apri qualsiasi dashboard di mempool e vedi tre cose: le transazioni in attesa, le fasce di commissione per unità di dimensione in cui si trovano e i blocchi previsti che quelle fasce riempirebbero. Una fascia indicata per il blocco successivo è ciò che paghi perché la transazione venga minata in circa dieci minuti; le fasce inferiori sono ciò che paghi per aspettare.

Metti dei numeri con uno sweep di un singolo UTXO verso un solo output. Quella transazione occupa circa 110 byte virtuali con un input SegWit nativo, quindi a 2 sat/vB costa 220 satoshi e a 90 sat/vB costa 9.900 satoshi. La transazione è identica byte per byte in entrambi i casi. Cambia solo il momento che hai scelto, e questa è tutta la lezione.

Vale la pena conoscere anche la soglia minima. Se offri troppo poco, i peer potrebbero non accettare mai la tua transazione, quindi non apparirà sugli explorer e non potrà essere aumentata. Se offri deliberatamente un po' poco, stai scommettendo che la coda si svuoti entro 14 giorni, dopo i quali i nodi la scartano e i bitcoin nel tuo wallet tornano spendibili.

Mempool vs politica della mempool

Una mempool è un contenitore; la politica è il portiere. Il contenitore conserva tutto ciò che ha superato i controlli, e la sua dimensione e la sua scadenza si configurano allo stesso modo della politica, ma i due rispondono a domande diverse. La politica decide se una transazione è ammessa e inoltrata; la mempool decide cosa le succede dopo, comprese quali transazioni vengono eliminate quando lo spazio scarseggia.

Mempool vs blocco

Un blocco è un registro definitivo e permanente con un limite rigido di 4.000.000 unità di peso; una mempool è una stima temporanea, privata e in linea di principio illimitata di ciò che potrebbero contenere i prossimi blocchi. Le transazioni lasciano la mempool quando vengono minate, e la lasciano di nuovo se il ramo che le contiene viene abbandonato, nel qual caso tornano in attesa. Stare in una mempool non è un impegno da parte di nessuno.

Da non confondere con

Domande frequenti

Esiste un'unica mempool globale?

No. Ogni nodo mantiene la propria copia, costruita con ciò che i suoi peer hanno trasmesso e filtrata secondo le proprie impostazioni, per cui due nodi raramente contengono esattamente le stesse transazioni. I siti web della mempool pubblicano la vista di un solo nodo come approssimazione utile.

Quanto resta una transazione nella mempool?

Fino a quando viene minata, sostituita o scade. Bitcoin Core scarta tutto ciò che è ancora in attesa dopo 336 ore, cioè 14 giorni, e un nodo il cui limite di 300 megabyte si riempie espelle le transazioni più economiche molto prima.

La mia transazione è sparita dalla mempool. Dove è finita?

O è scaduta, o è stata espulsa perché pagava troppo poco, o una sostituzione con una commissione più alta ha preso il suo posto. I bitcoin non sono mai stati spesi, quindi il tuo wallet può ricostruire e ritrasmettere il pagamento a una commissione per unità di dimensione più alta.

Leggi anche

Termini correlati

Altro in Transazioni e commissioni

Leggi questa pagina in inglese