无需登录 数据私有 本地保存

网络连接信息详情 - effectiveType与带宽估计

9
0
0
0

网络连接信息详情

effectiveType · 带宽估计 · 实时检测
实时监测中
有效网络类型
检测中...
effectiveType
估计往返时间
--
毫秒 (ms)
RTT
连接详细参数
连接类型 (type) 未知
下行速度 (downlink) -- Mbps
上行速度 (uplink) --
往返时间 (rtt) -- ms
最大下行 (downlinkMax) --
省流量模式 (saveData) 未知
网络质量评估
0%
--
等待检测...
--
主动延迟测试 (RTT)
通过多次请求测量实际往返延迟,与API估算值对比
点击按钮开始主动RTT测试
effectiveType 带宽估计参考表
各网络类型的典型参数与当前网络高亮对比
网络类型 典型下行 典型上行 典型RTT 视频推荐 图标
Slow 2G ~50 Kbps ~20 Kbps ~2000 ms 不支持
2G ~70 Kbps ~30 Kbps ~1400 ms 不支持
3G ~700 Kbps ~300 Kbps ~270 ms 360p
4G / LTE ~10 Mbps ~5 Mbps ~50 ms 1080p
5G ~100+ Mbps ~50+ Mbps ~10 ms 4K
网络优化建议
图片加载策略
检测中...
视频流媒体
检测中...
大文件下载
检测中...
网页体验
检测中...
常见问题 & 知识点
了解网络连接信息的方方面面

effectiveType 是 Network Information API 中的一个属性,表示浏览器对当前网络连接的有效类型估计。它不是真实的网络制式(如4G LTE),而是基于实际观测到的网络性能(RTT和下行速度)得出的综合判断。

可能的取值:

  • slow-2g:RTT ≥ 2000ms,下行 ≤ 50 Kbps — 极慢网络
  • 2g:RTT ≥ 1400ms,下行 ≤ 70 Kbps
  • 3g:RTT ≥ 270ms,下行 ≤ 700 Kbps
  • 4g:RTT < 270ms,下行 > 700 Kbps — 较快的宽带/4G
  • 5g:部分浏览器新增,表示极高速网络(RTT < 30ms,下行 > 10 Mbps)

浏览器通过观察近期HTTP请求的实际传输速率来估算 downlink 值。它会记录页面加载过程中各个资源(图片、脚本、样式等)的下载速度,并使用算法(通常是滑动窗口平均或指数加权移动平均)得出一个估计值,单位为 Mbps

这意味着:

  • 刚打开页面时,估算值可能不准确,随着更多请求完成会逐渐精确
  • 如果页面资源都很小,浏览器可能无法准确估计高速网络的上限
  • downlink 反映的是实际可用带宽,而非理论峰值

RTT(Round-Trip Time) 是数据包从发送端到接收端再返回的总耗时,以毫秒(ms)为单位。它对网络体验的影响:

  • < 30ms:极佳,适合实时应用(视频会议、在线游戏)
  • 30-100ms:良好,网页浏览流畅,视频会议基本无感
  • 100-300ms:一般,网页加载有可察觉延迟
  • 300-1000ms:较差,实时应用受影响明显
  • > 1000ms:极差,仅适合异步操作(如邮件)

高RTT会严重影响网页加载性能,因为每个资源请求都需要经过完整的往返。这也是为什么CDN和边缘计算能大幅提升体验——它们缩短了物理距离从而降低RTT。

Network Information API 的浏览器支持情况:

  • Chrome / Edge(桌面+移动):✅ 完全支持
  • Opera / Samsung Internet:✅ 支持
  • Firefox(桌面+移动):❌ 不支持 effectiveType/downlink/rtt 等属性
  • Safari(桌面+移动):❌ 不支持

在不支持的浏览器中,navigator.connection 可能只暴露基本的 type 属性或完全不可用。此工具会自动检测并提示。对于不支持的浏览器,建议使用主动测速来评估网络质量。

saveData 是浏览器(主要是Chrome移动版)提供的一个标志,当用户在设备设置中开启"省流量"或"数据节省"模式时为 true

作为开发者,可以这样利用:

  • 检测到 saveData 为 true 时,提供低分辨率图片懒加载
  • 推迟非关键的资源加载(如分析脚本、广告)
  • 使用更高效的图片格式(WebP/AVIF)
  • 减少不必要的API轮询和预加载

这是一种尊重用户意图的做法,能显著提升慢速/流量敏感用户的体验。

基于网络信息的自适应加载策略可以大幅提升用户体验:

  • effectiveType 为 slow-2g/2g:仅加载关键内容,使用系统字体,极简模式
  • effectiveType 为 3g:加载低分辨率图片,延迟加载非关键脚本
  • effectiveType 为 4g:正常加载所有资源,可使用高清图片
  • 监听 change 事件:当用户从WiFi切换到移动数据时,动态调整资源加载策略
  • 结合 saveData:双重判断更精准

示例代码:navigator.connection.addEventListener('change', updateStrategy);

网络制式理论下行峰值典型实际下行典型RTT
2G (GPRS)114 Kbps30-70 Kbps600-2000ms
2.5G (EDGE)384 Kbps100-200 Kbps300-800ms
3G (UMTS)2 Mbps300-700 Kbps100-400ms
3.5G (HSPA+)21 Mbps2-8 Mbps50-150ms
4G (LTE)150 Mbps10-50 Mbps20-80ms
4G+ (LTE-A)300 Mbps50-150 Mbps10-50ms
5G10 Gbps100-500 Mbps1-10ms

两者各有优劣,结合使用效果最佳

  • API估算值(navigator.connection):实时性好、无额外开销,但依赖浏览器实现,可能不够精确或滞后
  • 主动测速(fetch请求):更准确反映当前时刻的实际延迟,但消耗网络资源,结果受测试资源大小、服务器位置等因素影响

最佳实践:使用API作为初始判断依据,在必要时(如用户即将进行大文件下载)进行主动测速以获取更精确数据。同时监听change事件,在API估算值变化时及时更新策略。