Google is committed to advancing racial equity for Black communities. See how.

Плетение профилей

Плетение профилей

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

  • Протоколы
  • Роли протокола (издатель, подписчик)
  • Типы сообщений
  • Схемы и опубликованные данные
  • Коды состояния
  • Коды ошибок

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

Что касается обмена сообщениями, сообщения профиля обычно представляют собой общие сообщения, закодированные в Weave TLV. Однако, если пространство ограничено или нет необходимости в гибкости полезной нагрузки, TLV не используется. Echo и Heartbeat - это примеры профилей, которые не кодируют сообщения в TLV.

В Weave встроено множество профилей:

Профили
Общие службы каталогов Безопасность
управления данными Echo Heartbeat
Bulk Data Transfer Отчет о состоянии Описание устройства
Устройство управления Время Услуги Time Zone
Network Provisioning ткани Provisioning Service Provisioning
Обновление программного обеспечения Locale тревоги
Tunneling Токен Сопряжение

Давайте кратко рассмотрим некоторые из них.

Управление данными

Управление данного профиль управляет всеми запросами черт с использованием публикацией-подпиской модели. Почти все функциональные возможности экосистемы Nest для повседневной работы отображаются на ресурсы и характеристики как часть схемы Weave.

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

Например, для изменения состояния защиты Nest Secure с мобильного устройства используется Управление данными. Профиль отправляет запросы от абонента (мобильного устройства) к другим ресурсам в структуре (Nest Secure и сервис), которые подтверждают запрос, изменяют состояние охраны в схеме и отправляют ответы, подтверждающие изменение.

Эхо

Echo профиль обеспечивает базовый механизм для подключения тестовых сетевого и латентности. Он смоделирован на основе эхо-запроса ICMP и предназначен для аналогичного использования. Это аналог сетевого пинга, но с использованием сообщений Weave и шифрования, если это указано.

Полезная нагрузка Echo состоит из произвольных данных, предоставленных запрашивающим узлом, и ожидается, что они будут дословно отражены в ответе. Echo используется для проверки возможности подключения, безопасности и работоспособности структуры Weave.

Стук сердца

Сердцебиения профиль обеспечивает средство для указания живучести одного узла к другим узлам в сети. Сердцебиение Weave обычно отправляется через равные промежутки времени. Если не получено до истечения настроенного тайм-аута, предполагается, что узел отказал.

Heartbeat - это то, как вы можете проверить, подключен ли узел Weave к фабрике. Например, контрольное сообщение используется между Nest Detects и Nest Guard для обеспечения работоспособности системы Nest Secure.

Массовая передача данных

Bulk Data Transfer (BDX) профиль обеспечивает возможность передачи файлов между узлами. Файлы в этом контексте могут быть данными датчиков, журналами или образами программного обеспечения для беспроводных обновлений.

BDX может работать с различными надежными транспортными протоколами, включая TCP и Weave Reliable Messaging.

Подготовка

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

Сетевая подготовка

В сети Provisioning ручки профильных задачи , такие как сканирование сетей, а также добавление и включение их ресурсы в ткани.

Предоставление услуг

Службы Provisioning ручки профильных задачи , такие как спаривание ресурсов на счет или их регистрации в службе.

Подготовка ткани

Ткань Provisioning ручки профильные задачи , такие как создание, присоединение, и оставляя ткань, или получить ткань конфигурации.

Резюме

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

  • Большая часть функциональности Плетение управляет профилями
  • Профили - это протоколы приложений, которые соответствуют определенному набору функций.
  • Каждый профиль имеет свой собственный набор сообщений типов , как правило , кодируемый Плетение TLV