Aiuta ad aggiornare questa pagina

🌏

C'è una nuova versione di questa pagina, ma al momento è solo in inglese. Aiutaci a tradurre l'ultima versione.

Nessun bug qui!🐛

Questa pagina non è stata tradotta. Per il momento, è stata intenzionalmente lasciata in inglese.

Gas e commissioni

Ultima modifica: , Invalid DateTime
Modifica pagina

Il carburante è un elemento essenziale per la rete Ethereum. Consente di far funzionare la rete, proprio come un'automobile ha bisogno di benzina per funzionare.

Prerequisiti

Per capire meglio questa pagina, consigliamo innanzi tutto di leggere gli argomenti su transazioni ed EVM.

Cos'è il carburante?

Con il termine carburante ci si riferisce ad un'unità di misura che indica la quantità di sforzo di calcolo necessaria per eseguire operazioni specifiche sulla rete Ethereum.

Dato che ogni transazione Ethereum necessita di risorse di calcolo per essere eseguita, richiede una commissione. Il carburante si riferisce alla commissione richiesta per far sì che una transazione su Ethereum vada a buon fine.

Diagramma che mostra dove serve il carburante nelle operazioni dell'EVM Diagramma adattato da Ethereum EVM illustrated

In sostanza, le commissioni sul carburante sono pagate nella valuta nativa di Ethereum, l'ether (ETH). I prezzi del carburante sono indicati in Gwei, che è a sua volta un taglio dell'ETH: ogni Gwei equivale a 0,000000001 ETH (10-9 ETH). Per esempio, invece di dire che il carburante costa 0,000000001 Ether, puoi dire che costa 1 Gwei. La parola 'gwei' significa 'giga-wei', ed è pari a 1.000.000.000 wei. Wei (dal nome di Wei Dai, creatore di b-money) è l'unità più piccola di ETH.

Prima dell'aggiornamento di Londra

Le modalità di calcolo delle commissioni di transazione sulla rete Ethereum sono state modificate con l'aggiornamento di Londra dell'agosto 2021. Ecco un riepilogo di come funzionavano le cose in precedenza:

Mettiamo che Alice debba pagare 1 ETH a Bob. Nella transazione, il limite di carburante è di 21.000 unità e il prezzo del carburante è 200 gwei.

La commissione totale sarebbe: Unità di carburante (limite) * Prezzo del gas per unità, es. 21.000 * 200 = 4.200.000 gwei o 0,0042 ETH

Quando Alice invia il denaro, vengono detratti dal suo account 1,0042 ETH. Bob riceve un accredito di 1,0000 ETH, Il miner riceverebbe 0,0042 ETH.

Questo video offre una panoramica concisa del carburante, con la spiegazione della sua esistenza:

Dopo l'aggiornamento di Londra

L'Aggiornamento di Londra è stato implementato il 5 agosto 2021 per rendere più prevedibili le transazioni agli utenti, modificando il meccanismo di transazione-commissione di Ethereum. Tra i benefici d'alto livello introdotti da questa modifica vi sono una migliore stima della commissione sulle transazioni, un'inclusione generalmente più rapida della transazione e la compensazione dell'emissione di ETH bruciando una percentuale di commissioni sulle transazioni.

A partire dall'aggiornamento di Londra della rete, ogni blocco ha una commissione base, il prezzo minimo per unità di carburante per l'inclusione nel blocco, calcolato dalla rete in base alla domanda di spazio per i blocchi. Poiché la commissione base della commissione sulle transazioni viene bruciata, gli utenti dovrebbero anche impostare una mancia (commissione prioritaria) nelle proprie transazioni. La mancia compensa i miner per aver eseguito e propagato le transazioni dell'utente nei blocchi e dovrebbe essere impostata automaticamente da gran parte dei portafogli.

Il calcolo della commissione sulle transazioni totale funziona così: Unità di carburante (limite) * (commissione base + Mancia)

Ipotizziamo che Jordan debba pagare 1 ETH a Taylor. Nella transazione, il limite di carburante è di 21.000 unità e la commissione base è di 100 gwei. Jordan include una mancia di 10 gwei.

