绿茶VPN智能分流升级:24万条规则本地匹配,页面少发18个请求

2026年11月9日,绿茶VPN 在 5.8.0 桌面客户端与 3.6.2 移动客户端上完成 智能分流 规则库的重构:分流与广告拦截合并为一套本地规则库,总条数 24.4 万,其中分流规则 12.18 万条、拦截规则 12.22 万条。新版按“应用白名单—域名—IP 段—默认出口”四级顺序匹配,单次判定耗时中位数 0.7 毫秒,灰度抽样命中率 95.8%,页面平均少发 18 个请求。节点规模与套餐没有调整,仍是 68 个接入节点、41 个国家和地区、8 台设备同时在线。
过去用户能做的选择其实只有一个:挑一条线路,把整台设备塞进隧道。可真实流量是混在一起的——同一个浏览器里既打开公司审批系统,也打开海外文档站;同一个家庭网络里,孩子在开网课,电视在放 4K 片源。让所有流量共用一条出口,意味着出口再快也会互相挤压,用户只能靠反复切换节点来“手动分流”。
这次改动发生在“哪些流量走哪条线”这一层,不涉及节点扩容,也不需要重装客户端。5.8.0 启动后会自动拉取新规则,原有收藏、订阅与登录状态全部保留。对每天要切四五次线路的人来说,变化很直接:不用再切了。
手动切线的成本:2,600 名灰度用户的连接记录
为了确认问题规模,团队抽取了 2026 年 10 月 12 日至 10 月 26 日之间 2,600 个灰度账号的聚合连接记录,统计维度只有切换次数、连接结果与工单类型,不涉及访问的网址与页面内容。样本覆盖 Windows、macOS、Android 与 iOS 四个平台,办公时段在线的账号占 56%。
结果比预想集中:这批账号平均每天手动切换节点 4.3 次,64% 的切换发生在 20:00 至 23:00;切换后 90 秒内再次切换的比例为 26%,说明将近三成的切换并没有解决问题。另有 31% 的账号至少出现过一次内网 OA、ERP 或局域网打印机被送进隧道导致超时的情况,这类工单占线路类工单的 19%。
原因不在节点质量,而在规则粒度。旧版分流围绕“地区选择 + 全局开关”设计,规则只能表达“直连”或“代理”,无法描述“这个应用走香港、那个域名走东京、内网永远直连”。用户能操作的只有节点列表,于是把“选路”变成了“反复换点”。港区往返 28 毫秒的线路,一旦被办公网的限制拖住,体验照样像断网。
“用户不是想换节点,是想让不同的流量各走各的路。规则能表达清楚,手动切换自然会降下来;规则表达不了,加多少节点都会被来回切。”
—— 陈立航,绿茶VPN 网络架构负责人
为了让判断有对照,灰度前让 60 名用户提前使用新版规则一周。同一批人的日均手动切换从 4.6 次降到 1.3 次,连接失败率保持在 0.8% 没有上升,晚高峰延迟也没有因为“多了一次匹配”而变差,港区仍维持在 28 毫秒 左右。
规则库怎么组织:四级匹配、30 条自定义、6 小时下发
新版把匹配拆成四级,优先级从高到低为应用白名单、域名、IP 段、默认出口。应用规则排在最前,因为进程身份最明确,用户勾选“只让这个程序走加速”时不应该被域名规则覆盖;域名规则承担绝大多数网站;IP 段规则用于没有独立域名、或域名与解析地址不一致的服务;剩下的流量交给默认出口。
四级之外有两条硬约束。其一是上限:单个账号最多配置 30 条应用规则,每条规则最多包含 8 个域名,超出时客户端提示替换而不是静默丢弃。其二是固定优先:用户在节点面板把某个站点固定到指定地区后,这条规则优先于自动选线,直到用户手动取消。内网地址默认直连,10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 三个私网段不会进入隧道。
匹配分三步完成。第一步识别,客户端在本地读取进程签名与请求域名,不解析页面内容;第二步匹配,24.4 万条规则在内存中组织为后缀树与哈希表,单次查询中位数 0.7 毫秒;第三步交付,命中代理的流量交给现有隧道,命中直连的流量直接绕过虚拟网卡。三步都在本地完成,不产生额外往返,这也是判定开销能压到 1 毫秒以内的原因。

