Large-scale distributed denial-of-service (DDoS) attacks continue to threaten the availability of Internet-facing services. At the network layer, volumetric floods can exhaust host resources before application-layer defenses become effective. Linux servers are widely deployed and provide a rich set of packet-processing facilities in the kernel and the driver stack, making them a practical target for hardening against high-rate floods. This extended abstract presents an implementation-oriented mitigation approach that combines hardware configuration and Linux kernel optimizations with in-kernel programmable filtering to sustain service availability under large-scale DDoS conditions.
Method Overview: The proposed solution targets the network layer and aims to process malicious traffic as early as possible in the linux network stack. It integrates three complementary elements: (1) advanced configuration of 10GbE network interface cards (NICs), (2) Linux kernel optimizations such as Receive Packet Steering (RPS) and Transmit Packet Steering (XPS), and (3) extended Berkeley Packet Filter (eBPF) programs attached to XDP (eXpress Data Path) for high-performance filtering. The integration is designed to distribute packet processing across CPU cores, minimize cache contention, and drop attack traffic before it reaches higher network layers. To use these elements, the method consists of two major operations as below:
Hardware and Driver Tuning: At the NIC layer, the receive/transmit queues are configured to match the number of available cores, and interrupt coalescing is tuned to reduce overhead without sacrificing latency. Receive-side scaling is leveraged to hash incoming flows and steer them to the appropriate queues. These settings reduce lock contention and allow multiple cores to process packets in parallel, which is crucial when incoming traffic rates reach tens of millions of packets per second. The approach emphasizes stable queue-to-core affinity and avoids frequent migrations that can cause cache misses during high-rate floods.
Kernel-Level Optimizations: Linux kernel mechanisms are configured to maximize parallelism and reduce per-packet overhead. RPS is used to distribute receive processing for a given queue across multiple CPUs when a single CPU becomes saturated. XPS is used to align transmit processing with the CPU that handles the corresponding receive path, improving cache locality. Additional kernel parameters are tuned to increase backlog capacity and reduce the likelihood of packet drops before filtering is applied. Together, these optimizations provide a stable foundation for high-rate packet handling and enable the subsequent filtering stage to operate effectively.
eBPF/XDP Filtering with xdp_rate_limit: The core of the mitigation logic is implemented as an eBPF program attached to XDP, which runs at the lowest level of the kernel receive path, before the networking stack. The program uses the xdp_rate_limit module to apply rate-based filtering and classify traffic at line rate. By operating at this early stage, malicious traffic is dropped before it incurs the overhead of higher-layer processing. The approach supports stateful tracking of source addresses and rate thresholds, enabling real-time identification of abusive sources. Because eBPF programs run in a verified, safe execution environment, the filtering logic remains maintainable and can be updated without recompiling the kernel.
Experimental Setup: The evaluation uses a Linux server equipped with 10GbE NICs and a multi-core CPU. Traffic generation is configured to simulate large-scale DDoS floods with a high diversity of source IP addresses. The test environment stresses the receive path to observe the ability of the system to classify and filter attack traffic while preserving legitimate flows. Measurements focus on packet processing rate, CPU utilization, and the ability to separate benign traffic from malicious traffic in real time.
Results: Experiments demonstrate that the combined hardware configuration, kernel tuning, and XDP filtering can effectively handle traffic at a rate of approximately 12 million packets per second originating from more than 2 million distinct IP addresses in real time. The system is able to identify and filter attack traffic while preserving legitimate packets, and it maintains stable performance under sustained load. These results are reported per ordered pair of a 10GbE port and its corresponding CPU, highlighting the scalability of the approach when additional ports and cores are available. The observed behavior indicates significant reduction in system load relative to unoptimized configurations, as early packet drops prevent higher-layer processing from becoming a bottleneck.
Discussion: The findings underscore the effectiveness of early, kernel-level filtering for volumetric DDoS defense on commodity Linux servers. In particular, the approach leverages the strengths of modern NICs and the Linux kernel to achieve line-rate filtering without specialized appliances. The use of XDP/eBPF provides both performance and flexibility: filtering policies can be adjusted as attack characteristics evolve, while the execution model remains safe and efficient. The combination of RPS/XPS with queue affinity further improves cache locality and reduces contention, which are key factors in sustaining high packet rates.
Limitations and Future Work: While the approach demonstrates strong performance at the network layer, further evaluation is required to understand its behavior under mixed traffic with highly variable packet sizes, encrypted traffic patterns, and multi-vector attacks that combine volumetric floods with application-layer payloads. Additional work could integrate adaptive thresholds, anomaly detection, and coordination with upstream filtering to reduce load before traffic reaches the host. Exploring multi-NIC scaling and NUMA-aware tuning would also provide deeper insight into the limits of host-based DDoS mitigation.
Conclusion: This extended abstract presents a Linux-based hardening strategy for large-scale DDoS mitigation at the network layer. By combining 10GbE NIC tuning, kernel-level optimizations (RPS/XPS), and XDP/eBPF filtering with xdp_rate_limit, the proposed solution filters malicious traffic at the earliest possible stage and sustains service availability under high-rate floods. Experimental results show real-time processing of approximately 12 million packets per second from more than 2 million distinct IP addresses, with effective separation of legitimate traffic. The approach offers a practical and scalable foundation for defending Linux servers against large-scale DDoS attacks.
|