A telemetria de rede é uma das ferramentas mais poderosas para entender o que acontece na nossa rede, mas escolher o protocolo de telemetria correto pode ser surpreendentemente complexo. Os roteadores atuais oferecem suporte a uma longa lista de opções (NetFlow, IPFIX, sFlow, PSAMP e até mesmo espelhamento de porta) cada uma com suas próprias vantagens e desvantagens.
Nos últimos dez anos, testamos a telemetria em centenas de ambientes reais, desde pontos de troca da Internet até provedores de hospedagem na nuvem. Este artigo é um resumo prático do que aprendemos, com um objetivo: ajudar você a escolher a telemetria certa para suas necessidades.
O que é a telemetria de rede?
A telemetria de rede é o processo de exportação de metadados ou dados de tráfego sem processar de roteadores e switches a um sistema externo para sua análise. Ela ajuda os operadores a compreender os padrões de tráfego, detectar anomalias, monitorar o desempenho e responder a incidentes mais rapidamente.
A maioria dos protocolos de telemetria são criados para serem eficientes: coletam amostras, resumem ou filtram os dados antes de enviá-los. Isso os torna escaláveis, mas também significa que se deve escolher cuidadosamente quais dados exportar e com que rapidez.
A qualidade e a velocidade da telemetria afetam diretamente sua visibilidade. Se as exportações forem lentas ou os dados superficiais, pode que não detecte ameaças ou gargalos até que seja tarde demais. É por isso que entender as diferenças entre os métodos de telemetria é tão importante.
Telemetria baseada em fluxos vs. telemetria baseada em pacotes
Um conceito básico no desenho de telemetria é se os dados coletados são baseados em fluxos ou em pacotes.
(Acesso livre, não requer assinatura)
A telemetria baseada em fluxos —como NetFlow ou IPFIX— resume uma conversa entre dois terminais. Normalmente inclui os endereços IP de origem e destino, portas, protocolos e contagens de bytes/pacotes. Esses metadados são fáceis de armazenar e analisar, mas não incluem a carga útil nem todos os detalhes dos pacotes. A telemetria de fluxo é ideal para a análise de tráfego e a obtenção de métricas de longo prazo.
A telemetria baseada em pacotes —como sFlow ou PSAMP— captura cabeçalhos de pacotes reais (e às vezes cargas úteis) diretamente da rede. Eles são amostrados, não exportados na íntegra, mas ainda oferecem granularidade muito maior e permitem casos de uso em tempo real, como a detecção de ataques DDoS ou rastreamento de anomalias.
Os métodos baseados em pacotes oferecem informações mais rapidamente porque não dependem dos mecanismos de tempo limite como os fluxos. Mas eles também geram volumes de dados maiores e exigem coletores com maior capacidade e recursos.
A telemetria baseada em fluxos —como NetFlow ou IPFIX— resume uma conversa entre dois terminais. Normalmente inclui os endereços IP de origem e destino, portas, protocolos e contagens de bytes/pacotes. Esses metadados são fáceis de armazenar e analisar, mas não incluem a carga útil nem todos os detalhes dos pacotes. A telemetria de fluxo é ideal para a análise de tráfego e a obtenção de métricas de longo prazo.
A telemetria baseada em pacotes —como sFlow ou PSAMP— captura cabeçalhos de pacotes reais (e às vezes cargas úteis) diretamente da rede. Eles são amostrados, não exportados na íntegra, mas ainda oferecem granularidade muito maior e permitem casos de uso em tempo real, como a detecção de ataques DDoS ou rastreamento de anomalias.
Os métodos baseados em pacotes oferecem informações mais rapidamente porque não dependem dos mecanismos de tempo limite como os fluxos. Mas eles também geram volumes de dados maiores e exigem coletores com maior capacidade e recursos.
Em redes modernas, os melhores resultados geralmente são alcançados com uma abordagem híbrida: usando telemetria baseada em fluxo para obter informações históricas e telemetria baseada em pacotes para detecção e resposta mais rápida a incidentes.
Agora que abordamos os fundamentos da telemetria de rede e as principais diferenças entre as abordagens baseadas em fluxo e em pacotes, vamos ver como os protocolos de telemetria mais usados se comparam na prática. Analisaremos seus pontos fortes, limitações e os casos de uso para os quais resultam mais adequados.
Panorama da telemetria de rede
Os roteadores modernos de grande escala (carrier-grade) admitem uma variedade de protocolos de telemetria, cada um com seus próprios pontos fortes, limitações e cenários ideais. À primeira vista, as opções podem parecer complexas: para escolher a mais adequada não alcança com ler uma folha de especificações. Também é necessário considerar como o protocolo se comporta em condições reais, incluindo a latência de exportação, granularidade dos dados e até mesmo peculiaridades na implementação de um fornecedor específico.
Na tabela abaixo, reunimos as principais características dos protocolos mais usados para que você possa compará-los rapidamente e entender onde cada um se encaixa melhor.
Protocolo
Tipo
Granularidade dos dados
Latência de exportação
Suporta o IPv6?
Casos de uso típicos
NetFlow vs
Baseado em fluxo
Campos fixos (só IPv4)
Depende do timeout do fluxo (segundos a minutos)
Não
Análise de tráfego de longo prazo, faturamento, planejamento da capacidade
NetFlow v9
Baseado em fluxo
Modelos flexíveis
Depende do timeout do fluxo
Sim
Análise de tráfego, hosts que consomem mais largura de banda, correlação de eventos de segurança
Classificação detalhada do tráfego, monitoramento específico de cada protocolo
sFlow v5
Baseado em pacotes
Amostragem de cabeçalhos (taxa configurável)
Praticamente em tempo real
Sim
Detecção de ataques DDoS em tempo real, monitoramento da qualidade de serviço, resolução de problemas
PSAMP
Baseado em pacotes
Amostragem de pacotes estruturados
Praticamente em tempo real
Sim
Análise de segurança, detecção de anomalias, pesquisa
Espelhamento de porta (SPAN)
Baseado em pacotes
Captura de pacotes completos ou cabeçalhos
Em tempo real
Sim
Inspeção profunda de pacotes, estudos forenses
Com esse panorama geral em mente, as próximas seções analisarão mais detalhadamente cada protocolo: como ele funciona, em quais situações funcionam melhor, e as vantagens e desvantagens a serem consideradas antes da implantação.
NetFlow v5
O NetFlow v5 é um dos protocolos de telemetria mais antigos e ainda é usado hoje, principalmente em redes legadas. Este exporta registros de fluxo depois que uma sessão termina ou atinge um limite de tempo pré-fixado (limite de timeout), normalmente em torno de 30 a 60 segundos.
O protocolo é extremamente limitado: não suporta IPv6, usa um conjunto de campos fixo e não oferece flexibilidade para adicionar metadados extras. Na prática, os atrasos na exportação impedem que seja útil para casos de uso em tempo real, como a detecção de DDoS.
Só é recomendado se o seu hardware não suportar nenhuma outra alternativa. Para redes modernas, em geral, não é suficiente.
NetFlow v9 / IPFIX
O NetFlow v9 e seu sucessor, o IPFIX, introduzem modelos flexíveis que permitem que os roteadores exportem um conjunto de dados mais completo, incluindo o suporte para IPv6. Esses protocolos podem ser personalizados para incluir campos como o próximo salto de BGP, números de sistema autônomo, endereços MAC e muito mais.
No entanto, essa flexibilidade tem um custo. Os modelos costumam ser inconsistentes entre os fornecedores e exigem uma análise cuidadosa e um controle de versões. Além disso, como ainda são baseados em fluxo e dependem de tempos limite ativos/inativos, esses protocolos ainda têm atrasos na exportação.
Apesar da sua complexidade, o NetFlow v9/IPFIX tem amplo suporte e é adequado para análise histórica ou planejamento da capacidade, especialmente quando combinado com coletores comerciais ou de código aberto que suportam modelos dinâmicos.
sFlow v5
O sFlow é um protocolo de telemetria baseado em pacotes que exporta cabeçalhos de pacotes brutos e contadores de interface. Ao contrário do NetFlow, o sFlow não acumula dados por fluxos. Em vez disso, ele amostra os pacotes a uma taxa configurável (por exemplo, 1 em cada 1000) e os exporta em tempo real.
Devido à sua baixa latência e o grande número de dados que fornece, o sFlow pode ser usado para monitoramento da segurança, visibilidade em tempo real e classificação do tráfego. No entanto, nem todo hardware implementa o sFlow com a mesma eficiência. Algumas plataformas oferecem apenas contadores básicos ou metadados limitados, e as taxas de amostragem podem ser muito baixas para detectar picos de tráfego de curta duração.
Quando implementado corretamente, o sFlow é leve e altamente eficaz, mas vale a pena verificar os recursos da plataforma de software específica de seu roteador.
Espelhamento de porta
O espelhamento de portas duplica todo o tráfego em uma porta de roteador ou switch e o envia para um coletor ou interface de monitoramento. Fornece uma visibilidade completa do fluxo de pacotes, incluindo as cargas úteis, e é frequentemente usado para debugging ou para a captura completa de pacotes.
No entanto, o espelhamento de portas exige muitos recursos. Usa largura de banda adicional, requer coletores dedicados e não escala bem em ambientes de alto rendimento. Isso o torna inadequado como uma solução de telemetria de uso geral, exceto em cenários específicos de resolução de problemas.
Espelhamento de porta amostrado / PSAMP
Uma opção moderna e eficiente para a telemetria baseada em pacotes é o espelhamento de porta amostrado, geralmente usando extensões PSAMP (Amostragem de pacotes). Este método combina a velocidade e a baixa latência da amostragem de pacotes com a estrutura de metadados do IPFIX.
Permite definir as frequências de amostragem, formatos de exportação e filtros, dando a você controle preciso sobre a telemetria gerada. Os dados exportados incluem cabeçalhos de pacotes e, opcionalmente, contadores de interface ou metadados BGP.
Na nossa experiência, esse é um dos métodos de telemetria com melhor desempenho disponível na atualidade, mas somente se o seu hardware suportar isso. Fornecedores como Juniper e Nokia oferecem implementações robustas de PSAMP, enquanto outros fabricantes ainda estão se atualizando.
Por que a velocidade é importante
A telemetria não significa apenas saber o que aconteceu na sua rede, mas sabê-lo rápido o suficiente para responder. Isso é especialmente crítico para a detecção e mitigação de ataques DDoS, em que cada segundo importa.
A telemetria tradicional baseada em fluxo (como NetFlow v5 ou v9) introduz atrasos de detecção de 30 segundos ou mais. Quando uma anomalia é detectada, o ataque pode já ter afetado os serviços. Porém, os métodos de telemetria baseados em pacotes (como sFlow ou PSAMP) podem detectar padrões de tráfego anômalos em menos de dois segundos.
No FastNetMon, nosso mecanismo de detecção de código aberto suporta os principais protocolos de telemetria. Em testes reais, observamos de forma consistente que o PSAMP e as implementações de sFlow de alta qualidade oferecem o melhor desempenho. Estes métodos fornecem visibilidade rápida e detalhada, permitindo implementar respostas automatizadas antes que os danos ocorram.
Escolhendo a telemetria certa para sua rede
Cada rede é diferente e nenhum protocolo de telemetria é perfeito. A escolha certa depende de vários fatores:
Quais protocolos de telemetria seus roteadores e switches suportam
Com que rapidez você precisa detectar anomalias no tráfego
Se você priorizar as análises históricas ou a visibilidade em tempo real
A arquitetura e capacidade de armazenamento de seu coletor
Em ambientes modernos, recomendamos começar com a telemetria baseada em pacotes se a detecção de baixa latência for uma prioridade. A telemetria baseada em fluxo ainda tem seu lugar, principalmente quando usada em combinação, mas a indústria está claramente caminhando para uma telemetria mais rápida, completa e flexível.
Se você não revisa sua configuração de telemetria há algum tempo, agora é um bom momento de fazê-lo.
As opiniões expressas pelos autores deste blog são próprias e não refletem necessariamente as opiniões de LACNIC.