Actualmente, la herramienta más común para la monitorización y resolución de problemas de red es Switch Port Analyzer (SPAN), también conocido como duplicación de puertos. Permite monitorizar el tráfico de red en modo fuera de banda sin interferir con los servicios de la red en funcionamiento y envía una copia del tráfico monitorizado a dispositivos locales o remotos, como analizadores de paquetes, sistemas de detección de intrusiones u otras herramientas de análisis de red.
Algunos usos típicos son:
• Solucionar problemas de red mediante el seguimiento de tramas de control/datos;
• Analizar la latencia y la fluctuación mediante la monitorización de los paquetes VoIP;
• Analizar la latencia mediante el monitoreo de las interacciones de la red;
• Detectar anomalías mediante la monitorización del tráfico de red.
El tráfico SPAN se puede replicar localmente en otros puertos del mismo dispositivo de origen, o de forma remota en otros dispositivos de red adyacentes a la capa 2 del dispositivo de origen (RSPAN).
Hoy vamos a hablar de la tecnología de monitorización remota del tráfico de Internet llamada ERSPAN (Encapsulated Remote Switch Port Analyzer), que puede transmitirse a través de tres capas de IP. Se trata de una extensión de SPAN a Encapsulated Remote.
Principios básicos de funcionamiento de ERSPAN
Primero, echemos un vistazo a las características de ERSPAN:
• Se envía una copia del paquete desde el puerto de origen al servidor de destino para su análisis mediante encapsulación de enrutamiento genérico (GRE). La ubicación física del servidor no está restringida.
• Con la ayuda de la función de Campo Definido por el Usuario (UDF) del chip, se realiza cualquier desplazamiento de 1 a 126 bytes en función del dominio Base a través de la lista extendida de nivel experto, y se hacen coincidir las palabras clave de la sesión para lograr la visualización de la sesión, como el protocolo de enlace TCP de tres vías y la sesión RDMA;
• Permite configurar la frecuencia de muestreo;
• Admite la segmentación de paquetes (Packet Slicing), lo que reduce la carga sobre el servidor de destino.
Con estas características, se entiende por qué ERSPAN es una herramienta esencial para la monitorización de redes dentro de los centros de datos en la actualidad.
Las funciones principales de ERSPAN se pueden resumir en dos aspectos:
• Visibilidad de la sesión: utilice ERSPAN para recopilar todas las sesiones TCP y de acceso directo a memoria remota (RDMA) nuevas creadas y enviarlas al servidor back-end para su visualización;
• Solución de problemas de red: Captura el tráfico de red para el análisis de fallos cuando se produce un problema de red.
Para ello, el dispositivo de red de origen debe filtrar el tráfico de interés para el usuario del flujo masivo de datos, crear una copia y encapsular cada trama copiada en un contenedor especial de "supertrama" que contenga información adicional suficiente para que pueda ser enrutada correctamente al dispositivo receptor. Además, debe permitir que el dispositivo receptor extraiga y recupere completamente el tráfico original monitorizado.
El dispositivo receptor puede ser otro servidor que admita la desencapsulación de paquetes ERSPAN.
Análisis del tipo y formato del paquete ERSPAN
Los paquetes ERSPAN se encapsulan mediante GRE y se reenvían a cualquier destino con dirección IP a través de Ethernet. Actualmente, ERSPAN se utiliza principalmente en redes IPv4, y la compatibilidad con IPv6 será un requisito en el futuro.
Para la estructura de encapsulación general de ERSAPN, a continuación se muestra una captura de paquetes ICMP en modo espejo:
Además, el campo Tipo de protocolo en el encabezado GRE también indica el tipo interno de ERSPAN. El campo Tipo de protocolo 0x88BE indica ERSPAN Tipo II, y 0x22EB indica ERSPAN Tipo III.
1. Tipo I
La trama ERSPAN de tipo I encapsula IP y GRE directamente sobre la cabecera de la trama espejo original. Esta encapsulación añade 38 bytes a la trama original: 14 (MAC) + 20 (IP) + 4 (GRE). La ventaja de este formato es que tiene una cabecera compacta y reduce el coste de transmisión. Sin embargo, dado que establece los campos GRE Flag y Version en 0, no incluye campos extendidos y el tipo I no se utiliza ampliamente, por lo que no es necesario ampliarlo.
El formato del encabezado GRE de tipo I es el siguiente:
2. Tipo II
En el Tipo II, los campos C, R, K, S, S, Recur, Flags y Version del encabezado GRE son todos 0, excepto el campo S. Por lo tanto, el campo Número de secuencia se muestra en el encabezado GRE del Tipo II. Es decir, el Tipo II garantiza el orden de recepción de los paquetes GRE, evitando que un gran número de paquetes GRE desordenados no se puedan ordenar debido a un fallo de red.
El formato del encabezado GRE de tipo II es el siguiente:
Además, el formato de trama ERSPAN Tipo II añade una cabecera ERSPAN de 8 bytes entre la cabecera GRE y la trama reflejada original.
El formato de encabezado ERSPAN para el Tipo II es el siguiente:
Finalmente, inmediatamente después del fotograma de imagen original, se encuentra el código estándar de comprobación de redundancia cíclica (CRC) de Ethernet de 4 bytes.
Cabe destacar que, en la implementación, la trama espejo no contiene el campo FCS de la trama original; en su lugar, se recalcula un nuevo valor CRC basado en todo el ERSPAN. Esto significa que el dispositivo receptor no puede verificar la corrección del CRC de la trama original, y solo podemos asumir que se replican únicamente las tramas que no presentan errores.
3. Tipo III
El tipo III introduce una cabecera compuesta más grande y flexible para abordar escenarios de monitorización de red cada vez más complejos y diversos, que incluyen, entre otros, la gestión de red, la detección de intrusiones, el análisis de rendimiento y latencia, y más. Estos escenarios necesitan conocer todos los parámetros originales de la trama espejo, incluidos aquellos que no están presentes en la trama original.
El encabezado compuesto ERSPAN Tipo III incluye un encabezado obligatorio de 12 bytes y un subencabezado opcional de 8 bytes específico de la plataforma.
El formato de encabezado ERSPAN para el Tipo III es el siguiente:
De nuevo, después del marco del espejo original hay un CRC de 4 bytes.
Como se puede observar en el formato de encabezado del Tipo III, además de conservar los campos Ver, VLAN, COS, T y Session ID sobre la base del Tipo II, se agregan muchos campos especiales, tales como:
• BSO: se utiliza para indicar la integridad de carga de los marcos de datos transmitidos a través de ERSPAN. 00 es un marco bueno, 11 es un marco malo, 01 es un marco corto, 11 es un marco grande;
• Marca de tiempo: exportada desde el reloj de hardware sincronizado con la hora del sistema. Este campo de 32 bits admite una granularidad de marca de tiempo de al menos 100 microsegundos;
• Tipo de trama (P) y tipo de trama (FT): el primero se utiliza para especificar si ERSPAN transporta tramas de protocolo Ethernet (tramas PDU), y el segundo se utiliza para especificar si ERSPAN transporta tramas Ethernet o paquetes IP.
• ID de hardware: identificador único del motor ERSPAN dentro del sistema;
• Gra (Granularidad de la marca de tiempo): especifica la granularidad de la marca de tiempo. Por ejemplo, 00B representa una granularidad de 100 microsegundos, 01B una granularidad de 100 nanosegundos, 10B una granularidad IEEE 1588 y 11B requiere subencabezados específicos de la plataforma para lograr una mayor granularidad.
• ID de plataforma frente a información específica de la plataforma: Los campos de información específica de la plataforma tienen formatos y contenidos diferentes según el valor del ID de plataforma.
Cabe destacar que los distintos campos de encabezado compatibles mencionados anteriormente pueden utilizarse en aplicaciones ERSPAN estándar, incluso para duplicar tramas de error o tramas BPDU, manteniendo el paquete troncal original y el ID de VLAN. Además, durante la duplicación, se puede añadir información clave de marca de tiempo y otros campos de información a cada trama ERSPAN.
Gracias a los encabezados de características propios de ERSPAN, podemos lograr un análisis más preciso del tráfico de red y, a continuación, simplemente montar la ACL correspondiente en el proceso de ERSPAN para que coincida con el tráfico de red que nos interesa.
ERSPAN implementa la visibilidad de sesión RDMA.
Veamos un ejemplo del uso de la tecnología ERSPAN para lograr la visualización de sesiones RDMA en un escenario RDMA:
RDMAEl acceso remoto directo a memoria (REMA) permite que el adaptador de red del servidor A lea y escriba en la memoria del servidor B mediante tarjetas de interfaz de red inteligentes (NIC) y conmutadores, logrando así un alto ancho de banda, baja latencia y un bajo consumo de recursos. Se utiliza ampliamente en escenarios de big data y almacenamiento distribuido de alto rendimiento.
RoCEv2RDMA sobre Ethernet convergente versión 2. Los datos RDMA se encapsulan en la cabecera UDP. El número de puerto de destino es 4791.
El funcionamiento y mantenimiento diarios de RDMA requieren la recopilación de gran cantidad de datos, que se utilizan para obtener las líneas de referencia diarias del nivel de agua y las alarmas anómalas, así como la base para localizar problemas. En combinación con ERSPAN, se pueden capturar grandes volúmenes de datos rápidamente para obtener información sobre la calidad de reenvío en microsegundos y el estado de interacción del protocolo del chip de conmutación. Mediante el análisis y la estadística de datos, se puede obtener una evaluación y predicción de la calidad de reenvío de extremo a extremo de RDMA.
Para lograr la visualización de sesiones RDAM, necesitamos que ERSPAN haga coincidir las palabras clave para las sesiones de interacción RDMA al replicar el tráfico, y necesitamos utilizar la lista extendida de expertos.
Definición de campo de coincidencia de lista extendida de nivel experto:
La función definida por el usuario (UDF) consta de cinco campos: palabra clave, campo base, campo de desplazamiento, campo de valor y campo de máscara. Debido a la capacidad de las entradas de hardware, se pueden utilizar hasta ocho UDF. Cada UDF puede coincidir con un máximo de dos bytes.
• Palabras clave UDF: UDF1... UDF8 Contiene ocho palabras clave del dominio de coincidencia UDF
• Campo base: identifica la posición inicial del campo de coincidencia de la UDF. Lo siguiente
Encabezado L4 (aplicable a RG-S6520-64CQ)
Encabezado L5 (para RG-S6510-48VS8Cq)
• Desplazamiento: indica el desplazamiento basado en el campo base. El valor oscila entre 0 y 126.
• Campo de valor: valor coincidente. Se puede usar junto con el campo de máscara para configurar el valor específico que se va a comparar. El bit válido es de dos bytes.
• Campo de máscara: máscara, el bit válido es de dos bytes
(Nota: Si se utilizan varias entradas en el mismo campo de coincidencia de UDF, los campos base y de desplazamiento deben ser iguales).
Los dos paquetes clave asociados con el estado de la sesión RDMA son el Paquete de Notificación de Congestión (CNP) y el Acuse de Recibo Negativo (NAK):
El primero lo genera el receptor RDMA tras recibir el mensaje ECN enviado por el conmutador (cuando el búfer eout alcanza el umbral), que contiene información sobre el flujo o QP que causa la congestión. El segundo se utiliza para indicar que la transmisión RDMA tiene un mensaje de respuesta por pérdida de paquetes.
Veamos cómo relacionar estos dos mensajes utilizando la lista extendida de nivel experto:
Lista de acceso de expertos RDMA extendida
permitir udp cualquiera cualquiera cualquiera cualquiera igual 4791udf 1 l4_header 8 0x8100 0xFF00(Coincide con RG-S6520-64CQ)
permitir udp cualquiera cualquiera cualquiera cualquiera igual 4791udf 1 l5_header 0 0x8100 0xFF00(Compatible con RG-S6510-48VS8CQ)
Lista de acceso de expertos RDMA extendida
permitir udp cualquiera cualquiera cualquiera cualquiera igual 4791udf 1 l4_header 8 0x1100 0xFF00 udf 2 l4_header 20 0x6000 0xFF00(Coincide con RG-S6520-64CQ)
permitir udp cualquiera cualquiera cualquiera cualquiera igual 4791udf 1 l5_header 0 0x1100 0xFF00 udf 2 l5_header 12 0x6000 0xFF00(Compatible con RG-S6510-48VS8CQ)
Como paso final, puede visualizar la sesión RDMA montando la lista de extensiones expertas en el proceso ERSPAN correspondiente.
Escribe en el último
ERSPAN es una de las herramientas indispensables en las redes de centros de datos actuales, cada vez más grandes, con un tráfico de red cada vez más complejo y requisitos de operación y mantenimiento de red cada vez más sofisticados.
Con el creciente grado de automatización de la operación y el mantenimiento (O&M), tecnologías como Netconf, RESTconf y gRPC son populares entre los estudiantes de O&M en el ámbito de la automatización de redes. El uso de gRPC como protocolo subyacente para el envío de tráfico espejo también ofrece numerosas ventajas. Por ejemplo, al basarse en el protocolo HTTP/2, permite el mecanismo de transmisión de datos en la misma conexión. Gracias a la codificación ProtoBuf, el tamaño de la información se reduce a la mitad en comparación con el formato JSON, lo que agiliza y optimiza la transmisión de datos. Imagínese: si se utilizara ERSPAN para replicar flujos de datos relevantes y luego se enviaran al servidor de análisis en gRPC, ¿mejoraría significativamente la capacidad y la eficiencia de la automatización de la operación y el mantenimiento de la red?
Fecha de publicación: 10 de mayo de 2022










