OpenThread Border Router

Посмотреть исходный код на GitHub

Пограничный маршрутизатор потока соединяет сеть потока с другими сетями на основе IP, такими как Wi-Fi или Ethernet. Для сети Thread требуется пограничный маршрутизатор для подключения к другим сетям.

Архитектура пограничного агента OTBR

Пограничный маршрутизатор потоков минимально поддерживает следующие функции:

  • Двунаправленное IP-соединение между сетями Thread и Wi-Fi/Ethernet.
  • Двунаправленное обнаружение службы через mDNS (по каналу Wi-Fi/Ethernet) и SRP (по сети Thread).
  • Инфраструктура Thread-over, объединяющая разделы Thread по ссылкам на основе IP.
  • Ввод в эксплуатацию внешнего потока (например, мобильного телефона) для аутентификации и присоединения устройства потока к сети потока.
Тема сертифицирована

Реализация пограничного маршрутизатора OpenThread называется пограничным маршрутизатором OpenThread (OTBR) и поддерживает конструкцию радиосопроцессора (RCP) . При выборе платформы учитывайте следующие преимущества использования RCP:

  • Больше ресурсов: OpenThread может использовать ресурсы хост-процессора, которые обычно намного больше, чем предоставляет SoC 802.15.4.
  • Более рентабельно: минимизируйте требования к ресурсам на SoC 802.15.4, что может привести к более экономичному решению.
  • Легче отлаживать: поскольку большая часть обработки происходит на хост-процессоре, вы можете использовать более мощные инструменты отладки на хост-процессоре.
  • Более стабильная прошивка SoC 802.15.4: RCP реализует только суб-MAC и PHY, уменьшая частоту, с которой SoC 802.15.4 требует обновлений прошивки.
  • Упрощенная интеграция с сетевым стеком хоста IPv6: запуск OpenThread на хосте обеспечивает более прямую интеграцию со стеком хоста IPv6.

Особенности и услуги

OTBR включает в себя ряд функций, в том числе:

  • Веб-интерфейс для настройки и управления
  • Thread Border Agent для поддержки внешнего ввода в эксплуатацию
  • Делегирование префикса DHCPv6 для получения префиксов IPv6 для сети Thread
  • NAT64 для подключения к сетям IPv4
  • DNS64, чтобы позволить устройствам Thread инициировать связь по имени с сервером только для IPv4.
  • Драйвер интерфейса потока, использующий встроенную функцию OpenThread
  • Поддержка докера

Услуги пограничного маршрутизатора

ОТБР оказывает следующие услуги:

  • mDNS Publisher — позволяет внешнему уполномоченному обнаруживать OTBR и связанную с ним сеть Thread.
  • Генератор PSKc — для генерации ключей PSKc
  • Веб-служба — веб-интерфейс для управления сетью потоков.

Сторонние компоненты для служб Border Router Services включают Simple Web Server и Material Design Lite для структуры веб-интерфейса.

Брандмауэр OTBR

OTBR использует iptables и ipset для реализации следующих правил фильтрации входящего трафика:

  • Блокировать входящие пакеты, инициированные источниками адресов On-Link, например адресами Off-Mesh Routable (OMR) и Mesh-Local на основе префиксов.
  • Блокировать входящие одноадресные пакеты, адрес назначения которых не является адресом OMR или одноадресным адресом домена (DUA).
  • Блокировать входящие одноадресные пакеты, исходный адрес или адрес назначения которых являются Link-Local. Обратите внимание, что это правило обрабатывается ядром и не устанавливается явно.