一句话答案:用宝塔拨测(t.bt.cn)的 TCP 方式测端口,结果里除了「通不通」,还有个关键指标「连接耗时」——它是一次 TCP 三次握手(SYN → SYN-ACK → ACK)的往返耗时,也就是「连接建立要多久」。它只反映网络层的往返延迟,不含 TLS 握手、不含服务器处理、不含内容传输,是判断「到服务器的网络远不远、快不快」最干净的一个数字。
连接耗时 = 三次握手一个往返的时间
TCP 拨测的目标格式是「域名:端口」。检测节点向目标端口发起连接,端口开放就完成三次握手并记下握手耗时;连不上就报连接失败。所以一次 TCP 拨测给你两层信息:
维度
| 看什么
| 回答的问题
| 通不通
| 端口是否开放、成功节点比例
| 端口有没有监听、防火墙有没有放行
| 连接耗时
| 三次握手的往返耗时
| 到服务器的网络延迟有多高
| 和 HTTP 拨测对比一下:HTTP 的总耗时里既有网络往返,也混进了服务器处理、TLS 握手、内容传输;而 TCP 的「连接耗时」只有网络往返这一段,拿它判断「服务器离我远不远」更纯粹。
实测:国内 CDN 站 vs 海外站,连接耗时差多少
2026-09-30(北京时间),我对两个目标各跑了一次 TCP 拨测(数值只代表本次采集时刻,连接耗时会随网络波动和节点调度变化):
指标
| www.bt.cn:443(国内 CDN)
| github.com:443(海外)
| 成功节点
| 367/367(100%)
| 334/367(91%)
| 连接耗时中位数
| 63.3ms
| 123.6ms
| 连接耗时 p95
| 495.5ms
| 1172.3ms
| 最快节点
| 深圳-联通 10.9ms
| 宿迁-电信 1.4ms
| 最慢节点
| 以色列 5152.6ms
| 吉安-移动 7433.3ms
| 两个目标都覆盖 60 个省份/地区(大陆 31 个、港澳台及海外 29 个)。最直观的差距:国内 CDN 站中位数 63.3ms,海外站 123.6ms,几乎翻倍;海外站还有 33 个节点失败(成功率 91%),国内站一个失败都没有。
为什么差距这么大:看服务器在哪、走哪条路由
连接耗时的长短,主要取决于检测节点到目标服务器所在地的物理距离。
www.bt.cn 解析到了广东广州的中国联通 CDN 边缘(本次 367 个节点的解析 IP 位置全部是广东/广州/中国联通),所以离广东越近、走联通的节点握手越快:
- 海外节点平均 486.3ms(最慢,物理距离最远)
github.com 的服务器在海外,解析 IP 位置分散在新加坡、美国、日本、韩国等多地(其中新加坡最多,292 个节点),方向就反过来了:
一句话:同一个端口,国内站快在「服务器在国内」、海外站慢在「服务器在海外」,跟端口本身没关系。
海外站的连接超时:33 个节点失败
github.com:443 这次有 33 个节点没完成拨测,全部报 TCP_CONNECT_FAILED,其中绝大多数错误是 dial tcp4 …:443: i/o timeout(连接超时),集中在移动、电信节点(如江苏无锡移动、浙江温州移动、广东惠州移动、安徽淮北移动等;个别节点如新疆乌鲁木齐电信报的是 IPv6 地址 cannot assign requested address)。
这说明这些检测节点到 GitHub 的跨境链路质量不稳定——不是 github.com 的 443 端口没开(否则 367 个节点应该全军覆没),而是「部分运营商的跨境路由到不了或超时」。对比 www.bt.cn:443 一次失败都没有,这就是「服务器在国内、走国内 CDN」和「服务器在海外、裸跨境访问」在端口层最直接的差别。
结果解读:按这个顺序看 TCP 拨测结果
- 先看成功率:大面积失败报连接超时,是链路问题;只有个别节点失败,多半是检测节点自身的解析异常。
- 再看连接耗时中位数:国内站几十毫秒、海外站上百毫秒是常态。国内站若普遍几百毫秒,先查服务器是不是在海外、有没有接国内 CDN。
- 最后看运营商/地区差异:哪个运营商或地区明显偏慢,往往就是它到服务器的路由有问题,可以针对性优化(比如为该地区加 CDN 边缘节点)。
端口层判断「通不通」用 TCP 拨测,判断「到服务器快不快」看「连接耗时」——两者合起来才是端口连通性的完整画像。
常见问题TCP 拨测结果里的「连接耗时」指的是什么?
它是检测节点和目标端口完成一次 TCP 三次握手(SYN → SYN-ACK → ACK)的往返耗时,也就是「连接建立要多久」。这个数字只反映网络层的往返延迟,不含 TLS 握手、服务器处理和内容传输,所以比 HTTP 总耗时更纯粹地反映到服务器的网络距离。
「连接耗时」和「通不通」有什么区别?
「通不通」看端口是否开放、连接能不能建立;「连接耗时」看连接建立得快不快。同一个端口可能通但很慢——耗时高说明检测节点到服务器物理距离远或链路质量差。两个维度叠加,才能完整判断端口层状况。
同一个端口,不同运营商的连接耗时为什么差很多?
因为连接耗时取决于检测节点到目标服务器所在地的物理距离和路由路径。文中实测 www.bt.cn:443 解析到广东广州的 CDN 边缘,近的联通节点平均只要 60.4ms,海外节点要 486.3ms;github.com 服务器在海外,海外节点平均仅 51.8ms,大陆电信、移动节点则要 398.3ms、483ms。
连接耗时多少算正常?
国内访问国内站点,通常在几十毫秒量级(文中 www.bt.cn:443 中位数 63.3ms);国内访问海外站点普遍上百毫秒(文中 github.com:443 中位数 123.6ms)。如果国内站点的连接耗时普遍超过几百毫秒,就要排查服务器是不是在海外、有没有接国内 CDN,或者运营商路由出了异常。
部分节点报连接超时(i/o timeout)是什么原因?说明这些检测节点在时限内没能和目标端口完成三次握手,常见原因是该节点到目标服务器的链路质量差、数据被中途丢弃。文中 github.com:443 有 33 个节点报 TCP_CONNECT_FAILED(i/o timeout),集中在移动、电信节点,指向部分运营商到 GitHub 的跨境链路不稳定。
有问题欢迎回帖。
|
|