Home / Solana: Nuova patch contro la congestione della rete! Funzionerà?

Solana: Nuova patch contro la congestione della rete! Funzionerà?

La software house "Anza" implementa correzioni per superare la congestione della rete di Solana. Funzionerà? Vediamo di capirne di più...

Mainnet Beta ormai è un dato di fatto: al momento Solana ha incontrato un limite pratico nell’esecuzione delle transazioni. La meme coin season ha messo in grande difficoltà l’intera rete. Ne abbiamo discusso precedentemente in questo articolo.

Prima ancora di parlare della Patch, dei limiti e di tutte le transazioni fallite, andiamo a distinguere i due tipi di transazioni che Solana attualmente supporta: transazioni Voting e transazioni Non-Voting.

Transazioni Voting e Non-Voting su Solana

  • Transazioni Voting: Queste sono transazioni utilizzate dai validatori per partecipare al processo di consenso. Attraverso tali transazioni, i validatori comunicano i loro ‘voti’ per confermare la validità dei blocchi proposti nella blockchain. La votazione è un processo essenziale per mantenere la sicurezza e l’integrità della rete, aiutando a stabilire un accordo sullo stato corrente e accettato della blockchain;
  • Transazioni Non-Voting: Queste includono tutte le altre transazioni come, Buy, Sell, trasferimenti di token, esecuzione di Smart Contracts, e altre interazioni standard con la blockchain che non implicano la partecipazione al meccanismo di consenso. Queste transazioni sono quelle che tipicamente vediamo quando gli utenti interagiscono con le varie applicazioni decentralizzate (dApps) sulla rete.

Quello che interessa all’utilizzatore finale, ovvero l’utente medio che effettua operazioni di Buy, Sell, Swap, Transfer, Lending sono le transazioni Non Voting

Solana: dalla teoria alla pratica, fino alla congestione di inizio aprile

Il whitepaper di Solana ambisce a portare la capacità teorica della blockchain a 710.000 TPS (transazioni al secondo), mentre alcuni test (benchmark testing, avendo la migliore situazione possibile) hanno dimostrato che si può arrivare a gestire più di 65.000 TPS.

Ma la realtà, “on chain” è diversa

Ionut Gaucan

Nella realtà, in particolare facendo riferimento all’apice della Meme-Season a inizio aprile 2024, le transazioni on chain hanno raggiunto una media massima di 3000 TPS (Voting e Non Voting).

Ci stiamo avvicinando

Ionut Gaucan

Delle 3000 TPS, solamente 1000 sono rappresentate da transazioni Non Voting (Buy, Sell, Swap, Transfer). Durante il picco della congestione causata dai meme coin, si è osservato che circa il 75% di queste transazioni sono fallite.

TPS solana
Fonte Dune: https://dune.com/scarn_eth/solana-tx-fail-rate 

TX Fallite vs Completate

Nell’infografica sottostante possiamo osservare la differenza tra le transazioni confermate e quelle fallite nella settimana che va dal 18 aprile al 25.

Fonte Dune: https://dune.com/ianblocky/solana-tps

Andiamo a capire perché tuttora le transazioni su Solana falliscono

Causa del problema: Il problema è stato identificato come correlato al “livello di rete” dell’architettura di Solana. Questo significa che il problema risiede nella parte della rete responsabile della comunicazione e del trasferimento dei dati tra i nodi, inclusa la consegna delle transazioni al leader del blocco.

Tipi di risultati delle transazioni

  • Esecuzione riuscita: La transazione viene elaborata senza errori;
  • Eseguita ma fallita: La transazione viene elaborata ma fallisce a causa di specifiche condizioni non soddisfatte (ad esempio, un oggetto acquisito è già esaurito, o il prezzo scivola oltre i limiti accettabili a causa di prezzi che cambiano rapidamente). L’utente paga le commissioni di gas, ma la transazione non produce un risultato positivo;
  • Transazioni perse: Queste transazioni scompaiono e non vengono registrate da nessuna parte nella blockchain. Questo si verifica perché non raggiungono il leader del blocco a causa di problemi nel livello di rete, e non a causa di problemi con il meccanismo di consenso della blockchain o il processo di esecuzione. 

Problemi del livello di rete

Il livello di rete è essenzialmente la parte dell’infrastruttura di Solana che gestisce la trasmissione di pacchetti di dati (inclusi le transazioni) attraverso la rete. I problemi in questo strato stanno attualmente causando la perdita di transazioni, che è una delle principali fonti di congestione. Solana utilizza QUIC (un protocollo di comunicazione di rete progettato da Google) per migliorare l’efficienza di queste connessioni.

