Interpretación en profundidad de la ejecución paralela: potencial, retos y futuro

Ethereum introdujo contratos inteligentes programables a través de EVM.

Título original: "Parallel Power Unlocked"

Escrito por: ROBERT MCTAGUE, analista de inversiones, Amber Labs

Compilado por: Yvonne

Desafíos actuales que enfrenta la industria blockchain

Actualmente, las cadenas de bloques convencionales brindan una variedad de aplicaciones, que incluyen DeFi, NFT, redes sociales e incluso juegos. Sin embargo, la calidad y las capacidades de estas aplicaciones están limitadas por una limitación fundamental: la dificultad de las cadenas de bloques para procesar múltiples transacciones simultáneamente. La ejecución paralela es crucial en las aplicaciones descentralizadas, ya que permite que las plataformas de contratos inteligentes procesen múltiples transacciones simultáneamente, lo que aumenta el rendimiento general y la capacidad de respuesta de la red. Para abordar este obstáculo crítico, los desarrollos de la industria en los últimos cinco años se han centrado en mejorar el rendimiento de la cadena de bloques a través de la paralelización.

En informes anteriores, hemos profundizado en varias formas de mejorar la escalabilidad, mostrando diseños modulares, arquitecturas innovadoras como DAG y estudios de casos como Aptos y Sui. Sin embargo, un aspecto que a menudo se pasa por alto en el espacio de la cadena de bloques es cómo la red maneja la ejecución paralela y cómo se comparan estos enfoques.

Este informe de investigación tiene como objetivo arrojar luz sobre las próximas cadenas de bloques de capa 1 que ayudarán a resolver los problemas de las cadenas de bloques actuales y establecer un marco de taxonomía para futuras ejecuciones paralelas. Nos centraremos en cómo estas soluciones permiten la ejecución en paralelo y compararemos sus enfoques para superar las limitaciones de las redes blockchain existentes. Al examinar las diversas estrategias y técnicas empleadas por estas cadenas de bloques de próxima generación, esperamos brindar información valiosa sobre el futuro de la ejecución paralela y su papel en el impulso de la innovación de las cadenas de bloques.

EVM

La mayoría de las plataformas de contratos inteligentes de hoy en día se basan en la máquina virtual Ethereum (EVM), pero tiene un gran inconveniente: no puede ejecutar transacciones al mismo tiempo. Esta limitación ha impulsado el desarrollo de una nueva ola de soluciones L1 que enfatizan la ejecución en paralelo como un medio para aumentar la escalabilidad y la eficiencia.

Una cadena de bloques de contrato inteligente tiene dos componentes principales: un mecanismo de consenso, que ayuda a los nodos a acordar el orden y la inclusión de transacciones, y una máquina virtual, que ejecuta el código de la aplicación y actualiza el estado de la aplicación y los saldos de las cuentas. Ethereum introdujo contratos inteligentes programables a través de EVM, un sistema compartido donde cada nodo guarda una copia de todas las aplicaciones y su estado. A pesar de su popularidad, las cadenas de bloques que utilizan EVM están limitadas en términos de velocidad de procesamiento. Por ejemplo, Ethereum puede procesar alrededor de 10 transacciones por segundo (tps), mientras que la cadena EVM más rápida, BinanceChain, solo puede alcanzar más de 200 tps. Esta ineficiencia se debe al modelo de procesamiento secuencial de la EVM, es decir, las transacciones se procesan una tras otra.

Monad, un L1 enfocado en la escalabilidad, hace este análisis en una publicación reciente, "Para referencia: un juego de cartas simple con 10,000 usuarios que se mueven cada 10 segundos requiere 1000 tps". A juzgar por la situación actual, es poco probable que EVM pueda soportar tanto muchas transacciones en una cadena.

Para hacer frente a este desafío, los desarrolladores están explorando soluciones que admitan la ejecución en paralelo. Este informe tiene como objetivo crear un marco para clasificar cómo estas cadenas de bloques logran la paralelización, centrándose en la mejora de la ejecución paralela. Al implementar estas estrategias, los ecosistemas de contratos inteligentes pueden superar las limitaciones del procesamiento secuencial y allanar el camino para una adopción más amplia de aplicaciones descentralizadas.

¿Qué es la ejecución en paralelo?

En blockchains, la ejecución paralela se puede entender a través de una simple analogía. Imagine una tienda de comestibles que necesita cobrar a los clientes por sus compras. Si una tienda tiene solo un carril de pago y una caja registradora, la línea se moverá lentamente, lo que frustrará a los clientes y posiblemente los incite a comprar en otro lugar. La tienda empleó varias líneas de pago y cajas registradoras para acelerar el proceso. Este es un procesamiento paralelo en acción, que permite a la tienda manejar las necesidades de varios clientes al mismo tiempo, en lugar de uno a la vez.

