Wątek i IPv6

Matter używa protokołu IPv6 do komunikacji operacyjnej i korzysta z adresowania IPv6 UnicastMulticast odpowiednio do uzyskiwania dostępu do węzłów i grup.

Niski pobór mocy

Niektóre Matter węzły są przewodowe i mają budżety energii, które pozwalają im na ciągłe włączanie radia. Inne typy węzłów, takie jak czujniki, muszą działać przez lata na baterii, a ich moduły radiowe muszą pracować w sieciach o niskim poborze mocy, takich jak Thread. Architektura proxy wraz z Threadurządzeniami końcowymi w trybie uśpienia umożliwia węzłom o pełnej mocy zapewnianie funkcji na poziomie sieci i aplikacji, które chronią węzły podrzędne przed energochłonnymi transakcjami.

Podstawową cechą Matter jest to, że działa zarówno w przypadku sieci o dużej przepustowości, takich jak Wi-Fi i Ethernet, jak i w przypadku sieci o małych opóźnieniach i małej przepustowości, takich jak Thread. Gdyby wszystkie Multicastpakiety z Wi-Fi były przekazywane do Thread, przeciążylibyśmy sieć, a nawet mogli ją zalać. Threadma na celu włączenie IPv6 w sieciach kratowych o niskim poborze mocy i niskich opóźnieniach, a nie przesyłanie danych o dużej przepustowości. Pingi ICMPv6 w sieci lokalnej mają zwykle czas RTT poniżej kilkudziesięciu milisekund, ale ich całkowita przepustowość jest ograniczona do 250 kbps w warstwie fizycznej IEEE 802.15.4.Thread Z uwzględnieniem retransmisji pakietów i narzutu typowa maksymalna przepustowość wynosi około 125 kb/s. Innymi słowy, jest o rzędy wielkości mniejsza niż w przypadku Wi-Fi.

Ramki w warstwie fizycznej IEEE 802.15.4 mają 127 bajtów, ale największa (i typowy) maksymalna jednostka przesyłania (MTU) pakietów IPv6 w Thread wynosi 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 sekcji Adresowanie IPv6Threadpodstawowym przewodniku po openthread.io.

Routery graniczne

Jak więc węzły mogą współistnieć w obu mediach transportowych w ramach tej samej struktury? Obie sieci mają te same dane logowania na poziomie aplikacjiMatter, ale nie korzystają z tej samej technologii połączeń. W takim przypadku sieć wymaga Thread routera brzegowego (BR), aby umożliwić połączenie. BR to routery IPv6 typu Stub.

Routery Stub umożliwiają połączenie między sieciami Stub a sieciami zwykłymi. Sieć Stub Network to sieć „ostatniej mili”, która zapewnia łączność zewnętrzną swoim członkom, ale nie służy jako ścieżka sieci tranzytowej między innymi sieciami. Zazwyczaj sieci MatterStub NetworksThread są oparte na protokole. Więcej informacji o sieciach stub znajdziesz w projekcie RFC.

Routery brzegowe są więc odpowiedzialne za połączenie między siecią Stub Network a sąsiednią siecią infrastruktury, czyli lokalną siecią Wi-Fi lub Ethernet. Przekazują one tylko pakiety istotne dla sieci Thread.

Odbywa się to przez przypisanie różnych prefiksów IPv6 do sieci Thread i sąsiednich sieci infrastruktury. Dlatego router brzegowy przekazuje tylko pakiety unicast do lub z Thread prefiksu IPv6.

Routery graniczne są też odpowiedzialne za:

  • automatyczne konfigurowanie prefiksów i tras IPv6 zarówno dla sieci Thread, jak i sąsiadujących sieci infrastruktury, aby hosty po obu stronach routera granicznego Thread mogły się komunikować.
  • publikowanie pakietów wykrywania mDNS DNS-SD w imieniu węzłówThread, aby można było je wykryć w sąsiedniej sieci infrastruktury.

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

Multicast IPv6

Ważne są też wiadomości grupowe, ponieważ umożliwiają jednoczesne sterowanie kilkoma Matter węzłami za pomocą Multicast. Aby kierować ten ruch do sieci Thread, sieci MatterThread implementują Unicastschemat adresowania IPv6 oparty na prefiksachMulticast zdefiniowany w RFC 3306.

Ta metoda umożliwia wybór węzłów docelowych pakietu na podstawie wspólnego prefiksu IPv6.MulticastUnicast

Na przykład adres Matter Multicast może wyglądać tak:

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

Tabela 1 zawiera szczegółowe informacje o tym, jak jest tworzony ten adres:

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

Zakres: lokalny w witrynie

8 bitów 0x00

zarezerwowany

8 bitów 0x40

Wskazuje 64-bitowy długi prefiks.

8 bitów 0xFD

Oznacza prefiks ULA

56 bitów Identyfikator tkaniny
8-bitowy 0x00
16-bitowy Identyfikator grupy

Więcej informacji znajdziesz w sekcji Multicast Thread wprowadzenia i w samym dokumencie RFC.

Gdy tworzone są adresy IPv6Multicast, zawierają one również 56 bitów identyfikatora sieci. Ważne jest to, że zakres Multicast jest ograniczony do sieci Fabric, a adresy Unicast są udostępniane między sieciami Fabric. Węzły z wieloma strukturami mogą mieć kilka adresów Multicast określających nakładające się grupy węzłów w zakresie każdej struktury.

Porty

Matter używa portu 5540 do transmisji grupowych.