Het erspan verleden en heden van MyLinking ™ Network -zichtbaarheid

Het meest voorkomende hulpmiddel voor netwerkbewaking en probleemoplossing vandaag is Switch Port Analyzer (Span), ook bekend als Port Mirroring. Het stelt ons in staat om het netwerkverkeer te controleren in de bandmodus zonder de services op het live -netwerk te verstoren en stuurt een kopie van het gecontroleerde verkeer naar lokale of externe apparaten, waaronder sniffer, ID's of andere soorten netwerkanalysetools.

Sommige typische toepassingen zijn:

• Problemen met netwerkproblemen oplossen door controle/gegevensframes bij te houden;

• Analyseer latentie en jitter door VoIP -pakketten te bewaken;

• Analyseer latentie door interacties tussen netwerk te bewaken;

• Detecteer anomalieën door netwerkverkeer te monitoren.

Span -verkeer kan lokaal worden gespiegeld naar andere poorten op hetzelfde bronapparaat, of op afstand gespiegeld naar andere netwerkapparaten grenzend aan laag 2 van het bronapparaat (RSPAN).

Vandaag gaan we het hebben over externe internetverkeersbewakingstechnologie genaamd Erspan (ingekapselde externe schakelpoortanalysator) die over drie lagen IP kunnen worden verzonden. Dit is een uitbreiding van de spanwijdte tot ingekapselde afstandsbediening.

Basisbewerkingsprincipes van Erspan

Laten we eerst eens kijken naar de functies van Erspan:

• Een kopie van het pakket van de bronpoort wordt naar de bestemmingsserver verzonden om te parseren via generieke routing -inkapseling (GRE). De fysieke locatie van de server is niet beperkt.

• Met behulp van het gebruik van de gebruiker gedefinieerde veld (UDF) van de chip, wordt elke offset van 1 tot 126 bytes uitgevoerd op basis van het basisdomein via de uitgebreide lijst op expertniveau, en de sessiesleutelwoorden worden geëvenaard om de visualisatie van de sessie te realiseren, zoals de TCP driewegen handshake en RDMA-sessie;

• Ondersteuningsinstelling bemonsteringssnelheid;

• Ondersteunt de lengte van de pakketinterceptie (pakket snijden), waardoor de druk op de doelserver wordt verminderd.

Met deze functies kunt u zien waarom Erspan vandaag een essentieel hulpmiddel is voor het bewaken van netwerken in datacenters.

De belangrijkste functies van Erspan kunnen in twee aspecten worden samengevat:

• Zichtbaarheid van de sessie: gebruik erspan om alle gemaakte nieuwe TCP- en externe directe geheugentoegang (RDMA) -sessies te verzamelen naar de back-end server voor weergave;

• Problemen met netwerk oplossen: legt netwerkverkeer vast voor foutanalyse wanneer een netwerkprobleem optreedt.

Om dit te doen, moet het bronnetwerkapparaat het interessante verkeer voor de gebruiker uit de enorme gegevensstroom filteren, een kopie maken en elk kopie -frame inkapselen in een speciale "superframe -container" die voldoende aanvullende informatie bevat, zodat het correct kan worden gerouteerd naar het ontvangende apparaat. Stel bovendien het ontvangende apparaat in staat om het oorspronkelijke gecontroleerde verkeer te extraheren en volledig te herstellen.

Het ontvangende apparaat kan een andere server zijn die decapsulerende Erspan -pakketten ondersteunt.

ERSPAN -pakketten inkapselen

Het erspan -type en pakketformaatanalyse

Erspan -pakketten worden ingekapseld met behulp van GRE en doorgestuurd naar elke IP -adresseerbare bestemming via Ethernet. Erspan wordt momenteel voornamelijk gebruikt op IPv4 -netwerken en IPv6 -ondersteuning zal in de toekomst een vereiste zijn.

Voor de algemene inkapselingstructuur van ERSAPN is het volgende een spiegelpakket van ICMP -pakketten:

Encapsulatiestructuur van ERSAPN

Het Erspan -protocol heeft zich gedurende een lange periode ontwikkeld en met de verbetering van de mogelijkheden zijn verschillende versies gevormd, "erspan -typen" genoemd. Verschillende typen hebben verschillende frame header -indelingen.

Het wordt gedefinieerd in het eerste versie van de erspan -header:

Erspan header -versie

Bovendien geeft het protocoltype -veld in de GRE -header ook het interne ererspan -type aan. Het protocoltype -veld 0x88B geeft erspan type II aan, en 0x22eb geeft erspan type III aan.

1. Type I

Het erspan -frame van Type I omvat IP en GRE direct over de koptekst van het originele spiegelframe. Deze inkapseling voegt 38 bytes toe over het originele frame: 14 (Mac) + 20 (IP) + 4 (GRE). Het voordeel van dit formaat is dat het een compacte headergrootte heeft en de transmissiekosten verlaagt. Omdat het echter GRE -vlag- en versievelden instelt op 0, heeft het geen uitgebreide velden en wordt Type I niet veel gebruikt, dus het is niet nodig om meer uit te breiden.