规则下发节奏也做了调整。规则库仍每周四发布一版,客户端改为每 6 小时检查一次差异包,只下载变化的条目,整包 1.9MB,差异包通常在 68KB 以内。5.8.0 支持热加载,新规则在 38 毫秒内替换完成,现有连接继续复用原隧道,不会因为升级规则而断开网页下载。
为防止“更新把网络改坏”,规则包使用 Ed25519 签名,客户端校验失败时自动回退上一版并在设置页提示;本地保留最近 3 个版本,用户可以在“规则版本”里手动回退。灰度期间触发过 2 次自动回退,均因差异包下载不完整,已建立的连接未受影响。
拦截规则与分流规则共用同一套匹配内核。12.22 万条拦截规则覆盖广告、统计脚本与追踪像素,页面加载平均少发 18 个请求,首屏时间因此缩短 0.42 秒。两类规则分开存储,用户可以在设置里单独关闭拦截,不影响分流判定;同理,关掉分流也不会让拦截失效。
灰度四批:命中率95.8%,误判0.6%
灰度从 10 月 30 日开始,按 5%、15%、40%、100% 四批放量,每批观察 24 小时,覆盖全部 68 个节点。是否继续放量看三项指标:分流命中率不低于 95%、误判率不高于 1%、客户端崩溃率不高于 0.1%。前三批均达标,第四批在 11 月 7 日完成全量。
| 指标 | 灰度结果 |
|---|---|
| 规则总数 | 24.4 万条(分流 12.18 万 / 拦截 12.22 万) |
| 分流命中率 | 95.8% |
| 误判率 | 0.6% |
| 单次判定耗时 | 中位 0.7 ms / P99 2.1 ms |
| 手动切换节点 | 4.3 → 1.2 次/日 |
| 内网误走代理工单 | 下降 87% |
| 页面请求数 | 平均少 18 个,首屏 -0.42 s |
| 规则包 / 差异包 | 1.9 MB / ≤68 KB |
| 热加载耗时 | 38 ms |
| 客户端资源开销 | CPU +0.5%,内存 +9 MB |
性能影响主要在匹配环节。单次查询 0.7 毫秒,港区端到端首包延迟变化在 ±1 毫秒以内,因此 28 毫秒的口径没有调整;客户端空闲态 CPU 占用增加 0.5 个百分点,内存增加 9MB,在 86MB 安装包的基础上属于可接受范围。中低端笔记本上的差异更明显:旧版逐条比对时单核占用峰值 9%,新版降到 4%。
0.6% 的误判并非均匀分布。复核样本显示,其中约 0.4 个百分点来自 CDN 域名共用 IP:同一个地址既承载海外站点,也承载国内镜像,按 IP 段匹配就会偏向代理;剩下 0.2 个百分点来自企业内网域名与外网同名,例如两家公司前缀相同。前者通过补充域名规则修正,后者交给用户用“强制直连”覆盖。
灰度中也出过一次问题。11 月 2 日,15% 批次的用户反馈某网盘客户端被误判为代理,上传速度掉到原来的三分之一。排查发现是该客户端更新后更换了进程签名,旧的应用规则没有命中,流量落到默认出口。团队在 2 小时内回滚这条应用规则、补录新签名后重新放量,期间没有要求用户手动处理。
“延迟好看不代表体验稳定。分流做错一次,用户感知到的是‘本地网站变慢’,而不是‘分流没命中’。所以我们把误判率卡在 1% 以内,再谈命中率。”
—— 周敏,绿茶VPN 测试工程师
本地判定:权限、签名与追溯链路
分流规则涉及“看哪些流量”,很容易让人担心隐私。新版延续了此前的边界:识别与匹配全部在客户端本地完成,域名、进程名与目标地址不会上传;服务端只接收规则版本号、命中次数总量与错误码三类信息,按天聚合,无法还原单个用户的访问路径。
权限上做了三层限制。系统级规则以只读方式随客户端下发,必须通过签名校验才能加载;用户自定义的白名单只在本机生效,不进入公共规则库;客户端申请管理员权限仅用于写入系统代理设置,不读取文件、不截取页面内容。企业环境可通过配置文件统一下发规则,但管理员同样看不到员工的访问记录。
连接记录的字段与保留期没有变化:只保存连接时间、出口节点编号、上下行流量总量与连接时长,默认保留 7 天后由清理任务删除,不保留冷备份,也不记录访问的网址、搜索词与文件内容。具体字段与删除流程写在 隐私政策 第三节,规则命中统计同样不包含域名。
追溯链路按“谁改、改了什么、影响多大”记录,规则变更留痕 90 天。每条变更包含提交人、规则编号、变更前后内容、灰度批次与回滚记录;用户侧可以在设置页看到本机最近 10 次规则更新的时间与版本号,导出的是命中次数汇总,不含具体域名。出现争议时,这份记录能说明某次误判是规则问题还是本地配置问题。
三类用户的落地效果
第一类是 10 至 20 人的跨境团队。一个 15 人的团队同时使用 OA、ERP、企业邮箱与三个海外文档站,过去把整台电脑挂进隧道,内网审批页面经常转圈。新版把 OA、ERP、打印机与内网域名设为直连,文档站与邮箱走港区线路,内网超时工单从每月 24 张降到 3 张,在线文档首屏从 1.8 秒降到 1.2 秒。
第二类是家庭多设备场景。一个订阅 8 台设备同时在线,路由器算 1 台,电视盒子走影音出口,孩子的平板上网课走东京,家长的笔记本按域名访问公司系统,三份规则互不覆盖。电视播放 4K 片源时起播缓冲 1.2 秒,与 带宽升级 时公布的口径一致,笔记本的会议没有因为电视在播片而抖屏。
第三类是会议与直播用户。远程桌面与视频会议对抖动敏感,新版把会议域名固定到港区直连出口,1080p 会议连续 120 分钟未出现花屏,语音抖动维持在 3 毫秒以内。开播前上传封面与推流地址走不同出口,避免大文件占满上行导致推流掉帧。
三类场景在灰度用户中的占比分别为 47%、33% 与 20%。团队没有把满意度做成单一分数,而是看两个行为指标:手动切换次数下降 72%,规则页的次周回访率趋于稳定。设备侧的配合也比预期简单,5.8.0 与 3.6.2 覆盖了绝大多数在用终端,见 多设备实测 中的清单。
限制也要说清楚。规则库未收录的域名仍走默认出口,需要手动固定;UDP 应用的识别依赖进程签名,部分游戏更新后会短暂失效;iOS 受系统网络扩展限制,只能按域名分流,无法像桌面端那样按进程指定。遇到这些情况,工单里附上域名、时间与客户端版本即可,团队按周复核。
上线节奏、5个问题与后续计划
新规则库从 11 月 9 日起全量下发,5.8.0 与 3.6.2 客户端在下次启动后的 6 小时内自动获取;11 月 16 日停止下发旧规则包,仍在使用 5.6 及更早版本的用户可以继续连接,但看不到规则版本与命中统计,升级包在 下载页 统一提供。路由器固件用户需要重新导出一次配置,新文件包含四级匹配所需的规则集。
升级后需要重新配置分流吗?
不需要。客户端启动后自动拉取新规则,原有的应用白名单与域名规则保留;只有 5.6 及更早版本需要先升级客户端,才能看到规则版本页与命中统计。升级不会重置节点收藏、订阅状态与登录态。
自定义规则最多能配多少?
单个账号 30 条应用规则,每条最多 8 个域名。达到上限后客户端提示替换,不会静默丢弃;删除不再使用的应用后名额立即释放。域名规则与 IP 段规则只支持选择“代理/直连”,不支持指定具体城市。
内网与打印机会不会被代理?
三个私网段默认直连,局域网打印机与 NAS 不会被送进隧道;内网域名若与外网同名,可在设置页对该域名选择“强制直连”。企业统一下发的配置文件优先级高于本机自定义,但同样受 30 条上限约束。
规则更新会断开连接吗?
不会。热加载在 38 毫秒内完成,已建立的隧道继续复用,只有新连接按新规则匹配。四批灰度期间没有记录到因规则更新导致的会话中断,回退也只影响后续新连接。
某些站点还是走错线路怎么办?
先在设置页查看该站点的命中记录,确认是被域名规则还是 IP 段规则命中;把站点固定到指定地区后,固定规则优先于自动选线。仍未解决时提交工单,附域名、时间与客户端版本,团队会在每周的规则复核中处理。
后续版本的规划已经排到明年一季度。计划在 v5.9.0 加入按时间段生效的策略,让工作时段与夜间使用不同出口;自定义规则支持文件导入,上限 200 条;命中情况做成可视化列表,方便判断是哪一条规则在起作用。IPv6 规则仍在评估,需要先解决地址段变化频繁带来的维护成本。
想现在就用上新版分流,可在客户端“设置—规则版本”点一次检查更新,或到 下载页 取用 5.8.0 安装包,Windows 版 86MB,安装后无需额外配置。协议侧的改动可以对照 协议升级 一文,节点清单与实测延迟则见 节点扩容 记录。
用户评论(6)
把 OA 和打印机设成直连之后,审批页面终于不转了,文档站还是走港区,两边互不影响。以前每天至少切三次线路。
家里电视看 4K、孩子上网课、我开会议同时来,三台设备各走各的,晚上没再互相拖速度。8 台设备的名额也够用。
老笔记本上的体感最明显,风扇没以前那么爱转了,任务管理器里 CPU 确实平稳不少。判定耗时这个数字能对上。
升级没让我重配,应用白名单都还在。有一条超了域名数量,按提示删掉一个就正常了。
有个跨境电商后台还是走错,固定到香港就正常。希望能把这类域名直接收进规则库,省得自己加。
广告拦截和分流分开开关这点好评,我只想拦广告不想动分流,设置里能找到独立开关。