Original author: Red de FIL
FIL Finalidad Rápida (FIP 0086: Finalidad Rápida en FIL (F3)) es una de las actualizaciones más transformadoras en la capa de consenso de FIL desde el lanzamiento de la Mainnet. Después de casi dos años de desarrollo intensivo, F3 está listo para su implementación en la Mainnet, lo que promete avances revolucionarios para todo el ecosistema. Al acortar el tiempo de finalización de alrededor de 900 Altura del bloque a solo 2, F3 trae beneficios sustanciales en todos los aspectos.
Cambiar el protocolo de Consenso de la red en tiempo real no es una tarea fácil, para garantizar una transición segura y exitosa a Mainnet, este cambio ha pasado por rigurosas auditorías y múltiples rondas de pruebas en la red de calibración. Aunque F3 fue originalmente diseñado para la actualización nv24, ensayos posteriores revelaron dos problemas clave, que se pueden consultar aquí. Estos problemas ya han sido resueltos y el proceso de corrección se está validando en la red de calibración.
El equipo de F3 está llevando a cabo pruebas finales en Mainnet en este momento. Esto incluye implementar el protocolo actualizado bajo tráfico de producción y seguir el plan de pruebas de inicio. Para proporcionar mayor visibilidad, también hemos publicado dos paneles de control de F3 (Mainnet, red de pruebas de calibración) para que la comunidad pueda seguir el progreso, monitorear la finalidad de los bloques y el rendimiento de los nodos. Si desea recibir las últimas actualizaciones de las pruebas, suscríbase a este foro o únase al canal de Slack #fil-fast-finality.
Es importante comprender los modos de uso de ancho de banda de F3 cuando entramos en la última etapa de pruebas pasivas en Mainnet. Estos modos están impulsados principalmente por dos factores clave:
Durante la etapa de arranque, F3 debe completar todas las alturas de bloque desde la última finalización, aproximadamente 900. Esta finalización de la cadena de extensión resultará en un pico temporal en el uso del ancho de banda, que generalmente dura de 5 a 10 minutos y luego se estabiliza en el nivel base.
F3 alcanza finalidad en lo que se llama una “instancia”: puede pensar en una instancia como una reunión, donde todos asisten para decidir sobre algo. Se requiere al menos el 66% de asistentes para que la reunión se disuelva. Después del arranque F3, cada instancia normalmente contiene varios Altura del bloque de Altura del bloque durante la operación normal. Esto se debe a F3, que como su nombre indica, termina rápidamente y, en la gran mayoría de los casos, puede terminar el conjunto de Altura del bloque en 2 Altura del bloque.
Sin embargo, en ciertas situaciones, la determinación final de F3 puede retrasarse con respecto al progreso de la cadena. Por ejemplo, debido a la falta de participación o problemas de conexión a la red, la “reunión” puede tardar mucho tiempo en completarse. Debido a que la cadena FIL sigue subiendo constantemente, las instancias que surgen después de instancias de larga duración ahora requieren una cadena aún más larga para completarse. Una cadena más larga significa que habrá mensajes más grandes, ya que cada mensaje intercambiado como parte de la instancia de F3 contiene información sobre la finalización de la cadena. Los mensajes más grandes provocarán un aumento significativo en el uso del ancho de banda, pero una vez que la instancia de F3 se pone al día con la velocidad de la cadena y completa conjuntos de bloques en los últimos Altura del bloque, el uso del ancho de banda volverá a la línea base.
Si descubre que la tasa de uso de ancho de banda relacionada con las pruebas de F3 permanece inesperadamente alta durante mucho tiempo, recopile registros de su implementación, especialmente registros de los niveles de registro de F3/gpbft y F3/certexchange, y compártalos en el canal #fil-fast-finality de Slack. El equipo de F3 supervisará activamente el rendimiento y colaborará con usted para investigar y resolver el problema.
En las próximas 2-4 semanas, continuaremos recolectando datos sobre la viabilidad de la implementación del F3 a través de pruebas pasivas. Nuestro plan actual es lanzar el F3 utilizando nv25.
Aunque estamos esperando los datos finales para confirmar si F3 está listo, el equipo de F3 planea proponer una actualización no cíclica a nv25 para el personal de implementación y desarrolladores principales de FIL. Si no hay problemas críticos en las pruebas finales, haremos las siguientes recomendaciones para el lanzamiento de F3:
Estaremos informando sobre el progreso en cualquier momento y proporcionando actualizaciones a la comunidad en caso de cambios en el plan. ¡Gracias por su gran apoyo a esta emocionante actualización!
Puedes seguir el blog y Twitter de FilOz para obtener las últimas actualizaciones sobre Finality.
Un agradecimiento especial a otros implementadores principales de F3: Kubuxu, Masih, Stebalien, Annorth, BigLep; otros implementadores de Lotus rvagg y el implementador de Forest Hailong, así como Ruseinov, gracias por su arduo trabajo al hacer realidad F3.