Skip to main content

Unificação da IoT da casa inteligente com um protocolo onipresente baseado em IP

Desmistificação da especificação Matter 1.0 e prognósticos da conectividade da IoT

Jean-Jacques DeLisle para a Mouser Electronics

Introdução


A especificação Matter 1.0 é o ponto culminante da intensa colaboração do setor entre as centenas de principais interessados na conectividade da Internet das Coisas (IoT). Recentemente, a Connectivity Standards Alliance (CSA) lançou o programa padrão e de certificação, cujo objetivo é trazer uma nova era de conectividade da IoT que cause impacto em todos os dispositivos da IoT para a casa inteligente, desde silício ao de venda. O objetivo do Matter 1.0 é oferecer um protocolo único baseado em IP capaz de unir a conectividade da IoT para casa inteligente em todo o mundo.
Este artigo analisa a arquitetura fundamental, a segurança, o transporte e o modelo de interação do Matter 1.0 e o que isto significa para o futuro da casa inteligente. O artigo termina com uma seção dedicada a informar os leitores sobre as opções de desenvolvimento ideais para o desenvolvimento do Matter 1.0 em Wi-Fi, desde o desenvolvimento rápido de protótipos até os casos de uso de desenvolvimento completo.

Principais especificações Matter 1.0


Em essência, a especificação Matter 1.0 é uma solução de interoperabilidade em camada de aplicação para oferecer conectividade entre dispositivos para casa inteligente usando o Protocolo de Internet (IP). Inclui uma camada de aplicação e uma pilha de camada de transporte. A especificação pretende ser um padrão completo, mas este artigo observa outras referências que são significativas para a especificação. Uma observação importante é que a Especificação Matter R1.0 tem precedência sobre o Matter SDK disponível em github.com.

A arquitetura
do Matter é baseada em IPv6 e desenvolvida como um protocolo de comunicação especificamente para dispositivos da casa inteligente. Ela consiste em uma camada de aplicação e uma camada de rede (Figura 1). A camada de rede é composta de uma camada de transporte (TCP e UDP), uma camada de rede (IPv6) e uma camada de conectividade/mídia (Ethernet, Wi-Fi, Thread e IEEE 802.15.4). Essa abordagem permite a divisão eficiente de responsabilidades e o objetivo é oferecer um nível suficiente de encapsulamento entre as camadas da pilha de protocolos.
 


Figura 1: Camadas de aplicação e rede do Matter R1.0. (Fonte: Connectivity Standards Alliance)

A especificação foi desenvolvida com o pensamento de que a maioria das interações seguirá a progressão por meio da pilha, conforme visto na Tabela 1.

Camada

Descrição

Aplicação

A lógica de negócios de alto nível de um dispositivo

Modelo de dados

Elementos de dados e verbos que suportam funções de aplicação

Modelo de interação

Interações entre o cliente e o dispositivo do servidor

Diagrama de ação

Serialização em formato binário compactado prescrito para codificação de transmissão em rede

Segurança

Criptografia de quadros de ação codificados, anexados com código de autenticação de mensagem

Enquadramento de mensagem + roteamento

Construção de formato de carga útil com campos de cabeçalho obrigatórios e opcionais que especificam propriedades e informações de roteamento lógico da mensagem

Enquadramento de IP + Gerenciamento de transporte

Gerenciamento de dados do IP

Tabela 1: Descrições da arquitetura em camadas (Fontes: Connectivity Standards Alliance e Mouser Electronics)

Como o Matter 1.0 é baseado em IPv6, praticamente qualquer rede compatível com IPv6 é compatível com a especificação, desde que suporte vários padrões IPv6. No entanto, esta versão padrão inicial é focada em ajudar as camadas de conectividade Ethernet, Wi-Fi e Thread. Portanto, a especificação está restrita a essas três camadas de conectividade neste estágio.

