The article examines the distribution of Receive Side Scaling (RSS) queues across CPU cores under DDoS traffic. Static, dynamic and hybrid load‑balancing strategies are analyzed for SYN flood and UDP amplification attacks. Experimental results show that hybrid strategies provide more uniform CPU utilization and reduce packet loss compared to static schemes.
Keywords: RSS, DDoS-attacks, SYN flood, UDP amplification, load balancing, multicore processors, network security.
Введение
В последние годы количество и мощность DDoS-атак постоянно растут. Одновременно с этим широкое распространение получают многоядерные серверы. В таких условиях механизмы Receive Side Scaling (RSS), отвечающие за балансировку входящего трафика, играют ключевую роль в обеспечении устойчивости системы к атакам.
Проблема заключается в том, что стандартный RSS использует статическую хэш-функцию Toeplitz. При обычном трафике она обеспечивает равномерное распределение пакетов, однако при DDoS-атаках может приводить к перегрузке отдельных ядер CPU.
Цель работы — провести сравнительный анализ стратегий распределения очередей RSS при отражении DDoS-атак SYN flood и UDP amplification.
Теоретические основы
Механизм Receive Side Scaling (RSS) представляет собой аппаратно-программный метод повышения производительности обработки входящего сетевого трафика на многопроцессорных системах. Основная идея RSS заключается в использовании хэш-функции, вычисляющей идентификатор пакета на основе полей заголовка. Полученное значение используется для выбора одной из очередей приема, каждая из которых может быть закреплена за определённым ядром CPU. Это позволяет распараллеливать обработку пакетов и эффективно использовать ресурсы многоядерных процессоров. Подобные подходы применяются в многоядерных системах [3, с. 93].
При стандартной сетевой нагрузке RSS демонстрирует высокую эффективность, равномерно распределяя трафик между ядрами и предотвращая перегрузку отдельных процессоров. Однако ещё на этапе проектирования механизма были заложены ограничения, которые впоследствии стали источником уязвимостей. «RSS обеспечивает хорошее распределение нагрузки для типичного трафика, но его эффективность снижается при асимметричных паттернах» [1, с. 45].
Классическая реализация RSS использует хэширование на основе 5-кортежа потока, включающего IP-адреса, порты и транспортный протокол. Такой подход обеспечивает равномерное распределение потоков, однако не учитывает их интенсивность. В результате высокоинтенсивный поток может перегружать одно ядро, тогда как другие остаются недозагруженными.
Дополнительной проблемой являются коллизии хэш-функции, при которых разные потоки получают одинаковый хэш и объединяются в одной очереди. Это снижает пропускную способность системы и делает стандартный RSS уязвимым к атакам, при которых трафик специально подбирается для перегрузки отдельных ядер.
Статические стратегии распределения очередей RSS предполагают фиксированное соответствие между аппаратными очередями и вычислительными ядрами на этапе инициализации сетевого адаптера. Такой подход обеспечивает предсказуемость работы системы и минимальную вычислительную нагрузку.
Главным недостатком статических стратегий является неспособность адаптироваться к изменению структуры сетевого потока. При равномерной нагрузке фиксированное распределение может быть эффективно, но при DDoS-атаках отсутствие динамической балансировки приводит к неравномерной загрузке ядер. Поскольку статическая стратегия не предусматривает перераспределения нагрузки, атакующий трафик перегружает соответствующие ядра и вызывает отказ в обслуживании легитимных запросов [4, с. 549].
Динамические подходы к управлению очередями RSS основаны на мониторинге загрузки ядер и интенсивности входящего трафика. На основе этих данных система перераспределяет очереди между ядрами, что позволяет балансировать нагрузку, предотвращая перегрузку отдельных ядер и снижая вероятность потери пакетов при резких изменениях структуры трафика.
Гибридные подходы объединяют преимущества статического и динамического распределения очередей. При нормальной нагрузке используется фиксированная схема, а при обнаружении аномалий активируется динамическая балансировка.
Методика экспериментального исследования
Основой тестового стенда послужил сервер на базе процессора Intel Xeon с поддержкой технологии RSS. В качестве сетевого интерфейса использовался адаптер Intel XL710, позволяющий управлять числом аппаратных очередей и привязывать их к выбранным ядрам CPU. Такая конфигурация обеспечивает возможность изменения количества очередей и их ручного распределения между ядрами процессора.
Программная часть стенда была построена на базе Linux, где управление параметрами RSS осуществлялось с помощью утилиты ethtool. Принципы аппаратной реализации RSS и распределения очередей описаны в документации Intel [6]. Для генерации трафика и сбора метрик использовались инструменты iperf3 и perf: iperf3 применялся для создания нагрузки, а perf — для мониторинга загрузки ядер и аппаратных событий.
Для моделирования SYN flood-атаки использовалась утилита hping3, генерирующая поток TCP-сегментов с установленным флагом SYN. Интенсивность трафика превышала пропускную способность канала, что приводило к перегрузке сетевого стека и позволяло воспроизвести условия реальной DDoS-атаки. Подобный подход к моделированию SYN flood-атак используется в работе [2, с. 140].
Ключевой метрикой являлась доля потерянных пакетов, определяемая как отношение числа непереданных сегментов к общему числу принятых. Этот показатель позволяет оценить способность стратегии предотвращать переполнение очередей.
В рамках исследования также учитывались причины возникновения потерь. Важно различать потери, вызванные перегрузкой CPU, и потери, связанные с переполнением очередей сетевой карты, поскольку это позволяет более точно оценивать эффективность различных стратегий RSS. Методы мониторинга сетевых вторжений подробно рассматриваются в [5, с. 64].
Результаты исследования
В ходе эксперимента было установлено, что при нормальной нагрузке статическая стратегия RSS демонстрирует приемлемую производительность. Однако с началом SYN flood-атаки пропускная способность резко снижалась, а задержки значительно возрастали.
Анализ загрузки CPU показал неравномерное распределение нагрузки: одно или два ядра, обрабатывающие атакующий трафик, достигали 100 % утилизации, тогда как остальные оставались загруженными менее чем на 20 %. Такая диспропорция приводит к росту потерь пакетов и снижению общей производительности системы.
При интенсивности атаки 1 млн пакетов в секунду потери составили 34 % для SYN flood и 28 % для UDP amplification, а пропускная способность легитимного трафика снизилась на 60 %. Полученные данные показывают, что статическая стратегия RSS не обеспечивает достаточного уровня защиты даже при умеренных DDoS-атаках.
Динамические и гибридные стратегии позволили значительно выровнять загрузку вычислительных ресурсов. По результатам экспериментов коэффициент неравномерности загрузки ядер снизился на 30–40 % по сравнению со статическим сценарием. Средняя задержка пакетов в гибридных схемах оказалась на 15–20 % ниже, чем при полностью динамической схеме.
Гибридные алгоритмы показали более стабильную работу при UDP amplification, поскольку резервирование части ядер для фонового трафика уменьшало влияние резких всплесков нагрузки. При этом накладные расходы гибридных схем составили 3–5 % утилизации CPU, тогда как для полностью динамических стратегий этот показатель достигал 5–8 %. Результаты сравнительного анализа представлены в табл. 1.
Таблица 1
Сравнение стратегий RSS
|
Стратегия |
Потери пакетов |
Загрузка CPU |
Устойчивость к DDoS |
|
Статическая |
Высокие |
Неравномерная |
Низкая |
|
Динамическая |
Средние |
Более равномерная |
Средняя |
|
Гибридная |
Низкие |
Равномерная |
Высокая |
Проведённое исследование показало, что статические стратегии RSS эффективны при обычном трафике, однако становятся уязвимыми при DDoS-атаках из-за невозможности перераспределять нагрузку между ядрами CPU.
Наиболее эффективной для защиты от DDoS-атак была признана гибридная стратегия. Такой подход позволяет снизить потери пакетов и обеспечить более равномерную загрузку ядер процессора.
Заключение
Исследование показало, что статическая стратегия RSS в условиях DDoS-атак приводит к перегрузке отдельных ядер CPU и росту потерь пакетов. Основной причиной являются коллизии хэша при концентрации вредоносного трафика.
Динамические и гибридные стратегии обеспечивают более равномерное распределение нагрузки и снижение доли сброшенных пакетов при высокой интенсивности трафика. Наиболее эффективной оказалась гибридная стратегия, сочетающая статическое распределение и динамическую балансировку нагрузки.
Полученные результаты могут использоваться при разработке механизмов распределения сетевой нагрузки для высоконагруженных серверов.
Литература:
- Баженов А. В., Гуц А. К. Программное обеспечение для моделирования сети и имитации атак на компьютерную сеть // Математические структуры и моделирование. — 2018. — № 4. — С. 99–112.
- Буханов Д. Г., Поляков В. М., Усков Д. А. и др. Detection syn flood attacks with winpcap driver // Theoretical & applied science. — 2015. — № 1. — С. 139–144.
- Калачев А. Высокопроизводительные многоядерные процессоры для встраиваемых систем // Компоненты и технологии. — 2010. — № 2. — С. 92–102.
- Пальчевский Е. В., Халиков А. Р. Автоматизированная система защиты доступности информации от атак внешним несанкционированным трафиком в UNIX-подобных системах // Программные продукты и системы. — 2018. — № 3. — С. 548–556.
- Ситник В. А., Вишняков Д. Д., Щерба М. В. Организация мониторинга сетевых вторжений на основе свободно распространяемого программного обеспечения // Безопасность цифровых технологий. — 2022. — № 2. — С. 63–73.
- Intel Ethernet Flow Director and RSS Technologies. — Текст: электронный // Intel: [сайт]. (дата обращения: 29.05.2026).

