Ubuntu

同一台電腦上從一個介面到另一個介面的 Iperf?

  • March 26, 2022

我需要測試伺服器與自身之間的網路吞吐量(這是一個很長的故事!)。

我喜歡 Iperf 並在整個網路中使用它,但是,我只是不知道如何將它綁定到單個介面並且只能通過它來收聽。

從文件中,我假設這會起作用:iperf -B eth0 -s 將一個實例綁定到 eth0,然後在另一個會話中:iperf -B eth1 -c ip.of.eth.1。

這根本不起作用,實際上失敗了。如果我使用 ip 而不是介面,它確實可以工作,但是吞吐量是 29Gb/s - 所以,除非有什麼魔法發生在我有一個 30Gb/s 卡的超級伺服器,我猜我我什至沒有接觸網路,這只是在本地進行。

任何人都可以在這裡幫助我,或者知道更好的測試/工具嗎?

是的,此流量在本地傳輸而不會到達您的物理介面。它使用環回介面傳輸。核心檢測到目的地是本地的,因此流量被環回機器本身,而不通過 eth0 或 eth1。

我知道這是舊的,但張貼以防萬一它幫助其他人。

引自iPerf 2 使用者文件

如果 iPerf 處於伺服器模式,則使用 -c 指定主機將限制 iPerf 將接受到指定主機的連接。對 UDP 不適用。

我用它在Windows 7 64 位上執行從 LAN 到 WiFi 介面的 TCP 吞吐量測試。與iperf 2.0.8 或 2.0.5一起工作正常,不確定其他版本。請參閱下面使用的命令。

iperf.exe -B 192.168.0.1 -s -c 192.168.0.2 -P 0 -i 1 -p 5001 -f m

iperf.exe -B 192.168.0.2 -c 192.168.0.1 -P 1 -i 1 -p 5001 -f m -t 100 -F c:\data.bin

引用自:https://serverfault.com/questions/382951