Over the last few months we have spent a lot of time on running a DDoS tabletop exercise with your team. This is what we learned.
Latency budget
Our budget for the whole filtering pipeline is one millisecond at the 99th percentile. Anything that cannot be decided within that budget runs asynchronously and influences the next request from the same client, not the current one.
That constraint shapes everything: data structures, where state lives and which signals we are willing to compute inline.
What we got wrong
Our first version challenged too eagerly on mobile networks, where thousands of real users share a handful of carrier-grade NAT addresses. Reputation that is shared is reputation that is noisy.
We now weight fingerprint consistency and session behaviour far more heavily than IP reputation for traffic from known mobile carrier ranges.
The economics behind it
A booter service rents out a 100 Gbps attack for less than the price of a pizza. Defending against it with bandwidth alone is a race you lose. Defending against it by making each malicious request cost more than it earns is a race you win.
This is the entire idea behind never metering attack traffic: our costs scale with filtering, not with your invoice.
Measuring success
We track three numbers for every incident: time to mitigation, the share of attack traffic that reached the origin, and the share of legitimate traffic that was challenged. The first should be under a second, the second under 0.1% and the third under 1%.
Those numbers go into every incident report, and they are the same numbers we are measured against in our SLA.
As always, questions and corrections are welcome at [email protected].
Is the risk score exposed in the logs so we can build our own dashboards on it?
The point about origin IPs leaking through certificate transparency logs is underrated.
Great to hear, thanks for sharing your experience.
Our auditors asked for exactly this kind of incident evidence under DORA.
Thanks — sharing this with our on-call team.
Verified good bots and allow-listed partners bypass challenges entirely.
The point about origin IPs leaking through certificate transparency logs is underrated.
Great write-up. We saw almost the same pattern on our login endpoint last month.
Any plans to support per-tenant limits keyed on a JWT claim?