# TR-143

TR-143 (Issue: 1 Amendment 1 Corrigendum 1, agosto de 2015), intitulada como “Enabling Network Throughput Performance Tests and Statistical Monitoring”, é uma especificação de métodos e técnicas para realizar diagnósticos de rede via TR-069. Esta especificação desenvolvida pelo Broadband Forum é necessária para medir, exibir e gerenciar o desempenho de certas conexões ou partes de uma rede em tempo real (monitoramento ativo, engl. active monitoring). Ela permite que você monitore continuamente o desempenho da rede e reaja em caso de erros. Uma vez que o TR-069 já permite controlar o dispositivo de acesso principal, bem como os dispositivos conectados do cliente, é possível com a extensão TR-143 determinar se um determinado erro tem origem na rede do cliente ou na rede do provedor.

## Monitoramento ativo

O monitoramento ativo descreve o teste controlado, o monitoramento e a medição da taxa de transferência da camada de rede ao enviar ou receber mensagens em uma rede. Esses testes são executados no equipamento do cliente (engl. Customer-Premises Equipment, CPE) ou em servidores de teste eleitos pelo provedor de internet para determinar sobrecargas, capacidades ou pontos de falha na rede, indicadores necessários para avaliar o desempenho da rede. Para evitar impactos nos resultados, não se devem executar múltiplos testes ao mesmo tempo em uma rede. Alguns diagnósticos são Upload, Download, UDPEcho, UDPEchoPlus e ServerSelection-Tests.

### Diagnóstico iniciado pelo CPE

Os testes iniciados pelo CPE (engl. CPE initiated diagnostics) simulam o comportamento de um cliente durante uma transação FTP ou HTTP. Existem duas abordagens diferentes de teste que podem ser executadas. Uma medição baseada em volume de dados e tempo, na qual a taxa de transferência e o tempo de resposta de conexões de rede selecionadas podem ser medidos. Um servidor de configuração automática (ACS) envia uma mensagem de solicitação de diagnóstico na qual os parâmetros de teste são especificados. O CPE recebe a mensagem e inicia o teste enviando as mensagens de teste necessárias para o servidor de teste. Se o servidor de teste responder a todas as mensagens dentro do tempo determinado, o CPE pode salvar os resultados do teste.

### Diagnóstico iniciado pela rede

Os testes iniciados pela rede são uma abordagem alternativa para minimizar a carga de uma rede (engl. network initiated diagnostics). Por exemplo, alguns servidores de teste podem executar esses testes para determinar continuamente o estado do acesso banda larga e construir tendências de desempenho. Para fazer isso, no caso de um teste UDPEcho, o servidor de teste deve primeiro habilitar o CPE para funcionar como um servidor e, em seguida, iniciar uma solicitação. O servidor de teste então envia pacotes UDPEcho aos quais o CPE responde. O teste é concluído com a resposta aos pacotes.

### Teste de taxa de transferência com base no tempo

No caso de testes baseados em tempo, várias velocidades de rede são combinadas e avaliadas com uma duração de teste definida (en: Time-based throughput testing). Isto ajudará a descobrir quantos bytes de mensagens foram enviados, recebidos pela rede, em quanto tempo e qual taxa de transferência. Existem três índices: "Test-Duration", "Measurement-Interval" e "Measurement-Offset". O "Test Duration" define a duração do teste, que pode variar entre 1 e 999 segundos. O "Measurement Interval" define os intervalos nos quais os resultados do teste devem ser salvos. E o "Measurement Offset" torna possível definir quando o "Measurement Interval" deve começar. Desta forma, é possível reagir a inícios lentos da transmissão da mensagem ou a rajadas de dados em alta velocidade que não pertencem ao teste real.

### Multi-threading / multi-conexões

O TR-143 possui o recurso “Multi-Threading”, que permite que várias conexões TCP sejam medidas simultaneamente. Esse recurso foi necessário porque as conexões TCP simples não permitem que grandes quantidades de dados sejam transmitidas em uma taxa rápida de uma vez, o que é importante para os testes. Os resultados do teste são atribuídos a cada conexão individual até que o teste seja concluído. Se uma das conexões for interrompida ou enviar uma mensagem de erro, todo o teste falhou.

## Fontes

https://www.broadband-forum.org/download/TR-143.pdf (Broadband-Forums, Especificação de agosto de 2015)
https://cwmp-data-models.broadband-forum.org/#tr-143-1-1-0.xml (Broadband-Forums, data models of TR-143, called november 2020)
https://www.axiros.com/knowledge-base/tr-143 (chamou outubro 2020)
https://www.itu.int/itu-t/workprog/wp_a5_out.aspx?isn=1877 (chamou novembro 2020)