Attack class
TCP SYN Flood
Last updated: August 2026 · The table, not the pipe · Reading time ~9 min

A SYN flood sends connection requests that are never completed, consuming the half-open connection table rather than bandwidth. It is the clearest example of an attack whose size in bits tells you almost nothing: a few hundred megabits of well-crafted SYNs can exhaust a device rated for tens of gigabits, because the resource under attack is table entries.

What it exhausts
Half-open connection slots. A server that receives a SYN allocates a record and waits for the third packet of the handshake; a flood of SYNs from addresses that never answer fills that table with records for connections that will never exist RFC 4987.
Nothing about this requires volume. This is the family that most reliably surprises people who sized their defence in gigabits, and it is why bandwidth alone is an incomplete specification RFC 4732.
How it differs from similar attacks
An ACK flood attacks the same class of device but by a different route: rather than creating state, it forces lookups for sessions that do not exist. A connection flood completes the handshake and then holds the connection open, which passes the proof a SYN defence demands. A volumetric UDP flood consumes bandwidth and leaves the connection table untouched.
The practical consequence is that the correct answer differs in each case, which is why the first five minutes of the incident runbook are spent identifying which resource is at its ceiling rather than reaching for a fix.
Observable telemetry
- SYN rate rising while handshake completion rate stays flat.
- Half-open connection count climbing toward its configured ceiling.
- Source addresses with no prior history and no return traffic.
- On Linux, the
TCPReqQFullDropand related counters moving, and SYN cookie counters engaging. - Established connection count not rising in proportion to SYNs — the giveaway.
Common false positives
A genuine traffic surge from a marketing campaign or a mobile app release produces a step change in SYN rate too. The distinguishing feature is that legitimate surges complete their handshakes. A defence tuned on SYN rate alone will block a successful launch; one tuned on completion ratio will not.
Retransmissions from a lossy path also inflate SYN counts without malice, which matters for services with substantial mobile traffic.
Mitigation by layer
Upstream — rarely necessary, because the volume is usually small. Where the flood is also volumetric, the upstream instruments apply as they would to any volume.
Network edge — a stateless device that validates the handshake before anything stateful sees it. This is the designed answer, described in SYN proxy and SYN cookies.
Host — SYN cookies as the fallback that engages when the flood reaches the server anyway, plus backlog and timeout tuning covered in the Linux server hardening guide.
Application — nothing to do here. The attack never becomes a request.
Operational pitfalls
Raising the backlog is not a fix. A larger table takes longer to fill and fills anyway, while consuming more memory. It buys minutes, which is worth having and is not a defence.
Blocking source addresses achieves little, because the sources are usually forged. This is the practical consequence of the ingress filtering gap rather than a property of the attack.
Cookies engaging silently. Most kernels enable them as a threshold-triggered fallback, so the first sign is a performance complaint rather than an alert. Monitor the counter.
Safe validation
Against your own infrastructure, with written authorisation, using a controlled generator, as the testing page sets out. What to measure: half-open occupancy on every stateful device in the path — not only the one under test — and connection success rate for legitimate clients throughout.
Sources
Frequently asked questions
- How much bandwidth does a SYN flood need?
- Very little, which is the whole point. A SYN packet is small, and the damage is done by the state the receiver allocates rather than by the bits that arrived. Sizing a defence against this class in gigabits is a category error — the number that matters is connection-establishment rate and table capacity.
- How do we tell a SYN flood from a traffic spike?
- By the completion ratio. A genuine spike shows SYNs and completed handshakes rising together; a flood shows SYN rate climbing while the completion rate stays flat or falls. Half-open table occupancy rising toward its ceiling while established connections stay normal is the same signal from the other side.
- Do SYN cookies solve it?
- They solve the table exhaustion and nothing else. The packets still arrive and still cost bandwidth and packet-processing budget, and connections established while cookies are engaged lose some TCP option fidelity. Cookies are a pressure valve, not a defence against the traffic itself.
- Why is the firewall the wrong place to absorb this?
- Because a stateful firewall holds an entry for every session it permits, so the resource under attack and the resource the defence runs on are the same. That is the structural argument for putting something stateless in front of it rather than a criticism of any particular firewall.
Sources
- RFC 4987 — TCP SYN Flooding Attacks and Common Mitigations
IETF · 2007-08 · standard · accessed 2026-08-15
The canonical treatment of the attack and of each countermeasure with its stated costs.
- RFC 4732 — Internet Denial-of-Service Considerations
IETF · 2006-11 · standard · accessed 2026-08-15
Published: August 2026 · Last reviewed: August 2026
Reviewed means the sources above were re-read on that date; the text is only reissued when something material changed.
This guide is updated as vendors release new models and pricing. How we compare vendors