O passado e o presente da visibilidade da rede Mylinking™ da ERSPAN

A ferramenta mais comum para monitoramento e solução de problemas de rede atualmente é o Switch Port Analyzer (SPAN), também conhecido como espelhamento de portas. Ele nos permite monitorar o tráfego de rede em modo bypass fora de banda sem interferir nos serviços da rede ativa, enviando uma cópia do tráfego monitorado para dispositivos locais ou remotos, incluindo Sniffer, IDS ou outros tipos de ferramentas de análise de rede.

Alguns usos típicos são:

• Solucionar problemas de rede rastreando quadros de controle/dados;

• Analisar latência e jitter monitorando pacotes VoIP;

• Analisar latência monitorando interações de rede;

• Detecte anomalias monitorando o tráfego de rede.

O tráfego SPAN pode ser espelhado localmente para outras portas no mesmo dispositivo de origem ou espelhado remotamente para outros dispositivos de rede adjacentes à Camada 2 do dispositivo de origem (RSPAN).

Hoje, vamos falar sobre a tecnologia de monitoramento remoto de tráfego de internet chamada ERSPAN (Encapsulated Remote Switch Port Analyzer), que pode ser transmitida por três camadas de IP. Esta é uma extensão do SPAN para o Encapsulated Remote.

Princípios básicos de operação do ERSPAN

Primeiro, vamos dar uma olhada nos recursos do ERSPAN:

• Uma cópia do pacote da porta de origem é enviada ao servidor de destino para análise por meio do Encapsulamento de Roteamento Genérico (GRE). A localização física do servidor não é restrita.

• Com a ajuda do recurso Campo Definido pelo Usuário (UDF) do chip, qualquer deslocamento de 1 a 126 bytes é realizado com base no domínio Base por meio da lista estendida de nível de especialista, e as palavras-chave da sessão são correspondidas para realizar a visualização da sessão, como o handshake triplo TCP e a sessão RDMA;

• Suporte para configuração de taxa de amostragem;

• Suporta comprimento de interceptação de pacotes (Packet Slicing), reduzindo a pressão no servidor de destino.

Com esses recursos, você pode ver por que o ERSPAN é uma ferramenta essencial para monitorar redes dentro de data centers hoje.

As principais funções do ERSPAN podem ser resumidas em dois aspectos:

• Visibilidade da sessão: use o ERSPAN para coletar todas as novas sessões TCP e Remote Direct Memory Access (RDMA) criadas no servidor back-end para exibição;

• Solução de problemas de rede: captura o tráfego de rede para análise de falhas quando ocorre um problema de rede.

Para isso, o dispositivo de rede de origem precisa filtrar o tráfego de interesse do usuário do fluxo massivo de dados, fazer uma cópia e encapsular cada quadro copiado em um "contêiner de superquadros" especial, que contém informações adicionais suficientes para que possa ser roteado corretamente para o dispositivo receptor. Além disso, permite que o dispositivo receptor extraia e recupere completamente o tráfego monitorado original.

O dispositivo receptor pode ser outro servidor que suporte o desencapsulamento de pacotes ERSPAN.

Encapsulando pacotes ERSPAN

Análise do tipo e formato do pacote ERSPAN

Os pacotes ERSPAN são encapsulados usando GRE e encaminhados para qualquer destino endereçável IP via Ethernet. Atualmente, o ERSPAN é usado principalmente em redes IPv4, e o suporte ao IPv6 será um requisito no futuro.

Para a estrutura geral de encapsulamento do ERSAPN, a seguir está uma captura de pacote espelho de pacotes ICMP:

estrutura de encapsulamento de ERSAPN

O protocolo ERSPAN evoluiu ao longo do tempo e, com o aprimoramento de suas capacidades, diversas versões foram criadas, chamadas de "Tipos de ERSPAN". Diferentes tipos possuem diferentes formatos de cabeçalho de quadro.

É definido no primeiro campo Versão do cabeçalho ERSPAN:

Versão do cabeçalho ERSPAN

Além disso, o campo Tipo de Protocolo no cabeçalho GRE também indica o Tipo de ERSPAN interno. O campo Tipo de Protocolo 0x88BE indica ERSPAN Tipo II, e 0x22EB indica ERSPAN Tipo III.

1. Tipo I

O quadro ERSPAN do Tipo I encapsula IP e GRE diretamente sobre o cabeçalho do quadro espelho original. Esse encapsulamento adiciona 38 bytes ao quadro original: 14 (MAC) + 20 (IP) + 4 (GRE). A vantagem desse formato é que ele tem um tamanho de cabeçalho compacto e reduz o custo de transmissão. No entanto, como define os campos GRE Flag e Version como 0, ele não carrega nenhum campo estendido e o Tipo I não é amplamente utilizado, portanto, não há necessidade de expansão adicional.

