iperf3 測速懶人包:你的網路被限速了嗎?

給主播使用的 UDP / TCP 測速懶人包。用 10 分鐘測出你的網路環境是否適合 SRT、Hysteria2 這類 UDP 直播協議,並判斷電信商是否針對性限速。

一個常見的警訊:設定 8 Mbps 的測試時,TCP 可以跑到接近滿速(例如 ~7.4 Mbps)。但是 UDP 只剩下約三分之一(例如 2.8–3.6 Mbps),而且數字持續跳動,不穩定。這表示你的網路正在限制 UDP。本筆記說明如何親自驗證。

1. 測試內容

iperf3 是業界標準的網路頻寬測試工具。iperf3 可以分別測出你的網路對 TCP和UDP 的實際表現。SRT、Hysteria2 這類直播和科學上網常用的協議都使用 UDP。如果電信商或 ISP 對 UDP 做了流量管理(QoS),UDP 的表現就會和 TCP 差很多。

準備兩台設備:伺服器端(家裡電腦 / NAS / VPS,需要公網 IP,或可以設定 Port Forwarding)+ 測試端(你要測的手機或電腦)。

2. 架設伺服器端

放在家裡,讓手機或電腦連入測試。

Windows

  1. 下載 iperf3-win-builds(一般版即可)
  2. 解壓縮,開啟 cmd
  3. 執行 iperf3.exe -s

macOS

  1. 開啟終端機
  2. 執行 brew install iperf3
  3. 執行 iperf3 -s

Linux / 樹莓派

  1. 執行 sudo apt install iperf3
  2. 執行 iperf3 -s
  3. 看到 listening 訊息即成功
Server listening on 5201 (test #1)
Port Forwarding:路由器後台把 5201 port(TCP 和 UDP 都必須)轉發到伺服器端的設備。手機在外面用 4G/5G 時,才連得進來。在同一個 Wi-Fi 下測試時,不需要轉發,直接使用區網 IP 即可。公網 IP 可以用 Google 搜尋「my ip」查詢。

3. 測試端安裝 App

iPhone

  1. App Store 搜尋「iPerf 3 Wifi Speed Test」(免費,開發者 Frederic Sagnes)

Samsung / Android

  1. Google Play 搜尋「iperf3」,任何一個免費版即可

Windows PC

  1. 使用和伺服器端相同的 zip。解壓縮後,用 cmd 執行 client 指令

4. 開始測試

先測 TCP(當基準值),執行 30 秒:

iperf3.exe -c 你的伺服器IP -t 30

再測 UDP(重點),碼率設成你平常直播使用的數字:

iperf3.exe -c 你的伺服器IP -u -b 8M -t 30

手機 App 中通常也有 Bandwidth / Bitrate 欄位。填入相同的數字即可。-b 8M 改成你平常實際的直播碼率。

5. 判讀結果

指標 代表意思
Bitrate 是否達到你設定的碼率
Jitter(抖動) 數字越小越好。數字太大表示網路不穩定
Lost / Total Datagrams 丟包率。正常值在 1–2% 以內
正常:UDP 和 TCP 測出的速度接近,丟包率都很低(1–2% 以下)。可以放心使用 SRT、Hysteria2 這類 UDP 協議。
被限速:TCP 正常,但 UDP 設定 8M 卻只跑出 3–4M,丟包率升到 10–20% 以上。電信商或 ISP 很可能限制了 UDP(推測)。

6. 實測建議

  • 尖峰(晚上 8–11 點)和離峰要分開測試。限速常只在網路壅塞時段出現。
  • 不同地點要分開測試。市區和郊區,以及不同基地台涵蓋範圍的結果,可能差很多。
  • 手機必須關閉 Wi-Fi,並用行動資料測試,確保流量走電信網路。
  • 測完 Ctrl + C 關閉伺服器。不可以讓伺服器長期暴露在公網上。

7. 結論

UDP 表現和 TCP 差不多 → 可以放心使用 SRT、Hysteria2。速度快,抗掉幀。

UDP 明顯被限速 → 直播改用 RTMP(TCP),科學上網改用 VLESS Reality(TCP)。這比繼續使用 UDP 更穩定。

不需要猜測,也不需要詢問客服。10 分鐘的實測結果最準確。