Ciclo de vida de la transacci贸n

Descripci贸n general

Saber c贸mo se incluyen las transacciones en un bloque puede ayudar a comprender el sistema blockchain m谩s profundamente. En este documento, profundizaremos en el ciclo de vida paso a paso de una transacci贸n.

Ciclo de vida de la transacci贸n L1

  1. Env铆o de transacciones : cuando se env铆a una transacci贸n, se somete a un check_txproceso antes de que se le permita ingresar al mempool. Si es v谩lido, ingresa al mempool; Si no es v谩lido, se entrega una respuesta de error.

  2. Validaci贸n de Mempool : una transacci贸n debe pasar el check_txproceso antes de agregarse al mempool. Despu茅s de crear cada bloque, el mempool realiza una recheck_txevaluaci贸n de las transacciones restantes, filtrando aquellas que fallaron debido a cambios de estado durante la ejecuci贸n del bloque.

  3. Propagaci贸n de transacciones a validadores : una vez que una transacci贸n ingresa exitosamente al mempool, todos los nodos comparten la transacci贸n a trav茅s de comunicaci贸n de igual a igual (p2p). Esto asegura la entrega al validador generador de bloques.

  4. Generaci贸n de bloques (ejecuci贸n) : un validador elegido crea un bloque utilizando las transacciones en el mempool, siguiendo las reglas de cometbft.

Ciclo de vida de las transacciones L2

  1. Env铆o de transacciones : cuando se env铆a una transacci贸n, se somete a un check_txproceso antes de que se le permita ingresar al mempool. Si es v谩lido, ingresa al mempool. Si no es v谩lido, se entrega una respuesta de error.

  2. Validaci贸n de Mempool : una transacci贸n debe pasar el check_txproceso antes de agregarse al mempool. Despu茅s de crear cada bloque, el mempool realiza una recheck_txevaluaci贸n de las transacciones restantes, filtrando aquellas que fallaron debido a cambios de estado durante la ejecuci贸n del bloque.

  3. Propagaci贸n de transacciones a secuenciadores : una vez que una transacci贸n ingresa exitosamente al mempool, todos los nodos comparten la transacci贸n a trav茅s de comunicaci贸n de igual a igual (p2p). Esto asegura la entrega al secuenciador generador de bloques.

  4. Generaci贸n de Bloques (Ejecuci贸n) : Utilizando las transacciones validadas se genera un bloque.

  5. Env铆o de salida L2 a L1 : despu茅s de que se genera una 茅poca de bloques, la ra铆z del estado L2 se env铆a a L1 para su finalizaci贸n.

  6. Per铆odo de finalizaci贸n : este es un per铆odo de 7 d铆as reservado para el per铆odo de desaf铆o del resumen optimista.

  7. Finalizado : Esta es la etapa final donde se confirma la transacci贸n.

L2

+----+
| tx | -> not valid -> not received
+----+
  |   +---------+
  +-> | mempool | -> not valid -> not received
      +---------+
        |   +-----------+
        +-> | sequencer |
            +-----------+
              |   +----------+
              +-> | l2 block |-+
                  +-|--------+ |-+
                    +-|--------+ |
                      +----------+
                         |
--------------------------------------------------------
L1                       |
                         v
                   +-----------+
                   | L2 Output |
                   +-----------+
                         |
                         v
                   +----------+
                   | L1 Block |-+
                   +-|--------+ |-+
                     +-|--------+ |
                       +----------+
                         | (after finalization period)
                         v
                      finalized

Last updated