Next Article in Journal
SRv6-Based Edge Service Continuity in 5G Mobile Networks
Previous Article in Journal
Computation Offloading Based on a Distributed Overlay Network Cache-Sharing Mechanism in Multi-Access Edge Computing
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

From Seek-and-Destroy to Split-and-Destroy: Connection Partitioning as an Effective Tool against Low-Rate DoS Attacks

by
Vyron Kampourakis
1,†,
Georgios Michail Makrakis
2,† and
Constantinos Kolias
2,*
1
Department of Information Security and Communication Technology, Norwegian University of Science and Technology, 2802 Gjøvik, Norway
2
Department of Computer Science, University of Idaho, Idaho Falls, ID 83402, USA
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Future Internet 2024, 16(4), 137; https://doi.org/10.3390/fi16040137
Submission received: 27 February 2024 / Revised: 2 April 2024 / Accepted: 4 April 2024 / Published: 19 April 2024
(This article belongs to the Section Cybersecurity)

Abstract

:
Low-rate Denial of Service (LDoS) attacks are today considered one of the biggest threats against modern data centers and industrial infrastructures. Unlike traditional Distributed Denial of Service (DDoS) attacks that are mainly volumetric, LDoS attacks exhibit a very small network footprint, and therefore can easily elude standard detection and defense mechanisms. This work introduces a defense strategy that may prove particularly effective against attacks that are based on long-lived connections, an inherent trait of LDoS attacks. Our approach is based on iteratively partitioning the active connections of a victim server across a number of replica servers, and then re-evaluating the health status of each replica instance. At its core, this approach relies on live migration and containerization technologies. The main advantage of the proposed approach is that it can discover and isolate malicious connections with virtually no information about the type and characteristics of the performed attack. Additionally, while the defense takes place, there is little to no indication of the fact to the attacker. We assess various rudimentary schemes to quantify the scalability of our approach. The results from the simulations indicate that it is possible to save the vast majority of the benign connections (80%) in less than 5 min.

1. Introduction

Nowadays, evildoers of variable capabilities and skill levels target cloud infrastructures, having as their ultimate goal the theft of private data of individuals, espionage at the corporate level, or simply making systems unresponsive, an attack that is commonly known as Denial of Service (DoS). So far, the most popular means of orchestrating DoS attacks is by collaboratively transmitting a large volume of traffic against a target host or a network in hopes of exhausting the target’s resources, including the bandwidth of the network and the memory or processing capacity of computational nodes. However, today, an alternative methodology for achieving DoS that is based on the transmission of traffic at a low rate is gaining traction. Even though LDoS attacks have been studied extensively, effective countermeasures against such sneakier attacks are yet to be developed.
In LDoS attacks, the aggressor first establishes a long-lasting connection with the victim. Most of the time, they do not utilize the connection, as LDoS attacks operate in bursts with malicious traffic forming periodic pulse patterns. While each pulse may carry a relatively high volume of traffic, its lifespan is generally short; thus, the average traffic emanated by an attacker over time is kept small. Moreover, even at its peak, the LDoS transmits a significant volume of traffic, comparatively, the volume is still only a small fraction of the totality of the network activity and certainly orders of magnitude lower than volumetric DDoS attacks [1]. For this reason, LDoS are considered stealthy and a significant mass of research works has been dedicated to its detection [2,3,4,5]. In practice, LDoS attacks exploit mechanisms of legacy transport layer protocols, which exist to provide fairness, and stability in the network; a prominent example is the exploitation of Transmission Control Protocol (TCP) protocol’s adaptive mechanisms. Alternatively, LDoS exploits application layer protocol vulnerabilities, rendering the detection of the attack even harder. Altogether, LDoS aims to reduce the throughput of the targeted link or (more commonly) degrade the Quality of Service (QoS) of an attacked service. Typically, the main target of LDoS attacks is critical systems that offer highly centralized services that receive large volumes of traffic daily. Such alluring candidates include cloud computing platforms. Real-life incidents include the Internet2 Abilene backbone, which in the past has been the target of an LDoS [6] and the Chinese Web service qq.com, which was seriously affected by an LDoS [7].
This work introduces a novel strategy for isolating malicious connections against server systems operating in mainly, but not restricted to, cloud infrastructures. Our strategy is based on iteratively engaging in partitioning of connections among numerous replicas of the original servers and then observing the results. After a certain number of iterations, it is possible to identify configurations where all connections assigned to a specific replica are benign (or malicious). The proposed solution is inspired by existing connection-shuffling schemes [8,9,10,11,12] that migrate network connections among servers. Thus, our scheme can vaguely be categorized as Moving Target Defense (MTD). The key difference is that while most of these defenses focus mainly on the detection of malicious traffic or aim to confuse the attacker, our scheme aims mainly at the isolation of malicious connections. Most importantly, our approach requires virtually no information about the attack itself or the characteristics of the corresponding connections, although it can greatly benefit from such information. Therefore, it could be effective even against several zero-day attack methodologies, as long as their effects are observable.
Obviously, the proposed solution can be a part of a general Intrusion Detection System (IDS), benefiting from the monitoring capabilities of the IDS to dynamically adjust partitioning strategies and isolate malicious connections more effectively. Additionally, our strategy can be utilized as an input for an Intrusion Prevention System (IPS) to proactively block suspicious connections identified through the partitioning process. In the same spectrum, the proposed scheme can be blended with other known security mechanisms such as firewalls or Security Information and Event Management (SIEM) systems to further enhance access control policies and enable more efficient incident response and threat intelligence sharing across the entire security infrastructure.
Regarding the nature of the attacks, there are only two assumptions. First, the attacks are based on long-lived network connections. While this method is generic within this context, attacks such as LDoS, False Data injection, TCP session hijacking, reverse shells, data exfiltration constitute potential candidates for our proposed scheme. Second, the impact of the attack is observable and possibly quantifiable. For example, in the case of LDoS attacks, an application or the entire system becomes unresponsive for a short amount of time; note, however, that the malicious connection(s) are hidden in plain sight, among the plethora of benign ones. Upon discovery, thanks to the proposed scheme, the malicious connections can be isolated, examined in further detail, or redirected to honeypot systems.
Behind the scenes, the proposed partitioning strategy is based mainly on two mechanisms. Namely, the containerization technology, which is used to spawn replicas of existing server systems in a fast and inexpensive manner. Additionally, the mechanism of live-migration of connections is employed to transfer living connections from an existing running system to another with minimal downtime. We anticipate that the described technique can provide another active defense tool in the quiver of defenders, allowing them to adapt to attacks in real time. Our key contributions can be summarized as follows.
  • We formulate the problem, presenting its parameters and key performance indicators.
  • We provide the blueprints of a generic solution strategy.
  • We detail an implementation of our connection partitioning strategy prototype.
  • We perform simulations based on the provided metrics to demonstrate the feasibility of our approach at scale.
The next section provides a brief overview of the relevant works in the area. In Section 4, we delve into the problem, the proposed methodology, key assumptions, and suggest performance metrics. The evaluation of the prototype implementation of the proposed scheme is presented in Section 5. Finally, the conclusions and future directions of our research are outlined in Section 6.

2. Related Work

In this section, we discuss related work in the areas of resource migration and shuffling schemes vis-à-vis the strategy that is proposed in this paper.

2.1. Resources Migration

The studies by Bicacki et al. [13] and Qin et al. [14] focused on the migration of whole Virtual Machines (VM) without interrupting active client flows. To achieve this, they employed the TCP-Freeze and Traffic-Redirection virtual machine Migration (TRM) techniques, respectively. In an effort to increase efficiency, our approach aims to migrate individual connections only. In this way, we can reduce the number of resources needed and indirectly converge to a solution, i.e., isolate malicious connections faster.
The work by Wood et al. [15] introduced CloudNet, which can achieve the live migration of VMs in Wide-Area Network (WAN) data centers and can be beneficial for networks with high-latency and low-bandwidth links. To maintain a seamless migration of TCP connections, the system utilized Virtual Private LAN Service (VPLS) bridges to connect the Virtual Local Area Networks (VLAN) of the old and new locations. Still, this solution adds more complexity with the use of additional protocols and focuses on the migration of entire VMs and not individual connections.
Chaufournier et al. [16] proposed the use of Multi-Path TCP (MPTCP) for live migration of VMs to improve migration time and network transparency of applications that reside in them. However, they focused on applying MPTCP in edge networks, which usually have a high variance in terms of bandwidth, round-trip time, and congestion. In such placements, TCP might have the disadvantage of performing an adaptive selection of the least congested path. Our focus on this work is the migration of connections inside a data center where such manual decisions can be made by skilled administrators.
Chen et al. [17] introduced SplitStack, attempting to tackle the problem of responding to asymmetric DDoS attacks. They accomplished this by separating the victim server applications into a “stack” of components and tried to replicate and migrate the attacked components by utilizing idle resources in a data center. While our solution differs from SplitStack on a fundamental level, we have drawn inspiration from their migration process and their dispersion-based style of defense.
Bernaschi et al. [18] suggested SockMi, achieving transparent TCP migration for both sides of a connection. Using a Network Address Translation (NAT) entity it can redirect packets to the new host which utilized the previously exported socket. The importing host bypasses the NAT and sends the response traffic directly to the client. In our solution, all inbound and outbound traffic passes from a central location namely a Load Balancer (LB), that does not notify the attackers about our mitigation technique.
The work by Araujo et al. [19] aimed to analyze attacking methodologies, by keeping the attackers engaged in a honeypot system. When an attempt to exploit a patched system was identified, the attackers’ connections were migrated to an ephemeral honeypot based on an unpatched but not valuable version of the system. However, our end goal is to identify and isolate the malicious connections without requiring an on-the-fly analysis of the characteristics of malicious behavior.

2.2. Shuffling Schemes

