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

Посмотреть исходный код на 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 маршрутизатора.
Правильный. Сети потоков стремятся поддерживать оптимальное количество маршрутизаторов. Максимальное количество маршрутизаторов, которое должно быть в любой сети Thread, равно 32.
Чтобы освободить каналы.
Неверно. Количество маршрутизаторов не имеет никакого отношения к использованию канала или пропускной способности.
Разрешить выбор новых маршрутизаторов в других частях сети, когда это необходимо.
Правильный. Уменьшение количества активных маршрутизаторов в одной части сети Thread увеличивает ее способность наращивать пропускную способность маршрутизации в других местах.
Что должно произойти, прежде чем REED, пытающийся стать маршрутизатором, сможет установить прямую связь с другими маршрутизаторами?
REED должен отправить сообщение с запросом адреса лидеру сети.
Правильный.
Лидер должен предоставить REED идентификатор маршрутизатора.
Правильный. Без идентификатора маршрутизатора REED остается дочерним устройством.
REED должен отправить запрос на соединение MLE.
Неправильный. Запрос соединения MLE — это то, как устройство устанавливает соединения с другими маршрутизаторами, когда оно становится маршрутизатором.
Какое из следующих утверждений точно описывает, что происходит при переходе на более раннюю версию маршрутизатора?
Устройство автоматически остается в сети, но как дочернее (REED).
Неправильный. При переходе на более раннюю версию маршрутизатора требуется выполнить больше действий.
Устройство должно инициировать процесс подключения MLE, чтобы установить новое соединение с сетью.
Правильный. Устройство, которое переходит с маршрутизатора на REED, отключается и должно заново согласовать свое подключение к сети.
Какой процесс используется для установления связей между маршрутизаторами?
Процесс запроса соединения MLE.
Правильный.
Процесс принятия и запроса ссылки.
Неверно. Не существует такого понятия, как процесс принятия и запроса ссылки. Сообщения подтверждения и запроса соединения отправляются маршрутизаторами в ответ на сообщения запроса соединения как часть процесса запроса соединения MLE.
Процесс подключения MLE.
Неверно. Процесс MLE Attach — это процесс, посредством которого устройство присоединяется к существующей сети Thread.