Usando la formula di sopra possiamo effettuare il calcolo come segue: 21.000 * (100 + 10) = 2.310.000 gwei o 0,00231 ETH.

Quando Jordan invia il denaro, sul suo account sono sottratti 1,00231 ETH. Taylor riceve un accredito di 1,0000 ETH. Il miner riceve la mancia di 0,00021 ETH. La commissione base di 0,0021 ETH è bruciata.

Inoltre, Jordan può anche impostare una commissione massima (maxFeePerGas) per la transazione. A Jordan viene rimborsata la differenza tra commissione massima ed effettiva, es. rimborso = commissione max - (commissione base + commissione prioritaria). Jordan può impostare un importo massimo da pagare per la transazione da eseguire, senza preoccuparsi di pagare troppo "oltre" la commissione base quando la transazione è eseguita.

Dimensione del blocco

Prima dell'Aggiornamento di Londra, Ethereum aveva blocchi di dimensioni fisse. Nei momenti di domanda elevata della rete, questi blocchi operavano a piena capacità. Quindi, spesso gli utenti dovevano attendere che calasse la domanda elevata prima di poter essere inclusi in un blocco, e questo si traduceva in un'esperienza non soddisfacente per l'utente.

L'Aggiornamento di Londra ha introdotto in Ethereum blocchi di dimensioni variabili. Ogni blocco ha una dimensione prevista di 15 milioni di gas, ma la dimensione dei blocchi aumenta o diminuisce in base alla domanda della rete, fino al limite massimo di 30 milioni di gas del blocco (2 volte la dimensione target del blocco). Il protocollo raggiunge una dimensione del blocco equilibrata di 15 milioni in media tramite il processo di tâtonnement. Significa che se la dimensione del blocco è maggiore di quella prevista, il protocollo aumenta la commissione base per il blocco successivo. Analogamente, il protocollo riduce la commissione base se la dimensione del blocco è inferiore a quella prevista. L'importo della commissione base si adatta proporzionalmente alla distanza della dimensione del blocco corrente rispetto al target. Maggiori informazioni sui blocchi.

Tariffa base

Ogni blocco ha una commissione base che funge da prezzo di riserva. Per poter essere inserito in un blocco, il prezzo offerto per il carburante deve essere pari almeno alla commissione base. La commissione base è calcolata indipendentemente dal blocco corrente ed è invece determinata dai blocchi che lo precedono, il che rende le commissioni sulle transazioni più prevedibili per gli utenti. Quando il blocco è minato, questa commissione base viene "bruciata", ovvero rimossa dalla circolazione.

La commissione base è calcolata con una formula che confronta le dimensioni del blocco precedente (la quantità di carburante usata per tutte le transazioni) con le dimensioni di quello corrente. La commissione base aumenta di un massimo del 12,5% per blocco se la dimensione target del blocco viene superata. Questa crescita esponenziale rende economicamente impensabile che la dimensione del blocco resti elevata per un tempo indefinito.

Numero del bloccoGas inclusoAumento della commissioneTariffa base corrente
115M0%100 gwei
230M0%100 gwei
330M12,5%112,5 gwei
430M12,5%126,6 gwei
530M12,5%142,4 gwei
630M12,5%160,2 gwei
730M12,5%180,2 gwei
830M12,5%202,7 gwei

Rispetto al mercato del carburante basato su aste prima dell'aggiornamento di Londra, questa modifica del meccanismo delle commissioni sulle transazioni ha reso più affidabile la previsione delle commissioni. Secondo la tabella sopra, per creare una transazione sul blocco numero 9, un portafoglio indica all'utente con certezza che la commissione base massima da aggiungere al blocco successivo è commissione base corrente * 112,5% o 202,8 gwei * 112,5% = 228,1 gwei.

Inoltre, è importante notare che, vista la velocità con cui la commissione base aumenta mentre si avanza verso un blocco completo, è improbabile assistere a picchi prolungati di blocchi completi.

