Linux和Windows下網路測試工具的安裝使用(iperf)

IT老翟發表於2020-10-31

網路卡測試

一. 簡介

不知道大家有沒有這樣的需求,測試你的pc網路卡是千兆的還是百兆的,在實際傳輸資料的時候速度能跑到多少。之前我是用兩臺pc用網線直連,然後通過建立共享資料夾的方式傳輸檔案,來觀察傳輸速度,但是由於讀寫檔案要經過硬碟,而我的還是機械硬碟所以測試的速度就不準確

二. 關於iperf

最後找到了iperf這個軟體,它支援windows和linux還是mac,安卓等等,功能也挺強大的,感覺用起來特方便就推薦給大家。

iperf可以測試的內容有這些

TCP

  • 測量網路頻寬
  • 報告MSS/MTU值的大小和觀測值
  • 支援TCP視窗值通過套接字緩衝
  • 當P執行緒或Win32執行緒可用時,支援多執行緒。客戶端與服 務端支援同時多重連線

UDP

  • 客戶端可以建立指定頻寬的UDP流
  • 測量丟包
  • 測量延遲
  • 支援多播
  • 當P執行緒可用時,支援多執行緒。客戶端與服務端支援同時多重連線(不支援Windows)

三. iperf安裝

這樣注意一點,兩臺主機下測試網路傳輸速率,所使用的的軟體版本必須一致,要不然就會出問題
windows下iperf3安裝

  1. 首先下載iperf3軟體
    在這裡插入圖片描述

下載連結:iperf3 3.1.3

  1. 複製這兩個檔案,貼上到%systemroot%
    在這裡插入圖片描述
  2. 回車,進入到windows目錄下
    在這裡插入圖片描述
  3. 將複製的兩個檔案貼上到此處
    cmd中可以使用iperf3命令了。客戶端與服務端應使用一致的iperf版本。

Linux下安裝
這裡我推薦大家使用命令來安裝,讓我們的虛擬機器或是開發板連線外網的情況下安裝

輸入下面命令進行安裝

apt-get install iperf3

也可以通過下載原始碼後進行編譯,然後在執行,但是沒有下載方便,如果需要原始碼的可以在下面下載

下載地址:iperf3原始碼下載

四. 硬體判斷網路卡

如果要求網路卡的傳輸速率能達到千兆,那兩臺裝置必須都直接千兆的傳輸,如何通過硬體來看是千兆網路卡還是百兆網路卡那

方法一:
開啟電腦的裝置管理器,檢視網路配置器

  • 如果網路卡的名稱中有 FE, 00, Fast Et hernet等字樣都是百兆網路卡
  • 如果網路卡的名稱中有 Gigabit,GBE,10/100/1000M、RTL8196等字樣就是千兆網路卡
    在這裡插入圖片描述
    在這裡插入圖片描述

方法二:
在電腦桌面的左下角的網路圖示,點選滑鼠右鍵,點選 開啟網路和共享中心選項
在這裡插入圖片描述
然後再滑鼠左鍵點選下圖中的1
在這裡插入圖片描述

五. iperf3的使用

1.環境
這裡我在兩臺主機測試網路卡的頻寬,一個是windows7的主機,一個是Linux系統的開發板,兩個硬體裝置均為千兆網路卡

Windows pc的ip:192.168.0.7
Linux pc的ip:192.168.0.3

開始測試可以互相用ping 命令來測試網路是不是通的,如果不知道自己主機的ip可以用命令來檢視,在windows下用ipconfig命令,在Linux下用ifconfig命令

2. 測試TCP吞吐量
(1)Server端開啟iperf的服務模式,指定TCP埠,這裡以windows做為伺服器,用win+r 組合按鍵然後在輸入cmd,開啟終端,輸入下面命令,520為設定的埠號

iperf3 –s –i 1 –p 520

在這裡插入圖片描述
(2)Client端啟動iperf的客戶端模式,連線伺服器在linux開飯的命令列輸入下面命令,下面的ip為伺服器的ip,必須保證兩個裝置的ip為同樣網段,520為伺服器設定的埠號

iperf3 –c 192.168.0.7 –i 1 –t 10 –p 520

在這裡插入圖片描述

(3) Server端監聽結果
在這裡插入圖片描述
由此可以看出測試出的是百兆網路卡的速率,因為我沒有讓兩個裝置通過網線直接而是,中間接了支援百兆網口的交換機

3.測試UDP吞吐量
(1)Server端開啟iperf的伺服器模式,指定UDP埠,這裡同樣採用windows下作為伺服器,在終端輸入下面命令,521為埠號

iperf3 –s -i 1 –p 521

在這裡插入圖片描述
(2)Client端啟動iperf的客戶端模式,連線伺服器,輸入下面命令,下面的ip為伺服器的ip,埠號為伺服器設定的埠號,這裡我們測試千兆網路卡的速率,所以設定為1000M

iperf3 -u -c 192.168.0.7 -p 521 -b 1000m

在這裡插入圖片描述
(3)Server端監聽結果
在這裡插入圖片描述
這個是在千兆網路卡下通過網線直接連線的情況測試的結果可以看出為千兆網路卡,而且也可以看到udp傳輸時丟包的數量

六. 總結

iperf這個軟體的功能挺強大的,使用的命令也特別的多這裡我就不一一給大家說了,需要連線的朋友可以自行搜尋,注意在測試過程中,保證兩臺裝置的ip為同一網段,必須能夠ping通的條件下再測試。

相關文章