Wątek i IPv6

Usługa Matter korzysta z IPv6 do komunikacji operacyjnej i wykorzystuje adresowanie IPv6 UnicastMulticast do uzyskiwania dostępu odpowiednio do węzłów i grup.

Niski poziom energii

Niektóre węzły Matter są połączone przewodowo i mają budżety energetyczne, które umożliwiają im ciągłe działanie. Inne typy węzłów, takie jak czujniki, muszą działać przez wiele lat na baterii, obsługując radio w sieciach o małej mocy, takich jak Thread. Architektura serwera proxy wraz z Threadurządzeniami Sleepy End umożliwia węzłom z pełną mocą zapewnianie funkcji zarówno na poziomie sieci, jak i aplikacji, co chroni ich węzły podrzędne przed energochłonnymi transakcjami.

Podstawową zaletą Matter jest to, że działa zarówno w przypadku mediów sieciowych o dużej przepustowości, takich jak Wi-Fi i Ethernet, jak i w przypadku mediów o małej opóźnieniu i małej przepustowości, takich jak Thread. Jeśli wszystkie pakiety Multicast z Wi-Fi byłyby przekierowywane do Thread, przeciążyłoby to sieć i możliwe, że doprowadziłoby do jej przeciążenia. Celem Thread jest umożliwienie korzystania z IPv6 w sieci mesh o niskim poborze mocy i małym opóźnieniu, a nie do przesyłania danych z dużą przepustowością. Chociaż pingi Thread w sieci lokalnej mają zazwyczaj RTT poniżej kilkudziesięciu milisekund, łączna przepustowość jest ograniczona do 250 kbps w interfejsie PHY IEEE 802.15.4. Z uwzględnieniem retransmisji pakietów i nadmiarowych danych typowa maksymalna przepustowość wynosi około 125 kb/s. Innymi słowy, jest to znacznie mniej niż w przypadku Wi-Fi.

Ramki w interfejsie PHY IEEE 802.15.4 mają rozmiar 127 bajtów, ale największa (i typowa) maksymalna jednostka przesyłania (MTU) pakietów IPv6 w Threadto 1280 bajtów. Dlatego pakiety IPv6 często trzeba dzielić na kilka ramek PHY. Ten proces jest zdefiniowany w RFC4944.

Więcej informacji znajdziesz w adresowaniu IPv6Thread Primer na stronie openthread.io.

Routery graniczne

Jak węzły mogą współistnieć w obu środkach transportu, będąc w tej samej sieci? Chociaż obie sieci korzystają z tych samych danych logowania na poziomie aplikacji (Matter), nie używają tej samej technologii łączenia. W tym scenariuszu sieć potrzebuje Thread routera brzegowego (BR), aby umożliwić połączenie. BR to węzły pośredniczące IPv6.

Routery zastępcze umożliwiają łączenie sieci zastępczych z zwykłymi sieciami. Sieć pomocnicza to sieć „ostatniej mili”, która zapewnia łączność zewnętrzną dla swoich członków, ale nie służy jako ścieżka sieci tranzytowej między innymi sieciami. Zazwyczaj Matter sieci stub są oparte na Thread. Więcej informacji o sieciach stubs znajdziesz w projektie RFC.

Dlatego BR są odpowiedzialne za łączenie sieci stubs z sąsiednią siecią infrastruktury, czyli lokalną siecią Wi-Fi lub Ethernet. Przekierowują tylko pakiety, które są istotne dla sieci Thread.

Proces ten polega na przypisaniu różnych prefiksów IPv6 do Thread i sąsiadujących sieci infrastruktury. W związku z tym BR przekierowuje tylko unicasty do lub z prefiksu IPv6 Thread.

Routery graniczne są też odpowiedzialne za:

  • automatycznie konfigurować prefiksy i trasy IPv6 zarówno w sieci Thread, jak i w sąsiednich sieciach infrastruktury, aby hosty po obu stronach routera brzegowego Thread mogły się komunikować.
  • publikowanie pakietów wykrywania mDNS DNS-SD w imieniu węzłów Thread, aby można je było wykryć w sąsiedniej sieci infrastruktury.

Więcej informacji znajdziesz w przewodniku Border Router na stronie openthread.io.

Multicast IPv6

Grupy wiadomości są również ważne, ponieważ umożliwiają jednoczesną kontrolę nad wieloma węzłami Matter za pomocą Multicast. Aby kierować ten ruch do sieci Thread, zarówno Matter, jak i Thread muszą stosować Unicast schemat adresowania IPv6 Multicast zdefiniowany w dokumencie RFC 3306.

Ta metoda umożliwia wybór węzłów docelowych pakietuMulticast na podstawie ich wspólnego prefiksu IPv6Unicast.

Adres Matter Multicast może wyglądać tak:

FF35:0040:FD<Fabric ID>00:<Group ID>

Tabela 1 przedstawia sposób tworzenia tego adresu:

Tabela 1. UnicastAdresy IPv6 oparte na prefiksach
Bity Opis
12 bitów 0xFF3
4 bity 0x05

Zakres: lokalny na stronie

8 bitów 0x00

zarezerwowane

8 bitów 0x40

Wskazuje 64-bitowy prefiks

8 bitów 0xFD

Określa prefiks ULA.

56 bitów Identyfikator materiału
8-bitowy 0x00
16-bitowy Identyfikator grupy

Więcej informacji znajdziesz w sekcji MulticastThread Primer oraz w samym dokumencie RFC.

Gdy tworzone są adresy IPv6 Multicast, zawierają one też 56 górnych bitów identyfikatora Fabric. Ważne jest to, że zakres adresów Multicast jest ograniczony do Fabric, podczas gdy adresy Unicast są wspólne dla wszystkich Fabric. Węzły z wieloma sieciami mogą mieć wiele adresów Multicast definiujących nakładające się grupy węzłów w ramach każdej sieci.

Porty

Matter używa portu 5540 do transmisji Multicast.