Het GRE -header -formaat van type I is als volgt:

Gre header -indeling i

2. Type II

In Type II zijn de C, R, K, S, S, Recur-, Flags en Version Fields in de GRE -header allemaal 0 behalve het S -veld. Daarom wordt het sequentienummerveld weergegeven in de GRE -header van Type II. Dat wil zeggen, Type II kan zorgen voor de volgorde van het ontvangen van GRE-pakketten, zodat een groot aantal GRE-pakketten niet kan worden gesorteerd vanwege een netwerkfout.

Het GRE -header -formaat van type II is als volgt:

GRE -header -indeling II

Bovendien voegt het Erspan Type II-frameformaat een 8-byte erspan-header toe tussen de GRE-header en het originele gespiegelde frame.

Het erspan -header -formaat voor type II is als volgt:

Erspan header -formaat II

Ten slotte is de CRC-code onmiddellijk, onmiddellijk na het oorspronkelijke beeldframe, de standaard 4-byte Ethernet Cyclic Redundancy Check (CRC) -code (CRC).

CRC

Het is vermeldenswaard dat het spiegelframe in de implementatie niet het FCS -veld van het oorspronkelijke frame bevat, in plaats daarvan wordt een nieuwe CRC -waarde opnieuw berekend op basis van de gehele erspan. Dit betekent dat het ontvangende apparaat de CRC -correctheid van het oorspronkelijke frame niet kan verifiëren, en we kunnen alleen maar aannemen dat alleen niet -gecorrupte frames worden gespiegeld.

3. Type III

Type III introduceert een grotere en flexibelere samengestelde koptekst om steeds complexere en diverse netwerkbewakingsscenario's aan te pakken, inclusief maar niet beperkt tot netwerkbeheer, inbraakdetectie, prestaties en vertragingsanalyse en meer. Deze scènes moeten alle originele parameters van het spiegelframe kennen en die welke niet aanwezig zijn in het originele frame zelf.

De Erspan Type III Composite-koptekst bevat een verplichte kop van 12 byte en een optionele platformspecifieke subheader van 8 byte.

Het erspan -header -formaat voor type III is als volgt:

Erspan header -formaat III

Nogmaals, nadat het originele spiegelframe een 4-byte CRC is.

CRC

Zoals te zien is in het koptekst -formaat van type III, worden naast het behouden van de VLAN, VLAN-, COS-, T- en sessie -ID -velden op basis van Type II veel speciale velden toegevoegd, zoals:

• BSO: gebruikt om de lading -integriteit aan te geven van gegevensframes die via erspan zijn gedragen. 00 is een goed frame, 11 is een slecht frame, 01 is een kort frame, 11 is een groot frame;

• Tijdstempel: geëxporteerd vanuit de hardwareklok gesynchroniseerd met de systeemtijd. Dit 32-bits veld ondersteunt ten minste 100 microseconden tijdstempel granulariteit;

• Frame type (P) en frame type (FT): de eerste wordt gebruikt om aan te geven of Erspan Ethernet -protocolframes (PDU -frames) draagt, en deze laatste wordt gebruikt om aan te geven of erspan Ethernet -frames of IP -pakketten draagt.

• HW ID: unieke identificatie van de erspan -motor binnen het systeem;

• GRA (tijdstempel granulariteit): specificeert de granulariteit van de tijdstempel. 00B vertegenwoordigt bijvoorbeeld 100 microseconde granulariteit, 01B 100 nanoseconde granulariteit, 10B IEEE 1588 granulariteit en 11B vereist platformspecifieke subkanalen om een ​​hogere granulariteit te bereiken.

• Platf ID versus platformspecifieke info: Platfspecifieke infodevelden hebben verschillende formaten en inhoud, afhankelijk van de platf -ID -waarde.

Poort -ID -index

Opgemerkt moet worden dat de verschillende hierboven ondersteunde koptekstvelden kunnen worden gebruikt in reguliere erspan -toepassingen, zelfs spiegelende foutframes of BPDU -frames, met behoud van het originele Trunk -pakket en VLAN -ID. Bovendien kunnen belangrijke tijdstempelinformatie en andere informatievelden aan elk ererspan -frame worden toegevoegd tijdens het spiegelen.

Met de eigen functiekoppen van Erspan kunnen we een meer verfijnde analyse van netwerkverkeer bereiken en vervolgens eenvoudig de overeenkomstige ACL in het erspan -proces monteren om te passen bij het netwerkverkeer waarin we geïnteresseerd zijn.

Erspan implementeert de zichtbaarheid van de RDMA -sessie

Laten we een voorbeeld nemen van het gebruik van Erspan -technologie om RDMA -sessievisualisatie te bereiken in een RDMA -scenario:

RDMA: Remote Direct Memory Access stelt de netwerkadapter van server A in staat om het geheugen van server B te lezen en te schrijven met behulp van intelligente netwerkinterfacekaarten (inics) en switches, het bereiken van hoge bandbreedte, lage latentie en lage resource -gebruik. Het wordt veel gebruikt in big data en krachtige gedistribueerde opslagscenario's.

