The Linux network stack extension for DDoS mitigation and web security
summary
An open source, in-kernel HTTP accelerator-plus-firewall called Tempesta FW kernel module implements HTTPtables (nftables-aware rules), JavaScript and cookie challenges, rate limits and SIMD/AVX2 HTTP string engines; benchmarks show ~1.8M req/s on cheap hardware, ~3× faster than nginx and up to 3–6× in long-header corners. A kernel TLS stack TempestaTLS fork of mbedTLS uses memory pools, skb fragment zero-copy and optimized handshake state to reduce copies and beat userland OpenSSL handshakes in DDoS-like workloads.
AI-written summary · about
chapters (32)
- 0:00Start
- 1:18Problem: HTTP filtration
- 3:11Web Application Firewall (WAF) acceleration
- 6:12Other DDoS filters: firewall & NIDS
- 8:51The problem in general: flat profile
- 9:55System calls: one HTTP request (KPTI: each syscall = 2 L1 caches invalidations)
- 10:42Naive HTTP parser
- 11:58Why HTTP strings matter?
- 13:50HTTP strings are special
- 15:12Fast & secure HTTP parser SCALE 17x: http-string-processing-algorithms
- 16:05Even flexible: custom allowed alphabets ⚫ Custom BM tables to filter injection attacks
- 17:05Slow network async I/O
- 18:12Slow network I/O: proxying
- 19:03Synchronous sockets: HTTPS/TCP/IP stack
- 20:03skb page allocator: zero-copy HTTP messages adjustment Add/remove/update HTTP headers w/o copies
- 21:29Slow TLS: copying
- 22:59Slow TLS: Linux kernel TLS & DDoS
- 24:29Slow TLS: libraries' performance issues
- 26:275 . Slow TLS: record size & TCP
- 27:325 . Slow TLS: TCP & dynamic record size
- 28:25Tempesta TLS: memory pools & profiles
- 29:30Slow web cache: filesystem database
- 30:20Web cache: TempestaDB
- 30:50The HTTPS/TCP/IP stack (Interbreed an HTTP accelerator and a firewall)
- 31:38DDoS mitigation: sticky cookie
- 32:36DDoS mitigation: JavaScript challenge
- 34:38DDoS mitigation: limits
- 35:21Web Application Security (WAF acceleration)
- 36:22HTTP tables ►HTTP load balancer and a firewall (-nftables)
- 37:55Performance comparison w/ Nginx
- 38:31Performance analysis: kernel bypass
- 40:10An HTTP proxy in kernel?
related talks
40mTempesta FW: FrameWork and FireWall for WAF and DDoS mitigation
40mTempesta FW: FrameWork and FireWall for WAF and DDoS Mitigation
43mMathematics and development of fast TLS handshakes
30mMathematics and development of fast TLS handshakes
53mTempesta FW challenges, internals, use cases
46mLinux kernel TLS and HTTPS
30mLessons From Defending The Indefensible
42mAccelerating Envoy with the Linux Kernel