Aplicando esta analogía a una cadena de bloques, múltiples carriles de pago representan diferentes caminos o carriles para procesar transacciones. En ejecución paralela, estos canales existen dentro de un solo sistema, lo que le permite procesar múltiples transacciones simultáneamente. Esta configuración permite que un solo sistema de cadena de bloques procese un mayor volumen de transacciones de manera más eficiente, mejorando el rendimiento general.

Ahora que hemos captado la importancia de la ejecución paralela para la eficiencia y escalabilidad de blockchain, profundicemos un poco más en su mecánica.

¿Cómo funciona la ejecución en paralelo?

La ejecución paralela en blockchain significa procesar transacciones no relacionadas al mismo tiempo. Trate las transacciones no relacionadas como eventos independientes. Por ejemplo, si dos personas intercambian tokens en diferentes intercambios, sus transacciones pueden procesarse simultáneamente. Sin embargo, si están operando en la misma plataforma, es posible que las transacciones deban ejecutarse en un orden específico.

El principal desafío para lograr la ejecución paralela es determinar qué transacciones no están correlacionadas y cuáles son independientes. Esto incluye comprender cómo cada transacción afecta los datos de la cadena de bloques. Con muchas aplicaciones interconectadas, determinar qué transacciones dependen unas de otras puede ser complicado.

Los diferentes sistemas de cadenas de bloques utilizan diferentes métodos para identificar transacciones no relacionadas, generalmente administrando el acceso a los datos de la cadena de bloques. Cada cuenta o contrato inteligente tiene su propio rango específico de datos que se pueden cambiar. Las transacciones independientes no intentan cambiar los mismos datos en el mismo bloque, mientras que las transacciones relacionadas sí lo hacen.

Es más probable que algunas transacciones se consideren irrelevantes que otras. Por ejemplo, una simple transferencia de tokens entre dos personas no afecta a otras personas, por lo que está claro que este tipo de transacciones son casi siempre independientes. Sin embargo, las transacciones que involucran el mismo contrato inteligente o cuenta pueden cambiar sus datos y no pueden ejecutarse en paralelo. Un ejemplo es una transacción de token que involucra múltiples plataformas, donde todas las plataformas participantes deben esperar a que se complete la transacción inicial antes de procesar otras transacciones.

En las siguientes secciones, profundizaremos en tres enfoques diferentes para lograr la ejecución paralela en los sistemas de cadena de bloques: acceso de estado/optimista, fragmentación y ejecución paralela basada en computación. Vale la pena señalar que tradicionalmente, solo el acceso estatal y los modelos optimistas han sido considerados por otros en la industria de la cadena de bloques como métodos de ejecución verdaderamente paralelos, ya que permiten que una única cadena de bloques procese transacciones al mismo tiempo. Sin embargo, con la llegada de los sofisticados protocolos de comunicación entre cadenas, el concepto de lo que constituye la ejecución en paralelo se ha ampliado significativamente. Por ejemplo, la fragmentación, aunque tradicionalmente no se considera un medio de ejecución en paralelo, facilita el procesamiento paralelo de transacciones en múltiples fragmentos, por lo que vale la pena considerarlo. Finalmente, exploraremos el concepto relativamente nuevo de ejecución paralela basada en computación. Este modelo innovador, aunque no es muy conocido, representa un enfoque revolucionario para el procesamiento de transacciones en paralelo en los sistemas de cadena de bloques, que describimos en detalle más adelante en este documento. A medida que exploremos estos enfoques, descubriremos cómo cada uno ofrece ventajas y desafíos únicos para una tecnología blockchain más eficiente y escalable.

Ejecución Paralela: Acceso al Estado y Modelo Optimista

Actualmente, la mayoría de las cadenas de bloques con ejecución paralela se basan en dos enfoques populares: el enfoque de acceso estatal y el modelo optimista. El enfoque de acceso estatal es un enfoque estratégico que identifica de manera preventiva qué transacciones tienen acceso a qué parte del estado de la cadena de bloques, lo que permite que la cadena de bloques declare fácilmente cuáles son independientes. Los modelos optimistas, por otro lado, operan bajo el supuesto de que todas las transacciones son independientes y simplemente verifican este supuesto retrospectivamente y hacen ajustes si es necesario. Varias cadenas de bloques explotan estos enfoques para facilitar la paralelización, demostrando cada uno de estos enfoques teóricos en acción. Estos suelen ser los modelos a los que se refiere la gente cuando habla de cadenas de bloques paralelas. Esta sección explicará estos dos enfoques y su aplicación en el campo de la cadena de bloques.