A especificação Matter 1.0 permite a operação fora de uma infraestrutura IPv6 roteável globalmente de modo que intranets sem rede ou com firewall possam suportar uma rede Matter. Isso é importante nas situações em que um provedor de serviços de Internet (ISP) não suporta IPv6 adequadamente com o equipamento fornecido nas instalações do consumidor. Além disso, como a especificação Matter 1.0 trata as redes como recursos compartilhados, várias redes Matter podem estar presentes nas mesmas redes IP constituintes.

Este protocolo pode suportar comunicações locais que cobrem uma ou mais sub-redes IPv6, com redes canônicas, incluindo sub-redes Ethernet/Wi-Fi e sub-redes de baixa potência e com perdas (LLN), como Thread. O Matter pode ser operado como uma rede única (por exemplo, uma única rede Wi-Fi ou Thread) ou como uma topologia de rede em estrela, com várias redes periféricas interligadas por uma rede de hub central (por exemplo, uma rede Ethernet/Wi-Fi doméstica). Para que as comunicações cruzem um limite de rede, é necessário um roteador de borda.

Segurança e criptografia
O protocolo Matter suporta vários administradores (multi-admin) sem raízes de confiança comuns. O Matter também apresenta um conceito chamado Fabric, uma coleção de dispositivos Matter que compartilham uma raiz confiável. Assim, a operação multi-admin é endereçada por vários Fabrics e é uma parte central do escopo de nomenclatura. Integração, comunicações seguras e uma parte de dados com escopo Fabric do modelo de dados permitem a multifuncionalidade do Fabric. Como membro de vários Fabrics, um dispositivo Matter pode ter várias IDs de nó. Isso é possível uma vez que o Matter depende de uma raiz operacional de confiança ou autoridade de certificação raiz (CA) identificada por uma chave pública (Root PK), que é usada para alocar os identificadores corretos com escopo Fabric. O Matter usa um gerenciador de domínio administrativo para conter a colaboração com o responsável e sua CA raiz, juntamente com outros armazenamentos de dados. A chave privada da CA é protegida, impossível de adivinhar e não pode ser obtida, e isso implica uma chave pública exclusiva globalmente. Dentro de uma CA raiz, é usado um identificador exclusivo de 64 bits. Além disso, um Fabric ID primordial reservado permite um conjunto de privilégios de controle de acesso inicial usados com as sessões iniciais de comissionamento; isso significa que antes do comissionamento principal, um dispositivo Matter não tem raízes operacionais pré-alocadas de confiança ou IDs operacionais.

A criptografia de chave pública do Matter e as assinaturas digitais são protegidas usando uma abordagem de criptografia de curva elíptica baseada na curva NIST P-256 (Secp256r1). As operações criptográficas de chave compartilhada são protegidas usando modos AES estabelecidos, e o SPAKE2+ é usado para autenticação baseada em senha fora da banda. Além disso, todas as mensagens unicast Node-to-Node (N2N) têm proteção de reprodução, são autenticadas e protegidas.

O Matter utiliza uma variedade de blocos de construção de protocolo criptográfico, algoritmos e dados primitivos. As cifras de bloco simétrico também oferecem segurança de mensagem neste protocolo. Para proteger todas as mensagens unicast e multicast entre os nós que exigem proteção de confidencialidade e integridade com autenticação de origem, a Authenticated Encryption with Associated Data (AEAD) deve ser usada como dado primitivo.

Além disso, o protocolo usa o Certificate-Authenticated Session Establishment (CASE) ou Password-Authenticated Connection Establishment (PASE) para garantir o estabelecimento de sessão segura, o que habilita o canal seguro e a camada de mensagem (Figura 2) para que haja comunicação segura entre os nós. Um Protocolo de Canal Seguro é empregado para definir o plano de controle para funções de canal seguro. Uma função de Atestado de Dispositivo também é usada com a Matter para estabelecer confiança entre entidades antes do compartilhamento de qualquer informação confidencial (ou seja, credenciais ou chaves). As funções Certificado de Atestado de Dispositivo e Declaração de Certificação são componentes do mecanismo de Atestado de Dispositivo Matter.  

