Data 用于观察 Shadowrocket 记录到的连接流量,不等同于运营商账单或服务商余额。本文适合已经完成配置、需要定位流量去向的用户:先区分累计量与速率,再分别读取服务器和应用维度,最后用同一时间窗口检查清零、分流与数值差异。
Data 统计范围与单位
Shadowrocket(小火箭)的 Data 是本机流量观察入口。读数的前提是相关连接进入应用能够观察和统计的处理路径;它不是设备全部网络活动的总账。设备在连接关闭时产生的流量、其他设备的流量,以及服务商在远端采用不同规则计入的流量,不能直接从本机 Data 中还原。
先看单位再看数字。带有每秒含义的 KB/s、MB/s 表示速率,KB、MB、GB 表示累计数据量。一次网页加载完成后,速率可能很快回落,累计量却会保留;这是两类指标的正常区别,不代表记录相互矛盾。
Upload 与 Download 通常以本机方向理解:发送请求、上传文件属于发送方向,接收网页资源、下载文件属于接收方向。下载期间 Upload 仍可能增长,因为请求、确认与交互同样需要发送数据。不要把上传有读数直接判断为文件正在后台上传。
按服务器读取:判断流量经过哪个出口
按服务器查看时,重点是连接归属到哪个代理服务器,而不是哪个网站或哪个应用。先在 Home 确认当前选中的服务器及 Global Routing,再打开 Data 观察对应项目。服务器累计量适合回答“这段时间主要用了哪个出口”,不适合单独回答“哪个应用消耗最多”。
切换 Home 中选中的服务器,不代表原有连接已经全部迁移。已经建立的长连接可能继续使用原来的出口,新连接才依据当时的选择和规则处理。因此,切换之后短时间内看到旧项目继续增长,应先检查是否仍有视频、下载或长连接在运行。
| 观察现象 | 可以说明什么 | 下一步核对 |
|---|---|---|
| 某服务器累计量增长 | 该统计项目在观察窗口内记录到数据 | 核对 Home 当前选择与活动连接 |
| 切换后旧服务器仍增长 | 可能仍有使用旧出口的连接 | 停止原任务,再发起新的请求观察 |
| 网页可用但代理项目不增长 | 请求可能命中 DIRECT,或使用了缓存 | 检查 Global Routing 与连接记录 |
| 两个同名项目难以区分 | 名称不足以确认配置身份 | 核对服务器地址、端口和所属订阅 |
订阅更新后,显示名称、服务器地址或项目组织方式可能变化。对照旧记录时应同时保留这些信息,不能只凭一个相同名称认定是同一条记录。订阅从你的服务商处获取;更新订阅是更新配置来源,不等于重置本机统计,也不等于服务商重新计算用量。
按应用读取:判断可识别流量的来源
按应用查看,是把能够归属的流量按来源聚合;按服务器查看,则是按处理出口聚合。同一个应用可以访问多个域名,并根据规则同时产生 DIRECT 与代理连接;同一个代理服务器也可以承载多个应用的连接。这是两个维度,不是两份需要再次相加的独立用量。
在 iPhone 与 iPad 上,系统交给网络扩展的信息存在边界。应用名称能否显示、某条连接能否准确归属,会受到系统提供的信息、连接类型和当前统计视图影响。遇到不能归属或未单列的项目,不应自行把它认定成某个具体应用;当前界面没有提供的应用维度,也不能从服务器名称反推出。
- 先暂停视频播放、云端同步和其他明显的后台任务,记录 Data 当前读数与时间。
- 仅在一个应用内执行一个动作,例如打开一个尚未加载的网页,避免同时切换多个任务。
- 等待固定的 60 秒,再回到 Data 比较增量;同时检查服务器维度是否出现相应变化。
- 重复一次相同流程。如果页面已经缓存,第二次流量可能更少,应更换尚未加载的内容再验证。
结论:定位来源时用单应用增量,不把两个视图相加
先保留起始读数,再只运行一个任务;将应用维度用于找来源,将服务器维度用于找出口。两者交叉核对,比比较两个累计总数更容易定位问题。
Global Routing 与规则如何影响读数
Data 记录结果,路由设置决定连接如何处理。排查前走一次 Home → Global Routing:Proxy、Direct、Config、Scene 表示不同处理姿态,不能把这些选项理解成四个独立计数器。Proxy 按代理方式处理适用连接,Direct 按直连方式处理;Config 按当前配置规则分流,Scene 则需要结合当前场景设置核对实际处理方式。
在 Config 姿态下,一次页面访问可能同时请求主站、图片、视频和分析接口,这些域名不一定命中同一条规则。下面是用于解释匹配顺序的规则片段,不是完整配置,也不要求替换现有设置。其中 192.0.2.0/24 是文档示例地址段。
DOMAIN-SUFFIX,example.com,DIRECT
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
DOMAIN-SUFFIX匹配指定域名后缀,示例中的相关请求使用 DIRECT。IP-CIDR匹配地址段;no-resolve表示不为这一 IP 规则额外触发域名解析。GEOIP按 IP 地理数据库匹配,结果依赖所用数据库与实际目标地址。FINAL处理前面均未命中的连接,示例将这部分交给 PROXY。
因此,浏览器产生了流量,并不意味着某个代理服务器的读数一定同步增长。需要结合连接记录中的目标、命中规则和最终策略判断。若连接似乎自行恢复,还应查看 Settings → On Demand 的现有设置;按需连接可能改变统计期间的连接状态,但不会把 Data 变成运营商计费记录。
统计清零:先保存基线,再开始新窗口
清零会改变本机统计的比较起点。它与断开连接、切换服务器、更新订阅不是同一个动作,也不会重置服务商账户中的套餐用量。开始操作前,先记录当前界面显示的统计范围、总量和时间;若需要追查异常,保留清零前的信息比立即清零更有用。
- 打开 Data,确认当前查看的是服务器维度还是应用维度,并记录已有筛选或时间范围。
- 保存关键项目的读数与设备时间;将 Upload、Download 分开记下,不只记录合计。
- 使用当前 Data 界面实际提供的清除或重置操作,阅读确认提示。不同界面呈现可能不同,不把“清除连接记录”当作“重置累计流量”。
- 返回同一统计视图,确认受影响的是哪些项目。如果没有对应的重置入口,用起始读数相减也能建立观察窗口。
- 运行一个固定任务,60 秒后记录终值,以“终值减起始值”计算增量,并注明是否切换过网络或服务器。
例如,某项目 Download 起始为 120 MB,结束为 145 MB,本次窗口的显示增量就是 25 MB。这个算例只演示减法,不是实测结果。若期间发生清零,或者起止值分别来自不同筛选视图,直接相减就失去意义,应重新建立基线。
数值偏差与常见问题
本机 Data、系统蜂窝网络统计和服务商用量分别处于不同的观察位置。服务商可能按账户合并多台设备、采用不同结算时区、延迟刷新,或按其计费规则处理协议开销与流量倍率。系统蜂窝网络统计还可能包含连接关闭时的活动,而且不会把 Wi-Fi 流量算作蜂窝用量。比较前应先让设备、时间段、网络类型和计量单位保持一致。
为什么服务商显示的用量比 Data 大?
先核对服务商统计的起止时间、是否包含其他设备,以及是否存在流量倍率。然后用同一设备做一次固定窗口测试,等待远端数据刷新后再比较增量。客户端显示的字节数不能直接替代服务商计费规则。
没有打开应用,为什么读数还在增加?
先暂停后台同步与媒体播放,检查是否有未结束的下载或长连接,再核对 Home 的连接状态及 Settings → On Demand。屏幕上没有前台操作,不代表设备没有网络活动;仅凭累计数字无法确定具体来源。
明明一直浏览网页,某个服务器却显示不变?
先到 Home → Global Routing 核对姿态,再检查连接是否命中 DIRECT。若路由符合预期,换一个尚未缓存的页面进行测试,并回到相同统计视图观察。不要为了让数字增长而直接改动整份规则。
清零以后,能恢复之前的统计吗?
不要假定清零操作可以撤销。先检查当前界面是否仍保留其他时间范围;若没有保留,本机已清除的数据不能仅凭现有总量准确还原。需要长期对账时,在每次重置前保存读数和时间。
结论:先对齐时间窗口,再调查差额
如果差额持续存在,记录起止时间、网络类型、Global Routing 姿态、服务器身份及两端增量,再核对计费口径。不要通过切换协议或反复清零来代替这些基础记录。
Data 更适合发现趋势与缩小排查范围:哪个出口持续增长、单个任务产生多少增量、直连与代理是否符合规则预期。它不能单独证明某个应用的全部流量归属,也不能给出服务商剩余额度。完成上述核对后,再依据具体连接记录调整配置,可以避免因读错统计而修改本来正常的设置。