In their study, Jia et al. [12] introduced an MTD technique to thwart DDoS attacks by replicating servers at different network locations and shuffling a subset of the client assignments. The shuffling was performed with dynamic programming and greedy algorithms. However, this mechanism focused only on the Hypertext Transfer Protocol (HTTP) and is not generalizable as it relied on the HTTP redirection mechanism.
Similarly, Bandi et al. [20] proposed a similar MTD architecture but with the addition of a layer of proxies between the clients and the server. Relying on fast-flux techniques, they minimized the replica server’s synchronization and maintenance costs by implementing the proxy servers as tiny VMs. The system we propose eliminates the need for an external entity and makes the migration process transparent to clients and/or attackers.
Yang et al. [9] investigated a shuffling scheme in which legitimate and malicious users are mapped to several servers. Their scheme periodically shuffled the mapping of users to servers, monitoring the communication performance of the sessions post-shuffle to classify them as benign or malicious. While their work centered on connection migration among servers, our approach diverges fundamentally, distributing connections to replica servers rather than shuffling them among existing servers.
Alavizadeh et al. [8] introduced a combination of the shuffle and diversity MTD techniques, also evaluating their effectiveness by deploying different combination strategies in cloud environments using two-layered Graphical Security Models (GSM). Particularly, for their shuffling technique they utilized live migration of VMs between the two layers of the GSM based on the VMs’ importance. At the same time, they exploited live Operating System (OS) diversification to deploy the diversity technique. Conversely, our approach aims at migrating individual connections instead of entire VMs without changing any of their configuration. Moreover, the proposed MTD works only if the attacker exploits certain vulnerabilities that are relevant to the underlying OS, while our scheme requires almost zero knowledge of the attack.
The work by Hong et al. [10] introduced the Shuffle Assignment Problem (SAP), which entailed reconfiguring the network topology by altering the network routing/attack path. Solving SAP, they computed Defensive Network Reconfiguration Scenarios (DNRSes), i.e., network topologies with desired security properties. Consequently, they presented a shuffling-based MTD that exploits DNRSes, to disrupt previous attack paths by continuously changing the network topology. However, the proposed MTD functions in small-sized networks and is under the assumption that there is an ongoing privilege escalation attack. On the contrary, our scheme scales regardless of the network size, focusing on LDoS attacks, and requiring minimal information about the attack.
Stavrou et al. [11] presented a cloud-based MTD, dubbed MOTAG. Particularly, MOTAG is based on the increased use of resources or service nonresponsiveness that is due to a DDoS. Similarly to our work, MOTAG reassigns connections to different servers on demand without significant loss of resources or server downtime. Nevertheless, MOTAG differs from our approach as it shuffles the connections among the servers, while our scheme simply splits the connections to the newly spawned servers to reduce demands on both time and resource requirements. Furthermore, MOTAG is effective against DDoS attacks, where the results are more easily observed, while our scheme deals with LDoS attacks which often operate at lower intensities and are designed to evade detection by mimicking legitimate traffic patterns.

3. Problem Formulation & Terminology

Let Φ = { c 1 , c 2 , c 3 , , c n } be a set of active connections/traffic flows supported by the system of interest. Also, let M = { m 1 , m 2 , , m k } be a set of malicious connections. For simplicity reasons, assume that M Φ and M Φ . Then, there exists a configuration that can be obtained from simply partitioning the connections in Φ into multiple subsets u 1 , u 2 , u l so that there is at least one u = M . To discover M our strategy may engage in an iterative process of partitioning Φ into further subsets. Finally, we assume that each iteration of partitioning involves some cost W . Then, in its simplest variation, the task at hand can be defined as to discover a partitioning strategy that identifies M , with a r g m i n W . By discovering such a configuration, one may achieve full isolation of malicious connections without any prior knowledge of the status of each connection (malicious, benign).
Notice that the optimal configuration merely depends on the applied partitioning algorithm and the time needed to achieve that configuration; thus, the resources of the underlying environment. Therefore, when the decided partition strategy is applied, the infrastructure should expect to see an insignificant impact on their resource allocation, i.e., decreased replica servers’ utilization, increased network traffic, and power consumption. Additionally, the effectiveness of migration techniques depends on the quality and maturity of existing technologies. Increasing the frequency of migration can help identify or mitigate the cause of an attack, but this comes with added defense costs [21]. Additionally, the configuration of migration spaces, such as the structure of the network environment can be pivotal towards improving security. In this work, we do not investigate those impacts since that requires a large-scale realistic setup, e.g., a testbed residing on a cloud data center.

3.1. Threat Model & Assumptions

We assume that aggressors can unleash network attacks that require the establishing and maintaining of long-lived connections with the target system. Note that the term connection is used loosely, not necessarily corresponding to TCP connections only, but rather it might include any type of network flows. Such attacks may aim at injecting spurious data or exfiltrating any piece of information from the target system, or simply DoS. An example of the latter is a low-rate attack that can cripple powerful servers by sending merely KB (if not less) of data. Henceforth, LDoS are to be treated as the main exemplar. In this context, works such as the ones in [1,22] studied LDoS extensively and attempted to provide a basic model of this family of attacks. Notice that although LDoS incidents may vary in terms of duration L and volume intensity/transmission rate R , in practice all attempts tend to unfold in bursts, i.e., the malicious packets follow a normal distribution. Moreover, even at its peak volume, the malicious traffic corresponding to an LDoS is insignificant compared to the volume of the normal traffic. Figure 1 provides an example of the volume of malicious traffic across time corresponding to an LDoS attack. In real-life scenarios, any user interacts directly with a centralized component, i.e., the LB or a reverse proxy and not the actual servers. For this reason, we assume that the attacker has no visibility into the internal structure of the network and they have no means of monitoring the traffic inside the data center.
Finally, a basic assumption of our approach is that the defenders have some indicator of compromise of the system or pointers that some type of attack is unfolding. Particularly for LDoS such an indicator, might be that the application OS is unresponsive or that the communications are unusually slow. The reader should notice that the term indicator is kept intentionally vague, as it typically is a highly empirical process that may in some cases rely on manual human input. For this reason, we assume that the simple action of checking is comparatively one of the most time-consuming processes and should be performed sporadically.

3.2. Definitions

Hereunder, we outline the basic terms that will be used throughout this article and provide brief explanations.
  • Node: Systems that can serve one or multiple connections. Note that attacks against one of these nodes may lead to leakage or corruption of data. Nodes may be part of the original configuration or virtual replicas.
  • Replica: A virtual copy of the original system, typically a VM or a container. Notice that replicas are not honeypots. Their purpose is not to study the connections.
  • Configuration: An instance of the system including all nodes and the connections distributed among these nodes.
  • Healthy Node: A node whose connections are all benign. Typically, the purpose of our partition strategy is to discover such instances as fast as possible. The connections of healthy nodes are excluded from subsequent partition-shuffling iterations.
  • Partition: The process of spawning nodes with the sole purpose of migrating a subset of active connections to these new nodes. Each node essentially provides a testing environment for its connections. If the result of the evaluation is ongoing attack, then this implies that at least one of these connections is responsible for the attack. In the simple variation of the problem, the defender cannot distinguish between the connections, namely, the malicious connection(s) are hidden in plain sight.
  • Evaluation: The assessment of the health status of each replica node after the partition process.
  • Splitting Factor: The number of new nodes generated from a single node during an epoch.
  • Pollution Factor: The rate of benign to malicious connections across all nodes.
  • Epoch: A cycle of partitioning and evaluating processes.
  • Stopping Criterion: A condition which, when met, forces the partitioning strategy to exit. Typical stopping criteria include that a certain number of connections has been identified as benign and was salvaged, or that a certain number of replica nodes has been spawned. In the experiments we conducted we applied three stopping criteria, namely, (a) total time spent, (b) the total number of replicas spawned, and (c) the percentage of connections saved.

3.3. Evaluation Metrics

In this section, we describe the three evaluation metrics used to assess the effectiveness of the proposed partitioning strategy. Note that our strategy was only tested through a simulation, meaning that metrics such as scalability, distinguishability, QoS, and defense cost  [21] are not directly applicable. Nevertheless, as future work, we aim to stretch our strategy in real-life scenarios, e.g., through a testbed deployed on a cloud data center and in the presence of a real-life attack, say, Slowloris.
  • Time elapsed: When no stopping criteria are applied this metric refers to the time required to fully isolate all malicious connections to several nodes. Conversely, if a stopping criterion is applied the metric pertains to the time required to isolate a satisfactory percentage of the malicious connections in several nodes. Note that in case of a suboptimal solution, we are willing to sacrifice a small number of benign connections. By relaxing this constraint the system may yield suboptimal solutions significantly faster.
  • Detection rate: The percentage of the benign connections that are salvaged in the event of a suboptimal solution. In the case of a complete solution, this metric is irrelevant, as all the malicious connections are isolated.
  • Resources consumption: The number of resources including nodes spawned, Random-Access Memory (RAM) consumption, and number of threads required for the scheme to converge to a solution. The act of partitioning that internally involves the spawning of new nodes contributes to the consumption of significant resources. Note that since our partitioning strategy was only tested in a simulation context, we only measured the nodes spawned as the resource consumption metric.

4. Proposed Solution

This section details the proposed solution along with basic assumptions and presents concrete examples for better understanding.
One naive solution might be to create a replica of the original server, migrate one connection at a time, and check whether that connection is problematic. That approach requires the maximum amount of time translated to the processes of checkpointing the connection status, spawning the replica server, migrating the connection parameters over the network, resuming the connection, and finally, checking the health status of the replica server. Empirically, out of all these processes, the last step is particularly time-consuming. Therefore, this approach is very time-intensive, albeit it relies upon the creation of only one replica server, and thus very cost-efficient. Another naive solution might be to spawn many replicas, precisely as many as the active connections supported by the server, and migrate each connection to its own replica server in parallel. Then, for each replica, the effects of the connection to the underlying, say, Web application would be studied in isolation. That would ensure that all steps would be performed in parallel, but the maximum number of replicas (and therefore resources) are required.

4.1. Toy Examples