Rocev2: RDMA over geconvergeerde Ethernet -versie 2. De RDMA -gegevens zijn ingekapseld in de UDP -header. Het bestemmingspoortnummer is 4791.

Dagelijkse werking en onderhoud van RDMA vereist het verzamelen van veel gegevens, die worden gebruikt om dagelijkse referentielijnen van waterniveau en abnormale alarmen te verzamelen, evenals de basis voor het lokaliseren van abnormale problemen. Gecombineerd met Erspan kunnen massieve gegevens snel worden vastgelegd om microseconde -doorstuurkwaliteitsgegevens en protocolinteractiestatus van het schakelen van chip te verkrijgen. Door gegevensstatistieken en analyse kan RDMA end-to-end doorsturen Kwaliteitsbeoordeling en -voorspelling worden verkregen.

Om de visualisatie van de RDAM -sessie te bereiken, hebben we Erspan nodig om trefwoorden te matchen voor RDMA -interactiesessies bij het spiegelen van het verkeer, en we moeten de Extended -lijst van deskundigen gebruiken.

Expert-niveau uitgebreide lijst overeenkomende velddefinitie:

De UDF bestaat uit vijf velden: UDF -trefwoord, basisveld, offsetveld, waardeveld en maskerveld. Beperkt door de capaciteit van hardware -ingangen, kunnen in totaal acht UDF's worden gebruikt. Eén UDF kan maximaal twee bytes matchen.

• UDF -trefwoord: UDF1 ... UDF8 bevat acht trefwoorden van het UDF -overeenkomende domein

• Basisveld: identificeert de startpositie van het veld UDF -matching. Het volgende

L4_header (van toepassing op RG-S6520-64CQ)

L5_header (voor RG-S6510-48VS8CQ)

• Offset: geeft de offset aan op basis van het basisveld. De waarde varieert van 0 tot 126

• Veld voor waarde: overeenkomende waarde. Het kan samen met het maskerveld worden gebruikt om de specifieke waarde te configureren die moet worden gematcht. Het geldige bit is twee bytes

• Mask -veld: masker, geldige bit is twee bytes

(Toevoegen: als meerdere vermeldingen worden gebruikt in hetzelfde UDF -matching -veld, moeten de basis- en offsetvelden hetzelfde zijn.)

De twee belangrijke pakketten die zijn gekoppeld aan de RDMA -sessiestatus zijn congestie -meldingspakket (CNP) en negatieve bevestiging (NAK):

De eerste wordt gegenereerd door de RDMA -ontvanger na ontvangst van het ECN -bericht dat door de schakelaar is verzonden (wanneer de eout -buffer de drempel bereikt), die informatie bevat over de stroom of QP die congestie veroorzaakt. Dit laatste wordt gebruikt om aan te geven dat de RDMA -transmissie een pakketverliesresponsbericht heeft.

Laten we eens kijken hoe u deze twee berichten kunt matchen met behulp van de uitgebreide lijst op expertniveau:

RDMA CNP

Expert Access-lijst uitgebreide RDMA

sta udp toe een andere EQ 4791udf 1 l4_header 8 0x8100 0xff00(Matching RG-S6520-64CQ)

sta udp toe een andere EQ 4791udf 1 l5_header 0 0x8100 0xff00(Matching RG-S6510-48VS8CQ)

RDMA CNP 2

Expert Access-lijst uitgebreide RDMA

sta udp toe een andere EQ 4791udf 1 l4_header 8 0x1100 0xff00 udf 2 l4_header 20 0x6000 0xff00(Matching RG-S6520-64CQ)

sta udp toe een andere EQ 4791udf 1 l5_header 0 0x1100 0xff00 udf 2 l5_header 12 0x6000 0xff00(Matching RG-S6510-48VS8CQ)

Als laatste stap kunt u de RDMA -sessie visualiseren door de expertverlengingslijst te monteren in het juiste erspan -proces.

Schrijf in het laatste

Erspan is een van de onmisbare tools in de steeds grotere datacenternetwerken van vandaag, steeds complexer netwerkverkeer en steeds geavanceerdere netwerkbewerking en onderhoudsvereisten.

Met de toenemende mate van O&M automatisering zijn technologieën zoals NetCONF, RestConf en GRPC populair bij O&M studenten in Network Automatic O&M. Het gebruik van GRPC als het onderliggende protocol voor het verzenden van spiegelverkeer heeft ook veel voordelen. Op basis van het HTTP/2 -protocol kan het bijvoorbeeld het streaming duwmechanisme onder dezelfde verbinding ondersteunen. Met protobuf -codering wordt de grootte van informatie met de helft verlaagd in vergelijking met JSON -formaat, waardoor gegevensoverdracht sneller en efficiënter wordt. Stel je voor, als je Erspan gebruikt om geïnteresseerde streams te spiegelen en ze vervolgens naar de analyserver te sturen op GRPC, zal dit de mogelijkheid en efficiëntie van automatische werking en onderhoud van het netwerk aanzienlijk verbeteren?


Posttijd: mei-10-2022