Миналото и настоящето на ERSPAN за видимостта на мрежата Mylinking™

Най-разпространеният инструмент за мрежов мониторинг и отстраняване на проблеми днес е Switch Port Analyzer (SPAN), известен още като Port mirroring. Той ни позволява да наблюдаваме мрежовия трафик в режим на байпас извън честотната лента, без да пречим на услугите в активната мрежа, и изпраща копие на наблюдавания трафик до локални или отдалечени устройства, включително Sniffer, IDS или други видове инструменти за мрежов анализ.

Някои типични употреби са:

• Отстраняване на мрежови проблеми чрез проследяване на контролни/данни рамки;

• Анализирайте латентността и трептенето чрез наблюдение на VoIP пакети;

• Анализирайте латентността чрез наблюдение на мрежовите взаимодействия;

• Откриване на аномалии чрез наблюдение на мрежовия трафик.

SPAN трафикът може да бъде локално огледален към други портове на същото устройство източник или дистанционно огледален към други мрежови устройства, съседни на Layer 2 на устройството източник (RSPAN).

Днес ще говорим за технология за дистанционно наблюдение на интернет трафика, наречена ERSPAN (Encapsulated Remote Switch Port Analyzer), която може да се предава през три IP слоя. Това е разширение на SPAN до Encapsulated Remote.

Основни принципи на работа на ERSPAN

Първо, нека разгледаме характеристиките на ERSPAN:

• Копие на пакета от порта източник се изпраща до сървъра получател за парсиране чрез Generic Routing Encapsulation (GRE). Физическото местоположение на сървъра не е ограничено.

• С помощта на функцията UDF (User Defined Field) на чипа, всяко отместване от 1 до 126 байта се извършва въз основа на базовия домейн чрез разширен списък на експертно ниво, а ключовите думи на сесията се съпоставят, за да се реализира визуализацията на сесията, като например TCP тристранно ръкостискане и RDMA сесия;

• Поддръжка на настройка на честота на дискретизация;

• Поддържа дължина на прихващане на пакети (Packet Slicing), намалявайки натоварването на целевия сървър.

С тези функции можете да разберете защо ERSPAN е важен инструмент за наблюдение на мрежи в центрове за данни днес.

Основните функции на ERSPAN могат да бъдат обобщени в два аспекта:

• Видимост на сесията: Използвайте ERSPAN, за да събирате всички създадени нови TCP и RDMA (Remote Direct Memory Access) сесии към back-end сървъра за показване;

• Отстраняване на неизправности в мрежата: Заснема мрежовия трафик за анализ на грешки, когато възникне мрежов проблем.

За да направи това, мрежовото устройство източник трябва да филтрира трафика, представляващ интерес за потребителя, от масивния поток от данни, да направи копие и да капсулира всеки копиран кадър в специален „суперкадър контейнер“, който съдържа достатъчно допълнителна информация, така че тя да може да бъде правилно насочена към приемащото устройство. Освен това, да позволи на приемащото устройство да извлече и напълно да възстанови оригиналния наблюдаван трафик.

Приемащото устройство може да бъде друг сървър, който поддържа декапсулиране на ERSPAN пакети.

Капсулиране на ERSPAN пакети

Анализ на типа и формата на пакета в ERSPAN

ERSPAN пакетите се капсулират с помощта на GRE и се препращат към всяка IP адресируема дестинация през Ethernet. ERSPAN в момента се използва главно в IPv4 мрежи, а поддръжката на IPv6 ще бъде изискване в бъдеще.

За общата структура на капсулиране на ERSAPN, следното е огледално заснемане на ICMP пакети:

структура на капсулиране на ERSAPN

Протоколът ERSPAN се е развивал в продължение на дълъг период от време и с подобряването на възможностите му са се оформили няколко версии, наречени „ERSPAN типове“. Различните типове имат различни формати на заглавките на кадрите.

Дефинира се в първото поле Version на заглавката ERSPAN:

Версия на заглавката на ERSPAN

Освен това, полето „Тип на протокола“ в заглавката на GRE също показва вътрешния тип ERSPAN. Полето „Тип на протокола“ 0x88BE показва ERSPAN тип II, а 0x22EB показва ERSPAN тип III.

1. Тип I

ERSPAN рамката от тип I капсулира IP и GRE директно върху заглавката на оригиналната огледална рамка. Това капсулиране добавя 38 байта към оригиналната рамка: 14(MAC) + 20 (IP) + 4(GRE). Предимството на този формат е, че има компактен размер на заглавката и намалява разходите за предаване. Тъй като обаче задава полетата GRE Flag и Version на 0, той не съдържа разширени полета и тип I не се използва широко, така че няма нужда от допълнително разширяване.

Форматът на заглавната част на GRE от тип I е следният:

