Thread e IPv6

Matter usa IPv6 para sus comunicaciones operativas. aprovecha IPv6 Unicast y Multicast direccionamiento para acceder a sus nodos y grupos, respectivamente.

Alimentación baja

Algunos nodos Matter son con cable y tienen presupuestos de energía que les permiten mantener sus radios encendidas de forma continua. Otros tipos de nodos, como los sensores, tienen requisitos para funcionar durante años con una batería, y operan sus radios en redes de bajo consumo, como Thread. El proxy arquitectura, junto con Thread dispositivos finales con sueño, permite que los nodos con tecnología completa proporcionen el nivel de red que aísla sus nodos secundarios de las aplicaciones que consumen mucha energía transacciones de contenedores.

Un aspecto fundamental de Matter es que funciona en medios de red de alta capacidad de procesamiento, como Wi-Fi y Ethernet, pero también en baja latencia y baja ancho de banda, como Thread. Si todas Se hizo un puente de Multicast paquetes de Wi-Fi a Thread, sobrecargaríamos la red y, posiblemente, inundarla. El objetivo de Thread es habilitar IPv6 con bajo consumo con redes en malla de baja latencia y no en la transferencia de datos de ancho de banda alto. Si bien los pings ICMPv6 de Thread en una red local suelen tener una RTT de unas pocas decenas de milisegundos, su ancho de banda total se limita a 250 Kbps en el PHY IEEE 802.15.4. Con las retransmisiones de paquetes y la sobrecarga, es posible es de alrededor de 125 Kbps. En otras palabras, órdenes de magnitud menores que Wi-Fi

Los marcos del IEEE 802.15.4 PHY son de 127 bytes, pero los más grandes (y típicos) unidad de transmisión máxima (MTU) de paquetes IPv6 en Thread es de 1,280 bytes. Por lo tanto, los paquetes IPv6 a menudo deben dividirse en varias tramas PHY. Este proceso se define por RFC4944.

Para obtener más información, consulta Direccionamiento IPv6 en el manual Thread openthread.io.

Routers de borde

Entonces, ¿cómo pueden coexistir los nodos en ambos medios de transporte mientras están en el mismo tejido? Aunque ambas redes comparten credenciales Matter a nivel de la aplicación, no comparten la misma tecnología de vínculo. En este caso, el red necesita un Thread Router de borde (BR) para habilitar la conectividad. Los BR son routers IPv6 auxiliares.

Los routers de stub permiten la conectividad entre las redes de stub y las redes normales. Stub Network es la red de "arriba" que proporciona conectividad externa a entre sus miembros, pero no sirve como una ruta de red de tránsito entre otras redes. Por lo general, las redes auxiliares Matter son Se basa en Thread. Consulta el borrador de RFC para obtener más información sobre las redes stub.

Por lo tanto, las BR tienen la responsabilidad de ser el nexo entre el código auxiliar y la red de infraestructura adyacente, que es la red de Wi-Fi o en la red Ethernet. Reenvían solo los paquetes que son relevantes para la Red Thread.

Este proceso se lleva a cabo mediante la asignación de distintos prefijos IPv6 a Thread y redes de infraestructura adyacentes. Así, Brasil solo reenvía unicasts hacia o desde el prefijo IPv6 Thread.

Los routers de borde también son responsables de lo siguiente:

  • configurar automáticamente los prefijos y las rutas IPv6 para Thread y las redes de infraestructura adyacentes, de modo que los hosts a ambos lados del router de frontera Thread puedan comunicarse
  • publicar paquetes de descubrimiento de DNS-SD de mDNS en nombre de Thread nodos, para que puedan detectarse en el adyacente de Google Cloud.

Para obtener más información, consulta el router de borde. en openthread.io.

Multidifusión IPv6

Los mensajes grupos también son importantes, ya que permiten el control simultáneo de varios nodos Matter a través de Multicast. En para enrutar este tráfico a la red Thread, Matter y Thread implementan el Unicast IPv6 basado en prefijos Multicast Esquema de direccionamiento definido por el RFC 3306.

Este método permite seleccionar los nodos de destino de un Multicast paquete en función de su IPv6 compartida Unicast.

Por ejemplo, una dirección Multicast de Matter podría verse de la siguiente manera:

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

En la tabla 1, se detalla cómo se construye esta dirección:

Tabla 1: Unicast Direcciones IPv6 basadas en prefijos
Bits Descripción
12 bits 0 × FF3
4 bits 0 × 05

Alcance: sitio-local

8 bits 0 × 00

reservado

8 bits 0 × 40

Indica un prefijo largo de 64 bits.

8 bits 0 × FD

Designa un prefijo ULA

56 bits ID de Fabric
8 bits 0 × 00
16 bits ID del grupo

Puedes encontrar más información en el Multicast del Primer de Thread y en la RFC propia.

Cuando se forman las direcciones Multicast de IPv6, también incluyen el de 56 bits superiores del ID de Fabric. La implicación importante es que el alcance Multicast está dentro de Fabric, mientras que Unicast. se comparten entre Fabrics. Los nodos con muchas tejidos pueden potencialmente tener varias direcciones Multicast que definen el nodo superpuesto Grupos con alcance en cada tejido.

Puertos

Matter usa el puerto 5540 para sus transmisiones multicast.