Перейти к основному содержимому

Конструктор пакетов

Плагин «Конструктор пакетов» генерирует кадры по шаблону, который пользователь собирает из стека заголовков от Ethernet до VXLAN. Для каждого поля задаётся, как оно меняется от кадра к кадру: фиксированное значение, инкремент, декремент, список, случайное значение или адреса из источников и целей задачи. В одной записи можно задать несколько потоков с разными шаблонами и скоростями. До запуска можно посмотреть кадры в превью и выгрузить их в pcap: превью строится тем же кодом, что и генератор, поэтому кадры в превью совпадают с отправленными побайтно.

У плагина две стороны: Клиент собирает и отправляет кадры, Сервер принимает их и считает приём, потери, дубликаты, порядок и задержку по каждому потоку, а при необходимости по сочетаниям значений полей.

Плагин подходит для проверки обработки нестандартных и специально сформированных кадров: QinQ и стеков MPLS-меток, туннельной инкапсуляции, перебора адресов и портов, кадров с намеренно неверной контрольной суммой, смеси размеров кадров. С серверной стороной он показывает, какие потоки DUT потерял, продублировал или переставил и какую задержку внёс.

Плагин входит в модуль «Сетевое тестирование» (см. Стоимость) и настраивается в Data Plane: в каталоге плагинов выберите Конструктор пакетов и сторону Клиент или Сервер. У клиента настраиваются разделы Источники, Цели, Шаблон пакета и Длительность, у сервера только Источники и Длительность.

Клиент и сервер​

СторонаЧто делаетЧто настраивается
КлиентСобирает кадры по шаблону и отправляет их с каждого порта из ИсточниковИсточники, цели, шаблон пакета, потоки, скорость, длительность
СерверПринимает кадры на портах из своих Источников и ведёт статистику по потокам: приём, потери, дубликаты, порядок, задержкуИсточники (порты приёма) и длительность. Шаблона у сервера нет

Если в задаче есть хотя бы одна серверная запись конструктора пакетов, клиент пишет в последние 16 байт каждого кадра перед FCS сигнатуру: метку задачи, номер потока, номер порта-источника, номер кадра и время отправки. По сигнатуре сервер относит кадр к потоку и считает потери, дубликаты, порядок и задержку. Размер кадра при этом не меняется: сигнатура занимает конец payload. Поэтому самый маленький кадр каждого включённого потока должен вмещать заголовки, 16 байт сигнатуры и 4 байта FCS, иначе задача не сохранится с ошибкой «для сигнатуры кадр должен быть не меньше N байт». Кадр 64 байта с Ethernet II, IPv4 и UDP (42 байта заголовков) сигнатуру вмещает.

Без сервера сигнатура не пишется: кадры идут ровно по шаблону, и считается только передача. Форма клиента показывает, какой режим действует: Сигнатура включена или Считается только передача.

  • Серверу нужна хотя бы одна клиентская запись конструктора пакетов в той же задаче. Сервер считает потоки всех клиентских записей задачи.
  • Клиент и сервер могут работать на разных агентах. Задержка измеряется, только если клиент и сервер работают на одном агенте (см. Задержка и зонды).
  • Клиент и сервер могут использовать один и тот же порт: DUT возвращает кадры в порт, с которого они ушли, например маршрутизирует их в другой VLAN этого порта. Так измеряется задержка DUT на одном порту тестера.
  • Сервер только принимает кадры и не отвечает на них.

