Pular para conteúdo
Logo CEPTRO.br

Medições NIC.br

Checklist#

Pontos importantes a verificar ao se integrar o motor de medição SIMET-MA em qualquer equipamento.

Nota

No texto abaixo, SIMETLIBDIR é o diretório com as libs do motor de medição, tipicamente /opt/simet/lib/simet/ ou /usr/lib/simet/ dependendo de como o motor de medição foi configurado durante o build.

SIMETBINDIR é o diretório com os binários principais do motor de medição, tipicamente /opt/simet/bin ou /usr/bin.

  • As versões do simet-ma e do simet-lmapd são as versões mais recentes (evitar as versões de desenvolvimento).

  • O simet-ma e simet-lmapd foram configurados durante a compilação, usando como base o empacotamento Debian (/opt/simet, /etc/simet, /var) ou o empacotamento OpenWRT (/usr, /etc, /var).

    No caso do simet-lmapd, os parâmetros default do CMake não são funcionais para o SIMET nas versões atuais do mesmo.

    No caso do simet-ma, a localização dos itens a seguir precisa ser ajustada:

    • sysconfdir;
    • localstatedir;
    • prefix;
    • libdir.
  • No caso de uso de OpenWRT (SO/empacotamento) as informações da documentação do SIMETBox sobre a configuração do Busybox e outros detalhes foi seguida.

  • Foi incluído um arquivo de configuração com a identificação do vendor:

  • Foi incluído um arquivo de configuração que ajusta o modelo do dispositivo.

  • Para roteadores e sondas de medição, o endereço MAC principal utilizado pelo motor de medição é estável, ou seja:

    • global (não é aleatório);
    • persistente (não altera com reset de fábrica nem atualização de firmware);
    • corresponde ao MAC impresso na etiqueta do equipamento, se houver uma.

    Isso requer parametriação da Device Tree em OpenWRT 20+, ou a adição de um script SIMETBINDIR/simet_get_mac_address.sh.

  • O sistema de virtual label está funcional.

  • Em um equipamento embarcado, o virtual label não é alterado mesmo no caso de atualização de firmware, de bootloader ou reset de fábrica.

  • O motor de medição SIMET está habilitado por padrão em sondas de medição.

  • O equipamento é enviado de fábrica com o motor de medição no estado não registrado (sem agent-id).

  • O equipamento registra-se com os servidores do NIC.br ao ativar o motor de medição (ver initscripts).

    No caso de equipamento onde o motor de medição está sempre habilitado, como em sondas de medição, deve registrar-se durante cada boot do equipamento.

  • O motor de medição consegue registrar-se e iniciar seu funcionamento assim que se conecta à Internet.

    Teste: Ligar o equipamento com o motor de medição sem registro e sem conexão à Internet, esperar pelo menos 15 minutos, e só aí conectar a Internet ao mesmo.

    Nota

    Essa funcionalidade requer o uso de hooks entre o motor de medição e a plataforma.

    No empacotamento Debian e Ubuntu, são providos diversos scripts que interfaceiam com várias possíveis fontes deste evento (vários daemons DHCP, ou o Network Manager, etc).

    No empacotamento OpenWRT, é provido um script que interfaceia com o evento de "WAN conectada" do OpenWRT. Pode ser necessário incluir scripts deste tipo em outras plataformas, ou se os scripts já inclusos não forem suficientes.

    Atenção

    Nos initscripts utilizados nos empacotamentos Debian e OpenWRT, o motor de medição eventualmente desiste de tentar registrar-se durante o boot caso a Internet demore muito a estar disponível.

    Se essa condição de "demora na conexão com a Internet estar disponível" ocorrer porque a plataforma demora para conseguir configurar o acesso Internet toda vez que o equipamento é reiniciado (por exemplo, demora em sincronizar, ou servidor DHCP da rede / ISP é muito lento), é possível que o motor de medição nunca consiga registrar-se e portanto não funcione, a menos que um script da plataforma detecte que o acesso à internet agora está disponível, e reinicie o motor de medição caso o mesmo esteja parado.

  • O equipamento registra-se periodicamente com os servidores NIC.br (desejado: uma vez a cada 24 horas) enquanto o motor de medição SIMET estiver habilitado (ver cronjobs dos empacotamentos Debian e/ou OpenWRT).

  • Quando o motor de medição está habilitado, os processos "inetup" (medição de disponibilidade da conexão Internet) e "simet-lmapd" (scheduler LMAP do motor de medição SIMET) estão em execução.

  • O motor de medição está enviando informações de log via syslog para a plataforma, indicando que conseguiu registrar-se, que está ou não associado a alguma entidade, etc.

  • As medições estão dentro dos limites esperados de capacidade e precisão do medidor.

  • Eventuais mensagens de erro do motor de medição (no log do sistema) não incluem termos como "internal error", nem existem mensagens de erro do shell ou de utilitários como sed, awk, grep, reclamando de falhas de sintaxe, ou de comando não encontrado.

  • Uma medição de debug (rode o comando SIMETBINDIR/simet-ma_run.sh --debug como o usuário do motor de medição) não mostra erros inesperados

Atenção

Componentes do motor de medição NÃO DEVEM ser executados como root, exceto os initscripts e os componentes que estão documentados como devendo ser executados como root.

Rodar componentes não-privilegidados do motor de medição como o usuário root irá afetar a permissões de arquivos, e pode quebrar o motor de medição.

  • Medições em IPv6 funcionam normalmente.

  • O motor de medição indica nos logs do sistema que está conseguindo enviar os relatórios para o "collector" do SIMET.