为什么很多人觉得“明明测速几百兆,开个 Google 却要卡三秒”?
在技术咨询中,最常见的抱怨莫过于:“我买的节点用 Speedtest 能跑到 300Mbps,为什么开网页还是转圈?”
答案是:**测速软件跑的是长连接大并发下的「持续吞吐量(Throughput)」,而日常浏览网页依赖的是成百上千次微小请求的「连接建立时延(Handshake Latency)与失败重试」**。
---
1. 日常网页加载背后的真实世界
打开一个现代前端网页,浏览器通常需要发起 60 到 150 个子请求:HTML、CSS、字体、多个 JS chunk、API 接口和数十张图片。
- 如果线路**丢包率达到 5%**:
- 这 5% 的丢包对传输几十兆大视频影响有限(TCP 窗口会自动滑移并补发)。
- 但如果刚好丢掉了某个关键 JS 脚本的 TCP SYN 握手包或 TLS Client Hello,浏览器就要等待 **1 秒至 3 秒** 的超时重传定时器。在这 3 秒内,页面整体渲染被完全阻塞,你感受到的就是“死死卡住转圈”。---
2. 吞吐量(Throughput)受什么制约?
- 节点出口带宽与服务商网卡配置。 - 单连接 TCP 拥塞控制算法(BBR / CUBIC)。 - 本地 Wi-Fi 频段与设备软解性能。 - 只要持续下载一个 100MB 文件,TCP 窗口跑起来之后,即使有 2% 的轻微抖动,也能跑出很高的速率。---
3. 连接建立与 HTTP 失败率受什么制约?
- 本地到代理入口的物理往返延迟(RTT)。 - 节点入口与出口服务器的 CPU 负载及系统文件描述符(FD)占用。 - 代理客户端本身的路由分流计算耗时。 - 域名 DNS 查询(本地解析还是远端解析)。---