Sistemas distribuidos

Consensus benchmark

Banco reproducible para comparar consenso BFT y documentar los trade-offs de HotStuff-2.

Estado

Fixture determinista

Duración

30–45 min

Qué vas a construir

Un experimento local con estado antes/después.

Separar safety, liveness, recuperación y latencia en escenarios controlados.

Límite de seguridad: Los números son fixtures pedagógicos; no son mediciones ni comparaciones publicables de protocolos reales.

Mapa mental

Una mediana menor no compensa una violación de safety; las métricas necesitan semántica y condiciones.

Reportar safety violations.
Medir recovery views.
Comparar latencia por escenario.
Evitar claims de benchmark falsos.

Flujo del lab

01

Escenarios

02

Safety

03

Liveness

04

Latencia

05

Reporte

Prerrequisitos y lecturas conectadas

Antes de ejecutar

  • Node.js 20 o superior.
  • Conocer safety y liveness.
01

Ejecutar escenarios

Comparar señales sin atribuirlas a una implementación real.

Simulación

node tools/labs/consensus-benchmark/simulate.mjs

Checks

  • Safety violations=0.
  • Todos recuperan liveness.
  • La salida declara fixture pedagógico.

Evidencia

JSON por escenario.

Criterios de aceptación, cleanup y fallas típicas

Aceptar el lab

  • El script pasa.
  • Safety y liveness se reportan por separado.
  • No se presenta la latencia como benchmark real.

Cleanup

Limpiar

No se genera estado persistente.

Troubleshooting

Escenario no progresa

Causa: commits quedó en cero.

Fix: Conserva el fallo como pérdida de liveness; no borres el escenario.