
Pełny stos Weave zawiera wiele elementów, ale większość funkcji jest pogrupowana w logiczne konstrukcje zwane profilami . Każdy profil odpowiada określonemu zestawowi funkcji Weave, który obejmuje:
- Protokoły
- Role protokołu (wydawca, subskrybent)
- Typy wiadomości
- Schematy i publikowane dane
- Kody stanu
- Kody błędów
Nie będziemy teraz zajmować się każdym z tych elementów, ponieważ różnią się one w zależności od profilu.
Jeśli chodzi o wiadomości, wiadomości profilowe są zwykle ogólnymi wiadomościami zakodowanymi w Weave TLV. Jednak jeśli przestrzeń jest na wagę złota lub nie ma potrzeby elastyczności w ładunku, wartość TLV nie jest używana. Echo i Heartbeat to przykłady profili, które nie kodują wiadomości w TLV.
W Weave wbudowanych jest wiele różnych profili:
Rzućmy okiem na kilka z nich.
Zarządzanie danymi
Profil centrum
zarządzania danymi zarządza wszystkimi żądaniami cech przy użyciu modelu publikowania i subskrypcji. Prawie wszystkie funkcje ekosystemu Nest do codziennej pracy są mapowane na zasoby i cechy w ramach schematu Weave.Schemat i profil zarządzania danymi omówimy później, ale ten profil jest koniem roboczym Weave.
Na przykład zmiana stanu uzbrojenia Nest Secure z poziomu urządzenia mobilnego wykorzystuje Zarządzanie danymi. Profil wysyła żądania od abonenta (urządzenia mobilnego) do innych zasobów w sieci szkieletowej (Nest Secure i usługa), które potwierdzają żądanie, zmieniają stan uzbrojenia w schemacie i wysyłają odpowiedzi potwierdzające zmianę.
Echo
Profil Echo
zapewnia podstawowy mechanizm testowania łączności sieciowej i opóźnień. Jest wzorowany na żądaniu echa ICMP i jest przeznaczony do podobnych zastosowań. Jest to analogiczne do pingowania w sieci, ale używa wiadomości Weave i szyfrowania, jeśli zostało określone.Ładunek echa składa się z dowolnych danych dostarczonych przez żądający węzeł i oczekuje się, że zostanie powtórzony dosłownie w odpowiedzi. Echo służy do testowania łączności, bezpieczeństwa i żywotności tkaniny Weave.
Bicie serca
Bicie serca
profil zapewnia środki do wskazania liveness z jednego węzła do innych węzłów w sieci. Bicie serca Weave jest zwykle wysyłane w regularnych odstępach czasu. Jeśli nie zostanie odebrany przed upływem skonfigurowanego limitu czasu, zakłada się, że węzeł uległ awarii.Bicie serca to sposób, w jaki można sprawdzić, czy węzeł Weave jest nadal podłączony do tkaniny. Na przykład bicie serca jest używane między Nest Detects a Nest Guard, aby zapewnić żywotność systemu Nest Secure.
Masowe przesyłanie danych
Profil
przesyłania danych (BDX) zapewnia możliwość przesyłania plików między węzłami. Pliki w tym kontekście mogą być danymi z czujników, dziennikami lub obrazami oprogramowania do aktualizacji bezprzewodowych.BDX może być obsługiwany przez różne niezawodne protokoły transportowe, w tym TCP i Weave Reliable Messaging.
Obsługa administracyjna
Istnieje wiele profili aprowizacji używanych do zadań związanych z parowaniem, uwierzytelnianiem i rejestracją usług.
Obsługa administracyjna sieci
Profil Obsługa administracyjna sieci
obsługuje takie zadania, jak skanowanie w poszukiwaniu sieci oraz dodawanie i włączanie ich dla zasobów w sieci .Dostarczanie usług
Profil usługi udostępniania
obsługuje takie zadania, jak parowanie zasobów z kontem lub rejestrowanie ich w usłudze.Provisioning Fabric
Profil
Fabric Provisioning obsługuje takie zadania, jak tworzenie, łączenie i opuszczanie sieci szkieletowej lub pobieranie konfiguracji sieci szkieletowej.Podsumować
Czego się nauczyłeś:
- Duża część funkcjonalności Weave jest zarządzana przez profili
- Profile to protokoły aplikacji, które odpowiadają określonemu zestawowi funkcji
- Każdy profil ma swój własny zestaw typów wiadomości , zwykle kodowanych przez Weave TLV