Wie einige von euch sicher schon gemerkt oder auch hier gelesen haben ist unser Mesh inzwischen relativ gut ausgelastet. Es kommt immer wieder mal zu Problemen beim versenden von Nachrichten oder auch wenn man sich auf einen Repeater einloggen möchte.
Ich würde hier gerne einen zentralen Thread schaffen in welchem wir potentialle Massnahmen diskutieren und definieren können.
Grösstes Problem, soweit ich das verstehe, sind im Moment vor allem die Flood-Messages in den Channels sowie die vielen Adverts. @Paul_Simmen hat da ein paar brutal gute Posts verfasst, würde dringenst empfehlen diese zu lesen:
Scope Region
Die wichtigste Massnahme von MeshCore gegen zu viel Traffic heisst “Regions”. Eine kurze Erklärung sowie eine Anleitung findet man hier: REGIONS | MeshCore Switzerland
Seit der MeshCore Version 1.15.0 ( MeshCore Firmware v1.15.0 ) gibt es hier neue Möglichkeiten:
- Auf dem Companion Node eine Standard-Region zu definieren.
- Auf dem Repeater eine Standard-Region zu definieren.
Bis Heute mussten wir auf unseren Repeatern die Region “*” zulassen damit das mit den direkten Nachrichten und dem Remote Management vom Repeater geklappt hat. Neu wäre es aber möglich diese zu deaktiveren / löschen, wenn mann auf der Companion Node die Default Region auf etwas definiert was auf dem Repeater zugelassen ist klappt das. Das hätte folgende Konsequenzen:
- Repeater würden Nachrichten bzw. Pakete die keiner Region zugeordnet sind nicht mehr weiter leiten. Das würde unser Mesh massiv entlasten da unglaublich viele Nachrichten keiner Region zugeordnet sind.
- Es würde die User dazu erziehen Regions anzuwenden da es ohne schlicht und einfach nicht mehr funktioniert.
- Nachrichten könnten mit der Region “europe” immer noch übers ganze Netz gesendet werden. Hier besteht aber auch ein Risiko, wenn nämlich jeder User und jeder Bot einfach anfängt diese Region zu verwenden sind wir wieder gleich weit.
Würde zu diesem Thema unglaublich gerne eure Meinungen hören, falls wir uns einig werden könnten wir dann die Empfehlungen auf https://www.meshcore.ch/.
Multi-Byte
Stand Heute werden Repeater mittels einem Byte identifiziert. Mehr Details sowie eine separate Diskussion zum Thema findet man hier: Meshcore multi-byte path hash's
Hier würde ich vorschlagen dass wie unsere Repeater Settings Empfehlungen anpassen und unsere Repeater 2-Byte Adverts versenden lassen. Das blockiert nichts, die Repeater leiten nach wie vor auch 1-Byte Nachrichten weiter.
Das wird nicht wirklich helfen gegen zu viel Traffic, bei direkten Nachrichten und Repeater Remote Admin darf man aber eine Verbesserung erwarten sobald wir genug Repeater auf >=1.14.0 am laufen haben und wir wirklich anfangen können 2-Byte Nachrichten zu versenden.
Repeater Command - Einstellung abfragen:
get path.hash.mode
Repeater Command - Einstellung ändern:
set path.hash.mode 1
Weitere Möglichkeiten
- Eine weitere Einstellung die Abhilfe schaffen könnten wären die max. Hops. Per default leiten die Repeater 1-Byte Nachrichten bis zu 64 Hops weiter. Wir könnten uns überlegen diese zum Beispiel auf 20 Hops einzuschränken.
Repeater Command - Einstellung abfragen:
get flood.max
Repeater Command - Einstellung ändern:
set flood.max 16
- Repeater Flood Adverts auf 72 Stunden stellen, einfach damit es weniger Adverts gibt.
Ich habe hier sicher noch einiges vergessen, bin sehr gespannt auf eure Meinungen und Ideen!