Solana: la pionera de las cadenas de bloques paralelas

Solana se ha convertido en pionera en el espacio de blockchain, siendo pionera en un enfoque único para administrar transacciones y expandir la escalabilidad. Su innovación revolucionaria es determinar a qué partes del estado de la cadena de bloques (el registro integral de todas las cuentas o activos) se puede acceder mediante acciones específicas.

Piense en ello como un sistema de archivo gigante. Cada transacción envía una solicitud para acceder a un archivo específico. Las transacciones se pueden procesar de forma independiente si la solicitud de archivo es única. Pero si solicitan los mismos archivos, esas transacciones se entrelazan y requieren coordinación. El verdadero truco es determinar qué transacción solicita qué archivo.

Como la primera cadena de bloques paralela, Solana presenta una solución. Cada transacción debe declarar previamente a qué archivo pretende acceder. Este requisito está contenido en el modelo de ejecución "SeaLevel" de Solana, donde todas las funciones operan dentro de un marco basado en cuentas. Cada cuenta solo puede ser accedida por las transacciones asociadas a ella, evitando posibles conflictos.

Crucialmente, Solana también usa procedimientos sin estado contenidos dentro de estas cuentas. Los programas sin estado son piezas de código que no recuerdan ningún dato entre ejecuciones: comienzan desde cero cada vez que se ejecutan. Cuando se realiza una llamada de función, estos programas se activan para realizar sus tareas sin depender de ningún dato anterior. Este concepto ayuda a mantener la independencia de las transacciones y contribuye al enfoque innovador de Solana para mejorar la escalabilidad de la cadena de bloques.

Sui: Concepto de objetos

Sui debutó recientemente y causó un gran revuelo en el espacio blockchain. Pero, ¿qué aporta exactamente Sui? Para profundizar en los matices de la arquitectura de Sui, nuestro equipo elaboró un documento completo comparándolo con Aptos, otra cadena de bloques que exploraremos más a fondo. Sin embargo, en este momento, nuestra principal preocupación es comprender el enfoque único de Sui para la ejecución de transacciones paralelas.

La estrategia de paralelización de Sui es similar a la de Solana, pero con un giro único: reemplazar las cuentas con una estructura llamada "objetos". Las transacciones Sui no hacen referencia a las cuentas, sino que cambian las propiedades de los objetos, que pueden ser activos o contratos inteligentes. Si una transacción se designa como independiente (es decir, si ninguna otra transacción interactúa con el objeto de destino), omitirá el mecanismo de consenso por completo, una característica conocida como transmisión de consenso bizantino.

Para ilustrar, suponga que Alice posee un NFT único, que se representa como un objeto en el contexto de Sui y "Alice" aparece como su "propietaria". Si Alice transfiere este NFT a Bob, la transacción se trata como una transacción de objeto separada, sin pasar por el proceso de consenso. Sin embargo, si Alice decide realizar una operación más compleja, como comprar un NFT a través del mercado, la dinámica cambia. Debido a que los objetos pueden ser manipulados por otras transacciones, la transacción puede designarse como una transacción dependiente y es posible que deba secuenciarse antes de la ejecución.

Combustible: use UTXO para mejorar la ejecución

Fuel es líder en el espacio de la cadena de bloques y aprovecha al máximo el modelo UTXO (salida de transacción no gastada). Si piensa en el modelo UTXO como una transacción física en efectivo, es como comprar algo por $7 con un billete de $10 y obtener $3 de cambio. Al usar el modelo UTXO, Fuel puede procesar transacciones en paralelo de manera eficiente. Esto se debe a que el modelo UTXO permite una fácil identificación de transacciones independientes, aquellas que no se superponen en los objetos o "facturas" con las que interactúan. Esta independencia significa que estas transacciones se pueden procesar simultáneamente sin conflictos, lo que aumenta significativamente el rendimiento de las transacciones.

Bitcoin también adopta el modelo UTXO, que Fuel utiliza para establecer listas de acceso estrictas. Estas listas actúan como reguladores, controlando qué partes del estado de la cadena de bloques son accesibles. La estrategia se basa en la idea de la ordenación canónica de transacciones, la forma en que organiza las transacciones dentro de un bloque, simplifica el proceso de identificación de dependencias entre transacciones.

Fuel ha dado vida a este concepto mediante el desarrollo de una nueva máquina virtual, FuelVM, y un lenguaje de programación innovador, Sway. FuelVM está diseñado como un reemplazo ligero pero totalmente compatible para Ethereum Virtual Machine (EVM), lo que permite a los desarrolladores integrarse más directamente en el ecosistema de Fuel.

Además, Fuel enfatiza una estructura de cadena de bloques modular. Este enfoque modular permite que las transacciones ejecutadas dentro de Fuel se liquiden en la red principal de Ethereum. Como resultado, Fuel tiene la capacidad de manejar una gran cantidad de transacciones, todas las cuales se consolidan y liquidan en Ethereum. Este movimiento estratégico le permite a Fuel administrar de manera eficiente grandes cargas de transacciones.

Aptos: Ejecutar de forma optimista

En nuestra exploración de la paralelización de cadenas de bloques, primero describimos cómo las cadenas de bloques establecen dependencias al inicio de la transacción. A esto lo llamamos el enfoque de acceso estatal, donde un contrato inteligente o desarrollador define qué transacciones pueden acceder a qué parte del estado. Ahora pasamos a otra técnica llamada ejecución optimista. La ejecución optimista es una estrategia en la que cada transacción se procesa como si no estuviera conectada a ninguna otra transacción, lo que permite que todas las transacciones se procesen simultáneamente. Sin embargo, si resulta que algunas transacciones están vinculadas, se detienen, sus resultados se borran y se vuelven a ejecutar. Esto puede acelerar las cosas cuando las transacciones son en su mayoría independientes, pero cuando muchas están conectadas, el procesamiento debe detenerse y reiniciarse con frecuencia, lo que puede ralentizar las transacciones.

Aptos utiliza un enfoque llamado memoria transaccional de software de bloques (Block-STM) para aplicar una ejecución optimista. Aptos se basa en el lenguaje Move de Diem y MoveVM, que descubre automáticamente los enlaces de transacciones. No requiere que las transacciones digan qué parte del estado de la cadena de bloques (como una ubicación de memoria) tocan.

  • *

Fuente: Libro blanco de Block-STM

(El diagrama muestra que si se conectan algunas transacciones, la verificación se suspenderá, los resultados se eliminarán y luego se volverán a ejecutar).

En block-stm, las transacciones se establecen primero en un orden determinado dentro de un bloque y luego se dividen entre diferentes subprocesos de procesamiento para su ejecución simultánea. A medida que se procesan estas transacciones, el sistema realiza un seguimiento de qué ubicación de memoria cambia cada transacción. Después de cada ronda de procesamiento, el sistema verifica todos los resultados de las transacciones. Si encuentra que una transacción tocó una ubicación de memoria cambiada por una transacción anterior, borra sus resultados y vuelve a ejecutarse. Este proceso continúa hasta que se hayan procesado todas las transacciones del bloque.

El éxito de Block-STM depende en gran medida de las conexiones entre las transacciones. Según el equipo de Aptos, el uso de 32 núcleos de procesamiento proporciona una aceleración de 8x cuando las transacciones están altamente correlacionadas y de 16x cuando las transacciones están menos correlacionadas. Sin embargo, si se concatenan todas las transacciones en un bloque, block-stm puede resultar en una ligera ralentización en comparación con hacerlo uno por uno.

Monad: El líder de la cadena EVM

Monad fue pionera en un nuevo enfoque en cadenas de bloques compatibles con EVM y fue la primera cadena de bloques en introducir una arquitectura paralela en la primera capa de EVM. Al igual que Aptos, toma un camino de ejecución optimista, opera bajo el supuesto de que las transacciones no están interconectadas y resuelve las dependencias a medida que surgen.

Este enfoque novedoso no está exento de desafíos. Hacer modificaciones importantes a la tecnología blockchain es un compromiso complejo y a largo plazo. No obstante, Monads sigue comprometida con la innovación y se ha convertido en un faro para otras redes de cadenas de bloques que buscan mejorar su propia arquitectura.

Tome Polygon y BinanceSmartChain como ejemplos, dos conocidas cadenas de bloques ahora están tratando de actualizar sus sistemas, empleando estrategias similares. No se puede subestimar la importancia del trabajo pionero de monads sobre la implementación optimista, ya que ha influido en grandes plataformas para reevaluar y revisar sus propias arquitecturas.

Por ejemplo, Polygon tiene un rendimiento rápido y millones de transacciones diarias. Su API de red ya proporciona suficientes datos para impulsar un motor paralelizable y, al explorar Block-STM específico de EVM, han logrado evitar cambios en la API. Sin embargo, considerando el enorme volumen de transacciones en la cadena PolygonPoS, la suposición de cero dependencias entre los bloques no es realista. Por lo tanto, adoptaron un enfoque de metadatos mínimos, registrando las dependencias de las transacciones como metadatos en bloques, reduciendo la redundancia y los requisitos computacionales.

De manera similar, BinanceSmartChain también está explorando oportunidades para la ejecución paralela dentro de su cadena EVM a través de una ejecución optimista, lo que refleja el impacto del enfoque innovador de Monad en la industria en su conjunto.

