Estrutura de Dados II · Projeto integrador

NetVision

NetVision é um projeto acadêmico que desenvolve um sistema preditor para a degradação de desempenho em redes. Seu objetivo é identificar se cada medição de um fluxo está em estado OK, RISCO ou FALHA, a partir de medições de latência, perda de pacotes e jitter coletadas pela API do RIPE Atlas.

X = [latência, perda, jitter]Repositório →
Logo do NetVision
01 /

Problema e objetivo

Em palavras simples: a internet às vezes fica lenta ou instável, e o NetVision tenta perceber isso automaticamente. O projeto aborda a necessidade de detectar falhas de rede de forma independente da rota — uma resposta de 340 ms pode ser normal entre Brasil e África do Sul, mas grave entre duas cidades alemãs. Para isso, propõe-se um modelo capaz de classificar cada medição comparando-a com o comportamento típico do próprio caminho, com potencial para apoiar o monitoramento e a prevenção de falhas.

02 /

Como funciona

O sistema recebe medições de ping entre sensores espalhados pelo mundo, calcula o comportamento normal de cada caminho (a ficha de baseline) e aplica uma árvore de decisão para dizer se a rede está bem, em risco ou em falha.

OK

Variação e desvio do RTT dentro dos limites do baseline.

RISCO

2 ≤ z_robusto < 3,5, aumento de 30–80% ou jitter 3× maior, persistente.

FALHA

Perda ≥ 10%, z_robusto ≥ 3,5 ou timeouts repetidos.

03 /

Pipeline do projeto

O pipeline apresenta as principais etapas do sistema, desde a entrada dos dados até a geração do resultado:

  1. 1
    Origem dos dados

    API RIPE Atlas — medições ICMP ping (msm 1001)

    ↳ Probes e Anchors pelo mundo

  2. 2
    Coleta e organização

    2.178.902 registros em 10 fluxos (probe → anchor)

    ↳ data/raw/

  3. 3
    Pré-processamento

    Ficha de baseline por fluxo no Período A: mediana, MAD, jitter e perda típicos

    ↳ baseline_por_fluxo.csv

  4. 4
    Extração de atributos

    z_robusto, aumento_pct, jitter_relativo, perda_pct, janelas n5

    ↳ Sem país, IP, rota ou RTT absoluto

  5. 5
    Treinamento e validação

    Árvore de decisão (Gini, profundidade 6, folha ≥ 50, poda 0,001)

    ↳ Corte temporal dentro do Período B

  6. 6
    Predição

    Classe por medição: OK, RISCO ou FALHA

    ↳ Teste medido uma única vez

  7. 7
    Apresentação do resultado

    Matriz 3×3, F1 por classe e F1 macro

    ↳ Regras legíveis em português

04 /

Dados e avaliação

Foram utilizados 2.178.902 registros de medições do RIPE Atlas, coletados entre setembro e outubro de 2026, com as variáveis latência, perda de pacotes e jitter (e suas versões normalizadas). O modelo foi avaliado por meio de um corte temporal — treino com dados mais antigos e teste com os mais recentes — e métricas como F1 por classe e F1 macro.

76,8%
OK · 1.673.397
5,2%
RISCO · 113.303
18,0%
FALHA · 392.202
05 /

Resultados

0,9241
F1 macro (validação)
97,89%
Recall de FALHA
84,52%
Recall de RISCO
98,35%
Recall de OK

O modelo obteve F1 macro de 0,9241 e identificou 97,89% das falhas na validação, superando a árvore inicial (0,9064). Esses resultados indicam que o modelo detecta quase todas as falhas, com a maior confusão entre RISCO e FALHA, considerando as condições e os dados utilizados no estudo.

Árvore inicial × árvore ajustada (validação)
InicialAjustada
F1 macro
90,64%
92,41%
Recall FALHA
98,27%
97,89%
Recall RISCO
80,74%
84,52%
Recall OK
97,73%
98,35%

Escala a partir de 70%.

06 /

Limitações

As previsões dependem da qualidade e das características dos dados analisados. Por isso, devem ser interpretadas como estimativas do modelo, e não como garantias.

  • O baseline é fixo e não acompanha trocas de rota.
  • Rajadas curtas (3 pacotes) estimam mal o jitter.
  • Anchors do RIPE Atlas não representam a rede do campus.
  • O rótulo usa as mesmas métricas da árvore: ela aprende a política, funcionando como detector do estado atual.
  • Fluxos sem ficha de baseline (menos de 1.500 RTT válidos) não são avaliados.
07 /

Vídeo pitch

Apresentação de 90 segundos do projeto, explicando o problema, a proposta, o funcionamento e os principais resultados.

Vídeo pitch em breve
08 /

Equipe e acesso

Aponte a câmera do celular para o QR Code e abra esta página.