Feature: redundancy-aware flood suppression for traffic reduction (simple_repeater)#3019
Draft
usrflo wants to merge 4 commits into
Draft
Feature: redundancy-aware flood suppression for traffic reduction (simple_repeater)#3019usrflo wants to merge 4 commits into
usrflo wants to merge 4 commits into
Conversation
- Introduced a new FloodSuppressionTable to manage flood suppression state. - Added methods to touch and cancel pending flood broadcasts based on overheard forwards. - Enhanced MyMesh to refresh neighbour liveness from overheard packets. - Implemented adaptive parameters for flood suppression based on neighbour density and SNR. - Updated CLI commands to configure flood suppression settings. - Modified node discovery to expedite neighbour list population after boot. - Ensured flood suppression logic is integrated into packet handling and retransmission delays.
Author
|
This PR ist part of the ufo firmware, latest build at time of writing: v0.6 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Cancels a repeater's own scheduled flood re-broadcast when neighbouring repeaters in areas with dense coverage have already forwarded the same flood - i.e. when the re-broadcast would be redundant. Cuts on-air flood traffic and collisions while preserving reach.
How it works
Each overheard neighbour forward of a flood is counted at RX-arrival time (
logRx), weighted by link SNR (strong → +2, weak → 0); once the weighted count reaches the self-tuned threshold, the already-scheduled re-broadcast is cancelled.See README-flood-suppression.md for a detailed explanation of the mechanism and configuration.
The feature is on by default;
set flood.suppress offdisables it.Intended role
This feature is for subordinate repeaters - nodes whose coverage is largely redundant with their neighbours.
Adaptive mode encodes this automatically (sparse neighbour table → no suppression; dense core → aggressive), so a well-placed fleet usually needs no per-node tuning - but operators should still keep bridge nodes off the feature.
Validation
Simulation A/B results (mcsim):