El espíritu innovador de Monad y su compromiso de ampliar los límites de la tecnología blockchain ha creado una nueva tendencia en el campo de EVM. Su enfoque de adoptar una arquitectura paralela en la capa 1 de EVM no solo mejora la eficiencia de su propio sistema, sino que también influye e inspira a otros jugadores importantes en el campo a seguir su ejemplo, lo que marca un cambio importante en el futuro de la industria de la cadena de bloques.

Ejecución paralela basada en fragmentación

Hasta ahora, hemos discutido cómo varias cadenas de bloques rompen el orden secuencial y logran la paralelización a través de conceptos como cuentas, objetos, UTXO y modelos optimistas. Sin embargo, la próxima generación de cadenas de bloques que estamos a punto de estudiar adopta un enfoque único para la paralelización. Estas plataformas se asemejan a un modelo de fragmentación, en lugar de tener una sola cadena de bloques capaz de procesar transacciones en paralelo. La cadena de bloques se divide en múltiples partes, cada una responsable de procesar sus propias transacciones.

Shardeum: método de fragmentación de EVM

Shardeum ofrece un enfoque innovador para la escalabilidad de la cadena de bloques a través de la fragmentación dinámica, lo que permite la escalabilidad lineal. Los fragmentos son subsecciones de la red, y cada fragmento maneja una parte de las transacciones de la red, lo que mejora la eficiencia de los recursos y el rendimiento. Considere a un usuario que realiza una transacción en una aplicación descentralizada (dapp) alojada en Shardeum, que se asigna a un fragmento específico en función de sus datos asociados. Un fragmento procesa transacciones simultáneamente con otros fragmentos bajo su jurisdicción, como una mini-cadena de bloques. Los usuarios se benefician de un procesamiento más rápido, optimizando la experiencia del usuario.

Una característica clave de Shardeum es su compatibilidad con Ethereum Virtual Machine (EVM). Los desarrolladores pueden migrar fácilmente sus dapps basadas en Ethereum a Shardeum, combinando la fragmentación dinámica y el procesamiento paralelo de Shardeum con el extenso ecosistema de Ethereum.

La fragmentación dinámica garantiza la adaptabilidad de la red a las demandas fluctuantes y promueve la escalabilidad y la alta eficiencia del sistema. Shardeum automatiza las transacciones entre fragmentos, lo que permite la ejecución perfecta de aplicaciones complejas que requieren la participación de varios usuarios, lo que mejora la escalabilidad.

Lo que hace único a Shardeum es su capacidad de escalar linealmente. La red escala linealmente a medida que se agregan nodos, lo que significa que el rendimiento de las transacciones aumenta proporcionalmente al número de nodos. Este escalado lineal, combinado con la flexibilidad de los nodos y las capacidades de escalado automático, permite que Shardeum maneje de manera óptima las distintas cargas de trabajo y el crecimiento de la red. Shardeum proporciona una solución práctica a las necesidades transaccionales del mundo real al mejorar la escalabilidad de las aplicaciones complejas y brindar una solución práctica a las necesidades transaccionales del mundo real.

Linera: un revolucionario protocolo multicadena

La solución innovadora de Linera para la escalabilidad de blockchain se destaca a través de su protocolo dinámico multicadena, que incluye cadenas de usuarios, cadenas públicas y cadenas efímeras.

El diagrama anterior muestra tres tipos diferentes de cadenas en el sistema Linera: cadenas de usuarios, cadenas públicas y cadenas temporales. Cada tipo de cadena tiene una función única que contribuye a la funcionalidad general y la escalabilidad del protocolo.

A diferencia de Shardeum, donde Linera fue pionera en el concepto de cadenas controladas por el usuario, Shardeum divide su red en muchas cadenas de fragmentos, cada una responsable de un subconjunto de transacciones. Este enfoque granular brinda a los usuarios más control y autonomía al tiempo que optimiza la asignación de recursos en toda la red.

Las cadenas de usuarios, que son propiedad exclusiva de los usuarios y están controladas por ellos, forman la columna vertebral de la arquitectura de Linera. Estas cadenas procesan transacciones para usuarios finales específicos de forma independiente, lo que permite la ejecución en paralelo y aumenta significativamente el rendimiento al tiempo que reduce la latencia.

La cadena pública es otra parte importante del diseño de Linera. Estas cadenas albergan aplicaciones descentralizadas como Automated Market Makers (amm). La cadena pública está abierta a todos los participantes de la red y proporciona una plataforma común para las aplicaciones que requieren interacciones abiertas y sin restricciones.

