AWS 为 Gateway Load Balancer 增加 TCP Reset:代理恢复链路应测试什么

AWS 于 2026 年 9 月 2 日宣布 Gateway Load Balancer 支持 TCP Reset。当后端目标被判定为不健康、完成注销,或空闲流在超时后再次收到数据包时,GWLB 可以主动返回 TCP 重置。这样,发送端无需继续等待 TCP 重传耗尽,而能明确知道旧连接已经结束,并新建连接。
对于把合规数据采集、区域验证或代理浏览器流量放在防火墙与检测设备之后的团队,这并不只是一个负载均衡选项。客户端看到的故障信号发生了变化,因此恢复逻辑、会话状态和监控都需要在上线前重新验证。
AWS 改变了什么
GWLB 会把网络流分发给防火墙、入侵检测和深度包检测等虚拟设备。AWS 说明,原有的 fail-open 行为可能继续把既有流量送向已经不健康的设备,客户端只能等待 TCP 重试与指数退避,持续几十秒甚至数分钟。
启用 TCP Reset 后,GWLB 会删除受影响的流表项,并在该流再次有数据包时返回 RST。应用随后创建的新连接会形成新流,并可被分配到健康设备。
AWS 列出了三类独立触发条件:
| 触发条件 | 发送重置的时点 | 配置范围 |
|---|---|---|
| 目标不健康 | 健康检查达到失败阈值后 | 目标组 |
| 目标注销 | 连接排空时间结束后 | 目标组 |
| 空闲流收到非 SYN 数据包 | TCP 空闲超时后 | 监听器 |
该功能默认关闭,并要求使用五元组流粘性。如果同时启用 Flow Rebalance,则后者优先。
更快的故障信号不等于立即恢复
RST 消除了一部分等待,但完整恢复仍包含多个时钟:
- 故障检测时间:健康检查间隔、失败阈值和处理时间;
- 重置送达时间:目标变为不健康后,到相关数据包收到 RST;
- 客户端反应时间:识别错误、执行退避并创建新连接;
- 路由恢复时间:新流通过健康设备与获准代理路径;
- 业务恢复时间:首个结果通过内容、位置、会话与合规校验。
AWS 提醒,默认健康检查仍可能带来数分钟的检测窗口。更激进的检查可以缩短时间,但也会增加误判。团队应依据自己的配置测量完整链路,而不是笼统宣称“数秒恢复”。
代理应用需要补做的测试
单独记录 RST
把 TCP 重置作为独立传输结果,不要与连接超时、TLS 错误、认证失败、HTTP 拒绝或内容无效合并。它们对应的安全处理方式不同。
限制重试规模
RST 可能触发立即重连,大量工作进程容易同时重试。应加入抖动、最大尝试次数、任务总时限与断路器,并持续计算“总尝试次数除以原始任务数”的重试放大倍数。
重新验证替代路径
新连接仍必须使用预期网关、协议、地址族和区域,并禁止直连回退。对于粘性任务,要预先定义出口改变是否会让业务会话失效。
保护结果不确定的操作
RST 只能证明连接已结束,不能证明此前的写操作没有生效。优先使用幂等键、检查点与结果对账;状态未知时先隔离,而不是自动重放。
同时监控基础设施与业务结果
AWS 增加了 TCP_ELB_Reset_Count 指标。应将它与目标健康变化、代理连接结果、首次成功率、有效内容率、会话丢失和业务恢复时间一起观察。只有重置计数,没有有效结果,不能证明恢复成功。
可控验证流程
仅在自有或明确授权的测试环境中执行。
- 用一个健康设备和低固定负载建立基线。
- 核对五元组粘性、空闲超时与健康检查配置。
- 以可逆方式让一台测试设备离线或失败。
- 分别记录故障注入、健康状态变化、RST、新连接与首个有效结果的时间。
- 确认没有请求绕过代理而直连。
- 核对粘性会话、Cookie 与进行中操作是否正确。
- 将总尝试次数、p95 延迟和单个有效结果成本与基线比较。
- 分别测试目标注销与空闲超时,不要把它们视为与健康失败完全相同。
- 恢复设备后确认没有路由抖动。
- 记录上线门槛和回滚门槛。
发布检查清单
- [ ] 仅在预期目标组和监听器上启用 TCP Reset。
- [ ] 五元组粘性已经验证。
- [ ] 已理解 Flow Rebalance 的优先关系。
- [ ] 健康检查速度满足恢复目标且误判可接受。
- [ ] 客户端能单独识别 RST,不会形成同步重试风暴。
- [ ] 已禁止直连回退。
- [ ] 替代路径保持所需区域、协议与地址族。
- [ ] 不确定写操作具备幂等或隔离机制。
- [ ] 基础设施和业务恢复指标均可见。
- [ ] 非生产故障演练通过后再上线。
常见问题
TCP Reset 会把旧流迁移到另一台设备吗?
不会。它终止受影响的流,应用必须新建连接,新流才会被分配给健康目标。
可以取消应用超时吗?
不可以。AWS 建议保留应用层超时。RST 是额外信号,不能替代任务总时限和有界重试。
它能解决所有代理超时吗?
不能。它只覆盖特定 GWLB 流场景。代理认证、上游拥塞、目标限流、DNS、TLS 和内容验证仍是独立故障层。
最重要的验收指标是什么?
测量“首个有效业务结果”的恢复时间,而不只是新连接建立时间,并同时验证会话、路由合规与重复操作保护。
可结合 98IP 的代理故障转移演练、代理超时预算和重试放大控制继续完善客户端方案。
合规说明
只测试自有或明确获准的系统、账号与流量路径。遵守目标网站条款、robots 指令、速率限制、隐私义务和适用法律。不得用重置、重试或切换路由覆盖访问决定,日志中不得保留代理密码、Cookie 或令牌。
来源说明:Amazon Web Services,《Reduce Traffic Interruptions with Gateway Load Balancer TCP Reset》,发布于 2026 年 9 月 2 日。