User Tools

Site Tools


public:project:subnet:basics

WISP Basics

Diese Seite liefert einige grundlegende Informationen die für den Betrieb eines wireless ISP notwendig sind.

ELI5: Was ist das und was soll das überhaupt?

Das Ziel von SUBNET ist es, ein freies Funknetzwerk in St. Pölten und Umgebung aufzubauen. Technisch funktioniert das ähnlich wie WLAN Zuhause, nur dass bei solchen Funknetzen zwischen Punkt-zu-Punkt (es werden zwei Geräte direkt miteinander verbunden, vergleichbar zu einer kabelgebundenen Verbindung, nur ohne Kabel) und Punkt-zu-Multipunkt (ein Gerät wird mit mehreren weiteren Geräten verbunden, wie man dies von WLAN kennt) Verbindungen unterschieden wird.

Die Punkt-zu-Multipunkt Verbindungen dienen idR. dazu Endgeräte (wie bspw. Smartphones, Laptops, etc.) an das Netzwerk anzubinden. Die Punkt-zu-Punkt Verbindungen verbinden diverse Standorte miteinander. Im wünschenswerten Endausbau ist jeder Standort der Punkt-zu-Multipunkt Verbindungen anbietet mit mehreren weiteren Standorten gleichzeitig verbunden. Dies gewährleistet, dass das gesamte Netzwerk noch funktioniert, auch wenn es zu Störungen von einzelnen Standorten kommt.

Vereinfacht dargestellt, ließe sich dies mit einem städtischen Straßennetz vergleichen. Auch bei Straßennetzen gibt es mehrere mögliche Routen die man wählen kann. Dies führt einerseits dazu, dass sich der Verkehr aufteilt; anderseits gibt es auch Ausweichrouten, sollte eine Straße aufgrund einer Baustelle gesperrt sein.

Die Vorteile eines solchen Funknetzwerks sind vielfältig: Die redundante (und ggf. dezentrale) Vernetzung bietet erhöhte Ausfallsicherheit, die Kommunikation innerhalb des Netzes ist frei im Sinne der Netzneutralität und bietet einen möglichen Kommunikationskanal während Katastrophenszenarien sowie Ausfällen der regulären Netze.

Mesh: Failover vs. Ideal Path vs. Lastverteilung

Die gewünscht vorhandenen redundanten Verbindungen können grundsätzlich für reines Failover verwendet werden (siehe Spanning Tree). Reines Failover ist relativ simpel und wenig fehleranfällig, das volle Potenzial des Netzwerks kann dann aber nicht ausgenutzt werden. Alternativ kann für jede Verbindung der beste Pfad im Netz gewählt werden. Dies kann je nach verwendeten Protokollen unter Berücksichtigung der aktuellen Verbindungsqualitäten passieren.

Der heilige Gral von vermaschten Netzen ist vollwertige Lastverteilung. Der Vorteil ist hierbei offensichtlich: Ist ein PoP mit über mehrere Verbindungen angebunden, können diese gebündelt und gleichzeitig verwendet werden, was die effektive Bandbreite potenziell summiert (vgl. 802.1aq). Dies funktioniert zwar ähnlich zu Unequal-Cost-Load-Balancing von kabelgebundenen Netzen, wird aber durch die permanent schwankenden Verbindungsqualitäten der Funkstrecken erschwert. Aktuell wird aufgrund der Komplexität häufig auf volle Lastverteilung verzichtet.

L2 oder L3?

Ein großes Layer 2 Netz ist auch bei kabelgebundenen Netzwerken ein Problem, da Broadcasts Ressourcen im gesamten Netz benötigen. Ein weiteres Problem von Layer 2 Netzen kommt mit redundanten Verbindungen, da hier Schleifen entstehen. Dies wird gewöhnlich durch Verwendung von Spanning Tree gelöst, was jedoch in reinem Failover ohne Lastverteilung resultiert. Ohne ausgeklügelter Konfiguration würde Spanning Tree auch keine Rücksicht auf die unterschiedlichen Verbindungsqualitäten nehmen und ggf. bessere Links deaktivieren.

Eine entsprechende Aufteilung in mehrere geroutete Layer 3 Netze ermöglicht eine Reduzierung von Netzlast ausgelöst durch L2-Broadcasts sowie Lastverteilung unter Berücksichtigung der momentanen Verbindungsqualitäten.

Interessantes

RFC6598

