限流不是一个固定的 QPS 数字。攻击可能耗尽带宽、连接表、TLS CPU 或昂贵业务查询,不同资源必须在最靠前且最便宜的位置保护。
先识别瓶颈类型
对比入口带宽、包速率、SYN backlog、并发连接、TLS 握手、请求路由和下游调用。来源 IP 很分散时,单 IP 限流不足以保护总体容量。
ss -s
nstat -az | grep -Ei 'Listen|Syncookies|Retrans'
sar -n DEV 1
分层控制
- 云清洗和 CDN 处理大带宽流量
- 负载均衡器限制连接与握手速率
- API 网关按租户、令牌和路由分配配额
- 应用对高成本操作设置并发舱壁和超时
令牌桶允许短突发并限制长期平均速率。返回 429 时提供 Retry-After,但对明显恶意流量应尽早丢弃,避免生成昂贵响应。
避免误伤
按真实代理链解析来源地址,防止攻击者伪造头。策略先观察命中分布,再逐步执行,并为支付、登录等关键路径设置独立阈值。
收尾清单
演练防护供应商、边缘和源站的联动流程。攻击结束后复核成本、误拦截、规则传播时间和扩容上限,更新容量模型与联系人。