Figura 2: Pilha de camada de mensagem. (Fonte: Connectivity Standards Alliance)

Modelo de dados
A especificação do Modelo de Dados Matter é um grupo de especificações derivadas do Modelo de Arquitetura Dotdot e do Capítulo 2 da especificação Zigbee Cluster Library (ZCL) e desenvolvida para ser independente da codificação subjacente, mensagem, rede, transporte e outras camadas. O objetivo do Modelo de Dados para Matter é estender e definir mais completamente uma arquitetura de modelagem de dados sem violar as especificações de cluster certificáveis definidas por ZCL. O modelo de dados é implementado na camada de aplicativo da pilha de comunicação e define principalmente os elementos de primeira ordem e o conjunto de nomes do modelo de dados. Portanto, é denotado como um metamodelo do modelo de dados.

A seção Modelo de Dados da especificação Matter define Fabric como um conjunto de nós que interagem acessando elementos do modelo de dados definidos pelo modelo de interação. Esta seção também estabelece que "um nó encapsula um recurso exclusivo e endereçável na rede que possui um conjunto de funções e capacidades que um usuário reconhece distintamente como um todo funcional". Além disso, explica que um nó é normalmente um dispositivo físico ou uma instância lógica de um dispositivo físico. Um endpoint também é definido como uma instância, seja um serviço ou dispositivo virtual, indicado por um tipo de dispositivo. Outras definições dentro do modelo de dados incluem clusters, comandos, atributos, elementos globais, eventos, tipos de dispositivos, não padrão, campos de dados, tipos de dados e extensões específicas do fabricante.

Modelo de interação
Assim como o modelo de dados, o modelo de interação Matter é mantido de forma independente, é agnóstico/desacoplado das camadas inferiores e define interações, transações e ações entre os nós. Também como no modelo de dados, as raízes dos modelos de interação são derivadas do Capítulo 2 de ZCL quanto aos comandos e interação ZCL. O Matter 1.0 aborda as seguintes lacunas no ZCL:

  • Suporte para mensagem com vários elementos
  • Relatórios sincronizados
  • Redução de tipos de mensagens (comandos e ações)
  • Suporte a tipos de dados complexos em todas as mensagens
  • Eventos
  • Ataques de interceptação

O modelo de interação foi desenvolvido para ser alinhado às especificações de cluster ZCL atuais e continuar o suporte contínuo da evolução do cluster. Especificamente, o modelo de interação define uma camada de abstração que abstrai as interações das outras camadas (ou seja, segurança, transporte, formato de mensagem e codificação). Esta seção descreve uma ação como "uma única comunicação lógica de um nó de origem para um ou mais nós de destino. Uma ação é transmitida por uma ou mais mensagens." Uma transação é definida como uma sequência de ações, enquanto uma interação é uma sequência de transações. Pode haver trocas dentro do contexto de um acesso de Fabric ou não. Uma interação entre um iniciador e um destino pode ser um nó ou um grupo. Os quatro tipos de interação são Read (Ler), Subscribe (Inscrever), Write (Gravar) e Invoke (Invocar) (Tabela 2).

Interação

Transações

Descrição

Ler interação

Ler

Esta interação é usada para obter atributos de cluster e/ou dados de evento.

Inscrever interação

Inscrever, relatório

Esta interação é uma inscrição para atributos de cluster e/ou dados de evento.

Gravar interação

Gravar

Esta interação é usada para modificar atributos de cluster.

Invocar interação

Invocar

Esta interação é usada para transmitir comandos de cluster.

Tabela 2: Quatro tipos de interações (Fonte: Connectivity Standards Alliance)

Uma transação pode ser parte da totalidade de uma interação. Uma ação em uma transação é a primeira ação iniciada por um único nó ou tem um alvo de destino que é um único nó ou grupo de nós (unicast ou group cast). Uma mensagem Matter, ou várias, podem ser usadas para comunicar uma ação.