Tuttavia, anche se questo dovrebbe teoricamente aiutare a gestire meglio il flusso di dati, ci sono problemi di implementazione. I leader dei blocchi (nodi responsabili della creazione di nuovi blocchi nella blockchain) dovrebbero gestire efficacemente le connessioni in entrata, ma a causa di una cattiva implementazione, potrebbero interrompere le connessioni casualmente durante i periodi di alta domanda. 

da twitter nishil profilo
Fonte: https://twitter.com/_nishil_/status/1777048389735321810

Impatto della congestione e correzioni future:

La congestione è in gran parte dovuta all’alto volume di transazioni e all’incapacità del sistema di gestirle efficacemente con le configurazioni attuali. Questo non è un problema di fallimento delle transazioni (che non sono causate principalmente da utenti regolari ma da bot che tentano opportunità di arbitraggio), ma piuttosto di come le transazioni sono gestite prima che abbiano anche la possibilità di essere eseguite o fallire. Le soluzioni sono in fase di sviluppo e implementazione per affrontare questi problemi di rete. Tuttavia, non c’è una linea temporale certa per quando queste risolveranno completamente i problemi, e aggiornamenti significativi come “Firedancer” non sono attesi fino a più avanti nell’anno.

Soluzioni e futuro della chain

Una prima implementazione arriva da ANZA, la società leader software development focalizzata su Solana. In un recente articolo ANZA ha pubblicato una patch iniziale che richiede ai validatori di eseguire l’upgrade. Tale patch punterebbe a risolvere diversi problemi di congestione sulla chain. Nell’articolo viene presentato un nuovo elemento importante incluso nella release v1.18 di Agave di Anza: il Central Scheduler.

Precedentemente noto come “the scheduler”, il Central Scheduler rappresenta un significativo avanzamento per il client Agave, che permetterà una notevole riduzione dei conflitti di transazione durante la produzione dei blocchi da parte dei leader (validatori selezionati per produrre il prossimo blocco) nella rete Solana.

Performance del Central Scheduler

Le prestazioni del Central Scheduler non sono una scienza esatta. L’obiettivo della fase di produzione dei blocchi è impacchettare il blocco in modo equo per gli utenti mentre si massimizzano i ricavi per il leader. I dati preliminari indicano una raccolta di commissioni fino all’80% superiore rispetto al vecchio scheduler.

Si prevede che i nodi che operano il Central Scheduler avranno più successo nel far atterrare transazioni con commissioni prioritarie più elevate, mentre il vecchio scheduler aveva un approccio più casuale alla selezione delle transazioni. In poche parole, si cercherà di dare la priorità a transazioni con un maggiore “gas fee”.

Perché su Ethereum e Bitcoin le transazioni non falliscono?

Solana, a differenza di Bitcoin e Ethereum, non dispone di una mempool, ovvero di un luogo di attesa per le transazioni prima che queste vengano confermate. Questa assenza può portare a un fallimento diretto delle transazioni quando la rete è sovraccarica, poiché non esiste un sistema di coda.

Le transazioni su Bitcoin e Ethereum, invece, raramente falliscono poiché, al momento della transazione, il wallet chiede di pagare una fee competitiva rispetto alle altre transazioni. Questo pagamento assicura che la transazione rimanga nella mempool, in attesa di essere processata. La mempool funziona come un buffer che gestisce il flusso di transazioni durante i periodi di alta congestione, distribuendo il carico di lavoro nel tempo.

Conclusioni

Ci avviamo verso la conclusione, ricordando che fin dalla sua nascita, la blockchain di Solana è stata continuamente oggetto di correzioni e implementazioni, e non sarà certamente l’ultima volta che vedremo la rete congestionata o addirittura offline. Nel corso degli anni, però, abbiamo visto che queste problematiche non influenzano particolarmente gli investitori anzi, abbiamo notato un notevole afflusso di capitale in SOL. Con il prezzo dell’hardware in costante diminuzione, la chain continua ad avere un enorme potenziale per l’ecosistema, permettendo di scalare sia nel numero di transazioni sia nell’implementazione di nodi validatori.

Ionut Gaucan – Criptovaluta.it web expert
Solana Validators 1758, RPC Nodes 2620
Fonte: https://solanabeach.io/ 30/04/2024 Solana Validators 1758, RPC Nodes 2620

Solana rimane una delle Layer 1 più veloci ed economiche su cui sviluppare e testare; mentre Bitcoin esegue circa 8 TPS ed ETH 14,8 TPS, Solana promette 65.000 TPS. Riuscirà ad arrivare a tale numero? 

Iscriviti
Notificami
guest

1 Comment
Più votati
Più nuovi Più vecchi
Inline Feedbacks
View all comments
Luca
Luca
6 mesi fa

Ottimo articolo complimenti! allora è un mezza bugia quando dicono che sol è capace di fare 65000 transazioni al secondo