Die RFC6598 reserviert das IPv4 Netz 100.64.0.0/10 für Carrier-Grade NAT. Dies könnte verwendet werden, um Endgeräte anzubinden (da uns voraussichtlich kein öffentliches IPv4 Subnetz zur Verfügung stehen wird). Grundsätzlich könnten dafür auch IP Adressen gemäß RFC1918 (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) verwendet werden, was aber zu Überschneidungen mit intern verwendeten IP Netzen führen könnte.

RFC3927

Die RFC3927 reserviert das IPv4 Netz 169.254.0.0/16 für Link-Lokale Adressen. Diese könnten für Punkt-zu-Punkt Netze zwischen PoPs oder allgemein Link Netze zwischen L3 Netzen verwendet werden.

APU2 Boards

APU2 Boards sind halbwegs kostengünstige & kleine SBCs mit 2-4GB RAM und 2-4 Intel NICs, welche häufig für Linux-basierte Router/Firewalls verwendet werden.

B.A.T.M.A.N. advanced

B.A.T.M.A.N. advanced (kurz: batman-adv) ist ein Layer2 Routingprotokoll, welches speziell für Funknetzwerke entwickelt wurde. batman-adv emuliert einen virtuellen Switch über alle teilnehmenden Knoten.

Freifunk Hochstift Approach

Freifunk Hochstift hat basierend auf mehreren Iterationen einen mittlerweile gut ausgereiften Technologiestack für deren Funkbackbone im Einsatz:

(1)IP over (2)batman-adv over (3)VXLAN over (4)IP over (5)VLAN over (6)Ethernet (Empfehlung - von unten nach oben lesen):

  1. (1)IP: Hierbei handelt es sich um das tatsächlich zu übertragende Netzwerk. Im Fall von FFHO kann dies natürlich sowohl IPv4 als auch IPv6 sein, weil: “man baut 2015 nichts mehr was kein IPv6 kann”.
  2. (2)batman-adv: Die Verwendung von batman-adv nutzt die Vorteile vom Funkmesh aus, indem für Verbindungen der jeweils ideale Pfad gewählt wird.
  3. (3)VXLAN: PtP L2 Verbindung als Overlay über IP für batman-adv
  4. (4)IP: Hiermit wäre das geroutete Backbone-Netz eines “Providers” fertig. Alles on top ist quasi die Kundenanbindung.
  5. (5)VLAN: VLAN für die logische Verbindung zwischen zwei Backbone-Routern.
  6. (6)Ethernet: Die Kabel- oder Richtfunkverbindung.

Durch den Overhead von den Overlays ergibt sich ein Problem mit der MTU. Dies könnte zwar den Clients mittels DHCP mitgeteilt werden, wird aber laut den Erfahrungen von FF HO von vielen Clients ignoriert. Durch die ganzen Overheads wurde die MTU im Backbone auf 1628 erhöht, was für die klassischen Komponenten (UBNT, Linux, Switches) kein Problem darstellt.

FF Hochstift hat zur Verkleinerung des Layer2 deren geographisches Einzugsgebiet (~450.000 Einwohner auf 2.500km2) in mehrere (~25) Regionen unterteilt. Eine Region ist die kleinste Einheit von der sie es für sinnvoll halten diese bei maximaler Aufsplittung & maximalem Wachstum als eigenen Bereich zu betreiben. Diese Grenzen sind (vermutlich) basierend auf natürlichen Gegebenheiten und Bebauung so aufgeteilt, dass niemand mit aktiver Verbindung von einer Region in eine andere wechselt. Diese Regionen werden dann in mehrere Sites zusammengefasst. Eine Site entspricht einer Instanz von batman-adv (~10). Jede Region hat trotzdem eine eigene SSID, damit sich bei einer Aufteilung für die Endanwender keine Änderungen ergeben.

Hey Vermieter, ich will einen SUBNET PoP am Dach

Prinzipiell hätte jeder Mieter ein gesetzliches Recht auf SUBNET, da es sich um eine Verbesserung handelt. Erwähnenswert ist die Verpflichtung vom Mieter die Installation gemäß dem aktuellen Stand der Technik durchzuführen (oder zu lassen) und dass ggf. vom Vermieter die Verpflichtung zur Wiederherstellung des Urzustands bei Mietende auferlegt wird. Der obige Link zu Funkfeuer hat hier einige Details zu dem Thema zusammengefasst und bietet Vorlagen zur Übermittlung an Vermieter.

public/project/subnet/basics.txt · Last modified: 2021/04/13 18:08 by xoh