Respuestas>Más información sobre escalabilidad y rendimiento>¿Qué provoca la congestión de la cadena de bloques?
¿Qué provoca la congestión de la cadena de bloques?
// Tags
congestión de la cadena de bloquestarifas de gas elevadas
En resumen: La congestión de la cadena de bloques se produce cuando se envían a la red más transacciones de las que caben en el siguiente bloque. Cada cadena tiene un límite en cuanto a la cantidad de cálculos o datos que puede procesar por bloque. Cuando la demanda supera ese límite, se acumula un retraso en el mempool, la zona de espera para las transacciones sin confirmar. La congestión se traduce en comisiones más elevadas, ya que los usuarios compiten por un espacio limitado en los bloques, confirmaciones más lentas y una peor experiencia de usuario. Las causas fundamentales son la capacidad fija de los bloques, los picos de demanda provocados por eventos populares, la dinámica del mercado de comisiones y las decisiones de diseño que anteponen la seguridad y la descentralización al rendimiento bruto.
La explicación sencilla
Una cadena de bloques procesa las transacciones en lotes denominados «bloques». Cada bloque tiene un límite de capacidad:
Ethereum: un límite de gas, que actualmente ronda los 30 millones de gas por bloque
Bitcoin: un límite de peso de 4 millones de unidades de peso por bloque
Solana: una combinación de unidades de cálculo y bloqueos de cuentas por ranura
Sea cual sea el mecanismo, cada cadena tiene un límite máximo en cuanto a la cantidad de trabajo que cabe en un bloque.
Cuando el número de transacciones recibidas es inferior a la capacidad de un bloque, todo funciona sin problemas. Las transacciones se incluyen en el siguiente bloque, las comisiones son bajas y la confirmación es rápida.
Cuando llegan más transacciones de las que puede contener un bloque, se forma una cola. Esa cola es el mempool: un área de almacenamiento en cada nodo donde las transacciones válidas, pero sin confirmar, esperan a ser incluidas en un bloque futuro.
El mempool no funciona según el principio de «por orden de llegada». Es una cola prioritaria ordenada por comisión. Los productores de bloques (mineros o validadores) eligen las transacciones que pagan más, ya que así obtienen mayores ganancias.
Cuando el mempool está lleno, los usuarios que desean una confirmación rápida tienen que superar las ofertas de los demás con una comisión más alta. Esta guerra de pujas es lo que provoca que los precios del gas se disparen durante los periodos de congestión. Los usuarios que no pueden o no quieren pagar las comisiones más altas ven cómo sus transacciones quedan atascadas en el mempool durante minutos, horas o incluso días.
La causa más evidente de la congestión es un aumento repentino de la demanda de espacio en el bloque. Estos picos suelen estar provocados por acontecimientos concretos:
Emisiones de NFT: una emisión muy popular puede generar decenas de miles de transacciones en cuestión de minutos, ya que los coleccionistas se apresuran a hacerse con los tokens limitados.
Lanzamientos y airdrops: un nuevo protocolo DeFi o la posibilidad de reclamar un airdrop atrae de golpe a una avalancha de usuarios hacia los nuevos contratos inteligentes.
Caídas del mercado: una fuerte caída desencadena una oleada de liquidaciones, cierres de posiciones y ventas motivadas por el pánico, mientras los usuarios de DeFi se apresuran a adaptarse a la situación.
Algunos de los peores atascos de Ethereum se debieron a aplicaciones concretas:
La fiebre por los CryptoKitties en diciembre de 2017 colapsó la red durante días.
La emisión de NFT «Otherside» de Yuga Labs en mayo de 2022 hizo que los precios del gas superaran los 8.000 gwei. Algunos usuarios pagaron miles de dólares en comisiones por transacciones que, aun así, fracasaron.
Las solicitudes de los airdrops de UNI, de Uniswap, y de ARB, de Arbitrum, provocaron una congestión que se prolongó durante horas, ya que millones de carteras que cumplían los requisitos se apresuraron a reclamarlos.
El comercio de tokens meme provoca congestiones recurrentes en cadenas como Solana y Base, donde un lanzamiento viral puede generar millones de intercambios en cuestión de horas. En el caso de los eventos programados, los usuarios al menos saben que se avecina una congestión. Los picos de demanda de los tokens meme son impredecibles y pueden saturar una red sin previo aviso.
Capacidad y ritmo de producción fijos del bloque
La causa subyacente es que la capacidad y la frecuencia de los bloques están fijadas por el protocolo, mientras que la demanda fluctúa, a veces de forma muy pronunciada.
Ethereum Genera un bloque cada 12 segundos con un límite de gas de unos 30 millones. Costes habituales:
Una transferencia sencilla de ETH: 21 000 gas
Un intercambio en Uniswap: entre 150 000 y 300 000 de gas
Una transacción compleja de DeFi: 500 000 de gas o más
En condiciones ideales, eso equivale aproximadamente a entre 15 y 30 transacciones por segundo, dependiendo de su complejidad. Cuando miles de usuarios intentan acuñar un NFT, intercambiar un token o reclamar un airdrop al mismo tiempo, una capacidad de 15 a 30 TPS no es ni de leje near e.
Bitcoin tiene la misma restricción, pero con límites aún más estrictos. Genera un bloque cada 10 minutos, y cada bloque contiene entre 2.000 y 3.000 transacciones. Eso supone aproximadamente entre 5 y 7 TPS. Cuando la demanda es alta, el mempool de Bitcoin puede llenarse con cientos de miles de transacciones sin confirmar, y aquellas con comisiones bajas pueden tardar días en procesarse.
Estos límites no son arbitrarios. Protegen la descentralización. Si los bloques fueran más grandes o más rápidos, menos nodos podrían seguir el ritmo de los datos, y la red se centralizaría en torno a operadores con hardware costoso. Este equilibrio entre el rendimiento y la descentralización es fundamental en el diseño de las cadenas de bloques. A menudo se le denomina el «trilema de la cadena de bloques»: la dificultad de conseguir escalabilidad, seguridad y descentralización al mismo tiempo.
MEV y subastas prioritarias de gas
El valor máximo extraíble (MEV) contribuye a la congestión de una forma menos evidente. El MEV es el beneficio que los productores de bloques y los buscadores pueden obtener al reordenar, insertar o censurar transacciones en un bloque.
Cuando surge una oportunidad rentable de MEV, como un arbitraje entre dos DEX, varios participantes compiten por aprovecharla enviando transacciones con comisiones cada vez más elevadas. Esta subasta prioritaria de gas consume espacio en los bloques y aumenta las comisiones para todos, incluso para los usuarios cuyas transacciones no tienen nada que ver con ello.
Los «ataques tipo sándwich» son un patrón de MEV que afecta directamente a los usuarios habituales. Un buscador detecta una operación de intercambio de gran volumen en el mempool. A continuación, coloca una orden de compra justo antes de dicha operación (front-running) y una orden de venta justo después (back-running), sacando provecho de la fluctuación de precios que provoca la operación de la víctima. Esas transacciones adicionales ocupan espacio en el bloque y aumentan la congestión más allá de la demanda habitual de los usuarios.
Soluciones de capa 2 y alivio de la congestión
Las redes de capa 2, como Arbitrum, Base, Optimism y zkSync , se crearon en parte para aliviar la congestión en Ethereum (capa 1). Procesan las transacciones en una cadena independiente y envían resúmenes comprimidos a Ethereum, lo que aumenta considerablemente el rendimiento total. Una transacción que cuesta 5 dólares en gas en una capa 1 congestionada de Ethereum podría costar 0,01 dólares en una capa 2. No obstante, las redes de capa 2 también pueden congestionarse durante picos extremos y heredan algunas limitaciones de la capa 1 a la que se liquidan.
Solana gestiona la congestión de forma diferente, mediante mercados de comisiones locales. En lugar de un único mercado global de comisiones en el que todas las transacciones compiten por el mismo espacio, Solana intenta aislar la congestión en cuentas «activas» específicas. Las transacciones que interactúan con un contrato muy solicitado, como un pool de DEX popular, pagan comisiones más elevadas. Las transacciones que interactúan con contratos no relacionados no se ven afectadas. Esto limita el efecto dominó de los picos de congestión, aunque no los elimina por completo.
¿Cuánto tiempo dura la congestión de la cadena de bloques?
Depende de la causa.
Los eventos programados, como una gran emisión de NFT o la reclamación de un airdrop, suelen provocar un fuerte repunte que se disipa en cuestión de minutos o unas pocas horas, una vez que amaina la avalancha de visitas.
La congestión prolongada es diferente. Cuando una cadena funciona por encima de su capacid near e durante un periodo prolongado, como durante un mercado alcista prolongado o un ciclo viral de tokens meme, las altas comisiones y las confirmaciones lentas pueden prolongarse durante días.
Bitcoin La congestión suele disiparse más lentamente que en Ethereum. Su tiempo de bloqueo de 10 minutos hace que el mempool se vacíe en intervalos más largos y menos frecuentes. La señal más clara de que la congestión está remitiendo es que el mempool se vaya reduciendo y, al mismo tiempo, bajen las comisiones por prioridad.
¿En qué se diferencian los límites de bloques entre las distintas cadenas de bloques?
Cada cadena limita la cantidad de trabajo que cabe en un bloque, por lo que el margen de cada red antes de que se produzca la congestión varía considerablemente. La tabla siguiente muestra los límites aproximados que determinan la rapidez con la que cada red se satura bajo carga.
Blockchain
Tiempo de bloque
Métrica de capacidad
Rendimiento aproximado
Bitcoin
unos 10 minutos
4M unidades de peso
De 5 a 7 TPS
Ethereum L1
~12 segundos
~30 millones de gas por bloque
De 15 a 30 TPS
Solana
intervalo de ~400 ms
Unidades de cálculo y bloqueos de cuentas
Miles de TPS
Arbitrum / Base (L2)
Menos de un segundo
Gas L2, ajustado a L1
De cientos a miles de TPS
Las cadenas de mayor rendimiento y las de Capa 2 absorben mejor los picos de demanda, pero ningún diseño es inmune a ellos. Para obtener más información sobre la relación entre velocidad y capacidad, consulta el artículo «Rendimiento frente a latencia » y «Qué es una cadena de bloques de Capa 2».
¿Cuál es la diferencia entre la congestión y una parada en cadena?
Para un usuario, tanto la congestión como una paralización de la cadena pueden parecer que «la red no funciona». Se trata de problemas distintos, con causas y soluciones diferentes. Durante la congestión, la cadena sigue generando bloques; simplemente están llenos y su coste es elevado. Durante una paralización de la cadena, la generación de bloques se detiene por completo.
Aspecto
Atascos
Parada en cadena
Producción en bloque
Continúa con normalidad
Detenido
Transacciones
Confirmar lentamente, comisiones elevadas
No lo confirmes en absoluto
Causa principal
La demanda supera la capacidad del bloque
Fallo en el consenso o error del cliente
Resolución típica
La demanda disminuye, las tarifas bajan
Los validadores coordinan un reinicio
En resumen, la congestión es un problema de precios y capacidad, mientras que una interrupción en la cadena es un problema de disponibilidad. Las actividades relacionadas con el MEV, como las subastas de gas prioritarias, pueden agravar la congestión. Saber qué es el MEV ayuda a explicar por qué las tarifas suben más rápido de lo que sugeriría únicamente la demanda de los usuarios.
¿Cómo pueden los promotores inmobiliarios reducir el impacto de la congestión?
Las aplicaciones no pueden evitar la congestión, pero pueden seguir funcionando de forma fiable a pesar de ella:
Utiliza una estimación dinámica de las tarifas en lugar de precios de gas fijos.
Añadir una lógica de reintentos con una gestión adecuada de los nonces.
Deja las transacciones no urgentes para los momentos de menor actividad.
En cuanto a los datos, utiliza la entrega basada en notificaciones en lugar de bucles de sondeo muy frecuentes, para que la ingesta se mantenga al día a medida que crecen los bloques.
¿Por qué se disparan las comisiones de gas cuando hay congestión?
El espacio en los bloques es limitado, y el mempool es una cola de prioridad basada en las comisiones. Cuando el número de transacciones que compiten por entrar supera la capacidad de un bloque, los usuarios pujan con comisiones más altas para que se les incluya primero. Esa guerra de pujas hace que el precio del gas suba hasta que la demanda vuelve a situarse por debajo de la capacidad del bloque.
¿La congestión significa que la cadena de bloques no funciona?
No. Durante la congestión, la cadena sigue generando bloques y confirmando transacciones; simplemente, el proceso es más lento y más caro. Una red que deja de generar bloques sufre una paralización de la cadena, lo cual es un problema distinto.
¿Las redes de capa 2 también pueden congestionarse?
Sí. Las redes de Capa 2 ofrecen un rendimiento mucho mayor que una Capa 1 de « Ethereum », por lo que toleran picos de demanda más elevados; sin embargo, una demanda extrema puede llegar a agotar su capacidad y provocar un aumento de las comisiones. Además, heredan algunas limitaciones de la Capa 1 en la que se liquidan.
¿Cómo puedo saber si la congestión está remitiendo?
Presta atención al tamaño del mempool y a las comisiones por prioridad. Una reducción de la cola de transacciones sin confirmar, junto con la bajada de las comisiones por prioridad, es la señal más clara de que la demanda ha vuelto a situarse por debajo de la capacidad del bloque.
¿Por qué las cadenas de bloques no se limitan a aumentar el tamaño de los bloques?
Los bloques más grandes o más rápidos aumentan el coste de hardware que supone mantener un nodo, lo que excluye a los operadores más pequeños y centraliza la red. Los límites de capacidad son una compensación deliberada que protege la descentralización, una tensión que a menudo se denomina «el trilema de la cadena de bloques».
Cómo afecta la congestión a los promotores inmobiliarios que construyen en Quicknode
La congestión afecta tanto a la forma en que los desarrolladores envían las transacciones como a la forma en que recopilan datos.
Por parte del remitente, las transacciones con comisiones demasiado bajas se quedan atascadas en el mempool o se descartan. Las aplicaciones necesitan una estimación fiable de las comisiones, una lógica de reintentos y una gestión adecuada de los nonces para gestionar bien la congestión. La API Core de Quicknode entrega transacciones de forma fiable con un rendimiento constante, incluso en momentos de máxima congestión. Los métodos mejorados de la API ayudan a las aplicaciones a estimar el precio adecuado del gas según las condiciones actuales de la red.
En lo que respecta a los datos, la congestión se traduce en más transacciones por bloque, bloques más grandes, más eventos y más datos. Los sistemas basados en sondeos tienen dificultades en este aspecto. Cada bloque contiene más datos, mientras que el intervalo de sondeo sigue siendo el mismo, por lo que se acumula un retraso.
Quicknode Streams gestiona bien la congestión gracias a que su diseño basado en «push» se adapta al tamaño de los bloques. Tanto si un bloque contiene 100 transacciones como 1.000, Streams envía todos los datos a su destino con la misma garantía de entrega y ordenación. La agrupación en lotes y la compresión configurables ayudan a gestionar los datos adicionales durante los periodos prolongados de congestión.