🇮🇹 "Introduzione al pipelining: La soluzione di scaling del livello di consenso di Cardano"

:it: Traduzione italiana di Introducing pipelining: Cardano's consensus layer scaling solution - IOHK Blog

Traduzione italiana a cura di Lordwotton di RIOT Stake Pools. Se apprezzi queste traduzioni, per favore valuta di supportare il mio lavoro delegando i tuoi ada a RIOT :pray: entra nel nostro gruppo Telegram


Introduzione al pipelining: La soluzione di scaling del livello di consenso di Cardano

Il pipelining è uno dei miglioramenti chiave per lo scaling che sarà implementato nel 2022. Ecco come funziona e perché è importante

img

Sareste perdonati se pensaste che il pipelining suona come una procedura di rimodellamento che un idraulico potrebbe impiegare. In un certo senso, questo non è troppo lontano dalla verità. Il pipelining è, in effetti, un’evoluzione dell’“impianto idraulico” di Cardano. È un elemento chiave nel nostro piano di scalabilità di quest’anno, uno della serie di passi pubblicati che coprono il nostro approccio metodico per flessibilizzare la capacità di Cardano mentre l’ecosistema cresce.

Scaling e throughput sono considerazioni cruciali per qualsiasi blockchain, se si vuole mantenere la crescita e la competitività. Mentre Cardano entra nella fase di sviluppo Basho, siamo concentrati sull’assicurare che Cardano possa scalare per soddisfare le crescenti esigenze dell’ecosistema. In altre parole, abbiamo bisogno di garantire che il protocollo sottostante - Ouroboros Praos - operi abbastanza velocemente per la pletora di applicazioni decentralizzate che si stanno distribuendo o sono in fila per il lancio su Cardano.

Cardano continuerà ad essere costantemente ottimizzato in una serie di passi misurati, scalando attentamente e metodicamente #Cardano per la crescita futura con l’aumentare della domanda. I cambiamenti introdotti dal rilascio del nodo 1.33.0 all’inizio di gennaio ci hanno dato ulteriore spazio per modificare alcuni parametri di rete, tra cui la dimensione del blocco e le unità di memoria. Le regolazioni qui hanno un impatto diretto su come Cardano gestisce il traffico di rete in volume e continuiamo a monitorare da vicino le prestazioni della rete.

Continuare a osservare da vicino le prestazioni della rete nel mondo reale e - cosa importante - l’impatto cumulativo dei cambiamenti dei parametri sarà la chiave di tutto questo processo. Dopo ogni aggiornamento, monitoriamo e valutiamo attentamente almeno un’epoca (5 giorni) prima di continuare con ulteriori aggiustamenti. Per quanto sia stato fatto un ampio lavoro di ricerca e di ingegneria nella progettazione e nell’implementazione del sistema, un’architettura di rete decentralizzata ha bisogno di essere scalata in base ai comportamenti e all’utilizzo degli utenti nel mondo reale.

Introduzione al pipelining

Il pipelining - o più precisamente il pipelining a diffusione - è un miglioramento del livello di consenso che facilita la propagazione più veloce dei blocchi. Consente un guadagno ancora maggiore in headroom, che permetterà ulteriori aumenti delle prestazioni e della competitività di Cardano.

Per capire come questa tecnica raggiunge il suo obiettivo, ricapitoliamo come si propagano attualmente i blocchi.

Attualmente, un blocco passa attraverso sei fasi mentre si muove attraverso la catena:

  1. Trasmissione dell’intestazione del blocco
  2. Convalida dell’intestazione del blocco
  3. Richiesta e trasmissione del corpo del blocco
  4. Convalida del corpo del blocco ed estensione locale della catena
  5. Trasmissione dell’intestazione del blocco ai nodi a valle
  6. Trasmissione del corpo del blocco ai nodi a valle

Il viaggio di un blocco è molto serializzato. Tutti i passi avvengono nella stessa sequenza ogni volta, in ogni nodo. Considerando il volume dei nodi e il numero sempre crescente di blocchi, la trasmissione dei blocchi richiede una notevole quantità di tempo.

Diffusion pipelining sovrappone alcuni di questi passi l’uno sull’altro in modo che avvengano simultaneamente. Questo fa risparmiare tempo e aumenta il throughput.
img

Il risparmio di tempo consentito da questa tecnica porterà a un margine ancora maggiore per scalare ulteriormente Cardano, comprese le modifiche a:

  • Dimensione del blocco - più grande è il blocco, più transazioni e script può trasportare
  • Limiti di memoria Plutus - la quantità di memoria disponibile per l’esecuzione di uno script Plutus
  • Limiti della CPU di Plutus - più risorse computazionali possono essere assegnate per uno script da eseguire in modo più efficiente

Implementazione del pipelining

Uno dei principi di progettazione dietro la diffusione del pipelining era quello di ottenere una propagazione dei blocchi più veloce, evitando allo stesso tempo modifiche “distruttive” alla catena. Non volevamo rimuovere nessuno dei protocolli, primitivi o interazioni che già avvengono in Cardano, perché i nodi si basano su questi meccanismi consolidati. Volevamo la piena compatibilità all’indietro, quindi invece di cambiare il modo in cui le cose funzionano attualmente, stiamo aggiungendo un nuovo mini-protocollo il cui compito è quello di pre-notificare le entità sottoscritte quando viene visto un nuovo blocco desiderabile, prima della convalida completa.

Il cambiamento chiave introdotto dal pipelining è la capacità di pre-notificare i peer e dare loro un blocco prima che sia validato, il che permette al peer a valle di pre-fetchare il corpo del nuovo blocco. Questo fa risparmiare molto tempo perché riduciamo drasticamente il tempo necessario per convalidare un blocco attraverso i vari hop.

In conclusione

Il pipelining è solo uno dei pilastri che sostengono lo scaling di Cardano quest’anno. Combinati, tutti questi cambiamenti porteranno Cardano ad una posizione in cui è più veloce dei suoi concorrenti, e una piattaforma altamente competitiva per la finanza decentralizzata (DeFi) quest’anno.

I punti salienti

img

Fernando Sanchez ha contribuito a questo articolo.