Выбор маршрутизатора, выбор маршрутизатора

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

Связанный доминирующий набор

Доминирующий набор OT Connected
Пример связного доминирующего множества

Маршрутизаторы должны формировать Connected Domination Set (CDS), что означает:

  1. Между любыми двумя маршрутизаторами существует путь только для маршрутизатора.
  2. Любой маршрутизатор в сети потоков может связаться с любым другим маршрутизатором, полностью оставаясь в пределах набора маршрутизаторов.
  3. Каждое конечное устройство в сети Thread напрямую подключено к маршрутизатору.

Распределенный алгоритм поддерживает CDS, что обеспечивает минимальный уровень избыточности. Каждое устройство изначально подключается к сети как конечное устройство (дочернее). По мере изменения состояния сети потоков алгоритм добавляет или удаляет маршрутизаторы для поддержания CDS.

Тема добавляет маршрутизаторы в:

  • Увеличьте покрытие, если сеть ниже порогового значения маршрутизатора 16.
  • Увеличение разнообразия путей
  • Поддерживать минимальный уровень резервирования
  • Расширьте возможности подключения и поддержите больше детей

Тема удаляет маршрутизаторы для:

  • Уменьшите состояние маршрутизации ниже максимального значения в 32 маршрутизатора.
  • При необходимости разрешите новые маршрутизаторы в других частях сети.

Обновите маршрутизатор

После подключения к сети Thread дочернее устройство может выбрать роль маршрутизатора. Прежде чем инициировать процесс запроса соединения MLE, ребенок отправляет сообщение запроса адреса лидеру, запрашивая идентификатор маршрутизатора. Если Лидер соглашается, он отвечает идентификатором Маршрутизатора, и Дочерний элемент обновляется до Маршрутизатора.

Затем процесс запроса соединения MLE используется для установления двунаправленных соединений маршрутизатор-маршрутизатор с соседними маршрутизаторами.

  1. Новый маршрутизатор отправляет запрос многоадресной связи соседним маршрутизаторам.
  2. Маршрутизаторы отвечают сообщениями Link Accept и Request .
  3. Новый маршрутизатор отвечает каждому маршрутизатору одноадресным сообщением Link Accept для установления соединения между маршрутизаторами.

Запрос на соединение — это запрос от маршрутизатора ко всем другим маршрутизаторам в сети потоков. Впервые становясь маршрутизатором, устройство отправляет запрос многоадресной связи на ff02::2 . Позже, после обнаружения других маршрутизаторов через объявления MLE, устройства отправляют одноадресные запросы на соединение.

Запрос ссылки OT MLE
Содержание сообщения запроса ссылки
Версия Версия протокола потока
Испытание Проверяет своевременность ответа по ссылке для предотвращения атак повторного воспроизведения.
Исходный адрес RLOC16 отправителя
Данные лидера Информация о лидере маршрутизатора, хранящаяся у отправителя (RLOC, идентификатор раздела, вес раздела).

Сообщение «Принятие и запрос соединения» представляет собой комбинацию сообщений «Принятие соединения» и «Запрос соединения». Thread использует эту оптимизацию в процессе запроса соединения MLE, чтобы уменьшить количество сообщений с четырех до трех.

Принятие и запрос ссылки OT MLE

Link Accept — это одноадресный ответ на запрос соединения от соседнего маршрутизатора, который предоставляет информацию о себе и принимает ссылку на соседний маршрутизатор.

Ссылка OT MLE Принять
Ссылка Принять Содержимое сообщения
Версия Версия протокола потока
Ответ Проверяет своевременность ответа по ссылке для предотвращения атак повторного воспроизведения.
Счетчик кадров ссылки Счетчик кадров 802.15.4 на отправителе
Счетчик кадров MLE Счетчик кадров MLE на отправителе
Исходный адрес RLOC16 отправителя
Данные лидера Информация о лидере маршрутизатора, хранящаяся у отправителя (RLOC, идентификатор раздела, вес раздела).

Переход на REED

Когда маршрутизатор переходит на REED, его каналы связи «маршрутизатор-маршрутизатор» отключаются, и устройство инициирует процесс подключения MLE для установления соединения «дочерний-родительский».

См. раздел «Присоединение к существующей сети» для получения дополнительной информации о процессе подключения MLE.

В некоторых сценариях может потребоваться установить одностороннюю линию приема.

После сброса маршрутизатора соседние маршрутизаторы могут по-прежнему иметь действующую линию приема с перезагруженным маршрутизатором. В этом случае перезагруженный маршрутизатор отправляет сообщение запроса соединения для повторного установления соединения маршрутизатор-маршрутизатор.

Конечное устройство также может захотеть установить канал приема с соседними неродительскими маршрутизаторами для повышения надежности многоадресной рассылки. Мы узнаем об этом больше, когда доберемся до многоадресной маршрутизации.

Резюме

Что вы узнали:

  • Маршрутизаторы в сети Thread должны образовывать Connected Domination Set (CDS).
  • Потоковые устройства обновляются до маршрутизаторов или понижаются до конечных устройств для поддержки CDS.
  • Процесс запроса соединения MLE используется для установления соединений маршрутизатор-маршрутизатор.

Проверьте свое понимание

Какие из этих правил не соблюдаются подключенным доминирующим набором (CDS)?
Только один маршрутизатор в сети Thread может быть граничным маршрутизатором.
Любой маршрутизатор в сети потоков может связаться с любым другим маршрутизатором, полностью оставаясь в пределах набора маршрутизаторов.
Между любыми двумя маршрутизаторами существует путь только для маршрутизатора.
Каждое конечное устройство в сети Thread напрямую подключено к маршрутизатору.
Почему маршрутизатор может быть удален из сети Thread?
Чтобы освободить каналы.
Разрешить выбор новых маршрутизаторов в других частях сети, когда это необходимо.
Чтобы уменьшить состояние маршрутизации ниже максимального значения в 32 маршрутизатора.
Что должно произойти, прежде чем REED, пытающийся стать маршрутизатором, сможет установить прямую связь с другими маршрутизаторами?
REED должен отправить сообщение с запросом адреса лидеру сети.
Лидер должен предоставить REED идентификатор маршрутизатора.
REED должен отправить запрос на соединение MLE.
Какое из следующих утверждений точно описывает, что происходит при переходе на более раннюю версию маршрутизатора?
Устройство должно инициировать процесс подключения MLE, чтобы установить новое соединение с сетью.
Устройство автоматически остается в сети, но как дочернее (REED).
Какой процесс используется для установления связей между маршрутизаторами?
Процесс подключения MLE.
Процесс запроса соединения MLE.
Процесс принятия и запроса ссылки.