文档中心
XConnect Free 节点大文件上传实测与优化验收
对三个 Free Selfhost PROD 节点执行真实文件上传,验证当前 policy.levels.0.connIdle=3600 配置下的传输正确性,并记录完整链路耗时、吞吐和失败阶段。所有 payload 均为随机合�...
Free Proxy 大文件上传配置验收 case(2026-10-18)
目的与验收范围
对三个 Free Selfhost PROD 节点执行真实文件上传,验证当前 policy.levels.0.connIdle=3600 配置下的传输正确性,并记录完整链路耗时、吞吐和失败阶段。所有 payload 均为随机合成二进制内容,不包含业务文件。
本 case 验证 VLESS/XHTTP 到受控 HTTPS 接收端的链路,不代表 ChatGPT 应用端上传或某个客户端 App 的验收;没有更改配置前后的配对试验,不能据此量化 connIdle 调整带来的收益。
三台节点已通过 SSH + Playbook 对齐 connIdle=3600,模板与运行配置均核验一致。远程 Linux 完整矩阵为 58/60(96.67%):auto 为 30/30;packet-up 为 28/30,失败在 US 32 MB 与 JP 512 MB。简要结论:**auto 模式 32 MB 以内在该 Linux 测试链路中全部通过;大文件不承诺必然成功。**另行完成的 MacOS 本机矩阵为 27/60,说明该结论不能跨客户端和网络路径泛化。
固定矩阵
- 文件阶梯:1、2、4、8、16、32、64、128、256、512 MB;
1 MB = 1,000,000 bytes。 - 代理模式:
auto、packet-up;每个节点、模式、文件大小各执行一次,共 60 项。同一客户端两种模式复用同一批文件与 hash。 - 三条节点链路同时执行,各链路内按文件大小递增;不重试。
- 单项总超时 900 秒;连续 60 秒速率低于 8192 bytes/s 时终止该项;完整执行所有阶梯,逐项记录失败,不自动重跑。
- 全部执行的合成上传量为 6,138 MB。吞吐受跨区域链路和并发负载影响,不作为单节点带宽上限。
| 被测代理 | 客户端主机 | HTTPS 接收主机 |
|---|---|---|
jp-free-selfhost-prod-v2.svc.plus |
us-free-selfhost-prod-v2.svc.plus |
sg-free-selfhost-prod-v2.svc.plus |
sg-free-selfhost-prod-v2.svc.plus |
jp-free-selfhost-prod-v2.svc.plus |
us-free-selfhost-prod-v2.svc.plus |
us-free-selfhost-prod-v2.svc.plus |
sg-free-selfhost-prod-v2.svc.plus |
jp-free-selfhost-prod-v2.svc.plus |
每条真实路径:客户端 curl → 本机临时 SOCKS5 → 临时 Xray 客户端 → 被测节点 HTTPS/XHTTP /split → 被测 Xray VLESS → 另一节点公网 HTTPS 接收路径 → Caddy → 仅监听 loopback 的流式校验接收端。
客户端与接收端合同
客户端复用已获授权的管理测试身份,不新增账户、不修改 entitlement。节点凭据只在运行时读取,临时配置为 0600,结束后删除。该测试覆盖 Free 节点传输能力,不覆盖普通 Free 用户的登录、授权和账单规则。
测试客户端 Core 为 Xray 26.3.27。以下为脱敏配置;RUNTIME_UUID、NODE_PUBLIC_IPV4、NODE_FQDN 和 SOCKS 端口均须在临时目录中注入。Linux 测试进程绑定 eth0;Mac 对照样本绑定 en0,避免与已连接的 VPN 叠加。
{
"log": {"loglevel": "warning"},
"inbounds": [{
"listen": "127.0.0.1", "port": 19080, "protocol": "socks",
"settings": {"auth": "noauth", "udp": false}
}],
"outbounds": [{
"protocol": "vless",
"settings": {"vnext": [{
"address": "NODE_PUBLIC_IPV4", "port": 443,
"users": [{"id": "RUNTIME_UUID", "encryption": "none"}]
}]},
"streamSettings": {
"network": "xhttp", "security": "tls",
"sockopt": {"interface": "eth0"},
"tlsSettings": {"serverName": "NODE_FQDN", "alpn": ["h2"], "fingerprint": "chrome"},
"xhttpSettings": {"path": "/split", "mode": "auto"}
}
}],
"policy": {"levels": {"0": {"connIdle": 3600}}}
}
第二轮仅把客户端 mode 改成 packet-up。生产节点服务和用户配置在测试期间保持运行,临时客户端为独立进程。
HTTPS 接收端使用三节点现有证书;每次运行创建独有路径和临时认证 token。Caddy 只临时增加匹配该 host/path 的 route,反代到本机 loopback 随机端口。接收端逐块读取 body、计算 SHA-256,只保留字节数、hash、耗时和出口信息,不保存上传内容。最大 body 为 512,000,000 bytes。
成功响应合同:
{"run_id":"运行标识","received_bytes":512000000,"sha256":"合成文件 SHA-256","elapsed_s":0,"egress_ip":"被测代理公网出口"}
单项请求使用普通 HTTPS POST 和文件流;节点凭据不出现在命令行。下面为等效复现命令,RUNTIME_CURL_CONFIG 是通过 0600 文件提供一次性接收端认证 header 的 curl config。
curl --config "$RUNTIME_CURL_CONFIG" \
--noproxy '' --socks5-hostname "127.0.0.1:$SOCKS_PORT" --http2 \
--request POST --upload-file "$PAYLOAD" --header 'Expect:' \
--connect-timeout 20 --max-time 900 --speed-limit 8192 --speed-time 60 \
--retry 0 --output "$RECEIPT_JSON" --write-out '%{json}' "$RECEIVER_URL"
指标与通过条件
每项保留 curl exit、HTTP 状态、SOCKS 连接时间、目标 TLS 完成时间、首字节时间、总耗时、实际上传字节数和接收端校验结果。curl time_total 为该文件请求完整链路耗时,不含文件生成和临时 Core 进程启动。每个 curl 请求新建 SOCKS/目标 TLS 会话;同模式 Core 持续运行,XHTTP 底层连接池可能复用。吞吐换算为 speed_upload_bytes_s × 8 / 1,000,000 Mbps。首字节是 curl 原始计时,可能包含 HTTP 信息响应,不作为上传完成时间。
每项同时满足以下条件才通过:curl exit 0、HTTP 200、发送和接收长度均与文件长度相等、SHA-256 一致,且接收端看到的出口属于被测代理。失败定位分别记录为 SOCKS 连接、代理传输/目标 TLS、上传流、目标 HTTP/响应、内容完整性或出口不符;主动取消的基线样本不计为节点失败。
通过率只表示本轮冒烟矩阵的通过项数/执行项数;每项仅一次,不推导生产 SLA 或长期稳定性。性能指标记录实测值,本 case 未定义最低 Mbps 的业务 SLO。
Mac 本机对照样本
初次检测到系统路由指向 utun6,因此停止叠加 VPN 的基线运行。随后仅为测试客户端绑定物理接口 en0,并检查到三个临时 Xray 的 TLS socket 源地址确实来自 en0。
物理接口对照中,Mac 直连 SG HTTPS 接收端上传 1 MB 用时 29.602 秒(约 0.270 Mbps),经 JP auto 上传 1 MB 用时 24.680 秒(约 0.324 Mbps)。当时还有其他测试流量,这两项不能作为公平的协议快慢对比;它们表明本机到外网路径也存在低吞吐,不能把本机慢上传直接归因于服务端 Caddy/Xray 参数。完整阶梯验收使用上表的 Linux 客户端路径。
MacOS 本机临时客户端完整矩阵(补测)
运行 smoke-mac-20261018T054727Z-ff69c0ce,UTC 2026-10-18T05:47:41Z 至 2026-10-18T07:46:05Z。macOS 27.0.1 / Xray 26.3.27;临时客户端绑定 en0,观测到的 5 条代理 TLS socket 均使用 en0,未经过 utun VPN。三条代理链路并发,每条链路按尺寸递增;auto 后接 packet-up,每个 node/mode/size 一次,不重试。最终 27/60 成功(45.00%),实际客户端发送 744,719,699 bytes;6,138 MB 是预期文件总量,不是实发量。此 MacOS 结果与 Linux 60 项矩阵分开统计。按节点:JP 8/20、SG 7/20、US 12/20;按模式:auto 12/30、packet-up 15/30。以下为 curl time_total 实测耗时;成功单元格显示 PASS / 秒,失败显示 FAIL / 秒 / 阶段。完整字段见 MacOS CSV 与 MacOS JSON 原始记录.
auto 模式
| 文件 MB | JP | SG | US |
|---|---|---|---|
| 1 | PASS / 25.4497s | PASS / 33.6378s | PASS / 17.3112s |
| 2 | PASS / 48.4188s | PASS / 63.0924s | PASS / 19.7841s |
| 4 | FAIL / 160.9632s / target_http_or_response |
PASS / 85.6505s | PASS / 60.1266s |
| 8 | PASS / 234.4672s | FAIL / 117.2636s / upload_stream |
PASS / 150.7804s |
| 16 | FAIL / 64.8183s / upload_stream |
FAIL / 285.1152s / upload_stream |
PASS / 261.2561s |
| 32 | PASS / 704.4385s | FAIL / 591.6585s / upload_stream |
FAIL / 245.3017s / upload_stream |
| 64 | FAIL / 468.7630s / upload_stream |
FAIL / 559.9905s / upload_stream |
FAIL / 850.8114s / upload_stream |
| 128 | FAIL / 667.7966s / upload_stream |
FAIL / 166.6080s / upload_stream |
FAIL / 99.3428s / upload_stream |
| 256 | FAIL / 900.0025s / upload_stream |
FAIL / 874.1781s / upload_stream |
FAIL / 154.7952s / upload_stream |
| 512 | FAIL / 595.9776s / upload_stream |
FAIL / 572.4636s / upload_stream |
FAIL / 736.9633s / upload_stream |
packet-up 模式
| 文件 MB | JP | SG | US |
|---|---|---|---|
| 1 | PASS / 37.1831s | PASS / 11.8155s | PASS / 33.9155s |
| 2 | PASS / 78.3175s | PASS / 40.6235s | PASS / 51.4887s |
| 4 | PASS / 143.6476s | PASS / 78.3304s | PASS / 77.7221s |
| 8 | PASS / 155.7045s | PASS / 251.1727s | PASS / 227.6336s |
| 16 | FAIL / 175.7022s / upload_stream |
FAIL / 464.7073s / upload_stream |
PASS / 382.6091s |
| 32 | FAIL / 16.0027s / proxy_transport_or_target_tls |
FAIL / 261.4913s / upload_stream |
PASS / 568.8074s |
| 64 | FAIL / 16.0025s / proxy_transport_or_target_tls |
FAIL / 16.0032s / proxy_transport_or_target_tls |
PASS / 735.3282s |
| 128 | FAIL / 16.0023s / proxy_transport_or_target_tls |
FAIL / 16.0020s / proxy_transport_or_target_tls |
FAIL / 628.3387s / upload_stream |
| 256 | FAIL / 16.0025s / proxy_transport_or_target_tls |
FAIL / 16.0022s / proxy_transport_or_target_tls |
FAIL / 900.0025s / upload_stream |
| 512 | FAIL / 16.0027s / proxy_transport_or_target_tls |
FAIL / 16.0023s / proxy_transport_or_target_tls |
FAIL / 900.0064s / upload_stream |
失败项实际耗时、已发送量与失败位置
curl/HTTP 中 HTTP 0 表示未收到 HTTP 响应。错误文本保留 curl 原文。
| 节点 | 模式 | MB | 实际耗时 s | 已发送 bytes | curl/HTTP | 失败位置 | 错误 |
|---|---|---|---|---|---|---|---|
| jp | auto | 4 | 160.9632 | 4000000 | 28/0 | target_http_or_response |
curl: (28) Operation too slow. Less than 8192 bytes/sec transferred the last 60 seconds |
| sg | auto | 8 | 117.2636 | 2227923 | 28/0 | upload_stream |
curl: (28) Operation too slow. Less than 8192 bytes/sec transferred the last 60 seconds |
| jp | auto | 16 | 64.8183 | 1179346 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| sg | auto | 16 | 285.1152 | 4652754 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| us | auto | 32 | 245.3017 | 9961170 | 55/0 | upload_stream |
curl: (55) Send failure: Broken pipe |
| sg | auto | 32 | 591.6585 | 19988178 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| us | auto | 64 | 850.8114 | 27459282 | 28/0 | upload_stream |
curl: (28) Operation too slow. Less than 8192 bytes/sec transferred the last 60 seconds |
| us | auto | 128 | 99.3428 | 6422225 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| jp | auto | 64 | 468.7630 | 29621970 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| sg | auto | 64 | 559.9905 | 20119250 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| us | auto | 256 | 154.7952 | 2227921 | 28/0 | upload_stream |
curl: (28) Operation too slow. Less than 8192 bytes/sec transferred the last 60 seconds |
| sg | auto | 128 | 166.6080 | 2293457 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| jp | auto | 128 | 667.7966 | 16383697 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| us | auto | 512 | 736.9633 | 20119249 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| sg | auto | 256 | 874.1781 | 25231057 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| jp | auto | 256 | 900.0025 | 28901073 | 28/0 | upload_stream |
curl: (28) Operation timed out after 900002 milliseconds with 0 bytes received |
| sg | auto | 512 | 572.4636 | 15924945 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| jp | auto | 512 | 595.9776 | 14155473 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| sg | packet-up | 16 | 464.7073 | 11271890 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| sg | packet-up | 32 | 261.4913 | 10550994 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| jp | packet-up | 16 | 175.7022 | 8257234 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| sg | packet-up | 64 | 16.0032 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to us-free-selfhost-prod-v2.svc.plus:443 |
| jp | packet-up | 32 | 16.0027 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to sg-free-selfhost-prod-v2.svc.plus:443 |
| sg | packet-up | 128 | 16.0020 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to us-free-selfhost-prod-v2.svc.plus:443 |
| jp | packet-up | 64 | 16.0025 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to sg-free-selfhost-prod-v2.svc.plus:443 |
| sg | packet-up | 256 | 16.0022 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to us-free-selfhost-prod-v2.svc.plus:443 |
| jp | packet-up | 128 | 16.0023 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to sg-free-selfhost-prod-v2.svc.plus:443 |
| sg | packet-up | 512 | 16.0023 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to us-free-selfhost-prod-v2.svc.plus:443 |
| jp | packet-up | 256 | 16.0025 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) Recv failure: Connection reset by peer |
| jp | packet-up | 512 | 16.0027 | 0 | 35/0 | proxy_transport_or_target_tls |
curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to sg-free-selfhost-prod-v2.svc.plus:443 |
| us | packet-up | 128 | 628.3387 | 88866513 | 16/0 | upload_stream |
curl: (16) Error in the HTTP2 framing layer |
| us | packet-up | 256 | 900.0025 | 91684561 | 28/0 | upload_stream |
curl: (28) Operation timed out after 900002 milliseconds with 0 bytes received |
| us | packet-up | 512 | 900.0064 | 45219537 | 28/0 | upload_stream |
curl: (28) Operation timed out after 900006 milliseconds with 0 bytes received |
本机补测结论与清理
本轮 MacOS 外网链路通过率为 45%,与前一轮 Linux 客户端的 96.67% 明显不同。失败包含 HTTP/2 framing 中断、低速/超时、Broken pipe、TLS 握手失败与连接重置;结果受客户端接入网络、跨区路径、代理和接收链路共同影响。不能据此判断 XHTTP 或 packet-up 对所有用户网络的普遍优劣,也不能承诺大文件必然成功。Linux 轮 auto 1–32 MB 全通过;MacOS 补测中 US auto 32 MB 与 SG auto 32 MB 均失败,因此 Linux 结论只适用于该轮测试链路,不能扩展为跨客户端保证。
测试后本机 Xray 进程均已停止;JP、SG、US 的临时接收 route、接收进程和 scratch 均确认清理。回执见 cleanup JSON。归档仅保留脱敏测量值和合成 payload 的 SHA-256;不含 token、私有 IP 或上传内容。
先前中断样本与修复
首轮远程矩阵 smoke-20261018T040909Z-92a47842 执行 58 项,53 成功、5 失败,未完成完整矩阵。北京时间 12:16 左右各节点 Agent 配置同步并重启 Xray;运行配置随后回退到缓存的旧模板,Caddy 进程和临时接收路由仍存在。
| 节点 | 模式 | 文件 MB | 失败耗时 s | 已发送 bytes | 失败阶段/证据 |
|---|---|---|---|---|---|
| SG | packet-up | 64 | 2.9099 | 4538367 | curl 18,HTTP/2 流提前关闭 |
| SG | packet-up | 128 | 0.0676 | 0 | curl 35,代理传输/目标 TLS 错误 |
| SG | packet-up | 256 | 0.0730 | 0 | curl 35,代理传输/目标 TLS 错误 |
| US | auto | 512 | 140.5515 | 300646100 | curl 56,上传中途 EOF |
| JP | packet-up | 256 | 3.3754 | 10616532 | curl 56,上传中途 EOF |
上述尺寸与时间各不相同,不构成固定文件大小上限的证据。原始 SG TLS 样本的自动阶段标签过于宽泛,以 curl 35 错误定位为准;原始 JSON 保留原标签。已重载 Agent 使其读取新模板,并在 Playbooks 补上模板变更通知及幂等对齐入口。详情见 配置优化记录。
另外一次运行 smoke-20261018T042558Z-8010b47f 在 3 项成功后由操作人停止,以按最新要求先完成 Playbook 应用;不计入节点失败或本轮通过率。中断运行均已清理临时资源。首轮原始结果、服务生命周期和配置回退证据见 中断样本 JSON。
历史优化关联
本次实测承接此前两份 JP XConnect 优化记录:
- 内存与日志优化分析(2026-10-10):记录 Caddy/Xray/Vector 资源、日志保留与运行稳定性,提出真实客户端上传仍需验收。
- 稳定性增量配置验证(2026-10-14):记录 XHTTP buffer、日志级别与 Caddy 刷新策略的短窗口验证,明确未覆盖真实大图上传。
本报告将后续验证扩展至 JP、SG、US 三个 Free 节点和两种 XHTTP 模式,以受控合成文件执行 1–512 MB 全阶梯。两项 packet-up 失败仍待定位,因此它补充了前两次记录,不代表原目标已全部解决。Playbooks 侧实现及部署记录见 配置优化说明、PR #675 与 PR #676。
远程 Linux 客户端矩阵结果
运行 smoke-20261018T042856Z-cf2597e6;北京时间 2026-10-18 12:28:56 至 13:05:31。完整矩阵 58/60 通过(96.67%);实际发送合成 payload 5,901.363 MB。
| 节点 | 模式 | 通过率 | 512 MB 总耗时(s) | 512 MB 吞吐(Mbps) | 全阶梯加权吞吐(Mbps) |
|---|---|---|---|---|---|
| JP | auto | 10/10(100%) | 139.832 | 29.292 | 28.053 |
| JP | packet-up | 9/10(90%) | 140.270(失败) | — | 21.849 |
| SG | auto | 10/10(100%) | 174.570 | 23.463 | 22.603 |
| SG | packet-up | 10/10(100%) | 172.421 | 23.756 | 22.778 |
| US | auto | 10/10(100%) | 230.356 | 17.781 | 17.257 |
| US | packet-up | 9/10(90%) | 235.333 | 17.405 | 15.018 |
全阶梯加权吞吐为实际发送字节总和 / 请求耗时总和,包含失败请求的部分发送量,不表示接收端确认的有效吞吐。失败的 512 MB 项不展示完成吞吐。
auto 逐级实测
成功单元格为完整链路秒数 / Mbps;FAIL 标明耗时及失败阶段。
| 文件(MB) | JP | SG | US |
|---|---|---|---|
| 1 | 2.100 / 3.809 | 2.602 / 3.075 | 3.026 / 2.644 |
| 2 | 2.068 / 7.735 | 2.780 / 5.754 | 3.366 / 4.753 |
| 4 | 1.919 / 16.671 | 3.054 / 10.478 | 3.260 / 9.816 |
| 8 | 2.903 / 22.049 | 4.397 / 14.554 | 4.781 / 13.386 |
| 16 | 5.339 / 23.973 | 6.888 / 18.583 | 7.999 / 16.002 |
| 32 | 9.218 / 27.771 | 12.047 / 21.250 | 14.498 / 17.658 |
| 64 | 17.646 / 29.015 | 23.251 / 22.021 | 31.338 / 16.338 |
| 128 | 36.342 / 28.177 | 44.627 / 22.946 | 59.531 / 17.201 |
| 256 | 74.369 / 27.538 | 87.866 / 23.308 | 116.097 / 17.640 |
| 512 | 139.832 / 29.292 | 174.570 / 23.463 | 230.356 / 17.781 |
packet-up 逐级实测
成功单元格为完整链路秒数 / Mbps;FAIL 标明耗时及失败阶段。
| 文件(MB) | JP | SG | US |
|---|---|---|---|
| 1 | 1.928 / 4.150 | 2.515 / 3.181 | 2.908 / 2.751 |
| 2 | 2.180 / 7.340 | 2.728 / 5.864 | 3.601 / 4.443 |
| 4 | 1.893 / 16.909 | 3.162 / 10.119 | 3.240 / 9.877 |
| 8 | 2.937 / 21.790 | 4.353 / 14.704 | 4.799 / 13.335 |
| 16 | 5.210 / 24.567 | 6.869 / 18.635 | 8.160 / 15.686 |
| 32 | 9.388 / 27.270 | 12.496 / 20.487 | FAIL 83.070s: upload_stream |
| 64 | 17.683 / 28.954 | 22.847 / 22.410 | 29.683 / 17.249 |
| 128 | 36.178 / 28.304 | 43.967 / 23.290 | 56.923 / 17.989 |
| 256 | 71.543 / 28.626 | 87.933 / 23.291 | 115.367 / 17.752 |
| 512 | FAIL 140.270s: upload_stream | 172.421 / 23.756 | 235.333 / 17.405 |
完整性、失败位置与清理
- HTTP、长度、hash、代理出口同时通过:58/60;失败项:2。
| 节点 | 模式 | MB | 耗时 s | 已发送 bytes | curl/HTTP | 失败位置 | 错误 |
|---|---|---|---|---|---|---|---|
| jp | packet-up | 512 | 140.2704 | 278855380 | 56/0 | upload_stream | curl: (56) Recv failure: Connection reset by peer |
| us | packet-up | 32 | 83.0699 | 28507861 | 28/0 | upload_stream | curl: (28) Operation too slow. Less than 8192 bytes/sec transferred the last 60 seconds |
- 测试后两份模板和两份运行配置的 connIdle:JP 全部为 3600, SG 全部为 3600, US 全部为 3600。
- 三个临时接收 route 均已移除,三个接收进程和三个客户端进程均停止,临时凭据配置和约 3 GB payload 已删除。
- 测试前与延迟复查的 Agent、Xray、Xray-TCP、Caddy 服务 PID/启动时间/自动重启计数对比:JP 发生变化,见 JSON, SG 发生变化,见 JSON, US 发生变化,见 JSON。
- 上传实际时间范围:2026-10-18T04:29:09Z 至 2026-10-18T04:46:17Z;清理回执晚于最后一次上传,SSH 控制耗时不计入 curl 请求耗时。
- 脱敏 journal 检索显示:两次失败时段未记录 Xray/Xray-TCP 服务重启;两项失败的根因尚未确定。延迟复查观察到 UTC 05:16(北京时间 13:16)Accounts 同步后重启,发生在最后一次上传及清理之后,不能解释 UTC 04:38/04:39 的失败。其后四份 connIdle 仍为 3600,说明参数未再次回退。
- auto 本轮 30/30;packet-up 28/30。本 case 不判定全部通过,也不通过反复重跑覆盖失败。尚需针对 JP packet-up 大文件 reset 和 US packet-up 短时停顿定位;单次结果不能证明协议普遍优劣。
- 单轮、每项一次、三条并发链路;不据此推导长期稳定性、实际用户网络速度或协议模式的普遍优劣。
逐项字段与原始记录:CSV、完整 JSON、Mac 对照与主动取消样本。JSON 包含 payload hash manifest、服务状态快照和清理回执;不包含节点 UUID、认证 token 或 SSH 私钥。
反馈