Формат на заглавната част на GRE I

2. Тип II

В Тип II, полетата C, R, K, S, S, Recur, Flags и Version в GRE заглавката са 0, с изключение на полето S. Следователно, полето Sequence Number се показва в GRE заглавката на Тип II. Това означава, че Тип II може да гарантира реда на получаване на GRE пакети, така че голям брой GRE пакети извън реда не могат да бъдат сортирани поради мрежова повреда.

Форматът на заглавната част на GRE от тип II е следният:

Формат на заглавната част на GRE II

В допълнение, форматът на рамката ERSPAN тип II добавя 8-байтов ERSPAN заглавен файл между GRE заглавния файл и оригиналния огледален кадър.

Форматът на заглавката на ERSPAN за тип II е следният:

Формат на заглавката ERSPAN II

Накрая, непосредствено след оригиналния кадър на изображението, е стандартният 4-байтов код за циклична проверка за излишък (CRC) на Ethernet.

КРС

Заслужава да се отбележи, че в имплементацията огледалният кадър не съдържа полето FCS на оригиналния кадър, а вместо това се преизчислява нова CRC стойност въз основа на целия ERSPAN. Това означава, че приемащото устройство не може да провери коректността на CRC на оригиналния кадър и можем само да предположим, че се отразяват само неповредени кадри.

3. Тип III

Тип III въвежда по-голям и по-гъвкав композитен заглавен файл, за да се справи с все по-сложни и разнообразни сценарии за мрежов мониторинг, включително, но не само, управление на мрежата, откриване на прониквания, анализ на производителността и забавянето и други. Тези сцени трябва да познават всички оригинални параметри на огледалната рамка и да включват тези, които не присъстват в самата оригинална рамка.

Съставният заглавен файл ERSPAN тип III включва задължителен 12-байтов заглавен файл и опционален 8-байтов подзаглавен файл, специфичен за платформата.

Форматът на заглавката на ERSPAN за тип III е следният:

Формат на заглавката ERSPAN III

Отново, след оригиналната огледална рамка е 4-байтов CRC.

КРС

Както може да се види от формата на заглавката на Тип III, освен запазването на полетата Ver, VLAN, COS, T и Session ID на базата на Тип II, са добавени много специални полета, като например:

• BSO: използва се за обозначаване на целостта на зареждането на кадрите с данни, пренасяни през ERSPAN. 00 е добър кадър, 11 е лош кадър, 01 е къс кадър, 11 е голям кадър;

• Временна маркировка: експортирана от хардуерния часовник, синхронизиран със системното време. Това 32-битово поле поддържа гранулираност на времевата маркировка от поне 100 микросекунди;

• Тип на рамката (P) и тип на рамката (FT): първият се използва за определяне дали ERSPAN пренася рамки на Ethernet протокола (PDU рамки), а вторият се използва за определяне дали ERSPAN пренася Ethernet рамки или IP пакети.

• HW ID: уникален идентификатор на ERSPAN двигателя в системата;

• Gra (Грануларност на времевия печат): Указва гранулираността на времевия печат. Например, 00B представлява гранулираност от 100 микросекунди, 01B - гранулираност от 100 наносекунди, 10B - гранулираност по IEEE 1588, а 11B изисква специфични за платформата подзаглавки, за да се постигне по-висока гранулираност.

• Идентификатор на платформата спрямо информация, специфична за платформата: Полетата с информация, специфична за платформата, имат различни формати и съдържание в зависимост от стойността на идентификатора на платформата.

Индекс на идентификатора на порт

Трябва да се отбележи, че различните поддържани по-горе заглавни полета могат да се използват в обикновени ERSPAN приложения, дори при огледално отразяване на рамки за грешки или BPDU рамки, като същевременно се запазва оригиналният Trunk пакет и VLAN ID. Освен това, информация за времеви печат на ключ и други информационни полета могат да бъдат добавени към всеки ERSPAN кадър по време на огледалното отразяване.

Със собствените заглавки на функциите на ERSPAN можем да постигнем по-прецизен анализ на мрежовия трафик и след това просто да монтираме съответния ACL в процеса ERSPAN, за да съответства на мрежовия трафик, който ни интересува.

ERSPAN внедрява видимост на RDMA сесията

Нека вземем пример за използване на ERSPAN технологията за постигане на визуализация на RDMA сесия в RDMA сценарий:

RDMAОтдалеченият директен достъп до паметта (Remote Direct Memory Access) позволява на мрежовия адаптер на сървър А да чете и записва паметта на сървър Б, като използва интелигентни мрежови интерфейсни карти (inic) и комутатори, постигайки висока пропускателна способност, ниска латентност и ниско използване на ресурси. Той се използва широко в сценарии за големи данни и високопроизводително разпределено съхранение.

