Routingprotocol

MeshCore-routingalgoritmes

Ontdek hoe MeshCore-berichten eerst bereikbaarheid vinden via flood-routing en daarna vaker via een geleerd pad worden doorgestuurd.

Hoe vindt een bericht zijn weg door het mesh-netwerk?

In een mesh-netwerk is er geen centrale router die bepaalt welke route een bericht moet nemen. In plaats daarvan gebruikt MeshCore intelligente routingalgoritmes die ervoor zorgen dat berichten automatisch de meest efficiente route vinden naar hun bestemming.

Belangrijk verschil met generieke mesh-uitleg: MeshCore-clients repeatten niet. Alleen repeaters (en room servers met repeat aan) sturen verkeer door.

MeshCore gebruikt vaak eerst flood-routing voor bereikbaarheid en leert daarna padinformatie uit terugrapportage, zodat volgende unicast-berichten gerichter via bekende repeaters lopen.

Hoe MeshCore-routing echt werkt

MeshCore-routing combineert flood voor ontdekking met padgebaseerde forwarding voor vervolgverkeer:

Initiële flood voor bereikbaarheid

Bij eerste contact kan verkeer geflood worden via repeaters, zodat een bestemming in onbekende topologie toch bereikt kan worden.

Client -> Repeater(s) -> Flood -> Bestemming

Clients repeatten niet

MeshCore-clients zijn geen doorgeefnodes. Forwarding gebeurt door repeaters (of room servers met repeat ingeschakeld).

Message ID: 0x4A3F2B → Already seen → Drop

Padleren na succesvolle aflevering

Na succesvolle aflevering kan de bestemming padinformatie teruggeven (welke repeaters het verkeer passeerde), zodat een directer pad bekend wordt.

Gerichte forwarding voor vervolgverkeer

Vervolgunicast kan dan via het geleerde pad, in plaats van telkens breed te flooden. Dat vermindert onnodig verkeer.

Discovery en padgebaseerde forwarding

In de praktijk verloopt MeshCore-routing meestal in twee fasen:

Stap 1: Eerste bericht via flood

Een client verzendt een bericht. Repeaters zorgen voor verspreiding om de bestemming te vinden als er nog geen pad bekend is.

Stap 2: Aflevering en terugrapportage

Na aflevering kan de bestemming terugmelden via welke repeaters het bericht liep. Dat levert padinformatie op voor volgende berichten.

Stap 3: Vervolgverkeer via bekend pad

Volgende unicast-berichten kunnen dan gericht via het bekende repeaterpad lopen, zonder volledige flood als dat niet nodig is.

Stap 4: Fallback bij padproblemen

Als een pad niet meer werkt, kan MeshCore opnieuw discovery/flood inzetten om een bruikbare route te vinden.

Belangrijke MeshCore-punten

Voor correcte interpretatie van MeshCore-routing zijn dit de kernpunten:

  • Clients repeatten niet: doorsturen gebeurt op repeaterniveau.
  • Flood is vooral discovery: niet elk vervolgbericht hoeft opnieuw breed geflood te worden.
  • Padinformatie wordt geleerd: na succesvolle aflevering kan forwarding gerichter.
  • Fallback blijft mogelijk: bij padfouten kan discovery opnieuw starten.

Hops en grenzen in MeshCore

64

Interne hop-bovengrens

Volgens de MeshCore-FAQ hanteert de firmware intern een maximum van 64 hops.

flood.max

Flood-begrenzing op repeater

Repeaters kunnen flood-verkeer beperken met `set flood.max`, afhankelijk van jouw netwerkdoel.

3

Retries bij padfout

In de FAQ wordt 3 genoemd als retrygedrag bij een kapot pad, niet als algemene standaard hoplimiet.

Praktische interpretatie

Voor een correcte technische samenvatting kun je uitgaan van deze punten uit de MeshCore-documentatie:

Firmware intern: max 64 hops
Repeater tuning: set flood.max <waarde>
Padfout: retrygedrag tot 3 pogingen

Zo blijft de uitleg in lijn met MeshCore in plaats van met generieke of Meshtastic-achtige routingbeschrijvingen.

Voordelen van MeshCore routing

🔄

Zelforganiserend

Geen configuratie nodig. Nodes vinden automatisch de beste routes zonder centrale controle.

Energie-efficiënt

Doordat clients niet repeatten en vervolgverkeer gerichter kan lopen, blijft airtime en energieverbruik beter beheersbaar.

🛡️

Robuust tegen uitval

Als één route uitvalt, vinden berichten automatisch een alternatieve weg door het netwerk.

📡

Schaalbaar bereik

Door meer nodes toe te voegen vergroot je het bereik zonder extra configuratie.

🔧

Simpel protocol

De combinatie van discovery-flood en padgebaseerde forwarding houdt implementatie begrijpelijk zonder volledig statische routingtabellen.

🌐

Geen single point of failure

Geen centrale router betekent dat er geen enkel punt is dat het hele netwerk kan laten crashen.

Voorbeelden van routingconfiguratie

Je kunt routinggedrag aanpassen via de MeshCore CLI of Python-API:

CLI: Repeater als repeater laten werken

Forwarding hoort op repeaters. Zorg dat repeat op je repeater expliciet aan staat:

set repeat on

CLI: Flood-begrenzing afstemmen

Stem floodgedrag af op jouw netwerk met de flood-limiet op repeaters:

set flood.max <waarde>

Padgericht verkeer valideren

Controleer dat vervolg-unicast na discovery via bekende repeaters loopt en alleen terugvalt op flood bij padproblemen.

1) Test eerste bericht (discovery)
2) Controleer delivery report / padinfo
3) Test vervolg-bericht op zelfde bestemming

Veelgestelde vragen over routing

Is MeshCore puur een flooding-systeem?

Nee. Flooding wordt gebruikt voor discovery/bereikbaarheid, maar daarna kan MeshCore padinformatie gebruiken om vervolgverkeer gerichter te forwarden.

Repeatten alle nodes in MeshCore?

Nee. MeshCore-clients repeatten niet. Alleen repeaters (en room servers met repeat aan) nemen forwarding op zich.

Wat kun je over hops in MeshCore zeggen?

De MeshCore-documentatie noemt een interne bovengrens van 64 hops. In de praktijk wordt flood-propagatie op repeaters afgestemd, bijvoorbeeld met `set flood.max`.

Waar past `set flood.max` in dit verhaal?

`set flood.max` is repeater-tuning om flood-verkeer te begrenzen. Het staat los van de algemene uitleg dat MeshCore na discovery padgerichter kan werken.

Gebruikt MeshCore RSSI/SNR-prioritering zoals sommige andere meshprojecten?

Op deze pagina richten we ons op officieel gedocumenteerd gedrag: discovery via flood, forwarding door repeaters en padleren voor vervolgverkeer.

Wat is de veiligste samenvatting voor deze pagina?

MeshCore is geen "alles blijft flooden"-model. Het combineert discovery via flood met padleren en gerichte forwarding via repeaters voor vervolgverkeer.

MeshCore-routing correct uitgelegd

De juiste kern: clients repeatten niet, discovery kan via flood lopen, en vervolgverkeer kan via geleerd repeaterpad gerichter worden doorgestuurd.