To aid the reader in better understanding the proposed solution, we provide two comprehensive examples illustrating the two aforementioned naive strategies.
Example 1.
Consider eight total connections handled by a single server; therefore, the initial configuration is Φ = { c 1 , c 2 , c 3 , c 4 , c 5 , c 6 , c 7 , c 8 } . Let us assume that two connections M = { m 1 = c 7 , m 2 = c 8 } are malicious. This information is unknown to the defender. With reference to Section 3.2, for this example, the splitting factor is set to two. The stopping criterion is set to four total replicas. In the first epoch, the defense spawns two new nodes and partitions the active connections in half. After this step, the active configuration is u 1 = { c 1 , c 2 , c 3 , c 4 } and u 2 = { c 5 , c 6 , c 7 , c 8 } . During the end of the first iteration, the status of each node is re-evaluated. Node Replica 1.A consists of benign-only connections. The node is considered a healthy node and the corresponding connections are all flagged as safe and are excluded from future shuffling and partitioning rounds. Node Replica 1.B indicates an ongoing attack. An additional partition will be performed. During the second iteration, two new nodes are created, redistributing the active connections accordingly. By the end of this epoch, the configuration is the following: u 3 = { c 5 , c 6 } and u 4 = { c 7 , c 8 } . The status of the two nodes is re-evaluated. Node Replica 2.B is a healthy node. Node Replica 2.C still indicates an ongoing attack. The process stops because the total number of replicas created is 4. Despite the stopping criterion, the scheme reached a perfect solution.
Example 2.
Consider eight total connections handled by a single server. Therefore, the initial configuration is Φ = { c 1 , c 2 , c 3 , c 4 , c 5 , c 6 , c 7 , c 8 } . Let us assume that two connections M = { m 1 = c 4 , m 2 = c 8 } are malicious. For this example, the split step is set to four. No stopping criterion is defined. In the first epoch, the defense spawns four new nodes and distributes the connections accordingly. After this step the active configuration is u 1 = { c 1 , c 2 } , u 2 = { c 3 , c 4 } , u 3 = { c 5 , c 6 , } , and u 4 = { c 7 , c 8 } . During the end of the first epoch, the status of each node is re-evaluated. Nodes u 1 , u 3 are healthy and excluded from subsequent iterations. An additional partition is performed. During the second iteration, eight new nodes are supposed to be spawned, but since there are only four connections only four nodes are created, namely u 5 = { c 3 } , u 6 = { c 4 } , u 8 = { c 7 } , and u 4 = { c 8 } . Once again, the process reaches a complete solution.
In view of both the aforementioned examples, it is essential to emphasize that our strategy lacks (does not depend on) any prior knowledge about the nature of each connection, i.e., if it is benign or malicious. Recall that, in practice, attackers can craft LDoS attacks in such a way that they resemble data flows of legitimate users at a very slow rate [23]. Given this characteristic of the LDoS attacks, the deployment of the proposed scheme is only based on basic indicators of abnormality. Note that the term indicator is intentionally left ambiguous, as it often involves a highly empirical process that may require manual human input.

4.2. Advantages

Having in mind the previous paradigms, in summary, the advantages of our proposed approach can be outlined as follows:
  • It can always lead to a perfect solution without sacrificing benign connections, assuming enough time and resources are spent.
  • It can converge to suboptimal solutions much sooner, assuming we are willing to sacrifice some benign connections.
  • It does not require knowledge of the characteristics of the ongoing attack; this renders it effective even against unknown (zero-day) attacks.
  • It does not rely on sophisticated intrusion detection tools as indicators of attacks. While it is possible to incorporate such tools as a means of automating aspects of the decision-making process, simple criteria that can lead to a binary decision regarding whether a node is still under attack are sufficient.

5. Experiments

To further demonstrate the effectiveness of the proposed strategy, this section elaborates on the experimental verification of the connection partitioning strategy through several simulations. Algorithm 1 describes the standard process that our strategy follows. Particularly, the inputs that the algorithm requires comprise a configuration, the utilized splitting factor, and the threshold values for three stopping criteria defined in Section 3.2, as detailed in lines 4 to 12 of Algorithm 1.
For all experiments, the configuration is structured as follows. We assume that the malicious connections follow a normal distribution across time. Moreover, for the sake of simplicity for all experiments, the peak of the malicious activity is located in the middle of the considered time slot. Additionally, we conducted experiments considering three distinct pollution factors, namely, 1%, 5%, and 10% of the total connections. Finally, we considered alternative sizes of connection pools, ranging from 1K to 10K, with increments of 1K. Each experiment was repeated 1000 times to extract the mean for all metrics.
Without considering any stopping criteria, the simulation completes only when all the malicious nodes have been isolated, each to their own replica server, as indicated in lines 13 and 14 of Algorithm 1. Recall that the defender does not have any means of distinguishing between normal and benign connections; therefore, hosting a single connection in its own replica is important if it requires certainty regarding the nature of the connections. However, for reasons of completeness, we also conducted simulations considering the aforementioned three stopping criteria. Whether applying a stopping criterion or not, the simulation exits by returning the total elapsed time, the total connections saved, and the total nodes spawned, as shown in Algorithm 1.
Algorithm 1: Split and Destroy
Futureinternet 16 00137 i001
Referring to Algorithm 1, through a while loop, all simulation strategies assessed here are comprised of several cycles of node partitioning and evaluating phases, referred to as epochs in Section 3.2. Recall that, in the first phase, the replica nodes are spawned, followed by actions such as freezing the state corresponding to each connection, migrating the connection objects to newly spawned nodes through the network, and restoring connections to the replicas, as described in lines 16 to 19 of Algorithm 1. In the second phase, the partitioning has been completed, allowing the assessment of the health status of each replica node, as shown in lines 20 to 29 Algorithm 1. Notably, the evaluation time depends on the particular application, setup, and attack. Nonetheless, we expect this time to be significant. Hence, for all simulations, we have arbitrarily chosen to adopt a large value, i.e., an order of magnitude greater than the most time-consuming among the rest of the actions. The time per epoch refers to the accumulated time required to perform all these actions for a single node, referred to as total elapsed time in Algorithm 1. We assume that all these actions are executed in parallel for each node. The total time per epoch T E p o c h is calculated by the following formula:
T E p o c h = S ( r ) + a r g m a x F ( c , s ) + a r g m a x R ( c , s ) + E
where S ( r ) is the time required for spawning r replica servers, F ( c , s ) is the time required to freeze the state for c number of connections when the state size is s. R ( c , s ) is the time required to restore the state s relevant to c number of connections to the newly spawned replicas. Finally, E is the time needed to evaluate the health status of every replica. Table 1 recapitulates the duration for spawning different numbers of replicas, as well as the time taken for freezing, migrating, and restoring various numbers of connections.
Specifically, to determine the time S ( r ) required for spawning r replica servers, we utilized a Docker container running a basic echo server written in Python. We recorded the duration of these processes and subsequently stopped the containers. In front of the containers, a transparent LB was used to hide the backend servers and assign client requests to each one of those servers using a predefined algorithm, e.g., round-robin. This also allowed the connections between the LB and the servers to be suspended without interrupting active client flows, given that the client has support for persistent connections in HTTP versions > 1.1 [24]. Generally, we expect that the proposed strategy will not perceptibly affect the QoS for legitimate users. This stems from the fact that the migration process to the replica servers is transparent to them, and any latency resulting from the migration is anticipated to be insignificant. To suspend the connections, we relied on CCRIU Libsoccr library [25]. This library facilitates the suspension of established connections without terminating them. This suspension is achieved by saving the state and data present in the input and output queues of the connections into a series of files. Moreover, we utilized Docker’s volume feature to share these connection files from Libsoccr across containers. As a result, we obtained the value F ( c , s ) starting from the moment we decided to suspend the connections until their state was saved to the files.
To restore the connections, we first accessed the corresponding files from the shared volume and re-established the connections to a different container. This functionality was made possible through the TCP connection repair feature of the Linux kernel. Thus, in this context, R ( c , s ) is the time necessary to read the saved files, restore the state, and populate the data into the input and output queues of the connections. It is important to highlight that multiple freezing and restoration actions occur in parallel, leveraging Python’s threading capabilities. All the aforementioned procedures were repeated 100 times to compute and report the average time.

5.1. Experiment 1: Two Extreme Cases

The purpose of this experiment is to measure the time elapsed and resources consumption, corresponding to the first and third metrics of Section 3.3 following the two naive approaches presented in Section 4. Keep in mind that both these cases should not be treated as viable options, as they require either extreme time or resources. Regardless, they provide an upper/lower bound for alternative strategies.
In the serial approach, we spawn a single replica server, sequentially migrating one connection at a time. Each connection operates in isolation in the replica server. Since it is the only connection running in that node, if it is malicious, it causes an observable effect. In this case, there is certainty regarding the status of the connection (malicious, or benign) and then it can be isolated immediately. Because all operations are performed sequentially, requiring many evaluations (as many as the number of connections), this approach requires the maximum time. However, concurrently, only one replica server is needed, and for this reason, it consumes the minimum amount of resources.
The parallel approach operates as follows. We spawn a number of replica servers equal to the number of connections. Then, simultaneously, we migrate each connection to its own replica server. Again, in parallel, we check the health status of each replica. While this approach requires the maximum number of replicas, it takes the minimum amount of time to reach a complete solution. Both these approaches are illustrated in Figure 2.
Both these approaches require the same time and resources, irrespective of the pollution factor. This is because both adopt an exhaustive, brute-force method, examining every single connection. In the parallel approach, the total time required does not exceed one minute for identifying the status of all connections. However, as expected, the serial approach requires much more time to converge to a full solution. More specifically, the simulations indicate that the total time increases by ≈80–90 min for every 1K additional connections. For 10K connections, it takes roughly 14 h or 835 min for the completion of the scheme. The serial approach requires precisely a single replica to evaluate each of the connections, while in the parallel case, each of the connections is evaluated in a separate replica server spawned for the same purpose. In other words, the number of replica servers that are required in the parallel approach increases linearly according to the number of connections. The results are illustrated in Figure 3 and outlined in Table 2.
Takeaways: The time and replicas needed to reach a complete solution scale linearly based on the total number of connections. However, for a large number of initial connections, the described approaches become prohibitively expensive either in terms of time (serial approach) or resource (parallel approach) requirements. More specifically, the serial approach requires more than 835 min to reach a full solution when 10K connections are considered. Similarly, the parallel approach necessitates the spawning of 10K replicas assuming the same parameters.

5.2. Experiment 2: Static Splitting Factor with No Stopping Criteria

