我正在使用iperf來測試以太網性能。 它有我使用的幾個功能:iperf - 帶寬的含義是什麼?
測量最大帶寬
例如數據包丟失的
iperf -c 192.168.0.1
統計對於一個給定的帶寬,
例如用
iperf -uVZc 192.168.0.1 -b400m
我很驚訝地看到,它測量的鏈路帶寬是一個包含丟包的帶寬(如果我運行第二個例子的帶寬爲最大帶寬,那麼我會得到30%的丟包率)
所以,我不確定,這是iperf條款中帶寬的實際含義嗎?
謝謝。
我正在使用iperf來測試以太網性能。 它有我使用的幾個功能:iperf - 帶寬的含義是什麼?
測量最大帶寬
例如數據包丟失的iperf -c 192.168.0.1
統計對於一個給定的帶寬,
例如用iperf -uVZc 192.168.0.1 -b400m
我很驚訝地看到,它測量的鏈路帶寬是一個包含丟包的帶寬(如果我運行第二個例子的帶寬爲最大帶寬,那麼我會得到30%的丟包率)
所以,我不確定,這是iperf條款中帶寬的實際含義嗎?
謝謝。
iperf允許您執行UDP和TCP測試。
在UDP模式下運行iperf時,可以指定帶寬。這實際上是客戶端每秒嘗試向服務器泵送的數據量。某些數據可能會安全到達,但某些數據可能會丟失(由於服務器和客戶端之間存在實際的帶寬)。
在TCP模式下運行iperf時,僅當您想限制帶寬時纔會指出帶寬(並且您還必須考慮數據包大小,因爲這會限制最小帶寬限制,這是由於iperf行爲...)。實際帶寬由TCP窗口大小和連接延遲決定。有關TCP窗口和吞吐量的更多信息,請參見here。
對於UDP(-u)-b是由客戶端向套接字寫入數據所定義的客戶端提供的負載。對於實際的網絡帶寬來看服務器的報告。
此外,對於TCP,-b速率使用token bucket將客戶端限制爲此值。在iperf version 2.0.11中,可以限制客戶端和服務器的速率。
你的意思是說「iperf -c 192.168.0.1」應該返回TCP帶寬?數據包丟失是否對返回的TCP帶寬有影響? – ransh
如果您沒有聲明'-u',則暗示TCP。當然,TCP也可以承受數據包丟失,但TCP適應連接的質量,並且不能使用'-b'開關強加帶寬。 TCP和UDP測試是兩個完全不同的測試,請嘗試閱讀有關TCP的更多信息。 –
丟包被TCP檢測到並可能導致TCP消耗其傳輸窗口 - 從而降低帶寬。閱讀更多:http://blog.performancevision.com/tcp-series-3-packet-loss-retransmissions-and-duplicate-acknowledgements –