Порядок запуска​

  1. Создайте отдельную задачу и добавьте в неё клиентскую запись Конструктор пакетов. Другие плагины в эту задачу добавить нельзя, клиентские и серверные записи конструктора пакетов можно.
  2. В Источниках клиента выберите агенты, интерфейсы и сети, с которых будут отправляться кадры. Кадры отправляются с каждого выбранного порта; поля, которые берут значения из источников, на каждом порту получают адреса его сетей.
  3. В Целях выберите сети назначения, если поля шаблона должны брать адреса, MAC или порты из целей. Если все поля заданы вручную, цели не нужны.
  4. В разделе Шаблон пакета соберите стек заголовков и настройте поля, размер кадра и payload на вкладке Пакет, скорость и количество кадров на вкладке Передача. Проверьте кадры на вкладке Кадры. Чтобы с тех же портов шли кадры по другим шаблонам, добавьте потоки (см. Потоки).
  5. Чтобы считать приём, потери, порядок и задержку, добавьте серверную запись Конструктор пакетов и выберите в её Источниках порты, на которые DUT вернёт кадры.
  6. Задайте Длительность и запустите задачу. Результаты приёма отображаются на дашборде Конструктор пакетов на вкладке Метрики (см. Статистика потоков).

Шаблон проверяется при сохранении и при запуске задачи. Ошибки показываются с префиксом «Конструктор пакетов:» и путём к полю шаблона, ошибки отдельного потока — с префиксом «Конструктор пакетов: поток «имя»:».

Шаблон пакета​

Раздел Шаблон пакета состоит из вкладок Пакет, Группы, Передача, Кадры и Потоки. Над вкладками находится переключатель Поток: вкладки Пакет, Группы, Передача и Кадры показывают выбранный поток, вкладка Потоки показывает все потоки записи.

Кнопки раздела:

КнопкаЧто делает
Готовые шаблоныЗаменяет шаблон выбранного потока одним из типовых: UDP поверх IPv4 (64 байта или IMIX), UDP с 4096 сочетаниями адресов и портов, TCP SYN, ICMP Echo Request, VLAN 802.1Q, QinQ 802.1ad, две метки MPLS, UDP поверх IPv6, VXLAN, GRE (IPv4 в IPv4), ARP-запрос. Прежний шаблон можно вернуть кнопкой Вернуть прежний
БиблиотекаОткрывает сохранённые шаблоны (см. Библиотека шаблонов)
В библиотекуСохраняет шаблон выбранного потока в библиотеку
Скачать pcapВыгружает первые 1000 кадров выбранного потока для просмотра в Wireshark

Кнопка в правом верхнем углу разворачивает конструктор на всю ширину страницы и возвращает список параметров.

Пакет​

Вкладка Пакет — редактор пакета в три колонки, как Packet Editor в Keysight IxNetwork:

  • Редактор пакета — стек заголовков выбранного потока в виде плашек от Ethernet II до Payload. Выбранный заголовок подсвечен. Кнопка + справа от заголовка добавляет заголовок после него, кнопка × удаляет заголовок.
  • Поля выбранного заголовка — название поля и его значение в кадре, например <Авто> 0x0800, Инк: 49152, 1, 100 или <Из источника> 192.168.1.10. Поле Фильтр… оставляет поля, в названии которых есть введённый текст. Поля приоритета и флагов IPv4, флаги TCP и тег VLAN собраны в сворачиваемые разделы Приоритет, Флаги и Тег VLAN. Значок рядом с названием отмечает поле, по которому отслеживается поток.
  • Редактор поля — значения выбранного поля: флажок Авто, Паттерн и его параметры, Группа и флажок Отслеживание (см. ниже).

Под редактором находится Hex-вид: байты первого кадра, раскрашенные по заголовкам. Поле можно выбрать и щелчком по его байту; кнопка Hex-вид сворачивает дамп.

Кнопка + открывает список протоколов: сверху поле Фильтр…, под ним Закреплённые протоколы (Ethernet II, MPLS, VLAN, IPv4, IPv6, GRE, VXLAN, TCP, UDP), затем Другие протоколы. Протокол, который не может стоять на этом месте, показан серым, а подсказка называет причину: например, после VLAN можно добавить ещё один VLAN (QinQ), после MPLS следующую метку или IP, после UDP заголовок VXLAN. В поле фильтра можно ввести название протокола или его стандарт и нажать Enter, чтобы добавить первый подходящий. Заголовок, без которого соседние заголовки не могут идти подряд, удалить нельзя.