RoCEv2RDMA през конвергентен Ethernet версия 2. RDMA данните са капсулирани в UDP заглавката. Номерът на порта на местоназначение е 4791.

Ежедневната експлоатация и поддръжка на RDMA изисква събиране на голямо количество данни, които се използват за събиране на дневни референтни линии за нивото на водата и анормални аларми, както и за локализиране на анормални проблеми. В комбинация с ERSPAN, масивни данни могат да бъдат събирани бързо, за да се получат данни за качеството на препращане за микросекундни интервали и състояние на протоколното взаимодействие на комутационния чип. Чрез статистика и анализ на данните може да се получи цялостна оценка и прогнозиране на качеството на препращане на RDMA.

За да постигнем визуализация на RDAM сесия, се нуждаем от ERSPAN, за да съпоставяме ключови думи за RDMA сесии за взаимодействие при огледално отразяване на трафика и трябва да използваме разширения списък на експертите.

Дефиниция на поле за съвпадение на разширен списък на експертно ниво:

UDF се състои от пет полета: ключова дума на UDF, базово поле, поле за отместване, поле за стойност и поле за маска. Ограничени от капацитета на хардуерните записи, могат да се използват общо осем UDF. Една UDF може да съответства на максимум два байта.

• Ключова дума за UDF: UDF1... UDF8 Съдържа осем ключови думи от съвпадащия UDF домейн

• Базово поле: идентифицира началната позиция на полето за съвпадение на UDF. Следното

L4_заглавие (приложимо за RG-S6520-64CQ)

L5_заглавка (за RG-S6510-48VS8Cq)

• Отместване: показва отместването въз основа на базовото поле. Стойността варира от 0 до 126

• Поле за стойност: съответстваща стойност. Може да се използва заедно с полето за маска, за да се конфигурира конкретната стойност, която да се съпоставя. Валидният бит е два байта

• Поле за маска: маска, валидният бит е два байта

(Добавяне: Ако в едно и също поле за съвпадение на UDF се използват множество записи, базовото поле и полето за отместване трябва да са еднакви.)

Двата ключови пакета, свързани със състоянието на RDMA сесията, са Пакет за уведомление за претоварване (CNP) и Отрицателно потвърждение (NAK):

Първият се генерира от RDMA приемника след получаване на ECN съобщението, изпратено от комутатора (когато eout буферът достигне прага), което съдържа информация за потока или QP, причиняващ претоварване. Вторият се използва, за да се посочи, че RDMA предаването има съобщение за отговор за загуба на пакет.

Нека разгледаме как да съпоставим тези две съобщения, използвайки разширения списък на експертно ниво:

RDMA CNP

разширен rdma за експертен списък за достъп

разрешение udp произволен произволен произволен произволен уравнение 4791udf 1 l4_header 8 0x8100 0xFF00(Съответстващ на RG-S6520-64CQ)

разрешение udp произволен произволен произволен произволен уравнение 4791udf 1 l5_header 0 0x8100 0xFF00(Съответстващ на RG-S6510-48VS8CQ)

RDMA CNP 2

разширен rdma за експертен списък за достъп

разрешение udp произволен произволен произволен произволен уравнение 4791udf 1 l4_header 8 0x1100 0xFF00 udf 2 l4_header 20 0x6000 0xFF00(Съответстващ на RG-S6520-64CQ)

разрешение udp произволен произволен произволен произволен уравнение 4791udf 1 l5_header 0 0x1100 0xFF00 udf 2 l5_header 12 0x6000 0xFF00(Съответстващ на RG-S6510-48VS8CQ)

Като последна стъпка, можете да визуализирате RDMA сесията, като монтирате списъка с експертни разширения в съответния ERSPAN процес.

Напишете в последното

ERSPAN е един от незаменимите инструменти в днешните все по-големи мрежи от центрове за данни, все по-сложен мрежов трафик и все по-сложни изисквания за мрежова експлоатация и поддръжка.

С нарастващата степен на автоматизация на експлоатацията и поддръжката (O&M), технологии като Netconf, RESTconf и gRPC са популярни сред студентите по O&M в областта на автоматичната експлоатация и поддръжка на мрежи. Използването на gRPC като основен протокол за изпращане на огледален трафик също има много предимства. Например, базиран на HTTP/2 протокол, той може да поддържа механизма за стрийминг push в рамките на една и съща връзка. С кодирането ProtoBuf размерът на информацията се намалява наполовина в сравнение с JSON формата, което прави предаването на данни по-бързо и по-ефективно. Само си представете, ако използвате ERSPAN за огледално отразяване на интересуващите ви потоци и след това ги изпратите към сървъра за анализ на gRPC, ще подобри ли това значително възможността и ефективността на автоматичната работа и поддръжка на мрежата?


Време на публикуване: 10 май 2022 г.