The purpose of this experiment is to evaluate the efficiency of the splitting strategy for different splitting factors, calculating the time elapsed and resources consumption. These correspond to the first and third metrics of Section 3.3. More specifically, in each epoch, each node is split into replica nodes and the connections serviced by the original node are redistributed equally among the new ones. In this experiment, we evaluate each case with different pools of initial connections, considering no stopping criteria. Note at this point that recycling replicas or other techniques for conserving resources have not been considered. The results of this experiment may allow us to properly calibrate the stopping criteria for the subsequent simulations. By examining the results of the simulations, we observe that low-splitting steps generally lead to more efficient solutions.
With reference to Figure 4 and Table 3, considering a pollution factor of 1% and a small-sized connection pool of 1K to 4K, then splitting factors of 2 and 4 are optimal. For medium-sized connection pools, i.e., 5K to 7K, a splitting factor of 6 provides optimal results, while for large-sized pools, namely, 8K to 10K connections, the optimal splitting step is 10. Low splitting factors generally lead to the spawning of a lower total number of replicas. This translates as follows. For 2K connections and a pollution factor of 1% using a splitting factor of 4 will lead to the full solution in the shortest time; however, a total of 126 replicas need to be spawned. In contrast, using an even smaller splitting factor of 2 will require even fewer replicas, i.e., 100, meaning 26% less replica utilization. For the same pollution factor, assuming a 10K pool of connections and the optimal split factor in terms of time efficiency, i.e., 10, then a total of 901 replicas will be spawned as opposed to 440 when the splitting factor is 2. This is an increase of roughly 50%. In this respect, it is clear that there is a trade-off between time and resource requirements, depending on the employed splitting factor. Oppositely, higher splitting factors lead to less effective solutions. Specifically, in small-sized connection pools, splitting factors of 14 and 20 yield the poorest performance, whereas in medium- to large-sized connection pools, factors of 16, 18, and 20 exhibit inferior performance. Indicatively, when considering 10K connections, a splitting factor of 20 requires around 28 min and 1000 nodes to reach a complete solution, meaning that there is a 65.6% and a 58.5% increase for time and resource demands, respectively, compared to the best-performing factors.
Similarly, as depicted in Figure 4 and outlined in Table 4 and Table 5, when applying a pollution factor of 5% and 10%, low-to-medium splitting factors outperform the high ones both in time and resource requirements. Time-wise, splitting factors of 6, 8, and 10 are consistently the best-performing factors across the considered connection pools. However, it is worth noting that in cases of 5% and 10% pollution factors, splitting factors of 14, 18, and 20 sporadically exhibit the highest efficiency for pools of 2K, 5K, and 8K connections, respectively. Regarding resource utilization, the optimal choice across all connection pools is consistently a splitting factor of 2. Similarly to the case of 1% of pollution factor, it is evident that there is a trade-off between time and resource requirements. For instance, a splitting factor of 10 requires 19.91 min and 1364 nodes in the case of a 10% pollution factor and 10K connections. On the contrary, a splitting factor of 2 needs ≈31% more time, but it spawns ≈18% less nodes.
Takeaways: Utilizing a low-to-medium splitting factor that remains unchanged throughout all epochs may result in a speed-up ranging from one to (approximately) two orders of magnitude for reaching a complete solution. Taking for example a pollution factor of 10% and a connection pool of 10K, splitting each node into 10 new nodes per epoch consumes 29.03 min for the isolation of all malicious connections as opposed to 835.20 min required by the naive, serial checking, approach. At the same time, adopting a very low partition factor of 2 will result in spawning a total of 1688 replicas vs. 10K replicas required by the naive, parallel approach. More sophisticated schemes may better balance the time and resources required for a complete solution.

5.3. Experiment 3: Distribution and Recovery Time of Malicious Connections

This experiment provides a triplet of additional key remarks derived from the experiment of Section 5.2. First, we demonstrate that all the static splitting factor strategies uphold the normal distribution throughout the simulation. Second, we prove that resource utilization grows as the splitting factor increases. Third, we show that the proposed scheme leads to high resilience; this is confirmed by the relatively brief time required for the system to recover. We opt to visually confirm these observations through the best time- and resource-wise performers as derived from the experiments of Section 5.2, namely, the splitting factors of 10 and 2, respectively. Particularly, the first observation is illustrated in Figure 5 and Figure 6, the second in Figure 7 and Figure 8, while the third one in Figure 9.
Specifically, Figure 5 and Figure 6 depict the distribution of connections across replica nodes. The x-axis denotes time in epochs, and the y-axis represents the number of connections each node includes. Each vertical bar in the figure corresponds to a node. The red and green portions of each node indicate the malicious and healthy connection percentages, respectively. Note that both figures depict the condition at the end of the epochs, namely, after the evaluation has been completed and the healthy nodes have been discarded. Put simply, all the depicted nodes contain malicious connections. Indicatively, both Figure 5 and Figure 6 pertain to the scenario where the total number of connections was 10K and the pollution factor was 10%, while the employed strategies include the ones with splitting factors of 2 and 10, respectively. Epochs 4 to 8 in Figure 5 have been selected to provide a balanced representation for the case of a splitting factor of 2. This decision was based on the fact that the rightmost epochs (5 to 14) encompass a vast number of nodes, whereas the leftmost epochs (1 to 3) involve significantly fewer nodes, offering less distinct and visible information to the reader. In contrast, in the case of a splitting factor of 10, the simulation only takes 4 epochs, so we chose to depict epochs 2 to 4 in Figure 6. The first epoch was deliberately skipped as the number of nodes is significantly smaller and the connections per node are significantly more than the subsequent epochs, upsetting the clarity of Figure 6.
Observing Figure 5 and Figure 6, it is evident that the assumed normal distribution at the start of the experiments is maintained over time. Noteworthy, this desirable property is retained by our partition strategy, irrespective of which of the strategies of Section 5.2 is employed, as confirmed by Figure 5 and Figure 6. Note that, as the number of nodes increases, the dispersion of malicious connections across the nodes widens. It is also straightforward that as the splitting factor increases this dispersion process is accelerated. This is because the partitioning process is applied uniformly to all nodes, irrespective of their maliciousness. Consequently, even nodes situated at the mean of the distribution are divided into two, leading to a halving (splitting factor equals two) of the amplitude of the distribution. The same stands for a splitting factor of 10, but instead, the amplitude in each epoch is divided by 10. Additionally, the number of nodes per epoch is increased according to the splitting factor. For example, when using a splitting factor of 2, epoch 4 only spans 6 nodes, while in the same epoch, 1000 nodes are spanned in the case of a splitting factor of 10.
In the same vein, Figure 7 and Figure 8 illustrate the resource utilization over time. Precisely, the x-axis represents the replica nodes encompassed by an epoch at its conclusion, while the y-axis denotes the pollution rate of each of these nodes. As with Figure 5 and Figure 6, each vertical bar stands for a node. Regarding the splitting factor of 2, epochs 6 and 8 were magnified, while epochs 2 and 3 were selected in the case of a splitting factor of 10. This selection aims to assist readers in discerning the rate of nodes’ increase over time, facilitating a comparison of resource utilization based on the splitting factor.
It is clear that employing a splitting factor of 2 results in a gradual yet steady increase in the number of nodes per epoch. Specifically, regarding Figure 7, by the conclusion of epoch 6, only 18 nodes remain, whereas 63 nodes are present at the end of epoch 8. Conversely, when employing a splitting factor of 10, resource utilization escalates at a much faster pace. Particularly, epoch 2 ends with 27 nodes, while epoch 3 with 198 nodes, exceeding even the node count observed in epoch 8 with a splitting factor of 2.
Figure 9 illustrates the resilience curve of the proposed scheme, with the x-axis denoting the percentage of the connections saved, and the y-axis indicating the time spent per epoch. Similarly to Figure 5 and Figure 6, this figure applies to the scenario where the total number of connections was 10K, the pollution factor was 10%, while the employed strategy involved a static splitting factor equal to 2 and 10. With reference to Section 5.2, the particular scenarios were adroitly selected, as they were the best performers out of the static splitting factors in terms of resources and time, respectively.
Concerning a splitting factor of 2, the strategy requires a total of 14 epochs to reach a complete solution. Specifically, precisely half of the benign connections are preserved in the second epoch after 1.59 min, with over 80% of the malicious connections identified within roughly 10 min, as detailed in Table 6. Nevertheless, our method exhibits a decline in efficiency during the final four epochs, taking nearly an extra 35 min to attain complete recovery; or in other words, identifying the remaining 10% of malicious connections.
Contrary to splitting factor of 2, the strategy that utilizes a factor of 10 only requires 4 epochs till achieving a full solution. This is rather anticipated, as the number of nodes per epoch increases much faster and the malicious connections are more speedily isolated. Particularly, 60% of the malicious connections are identified in only 1 min, while more than 80% of them are spotted in roughly 4 min, as depicted in Table 7. Similar to the splitting factor of 2, the rest of the malicious connections (10%) need considerably more time to be recognized, namely, an additional 25 min.
Takeaways: First, all static splitting factor strategies maintain a normal distribution of connections across replica nodes, but with varying dispersion of malicious connections across the replica nodes. A more targeted and efficient partitioning strategy could capitalize on the normal distribution attributes and handle its various zones accordingly. Second, the resource utilization rate increases with higher splitting factors, as evidenced by faster node accumulation. Despite this, our scheme demonstrates relative resilience, with higher splitting factors enabling quicker recovery times, albeit at the cost of increased resource utilization. As mentioned in Section 5.2, refined schemes may better balance the time and resources.

5.4. Experiment 4: Static Splitting Factors with Stopping Criteria

The purpose of the current experiment is to assess the effectiveness of our splitting scheme across various static splitting factors while introducing three distinct stopping criteria. Recall from Section 3.3, that the metrics that are used in case a stopping criterion is applied are the time elapsed, resources consumption, and the detection rate, depending on the criterion in force. Particularly, in Section 5.4.1, the simulation is conducted with a time constraint of 15 min. This value is determined by rounding the median time (16.79 min) taken by the time-wise best-performing splitting factor of 10 when considering a pollution factor of 10%. Regarding the time criterion, the meaningful metrics are the resources consumption and the detection rate.
Next, in Section 5.4.2, the simulation is performed with a resource constraint of 1000 replicas. Similarly, this value is derived from rounding the median of replica nodes (920.2 nodes) taken by the resource-wise best-performing splitting factor of 2, when considering a pollution factor of 10%. For the resource criterion, the relevant metrics are the time elapsed and detection rate.
Last, in Section 5.4.3, the simulation is executed with a connection saved percentage constraint of 80%. This percentage was decided from Table 6 and Table 7, where for both curves of Figure 9 the critical point is when they have achieved to save approximately 80% of the benign connections, specifically in epochs 11 (10.56 min) and 3 (3.99 min) for splitting factors of 2 and 10, respectively. When the connection saved percentage criterion is applied, the appropriate metrics are the time elapsed and resources consumption.

5.4.1. Time Criterion

