Batman für dynamisches lokales (embedded) Netz

Einen schönen guten Abend aus dem Süden Deutschlands.

Ich lese schon seit einiger Zeit passiv mit… und habe mich jetzt entschlossen, mich zu registrieren und ein paar meiner Verständnisfragen zu klären.

Es wäre schön, wenn einer der Spezis hier mir dazu einige Antworten geben könnte und mir den Schleier von den Augen nimmt :smile:

Zu meiner Frage - ich versuche mal es in ein Scenario zu packen, damit mein Verständnisproblem klar wird:

Sagen wir mal, es gibt 10 Raspberries - ein geschlossenes Netz, kein Internet Gateway und nix anderes… nur diese 10 Rasperries mit BATMAN-ADV., alle sind mit einem Funkmodul (WLAN) ausgestattet. 9 von den Rasperries haben eine Datenquelle (sagen wir mal USB Webcam oder GPS oder was auch immer) . so… wir haben ein Team von 9 Spielern…die bewegen sich innerhalb eines verdammt großen Grundstückes und jeder hat einen dieser 9 Rasperries in der Hand.
Alle gehen kreuz und quer (durcheinander) über das Spielfeld.
Das Spielfeld ist groß.
So groß, das immer nur einige wenige der 9 Spieler einen Kontakt zur ‚Basis‘ haben (der 10. Raspberry)

