A Quality of Experience and Smart Queue Management system for ISPs. Leverage CAKE to improve network responsiveness, enforce bandwidth plans, and reduce bufferbloat.
Fix “break system packages” flag on Debian installer, removing the “Python requirements.txt not installed” problems on older versions of Ubuntu.
Fix a typo that prevent Spylnx integrations from working automatically in the scheduler.
The title of your shaper node appears properly in your browser title bar now.
The webserver no longer freezes.
“Generated Site” no longer fills up the Sankeys.
The main tree Sankey uses a ring buffer to smooth rendering (this is coming to other elements in the next beta).
Nicer Sankey ribbon colors, especially in dark mode.
Improved margins around several graphs to make the axis labels visible.
The tick thread is now very careful to never overrun its desired time period; time-based spikes on usage (which spread to Long-Term Stats) are a thing of the past.
You can add disable_webserver = false to your /etc/lqos.conf if you don’t want to have a web GUI at all.
Filtered out “one way” flows from the ASN explorer (these are usually bot scans, and will be tracked separately in the next beta).
Internal code:
Fix MANY warnings.
MANY diagnostic messages moved to “debug” level so they aren’t visible by default.
Transition from “log” to “tracing” for log handling. Improves performance, and is the new de-facto standard in Rust.
Reduced dependency on DashMap.
Replace channels with Crossbeam for greater performance and improved efficiency.
All threads are now named, you can watch them individually in htop!
Updated several dependency versions.
Memory usage:
eBPF now has periodic garbage collection checks, expiring ancient history from the hosts list.
Configuration management is now much more memory-efficient.
Queue structure is stored more efficiently.
Shaped devices is stored more efficiently.
Switch to the mimalloc allocator for reduced total memory usage.
Flow tracking is significantly more efficient.
All channels are now bounded.
The webserver is now contained to a single thread.
Network.json handling is significantly more efficient.
MANY hot-loop allocations have been moved out of the hot loop and into a pre-made buffer.
Reduced size of preallocated buffers; it can grow if needed.
(Please squash merge this when ready).
disable_webserver = false
to your/etc/lqos.conf
if you don’t want to have a web GUI at all.mimalloc
allocator for reduced total memory usage.