El gran problema de propagació de blocs a Solana i la seva solució

Turbine de Solana optimitza la propagació de blocs a la blockchain dividint-los en fragments més petits, utilitzant codificació d'esborrat per garantir la integritat de les dades i millorant l'eficiència amb l'arbre Turbine.

viernes, 14 de marzo de 2025 • 4 min de lectura • Equip Q2BSTUDIO

Empresa-Software-Apps

A les blockchains tradicionals, la propagació de blocs es produeix a través d'una xarxa peer-to-peer on els nous blocs i transaccions es transmeten a tots els nodes propagadors. Aquest procés sol realitzar-se de manera seqüencial o per difusió massiva. No obstant això, aquest mètode no és escalable, ja que a mesura que la xarxa creix, la quantitat de comunicacions esdevé difícil de gestionar.

Considerem una xarxa de 35.000 validadors. El líder necessita transmetre un bloc de 128 MB (aproximadament 500.000 transaccions de 250 bytes cadascuna) a tots aquests validadors. La implementació tradicional de propagació de blocs requeriria que el líder establís una connexió única amb cada validador i transmetés el bloc complet 35.000 vegades, resultant en una transmissió total de dades de 4,69 TB. Això supera les capacitats d'ample de banda habituals i esdevé inviable amb tantes connexions.

Per resoldre el problema de la lenta difusió de blocs, Solana va introduir Turbine, un mecanisme de propagació de blocs en múltiples capes utilitzat pels clústers per transmetre les entrades del llibre major a tots els nodes. En termes generals, Turbine divideix els blocs en fragments més petits i els dissemina a través d'un ordre específic de nodes, reduint la càrrega a cada node individual.

Turbine es va inspirar en l'arquitectura de BitTorrent, ja que tots dos utilitzen la fragmentació de dades i la xarxa peer-to-peer per distribuir informació. Turbine està optimitzat per a la transmissió de dades en temps real mitjançant UDP, cosa que redueix la latència. A més, utilitza un camí aleatori per paquet a través de la xarxa mentre els líders transmeten les seves dades, cosa que permet que Solana mantingui un alt rendiment en la propagació de blocs.

A més, Turbine soluciona el problema de la disponibilitat de dades, assegurant que tots els nodes tinguin accés a la informació necessària per validar transaccions de manera eficient, evitant la congestió d'ample de banda típica en altres xarxes blockchain.

Abans de propagar un bloc, el líder construeix i organitza el bloc basant-se en el flux de transaccions entrants. Un cop construït, s'envia a través de Turbine a tota la xarxa en un procés conegut com a propagació de blocs. Els missatges es transmeten entre els validadors i inclouen la informació necessària per assolir un estat de compromís confirmat o finalitzat.

Tot i que els líders creen i proposen blocs sencers, les dades reals s'envien en fragments parcials anomenats shreds a altres validadors. Els shreds són les unitats mínimes de dades que es transmeten entre validadors. Mitjançant aquest procés de fragmentació i propagació, s'aconsegueix una distribució ràpida i eficient del bloc a la xarxa de Solana, garantint el seu alt rendiment i seguretat.

Abans de ser enviats a l'estructura de Turbine, els shreds es codifiquen mitjançant Reed-Solomon, un mètode de protecció de dades basat en codis de correcció d'errors. Aquesta tècnica permet reconstruir la informació fins i tot si certs fragments es perden en la transmissió.

Com que la retransmissió de paquets entre validadors podria generar la difusió de dades incorrectes o incompletes, Turbine incorpora una estratègia dinàmica per compensar la pèrdua de paquets. Si un líder transmet el 20% dels paquets com a codis de correcció d'errors, la xarxa pot perdre aquest percentatge de dades sense afectar la reconstrucció del bloc. Aquest paràmetre es pot ajustar segons les condicions de la xarxa.

Solana utilitza una estructura en arbre coneguda com a Turbine Tree per facilitar la propagació eficient dels shreds entre validadors. Aquesta estructura jeràrquica permet que els nodes sàpiguen exactament quina és la seva responsabilitat en la retransmissió de fragments, assegurant una distribució optimitzada de les dades a la xarxa.

Si un node no rep prou shreds a causa d'una pèrdua superior al límit de correcció d'errors, pot sol·licitar retransmissions al líder o a altres nodes que tinguin el bloc complet, garantint la continuïtat en la propagació de la informació.

En conclusió, Turbine permet una distribució eficient de blocs a Solana en dividir les dades en fragments més petits, cosa que facilita la seva transmissió sense congestionar la xarxa. La implementació de tècniques de correcció d'errors i la seva estructura en arbre asseguren la integritat i disponibilitat de les dades.

A Q2BSTUDIO ens especialitzem en el desenvolupament de solucions tecnològiques avançades, incloent blockchain i xarxes distribuïdes. El nostre equip d'experts treballa en l'optimització d'infraestructures digitals per garantir processos més eficients i escalables dins de l'ecosistema tecnològic.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.