为什么设备流量统计与服务面板可能不同?
解释本地代理客户端(如Clash/v2rayN)显示的消耗流量与JMS服务端控制台面板统计存在微小差异的原因。
核心摘要
很多用户在使用 JMS 时会注意到一个现象:自己在手机或电脑客户端(如 Clash、v2rayN)看到的已用流量是 10GB,但登录 Just My Socks 后台控制台查看已用流量却是 10.4GB,两者存在大约 3%~5% 的微小偏差。本文将解析造成这种数据差异的技术原因。
产生统计差异的 4 大技术原因
1. 协议封装与加密开销 (Header Overhead)
- 本地客户端统计的往往是原始应用层数据(例如下载一个 1GB 文件的实际大小)。
- 数据经过代理发送时,需要添加 TLS 握手、VMess/VESS 加密头部以及 TCP/IP 报头包。这些额外添加到每个数据包上的字节属于传输开销,服务端网卡在统计流量时会一并计入。
2. 重传数据包与网络丢包 (Retransmission)
- 当网络线路发生丢包时,TCP 协议会触发重传机制。
- 服务端已经向客户端发送了该数据包,但中途丢失,服务端网卡已记录该流量;随后服务端重新补发该包,又记录了一次流量。
3. 本地分流规则中直连流量的排除
- 客户端在「规则模式」运行时,访问国内网站(如 Bilibili 视频)的流量直接通过本地宽带发出,不经过 JMS 节点,客户端不会将其计入代理流量。
4. 统计刷新周期延时
- JMS 控制台面板的数据每隔若干分钟由网卡 Daemon 脚本汇总写入数据库一次,并非毫秒级实时变动,因此存在一定的时间差。
结论与建议
[!IMPORTANT] 计费标准说明:所有 JMS 套餐的流量扣除均以 JMS 官方控制台后台的数据 为唯一结算标准。如果出现较大数倍的异常差异(如本地只用了 1GB,后台显示用了 100GB),请检查订阅链接是否被泄漏给第三方。