Upon analyzing the simulation outcomes, it becomes evident that low to medium-splitting factors result in more effective solutions. Another key (and anticipated) remark is that as the pollution factor increases the success rates of the employed splitting strategies are dropping. Moreover, despite the high splitting factors typically leading to low success percentages, they demonstrate considerably fewer demands for resources, given the 15 min constraint. The results are illustrated in Figure 10 and detailed in Table 8, Table 9 and Table 10.
Specifically, with regard to Figure 10 and Table 8, when examining a pollution factor of 1%, splitting factors ranging from 2 to 12 achieve complete solutions within the 15 min constraint across all tested connection pools. Consequently, the corresponding cells in Table 8 remain empty as they exhibit identical values for time and resources as Table 3 from the experiment conducted without no criteria applied, as discussed in Section 5.2. On the other hand, splitting factors ranging from 14 to 20 occasionally yield suboptimal solutions for over 6K connection pools. For example, utilizing a splitting factor of 14 leads to complete solutions up until the number of connections becomes equal or greater than 8K where the succession rate diminishes to 97.8% or lower, depending on the considered connection pool. However, in case the simulation concludes with a partial solution, it is apparent that the resource utilization is reduced. Indicatively, using a splitting factor of 20, connection pools of 9K and 10K connections yielded partial solutions with 98.7% and 98.5% succession rates. Despite this, they spawned 1002 and 1010 nodes, which is slightly fewer than the 1040 and 1061 nodes spawned in the experiment of Section 5.2, where no criteria were applied.
Contrarily, with reference to Figure 10 and Table 9, when considering a pollution factor of 5% none of the employed splitting factors achieve optimal solutions for every tested connection pool. Particularly, for small connection pools, i.e., 1K to 4K, splitting factors 2 to 10 and 20 indeed attain a complete solution. For medium-sized connection pools, spanning from 5K to 7K, only the splitting factor of 6 and 20 results in a complete solution, followed by the splitting factor of 10, which succeeds partially (94.8%) only for a connection pool of 7K. Finally, in connection pools ranging from 8K to 10K, a splitting factor of 20 attains an optimal solution when the number of connections equals 8K. However, for connection pools of 9K and 10K, the same factor achieves 82.2% and 81.3%, respectively, marking these as the least effective performances for these pool sizes. Notwithstanding, in the same scenario 1084 and 1090 nodes are spawned. Recall from the experiment with no criteria of Section 5.2, that the same strategy needs 1653 and 1953 nodes to reach a complete solution, which translates to ≈34% and 44% less resource utilization at the expense of sacrificing a percentage of 12.8% and 13.7% benign connections, respectively. Significantly, for the same connection pools, the best-performing splitting factor of 10 only sacrifices 0.3% and 0.6% of the benign connections, but with ≈23% and 31% fewer nodes spawned, compared to the brute force experiment of Section 5.2.
The simulation resulted in analogous results when considering a pollution factor of 10%, as illustrated in Figure 10 and outlined Table 10. Remarkably, for small connection pools only splitting factors of 10, 12, and 14 do not attain complete solutions. For medium-sized connection pools, splitting factors of 6, 18, and 20 achieve optimal solutions for 5K connections, while for 6K to 7K connections, the splitting factor of 20 is the top performer obtaining an 88.9% success percentage. Finally, in connection pools ranging from 8K to 10K, in terms of the best performers, the results are identical with a pollution factor of 5%. Regarding resource utilization, the same observation was derived: suboptimal solutions lead to fewer nodes spawned. Indicatively, for a connection pool of 10K, the best-performing splitting factor of 10 sacrifices 3.6% of the benign connections, but with ≈57% less resource utilization. As for the worst-performing splitting factor of 20, it sacrifices 13% of the benign connections, but with ≈49% less resource utilization.

5.4.2. Replica Nodes Criterion

Based on the derived results, it can be said that when applying a stopping criterion of 1000 replica nodes, low-to-medium splitting factors outperform the high ones. Furthermore, as with the time criterion experiment, as the pollution factor increases, the success rates of our scheme are dropping. Additionally, we observed that high partitioning factors lead to substantial improvements in time and resource efficiency. However, this comes at the cost of significant sacrifices in terms of benign connections. It is also noteworthy that considering a low pollution factor of 1%, regardless of the partition factor, our scheme leads to a complete solution. In this context, the results for pollution factors of 5% and 10% are illustrated in Figure 11 and detailed in Table 11 and Table 12, respectively.
Particularly, as seen from Figure 11 and Table 11, in the case of a pollution factor of 5%, our scheme achieves an optimal solution for every splitting factor for connection pools up to 5K. Furthermore, within the range of low-to-medium partitioning factors, spanning from 2 to 14, complete solutions are also achieved for connection pools of 6K and 7K. Additionally, a partitioning factor of 2 also yields such a solution for connection pools of 8K. Last, for large connection pools of 9K and 10K, the best performer is the splitting factor of 10; it takes roughly 17 min and has 94.9% of success for both these pools. This translates as follows. For both the connection pools of 9K and 10K, only 0.1% of the benign connections are sacrificed, while 1.87 and 2.78 fewer min are spent and 202 and 364 fewer nodes are spawned compared to the brute force experiment of Section 5.2. Conversely, the splitting factor of 20 exhibits the poorest performance, preserving only 80% and 79.5% of benign connections. Nevertheless, it consumes notably 64.74 and 70.8 min less, also generating 653 and 953 fewer nodes.
Likewise, as depicted in Figure 11 and Table 12, in the scenario of a 10% pollution factor, our scheme reaches a complete solution for every splitting factor for connection pools up to 4K. Again, within the range of low-to-medium partitioning factors, complete recovery is also accomplished for connection pools of 5K, while splitting factors of 2, 4, and 12 generate identical outcomes for connection pools of 6K. Finally, within the spectrum of 9K and 10K connections, for yet another time, splitting factors of 10 and 20 appear as the best (87%) and worst (77%) performing ones, respectively. Nevertheless, for 10K connections, the first consumes 8.33 min less and spawns 1071 fewer nodes; this translates as ≈28% less time and ≈51% less resource utilization. Similarly, the latter needs 150.66 min less and 1170 fewer nodes, meaning a significant decrease in time (≈91%) and resource (≈54%) requirements.

5.4.3. Connections Saved Criterion

Examining the results of this experiment given in Figure 12 and Table 13, Table 14 and Table 15, we argue that medium splitting factors surpass low and high ones in performance when the stopping criterion is set to at least 80% of connections to be saved. Moreover, from the same Figure, it is apparent that both time and resource requirements are essentially reduced as opposed to all the previous experiments. Recall that this cutback has been also observed from the experiment of Section 5.3 and Figure 9, where it was corroborated that more than 80% of the connections have been saved in roughly 10 and 4 min for splitting factors of 2 and 10, respectively. Significantly, the execution time of our scheme is bounded by an 18 min barrier. Resource-wise the same low bound holds for pollution factor 1% and 5%, where the most nodes that have been spawned are 638. However, in the case of a 10% pollution factor, high splitting factors still spawn a substantial number of nodes, often exceeding a total of 1000.
From this standpoint, as observed from Figure 12 and Table 13, when considering a pollution factor of 1%, medium splitting factors are optimal. Specifically, for connection pools exceeding 5K, a splitting factor of 10 demonstrates optimal performance, requiring approximately 1.5 min to retain 80% of the benign connections, with a maximum expense of 46 nodes. Conversely, employing a splitting factor of 2 takes around 3 min, while a factor of 20 results in the creation of 134 nodes, making these two setups the least efficient in terms of time and resource utilization, respectively. To highlight the reduction in time and resource requirements, we focus on the best-performing splitting factor of each experiment and a connection pool size of 10K. Compared to the experiments detailed in Section 5.2, Section 5.4.1 and Section 5.4.2, where the best performer was the splitting factor of 10, our approach needs 8.1 min less and generates 873 fewer nodes, albeit at the expense of sacrificing at most 19% of the benign connections. Recall that the simulation concludes when at least 80% of the 99% benign connections are preserved.
Interestingly, when dealing with a pollution factor of 5%, high splitting factors outperform low and medium ones, as also confirmed by Figure 12 and Table 14. Specifically, a splitting factor of 18 emerges as the top performer for connection pools exceeding 4K, taking roughly 1.6 to 2.5 min and utilizing 100 to 120 nodes to preserve 80% of the benign connections. In contrast, a medium splitting factor of 14 demands 6.4 to 7.1 min and over 600 nodes to achieve the same preservation rate. This unexpected outcome can be explained as follows: higher splitting factors necessitate the same resource allocation regardless of whether the pollution factor is 1% or 5%. However, low and medium splitting factors require an order of magnitude more time and nodes to salvage 80% of the benign connections, entailing the execution of an extra epoch during the simulation. And, normally, an extra epoch, besides spawning a greater number of nodes based on the splitting factor, also imposes substantially more connection migrations and node evaluations, thereby considerably increasing the total time.
Regarding the efficiency of our scheme compared to previous experiments of Section 5.2, Section 5.4.1 and Section 5.4.2 we opt to concentrate on the best-performing splitting factor and a connection pool size of 10K. Under these conditions, the simulation achieves the preservation of 80% of benign connections in 2.48 min using 120 nodes. Contrasting this with the experiment outlined in Section 5.2, where no criteria were imposed, and the optimal splitting factor was 10, the requirements in terms of time and nodes increase by 87.5% and 91.2%, respectively. In the experiment detailed in Section 5.4.1, where a 15 min constraint was enforced, and the best performer remained the splitting factor of 10, the simulation requires 83.4% more time and 87% more nodes. Lastly, in the experiment given in Section 5.4.2, where a 1000-node criterion was set, and the optimal factor was 10, the simulation necessitates 85.5% more time and 88% more nodes. Recall that the simulation concludes when at least 80% of the 95% benign connections are preserved, meaning that at most 15% of the benign connections are sacrificed.
Finally, when applying a pollution factor of 10%, low to medium splitting factors are proved to be the more efficient. In detail, as observed from Figure 12 and Table 15, in terms of time requirements, for small-sized connection pools of 1K to 4K, the best performing splitting factors are 4, 8, and 10, requiring from approximately 0.6 to 2 min to save 80% of the benign connections. In terms of nodes spawned, in the same spectrum of connections, the best-performing splitting factors are 2 and 6, necessitating from 32 to 125 nodes. Moreover, for medium- and large-sized connection pools, namely, from 6K to 10K, the splitting factor of 10 is consistently optimal concerning time demands. Precisely, the simulation takes from roughly 3.4 to 4 min to achieve an 80% of success. For the same connection pools, the splitting factors of 2 and 10 are the most effective in terms of resource utilization. Namely, for 6K to 8K connections, the factor of 2 needs around 240 nodes, while for 9K and 10K connections, the factor of 10 requires exactly 289 nodes. On the other hand, high splitting factors steadily exhibit the worst performance. Indicatively, for connection pools spanning from 5K to 10K, the splitting factor of 20 has the most requirements both in time and nodes, taking ≈15 to 18 min, and demanding from around 1300 to 1850 nodes to preserve 80% of the benign connections.
To examine the efficiency of our scheme compared to previous experiments of Section 5.2, Section 5.4.1, and Section 5.4.2, we once again focus on the best-performing splitting factor and a connection pool size of 10K. Note that in this scenario the best-performing factor is 10 for all the experiments regardless of the criterion applied. In this context, the simulation obtains 80% of benign connections in 3.97 min using 289 nodes. Comparing this to the experiment detailed in Section 5.2, there is an 86.3% increase in time and an 86% increase in node requirements. In the experiment specified in Section 5.4.1, with a 15 min constraint enforced, the simulation requires 73.5% more time and 67% more nodes. Finally, in the experiment given in Section 5.4.2, with a 1000-node criterion established, the simulation requires an 80.8% increase in time and a 71.1% increase in nodes. Recall that the simulation terminates once at least 80% of the 90% benign connections are maintained, indicating that a maximum of 10% of the benign connections are sacrificed.
Takeaways: The experiments of this section systematically evaluated the performance of our splitting scheme under various stopping criteria, including time constraints, resource constraints, and connection saved percentage constraints. Across all experiments, it was observed that low-to-medium splitting factors, generally outperformed high ones, in terms of both success rates, time demands, and resource utilization. However, as a general remark, we observed that as the pollution factor increased, success rates decreased, with even the best-performing splitting factors experiencing limitations. Notably, applying stopping criteria based on connections saved percentage, such as preserving at least 80% of connections, yielded substantial reductions in both time and resource requirements compared to the rest of this Section’s experiments. On the flip side, saving 80% translates as 19%, 15%, and 10% sacrifice of the benign connections, respectively, for 1%, 5%, and 10% of pollution factors. At the same time, the application of time or resource constraints achieves better success rates but at the expense of either heightened time or resources. Overall, in real-time scenarios, adjusting the criteria based on the system’s urgency for recovery and its available resources can lead to acceptable success rates, even with static splitting factors. However, more sophisticated schemes may better balance the time and resources.

