# 通过 192.168.31.114 上传仅 8MB/s — 排查记录（2026-09-10）

## 结论
**瓶颈不在服务器，在客户端 → 交换机这段链路。** 服务器侧实测接收能力 ≈ 106 MB/s（接近千兆满速），
用户有线客户端实际只有 8MB/s（≈64Mbps），是典型的 **100M 协商 / 劣质网线 / 经过 100M 设备** 特征。

## 网络拓扑速记
- `192.168.31.114` = 本机（DSH/下载中心）的**有线网卡** `enp3s0f1`，协商 **1000Mb/s 全双工**（sysfs 实测）
- `192.168.31.76` = 本机**同一台机器**的 WiFi 网卡 `wlp4s0`（下载页两个 IP 都能开，但 .114 才是走网线）
- 上传服务：node `download-server.js` :8899，流式写入磁盘（`for await (chunk)` + `fs.writeSync`，无速率限制代码）

## 实测数据（从 GPU 机 192.168.31.31 经交换机上传 512MB 到 192.168.31.114:8899/用户上传/）
| 项 | 值 |
|---|---|
| curl 实测上传平均 | 106912471 B/s ≈ **102 MB/s** |
| 服务端逐秒采样 | 105.8 / 107.4 / 106.3 MB/s |
| 512MB 总耗时 | ~4.5 秒 |
| 服务器返回 | `{"ok":true,"files":[{"size":536870912}]}` |

→ 网卡 + 交换机 + node 服务 + 磁盘全部正常，接近千兆上限。

## 为什么客户端只有 8MB/s（≈64Mbps）
千兆有线正常情况下应 ≥ 90MB/s。8MB/s 对应 100M 链路（上限 ~11MB/s，实际 8~10）。可能原因：
1. **客户端网卡协商成 100M**（坏线/劣质水晶头损伤一对线，千兆需要 4 对全通 → 自动降 100M）
2. **插在 100M 设备上**：WiFi 中继/AP 的面板口、电力猫、老路由 LAN 口（很多标称"千兆路由"实际 LAN 口 100M）
3. 网线是 Cat5（非 Cat5e/Cat6）、线太长（>30m 劣质线）、水晶头接触不良
4. 客户端网卡节能模式（Energy-Efficient Ethernet / 电源管理）

## 客户端自查步骤
1. **看协商速率**（这是决定性一步）：
   - Windows：设置 → 网络和 Internet → 以太网 → 属性，看"链接速度"（或 PowerShell `Get-NetAdapter | Select Name,LinkSpeed`）
   - macOS：系统信息 → 以太网 → 链接速度
   - Linux：`cat /sys/class/net/<网卡>/speed`
   - **若显示 100 Mbps → 实锤 100M 协商**，换线/换口即可
2. 换一根 Cat5e/Cat6 线，换路由上**另一个 LAN 口**（优先靠路由器本体，别接在 WiFi 中继/扩展器上）
3. 观察路由端口灯色：千兆口通常橙/绿双色，100M 只有一种颜色
4. 交叉验证：浏览器下载本页自测文件，看下载速度
   - 下载也 ~8MB/s → 双向都 100M，就是链路/网卡问题
   - 下载 100MB/s 而上传只有 8MB/s → 单独反馈，继续查客户端上传侧（网卡驱动/节能/杀软）

## 自测文件
- 本地：`/home/zyw/Downloads/dl-hub/05-下载服务维护/网速自测-speedtest.bin`（100MB）
- 下载地址：http://192.168.31.114:8899/05-下载服务维护/网速自测-speedtest.bin

## 第二轮：下载快、上传慢（客户端实测反馈 2026-09-10）
用户反馈：下载 speedtest.bin 瞬间完成（满速），上传仍 8MB/s。
→ 物理链路（网卡协商/网线/交换机/服务器）双向都正常（千兆），**问题在客户端"发送"数据通路**。
排除 100M 协商/坏线（否则下载也会慢）。剩余嫌疑：
1. **上传文件的来源盘读取慢**（最常见）：大文件放在移动硬盘/U盘/SD卡/老机械盘，或文件碎片化
   → 上传速度 = 来源盘读取速度（8MB/s 典型）
2. **杀毒/安全软件扫描上行流量**（360/电脑管家等"上传防护""网速保护"）
3. 客户端网卡节能模式 / 驱动 TX offload 问题（少见）
4. 网线实际接在 WiFi 中继/扩展器上（用户以为有线，实际过 100M 设备，但本轮下载快可基本排除）

### 客户端判别实验（按序做，一步定位）
1. 把刚下载的 100MB speedtest.bin（在快盘上）直接拖进上传框：
   - 秒传（>80MB/s）→ 网络上传没问题，**元凶 = 原大文件存放的慢盘**，把文件先拷到本地快盘再传
   - 仍 8MB/s → 走第 2 步
2. 临时退出安全软件（360/电脑管家等）+ 换浏览器（Edge/Chrome）再传一次
3. 本地复制测试：把要传的大文件在本机两个文件夹间复制，掐表看速度，验证是不是磁盘读速
4. Windows 检查网卡：`Get-NetAdapter | Select Name,LinkSpeed`，确认 1000Mbps、关闭"节能以太网"