Block DAG y PoS – Proyecto Taraxa

Los bloques se crean empacando transacciones de una cola de transacciones pendiente

Cuando un nodo produce un bloque, decide qué transacciones procesará la red a continuación. En cualquier momento, cada nodo en la red mantiene una lista de transacciones pendientes que se enviaron a la red para su procesamiento pero que aún no se han convertido en un bloque. Cuando se produce un nuevo bloque, un nodo mira esta cola de transacción pendiente y selecciona un subconjunto para colocar en el bloque. Con el tiempo, diferentes redes han desarrollado diferentes convenciones sobre cómo se seleccionan las transacciones, la mayoría de las cuales están impulsadas por incentivos económicos.

En cualquier momento dado, si no hay problemas serios con la red o sus nodos, entonces cada nodo completo en la red debería ver colas de transacciones pendientes muy similares. Esto se debe a que un sistema blockchain es una red punto a punto (P2P), por lo que la información crítica, como las transacciones y los bloques, se hace circular constantemente (cotillear) a cada nodo de la red con demoras (segundos) típicamente muy cortas. Por lo tanto, entre dos nodos dados, puede haber algunas transacciones de las que uno ha oído hablar y el otro no, y viceversa, deberían haber escuchado en gran medida sobre el mismo conjunto de transacciones, con cada transacción pendiente de construcción muy similar. colas

Si cada nodo ve relativamente el mismo conjunto de transacciones pendientes, entonces si se les pidió que produjeran bloques, producirán bloques que contienen relativamente el mismo conjunto de transacciones, o copias similares entre sí. Obviamente, este no es un resultado deseable, ya que las transacciones redundantes entre bloques son simplemente un desperdicio de trabajo, nada ecológico.