Numero del bloccoGas inclusoAumento della commissioneTariffa base corrente
3030M12,5%2.705,6 gwei
......12,5%...
5030M12,5%28.531,3 gwei
......12,5%...
10030M12,5%10.302.608,6 gwei

Commissione prioritaria (mance)

Prima dell'Aggiornamento di Londra, i miner avrebbero ricevuto la commissione del carburante totale da ogni transazione inclusa in un blocco.

In virtù del fatto che la nuova commissione base viene bruciata, l'aggiornamento di Londra ha introdotto una commissione prioritaria (mancia) per incentivare i miner a includere una transazione nel blocco. Senza mance, i miner troverebbero economicamente conveniente minare blocchi vuoti, poiché riceverebbero la stessa ricompensa. In condizioni normali, una piccola mancia fornisce ai miner un incentivo minimo per includere una transazione. Per le transazioni che devono essere prioritariamente eseguite prima di altre nello stesso blocco, occorrerà una mancia più cospicua per tentare di superare le transazioni concorrenti.

Commissione massima

Per eseguire una transazione sulla rete, gli utenti possono specificare un limite massimo che sono disposti a pagare affinché la loro transazione venga eseguita. Questo parametro opzionale è noto come maxFeePerGas. Affinché una transazione venga eseguita, la commissione massima deve essere maggiore della somma della commissione base e della mancia. Il mittente della transazione riceve il rimborso della differenza tra la commissione massima e la somma della commissione base e della mancia.

Calcolo delle commissioni

Uno dei benefici principali ottenuti con l'aggiornamento di Londra è il miglioramento dell'esperienza dell'utente nella definizione delle commissioni sulle transazioni. Per i portafogli che supportano l'aggiornamento, invece di dichiarare esplicitamente quanto si è disposti a pagare per far elaborare la transazione, i fornitori del portafoglio imposteranno automaticamente una commissione sulle transazioni consigliata (commissione base + commissione prioritaria consigliata) per ridurre la quantità di complessità gravante sugli utenti.

EIP-1559

L'implementazione dell'EIP-1559 nell'Aggiornamento di Londra ha reso il meccanismo delle commissioni sulle transazioni più complesso rispetto al precedente sistema basato su aste dei prezzi del carburante, ma ha il vantaggio di rendere le commissioni del carburante più prevedibili, migliorando l'efficienza del mercato delle commissioni sulle transazioni. Gli utenti possono inviare transazioni con una maxFeePerGas corrispondente a quanto desiderano pagare affinché la transazione sia eseguita, sapendo che non pagheranno di più del prezzo di mercato del gas (baseFeePerGas) e otterranno il rimborso di qualsiasi extra, tranne la mancia.

In questo video viene spiegato l'EIP-1559 e i vantaggi che comporta:

Se sei interessato puoi leggere le specifiche esatte dell'EIP-1559.

Approfondisci con queste Risorse relative all'EIP-1559.

Perché esistono le commissioni sul carburante?

In breve, le commissioni sul carburante contribuiscono a mantenere la rete di Ethereum sicura. Richiedendo una commissione per ogni calcolo eseguito sulla rete, evitiamo lo spam sulla rete da parte di attori malevoli. Per evitare cicli infiniti accidentali od ostili oppure altri sprechi di calcolo nel codice, ogni transazione deve definire un limite al numero di passaggi di calcolo dell'esecuzione del codice che può utilizzare. Questa unità di calcolo fondamentale è il "carburante".

Sebbene una transazione preveda un limite, tutto il gas non utilizzato in una transazione viene rimborsato all'utente (ciò che viene restituito è: commissione massima - (commissione base + mancia)).

Diagramma che mostra come viene rimborsato il carburante inutilizzato Diagramma adattato da Ethereum EVM illustrated

Cosa si intende con limite di carburante?

Il limite di carburante indica la quantità massima di carburante che si è disposti a consumare in una transazione. Le transazioni più complicate, che coinvolgono smart contract, richiedono un maggiore lavoro di calcolo e quindi un limite di carburante superiore rispetto a un semplice pagamento. Un trasferimento di ETH standard richiede un limite di carburante di 21.000 unità di carburante.