O formato do cabeçalho GRE do Tipo I é o seguinte:

Formato de cabeçalho GRE I

2. Tipo II

No Tipo II, os campos C, R, K, S, S, Recur, Flags e Version no cabeçalho GRE são todos 0, exceto o campo S. Portanto, o campo Sequence Number é exibido no cabeçalho GRE do Tipo II. Ou seja, o Tipo II pode garantir a ordem de recebimento dos pacotes GRE, de forma que um grande número de pacotes GRE fora de ordem não possa ser classificado devido a uma falha de rede.

O formato do cabeçalho GRE do Tipo II é o seguinte:

Formato de cabeçalho GRE II

Além disso, o formato de quadro ERSPAN Tipo II adiciona um cabeçalho ERSPAN de 8 bytes entre o cabeçalho GRE e o quadro espelhado original.

O formato do cabeçalho ERSPAN para o Tipo II é o seguinte:

Formato de cabeçalho ERSPAN II

Por fim, imediatamente após o quadro da imagem original, está o código padrão de verificação de redundância cíclica (CRC) Ethernet de 4 bytes.

CRC

Vale ressaltar que, na implementação, o quadro espelho não contém o campo FCS do quadro original; em vez disso, um novo valor de CRC é recalculado com base em todo o ERSPAN. Isso significa que o dispositivo receptor não pode verificar a correção do CRC do quadro original, e podemos apenas assumir que apenas quadros não corrompidos são espelhados.

3. Tipo III

O Tipo III introduz um cabeçalho composto maior e mais flexível para lidar com cenários de monitoramento de rede cada vez mais complexos e diversos, incluindo, entre outros, gerenciamento de rede, detecção de intrusão, análise de desempenho e atraso, entre outros. Essas cenas precisam conhecer todos os parâmetros originais do quadro espelho e incluir aqueles que não estão presentes no próprio quadro original.

O cabeçalho composto ERSPAN Tipo III inclui um cabeçalho obrigatório de 12 bytes e um subcabeçalho opcional específico da plataforma de 8 bytes.

O formato do cabeçalho ERSPAN para o Tipo III é o seguinte:

Formato de cabeçalho ERSPAN III

Novamente, após o quadro de espelho original há um CRC de 4 bytes.

CRC

Como pode ser visto no formato do cabeçalho do Tipo III, além de manter os campos Ver, VLAN, COS, T e Session ID com base no Tipo II, muitos campos especiais são adicionados, como:

• BSO: usado para indicar a integridade da carga dos quadros de dados transportados pelo ERSPAN. 00 é um quadro bom, 11 é um quadro ruim, 01 é um quadro curto, 11 é um quadro grande;

• Carimbo de data/hora: exportado do relógio de hardware sincronizado com a hora do sistema. Este campo de 32 bits suporta granularidade de carimbo de data/hora de pelo menos 100 microssegundos;

• Tipo de quadro (P) e tipo de quadro (FT): o primeiro é usado para especificar se o ERSPAN transporta quadros de protocolo Ethernet (quadros PDU) e o último é usado para especificar se o ERSPAN transporta quadros Ethernet ou pacotes IP.

• HW ID: identificador único do mecanismo ERSPAN dentro do sistema;

• Gra (Grânulos de Carimbo de Tempo): Especifica a granularidade do carimbo de tempo. Por exemplo, 00B representa granularidade de 100 microssegundos, 01B, granularidade de 100 nanossegundos, 10B, granularidade IEEE 1588, e 11B requer subcabeçalhos específicos da plataforma para atingir uma granularidade maior.

• ID da plataforma vs. informações específicas da plataforma: os campos de informações específicas da plataforma têm formatos e conteúdos diferentes dependendo do valor do ID da plataforma.

Índice de ID de porta

Vale ressaltar que os diversos campos de cabeçalho suportados acima podem ser usados ​​em aplicações ERSPAN comuns, inclusive espelhando quadros de erro ou quadros BPDU, mantendo o pacote Trunk original e o ID da VLAN. Além disso, informações importantes de timestamp e outros campos de informação podem ser adicionados a cada quadro ERSPAN durante o espelhamento.

Com os próprios cabeçalhos de recursos do ERSPAN, podemos obter uma análise mais refinada do tráfego de rede e, então, simplesmente montar a ACL correspondente no processo ERSPAN para corresponder ao tráfego de rede no qual estamos interessados.

ERSPAN implementa visibilidade de sessão RDMA

Vejamos um exemplo de uso da tecnologia ERSPAN para obter a visualização de sessão RDMA em um cenário RDMA:

RDMA: O Acesso Direto à Memória Remoto permite que o adaptador de rede do servidor A leia e grave a memória do servidor B usando placas de interface de rede inteligentes (INICS) e switches, alcançando alta largura de banda, baixa latência e baixa utilização de recursos. É amplamente utilizado em cenários de big data e armazenamento distribuído de alto desempenho.

