L’outil le plus courant aujourd’hui pour la surveillance et le dépannage du réseau est Switch Port Analyzer (SPAN), également connu sous le nom de mise en miroir des ports. Il nous permet de surveiller le trafic réseau en mode contournement hors bande sans interférer avec les services sur le réseau en direct, et envoie une copie du trafic surveillé aux appareils locaux ou distants, notamment Sniffer, IDS ou d'autres types d'outils d'analyse de réseau.
Certaines utilisations typiques sont :
• Résoudre les problèmes de réseau en suivant les trames de contrôle/données ;
• Analyser la latence et la gigue en surveillant les paquets VoIP ;
• Analyser la latence en surveillant les interactions réseau ;
• Détectez les anomalies en surveillant le trafic réseau.
Le trafic SPAN peut être mis en miroir localement sur d'autres ports du même périphérique source, ou mis en miroir à distance sur d'autres périphériques réseau adjacents à la couche 2 du périphérique source (RSPAN).
Aujourd'hui, nous allons parler de la technologie de surveillance du trafic Internet à distance appelée ERSPAN (Encapsulated Remote Switch Port Analyser) qui peut être transmise sur trois couches IP. Il s'agit d'une extension de SPAN vers Encapsulated Remote.
Principes de fonctionnement de base d'ERSPAN
Tout d'abord, jetons un coup d'œil aux fonctionnalités d'ERSPAN :
• Une copie du paquet du port source est envoyée au serveur de destination pour analyse via Generic Routing Encapsulation (GRE). L'emplacement physique du serveur n'est pas limité.
• À l'aide de la fonction User Defined Field (UDF) de la puce, tout décalage de 1 à 126 octets est effectué en fonction du domaine de base via la liste étendue de niveau expert, et les mots-clés de session sont mis en correspondance pour réaliser la visualisation. de la session, comme la prise de contact à trois voies TCP et la session RDMA ;
• Supporte le réglage du taux d'échantillonnage ;
• Prend en charge la longueur d'interception des paquets (Packet Slicing), réduisant ainsi la pression sur le serveur cible.
Avec ces fonctionnalités, vous comprenez pourquoi ERSPAN est aujourd’hui un outil essentiel pour surveiller les réseaux à l’intérieur des centres de données.
Les principales fonctions de l'ERSPAN peuvent être résumées sous deux aspects :
• Visibilité de la session : utilisez ERSPAN pour collecter toutes les nouvelles sessions TCP et Remote Direct Memory Access (RDMA) créées sur le serveur principal pour affichage ;
• Dépannage réseau : capture le trafic réseau pour analyser les pannes lorsqu'un problème réseau survient.
Pour ce faire, le périphérique réseau source doit filtrer le trafic intéressant l'utilisateur à partir du flux de données massif, en faire une copie et encapsuler chaque trame de copie dans un « conteneur de supertrames » spécial qui contient suffisamment d'informations supplémentaires pour pouvoir être correctement acheminé vers l’appareil de réception. De plus, permettez à l’appareil de réception d’extraire et de récupérer entièrement le trafic surveillé d’origine.
Le périphérique de réception peut être un autre serveur prenant en charge la décapsulation des paquets ERSPAN.
L'analyse du type et du format de colis ERSPAN
Les paquets ERSPAN sont encapsulés à l'aide de GRE et transmis vers n'importe quelle destination adressable IP via Ethernet. ERSPAN est actuellement principalement utilisé sur les réseaux IPv4, et la prise en charge d'IPv6 sera une exigence à l'avenir.
Pour la structure générale d'encapsulation d'ERSAPN, voici une capture de paquets miroir des paquets ICMP :
De plus, le champ Type de protocole dans l’en-tête GRE indique également le type ERSPAN interne. Le champ Type de protocole 0x88BE indique ERSPAN Type II et 0x22EB indique ERSPAN Type III.
1. Tapez I
La trame ERSPAN de type I encapsule IP et GRE directement sur l'en-tête du cadre miroir d'origine. Cette encapsulation ajoute 38 octets par rapport à la trame d'origine : 14(MAC) + 20 (IP) + 4(GRE). L'avantage de ce format est qu'il présente une taille d'en-tête compacte et réduit le coût de transmission. Cependant, comme il définit les champs GRE Flag et Version sur 0, il ne comporte aucun champ étendu et le type I n'est pas largement utilisé, il n'est donc pas nécessaire de l'étendre davantage.
Le format d'en-tête GRE de type I est le suivant :
2. Type II
Dans le type II, les champs C, R, K, S, S, Recur, Flags et Version dans l'en-tête GRE sont tous à 0, à l'exception du champ S. Par conséquent, le champ Numéro de séquence est affiché dans l’en-tête GRE de type II. Autrement dit, le type II peut garantir l'ordre de réception des paquets GRE, de sorte qu'un grand nombre de paquets GRE dans le désordre ne puissent pas être triés en raison d'une panne de réseau.
Le format d'en-tête GRE de type II est le suivant :
De plus, le format de trame ERSPAN Type II ajoute un en-tête ERSPAN de 8 octets entre l'en-tête GRE et la trame miroir d'origine.
Le format d'en-tête ERSPAN pour le type II est le suivant :
Enfin, immédiatement après la trame d'image d'origine, se trouve le code de contrôle de redondance cyclique (CRC) Ethernet standard à 4 octets.
Il convient de noter que dans l'implémentation, la trame miroir ne contient pas le champ FCS de la trame d'origine, mais une nouvelle valeur CRC est recalculée sur la base de l'ensemble de l'ERSPAN. Cela signifie que le périphérique de réception ne peut pas vérifier l'exactitude du CRC de la trame d'origine et nous pouvons seulement supposer que seules les trames non corrompues sont mises en miroir.
3. Type III
Le type III introduit un en-tête composite plus grand et plus flexible pour répondre à des scénarios de surveillance de réseau de plus en plus complexes et diversifiés, y compris, mais sans s'y limiter, la gestion du réseau, la détection d'intrusion, l'analyse des performances et des retards, et bien plus encore. Ces scènes doivent connaître tous les paramètres d'origine du cadre du miroir et inclure ceux qui ne sont pas présents dans le cadre d'origine lui-même.
L'en-tête composite ERSPAN Type III comprend un en-tête obligatoire de 12 octets et un sous-en-tête facultatif spécifique à la plate-forme de 8 octets.
Le format d'en-tête ERSPAN pour le type III est le suivant :
Encore une fois, après le cadre miroir d'origine se trouve un CRC de 4 octets.
Comme le montre le format d'en-tête du type III, en plus de conserver les champs Ver, VLAN, COS, T et Session ID sur la base du type II, de nombreux champs spéciaux sont ajoutés, tels que :
• BSO : utilisé pour indiquer l'intégrité de la charge des trames de données transportées via ERSPAN. 00 est une bonne image, 11 est une mauvaise image, 01 est une image courte, 11 est une grande image ;
• Horodatage : exporté depuis l'horloge matérielle synchronisée avec l'heure système. Ce champ de 32 bits prend en charge au moins 100 microsecondes de granularité d'horodatage ;
• Type de trame (P) et Type de trame (FT) : le premier est utilisé pour spécifier si ERSPAN transporte des trames de protocole Ethernet (trames PDU), et le second est utilisé pour spécifier si ERSPAN transporte des trames Ethernet ou des paquets IP.
• HW ID : identifiant unique du moteur ERSPAN au sein du système ;
• Gra (Granularité de l'horodatage) : Spécifie la granularité de l'horodatage. Par exemple, 00B représente une granularité de 100 microsecondes, 01B une granularité de 100 nanosecondes, 10B une granularité IEEE 1588 et 11B nécessite des sous-en-têtes spécifiques à la plate-forme pour obtenir une granularité plus élevée.
• ID de plate-forme et informations spécifiques à la plate-forme : les champs d'informations spécifiques à la plate-forme ont des formats et des contenus différents en fonction de la valeur de l'ID de la plate-forme.
Il convient de noter que les différents champs d'en-tête pris en charge ci-dessus peuvent être utilisés dans les applications ERSPAN classiques, même en mettant en miroir des trames d'erreur ou des trames BPDU, tout en conservant le package Trunk et l'ID VLAN d'origine. De plus, des informations d'horodatage clés et d'autres champs d'informations peuvent être ajoutés à chaque trame ERSPAN pendant la mise en miroir.
Grâce aux propres en-têtes de fonctionnalités d'ERSPAN, nous pouvons réaliser une analyse plus fine du trafic réseau, puis simplement monter l'ACL correspondante dans le processus ERSPAN pour correspondre au trafic réseau qui nous intéresse.
ERSPAN met en œuvre la visibilité des sessions RDMA
Prenons un exemple d'utilisation de la technologie ERSPAN pour réaliser une visualisation de session RDMA dans un scénario RDMA :
RDMA: L'accès direct à la mémoire à distance permet à l'adaptateur réseau du serveur A de lire et d'écrire la mémoire du serveur B en utilisant des cartes d'interface réseau intelligentes (inics) et des commutateurs, obtenant ainsi une bande passante élevée, une faible latence et une faible utilisation des ressources. Il est largement utilisé dans les scénarios de Big Data et de stockage distribué hautes performances.
RoCEv2: RDMA sur Converged Ethernet version 2. Les données RDMA sont encapsulées dans l'en-tête UDP. Le numéro de port de destination est 4791.
L'exploitation et la maintenance quotidiennes du RDMA nécessitent la collecte d'un grand nombre de données, qui sont utilisées pour collecter les lignes de référence quotidiennes du niveau d'eau et les alarmes anormales, ainsi que pour localiser les problèmes anormaux. En combinaison avec ERSPAN, des données massives peuvent être capturées rapidement pour obtenir des données de qualité de transfert en microsecondes et l'état d'interaction du protocole de la puce de commutation. Grâce aux statistiques et à l'analyse des données, une évaluation et une prévision de la qualité du transfert de bout en bout RDMA peuvent être obtenues.
Pour réaliser la visualisation des sessions RDAM, nous avons besoin d'ERSPAN pour faire correspondre les mots-clés des sessions d'interaction RDMA lors de la mise en miroir du trafic, et nous devons utiliser la liste étendue des experts.
Définition du champ de correspondance de liste étendue de niveau expert :
L'UDF se compose de cinq champs : mot-clé UDF, champ de base, champ de décalage, champ de valeur et champ de masque. Limité par la capacité des entrées matérielles, un total de huit UDF peuvent être utilisés. Un UDF peut correspondre à un maximum de deux octets.
• Mot-clé UDF : UDF1... UDF8 Contient huit mots-clés du domaine correspondant UDF.
• Champ de base : identifie la position de départ du champ de correspondance UDF. Ce qui suit
L4_header (applicable au RG-S6520-64CQ)
L5_header (pour RG-S6510-48VS8Cq)
• Décalage : indique le décalage basé sur le champ de base. La valeur varie de 0 à 126
• Champ Valeur : valeur correspondante. Il peut être utilisé avec le champ de masque pour configurer la valeur spécifique à faire correspondre. Le bit valide est de deux octets
• Champ Masque : masque, le bit valide est de deux octets
(Ajouter : si plusieurs entrées sont utilisées dans le même champ de correspondance UDF, les champs de base et de décalage doivent être identiques.)
Les deux paquets clés associés à l'état de la session RDMA sont le paquet de notification de congestion (CNP) et l'accusé de réception négatif (NAK) :
Le premier est généré par le récepteur RDMA après réception du message ECN envoyé par le commutateur (lorsque le tampon eout atteint le seuil), qui contient des informations sur le flux ou le QP provoquant la congestion. Ce dernier est utilisé pour indiquer que la transmission RDMA contient un message de réponse en cas de perte de paquets.
Voyons comment faire correspondre ces deux messages à l'aide de la liste étendue de niveau expert :
liste d'accès des experts rdma étendu
permettre udp n'importe quel n'importe quel n'importe quel eq 4791udf 1 l4_header 8 0x8100 0xFF00(Correspondant au RG-S6520-64CQ)
permettre udp n'importe quel n'importe quel n'importe quel eq 4791udf 1 l5_header 0 0x8100 0xFF00(Correspondant au RG-S6510-48VS8CQ)
liste d'accès des experts rdma étendu
permettre udp n'importe quel n'importe quel n'importe quel eq 4791udf 1 l4_header 8 0x1100 0xFF00 udf 2 l4_header 20 0x6000 0xFF00(Correspondant au RG-S6520-64CQ)
permettre udp n'importe quel n'importe quel n'importe quel eq 4791udf 1 l5_header 0 0x1100 0xFF00 udf 2 l5_header 12 0x6000 0xFF00(Correspondant au RG-S6510-48VS8CQ)
Comme étape finale, vous pouvez visualiser la session RDMA en montant la liste d'extensions d'experts dans le processus ERSPAN approprié.
Écrivez en dernier
ERSPAN est l'un des outils indispensables dans les réseaux de centres de données de plus en plus vastes, le trafic réseau de plus en plus complexe et les exigences d'exploitation et de maintenance du réseau de plus en plus sophistiquées.
Avec le degré croissant d'automatisation de l'O&M, des technologies telles que Netconf, RESTconf et gRPC sont populaires parmi les étudiants en O&M dans le domaine de l'O&M automatique des réseaux. L’utilisation de gRPC comme protocole sous-jacent pour renvoyer le trafic miroir présente également de nombreux avantages. Par exemple, basé sur le protocole HTTP/2, il peut prendre en charge le mécanisme de streaming push sous la même connexion. Avec l'encodage ProtoBuf, la taille des informations est réduite de moitié par rapport au format JSON, ce qui rend la transmission des données plus rapide et plus efficace. Imaginez, si vous utilisez ERSPAN pour refléter les flux intéressés, puis les envoyez au serveur d'analyse sur gRPC, cela améliorera-t-il considérablement la capacité et l'efficacité du fonctionnement et de la maintenance automatiques du réseau ?
Heure de publication : 10 mai 2022