Modelo de sistema
O modelo de sistema Matter define um sistema como "um conjunto de nós e relacionamentos persistentes que automatizam o fluxo de dados e o controle com base em estímulos locais ou externos". Além disso, o modelo do sistema acomoda uma ponte para dispositivos da IoT não Matter em um Fabric, permitindo que os dispositivos tradicionais não Matter de um usuário funcionem com dispositivos Matter (Figura 3).
 
Figura 3: Princípio de conexão de dispositivos Matter com dispositivos não Matter. (Fonte: Connectivity Standards Alliance)

Desenvolvimento de hardware compatível com Matter 1.0


Existem vários objetivos associados ao desenvolvimento do Matter 1.0, incluindo o desenvolvimento rápido de protótipos usando kits pré-fabricados, construção de uma prova de conceito com recursos exclusivos ou desenvolvimento completo com um sistema RF completo que está próximo de um modelo de produção final. No desenvolvimento de dispositivos Matter, é essencial lembrar que Matter 1.0 acompanha o topo dos protocolos de rede IP sem fio (ou seja, Thread ou Wi-Fi). Sendo assim, um desenvolvedor precisará escolher o protocolo que melhor corresponda a um determinado projeto. Se o objetivo for desenvolver redes de malha sem fio sofisticadas e eficientes com ênfase em conectividade sem fio robusta, o Thread é uma boa opção. Se o objetivo é estabelecer uma rede sem fio enfatizando o baixo consumo de energia e a conectividade ideal, Wi-Fi provavelmente será a melhor escolha.

A maioria das casas já possui roteadores Wi-Fi para fins de internet doméstica, portanto, analisaremos algumas opções de kits de desenvolvimento, plataformas e módulos sem fio que são bem adequados para o desenvolvimento do Matter 1.0 via Wi-Fi. As casas que já estão equipadas com roteadores Wi-Fi compatíveis já estão equipadas com um controlador Matter via Wi-Fi, o que deve ajudar na adoção de produtos finais Matter via Wi-Fi. Para as aplicações de Matter via Thread, é necessário um roteador de borda Matter (ou seja, um hub Matter específico capaz de traduzir mensagens Matter via Thread).

Desenvolvimento de Matter 1.0 via Wi-Fi
Para economizar uma quantidade considerável de tempo de desenvolvimento e percorrer rapidamente as opções de implementação iterativa, selecione um kit de desenvolvimento devidamente apropriado com vários módulos com certificação Wi-Fi. A seleção de um kit de desenvolvimento e um módulo Wi-Fi de OEMs e fornecedores bem estabelecidos provavelmente resultará em menos tempo de desenvolvimento adicional, uma vez que esses tipos de OEMs e fornecedores tendem a manter bons relacionamentos e excelente material de suporte que podem ajudar um desenvolvedor a superar obstáculos com mais rapidez e efetividade.

Um exemplo do kit é o Kit de Avaliação CY8CEVAL-062S2 PSoC™ 62S2 da Infineon Technologies (Figura 4), que utiliza o microcontrolador (MCU) Infineon PSoC 62 . O PSoC 62 apresenta um núcleo Arm® Cortex®-M4 de 150 MHz, núcleo Arm Cortex-M0+ de 100 MHz, 1 MB de memória flash, 288 KB de memória SRAM, acelerador cripto de hardware e uma gama diversificada de periféricos analógicos e digitais (Figura 5). O kit de avaliação suporta um conector de interface M.2 para os módulos de rádio M.2 cada vez mais populares, bem como um controlador de segurança OPTIGA™ Trust M e uma interface mikroBUS da Infineon.


 
Figura 4: Layout da placa do kit de avaliação CY8CEVAL-062S2 PSoC 62S2 da Infineon Technologies, que apresenta uma interface M.2 para conexão de módulos de rádio de alta velocidade M.2. (Fonte: Infineon Technologies)

 
Figura 5: Diagrama de bloco da família de microcontroladores PSoC 6 da Infineon Technologies. (Fonte: Mouser Electronics)

