Herbert Wolverson
baa18bd322
ISSUE #518 - Add Flush
command to xdp_iphash_to_cpu_cmdline
. I'm not sure if anyone actually uses that tool, but now it's supported.
2024-07-11 09:24:28 -05:00
Herbert Wolverson
abdcdafef5
ISSUE #518 - Make hot cache invalidation explicit
...
The "add ip mapping" call was flushing the XDP 'hot cache'. That was fine in testing, and not working well at scale:
* Each table wipe locks the associated underlying hash map.
* Running 1200+ clears means waiting for 1200 occasions in which packets don't already have a hold on the lock (eBPF doesn't expose the locking mechanisms, so we can't change that behavior)
* The result is that under load, it can take a REALLY long time to reload the shaping stack without pausing traffic.
Instead, add_ip_mapping no longer clears the hot cache. An explicit invalidation call has been added to the bus, and added to the end of the batched IP map updates. This reduces the number of table locks from 1200+ to 2 (once for clearing the IP map, once for clearing the cache).
2024-07-11 09:22:37 -05:00
Herbert Wolverson
a13fb0482e
Remove spurious semicolon. Not the sollution to ISSUE #518 - but let's clean it up while we're here.
2024-07-11 09:04:33 -05:00
Herbert Wolverson
8ce08333ba
FIXES #507 - Use VERSION_STRING in setup assistant banner.
2024-07-09 09:50:39 -05:00
Herbert Wolverson
759e983a2f
Merge remote-tracking branch 'refs/remotes/origin/develop' into develop
2024-07-09 09:28:33 -05:00
Herbert Wolverson
6b94e67faa
ISSUE #511
...
Replace instant::now/subtraction with a Tokio scheduled ticker, in "skip" mode to handle time overruns.
2024-07-09 09:27:59 -05:00
Jarosław Kłopotek - INTERDUO
a5eb4b61e4
build_dpkg.sh: use requirements.txt file for installing python depend… ( #510 )
...
* build_dpkg.sh: use requirements.txt file for installing python dependancies (fix for issue #506 )
* restore removed --break-system-packages by mistake
2024-07-09 09:09:42 -05:00
Herbert "TheBracket
fbefdf813e
Merge pull request #509 from interduo/patch-34
...
build_dpkg.sh: use VERSION_STRING file instead setting everywhere version mark
2024-07-09 09:07:01 -05:00
Herbert "TheBracket
eb592fc8d3
Merge pull request #500 from LibreQoE/post_integration_hooks
...
Post integration hooks for scheduler.conf
2024-07-09 09:04:57 -05:00
Robert Chacón
bef5dea9af
Update integrationSplynx.py
2024-07-04 08:59:29 -06:00
Jarosław Kłopotek - INTERDUO
425af46d88
build_dpkg.sh: use VERSION_STRING file instead setting everywhere version mark
2024-07-03 06:31:12 +00:00
Herbert "TheBracket
7c351a1c3d
Merge pull request #502 from interduo/patch-32
...
build_rust.sh improvements for ubuntu 24.04 LTS
2024-06-28 08:26:20 -05:00
Jarosław Kłopotek - INTERDUO
a031719baf
build_rust.sh - lets simplyfy requirements
2024-06-28 09:48:20 +00:00
Jarosław Kłopotek - INTERDUO
3ad129f841
build_rust.sh - make is required
2024-06-28 09:04:14 +00:00
Jarosław Kłopotek - INTERDUO
32a417327a
build_rust.sh - libssl-dev is also required during compilation
2024-06-28 08:15:38 +00:00
Jarosław Kłopotek - INTERDUO
0adcfd93bb
build_rust.sh - use apt instead of apt-get
2024-06-28 08:15:38 +00:00
Jarosław Kłopotek - INTERDUO
28d2eab949
improvement: add rustup command check and suggests installing it if its required
2024-06-28 08:15:38 +00:00
Herbert Wolverson
dbd1b6b46d
And this time with the parameters the right way around.
2024-06-27 16:22:31 -05:00
Herbert Wolverson
68abb2b5b4
Possible solution to libpython linkage issues for .deb build
2024-06-27 16:14:33 -05:00
Herbert Wolverson
09c3d0c3ff
Update build_dpkg commands to issue
2024-06-27 15:21:59 -05:00
Herbert "TheBracket
81677b173e
Merge pull request #498 from LibreQoE/beta_15_version_mark
...
Update the global version string, triggering upgrade prompts.
2024-06-25 13:01:12 -05:00
Herbert Wolverson
ceb8f90e1f
Update deb build script to new major version.
2024-06-25 12:06:13 -05:00
Herbert Wolverson
857f13c0c3
ISSUE #501 Apply route overrides TO-FROM and FROM-TO, rather than being order specific. Add a diagnostic output to indicate the override was used.
2024-06-25 11:51:30 -05:00
Herbert Wolverson
f4e4c7d226
Remove ispConfig example from the dpkg build, since we no longer use it.
2024-06-25 09:46:03 -05:00
Herbert Wolverson
66d71debd5
Deb packager includes the new integrations.
2024-06-25 09:26:43 -05:00
Herbert Wolverson
1d6411bfd4
Update Rust dependencies, pre-release.
2024-06-25 09:19:13 -05:00
Herbert Wolverson
383c410eed
ISSUE #501 . Don't ignore the first line of the incoming file as a header. Generally clean up the loading routine.
2024-06-25 08:56:07 -05:00
Herbert Wolverson
18344c7cd2
Add support for bin/post_integration_hook.sh in scheduler.py
...
Scheduler.py now checks for the existence of a `bin/post_integration_hook.sh`
script. If it exists, it is executed immediately after CRM updating and
before LibreQoS is refreshed.
This gives an opportuntity to start adding additional chains of calls
to work with your shaped devices and network.json after CRM retrieval,
and before pushing to live.
2024-06-19 15:20:34 -05:00
Herbert Wolverson
2958314d5f
UISP Integration - make squash more conservative about which sites it adjusts bandwidth. Clients only.
2024-06-18 09:21:35 -05:00
Herbert Wolverson
4930c47ab0
ISSUE #499
...
* Adds a "get LibreQOS directory" function to the Python library.
* Uses it to establish the correct location for uisp_integration.
* Modifies `scheduler.py` to call the new UISP integration directly.
2024-06-17 08:50:57 -05:00
Herbert Wolverson
6ed0b88104
Remove one more stale unit test
2024-06-15 10:16:09 -05:00
Herbert Wolverson
ea6d0b6006
Fix a unit test that had aged beyond the code it was testing and was no longer valid.
2024-06-15 10:11:02 -05:00
Herbert Wolverson
3c6cae7959
CLOSES #497
...
This replaced PR #497 , and applies the same updates - now taking
into account the merged code.
2024-06-15 09:50:23 -05:00
Herbert "TheBracket
24f59e1d3d
Merge pull request #491 from LibreQoE/preflight-bridge-check
...
Preflight bridge check with relaxed interface status checks
2024-06-15 09:49:17 -05:00
Herbert "TheBracket
ced169f1cd
Merge pull request #479 from LibreQoE/uisp_integration_2
...
Uisp integration 2
2024-06-15 09:44:53 -05:00
Herbert Wolverson
c9f9c51e7e
Merge with develop to resolve update conflicts and preserve building both the support tool and this branch (both modified build scripts on the same lines)
2024-06-15 09:43:11 -05:00
Herbert Wolverson
564eb7297b
Cargo.lock update
2024-06-15 09:37:39 -05:00
Herbert Wolverson
2dbdd1c038
Re-enable AP speed selection.
2024-06-15 09:15:01 -05:00
Herbert Wolverson
20a7e3512d
Fix a subtle bug that when squashing sites that only have one decendent, speeds were being applied incorrectly.
2024-06-15 09:15:01 -05:00
Herbert Wolverson
779ef162d3
Trying Robert's suggestion for using min when promoting access devices.
2024-06-15 09:15:01 -05:00
Herbert Wolverson
680851b5a8
I believe this fixes the client site speed issue.
2024-06-15 09:15:01 -05:00
Robert Chacón
420b6e1ca6
Update mikrotikFindIPv6.py
2024-06-15 09:15:01 -05:00
Herbert Wolverson
b51c7a35bc
Now with the mising file. Sorry.
2024-06-15 09:15:01 -05:00
Herbert Wolverson
a72e6ae4ff
Implement a full PyO3 system to run mikrotikFindIPv6.py in-process as part of the uisp_integration run, and retrieve results. The results are then applied.
2024-06-15 09:14:58 -05:00
Herbert Wolverson
bb75727940
Second environment variable override option. Set LQOS_CONFIG to the location of a .conf file, and that one will be loaded instead of the hard-coded path. This is also intended to help with multiple instances.
2024-06-15 09:14:53 -05:00
Herbert Wolverson
297bdcd58e
Add support for LQOS_DIRECTORY environment variable overriding the
...
saved value when loading the config file.
If LQOS_DIRECTORY is not set, nothing happens.
If LQOS_DIRECTORY is set---for example with:
```
export LQOS_DIRECTORY="/opt/libreqos2"
```
Then the directory is overridden in the loaded configuration from
the environment variable.
This is designed to make it easier to have multiple instances---for
example for building configuration and then distributing it.
2024-06-15 09:14:53 -05:00
Robert Chacón
78c2388501
Update bandwidth_overrides.rs
2024-06-15 09:14:53 -05:00
Robert Chacón
b4619da030
Update network_json.rs
2024-06-15 09:14:53 -05:00
Herbert Wolverson
21b1f4d24b
More unit tests for bandwidth overrides
2024-06-15 09:14:53 -05:00
Herbert Wolverson
1952498ce2
Add documentation and cleanup
2024-06-15 09:14:53 -05:00