Jetzt zu meinen Fragen:

  1. Ist es durch das BATMAN-ADV jetzt automatisch sichergestellt, dass ich am 10. Rasperry - also an der ‚Basis‘ - die Daten eines jeden einzelnen der 9 Spieler-Raspberries zur Verfügung habe ? (also ein automatisches repeaten der Information im Mesh Netzwerk. Wenn Raspi #6 momentan keine Verbindung zur Basis hat, werden die Daten halt von #4 an die Basis weiter geleitet, da er Kontakt zu beiden hat)

  2. Gehen auch mehrfache automatische ‚repeatings‘ ?? Ich meine, Zum Beispiel von #6 auf #4 und von dort auf #8 - der es dann weiter an die Basis leitet…

  3. Ich könnte mir voorstellen, das eine Menge ‚Datenrate‘ für das protokollieren etc verbraucht wird. Gibt es Anhaltspunkte dafür ? (Zum Beispiel: Jedes „repeating“ verringert die maximale um 25% ) oder so etwas ?

Es wäre lieb, wenn mir einer von euch das mit ein paar Sätzen beantworten könnte.
Ich habe seit längerem eine Idee für unser nächstes Siedlungsfest, vielleicht klappt es ja :smile:
Danke und ein lieber Gruß an die Community hier !

2 Likes

Mit RPIs macht es aufgrund der teuren und trotzdem ineffektiven Funkmodule wenig Spass.
Aber wenn Platz kein problem ist, dann binde den RPIs noch einen 841N auf den Rücken als Laninterface. Kostet kaum 350mA auf 5V (wenn man auf dem Board eine Diode überbrückt). DIR505 sind kompakter.

Wenn es unbedingt USB-Wlansticks sein sollen: Du kannst gern mal mit Broadcom was probieren. Erhoffe Dir aber noch nicht zu viel Robstheit.

Gegenüber den normalen Freifunk-Settings: Originator-Interervall im Batman reduzieren, auf z.B. 1s.
Das gibt zwar ziemlich viel Overhead, aber dafür propagieren Topologieänderungen („Mitspielende in Bewegung“) schneller.

Ansonsten: Jedes Device im Netz ist auf einem Layer2-Netz.
Da kann man dann beliebige Dinge tun. Statische IPv4, statische IPv6 etc.
Um das Repeating etc. musst Du Dir in der Tat keine Sorgen machen. Sehe nur zu, Sender mit 2xMIMO zu bekommen, da es sonst zu schnell Ecken mit „Funkschatten“ gibt.

(Den Clickbait-Betreff habe ich mal angepasst, da er schlicht nicht zutreffend war.)

2 Likes

Herzlichen Dank für die schnelle Antwort :smile:

Im Umkehrschluß bedeutet das, dass es also grundsätzlich klappen sollte - wenn ich das jetzt richtig verstanden habe.

„WLAN Stick“ war wirklich nur ein Beispiel, es würden andere Funkmodule zum Einsatz kommen - an dieser Stelle auch noch einmal einen herzlichen Dank für den Tipp/Hinweis.

Ich habe eigene Funkmodule, die mit Diversity ausgestattet sind und in einer sehr robusten Umgebung funktionieren. Datenübertragung P2P und P2MP (Multipoint) funktioniert ausgezeichnet, auch aus der Bewegung heraus. Ich möchte da jetzt ein Mesh hinterlegen um das Scenario - wie Anfangs geschildert - machen zu können.

(und…was ist/war der/ein ‚Clickbait-Betreff‘ ???)

Ein lieber Gruß
Jan

Ahhhhh…das mit dem Betreff hat sich erledigt :wink: Danke für die Anpassung ! :smile:

Wenn Du Funkmodule hast, die 802.11s „als Adhoc-Mode-Ersatz“ sicher beherrschen, dann sollte es reichen.
Vom Kostenfaktor wirst Du jedoch vermutlich nirgends besseres Mimo (und nicht nur Diversity) bekommen für 15€ als bei 841er. Zumal als absturzsicheres Subsystem, das Du als Routing-Engine einmal aufsetzt und dann schlicht benutzen kannst.

1 Like

Überzeugt, habe soeben für je 14.95€ vier von den 841ern geordert… das werde ich mal probieren. Darf ich mich wieder melden, falls ich da bei der Installation Probleme habe ?

Auf jeden Fall: Herzlichen Dank für die schnelle Hilfe und die tollen Tipps !

Ein lieber Gruß und einen schönen Abend…

Jan

Dafür sind wir hier.

Ach ja: Du kannst erstmal mit einer fast beliebigen Freifunk-Firmware anfangen "Gluon anfangen, mindestens auf „v2016.1“ basierend.
Finetuning für „schnelleres Update bei Bewegung“ und vielleicht keine Suche nach SW-Updates etc und ntp-Server: Kann man später machen.
Man sollte dann auch benchmarken, ob jetzt ein statischer Hosts-File oder ravd und ein zentraler Mini-DNS besser läuft.

1 Like

Ohne die vorherigen Antworten gelesen zu haben:

  1. ja

  2. ja absolut

  3. Das Protokoll ist nicht das Problem. Das Problem ist, dass die Knoten alle auf der gleichen Frequenz / dem gleichen Kanal funken müssen, damit sie sich gegenseitig sehen. Wenn #1 die Daten von #2 zur Basis weiterleitet, muss er die gesamten Daten per Funk wiederholen. Dadurch wird die „Airtime“ (Sprechzeit, die die Router sich aufteilen, es kann immer nur einer reden beim Funk auf einer Frequenz) extrem strapaziert. Wird die Nachricht ein zweites Mal weitergereicht, muss die Airtime wieder auf einen Sender mehr aufgeteilt werden. In der Praxis ist das ziemlich deutlich spürbar, wenn eine Kette von 841ern (also im 2.4 GHz-Band) länger wird und Die Daten durchgereicht werden müssen.

Ein weiteres Problem könnte die Bewegung der Knoten sein. In fast allen Freifunk Firmwares sprechen sich die Router vereinfacht gesagt alle 5 Sekunden ab. Im schlimmsten Fall wird erst nach einigen Meldungen, die nicht durchkommen, eine andere Route gewählt und einige Pakete gehen verloren. Du solltest also TCP-basierte Anwendungen benutzen, damit sichergestellt ist, dass die Daten auch ankommen. Außerdem kannst du später eine eigene Firmware machen, die sich öfter „abspricht“ (wieder vereinfacht).

Ich bitte darum! Dein Projekt klingt äußerst interessant.

Wenn du Interesse hast kann ich dir für den Anfang eine Firmware machen, die ein bisschen optimiert ist für dein Projekt (Client-Netz deaktiviert, dein SSH-Key vorinstalliert, ohne VPN-Paket, erhöhtes Originator Interval, etc…), bis du die Zeit findest dir selber eine zu machen.

3 Likes

Hallo Adorfer und hallo PetaByteBoy,

ich finde es toll, wie schnell und unkompliziert hier geholfen wird.

Selbstverständlich werde ich sehr gerne über den weiteren Verlauf des Projektes hier berichten.

Am Anfang werden es jetzt die 841er sein - um erst einmal einen „Status Quo“ (nebenbei auch eine meiner Lieblingsbands) zu erreichen.

Die finale Lösung soll dann später auf ‚meiner‘ proprietären Hardware laufen, da dann modulationsbedingt und durch die FEC schon eine hohe Robustheit bei beweglichen Links gegeben ist.

(ETSI EN 300 744 Standard)

…aber das ist dann erst später der finale Schritt.

Zuerst werde ich jetzt einmal versuchen, mit der angesprochenen Firmware und den Raspi’s und den 841ern ein ‚Mini-Mesh-Netz‘ in Betrieb zu nehmen und zu testen.

Ich bedanke mich noch einmal recht herzlich bei euch und wünsche einen schönen Abend :smile:
Lieber Gruß
Jan

Das wäre FANTASTISCH !!! :slight_smile: :slight_smile: :slight_smile:

Wirst du dann selber sehen, dass der Weg insbesondere bei proprietären Wifi-Treibern sehr holprig wird.

1 Like

Freifunk wird inzwischen (leider?) immer mit Internet verbunden. Willst du in deinem Projekt trotzdem den Namen Freifunk verwenden? Ansich brauche ich einen vollen Namen und ein Kürzel (Beispiel: Freifunk Leichlingen, fflln).

1 Like

So, da bin ich wieder, zwischenzeitlich schnell nach Hause efahren und gegessen… meine Frau machte schon erheblichen Druck :wink:

Treiber: Ja, das wird noch einmal anstrengend werden, aber… es ist halt eine Herausforderung, die ich gerne ‚knacken‘ würde…

…und das wichtigst ist jetzt erst einmal, das die Mesh-Gruppe überhaupt läuft :smile:

Nein, ‚Freifunk‘ im Namen muss nicht sein. es ist eine in sich geschlossene Geschichte, die nicht und niemals an das normale Internet angebunden sein wird…

Wenn man einen Namen braucht, nimm einfach den: ‚Embedded Mesh Versuch Jan‘ = emvj,

ich wohne in Schwabach - falls das irgendwo angegeben sein sollte.

Ein lieber Gruß
Jan

Eigentlich hat Freifunk auch nicht zwangsweise was mit Internet zu tun.

1 Like

Ist zwar hochgradig am Thema vorbei, aber ich wag das mal kurz und sag: Grüß Heino von Blumen
Schwarz, wenn du den kennst. Ansonsten, kannst du meinen Beitrag hier ignorieren :wink: Ach ja, - spannendes Projekt. Bin auf deine Rückmeldung auch schon gespannt.

1 Like

lacht die Welt ist klein…kenne ihn nicht persönlich…fahre daran aber täglich 2 x vorbei - ist ganz in der Nähe der Firma :smile: Kommst Du aus SC ?

Und… JA - versprochen - ich werde den weiteren Verlauf hier gerne bekannt geben.

Ein lieber Gruß
Jan (auch Katzenliebhaber - 2 British Shorthair - Papa und Tochter - Richie und Lilly)

Dann bräuchte ich noch einen public SSH key und einen weiteren Public Key zum Signieren von Firmware-Updates (kann man mit diesem Tool generieren).
Ich weiß nicht wie versiert du mit *NIX-Systemen bist…
Wenn du Zeit hast komm doch mal in den Mumble (Voice Chat) auf mumble.freifunk-rheinland.net.

1 Like

ok, mach ich (voice chat)…gib mir bitte ein paar Minuten… bis gleich :slight_smile:

www.mumble.freifunk-rheinland.net ?
findet der PC nicht :frowning:

  1. nicht im webbrowser eingeben, sondern im mumble client
  2. ohne www.
1 Like