Testes de dispositivos IoT para produtos ligados e frotas de dispositivos

O Midair testa dispositivos ligados na bancada e verifica a frota no terreno. Cada dispositivo é comparado com uma linha de base e com os dispositivos do mesmo modelo.

O Delta corre no dispositivo e reporta o que é diferente. O Test Environment recria em laboratório as condições de rede de um dia real.

O que são testes de dispositivos IoT.O dispositivo, a sua rede e a sua frota.

Os testes de dispositivos IoT verificam um dispositivo ligado juntamente com o firmware, a rede e os serviços com que comunica.

Um dispositivo numa secretária pode passar em todos os testes. Mil dispositivos no terreno correm versões de firmware diferentes, perdem a rede e mudam com o tempo.

Por isso, os testes IoT têm duas metades. No laboratório, os testes recriam de propósito as condições do terreno. No terreno, as verificações encontram o dispositivo que já não se parece com os outros.

A vista da frota.Encontre o dispositivo diferente.

Uma frota de exemplo com 40 dispositivos de três modelos. Filtre por modelo ou firmware e escolha um dispositivo para ver como difere da sua linha de base.

delta --fleet · 40Exemplo
Modelo
Firmware
  • Igual à linha de base
  • Desvio desde a última verificação
  • Fora do padrão da frota

40 / 40 visíveis · fora do padrão: 4 · com desvio: 3

delta · h1-07 · H1 · fw 3.2.0Exemplo

Fora do padrão

Um em 16 hubs H1 corre um servidor telnet. Nenhum outro hub do grupo o tem.

Apareceu

  • proc:telnetd
  • port:23/tcp/listen

Em falta

  • nada
delta · h1-12 · H1 · fw 3.2.1Exemplo

Desvio

Depois da atualização para a 3.2.1, um pacote de servidor SSH substituiu outro. A linha de base ainda indica o antigo.

Apareceu

  • pkg:dropbear@2022.83

Em falta

  • pkg:openssh-server@9.6p1
delta · s2-05 · S2 · fw 3.1.0Exemplo

Fora do padrão

O ficheiro de configuração do SSH tem um checksum que nenhum outro sensor S2 tem.

Apareceu

  • file:/etc/ssh/sshd_config@9be2c41f

Em falta

  • file:/etc/ssh/sshd_config@a41c07d3
delta · s2-11 · S2 · fw 3.2.0Exemplo

Fora do padrão

Este sensor envia a rota por omissão através de uma interface de túnel. O resto do grupo não o faz.

Apareceu

  • netif:tun0
  • route:0.0.0.0/0->10.8.0.1

Em falta

  • route:0.0.0.0/0->192.168.1.1
delta · s2-14 · S2 · fw 3.2.1Exemplo

Desvio

Desde a última verificação, a porta 1883 está aberta neste sensor e há um broker MQTT à escuta.

Apareceu

  • port:1883/tcp/listen
  • proc:mosquitto

Em falta

  • nada
delta · g3-03 · G3 · fw 3.2.0Exemplo

Desvio

Apareceu um ficheiro cron entre duas verificações. As permissões deixam qualquer utilizador alterá-lo (ATT&CK T1053.003).

Apareceu

  • file:/etc/cron.d/backup mode 0666
  • proc:backup.sh

Em falta

  • nada
delta · g3-06 · G3 · fw 3.2.1Exemplo

Fora do padrão

Todos os outros gateways G3 correm o daemon do watchdog. Este não.

Apareceu

  • nada

Em falta

  • proc:watchdogd
delta · Escolha um dispositivo na grelha.Exemplo

Igual à linha de base

Sem diferenças em relação à linha de base.

Apareceu

  • nada

Em falta

  • nada
  • O Delta recolhe uma linha de base de cada dispositivo: processos, portas, pacotes, ficheiros, interfaces e rotas.
  • Para encontrar unidades fora do padrão, o Delta compara dispositivos do mesmo modelo. O que poucos dispositivos têm aparece em Apareceu. O que quase todos têm, e este não tem, aparece em Em falta.
  • Para o desvio, o Delta verifica cada dispositivo periodicamente e reporta o que mudou desde a última verificação.
  • No Midair, uma alteração esperada pode ser aceite na linha de base. A partir daí, deixa de aparecer.

Um dia na vida de um dispositivo.Cinco condições para recriar em laboratório.