6. Conclusions and Future Work

LDoS attacks constitute a substantial threat to a diversity of stakeholders, including contemporary data centers and critical infrastructures. While such attacks exhibit a high degree of stealthiness and expose a tiny network footprint, they may be particularly effective, ultimately bringing the target network to a grinding halt. Clearly, from a defender’s viewpoint, the inherent characteristics of LDoS make them challenging to detect and confront using standard network perimeter controls, including IDS and firewalls. Contributing to the confrontation of this threat, this work introduces a novel MTD strategy that requires zero knowledge of the attack attributes. Essentially, the proposed scheme hinges on iteratively splitting the initial volume of the connections into replica servers to isolate the malicious connections. Through an extensive evaluation process, we demonstrate that by craftily selecting a splitting factor and determining stopping conditions, our strategy can reach an adequate percentage of success, salvaging 80% of the benign connections in less than 5 min. Another key remark is the zero-sum situation between time and resource requirements, meaning that none of the rudimentary splitting schemes we examine is simultaneously effective in both terms. For instance, employing a small splitting factor of 2 necessitates a maximum of 1688 replica nodes, whereas opting for a medium factor of 10 consumes up to 29.03 min to attain a complete solution.
An interesting avenue for future work includes devising more advanced partitioning schemes that could potentially incorporate machine learning methods to better balance time and resource utilization. Furthermore, despite that the majority of the evaluated schemes require less than 2000 replicas, replica recycling techniques could be implemented to further reduce resource utilization. Another intriguing direction for future research involves the evaluation of the proposed scheme under real-life attacks, say, Slowloris. In a similar vein, as future work, we aim to explore the behavior of our strategy while considering variant volumes of real-life attack traffic to assess its scalability.

Author Contributions

Conceptualization, C.K., V.K. and G.M.M.; methodology, C.K. and V.K.; software, V.K. and G.M.M.; validation, V.K. and G.M.M.; writing—original draft preparation, C.K., V.K. and G.M.M.; writing—review and editing, C.K., V.K. and G.M.M.; supervision, C.K. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

We have made available all data, code and experimental procedures. Zenodo reference with all the data: https://zenodo.org/records/10963325 Code for Experimental Part: https://github.com/georgemakrakis/conn_transfer Code for Simulation Part: https://github.com/byrkam/Partitioning-Defense-Strategy-Simulato all accessed on 3 April 2024.

Conflicts of Interest

The authors declare no conflicts of interest.

Abbreviations

The following abbreviations are used in this manuscript:
APTAdvanced Persistent Threats
C&CCommand and Control servers
DDoSDistributed Denial of Service
DoSDenial of Service
GSMGraphical Security Models
HTTPHypertext Transfer Protocol
IDSIntrusion Detection Systems
IPSIntrusion Prevention System
LDoSLow-rate Denial of service
LBLoad Balancer
MPTCPMulti-Path TCP
MTDMoving Target Defense
OSOperating System
QoSQuality of Service
RAMRandom-Access Memory
SAPShuffle Assignment Problem
SFSplitting Factor
SIEMSecurity Information and Event Management
TCPTransmission Control Protocol
TRMTraffic-Redirection virtual machine Migration
VPLSVirtual Private LAN Service
VLANVirtual Local Area Network
VMVirtual Machines
WANWide-Area Network

References

  1. Zhijun, W.; Wenjing, L.; Liang, L.; Meng, Y. Low-rate DoS attacks, detection, defense, and challenges: A survey. IEEE Access 2020, 8, 43920–43943. [Google Scholar] [CrossRef]
  2. Yan, Y.; Tang, D.; Zhan, S.; Dai, R.; Chen, J.; Zhu, N. Low-rate dos attack detection based on improved logistic regression. In Proceedings of the 2019 IEEE 21st International Conference on High Performance Computing and Communications; IEEE 17th International Conference on Smart City; IEEE 5th International Conference on Data Science and Systems (HPCC/SmartCity/DSS), Zhangjiajie, China, 10–12 August 2019; pp. 468–476. [Google Scholar]
  3. Tang, D.; Tang, L.; Dai, R.; Chen, J.; Li, X.; Rodrigues, J.J. MF-Adaboost: LDoS attack detection based on multi-features and improved Adaboost. Future Gener. Comput. Syst. 2020, 106, 347–359. [Google Scholar] [CrossRef]
  4. Liu, L.; Wang, H.; Wu, Z.; Yue, M. The detection method of low-rate DoS attack based on multi-feature fusion. Digit. Commun. Netw. 2020, 6, 504–513. [Google Scholar] [CrossRef]
  5. Tang, D.; Tang, L.; Shi, W.; Zhan, S.; Yang, Q. MF-CNN: A new approach for LDoS attack detection based on multi-feature fusion and CNN. Mob. Netw. Appl. 2021, 26, 1705–1722. [Google Scholar] [CrossRef]
  6. Delio, M. New Breed of Attack Zombies Lurk. 2022. Available online: https://www.wired.com/2001/05/new-breed-of-attack-zombies-lurk/ (accessed on 6 April 2024).
  7. Zhu, Q.; Yizhi, Z.; Chuiyi, X. Research and survey of low-rate denial of service attacks. In Proceedings of the 13th International Conference on Advanced Communication Technology (ICACT2011), Gangwon-Do, Republic of Korea, 13–16 February 2011; pp. 1195–1198. [Google Scholar]
  8. Alavizadeh, H.; Kim, D.S.; Jang-Jaccard, J. Model-based evaluation of combinations of shuffle and diversity MTD techniques on the cloud. Future Gener. Comput. Syst. 2020, 111, 507–522. [Google Scholar] [CrossRef]
  9. Yang, Y.; Misra, V.; Rubenstein, D. A modeling approach to classifying malicious cloud users via shuffling. ACM Sigmetrics Perform. Eval. Rev. 2019, 46, 6–8. [Google Scholar] [CrossRef]
  10. Hong, J.B.; Yoon, S.; Lim, H.; Kim, D.S. Optimal network reconfiguration for software defined networks using shuffle-based online MTD. In Proceedings of the 2017 IEEE 36th Symposium on Reliable Distributed Systems (SRDS), Hong Kong, 26–29 September 2017; pp. 234–243. [Google Scholar]
  11. Stavrou, A.; Fleck, D.; Kolias, C. On the Move: Evading Distributed Denial-of-Service Attacks. Computer 2016, 49, 104–107. [Google Scholar] [CrossRef]
  12. Jia, Q.; Wang, H.; Fleck, D.; Li, F.; Stavrou, A.; Powell, W. Catch Me If You Can: A Cloud-Enabled DDoS Defense. In Proceedings of the 2014 44th Annual IEEE/IFIP International Conference on Dependable Systems and Networks, Atlanta, GA, USA, 23–26 June 2014; pp. 264–275. [Google Scholar] [CrossRef]
  13. Bicakci, M.V.; Kunz, T. TCP-Freeze: Beneficial for virtual machine live migration with IP address change? In Proceedings of the 2012 8th International Wireless Communications and Mobile Computing Conference (IWCMC), Limassol, Cyprus, 27–31 August 2012; pp. 136–141. [Google Scholar] [CrossRef]
  14. Qin, J.; Wu, Y.; Chen, Y.; Xue, K.; Wei, D.S.L. Online User Distribution-Aware Virtual Machine Re-Deployment and Live Migration in SDN-Based Data Centers. IEEE Access 2019, 7, 11152–11164. [Google Scholar] [CrossRef]
  15. Wood, T.; Ramakrishnan, K.; Shenoy, P.; Van der Merwe, J.; Hwang, J.; Liu, G.; Chaufournier, L. CloudNet: Dynamic pooling of cloud resources by live WAN migration of virtual machines. IEEE/ACM Trans. Netw. 2014, 23, 1568–1583. [Google Scholar] [CrossRef]
  16. Chaufournier, L.; Sharma, P.; Le, F.; Nahum, E.; Shenoy, P.; Towsley, D. Fast Transparent Virtual Machine Migration in Distributed Edge Clouds. In Proceedings of the Second ACM/IEEE Symposium on Edge Computing, SEC ’17, New York, NY, USA, 12–14 October 2017. [Google Scholar] [CrossRef]
  17. Chen, A.; Sriraman, A.; Vaidya, T.; Zhang, Y.; Haeberlen, A.; Loo, B.T.; Phan, L.T.X.; Sherr, M.; Shields, C.; Zhou, W. Dispersing Asymmetric DDoS Attacks with SplitStack. In Proceedings of the 15th ACM Workshop on Hot Topics in Networks, Atlanta, GA, USA, 9–10 November 2016; pp. 197–203. [Google Scholar] [CrossRef]
  18. Bernaschi, M.; Casadei, F.; Tassotti, P. SockMi: A solution for migrating TCP/IP connections. In Proceedings of the 15th EUROMICRO International Conference on Parallel, Distributed and Network-Based Processing (PDP’07), Napoli, Italy, 7–9 February 2007; pp. 221–6192. [Google Scholar] [CrossRef]
  19. Araujo, F.; Hamlen, K.W.; Biedermann, S.; Katzenbeisser, S. From Patches to Honey-Patches: Lightweight Attacker Misdirection, Deception, and Disinformation. In Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, Scottsdale, AZ, USA, 3–7 November 2014; pp. 942–953. [Google Scholar] [CrossRef]
  20. Bandi, N.; Tajbakhsh, H.; Analoui, M. FastMove: Fast IP switching Moving Target Defense to mitigate DDOS Attacks. In Proceedings of the 2021 IEEE Conference on Dependable and Secure Computing (DSC), Aizuwakamatsu, Fukushima, Japan, 30 January–2 February 2021; pp. 1–7. [Google Scholar] [CrossRef]
  21. Cho, J.H.; Sharma, D.P.; Alavizadeh, H.; Yoon, S.; Ben-Asher, N.; Moore, T.J.; Kim, D.S.; Lim, H.; Nelson, F.F. Toward proactive, adaptive defense: A survey on moving target defense. IEEE Commun. Surv. Tutor. 2020, 22, 709–745. [Google Scholar] [CrossRef]
  22. Rios, V.D.M.; Inácio, P.R.; Magoni, D.; Freire, M.M. Detection and mitigation of low-rate denial-of-service attacks: A survey. IEEE Access 2022, 10, 76648–76668. [Google Scholar] [CrossRef]
  23. Sikora, M.; Fujdiak, R.; Kuchar, K.; Holasova, E.; Misurec, J. Generator of Slow Denial-of-Service Cyber Attacks. Sensors 2021, 21, 5473. [Google Scholar] [CrossRef] [PubMed]
  24. Fielding, R.; Reschke, J. Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing. 2014. Available online: https://datatracker.ietf.org/doc/html/rfc7230 (accessed on 6 April 2024).
  25. Criu. Criu. 2024. Available online: https://criu.org/Main_Page (accessed on 6 April 2024).
