Resumen simple
Permitir más periodos sin votar antes de forzar la retirada de un nodo, y hacer que el periodo de desbloqueo de un nodo que se retira sea más corto para permitir que el nodo se reincorpore a la votación del PdS más rápidamente.
Resumen
Los parámetros actuales hacen que el funcionamiento del nodo sea propenso a causar la jubilación forzosa y, por tanto, la pérdida de intereses. Este CIP propone hacer los parámetros más tolerantes, es decir, aumentar el número de términos sin votación necesarios y disminuir el periodo de desbloqueo.
Motivación
El PdS actual fuerza el retiro de un nodo si un nodo del comité no emite ningún voto en un término, que es aproximadamente una hora. Sin embargo, el proceso normal de reinicio de un nodo ha sido de unos 30-50 minutos, por lo que si algo va mal cuando el operador del nodo reinicia/actualiza un nodo en el comité, es probable que este nodo sea retirado a la fuerza. Y si la máquina anfitriona se encuentra con algún fallo aleatorio (como la pérdida de energía), estas ventanas de 1 hora hacen casi imposible que el operador responda a tiempo.
Ahora bien, como es inevitable que la retirada forzada ocurra a veces, el período de desbloqueo de 7 días también parece demasiado largo para penalizar un error del host, ya que no hay ganancia de interés durante este período. Y esto hace que la depuración del problema que causa el force-retire sea más fastidiosa ya que tenemos que esperar 7 días antes de poder intentarlo de nuevo.
Especificación
El número de términos no votados necesarios para forzar la retirada de un nodo se convierte en 3 términos de servicio continuos después de la ronda de hardfork. Tenga en cuenta que si un nodo no vota en los últimos 2 términos después de haber sido elegido y no es elegido en el comité en la siguiente elección, el nodo no debe ser retirado a la fuerza.
El periodo de desbloqueo pasa a ser de 1 día (tanto para la jubilación normal como para la jubilación forzosa) y el periodo de bloqueo pasa a ser de 13 días después de la ronda de hardfork.
Justificación
El periodo de desbloqueo de la jubilación normal no debería ser más largo que el de la jubilación forzosa para que ningún nodo active la jubilación forzosa.
Dado que cada nodo sirve al comité durante 6 mandatos, la comprobación de 3 mandatos continuos ayuda independientemente del poder de voto de un nodo.
El tiempo total de bloqueo y desbloqueo de un nodo sigue siendo de al menos 14 días, por lo que esta propuesta no introduce más posibilidades de ataque.
Compatibilidad con el pasado
Esto rompe las especificaciones.
Casos de prueba
N/A.
Implementación
N/A.
Consideraciones de seguridad
Permitir más mandatos de no-voto hace que el fallo de la colisión afecte al sistema durante más tiempo. Pero si el poder de voto de este nodo no votante no impide que el sistema progrese, tenerlo en el comité durante dos términos más todavía deja suficiente poder de voto honesto.
Otra cuestión es que la cuenta que apueste antes de la altura del hardfork y se retire después de la altura podrá retirarse después de menos de 14 días. Como esto sólo ocurre durante el hardfork y no después, debería estar bien.
Derechos de autor
Derechos de autor y derechos relacionados renunciados a través de CC0.
Artículo Original: CIP-99: Make PoS Force Retire More Tolerant