Посмотреть исходный код на GitHub
Роли пересылки
В сети Thread узлы разделены на две роли пересылки:
Маршрутизатор
Маршрутизатор — это узел, который:
- пересылает пакеты на сетевые устройства
- предоставляет услуги безопасного ввода в эксплуатацию для устройств, пытающихся подключиться к сети
- держит трансивер всегда включенным
Конечное устройство
Конечное устройство (ED) — это узел, который:
- связывается в основном с одним маршрутизатором
- не пересылает пакеты на другие сетевые устройства
- может отключить свой трансивер, чтобы уменьшить мощность
Типы устройств
Кроме того, узлы включают в себя несколько типов.
Полнопоточное устройство
Полнопоточное устройство (FTD) всегда включает радиомодуль, подписывается на многоадресный адрес всех маршрутизаторов и поддерживает сопоставление адресов IPv6. Существует три типа ФТД:
- Маршрутизатор
- Конечное устройство, подходящее для маршрутизатора (REED) — можно повысить до маршрутизатора.
- Полное конечное устройство (FED) — невозможно повысить до маршрутизатора.
FTD может работать как маршрутизатор (родительский) или конечное устройство (дочерний).
Устройство с минимальной резьбой
Устройство с минимальным потоком не подписывается на многоадресный адрес всех маршрутизаторов и пересылает все сообщения своему родительскому устройству. Существует два типа МПД:
- Минимальное конечное устройство (MED) — трансивер всегда включен, ему не нужно запрашивать сообщения от родительского устройства.
- Sleepy End Device (SED) — обычно отключен, время от времени просыпается для опроса сообщений от своего родителя.
MTD может работать только как конечное устройство (дочернее).
Обновление и понижение версии
Когда REED является единственным узлом, доступным для нового конечного устройства, желающего присоединиться к сети Thread, оно может обновиться и работать в качестве маршрутизатора:
И наоборот, когда у маршрутизатора нет дочерних элементов, он может понизить свою версию и работать как конечное устройство:
Другие роли и типы
Лидер темы
Лидер потока — это маршрутизатор, который отвечает за управление набором маршрутизаторов в сети потоков. Он динамически выбирается для обеспечения отказоустойчивости, а также собирает и распределяет информацию о конфигурации по всей сети.
Пограничный маршрутизатор
Пограничный маршрутизатор — это устройство, которое может пересылать информацию между сетью Thread и сетью, не поддерживающей Thread (например, Wi-Fi). Он также настраивает сеть потоков для внешнего подключения.
Любое устройство может служить пограничным маршрутизатором.
Перегородки
Сеть потоков может состоять из разделов. Это происходит, когда группа устройств Thread больше не может взаимодействовать с другой группой устройств Thread. Каждый раздел логически работает как отдельная сеть потоков со своим собственным лидером, назначениями идентификатора маршрутизатора и сетевыми данными, сохраняя при этом одни и те же учетные данные безопасности для всех устройств во всех разделах.
Разделы в сети Thread не имеют беспроводного соединения друг с другом, и если разделы восстанавливают соединение, они автоматически объединяются в один раздел.
Обратите внимание, что использование «сети потоков» в этом руководстве предполагает наличие одного раздела. При необходимости ключевые понятия и примеры поясняются термином «раздел». Разделы подробно рассматриваются далее в этом руководстве.
Ограничения устройства
Существуют ограничения на количество типов устройств, поддерживаемых одной сетью потоков.
Роль | Лимит |
---|---|
Лидер | 1 |
Маршрутизатор | 32 |
Конечное устройство | 511 на маршрутизатор |
Поток пытается поддерживать количество маршрутизаторов в диапазоне от 16 до 23. Если REED подключается как конечное устройство, а количество маршрутизаторов в сети меньше 16, он автоматически повышает себя до уровня маршрутизатора.
Резюме
Что вы узнали:
- Потоковое устройство является либо маршрутизатором (родительским), либо конечным устройством (дочерним).
- Потоковое устройство представляет собой либо полнопоточное устройство (поддерживает сопоставление адресов IPv6), либо минимальное поточное устройство (пересылает все сообщения своему родительскому устройству).
- Конечное устройство, подходящее для маршрутизатора, может повысить себя до уровня маршрутизатора и наоборот.
- В каждом разделе сети Thread есть лидер для управления маршрутизаторами.
- Пограничный маршрутизатор используется для соединения сетей Thread и Non-Thread.
- Сеть потоков может состоять из нескольких разделов.