Herbert Wolverson
380ae55a04
CLOSES ISSUE #368
...
Co-authored-by: Casey Primozic <me@ameo.link>
* Update Rocket Async Compression to version 0.6
* Update Rocket to Version 0.5.1
No substantive changes and it works as before, but the compression is faster.
2024-05-31 12:47:01 -05:00
Robert Chacón
0673a34202
Merge pull request #490 from LibreQoE/revert-487-preflight-bridge-check
...
Revert "Preflight bridge check"
2024-05-30 20:13:45 -06:00
Robert Chacón
b8a0d1977d
Revert "Preflight bridge check"
2024-05-30 20:13:00 -06:00
Herbert "TheBracket
55a88cbe1f
Merge pull request #486 from LibreQoE/xdp_hot_cache
...
Xdp hot cache
2024-05-30 10:12:14 -05:00
Herbert "TheBracket
17fb5e1d24
Merge pull request #487 from LibreQoE/preflight-bridge-check
...
Preflight bridge check - check that interfaces are up and not already part of a bridge
2024-05-30 10:11:46 -05:00
Herbert "TheBracket
36d41911f2
Merge pull request #488 from LibreQoE/node_manager_show_name
...
Change the window title for the node manager to include a specified name from the config
2024-05-30 10:11:02 -05:00
Herbert Wolverson
ab0d76eb6d
Change the window title for the node manager to include a specified node name from the config.
2024-05-23 13:21:12 -05:00
Herbert Wolverson
b5f2ca1223
And if enabled with no license key, allow it to be set by a remote activation.
2024-05-23 13:12:55 -05:00
Herbert Wolverson
9b5e1b41e8
Update previous commit to use the right defaults.
2024-05-23 13:10:51 -05:00
Herbert Wolverson
6c3347b339
Change default config to enable LTS sufficiently that local stats are gathered and its ready to try.
2024-05-23 12:41:22 -05:00
Herbert Wolverson
12721dff85
ISSUE #468 - After managing to reproduce it with Robert, this should fix the actual issue. The actual problem was checked subtraction in a timer loop carefully checking for the negative - which isn't allowed - and then doing it anyway. Oops.
2024-05-23 09:55:48 -05:00
Herbert Wolverson
667fec63e9
ISSUEE #486 - Replace THROUGHPUT_BUFFER's external lock that required async with interior mutability regular lock that doesn't. This eliminates the possibility of cross-task locking issues leading to a deadlock, and reduces the surface area of the lock period also. Also replace RwLock with Mutex, the simplicity is usually a net gain. This appears to have resolved the issue for me.
2024-05-22 09:10:13 -05:00
Herbert Wolverson
a326dce33f
ISSUE #486 - Fix the B to G in Plotly on the throughput graph. We're replacing it in beta 2, but that turned out to be a one-liner.
2024-05-22 08:41:49 -05:00
Herbert Wolverson
cc6d9d2d2d
Missing doc block
2024-05-20 08:42:03 -05:00
Herbert Wolverson
417b545dc7
Add preflight checks that interface(s) are UP. Add a check that if XDP
...
bridging is enabled, there is no Linux bridge containing the listed
interfaces. If the interfaces are enabled, warnings are emitted and
the XDP bridge disabled to operate in Linux mode.
2024-05-19 21:47:47 -05:00
Herbert Wolverson
0e711dc09c
Expand hot cache map size to 32k entries (as Gates would say,
...
that should be enough for everyone).
Add a "negative cache" element. When a "no match" item appears,
it is mapped to CPU 4294967294. That's considered a safe magic
number, because if you have that many CPUs in one box you are
really going to surprise me.
If an LPM lookup occurs, and still comes up as "no match" - then
the item is cached with this sentinel value. If a hot cache hit
returns the sentinal value, it returns NULL just like if no
hit had occurred.
This should eliminate the performance penalty that accompanies
IP addresses blasting out as fast as they can, but not being
in Shaped Devices.
2024-05-17 15:01:09 -05:00
Herbert Wolverson
8372786d46
TINY change: only set the prefixlen if we're actually going to use it.
2024-05-17 14:52:13 -05:00
Herbert Wolverson
d9eedcd804
Add cache invalidation to the hot cache. Whenever an IP mapping
...
changes, the cache is invalidated - meaning it will re-cache
the correct values.
2024-05-17 14:36:59 -05:00
Herbert Wolverson
6dc811968b
Pin the HOT_CACHE map so it can be accessed elsewhere.
2024-05-17 14:36:59 -05:00
Herbert Wolverson
ab64113f98
Add a "hot cache" to the XDP LPM lookup system.
...
Adds a new BPF map (an LRU hash) containing IP addresses and
TC mapping info. IPs are first checked against the hot cache,
because a hashmap lookup is faster than an LPM lookup. If
found, the cached value is used. If not found, then the
key is inserted into the LRU map (so currently hot stays
present, others expire over time) for future cache use.
2024-05-17 14:36:59 -05:00
Herbert Wolverson
11375d34e1
Add a TRACING flag to the lqos_kern C system. If it is defined,
...
the entry and exit times of the XDP and TC system are recorded
in the kernel trace pipe.
2024-05-17 14:36:59 -05:00
Robert Chacón
58f898e0f0
Merge pull request #476 from LibreQoE/preflight
...
Preflight checks for lqosd
2024-05-17 11:14:03 -06:00
Herbert Wolverson
a6f90fc7ee
Correct not displaying the "stats free trial" toast message if
...
stats are disabled.
2024-05-17 11:32:35 -05:00
Herbert "TheBracket
ed403f7869
Merge pull request #483 from LibreQoE/lqtop_ratatui
...
Merge lqtop2 into develop. Extends lqtop to include the new features we display on the dashboard, switches to ratatui.
Co-authored-by: Dave Täht (dtaht)
2024-05-15 10:55:52 -05:00
Herbert Wolverson
e615d26934
Add lqtop latency histo
2024-05-13 15:00:07 -05:00
Herbert Wolverson
0c8916400d
Add help line to top
2024-05-13 14:41:11 -05:00
Herbert Wolverson
0c30eb5b8f
Regenerate cargo lock
2024-05-13 14:24:19 -05:00
Herbert Wolverson
22104e25a3
Remove unused import
2024-05-08 16:04:51 -05:00
Herbert Wolverson
9bfce3ecec
GREATLY improved ShapedDevices writer system. It now catches the changes you make, and the formatting seems to work.
2024-05-08 09:30:02 -05:00
Robert Chacón
648d20183d
Merge pull request #482 from LibreQoE/config_ui
...
Config UI
2024-05-06 18:17:15 -06:00
Robert Chacón
f7ca4cadef
Merge pull request #480 from LibreQoE/influx_fix_15
...
Re-enable InfluxDB support with the new configuration.
2024-05-06 18:16:56 -06:00
Herbert Wolverson
12e4320eaa
You can now save shaped devices and network json
2024-05-06 14:05:30 -05:00
Herbert Wolverson
a4d4a6df7d
Speed editing with buttons works
2024-05-03 09:26:56 -05:00
Herbert Wolverson
c3e7c84e02
Network list node deletion works
2024-05-03 09:16:12 -05:00
Herbert Wolverson
07f82661f8
Allow renaming of top-level tree items
2024-05-03 08:11:38 -05:00
Herbert Wolverson
a61070529b
Promote and rename on the network tree
2024-05-02 08:49:18 -05:00
Herbert Wolverson
386003214b
Include IP conflict detection.
2024-05-01 15:41:56 -05:00
Herbert Wolverson
d21f4fa8e0
Shaped Devices save button and validation, row removal and addition. Actual saving not implemented yet.
2024-05-01 14:53:40 -05:00
Herbert Wolverson
e2e22ea7ae
Round-trip load/edit/save cycle is basically working for lqos.conf files. More testing needed, passed the easy cases I tried.
2024-05-01 12:36:47 -05:00
Herbert Wolverson
001f01da98
Setting the in-memory config from changes after validation is apparently working.
2024-05-01 11:00:21 -05:00
Herbert Wolverson
861c6e2a8d
Initial validation workflow for saving configuration.
2024-05-01 10:09:11 -05:00
Herbert Wolverson
d4f479dab8
More config work in progress.
2024-04-30 09:32:46 -05:00
Herbert Wolverson
1ad80a278c
Basic network json viewer, shaped devices viewer. All read-only still, but progress.
2024-04-26 12:56:06 -05:00
Herbert Wolverson
3e9fb1e518
Add NIC drop-down lists to config editor
2024-04-25 12:53:16 -05:00
Herbert Wolverson
7ad6001646
Config system can now display the whole lqos.conf file.
2024-04-25 12:31:17 -05:00
Herbert Wolverson
f3c6b344b7
WIP - Current status on config page
2024-04-25 09:02:04 -05:00
Herbert Wolverson
062e1e7eb8
Minimal read-only view of most of the configuration - a good start.
2024-04-24 15:43:43 -05:00
Herbert Wolverson
dba1ed78ae
Re-enable InfluxDB support with the new configuration.
2024-04-24 13:17:46 -05:00
Robert Chacón
4c0af0bdea
Update integrationUISP.py
2024-04-16 16:41:04 -06:00
Robert Chacón
d6cf9db8f7
Update integrationUISP.py
2024-04-16 14:21:37 -06:00