Configuring Tiered Protection with MITIGATOR
The most effective approach to DDoS protection is a tiered defense architecture, in which surgical filtering of traffic entering the protected network is performed by an on-premise device at the network border, while mitigation mechanisms at the upstream telecom operator level prevent the channel from being saturated.
Always on protection at the upstream telecom operator side can cause problems and negatively affect legitimate traffic, so it should be activated only when necessary. For this scenario it is needed to configure interaction between the defense layers - cloud protection.
Let’s consider the case when both the operator and its client use MITIGATOR for traffic cleaning. For convenience, we introduce the following terms:
- MITIGATOR CPE — MITIGATOR, installed at the client’s network border.
- MITIGATOR ISP — MITIGATOR, installed at the upstream telecom operator.
When an attack is detected, MITIGATOR CPE starts traffic cleaning itself. If the attack’s volume is close to the available channel bandwidth, MITIGATOR CPE sends a BGP announcement to MITIGATOR ISP. The announcement contains the prefixes traffic to which MITIGATOR ISP should clean. Upon receiving the prefixes, MITIGATOR ISP starts sending BGP announcements to its neighbours, informing them that traffic to these prefixes should be sent to MITIGATOR ISP for cleaning. After the attack is over, the announcements are withdrawn, and the traffic continues to move along its original route. It is advisable to configure BGP interaction between MITIGATOR CPE and MITIGATOR ISP through an alternate channel, since if common channel is saturated, the signal may not be sent.
A detailed look at the configuration of such interaction between MITIGATOR CPE and MITIGATOR ISP is below.
Configuring MITIGATOR CPE
Configuring BGP Interaction
-
MITIGATOR CPE needs to have permission to establish BGP connections.
-
Create a BGP neighbour MITIGATOR ISP.
2.1. In the BGP neighbour settings specify the network parameters of MITIGATOR ISP, such as IP address and AS number. The rest of parameters is optional and configured as needed. It is recommended to specify high TTL value for IP packets, since MITIGATOR ISP may be located far away.
2.2. Specify one of the system
.signaling.lists in the announcement policy for this BGP neighbour. Signaling lists can be populated according to different criteria, list selection depends on the scenario. As an example we usesystem.policy.signaling.prefixeslist. Special nexthop and community are defined as needed, according to the requirements of MITIGATOR ISP.
Configuring Protection Policies
-
Set autodetection thresholds for the announcement exchange control.
1.1. Set
Policy.BGP.Signaling.Input{Pps,Bps}.Onthresholds at “Autodetection” tab of MITIGATOR CPE protection policy. When the traffic exceeds these thresholds, the destination prefixes from the protection policy routing rules will be added tosystem.policy.signaling.prefixeslist.1.2. Set
Policy.BGP.Signaling.Input{Pps,Bps}.Offthresholds at “Autodetection” tab of MITIGATOR CPE protection policy.When the traffic drops below these thresholds, the destination prefixes from the protection policy routing rules will be removedsystem.policy.signaling.prefixeslist. -
If necessary, take action to reduce flapping. After completing the described steps, MITIGATOR CPE is ready to interact with MITIGATOR ISP.
Configuring MITIGATOR ISP
Configuring BGP Interaction
-
Give MITIGATOR ISP permission to establish BGP connections.
-
Create BGP neighbour MITIGATOR CPE. Specify the network parameters of MITIGATOR CPE, such as IP address and AS number. Activate the checkbox “Get prefixes under protection”, if necessary, specify maximum number of prefixes that MITIGATOR CPE can send. The rest of parameters is optional and configured as needed. It is recommended to specify high TTL value for IP packets, since MITIGATOR CPE may be located far away.
-
Create BGP neighbours that MITIGATOR ISP will send BGP announcements for traffic redirection.
3.1. Specify the network device parameters in the BGP neighbour settings.
3.2. Specify one of the system
.protected.lists in the announcement policy for these BGP neighbours. This list will be automatically populated with prefixes announced by MITIGATOR CPE. Lists for prefix protection are selected according to the scenario. As an example we usesystem.protected.prefixeslist. Special nexthop and community are defined as needed.3.3. To prevent flapping specify
system.policy.prefixes.list in the announcement policy for these BGP neighbours.
Configuring Protection Policies
-
There is no need to set the thresholds for
system.protected.prefixeslist announcement control in the policies responsible for MITIGATOR CPE traffic. It will be automatically announced to all BGP neighbours for which it was added to the announcement policy, while BGP announcement is active and the list is not empty. -
Specify autodetection thresholds to prevent flapping.
2.1. Set
Policy.BGP.Input{Pps,Bps}.Onthresholds at “Autodetection” tab of the policy responsible for MITIGATOR CPE traffic. When the traffic exceeds these thresholds, the destination prefixes from the protection policy routing rules will be added tosystem.policy.prefixeslist.2.2. Set
Policy.BGP.Input{Pps,Bps}.Offthresholds at “Autodetection” tab of the policy responsible for MITIGATOR CPE traffic. When the traffic drops below these thresholds, the destination prefixes from the protection policy routing rules will be removed fromsystem.policy.prefixeslist.
After completing these steps MITIGATOR ISP is ready to interact with MITIGATOR CPE.
Flapping
When incoming traffic on MITIGATOR CPE approaches the bandwidth, a BGP announcement towards MITIGATOR ISP is created. Upon receiving the announcement, MITIGATOR ISP reroutes the traffic to itself. As a result, the traffic rate on MITIGATOR CPE may drop below the threshold, and the BGP announcement towards MITIGATOR ISP is automatically removed. MITIGATOR ISP will detect that the announcement is removed, and stop routing the traffic to itself. The traffic will again start flowing to MITIGATOR CPE, will exceed the threshold again and so on. This process is called flapping. There are several mechanics created to reduce flapping effect on the protection efficiency in MITIGATOR.
Recommendations for Reducing Flapping on MITIGATOR CPE Side
One can increase the “Number of analysed intervals” at “Autodetection” tab of the MITIGATOR CPE protection policy. This will not completely exclude flapping, but its frequency will be reduced due to longer time waiting between the traffic rate reduction below the autodetection threshold and the BGP announcement removal. The number of analysed intervals is chosen empirically for a specific MITIGATOR CPE-MITIGATOR ISP pair and depends on the average duration of observed attacks.
Recommendations to Reduce Flapping on MITIGATOR ISP Side
When BGP announcement with prefixes, traffic to which must needs protection,
is received from MITIGATOR CPE, these prefixes are automatically added to the
system.protected.prefixes list. MITIGATOR ISP sends this list to BGP neighbours
informing that the traffic of these prefixes must be routed to it. Thus traffic
is routed to MITIGATOR ISP policies responsible for MITIGATOR CPE protection and
the traffic is recorded to the counters of these policies.
To avoid flapping, MITIGATOR can keep the traffic on itself. To enable this logic in
the policies responsible for MITIGATOR CPE protection:
-
Specify autodetection thresholds
Policy.BGP.Input{Pps,Bps}.{On,Off}. -
In the BGP announcement policy of BGP neighbours, besides
system.protected.prefixes, additionally specifysystem.policy.prefixes.
In this case the attacked prefixes will continue to be announced to BGP neighbours,
even when MITIGATOR CPE stops announcing, until the traffic on MITIGATOR ISP drops below
Policy.BGP.Input{Pps,Bps}.Off threshold.
To remove traffic from MITIGATOR ISP protection manually, the client must log in to MITIGATOR ISP Web interface and turn off BGP announcement in the policies responsible for the client’s service protection.
It must be noted that MTITIGATOR CPE often BGP announces /32 prefixes, while MITIGATOR ISP
announces prefixes of larger subnets, for example /24. Thus, autodetection thresholds
Policy.BGP.Signaling.Input{Pps,Bps}.{On,Off} on MITIGATOR CPE and autodetection thresholds
Policy.BGP.Input{Pps,Bps}.{On,Off} on MITIGATOR ISP should have comparable values. In
the opposite case, if the attack is not performed on the whole subnet, but only on a specific
IP-address, the thresholds may be exceeded on MITIGATOR CPE, but not on MITIGATOR ISP and
flapping still occurs.
Related Content
- BGP Interaction
- BGP Signaling
- Managing BGP Announcements When the External Router is Inactive
- Access to the Grafana Interface
- Configuration Change
- Core Isolation for Performance Optimization
- Graphite on a Separate Server
- Incident Chart Update Period
- Packet Processor Settings
- Pgfailover Documentation