Traducción al español de “The beating heart of a fast-growing network”, escrito por John Woods, Director de Cardano Arquitectura en IOG, el 18 de enero de 2022.
En el centro de la red Cardano se encuentra el nodo. A continuación, se explica cómo esta tecnología integradora desempeñará su papel a medida que escalemos Cardano durante 2022.
A lo largo de un reciente artículo, expusimos nuestro enfoque metódico para preparar a Cardano frente a su esperado crecimiento en las próximas semanas y meses. Mientras, más y más aplicaciones descentralizadas utilizan Cardano como su hogar; así como el ecosistema de las finanzas descentralizadas (DeFi) y ‘RealFi’ se expande y evoluciona, la blockchain necesita ser capaz de funcionar conforme a ello.
Por esta razón , Cardano inicia la fase Basho, centrándose en la optimización, escalado y crecimiento de la red. Prevemos un aumento significativo del tráfico transaccional en los próximos meses y es aquí donde empezamos el proceso de flexión para satisfacerlo. En este sentido, se han introducido mejoras en el nodo central y hemos dotado al nodo v1.33.0 con nuevas características y cambios en los elementos existentes, incrementando la flexibilidad de Cardano y aumentando la capacidad de la blockchain de lograr más cosas.
¿Qué contiene un nodo?
La versión v1.33.0 del nodo -lanzada a principios de enero y que ya se encuentra funcionando en aproximadamente el 80% de los sistemas de los SPO [Operadores de Stake Pools]- está diseñada teniendo en cuenta la elegancia y la eficiencia. El objetivo de las mejoras introducidas es reducir el tiempo de propagación de los bloques, por lo que obtenemos un mayor margen de maniobra para realizar los cambios que necesitamos para dar cabida a las DApps, los exchanges descentralizados (DEXs), los entornos DeFi, etc.
A partir de la implementación de la versión del nodo, ahora los bloques se propagan más rápido. Ello nos proporciona un tiempo adicional que podemos utilizar para implementar otras mejoras.
A grandes rasgos, se pueden clasificar las mejoras técnicas incluidas en esta versión 1.33.0 en optimización del uso de la memoria RAM y actualización de la eficiencia.
Optimización del uso de la RAM
Con el nuevo nodo, el empleo de la memoria disminuye considerablemente debido a dos factores: la compresión de la memoria y una distribución más eficiente de la misma (en lugar de varias instancias del mismo objeto, ahora varios flujos dentro del sistema usarán el mismo objeto).
En concreto, se ha mejorado la memoria en la gestión de la salida de transacciones no utilizadas (UTXO), la distribución de stake, la distribución del live stake y los pools, así como la representación de hash.
Las mejoras son las siguientes:
- Manejo de UTXO
La versión 1.33.0 del nodo emplea menos palabras para las entradas de las transacciones.
- Distribución de stake
Las instantáneas [snapshots] de distribución de stake constituyen el 35% del total de los datos en vivo. El nuevo nodo consigue una reducción en un factor de ocho al compartir y cambiar la representación.
- Distribución del live stake
La distribución del live stake representa el 22% del total de datos en vivo del sistema.
Esta nueva versión ahorra memoria de dos maneras:
Compartiendo varios mapas con claves de direcciones de stake (un ahorro de 11 palabras por dirección de stake para cada mapa combinado) e identificadores de pool de stake compartidos (5 palabras).
- Representación Hash
Ahora la representación del hash utiliza 5 palabras en lugar de 6. Puesto que los hashes son omnipresentes en el sistema, esta modificación, si bien parece insignificante, supondrá una mejora considerable de la eficiencia.
Datos clave de la optimización del uso de la memoria RAM
Ahora se logra un gran ahorro de datos en vivo gracias a la compactación y a la distribución de los mismos.
Mejoras de eficiencia
A parte de hacer un uso más eficiente de la memoria que en las versiones anteriores, la nueva versión 1.33.0 incluye cambios en los algoritmos que Cardano usa para calcular las recompensas y la distribución del stake.
La razón de estos cambios es solucionar el rendimiento desigual de la red que se producía al calcular las recompensas y provocaba picos de carga en la red. Gracias al nuevo algoritmo de cálculo de recompensas, estos picos ya no se producirán.
Se ha cambiado el algoritmo de cálculo de las recompensas, pasando de una “columna-mayor” sobre 4.000 pools, a una “fila-mayor” sobre ~1m de direcciones de stake. De este modo, se puede repartir el cálculo a lo largo de 3 días, en lugar de 1 día (4.000 bloques).
Hemos realizado también cambios para que el cálculo de la distribución de staking sea más eficiente.
Canalización
A finales de este año [2022], introduciremos nuevas e importantes mejoras en el nodo. Un nodo realiza mucho trabajo al procesar un bloque, luego espera a que llegue otro, y así sucesivamente. Entre tanto, no está tan ocupado. La sobrecarga de propagación de bloques (es decir, el intervalo de tiempo en el que el nodo está relativamente inactivo, a menudo llamado “espacio muerto”) puede reducirse mediante ciertas técnicas para aprovechar ese tiempo “muerto”. Es aquí donde entra en juego la canalización.
Con esta técnica se unifica la validación y la propagación de los bloques. En lugar de seguir el proceso de obtener una cabecera, validarla, luego obtener su bloque correspondiente, validarlo y enviarlo al par, ahora obtenemos una cabecera, la validamos y la enviamos al par, sin validar el bloque. Esta racionalización dará a la red un mayor margen de maniobra para realizar más cambios.
El pipelining aumentará considerablemente el margen de maniobra que tenemos para introducir nuevas mejoras en la red, reduciendo la sobrecarga de propagación de bloques (“tiempo muerto”).
Mirando al futuro
En el proyecto Cardano siempre hemos estado comprometidos con la construcción de una red segura, resistente y altamente descentralizada que pueda satisfacer las necesidades de la próxima década y más allá. Y para ello es fundamental adoptar un enfoque metódico y responsable a largo plazo. Como dice el refrán, “mida dos veces, corta una”.
Con la puesta en marcha de muchos proyectos nuevos e interesantes en Cardano, el ecosistema verá un crecimiento explosivo. Es inevitable que la capacidad a corto plazo no siga el ritmo de la demanda y que se produzcan periodos de gran congestión. Esta es la travesía por la que pasa toda blockchain nueva. Sin embargo, con una cuidadosa supervisión, seguiremos trabajando para aumentar la eficiencia, el rendimiento y la capacidad de Cardano en las próximas semanas y meses. Manteniendo al mismo tiempo el enfoque considerado y seguro que nos ha servido hasta la fecha.