ЗаголовокСтандартДлина, байтЧто может идти дальше
Ethernet IIIEEE 802.314ARP, Ethernet II, IPv4, IPv6, MPLS, VLAN
VLANIEEE 802.1Q4ARP, Ethernet II, IPv4, IPv6, MPLS, VLAN
MPLSRFC 30324Ethernet II, IPv4, IPv6, MPLS
ARPRFC 82628—
IPv4RFC 79120GRE, ICMP, ICMPv6, IPv4, IPv6, TCP, UDP
IPv6RFC 820040GRE, ICMP, ICMPv6, IPv4, IPv6, TCP, UDP
GRERFC 27844ARP, Ethernet II, IPv4, IPv6, MPLS, VLAN
ICMPRFC 7928—
ICMPv6RFC 44438—
TCPRFC 929320—
UDPRFC 7688VXLAN
VXLANRFC 73488Ethernet II

В стеке может быть до 32 заголовков. Опции IPv4 и TCP, а также дополнительные заголовки IPv6 не поддерживаются; поля длины заголовка IPv4 (IHL) и TCP (Data Offset) доступны только для чтения. Если у внешнего тега QinQ оставлен TPID 0x8100, конструктор предлагает заменить его на 0x88a8 по IEEE 802.1ad кнопкой Сделать 0x88a8: порт коммутатора в режиме trunk отбрасывает кадры с тегом 0x8100 из VLAN, которых на нём нет.

Чтобы настроить поле, выберите его в колонке полей. Значения вводятся в формате поля: десятичное или шестнадцатеричное (0x) число, MAC-адрес, IPv4- или IPv6-адрес.

ПаттернЗначение в кадре
Одно значениеОдно фиксированное значение во всех кадрах
ИнкрементНачало, Шаг и Количество значений; после последнего значения счёт начинается заново
ДекрементТо же, что инкремент, но значение уменьшается
СписокЗначения по кругу; вводятся по одному в строке или через запятую, до 65 536 значений. Кнопка Импорт CSV заполняет список из файла CSV или текстового файла
Повторяемое случайноеСлучайные биты под маской (необязательно), остальные биты берутся из фиксированных битов. Например, маска 0.0.0.255 делает случайным последний октет IPv4-адреса
Случайное из диапазонаРавномерно случайное значение из ряда «от», «от + шаг», …, не больше «до»
Из источникаMAC, IP-адреса или порты сети порта-источника
Из целиMAC следующего узла, IP-адреса или порты сетей целей

Флажок Авто есть у авто-полей: пока он установлен, значение вычисляется автоматически, а паттерн недоступен. Если снять флажок, поле получает значение, которое было в кадре, в паттерне Одно значение.

Для случайных паттернов можно задать seed: с одним seed последовательность повторяется при каждом запуске.

Флажок Отслеживание включает статистику потоков по этому полю: сервер будет считать отдельно каждое сочетание значений отмеченных полей (см. Отслеживание). Флажок доступен в паттернах Инкремент, Декремент, Список, Из источника и Из цели.

Авто-поля заполняются автоматически, пока пользователь не задал их вручную:

  • поле следующего протокола (EtherType, протокол IP, Next Header, тип протокола GRE, порт назначения UDP) — по следующему заголовку стека;
  • бит Bottom of Stack у MPLS — 1, если дальше нет метки MPLS;
  • поля длины — для каждого кадра по его размеру;
  • контрольные суммы заголовка IPv4, UDP, TCP, ICMP и ICMPv6 — для каждого кадра.

Если снять у поля длины или контрольной суммы флажок Авто и задать значение, вычисление отключается. Так формируются кадры с намеренно неверной контрольной суммой для негативных тестов.

Поля из источников и целей. Поля MAC, IP-адресов и портов могут брать значения из задачи, как в остальных плагинах:

