吞吐量

根據傳輸的資料和時間計算網路吞吐量

如何使用吞吐量

  1. 1輸入傳輸的資料量和所用時間。
  2. 2選擇單位(MB/GB 與秒/分鐘)。
  3. 3讀取 Mbps 或 MB/s 吞吐率,並與鏈路容量比較。

吞吐率與頻寬

吞吐率 = 傳輸資料量 / 時間;1 MB/s = 8 Mbps

吞吐率是實際成功交付資料的速率;頻寬是鏈路的理論容量。

受開銷、擁塞和協議低效(TCP、重傳)影響,實際吞吐率常低於頻寬。

**Goodput 才是使用者真正關心的指標**:它扣除了協議頭部、重傳、握手等一切開銷,只算有效應用資料的速率。一個 100 Mbps 鏈路,扣掉約 6% 的乙太網路+IP+TCP 頭部、1% 的重傳、以及 TCP 慢啟動的影響,Goodput 通常只有 85–92 Mbps。**做容量規劃時必須用 Goodput 而非頻寬**,否則會系統性高估。

吞吐量的三個常見瓶頸:① **頻寬受限**(小檔案、低頻寬鏈路);② **延遲受限**(大數據、高延遲鏈路,視窗不夠大);③ **併發受限**(連線數不夠、執行緒數不足)。判斷方法:如果增加併發數吞吐就上升,說明是延遲/併發瓶頸;如果併發加到很多吞吐仍不漲,就是頻寬瓶頸。**多執行緒下載、HTTP/2 多路複用都是為了解決延遲受限的問題。**

指標定義單位類比
頻寬 Bandwidth鏈路最大容量bps公路車道數
吞吐量 Throughput實際成功傳輸速率bps單位時間通過的車
延遲 Latency資料到達所需時間ms單程行駛時間
抖動 Jitter延遲的波動ms行駛時間的穩定性
丟包率 Loss丟失包的比例%事故率
Goodput有效資料(不含頭/重傳)bps實際運到的貨物

吞吐量 vs 頻寬 vs 延遲的區別

常見問題

為什麼速度只有套餐一半?

開銷、競爭和 TCP 慢啟動會讓實際吞吐率遠低於線速。

Mbps 還是 MB/s?

運營商用 Mbps(位元);檔案傳輸顯示 MB/s(位元組)。除以 8 可比較。

Wi-Fi 能達到乙太網路吞吐嗎?

通常不能;射頻干擾與半雙工空口會降低 Wi-Fi 吞吐。

怎麼測真實吞吐量?

用 iperf3(命令列)在兩端對打,能同時測 TCP 和 UDP,還能指定視窗大小、併發流數;用 speedtest.net 測網際網路出口頻寬;用 dd + scp 測磁碟到磁碟的實際傳輸速率。測的時候要注意:① 單向測還是雙向測;② 測試時長至少 30 秒(避開 TCP 慢啟動階段);③ 多次測試取中位數;④ 排除其他流量干擾。UDP 測試還要關注抖動和丟包。

為什麼千兆網路複製檔案只有 40 MB/s?

320 Mbps 左右(40 MB/s)通常是**磁碟瓶頸**而非網路瓶頸。機械硬碟順序讀寫約 100–150 MB/s,小檔案隨機讀寫可能只有 1–5 MB/s。SMB/CIFS 協議本身開銷也不小(SMB 1.0 尤其慢,建議用 SMB 3.0)。另外加密(VPN、SMB 簽名)、即時防毒掃描、以及大量小檔案的後設資料操作都會大幅拖慢。排查方法:先用 iperf3 確認網路本身能跑滿,再逐個排除磁碟、協議、軟體因素。

更多工具