Matter używa protokołu IPv6 do komunikacji operacyjnej i korzysta z adresowania IPv6 Unicast i Multicast odpowiednio w przypadku 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 sieciach o dużej przepustowości, takich jak Wi-Fi i Ethernet, jak i w sieciach o małych opóźnieniach i małej przepustowości, takich jak Thread. Gdyby wszystkieMulticast pakiety z Wi-Fi były przekazywane doThread, przeciążylibyśmy sieć i 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 IPv6 w Threadpodstawowym przewodniku poopenthread.io.
Routery graniczne
Jak więc węzły mogą współistnieć w tym samym środowisku, korzystając z obu tych mediów transmisyjnych? 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 Matter i Thread 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:
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ż górne 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 sieciami mogą mieć kilka adresów Multicast określających nakładające się grupy węzłów w zakresie każdej sieci.
Porty
Matter używa portu 5540 do transmisji grupowych.