Linera también introduce el concepto de cadenas temporales, que están especialmente diseñadas para manejar operaciones complejas como intercambios atómicos. Esta característica proporciona una ventaja significativa sobre los protocolos que necesitan registrar transacciones en la cadena principal, lo que puede crear un cuello de botella. En Linera, se crea una cadena temporal durante un intercambio atómico, que se procesa de forma independiente y en paralelo con otras transacciones. Una vez que finaliza el intercambio, la cadena temporal desaparece y el estado actualizado se refleja en la cadena de usuario asociada.

La estructura del protocolo admite el escalado horizontal, que es una propiedad esencial para mantener el rendimiento del sistema bajo cargas variables. A medida que aumenta el tráfico, los validadores pueden agregar más máquinas de trabajo para administrar el aumento de actividad y mantener un alto rendimiento bajo una carga alta.

A diferencia de otros protocolos como Cosmos, donde cada cadena de bloques o "zona" es operada por un conjunto diferente de validadores, Linera unifica todas las cadenas en un solo conjunto de validadores. Este enfoque unificado mejora la eficiencia y la seguridad del protocolo Linera, simplificando las interacciones entre cadenas al eliminar la complejidad de validar con conjuntos de validadores separados, lo que puede generar una mayor latencia o discrepancias. Como resultado, las transacciones se procesan de manera más eficiente en todo el ecosistema, lo que reduce significativamente el riesgo de conflictos.

QuaiNetwork: mejora del paralelismo y la interoperabilidad con prueba de trabajo

QuaiNetwork ha labrado su propio camino en la industria de la cadena de bloques con su enfoque único de escalabilidad. Al implementar una arquitectura multicadena dinámica e interoperable, Quai proporciona una solución única basada en prueba de trabajo para el problema de escalabilidad, lo que permite la paralelización de transacciones a través de fragmentos de ejecución infinita. Este enfoque diferencia a Quai de protocolos como Linera, que utiliza cadenas controladas por el usuario, mientras comparte algunas similitudes con la fragmentación dinámica de Shardeum.

La versión de fragmentación que usa Quai es similar a los métodos tradicionales que se usan para mejorar el rendimiento de la base de datos en sistemas centralizados. Sin embargo, Quai se diferencia de los esquemas de fragmentación típicos en que tiene una arquitectura multicadena dinámica, adaptable y profundamente entrelazada. Esto es algo similar a la fragmentación dinámica de Shardeum, donde la red se divide en cadenas de fragmentos que procesan las transacciones de forma independiente. Sin embargo, Quai coordina estos diferentes fragmentos utilizando una jerarquía de minería fusionada, creando una interconexión única que permite que las operaciones se ejecuten en paralelo en toda la red. A diferencia de todas las implementaciones de fragmentación existentes, que introducen algunos mecanismos de confianza nuevos para facilitar la interoperabilidad (transacciones entre fragmentos), la red Quai utiliza la minería combinada para interconectar fragmentos, lo que garantiza que el único mecanismo sea la minería. El enfoque único de QuaiNetwork para la interoperabilidad a través de la minería fusionada aumenta significativamente el rendimiento y brinda la capacidad de acomodar un gran número de transacciones simultáneas sin sacrificar la descentralización o el rendimiento.

Para poder coordinar un número ilimitado de fragmentos de ejecución, la red Quai introduce un nuevo mecanismo de consenso llamado PoEM. PoEM se basa en el consenso de Prueba de trabajo (PoW), pero a diferencia de otros mecanismos de consenso, es el primero en eliminar bifurcaciones basadas en consenso. Al ejecutar PoEM, todos los nodos siempre tendrán la misma preferencia para el siguiente bloque en secuencia inmediatamente, dado el mismo conjunto de información. PoEM permite que todos los nodos comparen de manera inmediata y justa cualquier bloque propuesto, eliminando toda incertidumbre del consenso. Al garantizar que el consenso sea siempre instantáneo, PoEM proporciona el requisito previo necesario para la fragmentación infinita. Si lleva algún tiempo establecer un consenso, existe un límite severo en la cantidad de fragmentos en ejecución que se pueden coordinar. Como el primer método de "tiempo cero" para alcanzar el consenso, PoEM es el primer y único algoritmo de consenso adecuado para coordinar conjuntos de cadenas de crecimiento infinito.

Una característica destacada de la arquitectura de Quai es la introducción de subprocesos de ejecución paralelos (PET), denominados "regiones" en Quai. Cada "región" o subproceso paralelo de ejecución procesa las transacciones de forma independiente y asíncrona. La capacidad de cada subproceso de ejecución de Quai para procesar transacciones de forma independiente respalda las capacidades de procesamiento paralelo de la red, que es uno de los conceptos centrales detrás de la escalabilidad de Quai.