O kit de avaliação integra o ecossistema IoT da Infineon Technologies, que inclui vários parceiros importantes de módulos de hardware para permitir que o ecossistema ofereça hardware digital e de RF altamente interoperável e de alto desempenho. Os parceiros do módulo do ecossistema incluem Laird Connectivity, Murata e Lantronix, que oferecem vários módulos habilitados para Wi-Fi, Bluetooth® e Wi-Fi/Bluetooth combinados que são perfeitamente integrados às soluções Infineon MCU e kits de avaliação ideais para o desenvolvimento de Matter 1.0 por Wi-Fi.

O kit de avaliação CY8CEVAL-062S2 PSoC 62S2 é fornecido com um módulo sem fio Laird Connectivity Sterling-LWB5+ pré-instalado e uma antena Laird Connectivity FlexPIFA. O módulo LWB5+ é baseado no chipset AIROC™ CYW4373E da Infineon, suporta Wi-Fi 5 com comunicação Bluetooth 5.0 e foi desenvolvido especificamente para atender aos padrões de aplicações médicas e industriais da IoT (IIoT). Uma das principais vantagens deste módulo sem fio é que ele é construído sobre uma plataforma de IP sem fio que permite interoperabilidade máxima.

Outra opção de baixa potência, habilitada para Bluetooth e Wi-Fi é o módulo Murata Type 1LV, que suporta a especificação Bluetooth 5.0 de baixa energia e Wi-Fi 802.11a/b/g/n/ac (ou seja, canal de apenas 20 MHz) para uma taxa de dados PHY de 72,2 Mbps. Este módulo é compatível com Wi-Fi de 2,4 GHz e 5 GHz e incorpora o chipset CYW43012 da Infineon (Figura 6). A seção Wi-Fi do módulo faz comunicação usando a topologia de rede de modo duplo AP e STA. WLAN suporta a interface SDIO v2.0 SDR25, enquanto a seção Bluetooth suporta uma interface UART de quatro fios de alta velocidade. Uma alternativa para o módulo Tipo 1LV é o módulo Murata Tipo 1YN, que é baseado no chipset combinado CYW43439 da Infineon.
 

 
Figura 6: Diagrama de bloco do dispositivo combinado AIROC CYW43012 Wi-Fi 4 e Bluetooth 5.2 de banda dupla da Infineon. (Fonte: Infineon Technologies)


As soluções Matter em Wi-Fi da Infineon, que passaram pelo processo de pré-certificação Matter e desenvolvidas nas plataformas de hardware listadas anteriormente, são incorporadas ao ModusToolbox™. O ModusToolbox™ é o ambiente de desenvolvimento extensível moderno da Infineon, que suporta os dispositivos microcontroladores PSoC™ e os dispositivos combinados Bluetooth/Wi-Fi AIROC™ da Infineon. Para economizar uma quantidade substancial de tempo de desenvolvimento e percorrer rapidamente as opções de implementação iterativa, acesse https://www.infineon.com/matter para obter material de treinamento para iniciar seu primeiro desenvolvimento de produto Matter via Wi-Fi.

Conclusão


Este artigo destaca várias seções e detalhes da especificação Matter 1.0 lançada recentemente. No futuro próximo, os dispositivos do fabricante que já são compatíveis com o Matter 1.0 ganharão uma interoperabilidade nova e aprimorada. Com adesão e suporte de todo o setor à especificação Matter 1.0, praticamente todos os futuros dispositivos da IoT da casa inteligente serão certificados e/ou compatíveis com Matter 1.0. Também há disposições incluídas na especificação que permitem que dispositivos não Matter operem em um Matter Fabric ao lado de dispositivos Matter usando uma ponte. Isto significa que os dispositivos IoT da casa inteligente existentes dos usuários que não são compatíveis com o Matter não precisarão necessariamente ser substituídos, e os usuários desfrutarão de um novo nível de interoperabilidade, segurança e facilidade de uso.