DAGKnight
DAGKnight: ¿qué pasa cuando la red misma a veces es rápida y a veces es lenta?
Las computadoras de una red no siempre se comunican a la misma velocidad.
A veces un bloque nuevo llega a otras computadoras casi de inmediato.
Otras veces, la distancia, la congestión o una comunicación más lenta hacen que tarde más en llegar.
Durante ese tiempo, otros mineros ya pueden crear más bloques.
Así que las condiciones de la red siguen cambiando.
GHOSTDAG ya sabe cómo manejar bloques creados en paralelo
Kaspa no exige que todo el mundo se entere de un bloque antes de que se pueda crear el siguiente.
Si se crean varios bloques antes de que la información sobre ellos llegue a todos, pueden quedarse dentro del BlockDAG.
GHOSTDAG después los ordena para que los nodos puedan llegar a la misma historia.
Pero GHOSTDAG trabaja con un límite elegido de antemano para cuánto trabajo en paralelo se espera que experimente la red.
En términos simples:
algunas de sus condiciones de seguridad se eligen por adelantado.
Pero internet no siempre se comporta de la misma forma
Imagina que hoy la información se mueve muy rápido.
La mayoría de los mineros se entera de un bloque nuevo antes de tener tiempo de crear otro.
Se crea relativamente poco trabajo en paralelo.
Ahora imagina que la comunicación se vuelve más lenta.
Más mineros pueden crear bloques antes de enterarse de los bloques creados por otros.
Aparece más trabajo en paralelo.
Son dos condiciones distintas en la misma red.
DAGKnight busca hacer más flexible el consenso
En lugar de suponer que las condiciones de comunicación siempre son parecidas, DAGKnight está diseñado para usar lo que el propio BlockDAG muestra sobre lo que está pasando en la red.
Cuando la información se mueve rápido, el grafo lo refleja.
Cuando la información se mueve más lento, aparece más trabajo en paralelo, y el grafo también lo refleja.
La idea es:
no obligar a la red a funcionar siempre bajo el mismo supuesto de tiempo.
En cambio:
dejar que la confianza se construya según las condiciones que la red está experimentando de verdad.
Un ejemplo simple
Imagina que los bloques se mueven muy rápido entre los mineros.
La mayoría de los mineros se entera de un bloque nuevo antes de tener tiempo de crear otro.
Hay relativamente poco trabajo en paralelo.
En esa situación, la confianza se puede construir más rápido.
Ahora imagina que la comunicación es más lenta.
Más mineros crean bloques antes de enterarse de los otros.
Aparecen más bloques en paralelo.
En esa situación, tiene sentido reunir más información antes de llegar al mismo nivel de confianza.
DAGKnight no «hace a Kaspa más rápido» sin más
Esta distinción importa.
DAGKnight no está diciendo simplemente:
«Creemos todavía más bloques.»
Está respondiendo otra pregunta:
¿Con qué rapidez podemos tener confianza en que la red llegó a un buen acuerdo sobre lo que pasó?
La meta es que la confianza en las transacciones responda a las condiciones reales.
Cuando la comunicación es buena, la confianza se puede construir más rápido.
Cuando la comunicación es más lenta, la red puede usar más tiempo y más información.
¿Por qué es interesante?
Una red descentralizada no puede suponer que cada computadora recibe siempre la información en el mismo momento.
Una solución muy conservadora sería:
esperar siempre lo suficiente para las condiciones lentas de la red.
Pero entonces, incluso cuando la red está funcionando muy bien, todos todavía esperan como si la comunicación fuera lenta.
DAGKnight busca ser más flexible:
responder a las condiciones que la red está experimentando de verdad.
En lugar de elegir un solo supuesto de espera para cada situación.
¿Cómo se relaciona esto con GHOSTDAG?
DAGKnight no parte de cero.
Continúa la misma idea básica de Kaspa:
conservar los bloques creados en paralelo, entender sus relaciones y llegar a un acuerdo sobre la historia.
GHOSTDAG hace esto usando condiciones y límites elegidos de antemano.
DAGKnight está diseñado para llevar la idea un paso más allá y hacer el consenso más sensible a las condiciones reales de la red.
¿Cómo se ve esto en números que sí podemos sentir?
Bitcoin
Bitcoin tiene como objetivo un bloque nuevo aproximadamente cada 10 minutos.
Ese intervalo relativamente grande le da a la información tiempo de sobra para propagarse por la red antes de que, en general, se encuentre el siguiente bloque.
Kaspa hoy
Kaspa tiene como objetivo 10 bloques por segundo: alrededor de un bloque nuevo cada 0,1 segundos.
A esa tasa, la red claramente no puede esperar a que cada bloque llegue a todos antes de que se cree el siguiente.
Los parámetros actuales de GHOSTDAG están diseñados para tener en cuenta retrasos de comunicación del orden de varios segundos. En la configuración actual de 10 BPS, el cálculo detrás del límite de paralelismo usa un supuesto de retraso de unos 5 segundos.
Una aclaración importante:
Cinco segundos no es «el tiempo de confirmación de Kaspa».
Es un margen de diseño que GHOSTDAG usa para manejar con seguridad bloques que pueden crearse en paralelo mientras la información todavía se está propagando.
¿Qué se propone mejorar DAGKnight?
DAGKnight está diseñado para que la confianza no tenga que construirse alrededor del mismo supuesto fijo de tiempo en cada situación.
Si en ese momento la información se mueve rápido, el protocolo puede aprovechar esas mejores condiciones y la confianza se puede construir más rápido.
Si la comunicación es más lenta, la confianza se puede construir con más cautela mientras se acumula más información.
En términos simples:
Bitcoin: alrededor de 10 minutos entre bloques.
Kaspa hoy: alrededor de 0,1 segundos entre bloques, mientras GHOSTDAG está diseñado alrededor de retrasos de red que pueden durar varios segundos.
DAGKnight: en lugar de trabajar siempre a partir del mismo supuesto de tiempo, está diseñado para que la confianza responda a las condiciones de la red que se observan de verdad.
¿Qué te llevas de esta página?
Internet no siempre funciona a la misma velocidad.
Así que también puede cambiar la cantidad de trabajo que se crea antes de que los bloques hayan tenido tiempo de llegar a todos.
GHOSTDAG maneja los bloques en paralelo usando condiciones elegidas de antemano.
DAGKnight está diseñado para dar el paso siguiente:
dejar que la forma en que se construye la confianza responda a lo que la red está experimentando de verdad en ese momento.
En las palabras más simples:
Cuando la red se comunica rápido, la confianza se puede construir más rápido.
Cuando la comunicación es más lenta, se usan más tiempo y más información antes de llegar al mismo nivel de confianza.