StormGuard
StormGuard es el subsistema de ajuste adaptativo de colas de LibreQoS para eventos de congestión y calidad.
Advertencia importante de alcance StormGuard está pensado para casos de uso específicos, como controlar congestión en enlaces WAN de ancho de banda variable (por ejemplo redes marítimas), o para un número pequeño de puntos de acceso con capacidades muy variables. No está pensado para gestionar decenas o cientos de nodos al mismo tiempo.
Qué hace StormGuard
Monitorea señales en tiempo real (throughput, métricas RTT/pérdida y contexto de saturación).
Aplica ajustes acotados a límites de nodos configurados para proteger calidad bajo estrés.
Expone estado y depuración en WebUI.
Los cambios adaptativos de velocidad por sitio de StormGuard se guardan en la capa de overrides de StormGuard. No se escriben de vuelta en network.json.
Configuración
StormGuard se configura en /etc/lqos.conf bajo [stormguard].
Claves comunes:
enabled: habilita o deshabilita StormGuard.dry_run: calcula decisiones sin aplicar cambios de colas en vivo.targets: lista de nodos de nivel superior a gestionar.minimum_download_percentage: piso mínimo de descarga.minimum_upload_percentage: piso mínimo de subida.log_file: ruta opcional para telemetría CSV de decisiones/cambios.
Ejemplo:
[stormguard]
enabled = true
dry_run = true
log_file = "/var/log/stormguard.csv"
targets = ["SITE_A", "SITE_B"]
minimum_download_percentage = 0.5
minimum_upload_percentage = 0.5
Si está probando, comience con dry_run = true.
UI y depuración
WebUI (Node Manager) incluye una pestaña dedicada de StormGuard además de las vistas de estado y depuración.
La pestaña del dashboard está pensada para responder «qué está haciendo StormGuard ahora mismo?» con:
tarjetas resumen para sitios observados, en cooldown y con cambios recientes
una lista de sitios que funciona tanto con un único sitio observado como con conjuntos más grandes
un panel de detalle por sitio seleccionado que explica límites actuales, últimas acciones y por qué StormGuard mantiene o cambia velocidades
un feed de actividad reciente para triage rápido del operador
La página de depuración muestra:
límites efectivos actuales
métricas de evaluación
contexto de reglas/decisiones
Patrón de despliegue seguro
Habilitar con
dry_run = true.Observar durante varios periodos pico.
Validar que no haya oscilaciones indeseadas.
Cambiar a
dry_run = false.Monitorear después de cada cambio grande de topología/integración.
Solución de problemas
Si el comportamiento parece incorrecto:
sudo systemctl status lqosd lqos_scheduler
journalctl -u lqosd --since "30 minutes ago"
También verifique:
que los nombres en
targetsaún coincidan connetwork.jsonque cambios de integración no hayan renombrado nodos clave
que los pisos mínimos sean razonables para su perfil de tráfico
que
network.jsonsiga reflejando sus velocidades planificadas/de origen si está investigando una reducción inesperada de StormGuardque
log_file(si se usa) sea escribible por el servicio