公开方法
我们如何判定
全部在浏览器内运行。除非你按下 分享报告,数据不会离开设备。下方逻辑完整——没有隐藏。
为什么不一样
Speedtest 只测一个近处服务器。这次测试检查近处路径、远处路径和你用的应用,并显示哪些正常、哪些不行。
Speedtest
My ISP Sucks
一次测试覆盖
一个近处服务器
一次测试覆盖
近处路径、远处路径、你的应用
下载、上传、延迟
有
下载、上传、延迟
有
流媒体、游戏、云
根据数字估计
流媒体、游戏、云
直接检查这些服务
哪些正常、哪些不行
不显示
哪些正常、哪些不行
显示
责任在谁
不指出
责任在谁
Wi‑Fi、运营商或某个服务
可以发送
一个数字
可以发送
一段投诉
与 Ookla 或 Speedtest 没有关联。
开始这次测试1 · 我们测什么
四层,从设备向外:
本地网关 (preflight)
对最近 Cloudflare PoP 连续 10 次 HEAD(各 600 ms)。测丢包与抖动。≥2 次超时或 σ>30 ms → 路径不稳。
本国节点 (near)
按 IP 国家码匹配的本国 AWS S3。分数低 = 国内运营商或路由问题。
国际节点 (far)
全球 16 个 AWS S3 区域。near 正常而 far 差 = 国际出口问题。
画像服务 (profile)
对画像中的流媒体/游戏/云服务发 15–25 次 HEAD。发现 ping 看不到的对等与封锁。
2 · 节点健康分
每个节点 0(完美)到 1(损坏)。near 与 far 平均分开算。
score = 0.7 × (packetLoss / 100)
+ 0.3 × clamp((actualMs − expectedMs) / (expectedMs × 3), 0, 1)
expectedMs = max(10, distanceKm / 50) ← speed-of-light RTT baseline示例 — 特拉维夫 → 北弗吉尼亚(9 500 km)
expectedMs = max(10, 9 500 ÷ 50) = 190 ms
actualMs = 219 ms, packetLoss = 0 %
score = 0 + 0.3 × clamp((219 − 190) / (190 × 3), 0, 1) = 0.015 → 健康
nearScore < 0.25
Near:健康
farScore > 0.35
Far:触发规则 6
farScore > 0.45
Far:降级(5b)
3 · 服务离群
outlier if: status = "fail"
OR status = "slow" AND latencyMs ≥ cohortMedian × 2.5
slow = probe latency above 1 000 ms
ok under that line is not an outlier示例
Netflix 95 ms ✓ YouTube 88 ms ✓ Twitch 1 240 ms
cohortMedian = 88 ms → 1 240 ≥ 88 × 2.5 (220) → Twitch 为离群
4 · 规则链
先匹配先生效。结果页 DevTools → Console 可见每条规则。
离线
connectivity = fail, and no other check reached the internet
→ down / local_issue
本地路径不稳
Wi-Fi or cellular AND (preflight unstable OR jitter > 40 ms) AND farScore < 0.40
→ local_issue
DNS 故障
device is online AND dns = fail
→ isp_issue
特定服务离群
core healthy AND 1 ≤ outliers ≤ 40 % of services
→ service_issue
多数服务变差
core healthy AND badServiceFraction ≥ 50 %
→ isp_issue (peering)
国际流量受阻
preflight loss = 0 AND nearScore < 0.25 AND farScore > 0.45 AND ≥ 3 far nodes
→ isp_issue (gateway)
核心 / far 降级
any test = fail OR farScore > 0.35
→ isp_issue
轻度降级
any test = warn (no harder rule fired)
→ local_issue or isp_issue (medium)
一切正常
→ healthy
5 · 套餐兑现
ratio = measuredDown / promisedDown ≥ 0.80 → "As advertised" ✓ ≥ 0.50 → "Underdelivering" ~ < 0.50 → "Far below plan" ✗
只标注报告——不改变责任方判定。
6 · 隐私
探测均在浏览器内。除非按下 分享报告.
分享内容:判定、分数、运营商、国家、接入方式。 不存储 IP 地址。