La cantidad de cadenas en QuaiNetwork es dinámica y adaptable, al igual que la fragmentación dinámica de Shardeum. Sin embargo, el uso de QuaiNetwork del mecanismo de consenso PoEM es único en el sentido de que permite que este patrón de fragmentación dinámica se realice infinitamente sin degradación del rendimiento. QuaiNetwork agrega fragmentos de ejecución a través de fragmentos dinámicos con una compensación obvia: a medida que se agregan más fragmentos de ejecución a la red, aumentará el tiempo que tardan los fragmentos de destino en hacer referencia a las transacciones entre cadenas. Esta relación es sublineal: por ejemplo, escalar Quai de 9 fragmentos a 16 fragmentos aumentaría el tiempo promedio para que una transacción entre cadenas llegue a su destino de 3300 segundos a 4400 segundos. Escalar más a 25 fragmentos aumenta el tiempo promedio a unos 5500 segundos. Teóricamente, si Quai se expande a 100 fragmentos, el tiempo promedio para la liquidación global de cadenas cruzadas es de aproximadamente 11,000 segundos. El algoritmo de sharding dinámico de QuaiNetwork monitorea el límite de gas de la red y la tasa de bloque de tío para comprender cuándo se necesita un rendimiento adicional, y entreteje automáticamente fragmentos de ejecución adicionales en consenso para adaptarse a las demandas de mayor rendimiento.

Además, la estructura tejida de Quai admite contratos inteligentes multicadena componibles y permite una interacción eficiente de contratos entre cadenas. Cada subproceso de ejecución de Quai tiene un EVM y se introducen nuevos códigos de operación para comunicarse con el EVM ubicado en el fragmento alternativo. Esta capacidad permite a los desarrolladores implementar contratos en varias o todas las cadenas Quai, lo que garantiza la operatividad de las aplicaciones descentralizadas (dapps) en toda la red.

La innovadora aplicación de sharding de QuaiNetwork, junto con su interoperabilidad fusionada y sus subprocesos de ejecución en paralelo, representa un gran avance en la escalabilidad de blockchain bajo un mecanismo de consenso basado en el trabajo. El manejo robusto de transacciones entre cadenas y las capacidades avanzadas de contratos inteligentes hacen de Quai un contribuyente notable en el creciente campo de los protocolos de cadena de bloques escalables.

Ejecución paralela basada en computación

Un paradigma emergente en la ejecución paralela de cadenas de bloques es el modelo basado en computación. Este término fue acuñado por nuestro equipo de investigación en AmberGroup para describir un método de procesamiento de tareas informáticas al mismo tiempo en un entorno compartido. A diferencia de los modelos optimistas y de acceso al estado, los modelos basados en computación no se basan estrictamente en computaciones secuenciales basadas en memoria. En su lugar, opera según el principio de una máquina virtual altamente paralela. Este diseño promueve una ejecución paralela robusta y eficiente. Las siguientes secciones exploran los principios de la ejecución paralela basada en computación, sus aplicaciones potenciales y los desafíos únicos que plantea para el campo más amplio de la tecnología blockchain.

Kindelia: el centro neurálgico de la ejecución paralela basada en computación

Kindelia ha surgido como una solución prometedora en modelos de ejecución paralela basados en computación en blockchains. Desarrollado por HigherOrder Corporation, se basa en un tiempo de ejecución único llamado Higher-Order Virtual Machine (HVM), que permite una computación paralela eficiente.

La innovación de Kindelia se basa en un nuevo modelo de computación llamado "red de interacción", un concepto que difiere del modelo de máquina de Turing que sustenta la mayoría de las computadoras modernas. Las redes de interacción se basan en un gráfico de nodos de interacción, cada nodo posee un conjunto de reglas reescritas que dictan cómo interactúa con otros nodos en la red. La computación se logra mediante la reducción de la red que interactúa y la eliminación sistemática de nodos de la red de acuerdo con sus reglas de reescritura hasta que se alcanza un estado final. Este modelo permite realizar cálculos en paralelo sin necesidad de un reloj central que dicte el proceso, ya que los nodos interactúan localmente sin ninguna coordinación global.

  • *

*El dibujo de Victor Taelin (CEO de HigherOrderCompany) nos muestra cómo reducir la red de interacción. *

Las ventajas de este modelo son numerosas. Debido a su paralelismo inherente, facilita cálculos más rápidos y eficientes, superando en gran medida a los modelos de computación secuencial tradicionales. Además, abre un campo de aplicación en diversos campos de la informática. Kindelia se destaca como la primera máquina virtual verdaderamente paralela en el contexto de blockchain, logrando muchos de los objetivos a los que aspira altL1. Sin embargo, debido a su dependencia de las arquitecturas basadas en máquinas de Turing, es posible que estos competidores nunca alcancen el mismo nivel de paralelización.