RoCEv2: RDMA sobre Ethernet Convergente Versão 2. Os dados RDMA são encapsulados no cabeçalho UDP. O número da porta de destino é 4791.

A operação e manutenção diárias do RDMA exigem a coleta de uma grande quantidade de dados, que são usados ​​para coletar linhas de referência diárias de nível de água e alarmes anormais, bem como a base para a localização de problemas anormais. Combinado com o ERSPAN, dados massivos podem ser capturados rapidamente para obter dados de qualidade de encaminhamento em microssegundos e o status de interação do protocolo do chip de comutação. Por meio de estatísticas e análises de dados, é possível obter avaliações e previsões completas da qualidade de encaminhamento do RDMA.

Para obter a visualização da sessão RDAM, precisamos que o ERSPAN corresponda às palavras-chave para sessões de interação RDMA ao espelhar o tráfego, e precisamos usar a lista estendida de especialistas.

Lista estendida de nível de especialista que corresponde à definição do campo:

A UDF consiste em cinco campos: palavra-chave UDF, campo base, campo offset, campo valor e campo máscara. Limitado pela capacidade de entradas de hardware, um total de oito UDFs podem ser usados. Uma UDF pode corresponder a no máximo dois bytes.

• Palavra-chave UDF: UDF1... UDF8 Contém oito palavras-chave do domínio UDF correspondente

• Campo base: identifica a posição inicial do campo UDF correspondente. O seguinte

Cabeçalho L4 (aplicável a RG-S6520-64CQ)

Cabeçalho L5 (para RG-S6510-48VS8Cq)

• Offset: indica o offset com base no campo base. O valor varia de 0 a 126

• Campo de valor: valor correspondente. Pode ser usado em conjunto com o campo de máscara para configurar o valor específico a ser correspondido. O bit válido é de dois bytes.

• Campo de máscara: máscara, bit válido é dois bytes

(Adicionar: Se várias entradas forem usadas no mesmo campo de correspondência de UDF, os campos base e offset devem ser os mesmos.)

Os dois pacotes principais associados ao status da sessão RDMA são o Pacote de Notificação de Congestionamento (CNP) e o Reconhecimento Negativo (NAK):

O primeiro é gerado pelo receptor RDMA após receber a mensagem ECN enviada pelo switch (quando o buffer eout atinge o limite), que contém informações sobre o fluxo ou QP que está causando o congestionamento. O segundo é usado para indicar que a transmissão RDMA possui uma mensagem de resposta de perda de pacotes.

Vamos ver como combinar essas duas mensagens usando a lista estendida de nível especializado:

RDMA CNP

lista de acesso de especialistas RDMA estendida

permitir udp qualquer qualquer qualquer qualquer eq 4791udf 1 l4_header 8 0x8100 0xFF00(Correspondente a RG-S6520-64CQ)

permitir udp qualquer qualquer qualquer qualquer eq 4791udf 1 l5_header 0 0x8100 0xFF00(Correspondente a RG-S6510-48VS8CQ)

RDMA CNP 2

lista de acesso de especialistas RDMA estendida

permitir udp qualquer qualquer qualquer qualquer eq 4791udf 1 l4_cabeçalho 8 0x1100 0xFF00 udf 2 l4_cabeçalho 20 0x6000 0xFF00(Correspondente a RG-S6520-64CQ)

permitir udp qualquer qualquer qualquer qualquer eq 4791udf 1 l5_cabeçalho 0 0x1100 0xFF00 udf 2 l5_cabeçalho 12 0x6000 0xFF00(Correspondente a RG-S6510-48VS8CQ)

Como etapa final, você pode visualizar a sessão RDMA montando a lista de extensões especializadas no processo ERSPAN apropriado.

Escreva no último

O ERSPAN é uma das ferramentas indispensáveis ​​nas redes de data centers cada vez maiores, no tráfego de rede cada vez mais complexo e nos requisitos de operação e manutenção de rede cada vez mais sofisticados.

Com o crescente grau de automação de O&M, tecnologias como Netconf, RESTconf e gRPC se tornaram populares entre os estudantes de O&M em O&M automático de redes. Usar o gRPC como protocolo subjacente para o envio de tráfego espelhado também apresenta muitas vantagens. Por exemplo, baseado no protocolo HTTP/2, ele pode suportar o mecanismo de transmissão push na mesma conexão. Com a codificação ProtoBuf, o tamanho da informação é reduzido pela metade em comparação com o formato JSON, tornando a transmissão de dados mais rápida e eficiente. Imagine se você usasse o ERSPAN para espelhar fluxos de interesse e, em seguida, enviá-los para o servidor de análise no gRPC: isso melhoraria significativamente a capacidade e a eficiência da operação e manutenção automáticas da rede?


Data de publicação: 10 de maio de 2022