ПолеИз источникаИз цели
MACMAC каждого адреса источника по MAC-политике его сети: MAC порта, фиксированный или свой для каждого адресаMAC следующего узла к целям: MAC шлюза из сети источника или найденный по ARP/ND при запуске
IPv4 / IPv6Адреса сетей порта-источника: подсеть без шлюза и исключений, у IPv4 без адресов .0 и .255Адреса сетей всех целей по порядку, по тем же правилам
ПортПорты, заданные в сетях порта-источникаПорты, заданные в сетях целей

Если источники и цели задачи уже выбраны, а MAC, IP и порты заданы вручную, конструктор предлагает подставить их из задачи кнопкой Подставить из задачи или оставить как есть кнопкой Оставить вручную.

Payload и размер кадра​

Плашка Payload в конце стека открывает две настройки: Размер кадра и Заполнение:

ПараметрОписаниеЗначение
Размер кадра с FCSФиксированный: один размер. Инкремент: от «От» до «До» с шагом. Случайный: случайный размер из диапазона с шагом. IMIX: Simple IMIX 7:4:1 (64 байта × 7, 594 × 4, 1518 × 1, размеры перемешаны равномерно). Свой IMIX: свои размеры и веса. Авто: наименьший размер для стека заголовков, но не меньше 64 байтОт 64 до 9216 байт; по умолчанию фиксированный, 128 байт. Сумма весов своего IMIX не больше 4096
Заполнение: байты после последнего заголовкаШаблон байт (hex, повторяется до конца кадра, например 0xDEADBEEF, до 1024 байт), Возрастающие байты, Убывающие байты или Случайные байты (с необязательным seed)По умолчанию нули. Payload одинаков во всех кадрах и обрезается по размеру кадра

Четыре байта FCS добавляет сетевая карта; в превью они не показываются. Если в задаче есть сервер, последние 16 байт перед FCS занимает сигнатура (см. Клиент и сервер).

Группы​

Группы определяют, как сочетаются изменяемые поля:

  • поля одной группы меняются вместе, каждое по своему кругу, как независимые инкременты;
  • разные группы вложены, как разряды счётчика: верхняя группа внешняя, нижняя меняется быстрее всех. Так получаются все сочетания полей из разных групп.

Поля без группы попадают в группу По умолчанию. Группа выбирается в редакторе поля в паттернах инкремента, декремента, списка, из источника и из цели; случайные паттерны в группы не входят. В шаблоне может быть до 16 групп, кроме группы по умолчанию. На вкладке показывается число уникальных кадров до повтора полей (не более 2^62).

Передача​

Скорость и количество кадров задаются для выбранного потока; при нескольких потоках заголовок раздела называет поток.

ПараметрОписаниеЗначение
Режим скорости% линейной скорости — доля скорости каждого порта-источника. Кадров в секунду — частота кадров потока на каждом порту-источникеДоля линии больше 0 и не более 100%, по умолчанию 10%; частота от 1 до 1 000 000 000 кадров в секунду
Кадров на портСколько кадров потока отправить с каждого порта-источника. После этого поток молчит, а остальные потоки продолжают; если поток один, порт молчит до конца длительности задачи0 (по умолчанию) — отправлять до конца длительности задачи
Время работы плагинаДлительность работы, общая для всех потоков записи; те же значения, что в разделе Длительность—

При расчёте линейной скорости к среднему размеру кадра добавляются 20 байт преамбулы и межкадрового интервала. Под полем скорости конструктор показывает, сколько кадров в секунду это даст на каждом порту-источнике, а для скорости в кадрах в секунду — какую долю линии порта она займёт. Если заданное количество кадров не успеет уйти за длительность задачи, под полем Кадров на порт показывается, сколько кадров уйдёт на самом деле. Режим % линейной скорости требует известной скорости порта; если её не удаётся определить, задайте скорость в кадрах в секунду.

Кадры​

