Найпоширенішим інструментом для моніторингу мережі та усунення несправностей сьогодні є аналізатор портів комутатора (SPAN), також відомий як віддзеркалення портів. Це дозволяє нам відстежувати мережевий трафік у режимі позасмугового обходу, не перешкоджаючи службам у живій мережі, і надсилає копію відстежуваного трафіку на локальні або віддалені пристрої, включаючи Sniffer, IDS або інші типи інструментів аналізу мережі.
Деякі типові способи використання:
• Усунення неполадок мережі шляхом відстеження кадрів керування/даних;
• Аналіз затримки та тремтіння за допомогою моніторингу пакетів VoIP;
• Аналіз затримки шляхом моніторингу мережевих взаємодій;
• Виявляти аномалії шляхом моніторингу мережевого трафіку.
Трафік SPAN може бути локально віддзеркалений на інші порти на тому самому пристрої джерела або віддалено віддзеркалений на інші мережеві пристрої, суміжні з рівнем 2 вихідного пристрою (RSPAN).
Сьогодні ми поговоримо про технологію віддаленого моніторингу Інтернет-трафіку під назвою ERSPAN (Encapsulated Remote Switch Port Analyzer), яку можна передавати через три рівні IP. Це розширення SPAN для Encapsulated Remote.
Основні принципи роботи ЕРСПАН
По-перше, давайте розглянемо особливості ERSPAN:
• Копія пакета з вихідного порту надсилається на сервер призначення для синтаксичного аналізу за допомогою Generic Routing Encapsulation (GRE). Фізичне розташування сервера не обмежено.
• За допомогою функції визначеного користувачем поля (UDF) мікросхеми будь-який зсув від 1 до 126 байт виконується на основі базового домену через розширений список експертного рівня, а ключові слова сеансу зіставляються для реалізації візуалізації. сеансу, наприклад, тристороннє рукостискання TCP і сеанс RDMA;
• Підтримка налаштування частоти дискретизації;
• Підтримує довжину перехоплення пакетів (Packet Slicing), зменшуючи тиск на цільовий сервер.
Завдяки цим функціям ви можете зрозуміти, чому ERSPAN сьогодні є важливим інструментом для моніторингу мереж у центрах обробки даних.
Основні функції ERSPAN можна узагальнити в двох аспектах:
• Видимість сеансу: використовуйте ERSPAN для збору всіх нових створених сеансів TCP і віддаленого прямого доступу до пам’яті (RDMA) на внутрішньому сервері для відображення;
• Усунення несправностей мережі: фіксує мережевий трафік для аналізу несправностей, коли виникають проблеми з мережею.
Для цього вихідний мережевий пристрій має відфільтрувати трафік, що цікавить користувача, із масивного потоку даних, зробити копію та інкапсулювати кожен кадр копії в спеціальний «контейнер суперфрейму», який містить достатньо додаткової інформації, щоб він міг бути правильно скерований до приймального пристрою. Крім того, увімкніть пристрій-одержувач для отримання та повного відновлення вихідного відстежуваного трафіку.
Одержувачем може бути інший сервер, який підтримує декапсуляцію пакетів ERSPAN.
Аналіз типу та формату пакета ERSPAN
Пакети ERSPAN інкапсулюються за допомогою GRE та пересилаються до будь-якого адресата з IP-адресою через Ethernet. Зараз ERSPAN в основному використовується в мережах IPv4, а в майбутньому підтримка IPv6 стане обов’язковою.
Для загальної структури інкапсуляції ERSAPN наведено наступне захоплення дзеркальних пакетів пакетів ICMP:
Крім того, поле «Тип протоколу» в заголовку 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 виглядає наступним чином:
2. ІІ тип
У типі II всі поля C, R, K, S, S, Recur, Flags і Version у заголовку GRE мають значення 0, крім поля S. Таким чином, поле порядкового номера відображається в заголовку GRE типу II. Тобто тип II може забезпечити порядок отримання GRE-пакетів, так що велика кількість непорядкових GRE-пакетів не може бути відсортована через збій мережі.
Формат заголовка GRE типу II виглядає наступним чином:
Крім того, формат фрейму ERSPAN типу II додає 8-байтовий заголовок ERSPAN між заголовком GRE та оригінальним дзеркальним кадром.
Формат заголовка ERSPAN для типу II виглядає наступним чином:
Нарешті, одразу після вихідного кадру зображення знаходиться стандартний 4-байтовий код перевірки циклічної надлишковості Ethernet (CRC).
Варто зазначити, що в реалізації дзеркальний кадр не містить поля FCS вихідного кадру, натомість нове значення CRC перераховується на основі всього ERSPAN. Це означає, що приймаючий пристрій не може перевірити правильність CRC вихідного кадру, і ми можемо лише припустити, що віддзеркалено лише непошкоджені кадри.
3. III тип
Тип III представляє більший і більш гнучкий композитний заголовок для вирішення все більш складних і різноманітних сценаріїв моніторингу мережі, включаючи, але не обмежуючись, мережеве керування, виявлення вторгнень, аналіз продуктивності та затримки тощо. Ці сцени повинні знати всі початкові параметри рами дзеркала та включати ті, яких немає в самій оригінальній рамі.
Композитний заголовок ERSPAN типу III містить обов’язковий 12-байтовий заголовок і необов’язковий 8-байтовий підзаголовок для конкретної платформи.
Формат заголовка ERSPAN для типу III виглядає наступним чином:
Знову ж таки, після вихідного дзеркального кадру стоїть 4-байтовий CRC.
Як видно з формату заголовка типу III, на додаток до збереження полів Ver, VLAN, COS, T і ідентифікатора сеансу на основі типу 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 вимагає підзаголовків для конкретної платформи для досягнення вищої гранулярності.
• Platf ID проти Platform Specific Info: поля Platf Specific Info мають різні формати та вміст залежно від значення Platf ID.
Слід зазначити, що різні поля заголовків, які підтримуються вище, можна використовувати у звичайних програмах ERSPAN, навіть дзеркально віддзеркалюючи кадри помилок або кадри BPDU, зберігаючи оригінальний пакет транка та ідентифікатор VLAN. Крім того, під час дзеркального відображення до кожного кадру ERSPAN можна додати ключову інформацію про час та інші інформаційні поля.
За допомогою власних заголовків функцій ERSPAN ми можемо досягти більш детального аналізу мережевого трафіку, а потім просто змонтувати відповідний ACL у процесі ERSPAN, щоб відповідати мережевому трафіку, який нас цікавить.
ERSPAN реалізує видимість сесії RDMA
Розглянемо приклад використання технології ERSPAN для досягнення візуалізації сеансу RDMA у сценарії RDMA:
RDMA: Віддалений прямий доступ до пам’яті дозволяє мережевому адаптеру сервера A читати та записувати пам’ять сервера B за допомогою інтелектуальних мережевих інтерфейсних карт (inics) і комутаторів, досягаючи високої пропускної здатності, низької затримки та низького використання ресурсів. Він широко використовується у сценаріях великих даних і високопродуктивних розподілених сховищ.
RoCEv2: RDMA через Converged Ethernet версії 2. Дані RDMA інкапсульовані в заголовку UDP. Номер порту призначення – 4791.
Щоденна робота та технічне обслуговування RDMA вимагає збору великої кількості даних, які використовуються для збору щоденних контрольних ліній рівня води та аномальних сигналів тривоги, а також є основою для визначення аномальних проблем. У поєднанні з ERSPAN можна швидко отримувати величезні дані для отримання мікросекундних даних якості пересилання та статусу взаємодії протоколу комутаційного чіпа. Завдяки статистиці та аналізу даних можна отримати оцінку та прогноз якості наскрізної пересилання RDMA.
Щоб досягти візуалізації сеансу RDAM, нам потрібен ERSPAN, щоб відповідати ключовим словам для сеансів взаємодії RDMA під час відображення трафіку, і нам потрібно використовувати розширений список експертів.
Розширений список на рівні експерта, що відповідає визначенню поля:
UDF складається з п’яти полів: ключове слово UDF, базове поле, поле зміщення, поле значення та поле маски. Обмежуючись ємністю апаратних записів, можна використовувати загалом вісім UDF. Один UDF може відповідати максимум двом байтам.
• Ключове слово UDF: UDF1... UDF8 Містить вісім ключових слів відповідного домену UDF
• Базове поле: визначає початкову позицію поля відповідності UDF. Наступне
L4_header (застосовується до RG-S6520-64CQ)
L5_header (для RG-S6510-48VS8Cq)
• Зсув: вказує на зсув на основі базового поля. Діапазон значень від 0 до 126
• Поле значення: відповідне значення. Його можна використовувати разом із полем маски, щоб налаштувати конкретне значення, яке буде відповідати. Дійсний біт становить два байти
• Поле маски: маска, дійсний біт становить два байти
(Додати: якщо в одному полі відповідності UDF використовується кілька записів, базове та зсувне поля мають бути однаковими.)
Два ключові пакети, пов’язані зі станом сеансу RDMA, — це пакет сповіщення про перевантаження (CNP) і негативне підтвердження (NAK):
Перше генерується приймачем RDMA після отримання повідомлення ECN, надісланого комутатором (коли буфер eout досягає порогового значення), яке містить інформацію про потік або QP, що викликає перевантаження. Останнє використовується для вказівки, що передача RDMA має повідомлення відповіді про втрату пакетів.
Давайте розглянемо, як зіставити ці два повідомлення за допомогою розширеного списку експертного рівня:
розширений список експертного доступу rdma
дозволити udp будь-який будь-який будь-який eq 4791udf 1 l4_header 8 0x8100 0xFF00(Відповідає RG-S6520-64CQ)
дозволити udp будь-який будь-який будь-який eq 4791udf 1 l5_header 0 0x8100 0xFF00(Відповідає RG-S6510-48VS8CQ)
розширений список експертного доступу rdma
дозволити udp будь-який будь-який будь-який eq 4791udf 1 l4_header 8 0x1100 0xFF00 udf 2 l4_header 20 0x6000 0xFF00(Відповідає RG-S6520-64CQ)
дозволити udp будь-який будь-який будь-який eq 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 у мережевих автоматичних O&M. Використання gRPC як базового протоколу для надсилання зворотного дзеркального трафіку також має багато переваг. Наприклад, ґрунтуючись на протоколі HTTP/2, він може підтримувати механізм потокової передачі в одному з’єднанні. За допомогою кодування ProtoBuf розмір інформації зменшується вдвічі порівняно з форматом JSON, що робить передачу даних швидшою та ефективнішою. Тільки уявіть, якщо ви використовуєте ERSPAN для віддзеркалення зацікавлених потоків, а потім надсилаєте їх на сервер аналізу на gRPC, чи це значно покращить здатність і ефективність автоматичної роботи та обслуговування мережі?
Час публікації: 10 травня 2022 р