Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LQM improvements. #1193

Merged
merged 1 commit into from
May 12, 2024
Merged

LQM improvements. #1193

merged 1 commit into from
May 12, 2024

Conversation

aanon4
Copy link
Contributor

@aanon4 aanon4 commented May 12, 2024

This includes some extensive improvements and changes to LQM. There are associated changes in aredn_packages to sync with this.

  1. The tracking state has been cleaned up so each tracker only contains valid state for what's being tracked. Before there were lots of "defaults" which weren't valid.
  2. LQM now tracks rolling averages of tranmission traffic, retries and failures.
  3. LQM will always run even when disabled. When disabled, LQM will not apply any changes to your system, but it will still track all the state so it's available as metrics for monitoring.
  4. Blocking has been reworked to be cleaner and easier to understand. Functionally it behaves the same, but there was some ambiguity in the handling of explicit user blocks which has been resolved.
  5. Polling remote state has been improved so it happens more reliability and only when necessary and possible. There were situations when it was being attempted despite the route being blocked; which wasn't useful.
  6. Neighbor pings have been improved so they won't be attempted when they can't succeed.
  7. Traffic injections has been removed, instead relying on neighbor pings to feed traffic into poorly used links to measure traffic quality. This was causing problems with poorly connected sites (very large numbers of retries were generated). Note that recovery of poor links will now take longer, but this is probably for the better.
  8. LQM now published a valid wifi mac list for OSLR to use. In the latest release, OLSR switched to using unicast traffic for link sensing rather than broadcast traffic as had been used before. This is a more realistic way to measure link performance because wifi broadcast traffic and unicast traffic is completely different. However, OLSR was sending link sensing unicast traffic to blocked stations because it operates below the firewall. This results in unnecessary traffic and lots of retries as the connection is known to be poor. The LQM published mac list allows OLSR to only sense unblocked links. If LQM is disabled, this mac list is not published and OLSR reverts to is old broadcast scheme.

Matched with changes in aredn_packages
@aanon4 aanon4 merged commit 8bb01e0 into aredn:main May 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant