6,907 瀏覽數

iperf – 統計 jitter 以及 packet loss

這一篇要討論的是如何透過 iperf 提供的 UDP 協定來統計 jitter 以及 packet loss,不同於 TCP 的協定UDP 他並非一個可靠連線型與資料傳送服務,在 UDP 的資料傳輸中不會用確保機制來保證資料的傳送是否正確,所以資料有可能遺失也有可能前後順序不一致.

  • jitter – 當資料的封包順序不如當時產生的順序傳到接收端時這就被稱為 jitter
  • packet loss – 封包在傳送過程中因不明原因無法讓接收者收到時,這不見的封包就是 packet loss

關於 iperf 的基礎設定請先參考 http://benjr.tw/462

iperf 不只提供的 TCP 的傳送協定也提供了 UDP的測試方式.這兩者最大的不同是 TCP 提供了確保機制來保證資料的傳送是否正確所以 UDP 很適合來測試資料是否發生 jitter 以及 packet loss 等情況.

測試環境如下:
iperf01
基本上只要兩台 Linux 機台就可以做網路效能測試,當然兩張網卡速度要一致,並同時將這個程式安裝在 Server 和 Client 上面.

Server 端

[root@server iperf-2.0.5]# iperf -s -u
  • -s, –server
    傳送端使用的參數
  • -u, –udp
    指定使用 UDP 非預設的 TCP

Client 端

[root@benjr iperf-2.0.5]# iperf -c 192.12.1.2 -u -b 1000m -t 10 -i 1 -f k
————————————————————
Client connecting to 192.12.1.2, UDP port 5001
Sending 1470 byte datagrams
UDP buffer size: 224 KByte (default)
————————————————————
[ 3] local 192.12.1.1 port 48079 connected with 192.12.1.2 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0- 1.0 sec 92785 KBytes 760096 Kbits/sec
[ 3] 1.0- 2.0 sec 89888 KBytes 736364 Kbits/sec
[ 3] 2.0- 3.0 sec 89967 KBytes 737011 Kbits/sec
[ 3] 3.0- 4.0 sec 89056 KBytes 729543 Kbits/sec
[ 3] 4.0- 5.0 sec 97271 KBytes 796846 Kbits/sec
[ 3] 5.0- 6.0 sec 90480 KBytes 741209 Kbits/sec
[ 3] 6.0- 7.0 sec 91215 KBytes 747230 Kbits/sec
[ 3] 7.0- 8.0 sec 97400 KBytes 797904 Kbits/sec
[ 3] 8.0- 9.0 sec 90884 KBytes 744526 Kbits/sec
[ 3] 0.0-10.0 sec 925989 KBytes 758570 Kbits/sec
[ 3] Sent 645043 datagrams
[ 3] Server Report:
[ 3] 0.0-10.0 sec 925424 KBytes 758089 Kbits/sec 0.019 ms 393/645042 (0.061%)
[ 3] 0.0-10.0 sec 1 datagrams received out-of-order
  • -b, –bandwidth #[KM]
    僅適用於 UDP 協定, 設定傳送頻寬單位為 bits/sec (預設值為 1 Mbit/sec)
  • -c, –client
    接收端使用的參數
  • -u, –udp
    指定使用 UDP 非預設的 TCP
  • -f, –format [kmKM]
    報告的格式可以為: Kbits, Mbits, KBytes, MBytes
  • -i, –interval #
    指定即時報告的間隔時間
  • -t, –time #
    傳送時間單位為秒 ,預設為 10 秒 (secs)

[ 3] 0.0-10.0 sec 925424 KBytes 758089 Kbits/sec 0.019 ms 393/645042 (0.061%)
package loss 的比率
[ 3] 0.0-10.0 sec 1 datagrams received out-of-order
Jetter 的次數

發表迴響