More ISP Health scoring improvements and some monitoring polish. If you're on v1.20.6, this release improves the loaded-latency estimator - we recommend updating. See the v1.20.0 release notes for what's new in v1.20.0+.
Monitoring - ISP Health
- Smarter loaded-latency scoring - Loaded latency now pools all monitored targets (ISP access hops, transit, and internet destinations), filters out noise below the jitter floor, and takes the lowest quartile as the result. This is robust to ICMP deprioritization at any hop, destination degradation, and poll timing differences - so one bad target or one load event can't swing your score. Still computed passively from whatever real load your connection sees, no bufferbloat test required.
- Counter lag compensation - SNMP interface counters lag behind real-time ping probes by several seconds. Loaded latency and loaded packet loss now compensate for this so the highest-latency samples land in the correct load-classified window instead of being misclassified as idle.
- Adaptive SQM probe windows excluded - Adaptive SQM briefly lifts the shaper to measure your true line speed, which looks like bufferbloat but isn't your shaped experience. Those windows are now carved out of the loaded-line analysis.
- Retuned idle latency - The idle baseline is more robust to outliers and the per-technology curves were retuned so a top score is genuinely earned.
- Consistent primary-WAN resolution - ISP Health, the 2D / 3D Live Views, and upstream discovery now agree on which WAN is your configured primary (by load-balance weight and failover priority), and rate and Adaptive SQM data resolve to the correct counter and data-path interfaces, including VLAN-tagged WANs. Live throughput cards still follow the active uplink so failover stats stay correct.
- NOTE for PPPoE users: please report any breakage in a GitHub issue, as we refactored some of the code that controls WAN interface mapping.
- Lighter footprint - Added WAN summary caching so the app stops re-reading it on every request.
Monitoring - 2D / 3D Live Views
- Cleaner timeline playback - Scrubbing back through history no longer paints latency on secondary WAN globes that aren't being monitored.
Monitoring - Live View
- WAN chart tooltip timezone - Tooltips on the Live WAN throughput chart now show local time instead of UTC.
Security Audit
- More DNS providers recognized - Detects on-gateway NextDNS CLI and ControlD, and recognizes more public DNS provider IPs.
Fixes
- Standalone UniFi Network Server (legacy) - Self-hosted UniFi Network Server installs no longer fall back to UniFi OS API paths that don't exist on them. UniFi OS Server consoles were unaffected.
Installation
Windows: Download the MSI installer below
Docker:
docker compose pull && docker compose up -dmacOS (native, recommended for accurate speed tests vs Docker Desktop):
git clone https://github.com/Ozark-Connect/NetworkOptimizer.git && cd NetworkOptimizer && ./scripts/install-macos-native.sh
# or if you already have it cloned
cd NetworkOptimizer && git pull && ./scripts/install-macos-native.shProxmox:
bash -c "$(curl -fsSL https://raw.githubusercontent.com/Ozark-Connect/NetworkOptimizer/main/scripts/proxmox/install.sh)"
# or if you just need to update
pct exec <CT_ID> -- bash -c "cd /opt/network-optimizer && docker compose pull && docker compose up -d"For other platforms (Synology, QNAP, Unraid, native Linux), see the Deployment Guide.