Вкладка Кадры показывает кадры выбранного потока по страницам: таблицу кадров, разбор выбранного кадра по заголовкам и полям и его байты. В сводке указаны число уникальных кадров, размер кадра, длина заголовков и цикл размеров. Если в задаче несколько портов-источников, порт для превью выбирается в поле Порт-источник: поля из источника берут адреса сетей этого порта.

MAC порта и MAC шлюза становятся известны только при запуске, поэтому в превью и в pcap на их месте нули. Сигнатура для сервера пишется при отправке, поэтому в превью и в pcap её нет. Если источники или цели ещё не выбраны, поля, которые берут из них значения, в превью показывают значения по умолчанию. Сохранить такую задачу нельзя, пока нужные источники и цели не выбраны.

Файл pcap содержит кадры без FCS; временная метка кадра n равна n мкс.

Потоки​

В одной клиентской записи можно задать до 32 потоков. У каждого потока свой шаблон, группы, скорость, количество кадров и отслеживание. Все включённые потоки идут вместе с каждого порта-источника: порт делит время между ними по их скоростям и перемежает кадры равномерно, так что на любом отрезке поток отстаёт от своей доли не больше чем на один кадр. Поток, отправивший заданное количество кадров, замолкает, остальные сохраняют свою скорость.

Действия с потоками находятся рядом с переключателем Поток над вкладками:

КнопкаЧто делает
Новый потокДобавляет после текущего поток с шаблоном по умолчанию (Ethernet II, IPv4, UDP)
Копия потокаДобавляет после текущего копию выбранного потока: шаблон, группы, скорость и отслеживание
Удалить потокУдаляет выбранный поток. Единственный поток удалить нельзя
Все потоки (N)Открывает вкладку Потоки. Кнопка видна, когда потоков больше одного

На вкладке Потоки таблица показывает каждый поток: имя, заголовки, размер кадра, скорость, количество кадров с порта и отправляется ли поток. Щелчок по строке выбирает поток, двойной щелчок или кнопка Изменить шаблон потока открывает его шаблон на вкладке Пакет. Под таблицей настраивается выбранный поток:

  • Имя потока — до 64 символов. Без имени поток называется «Поток N». Под этим именем поток показывается в переключателе и на дашборде.
  • Отправлять поток — выключенный поток остаётся в задаче, но кадров не отправляет и долю линии не занимает. Хотя бы один поток должен отправляться.
  • Отслеживание — как сервер делит поток на отслеживаемые потоки (см. Отслеживание).

Блок Доля линии на порту показывает сумму потоков, заданных в % линии, и для каждого порта-источника с известной скоростью — долю линии, которую займут все включённые потоки вместе с потоками в кадрах в секунду (по среднему размеру кадра). Если сумма потоков в % линии больше 100 %, задача не сохранится. Если на порту с учётом потоков в кадрах в секунду получается больше 100 % линии, порт не успеет отправить все кадры и скорости потоков упадут. Для потока в кадрах в секунду с размером кадра Минимальный долю линии заранее не посчитать.

Отслеживание​

Сервер ведёт отдельную статистику (приём, потери, дубликаты, порядок, задержку) по каждому отслеживаемому потоку. Как поток делится на отслеживаемые потоки, задаётся у каждого потока в блоке Отслеживание на вкладке Потоки или флажком Отслеживание в редакторе поля на вкладке Пакет:

РежимЧто считается одним отслеживаемым потоком
По потоку целикомВесь поток. Режим по умолчанию
По полямКаждое сочетание значений выбранных полей. Например, если адрес источника (256 значений) и порт источника (16 значений) находятся в разных группах, отслеживание по обоим полям даёт 4096 отслеживаемых потоков

Режим По полям доступен, когда в шаблоне потока есть поле в паттерне Инкремент, Декремент, Список, Из источника или Из цели. Авто-поля и поля в паттернах Одно значение, Повторяемое случайное и Случайное из диапазона отслеживать нельзя: их значение не выводится из номера кадра. Если отслеживаемое поле перевести в такой паттерн, оно перестаёт отслеживаться. При переключении на По полям отмечаются все поля, которые можно отслеживать; лишние снимите в таблице, где для каждого поля показаны заголовок, режим и число значений.

