DDoS mitigation
Volumetric, protocol and application-layer floods: how reflection amplifies an attack, why anycast edges absorb it, and how to keep a request flood away from the origin.
25 min6 steps
By the end you can
- Classify an attack as volumetric, protocol or application layer and match it to a defence
- Estimate the bandwidth of a reflection and amplification attack
- Explain how anycast and edge capacity absorb volumetric attacks, and estimate per-location load
- Mitigate application-layer floods with edge caching, rate limits, challenges and a hidden origin
Three kinds of flood
A DDoS exhausts one resource from many sources. The resource picks the defence.
Volumetric
- Fills links (Gbit/s)
- Often UDP reflection
- Only a bigger network absorbs it
Protocol
- Fills connection state (packets/s)
- SYN flood
Application
- Valid but costly requests (req/s)
- Looks like users
Reflection multiplies the attack
Reflection: bots send small UDP queries with the victim's address forged. Open servers reply to the victim with far larger responses. The root fix is upstream: BCP 38 ingress filtering, and servers that do not answer large UDP to the internet.
- DNS (28 to 54×)54 ×
- NTP monlist (500×+)500 ×
- memcached 2018 (10,000s ×)10,000 ×
Log scale: each gridline step is 10×.
Loading question…
Absorb it at the edge
Anycast announces one IP from many edge sites, so a global botnet's traffic splits across them. Each site drops attack traffic and forwards only clean traffic. Plan for the worst site: botnets cluster.
Loading question…
SYN floods and connection state
A SYN flood fills the half-open table with spoofed SYNs. SYN cookies (RFC 4987) encode state in the sequence number and store nothing until the real ACK returns.
Application-layer floods
Application floods look like users, so combine weak signals. HTTP/2 Rapid Reset (CVE-2023-44487, 2023) shows protocol features become attack surface.
Check your mastery
Score 80% or more.
Mastery check
4 questions on fresh variants. One attempt each, no time limit. Score 80% or more to master the lesson.
In the sandbox, open Scale and run a breaking-point sweep: the first rung's load multiple is your application-layer margin. Next: abuse prevention.
Answer this step to continue.