RFC: Geo-Clustered Multi-Path Routing (System 5) — A Proposal to Reduce Transmissions by 90-99% #1
ClemensSimon
started this conversation in
Ideas
Replies: 1 comment
-
|
First ESP32 Firmware is uploaded! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Author: Clemens Simon
Repository: ClemensSimon/MeshRoute
Live Simulator: Try it here
Status: Research prototype with working simulator + ESP32 firmware
The Problem
Meshtastic's managed flooding is clever — SNR-based suppression, ROUTER roles, congestion scaling. But it still scales as O(n) per message per hop. Every node that hears the message rebroadcasts it. This is why the hop limit (3-7) exists: without it, a single message would consume the entire network's airtime.
This means:
The Proposal: System 5
Core idea: Instead of flooding, route messages along pre-computed paths through geo-clustered nodes. Each hop costs exactly 1 TX instead of N.
How it works
The key difference
20 hops with System 5 costs less than 1 hop of managed flooding.
Benchmark Results
I built a simulator that compares 4 routing algorithms (Naive Flooding, Managed Flooding, Next-Hop, System 5) on identical networks with identical messages. 22 scenarios from 20-node local mesh to 1500-node metro scale.
Where System 5 dominates (100% delivery, 90-99% fewer TX)
Where it gets interesting (large scale)
At metro scale, managed flooding collapses from congestion. System 5's directed routing avoids the congestion entirely.
Honest about weaknesses
System 5 is not always better. In heavily degraded networks, flooding's redundancy wins. The solution: System 5 with managed flooding fallback (which is exactly how the prototype works).
Backward Compatibility
The #1 concern: Can System 5 nodes coexist with existing Meshtastic nodes?
Yes. The prototype implements dual-mode:
The live simulator has 5 mixed-mode scenarios (10%–90% S5) where you can see this in action hop-by-hop.
What I've Built
1. Interactive Simulator (try it)
2. Python Benchmark
pip installnothing — pure Python3. ESP32 Firmware (standalone, no Meshtastic fork needed)
What I'm Asking For
Links
The code is MIT licensed. I'm happy to contribute this upstream if there's interest.
Beta Was this translation helpful? Give feedback.
All reactions