Под таблицей показывается число отслеживаемых потоков. Для полей из источников и целей оно зависит от сетей каждого порта и уточняется при запуске. На один поток можно отслеживать до 16 777 216 отслеживаемых потоков; если их больше, задача не сохранится, а для полей из источников и целей не запустится. Если отслеживаемых потоков больше 1024, во время работы задачи сервер записывает худшие из них, а полная таблица по всем потокам доступна после остановки задачи.

Библиотека шаблонов​

Шаблон можно сохранить в библиотеку (название до 128 символов и описание), чтобы использовать его в другой задаче. В библиотеке есть поиск по названию, описанию и заголовкам; шаблон можно открыть, обновить или удалить. Задача хранит свою копию шаблона: изменение или удаление шаблона в библиотеке задачи не затрагивает.

Статистика потоков​

Статистика отслеживаемых потоков находится на дашборде Конструктор пакетов на вкладке Метрики задачи, в разделе Отслеживаемые потоки. Данные собирает сервер: если серверной записи в задаче нет или задача ещё не запускалась, панели пустые.

  • Срез таблицы потоков — какие данные показаны: живой срез (обновляется раз в секунду), худшие потоки (во время работы задачи, если отслеживаемых потоков больше 1024: худшие по потерям и задержке, обновляются раз в 5 секунд) или итог задачи (все потоки после её остановки).
  • Отслеживаемые потоки — сколько всего отслеживаемых потоков, сколько из них С потерями и сколько Замолчавших (отправлено больше нуля, принято ноль).
  • Потоки по доле потерь — сколько отслеживаемых потоков попало в каждый диапазон доли потерь.
  • Худшие потоки — до 100 потоков с потерями, дубликатами или переупорядоченными кадрами, худшие сверху.
  • Все отслеживаемые потоки — первые 10 000 отслеживаемых потоков по доле потерь, по страницам. Таблица сортируется щелчком по заголовку столбца, значок фильтра в заголовке отбирает строки по значениям столбца.

Столбцы таблиц потоков:

СтолбецЧто показывает
ПотокИмя потока
ПортНомер порта-источника. Порты всех клиентских записей задачи нумеруются по порядку с 0
№ потокаНомер отслеживаемого потока внутри потока
ПоляЗначения отслеживаемых полей этого отслеживаемого потока, например Source Address: 192.168.1.10, Source Port: 49152. Прочерк — поток отслеживается целиком
Передано, ПринятоОтправлено и принято кадров
Потеряно, Потери, %В итоге задачи — отправленные кадры, которые не были приняты (дубликаты не засчитываются как принятые); во время работы — пропуски в номерах принятых кадров. Доля — от ожидаемых кадров
ДубликатыКадры, принятые повторно
ПереупорядоченоКадры, пришедшие позже кадра с бо́льшим номером
Задержка мин, сред, макс, мксЗадержка по кадрам данных: от отправки до приёма. Пусто, если сервер не снял ни одного замера: клиент работает на другом агенте или кадры потока не дошли
Джиттер, мксСреднее изменение задержки между соседними кадрами потока

Задержка и зонды​

Задержка в таблице отслеживаемых потоков измеряется по кадрам данных: сервер сравнивает время отправки из сигнатуры с временем приёма. Её можно измерить, только если клиент и сервер работают на одном агенте; иначе столбцы задержки пустые. Пока нагрузка на порт далека от скорости линии, очереди тестера в этой задержке нет. При нагрузке, близкой к скорости линии, она включает время ожидания кадра в очереди самого тестера.

