Cargando...
es

Post-Mortem de las dos interrupciones de la red principal de Ethereum

Los días 11 y 12 de mayo de 2023, la red Mainnet de Ethereum experimentó dos interrupciones significativas. Esto provocó un retraso en la producción de bloques de 4 y 9 épocas respectivamente. Durante el segundo incidente, se aplicó una penalización por inactividad.

Los días 11 y 12 de mayo de 2023, la red Mainnet de Ethereum sufrió dos interrupciones significativas. Esto provocó un retraso en la producción de bloques de 4 y 9 épocas respectivamente. Durante el segundo incidente, se aplicó una penalización por inactividad. Sin embargo, la red consiguió recuperarse de forma autónoma en ambas ocasiones.

Impacto

La primera interrupción provocó la desaparición de aproximadamente 47 bloques, y la segunda causó una pérdida más sustancial de aproximadamente 149 bloques. Los retrasos y bloques perdidos supusieron una pérdida de ingresos de aproximadamente 5 ETH para los productores de bloques afectados. Sin embargo, se espera que esta cifra sea significativamente mayor si se tienen en cuenta las recompensas de los paquetes de constructores.

Fuente: beaconcha.in

Se estima que el 65% de los validadores estuvieron desconectados durante 8 épocas, lo que provocó una fuga de inactividad, con una pérdida estimada de unos 28 ETH, más unos 50 ETH en ingresos perdidos por atestaciones perdidas. En total, la pérdida estimada fue de aproximadamente 83 ETH, lo que equivale a una media de menos de 0,00015 ETH por validador.

Sin embargo, cabe destacar que no se atribuyeron recortes de validadores a estos incidentes, lo que indica que los problemas eran más sistémicos que individuales.

Causas

La causa principal de las interrupciones radica en algunos de los clientes de consenso, incluido Prysm, que tuvieron problemas para procesar de forma óptima los atestados válidos con un punto de control de destino antiguo. Esto provocó que Prysm tuviera que volver a calcular estados de baliza anteriores para validar la autenticidad de los atestados, lo que llevó al agotamiento de recursos y a una ralentización significativa en el cumplimiento de las solicitudes de los clientes validadores.

Disparador

Una serie de atestados antiguos que votaban a un bloque de baliza antiguo (un bloque de la época N-2 durante la época N) se difundieron, provocando los problemas en Prysm y Teku. Estas atestaciones válidas pero problemáticas obligaron a Prysm a regenerar el mismo estado varias veces debido al rápido llenado de su caché.

Detección

Los problemas se detectaron tras una caída sustancial de la participación en la red en las épocas 200.551 y 200.750, lo que provocó un cese temporal de la finalización de la cadena.

Fuente: beaconcha.in

Resumen

El principal problema fue que la red no pudo finalizar debido a que faltaban bloques y atestaciones. Además, la red se vio sometida a tensiones debido al aumento del procesamiento de depósitos máximos. Prysm, en particular, se enfrentó al problema de múltiples repeticiones (función replayBlocks), lo que provocó un alto uso de la CPU.

A pesar de estos problemas, la duración de los incidentes fue relativamente corta, sin que se registraran tajos masivos. La diversidad de clientes de la red y la capacidad de algunos de ellos para proponer bloques y crear atestados permitieron que la cadena se recuperara. Este incidente puso de manifiesto las limitaciones de las redes de prueba, que no son representativas del entorno de la Mainnet, lo que subraya la necesidad de realizar pruebas de estrés y planes de contingencia más sólidos. También sirvió como prueba de campo de las penalizaciones por fuga de inactividad. Entre ellas se incluye el uso del estado de cabecera para validar atestados de un bloque canónico reciente como raíz de destino, el uso de la caché de ranura siguiente para validar atestados de ranuras límite en la época anterior y el descarte de cualquier atestado no validado por las dos reglas anteriores. Estas medidas deberían reducir las posibilidades de repetir estados e ignorar los atestados para bloques antiguos en condiciones normales.

Aunque la interrupción de Mainnet planteó retos significativos, la rápida recuperación y las valiosas lecciones aprendidas allanan el camino para una red Ethereum más resistente.

Cuidado con la seguridad.

Crossroads 2025

0

Noticias relacionadas