Apposite SessionStrike — программный генератор stateful-трафика для
Apposite SessionStrike — генератор состояний TCP/HTTP для нагрузочного тестирования
SessionStrike — решение Apposite Technologies семейства Netropy Traffic Generation для проверки производительности устройств и серверов, состояние которых зависит от количества TCP- и HTTP-соединений. Платформа позволяет эмулировать клиентов и серверы в большом масштабе, создавать миллионы TCP- и HTTP-соединений и определять предельную ёмкость по одновременным сессиям, скорости установления и завершения соединений и HTTP-транзакциям.
SessionStrike предназначен для тестирования серверов приложений, балансировщиков нагрузки, межсетевых экранов, IDS/IPS, SD-WAN, SASE, CDN, HTTP/HTTPS-ускорителей, фильтров контента, reverse proxy и других stateful-устройств. Основная задача — выявить узкое место или точку отказа до ввода системы в эксплуатацию и проверить поведение при пиковом количестве соединений.
Назначение SessionStrike
В отличие от генерации только пакетной нагрузки, SessionStrike формирует и отслеживает состояние TCP- и HTTP-сессий. Это позволяет измерять не только пропускную способность, но и то, сколько соединений тестируемая система способна создать, удерживать и корректно завершить, какой темп новых соединений она выдерживает и как обрабатывает HTTP-запросы под нагрузкой.
Основные функции
Что позволяет измерять SessionStrike
| Показатель | Назначение |
|---|---|
| TCP Connection Capacity | Предельное количество TCP-соединений, которое способна поддерживать тестируемая система. |
| Maximum TCP Connection Establishment Rate | Максимальная скорость установления новых TCP-соединений. |
| Maximum TCP Connection Tear Down Rate | Максимальная скорость завершения TCP-соединений. |
| Maximum HTTP Transaction Rate | Предельная частота HTTP-транзакций. |
| HTTP Transfer Rate | Производительность передачи HTTP-данных. |
| HTTP capacity with persistent connections | Ёмкость HTTP при использовании постоянных соединений. |
| Concurrent TCP sessions / peak load | Определение breaking point — уровня одновременной нагрузки, после которого устройство или сервер становится узким местом либо теряет устойчивость. |
Два базовых варианта тестирования
Прямое тестирование серверов приложений
SessionStrike эмулирует большое количество HTTP-клиентов и генерирует TCP-соединения непосредственно к DUT в роли application server. Такой вариант позволяет изолировать сервер приложений или CDN и измерить его способность выдерживать пиковое число соединений и транзакций.
Тестирование stateful-устройства между клиентами и серверами
SessionStrike эмулирует клиентскую и серверную стороны, а между ними устанавливается DUT — например firewall, IDS/IPS, CDN или load balancer. Это позволяет измерять session-level performance устройства при большом числе одновременно поддерживаемых соединений.
Поддерживаемые HTTP-действия
| HTTP-действие | Использование в SessionStrike |
|---|---|
| GET | Запрос ресурса; серверная сторона может использовать выбранный GET File либо заданный GET Size. |
| POST | Передача данных на сервер; можно выбрать файл либо задать POST Size. |
| PUT | Создание или замена ресурса; можно выбрать файл либо задать PUT Size. |
| HEAD | Запрос ресурса без тела ответа; доступны HEAD File и HEAD Size. |
| OPTIONS | Запрос сведений о доступных параметрах взаимодействия; доступны OPTION File и OPTION Size. |
Порядок создания теста
Конфигурация HTTP Client
| Параметр | Возможности и значения |
|---|---|
| Port | Выбор зарезервированного тестового порта. |
| Client IP / CIDR | Задание IPv4-адреса и CIDR. В User Guide значение CIDR по умолчанию — /27. |
| Client MAC | Ручной ввод MAC-адреса в шестнадцатеричном формате. |
| Encapsulation Type | None, VLAN, QinQ или 802.1ad. По умолчанию — None. |
| Server IP | IP-адрес сервера, с которым устанавливаются HTTP/TCP-сессии. |
| Gateway | Настройка Gateway MAC либо External Gateway. |
| Number of Hosts | Количество эмулируемых хостов связано с выбранной CIDR-подсетью; число можно уменьшить вручную относительно доступного диапазона. |
| HTTP Client Version | 0.9, 1.0, 1.1 или 1.2. |
| HTTP Method | GET, POST, PUT, HEAD, OPTIONS; допускается выбор одного, нескольких или всех методов. |
| POST / PUT data | Для POST и PUT можно выбрать файл; для POST также описано ручное значение размера, по умолчанию 1024 байта. |
| Window Size (Bytes) | Ручное значение от 1454 до 65535; по умолчанию 1454. |
| Scale Factor | Диапазон 1–14; по умолчанию 1. |
| Effective Window Size | Вычисляется на основе Window Size и Scale Factor и в User Guide 2.0 обозначено как поле, которое не изменяется вручную. |
Конфигурация HTTP Server
| Параметр | Возможности и значения |
|---|---|
| Port | Выбор серверного тестового порта. |
| Server IP / CIDR | Задание IP-адреса и CIDR; в User Guide значение CIDR по умолчанию — /27. |
| Server MAC | Ручной ввод MAC-адреса. |
| Encapsulation Type | None, VLAN, QinQ или 802.1ad. |
| Gateway | Настройка Gateway MAC либо External Gateway. |
| HTTP Server Version | 0.9, 1.0, 1.1 или 1.2. |
| GET File / GET Size | Можно выбрать файл или задать размер генерируемого файла для GET. |
| POST Size | Если POST выбран на клиентской стороне, доступен размер POST; значение по умолчанию 1024 байта. |
| PUT Size | Если PUT выбран на клиентской стороне, доступен размер PUT; значение по умолчанию 1024 байта. |
| OPTION File / Size | При использовании OPTIONS можно выбрать файл или размер; в руководстве размер по умолчанию 1024 байта. |
| HEAD File / Size | При использовании HEAD можно выбрать файл или размер; в руководстве размер по умолчанию 1024 байта. |
Traffic Profile и Load Profile
Traffic Profile определяет процентное распределение каждого типа трафика по выбранным портам и ранее настроенным потокам. При редактировании сумма долей должна составлять 100%.
Load Profile используется для управления параметрами нагрузки. В User Guide 2.0 описаны настройка длительности теста и количества итераций; параметры Load Profile становятся доступны после включения соответствующей опции.
Сводная конфигурация перед запуском
| Сторона | Параметры, показываемые в Summary |
|---|---|
| HTTP Client | TX Port, No of Clients, Client IP, Client MAC, Server IP, SessionStrike Mode, HTTP Client Version, HTTP Method, Load Profile. |
| HTTP Server | RX Port, Server IP, Server MAC, SessionStrike Mode, HTTP Server Version, GET File, GET Size (Bytes). |
Статистика и измерения
Aggregate Statistics
В окне Statistics доступны общая таблица, статистика клиента и сервера, а также графики Packets/Second, Throughput и Latency. Для клиентской и серверной сторон отображаются MPPS и Throughput для Rx и Tx; графики позволяют выделить отдельное направление конкретного порта.
| Показатель | Описание |
|---|---|
| Drop | Общее количество пакетов, отброшенных на порту с момента запуска теста; в User Guide указано, что счётчик обновляется при остановке теста. |
| TxPkts / RxPkts | Число переданных / принятых пакетов за последний секундный интервал. |
| Tx (Gbps) / Rx (Gbps) | Скорость передачи / приёма на порту за последний секундный интервал. |
| TxTotalPkts | Общее число переданных пакетов с момента запуска теста. |
| AvgTxPkts / AvgRxPkts | Среднее количество переданных / принятых пакетов в секунду с момента запуска теста. |
| AvgTx (Gbps) / AvgRx (Gbps) | Средняя скорость передачи / приёма в Гбит/с с момента запуска теста. |
TCP Stats
| Группа | Отслеживаемые показатели |
|---|---|
| TCP Sessions | Attempted — Total/CPS; Established — Total/CPS; Failed — Total/CPS. |
| TCP handshake / data / teardown | SYN Tx/Rx, SYN-ACK Tx/Rx, PSH (Data) Tx/Rx, FIN-ACK Tx/Rx, ACK Tx/Rx, RST Tx/Rx. |
Таким образом, SessionStrike позволяет одновременно видеть количество попыток создать сессии, число успешно установленных и неуспешных соединений и фактический темп соединений в секунду, а также анализировать этапы TCP handshake, передачи данных и завершения сессии.
HTTP Stats
| Группа | Статистика |
|---|---|
| Методы | POST, GET, HEAD, PUT, OPTIONS — счётчики на клиентской и серверной стороне. |
| Коды ответов | HTTP 2XX, 3XX, 4XX и 5XX. |
Offline Analyzer и экспорт результатов
Захват пакетов, журналы и отчёты
В ходе теста можно запустить сетевой packet capture. Файлы захвата сохраняются в формате PCAP и предназначены для последующего анализа в Wireshark и совместимых инструментах.
Скачанный набор отчётов может содержать Offline Analyzer TCP, Offline Analyzer HTTP, CSV-файлы Latency, PPS и Throughput, XML-конфигурацию Test Bed для последующего импорта и PDF Test Report со сводкой тестового сценария и соответствующими графиками.
Управление и автоматизация
| Интерфейс | Возможности |
|---|---|
| Web GUI | Основной browser-based интерфейс для создания Test Bed, настройки HTTP Client/Server, Traffic/Load Profile, запуска тестов и анализа результатов. |
| RESTful API | Официальный datasheet указывает комплексный RESTful API для повышения уровня автоматизации. |
| CLI | CLI доступен через CONSOLE, Telnet или SSH. В User Guide 2.0 через CLI описаны ARP/PING, возврат к заводским настройкам и management-функции. |
Варианты развёртывания
SessionStrike доступен на высокопроизводительных аппаратных платформах и в виртуальном исполнении. Для аппаратного варианта используются платформы Netropy 10G2 и Netropy 10G4. Подробные аппаратные характеристики здесь не дублируются и приведены в карточке серии Netropy.
Сценарии применения
Оценка и оптимизация SD-WAN
Тестирование межсетевых экранов нового поколения и других stateful security-устройств
Тестирование производительности между площадками
При использовании SessionStrike в распределённом тестовом стенде можно оценивать способность stateful-устройств и серверной инфраструктуры выдерживать заданное количество TCP/HTTP-сессий между удалёнными сегментами. Для воспроизведения сетевых условий Apposite предлагает совместное использование Traffic Generation и Netropy Network Emulation.
Проверка готовности к высокой нагрузке
Другие приложения Netropy Traffic Generation
Характеристики Apposite SessionStrike — программный генератор stateful-трафика для тестирования производительности
Документация Apposite SessionStrike — программный генератор stateful-трафика для тестирования производительности
Возможность автоматизации с помощью собственного ПО: интеграция, автоматизация измерений, собственные база данных и VISA-мост.
СПОАИ — специальное программное обеспечение для автоматизации измерений, разработанное на мощностях "Акметрон" — отечественного разработчика программного обеспечения, производителя и крупнейшего поставщика оборудования с 2012 года.
Это клиент-серверное приложение с многопользовательской распределённой архитектурой, которое решает задачи повышения производительности труда на производстве, сокращения длительности измерений и снижения требований к квалификации персонала. ПО внесено в реестр Минцифры: №28145
Ключевые преимущества:
- Полный цикл «под ключ»: от разработки до сопровождения
- Клиент-серверная архитектура с самостоятельной переналадкой
- Централизованный сбор и хранение результатов в БД с возможностью миграции в вашу БД
- Генератор отчетов на основе ваших шаблонов (docx. и xlsx.)
- Управление приборами с любым типом интерфейса
- ПО работает на системах Windows, Linux, MacOS, доступна веб-версия
Результаты внедрений:
- Непрерывная работа в автоматическом режиме до 48 часов
- До 4 500 измерений за этап
- Одновременное управление 15+ приборами
- Автоматизация техтренировки и полной программы испытаний выпускаемых изделий — более 10 контролируемых приборов на одном рабочем месте, до 4 500 автоматизированных измерений в каждом этапе, непрерывная работа в автоматическом режиме 24–48 часов
- Измерение радиотехнических характеристик приемопередающих модулей
- Автоматизация тестирования фотонных интегральных схем
- Контроль и испытания СВЧ-усилителей для космических аппаратов
Для каждого продукта мы предоставляем полный комплект документации: инструкция по установке с пошаговой настройкой, руководство по эксплуатации с описанием требований и рабочих процессов, презентация с обзором возможностей и кейсов внедрения.
Предоставим систему с учётом требований промышленных стандартов и рассчитанную на многолетнюю эксплуатацию. Также мы обеспечиваем соответствие отраслевым требованиям, надёжность архитектуры для критических систем и масштабируемость без потери стабильности.
Наши специалисты помогут вам решить самые сложные задачи по автоматизации, измерениям и интеграции