Задержку самого DUT при любой нагрузке, вплоть до скорости линии, измеряют зонды. Зонд — копия кадра одного из потоков, которую порт отправляет в случайный момент. Сетевая карта ставит на зонд метку времени выхода из порта, поэтому очередь тестера в результат не входит. Зонды идут один на 1 000 кадров данных, но не больше 20 000 в секунду на порт, и не входят в счётчики потоков: TX и RX в таблице учитывают только кадры данных. Результат показывает раздел Задержка DUT по зондам на дашборде: среднее, минимум, p99, p99.9, максимум и число зондов, по которым она измерена, а также задержка по каждому потоку и её изменение во времени.

Зонды работают, когда выполнены все условия:

  • порт-источник находится на сетевой карте NVIDIA ConnectX-6 Dx, которая ставит метку времени выхода из порта;
  • клиент и сервер работают на одном агенте;
  • порт отправляет не меньше 1 000 кадров в секунду.

Если зондов нет, раздел Задержка DUT по зондам пуст, а задержку DUT показывают столбцы задержки по кадрам данных: пока тестер далёк от предела порта, его очереди в них нет.

Зонды дают выборку: перцентили по десяткам тысяч зондов точны, но единичный выброс задержки одного кадра зонд может не застать. Такой выброс видно в столбце Задержка макс по кадрам данных.

Метрики​

Отправленный трафик отображается в общих метриках передачи: пакеты, байты, L1-биты, загрузка линии и отбрасывания на передаче (см. Общие метрики (Total)).

На вкладке Метрики задачи с конструктором пакетов доступен дашборд Конструктор пакетов: передача и приём по потокам, потери, дубликаты, порядок, задержка по кадрам данных и по зондам, статистика отслеживаемых потоков со значениями их полей (см. Статистика потоков), а также счётчики сервера: кадры без сигнатуры и кадры, отброшенные сетевой картой. Без серверной записи на дашборде есть только передача по потокам.

Ограничения​

  • В задаче с конструктором пакетов могут быть только клиентские и серверные записи конструктора пакетов; для других плагинов создайте отдельную задачу.
  • Сервер принимает и считает кадры, но не отвечает на них: состояния TCP-соединений нет. TCP-заголовок формируется как обычный заголовок кадра.
  • Серверу нужна хотя бы одна клиентская запись в той же задаче. В задаче с сервером у всех клиентских записей вместе может быть не больше 256 портов-источников, а самый маленький кадр каждого включённого потока должен вмещать заголовки, 16 байт сигнатуры и FCS.
  • Задержка измеряется, только если клиент и сервер работают на одном агенте. Задержка DUT по зондам требует сетевой карты NVIDIA ConnectX-6 Dx на порту-источнике и не меньше 1 000 кадров в секунду на порт.
  • Сети доступа (access-группы) в качестве источников и целей не поддерживаются. Профили из библиотеки «Сетевые туннели» не применяются: GRE, VXLAN, MPLS и IP-in-IP добавляются как заголовки стека.
  • Если поле MAC берёт значение из цели, у сети источника должен быть шлюз. Если MAC шлюза не задан в сети, порт определяет его по ARP/ND при запуске, и задача не стартует, пока шлюз не ответит.
  • Каждому порту-источнику нужно хотя бы одно ядро CPU: агент делит ядра между портами-источниками. Для кадров больше 1518 байт агент включает jumbo-кадры; если на всех ядрах не хватит hugepages, задача не запустится. В этом случае задайте 4–8 ядер в Расширенных параметрах.
  • Шаблон: до 32 заголовков, до 16 групп, до 65 536 значений в одном списке и до 2^20 значений во всём шаблоне, до 2^62 уникальных кадров. Значения из нескольких диапазонов адресов задачи ограничены 65 536.
  • Запись: до 32 потоков, до 16 777 216 отслеживаемых потоков на поток.
  • Превью показывает до 1000 кадров за раз, выгрузка pcap из интерфейса содержит первые 1000 кадров.
  • Задачу можно запустить только на агентах, версия которых поддерживает конструктор пакетов. Для нескольких включённых потоков и для серверной записи нужна версия агента, которая поддерживает потоки и приём, на всех агентах задачи.