Ein Thread-Border-Router verbindet ein Thread-Netzwerk mit anderen IP-basierten Netzwerken wie WLAN oder Ethernet. Für ein Thread-Netzwerk ist ein Border Router erforderlich, um eine Verbindung zu anderen Netzwerken herzustellen.
Ein Thread-Border-Router unterstützt die folgenden Funktionen minimal:
- Bidirektionale IP-Verbindung zwischen Thread- und WLAN-/Ethernet-Netzwerken.
- Bidirektionale Diensterkennung über mDNS (über eine WLAN-/Ethernet-Verbindung) und SRP (in einem Thread-Netzwerk).
- Thread-over-Infrastruktur, die Thread-Partitionen über IP-basierte Verknüpfungen zusammenführt.
- Externe Thread-Inbetriebnahme (z. B. ein Smartphone), um ein Thread-Gerät mit einem Thread-Netzwerk zu authentifizieren und zu verbinden.
Die Implementierung eines Border Routers in OpenThread wird als OpenThread Border Router (OTBR) bezeichnet und unterstützt ein RCP-Design (Radio Co-Processor). Berücksichtigen Sie bei der Auswahl Ihrer Plattform die folgenden Vorteile von RCP:
- Mehr Ressourcen: OpenThread kann die Ressourcen des Host-Prozessors nutzen, was in der Regel viel mehr ist, als ein 802.15.4-SoC bietet.
- Kostengünstiger: Minimieren Sie den Ressourcenbedarf auf dem 802.15.4-SoC, was zu einer kostengünstigeren Lösung führen kann.
- Einfachere Fehlerbehebung: Da der Großteil der Verarbeitung auf dem Hostprozessor erfolgt, können Sie leistungsfähigere Debugging-Tools auf dem Hostprozessor verwenden.
- Stabilere 802.15.4-SoC-Firmware: RCP implementiert nur den Sub-MAC und PHY, wodurch sich die Häufigkeit verringert, mit der 802.15.4-SoC Firmware-Updates benötigt.
- Einfachere Integration mit dem IPv6-Netzwerkstack des Hosts: Mit OpenThread auf dem Host lässt sich der IPv6-Stack des Hosts direkter einbinden.
Funktionen und Dienste
OTBR bietet unter anderem folgende Funktionen:
- Web-GUI für Konfiguration und Verwaltung
- Thread-Border-Agent zur Unterstützung der externen Provision
- DHCPv6-Präfixdelegierung zum Abrufen von IPv6-Präfixen für ein Thread-Netzwerk
- NAT64 für die Verbindung mit IPv4-Netzwerken
- DNS64, damit Thread-Geräte die Kommunikation mit dem Namen an einen reinen IPv4-Server starten können
- Thread-Schnittstellentreiber mit der integrierten Funktion von OpenThread
- Docker-Unterstützung
Border Router-Dienste
OTBR bietet die folgenden Dienste:
- mDNS-Publisher: Mit dieser Richtlinie kann ein externer Beauftragter ein OTBR und das zugehörige Thread-Netzwerk ermitteln
- PSKc-Generator – zur Generierung von PSKc-Schlüsseln
- Webdienst – Web-UI für die Verwaltung eines Thread-Netzwerks
Zu den Drittanbieterkomponenten für Border Router-Dienste gehören ein einfacher Webserver und Material Design Lite für das Framework der Web-UI.
OTBR-Firewall
OTBR verwendet iptables
und ipset
, um die folgenden Filterregeln für eingehenden Traffic zu implementieren:
- Eingehende Pakete, die über On-Link-Adressquellen initiiert wurden, z. B. Off-Mesh-Weiterleitungen (OMR) und Mesh-Local-Präfixe.
- Eingehende Unicast-Pakete blockieren, deren Zieladresse keine OMR-Adresse oder Domain Unicast-Adresse (DUA) ist.
- Eingehende Unicast-Pakete blockieren, deren Quell- oder Zieladresse Link-Local ist. Beachten Sie, dass diese Regel vom Kernel verarbeitet und nicht explizit festgelegt wird.