Figure 1. Model of traffic conditions during an LDoS attack.
Figure 1. Model of traffic conditions during an LDoS attack.
Futureinternet 16 00137 g001
Figure 2. Two extreme approaches as partition strategies. The use of a single replica server involves significant time to converge to a full solution; however, it has the minimum requirements in terms of replica servers spawned (left). The use of one replica-per-connection has maximum requirements in terms of resources but achieves minimum time to converge to a full solution as all processes can be executed in parallel (right).
Figure 2. Two extreme approaches as partition strategies. The use of a single replica server involves significant time to converge to a full solution; however, it has the minimum requirements in terms of replica servers spawned (left). The use of one replica-per-connection has maximum requirements in terms of resources but achieves minimum time to converge to a full solution as all processes can be executed in parallel (right).
Futureinternet 16 00137 g002
Figure 3. Comparison between the two extreme approaches based on the average time (left) and the total number of replicas required (right) without any stopping criterion applied. In this example, a pollution rate of 5% is considered.
Figure 3. Comparison between the two extreme approaches based on the average time (left) and the total number of replicas required (right) without any stopping criterion applied. In this example, a pollution rate of 5% is considered.
Futureinternet 16 00137 g003
Figure 4. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 1% (top), 5% (middle), and 10% (bottom). In this case, no stopping criterion is set.
Figure 4. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 1% (top), 5% (middle), and 10% (bottom). In this case, no stopping criterion is set.
Futureinternet 16 00137 g004aFutureinternet 16 00137 g004b
Figure 5. Snapshot of the connections’ distribution over simulation epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 2. In the parenthesis are the total nodes for that epoch.
Figure 5. Snapshot of the connections’ distribution over simulation epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 2. In the parenthesis are the total nodes for that epoch.
Futureinternet 16 00137 g005
Figure 6. Snapshot of the connections’ distribution over simulation epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 10. In the parenthesis are the nodes that exist at the end of each epoch.
Figure 6. Snapshot of the connections’ distribution over simulation epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 10. In the parenthesis are the nodes that exist at the end of each epoch.
Futureinternet 16 00137 g006
Figure 7. Snapshot of the distribution of malicious connections over replicas in selected epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 2. (a) Epoch 6 out of 14; (b) Epoch 8 out of 14.
Figure 7. Snapshot of the distribution of malicious connections over replicas in selected epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 2. (a) Epoch 6 out of 14; (b) Epoch 8 out of 14.
Futureinternet 16 00137 g007
Figure 8. Snapshot of the distribution of malicious connections over replicas in selected epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 10. (a) Epoch 2 out of 4; (b) Epoch 3 out of 4.
Figure 8. Snapshot of the distribution of malicious connections over replicas in selected epochs. This case considers a connections’ pool of 10K, a pollution factor of 10%, and a splitting factor of 10. (a) Epoch 2 out of 4; (b) Epoch 3 out of 4.
Futureinternet 16 00137 g008
Figure 9. Percentage of connections saved to time elapsed. The graph indicates the time required for partial to full recovery of the system. In this case, we consider a pollution factor of 10% and splitting factors of 2 and 10. Note that more than 80% of benign connections are saved within roughly 10 and 4 min, respectively.
Figure 9. Percentage of connections saved to time elapsed. The graph indicates the time required for partial to full recovery of the system. In this case, we consider a pollution factor of 10% and splitting factors of 2 and 10. Note that more than 80% of benign connections are saved within roughly 10 and 4 min, respectively.
Futureinternet 16 00137 g009
Figure 10. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 1% (top), 5% (middle), and 10% (bottom). This case considers a time criterion set to 15 min.
Figure 10. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 1% (top), 5% (middle), and 10% (bottom). This case considers a time criterion set to 15 min.
Futureinternet 16 00137 g010aFutureinternet 16 00137 g010b
Figure 11. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 5% (top) and 10% (bottom). This case considers a resource criterion set to 1000 replica nodes.
Figure 11. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 5% (top) and 10% (bottom). This case considers a resource criterion set to 1000 replica nodes.
Futureinternet 16 00137 g011
Figure 12. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 1% (top) 5% (middle) and 10% (bottom). In this case, we consider a connections saved criterion set to 80%.
Figure 12. Comparison of the efficiency of the proposed scheme when considering various splitting steps. The pollution factors considered are 1% (top) 5% (middle) and 10% (bottom). In this case, we consider a connections saved criterion set to 80%.
Futureinternet 16 00137 g012
Table 1. Average times for all the actions performed per epoch for various replica numbers and connection pools.
Table 1. Average times for all the actions performed per epoch for various replica numbers and connection pools.
Time (s)
Replicas (r)/Connections (c) Num.1020304050
S ( r ) 5.137.7710.3613.7518.04
F ( c , s ) 0.0020.0050.0080.0110.015
R ( c , s ) 0.0060.0150.0210.0290.033
Table 2. Time elapsed in minutes (left) and resource consumption (right).
Table 2. Time elapsed in minutes (left) and resource consumption (right).
Time (min)Num. of Replicas
Num. of Conn.Par. ApproachSer. ApproachNum. of Conn.Par. ApproachSer. Approach
10000.1883.52100010001
20000.27167.10200020001
30000.37250.55300030001
40000.45334.12400040001
50000.54417.37500050001
60000.64501.28600060001
70000.73584.64700070001
80000.82668.07800080001
90000.91751.45900090001
10,0001.00835.2010,00010,0001
Table 3. Time elapsed in minutes (top) and resource consumption (bottom) when considering a pollution factor of 1%. Highlighted are the best (green) and worst (red) configurations.
Table 3. Time elapsed in minutes (top) and resource consumption (bottom) when considering a pollution factor of 1%. Highlighted are the best (green) and worst (red) configurations.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10001.841.251.261.741.231.582.032.122.342.91
20002.972.622.952.733.614.342.963.463.674.38
30004.183.293.923.384.496.087.474.115.165.86
40004.823.754.613.825.536.808.644.615.727.14
50006.606.225.488.066.588.6510.4112.877.218.09
60006.986.625.708.926.699.1611.6013.9516.348.53
70007.737.506.6210.197.7210.1813.0215.6918.609.65
80008.327.9610.7210.718.0910.5913.7216.4919.139.76
900011.119.2112.7912.599.1812.6516.2019.5823.2426.73
10,00011.619.6113.1013.119.5212.9516.6720.2224.2727.68
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10004964698010092948788114
2000100126138147165200213193169168
3000144184200225217279355301294267
4000179238254309283287389428403403
5000235304341398379420474602619532
6000259323387434408424501576684656
7000302388491495541510559650785860
8000338412521515610534568645797970
90004135116856488186917178069831040
10,0004405426756629017377408029451061
Table 4. Time elapsed in minutes (top) and resource consumption (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations.
Table 4. Time elapsed in minutes (top) and resource consumption (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10003.032.152.234.061.972.913.705.145.896.85
20005.315.537.265.759.2813.384.876.477.999.87
30008.987.109.787.1611.8617.6923.287.7910.5613.05
400010.057.7110.917.4614.1120.3527.147.8910.5113.48
500014.7816.1311.6124.1614.3823.0432.0040.4410.9113.75
600016.4818.0912.7926.8015.5124.2734.8646.0357.2115.04
700017.9219.7713.7830.0016.8027.1638.3250.0862.9815.31
800019.6221.7835.1832.8318.1032.3141.9256.0968.8016.26
900027.3522.1236.1333.9118.8637.7843.4457.7975.7290.28
10,00029.7224.5139.9537.3019.9141.8646.6464.0781.1797.92
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000118138141136168170151163152149
2000233258291288279353360342313296
3000386430439504452477620592593566
4000483580565673631587677777755746
5000596698718808763734778894973928
6000720808911932959880890101211891193
700085194711201045109210791046111313211405
8000989108813131202114713031215130314691692
90001076115813491220120213771314128814381653
10,0001245137815671488136416661552157316411953
Table 5. Time elapsed in minutes (top) and resource consumption (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations.
Table 5. Time elapsed in minutes (top) and resource consumption (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10003.852.632.856.202.233.534.796.658.8211.30
20007.178.1311.587.6714.7623.255.848.1210.6113.62
300011.928.8513.398.2516.1426.5340.458.6311.3414.41
400013.019.4814.218.8417.3629.6244.388.9912.3515.05
500021.0424.6714.4238.8517.6230.4348.4469.1011.9915.06
600023.0827.0816.0342.1519.1133.1953.1074.37103.4516.58
700023.9728.3616.2945.0219.4634.9654.9979.57109.1317.02
800025.2130.0057.1047.5219.9035.3857.5084.73114.6017.47
900040.2130.5159.1149.0525.3635.5859.0487.84121.32161.40
10,00042.1432.0361.7250.3829.0337.3061.0591.10125.72165.43
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000173180190185199210197215205202
2000348356384381383422435432412414
3000508531539577545575629660633601
4000680728719810751744807896904854
500079786387393793087692210091069988
60001012107211461143118111071119120113141324
70001189122513311302138413261315135915181574
80001340137315211452159815311486154316671825
90001467151416691600181817001699170918071962
10,0001688174718601815207119401904191519592170
Table 6. Average connections saved and time elapsed per epoch for partitioning factor 2.
Table 6. Average connections saved and time elapsed per epoch for partitioning factor 2.
Partitioning FactorAverage Connections Saved (%)Average Time Elapsed (m)
Epoch 101.01
Epoch 2501.59
Epoch 3501.93
Epoch 462.502.20
Epoch 568.752.44
Epoch 671.872.72
Epoch 774.213.13
Epoch 875.383.79
Epoch 977.724.95
Epoch 1079.966.98
Epoch 1182.7510.56
Epoch 1285.6516.89
Epoch 1388.7326.93
Epoch 149042.14
Table 7. Average connections saved and time elapsed per epoch for partitioning factor 10.
Table 7. Average connections saved and time elapsed per epoch for partitioning factor 10.
Partitioning FactorAverage Connections Saved (%)Average Time Elapsed (m)
Epoch 1601.08
Epoch 2731.59
Epoch 380.203.99
Epoch 49029.04
Table 8. Detection rate (top) and resources consumption (bottom) when considering a pollution factor of 1%. Highlighted are the worst (red) configurations. Empty cells indicate that all benign connections (99% of all connections) were saved
Table 8. Detection rate (top) and resources consumption (bottom) when considering a pollution factor of 1%. Highlighted are the worst (red) configurations. Empty cells indicate that all benign connections (99% of all connections) were saved
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000
3000
4000
5000
6000 98.9
7000 98.298.6
8000 97.898.098.5
9000 96.997.898.298.7
10,000 96.397.498.298.5
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000
3000
4000
5000
6000 662
7000 597684
8000 510610749
9000 6677297601002
10,000 6997508211010
Table 9. Detection rate (top) and resources consumption (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations. Empty cells indicate that all benign connections (95% of all connections) were saved.
Table 9. Detection rate (top) and resources consumption (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations. Empty cells indicate that all benign connections (95% of all connections) were saved.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000 89.3
3000 90.994.4
4000 90.692.7
5000 94.7 88.6 88.991.688.2
600094.793.8 88.9 88.490.887.689.8
700094.392.4 87.594.887.790.485.284.1
800093.691.989.787.294.586.989.484.283.2
900090.790.888.387.794.785.988.283.883.582.2
10,00089.889.98687.494.48587.883.28281.3
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000 386
3000 404516
4000 543624
5000 615 730 621710824
6000659711 833 719764852965
7000721823 884857726785870936
8000728863945825899753795824978
90007578349648539177197759109431084
10,0007848799288769287697878529821090
Table 10. Detection rate (top) and resources consumption (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations. Empty cells indicate that all benign connections (90% of all connections) were saved.
Table 10. Detection rate (top) and resources consumption (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations. Empty cells indicate that all benign connections (90% of all connections) were saved.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000 89.3
3000 89.587.389.4
4000 88.88688
500088.888.8 88.987.685.186.887.7
600086.387.681.987.587.983.285.686.584.389.3
700085.287.28287.287.883.385.386.28388.9
800083.686.58286.486.983.184.986.683.188.9
900083.486.281.68686.482.784.385.983.777.7
10,00082.585.480.985.486.181.883.985.484.977
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000 386
3000 460498569
4000 578673727
5000710766 910601725802936
600075581387895379067183295510001166
700082481584299178072190897510941186
800077497488698281080787198010701106
900078082389199383283188797910811144
10,00081378986196287686285697310951182
Table 11. Time elapsed in minutes (top) and detection rate (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations. Note that empty cells indicate that all benign connections (95% of all connections) were saved.
Table 11. Time elapsed in minutes (top) and detection rate (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations. Note that empty cells indicate that all benign connections (95% of all connections) were saved.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000
3000
4000
5000
6000 48.8614.94
7000 44.8850.8614.98
8000 18.7420.9422.4617.4828.3434.8446.9851.5315.88
900020.4819.2321.0322.9516.9928.6535.6247.6851.6625.54
10,00021.8819.9921.1323.1517.1328.9539.7748.5951.8027.12
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000
3000
4000
5000
6000 90.281.2
7000 91.488.280.5
8000 94.690.292.394.893.193.290.289.680
900094.894.189.39294.991.288.589.288.680
10,00094.793.888.391.294.9888887.286.179.5
Table 12. Time elapsed in minutes (top) and detection rate (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations. Note that empty cells indicate that all benign connections (90% of all connections) were saved.
Table 12. Time elapsed in minutes (top) and detection rate (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations. Note that empty cells indicate that all benign connections (90% of all connections) were saved.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000
3000
4000
5000 9.65
6000 15.7541.1218.34 50.0164.9114.8913.18
700019.9525.4115.5344.0519.2229.5552.7165.3915.4713.80
800018.3226.6516.1244.3318.8030.6853.2366.2016.0314.15
900019.2926.9016.7946.5820.1531.5550.2367.0516.1814.63
10,00021.6928.7017.9847.7820.7032.4551.9368.0116.5914.77
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
1000
2000
3000
4000
5000 89.2
6000 82.188.188.2 87.587.878.788.4
70008988.9828888.483.885.587.479.388.4
800087.287.282.786.587.982.985.487.275.688.7
900085.785.882.28687.482.984.586.777.477.2
10,00085.48681.985.487.282.684.186.377.476.7
Table 13. Time elapsed in minutes (top) and resources consumption (bottom) when considering a pollution factor of 1%. Highlighted are the best (green) and worst (red) configurations.
Table 13. Time elapsed in minutes (top) and resources consumption (bottom) when considering a pollution factor of 1%. Highlighted are the best (green) and worst (red) configurations.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10000.620.380.420.470.520.270.290.310.320.34
20000.790.490.530.570.620.770.840.400.421.21
30001.130.850.640.680.720.871.061.141.221.31
40001.530.970.740.780.900.971.151.231.321.58
50002.031.621.351.871.091.171.251.331.411.84
60002.231.771.472.041.201.271.351.431.661.94
70002.421.901.582.141.211.371.451.531.772.03
80002.561.991.642.181.221.371.551.631.862.15
90002.742.101.802.281.411.471.651.721.962.26
10,0002.932.231.892.391.421.571.741.822.002.42
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10008101622281214161820
20008101622284553161896
300012221622284566768696
4000192216223745667686115
50003361561134656667686134
600034645612046566676103134
700034645612037566676103134
800032615611328456676103134
900032615611337456676103134
10,00032615611328456676103134
Table 14. Time elapsed in minutes (top) and resources consumption (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations.
Table 14. Time elapsed in minutes (top) and resources consumption (bottom) when considering a pollution factor of 5%. Highlighted are the best (green) and worst (red) configurations.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10000.780.610.920.470.600.770.860.941.181.29
20001.160.721.030.580.710.880.961.041.291.39
30001.661.381.141.652.610.981.061.141.231.48
40003.573.573.912.103.224.656.403.691.621.74
50003.703.633.912.143.154.546.493.991.741.84
60003.943.784.142.043.004.646.504.021.761.77
70004.103.904.042.423.444.746.455.551.772.04
80004.504.354.452.593.725.257.275.341.882.21
90004.574.294.392.623.735.157.146.022.042.40
10,0004.594.244.412.893.665.287.115.982.482.61
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10001222562237566676103115
20001922562237566676103115
300032615611321756667686115
4000123235306148271430625217120134
5000120229296141253408625428103134
6000122229296120226408625428103115
7000122232286148262408599408103134
8000135259316155280452677510120134
9000128244301148271430651510120134
10,000128229291134253452638510120134
Table 15. Time elapsed in minutes (top) and resources consumption (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations.
Table 15. Time elapsed in minutes (top) and resources consumption (bottom) when considering a pollution factor of 10%. Highlighted are the best (green) and worst (red) configurations.
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10001.291.140.921.450.610.770.860.941.031.28
20002.121.371.081.752.854.155.961.041.281.55
30002.351.523.641.923.034.356.078.631.531.65
40003.603.653.862.103.234.566.409.0012.0515.51
50003.693.663.912.003.244.656.628.9511.9816.83
60006.024.054.279.743.435.077.089.8813.0217.27
70006.254.184.5510.113.705.267.539.9813.5617.38
80006.504.334.5910.293.805.367.6210.0713.8117.65
900010.5411.794.8610.943.875.567.8510.7214.3817.90
10,00010.5111.724.7710.633.975.567.5810.4013.7018.00
Num. of connectionsSF = 2SF = 4SF = 6SF = 8SF = 10SF = 12SF = 14SF = 16SF = 18SF = 20
10003261561133756667686115
200065706113425339744476103134
30006773291141262408599659120134
4000125241301148271419625895881854
500011923229612726241963890110701304
600024025632189727145267799113441380
700024325633692528946371699113951606
800024625933193228946371699114121844
9000366892346988289474729105114631863
10,000354877326946289463690100613781863
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Kampourakis, V.; Makrakis, G.M.; Kolias, C. From Seek-and-Destroy to Split-and-Destroy: Connection Partitioning as an Effective Tool against Low-Rate DoS Attacks. Future Internet 2024, 16, 137. https://doi.org/10.3390/fi16040137

AMA Style

Kampourakis V, Makrakis GM, Kolias C. From Seek-and-Destroy to Split-and-Destroy: Connection Partitioning as an Effective Tool against Low-Rate DoS Attacks. Future Internet. 2024; 16(4):137. https://doi.org/10.3390/fi16040137

Chicago/Turabian Style

Kampourakis, Vyron, Georgios Michail Makrakis, and Constantinos Kolias. 2024. "From Seek-and-Destroy to Split-and-Destroy: Connection Partitioning as an Effective Tool against Low-Rate DoS Attacks" Future Internet 16, no. 4: 137. https://doi.org/10.3390/fi16040137

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop