OpenThread Border Router

Afficher la source sur GitHub

Un routeur de bordure Thread connecte un réseau Thread à d'autres réseaux basés sur l'IP, tels que le Wi-Fi ou l'Ethernet. Un réseau Thread nécessite un routeur de bordure pour se connecter à d'autres réseaux.

Architecture de l'agent de bord OTBR

Un routeur de bordure Thread est compatible avec les fonctions suivantes au minimum:

  • Connectivité IP bidirectionnelle entre les réseaux Thread et Wi-Fi/Ethernet
  • Découverte de services bidirectionnelle via mDNS (sur une liaison Wi-Fi/Ethernet) et SRP (sur un réseau Thread).
  • Thread sur l'infrastructure qui fusionne les partitions Thread sur des liens basés sur l'IP.
  • Mise en service Thread externe (par exemple, un téléphone mobile) pour authentifier et associer un appareil Thread à un réseau Thread.
Certifié Thread

L'implémentation d'un routeur de bordure par OpenThread est appelée OpenThread Border Router (OTBR), qui prend en charge une conception de coprocesseur radio (RCP). Lorsque vous choisissez votre plate-forme, tenez compte des avantages suivants de l'utilisation de RCP:

  • Plus de ressources: OpenThread peut exploiter les ressources du processeur hôte, qui sont généralement bien plus nombreuses que celles d'un SoC 802.15.4.
  • Plus économique: minimisez les besoins en ressources sur le SoC 802.15.4, ce qui peut conduire à une solution plus économique.
  • Débogage plus facile: comme la plupart du traitement se produit sur le processeur hôte, vous pouvez utiliser des outils de débogage plus performants sur le processeur hôte.
  • Micrologiciel de SoC 802.15.4 plus stable: le RCP n'implémente que le sous-MAC et le PHY, ce qui réduit la fréquence à laquelle le SoC 802.15.4 a besoin de mises à jour du micrologiciel.
  • Intégration plus facile à la pile réseau IPv6 de l'hôte: l'exécution d'OpenThread sur l'hôte permet une intégration plus directe à la pile IPv6 de l'hôte.

Fonctionnalités et services

OTBR inclut un certain nombre de fonctionnalités, dont les suivantes:

  • Thread Border Agent pour la mise en service externe
  • Délégation de préfixe DHCPv6 pour obtenir des préfixes IPv6 pour un réseau Thread
  • NAT64 pour se connecter aux réseaux IPv4
  • DNS64 pour permettre aux appareils Thread d'établir des communications par nom avec un serveur IPv4 uniquement
  • Pilote d'interface Thread utilisant la fonctionnalité intégrée d'OpenThread

Services de routeur de bordure

OTBR fournit les services suivants:

  • Éditeur mDNS : permet à un commissaire externe de découvrir un OTBR et son réseau Thread associé.
  • Générateur PSKc : pour générer des clés PSKc

Pare-feu OTBR

OTBR utilise iptables et ipset pour implémenter les règles de filtrage d'entrée suivantes:

  • Bloquez les paquets entrants initiés avec des sources d'adresses sur le lien, par exemple les adresses basées sur le préfixe de routage hors maillage (OMR) et de maillage local.
  • Bloquez les paquets unicast entrants dont l'adresse de destination n'est pas une adresse OMR ou une adresse unicast de domaine (DUA).
  • Bloquez les paquets unicast entrants dont l'adresse source ou de destination est de type "link-local". Notez que cette règle est gérée par le noyau et n'est pas définie explicitement.