El diseño de Kindelia requiere menos pasos computacionales para realizar funciones, maximiza la utilización de los núcleos de procesamiento y garantiza que las operaciones se realicen en el orden correcto, todo con un mínimo esfuerzo adicional por parte de los desarrolladores. Este proceso de ejecución simplificado, junto con un mayor nivel de seguridad, convierte a Kindelia en un ejemplo de vanguardia de ejecución paralela basada en computación en tecnología blockchain.

Aunque la base teórica de Kindelia y HVM es algo avanzada, el significado práctico es fácil de entender: mejorar la velocidad, la eficiencia y la seguridad de la computación blockchain. Con Kindelia, estamos siendo testigos de un avance revolucionario en la tecnología blockchain, lo que marca un hito importante en el desarrollo continuo de este campo transformador.

Inquietudes sobre la ejecución en paralelo

A medida que exploramos el potencial de las cadenas de bloques paralelas, es importante reconocer que, si bien ofrecen considerables ventajas de escalabilidad y velocidad, también presentan desafíos únicos y posibles inconvenientes. Los dos problemas principales que se mencionan a menudo son el potencial de una mayor centralización y las altas tasas de conflicto de transacciones.

Las cadenas de bloques paralelas distribuyen el procesamiento de transacciones entre numerosos nodos, lo que aumenta el rendimiento del procesamiento de transacciones. Sin embargo, esta distribución también puede conducir a la concentración del poder en unos pocos nodos, trayendo así un cierto grado de centralización. Esta centralización puede socavar la confiabilidad y la seguridad de la cadena de bloques, haciéndola más vulnerable a los ataques. Además, las cadenas de bloques paralelas aumentan el riesgo de tiempo de inactividad de la red. Por ejemplo, la red Solana experimentó una interrupción en septiembre de 2021 debido a un exceso de solicitudes de transacciones. El incidente destaca los riesgos potenciales asociados con la ampliación de las redes blockchain y subraya la necesidad de soluciones que puedan manejar grandes volúmenes de transacciones sin comprometer la estabilidad.

La tasa de conflicto de transacciones es otro tema importante. Esta relación se refiere al porcentaje de transacciones que no se pueden ejecutar simultáneamente debido a conflictos. Una alta tasa de conflicto puede conducir a una gran cantidad de reelaboraciones de transacciones en cadenas de bloques paralelas. Según el informe de Flashbots, la tasa de conflicto de las transacciones de Ethereum en 2017 fue de alrededor del 35 %. Con aplicaciones importantes como OpenSea y Uniswap dominando la red Ethereum, la tasa de conflicto probablemente será aún mayor.

En el caso de una ejecución optimista, la cantidad de rehacer transacciones puede interrumpir gravemente la canalización si la tasa de conflicto supera el 30 %. Cada rehacer ralentiza el procesamiento de transacciones y reduce los beneficios de la paralelización. Por lo tanto, la gestión de la tasa de conflicto de transacciones es crucial para garantizar la eficiencia de las cadenas de bloques paralelas.

en conclusión

Se están produciendo cambios significativos en el espacio de la cadena de bloques, ya que intenta abordar los problemas de escalabilidad y eficiencia inherentes a su diseño. Hemos explorado varios enfoques para lograr la ejecución en paralelo, cada uno con sus propias ventajas y desafíos únicos. Un modelo de acceso basado en el estado marca el primer paso para superar la naturaleza secuencial de las cadenas de bloques. La ejecución optimista, aunque prometedora, también presenta el riesgo de conflictos y requiere estrategias efectivas de resolución de conflictos. Sharding nos lleva un paso más allá al dividir la red en partes más pequeñas y manejables, cada una capaz de procesar transacciones de forma independiente. Por último, la ejecución paralela basada en computación utiliza informática de vanguardia para maximizar el rendimiento de los nodos y la seguridad de las aplicaciones. A pesar de los desafíos y problemas potenciales, estos modelos muestran el potencial para mejorar significativamente el rendimiento de las tecnologías de cadena de bloques. A medida que estas tecnologías continúan desarrollándose y madurando, estamos en la cúspide de una nueva era de tecnología blockchain.

Ver originales
El contenido es solo de referencia, no una solicitud u oferta. No se proporciona asesoramiento fiscal, legal ni de inversión. Consulte el Descargo de responsabilidad para obtener más información sobre los riesgos.
  • Recompensa
  • Comentar
  • Compartir
Comentar
0/400
Sin comentarios
  • Anclado
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)