Escolha um momento do dia de um dispositivo de exemplo. O painel mostra a condição, como o Test Environment a recria e o que o teste verifica.

02:00Janela de atualização

No terreno
O dispositivo descarrega uma atualização de firmware por uma ligação lenta. A ligação cai a meio.
No laboratório
netem delay 400ms loss 2% · link down at 60 %
O teste verifica
O dispositivo fica numa versão de firmware completa e mantém a configuração.

07:30Reinício do router

No terreno
O ponto de acesso Wi-Fi reinicia e desaparece durante 90 segundos.
No laboratório
interface do ponto de acesso em baixo 90 s, depois em cima
O teste verifica
O dispositivo volta a associar-se em menos de 30 segundos, obtém um endereço por DHCP e responde a quatro pings sem perdas.

12:30Rede carregada

No terreno
O tráfego da hora de almoço acrescenta atraso e jitter, e alguns pacotes chegam fora de ordem.
No laboratório
netem delay 250ms jitter 80ms reorder 5%
O teste verifica
A telemetria chega ao broker por ordem, sem duplicados e sem falhas.

18:00Sinal fraco

No terreno
Ao fim do dia, o sinal fica fraco. Perdem-se pacotes em rajadas durante dez minutos.
No laboratório
netem loss 15% correlation 50%
O teste verifica
O dispositivo espera mais entre tentativas e volta a ligar-se. Não inunda o servidor com novas sessões.

23:59Token expirado

No terreno
O token de acesso que o dispositivo obteve de manhã expira à meia-noite.
No laboratório
tsf-time: o cliente corre com um relógio 24 h à frente
O teste verifica
O dispositivo obtém um novo token antes de o antigo expirar e não se perdem dados.

O que um teste IoT cobre.Do primeiro arranque a um ano no terreno.

  1. Aprovisionamento e primeira ligação

    O dispositivo entra na rede, obtém um endereço e regista-se no seu serviço. O teste compara cada passo com um limite de tempo.

  2. Religação

    As ligações caem, os pontos de acesso reiniciam e os endereços mudam. O teste verifica se o dispositivo volta sozinho.

  3. Atualizações de firmware

    Uma atualização pode parar a meio ou chegar a um dispositivo com configurações antigas. O teste verifica a versão e a configuração depois de cada tentativa.

  4. Tráfego de e para os serviços

    Os módulos de teste falam MQTT, CoAP e HTTP com o dispositivo, ou fazem o papel do seu servidor. Assim, o teste vê os dois lados da troca.

  5. Execuções longas

    O Delta verifica o dispositivo periodicamente e reporta o desvio entre verificações: novos processos, portas abertas, pacotes e ficheiros alterados.

Perguntas.Respostas curtas.

O que são testes de dispositivos IoT?

Os testes de dispositivos IoT verificam um dispositivo ligado com o seu firmware, a sua rede e os serviços que usa. Cobrem os testes na bancada do laboratório e as verificações da frota no terreno.

Como encontra o Midair um dispositivo fora do padrão numa frota?

O Delta recolhe uma linha de base de cada dispositivo. Compara os dispositivos do mesmo modelo e reporta o que poucos dispositivos têm, ou o que falta a este dispositivo.

O que é o desvio?

O desvio é uma mudança num dispositivo entre duas verificações. O Delta corre periodicamente e reporta processos, portas e pacotes novos ou removidos, e checksums de ficheiros alterados.

O Delta altera alguma coisa no dispositivo?

Não. O Delta reporta as diferenças e não altera nada no dispositivo. É um binário estático de cerca de 104 KB para Linux embebido em ARM, RISC-V, MIPS e x86_64.

O laboratório consegue recriar problemas de rede?

Sim. O Test Environment define atraso, jitter, perdas, duplicação e reordenação numa interface de uma máquina. Também pode desligar e voltar a ligar ligações durante um teste.

O dispositivo precisa de um agente de teste?

Não. Os testes chegam ao dispositivo através de uma máquina ao lado dele. O Delta só corre no dispositivo quando quer inspecionar o próprio dispositivo, e o Midair instala-o por SSH.

Comece por um modelo de dispositivo.Depois junte a frota.

Traga um dispositivo, um build de firmware e uma falha do terreno difícil de reproduzir. Compare os planos na página de preços. Os preços são mensais, em euros.

Iniciar o seu piloto