Per esempio, se imposti un limite di carburante di 50.000 per un semplice trasferimento di ETH, l'EVM consuma 21.000 unità e le rimanenti 29.000 vengono rimborsate. Tuttavia, se specifichi troppo poco carburante, ad esempio un limite di carburante di 20.000 per un semplice trasferimento di ETH, l'EVM consumerà le tue 20.000 unità di carburante tentando di soddisfare la transazione, che però non potrà essere completata. A quel punto l'EVM annulla ogni modifica, ma dato che il miner ha già eseguito un lavoro pari a 20.000 unità di gas, questo carburante viene consumato.

Perché le commissioni del carburante possono esser così elevate?

Le commissioni del carburante elevate sono dovute alla popolarità di Ethereum. Eseguire qualsiasi operazione su Ethereum richiede il consumo di carburante, ma bisogna considerare che lo spazio di carburante per blocco è limitato. Le commissioni includono l'esecuzione di calcoli, l'archiviazione o la manipolazione di dati, o ancora il trasferimento di token, tutte operazioni che consumano diverse quantità di unità di "carburante". All'aumentare della complessità delle funzionalità delle dApp, cresce anche il numero di operazioni che uno smart contract esegue, il che significa che ogni transazione occupa più spazio in un blocco di dimensioni limitate. Se c'è troppa domanda, gli utenti devono offrire una mancia maggiore per tentare di superare le transazioni degli altri utenti. Una mancia più cospicua può rendere più probabile che la tua transazione troverà posto nel blocco successivo.

Il prezzo del carburante da solo in realtà non determina quanto dobbiamo pagare per una transazione particolare. Per calcolare la commissione sulle transazioni dobbiamo moltiplicare il carburante usato per la commissione sulle transazioni, misurata in gwei.

Iniziative per ridurre i costi del gas

Gli aggiornamenti di scalabilità di Ethereum dovrebbero infine risolvere alcuni problemi delle commissioni del carburante, che, a loro volta, consentiranno alla piattaforma di elaborare migliaia di transazioni al secondo e di scalare globalmente.

La scalabilità di Livello 2 è un'iniziativa fondamentale per migliorare notevolmente i costi del carburante, l'esperienza utente e la scalabilità. Maggiori informazioni sullo scaling di Livello 2.

Il nuovo modello di Proof of Stake introdotto sulla beacon chain dovrebbe ridurre l'elevato consumo energetico e la dipendenza da hardware specializzato. Questa catena consentirà alla rete decentralizzata di Ethereum di concordare e mantenere la rete sicura, limitando al contempo il consumo di energia, richiedendo invece un impegno finanziario.

Chiunque abbia almeno 32 ETH può metterli in staking e diventare un validatore responsabile dell'elaborazione delle transazioni, convalidando i blocchi e proponendo nuovi blocchi da aggiungere alla catena. Gli utenti con meno di 32 ETH possono unirsi ai gruppi di staking.

Strategie utili per ridurre i costi del carburante

Se stai cercando di ridurre i costi del carburante per i tuoi ETH, puoi impostare una mancia per indicare il livello di priorità della tua transazione. I miner “lavoreranno su” ed eseguiranno le transazioni che offrono una mancia maggiore per il carburante, poiché terranno le mance pagate dall'utente e saranno meno inclini a eseguire transazioni che prevedono mance inferiori.

Se desideri monitorare i prezzi del carburante in modo da poter inviare i tuoi ETH a un costo inferiore, puoi usare un ampio ventaglio di strumenti, come:

  • Etherscan - Strumento di stima del prezzo del carburante delle transazioni

  • Blocknative ETH Gas Estimator - Estensione per la stima del carburante di Chrome, che supporta sia transazioni legacy di Tipo 0 sia transazioni EIP-1559 di Tipo 2.

  • ETH Gas Station - Strumenti di misurazione per il mercato del carburante dedicati ai consumatori

Letture consigliate

Was this article helpful?