Na cały stos Weave znajduje się wiele elementów, ale większość funkcji jest grupowana w logiczne konstrukcje zwane profilami. Każdy profil odpowiada określonemu zestawowi funkcji Weave, który obejmuje:
- Protokoły
- Role protokołu (wydawca, subskrybent)
- Rodzaje wiadomości
- Schematy i opublikowane dane
- Kody stanu
- Kody błędów
Nie omówimy teraz każdego z tych elementów, ponieważ różnią się w zależności od profilu.
Jeśli chodzi o wiadomości, zazwyczaj są to ogólne wiadomości zakodowane w formacie TLV. Jeśli jednak ilość miejsca zależy od wartości premium lub nie jest potrzebna elastyczność ładunku, TLV nie jest używany. Echo i tętno to przykłady profili, które nie kodują wiadomości w TLV.
W usłudze Weave wbudowane są różne profile:
Przyjrzyjmy się kilku z nich.
Zarządzanie danymi
Profil zarządzania danymi
Zarządza wszystkimi żądaniami cech za pomocą modelu publikowania-subskrypcji. Prawie wszystkie funkcje ekosystemu Nest są wykorzystywane na potrzeby zasobów i cech charakterystycznych dla schematu Weave.Schemat i profil zarządzania danymi omówimy później, ale to właśnie jest koncepcja Weave.
Na przykład zmiana stanu uzbrojenia urządzenia Nest Secure z urządzenia mobilnego korzysta z zarządzania danymi. Profil wysyła żądania od subskrybenta (urządzenia mobilnego) do innych zasobów w tkaninie (Nest Secure i usługi), które potwierdzają żądanie, zmieniają stan uzbrojenia w schemacie i wysyłają odpowiedzi potwierdzające zmianę.
Pogłos
Profil Echo
to podstawowy mechanizm pozwalający przetestować połączenia sieciowe i opóźnienia. Model jest wytworzony na podstawie żądania echa ICMP i jest przeznaczony do podobnych zastosowań. Jest to odpowiednik pingu sieci, ale korzystające z wiadomości Weave i szyfrowania (jeśli zostały określone).Ładunek echa składa się z arbitralnych danych dostarczonych przez węzeł żądający i oczekuje się, że odpowiedź zostanie odczytana dosłownie. Echo służy do testowania połączeń, zabezpieczeń i żywotności materiału Weave.
Pakiet podtrzymujący
Profil heartbeat
wskazuje sposób życia jednego węzła w innych węzłach w sieci. Tętno jest zazwyczaj wysyłane w regularnych odstępach czasu. Jeśli nie otrzyma go przed skonfigurowanym limitem czasu, zakłada się, że węzeł nie zadziałał.Tętno to sposób na sprawdzenie, czy węzeł Weave nadal jest połączony z materiałem. Na przykład między urządzeniami Nest Detects i Nest Guard używa się pakietu podtrzymacyjnego, by zapewnić żywotność systemu Nest Secure.
Zbiorcze przenoszenie danych
Profil zbiorczego przesyłania danych (BDX)
Umożliwia przesyłanie plików między węzłami. Pliki w tym kontekście to np. dane z czujników, dzienniki lub obrazy oprogramowania służące do bezprzewodowych aktualizacji.BDX działa przy użyciu różnych niezawodnych protokołów transportowych, w tym TCP i Weave Reliable Messaging.
Udostępniam
Do zadań związanych z parowaniem, uwierzytelnianiem i rejestracją zasobów jest używanych kilka profili obsługi administracyjnej.
Obsługa sieci
Profil zarządzania siecią
obsługuje takie zadania jak skanowanie sieci oraz dodawanie i włączanie zasobów w tkaninie.Obsługa administracyjna usług
Profil Obsługa administracyjna
Wykonuje takie zadania jak parowanie zasobów z kontem lub rejestrowanie ich w usłudze.Obsługa administracyjna tkanin
Profil udostępniania materiału
obsługuje takie zadania jak tworzenie, dołączanie i opuszczanie tkaniny oraz pobieranie konfiguracji materiałów.Podsumowanie
Czego się nauczyliśmy:
- Znaczną część funkcji Weave zarządza profilami
- Profile to protokoły aplikacji odpowiadające konkretnym zestawom funkcji.
- Każdy profil ma własny zestaw typów wiadomości. , zwykle kodowany przez Weave TLV