1. linux網卡壓力測試iperf 時間沒有跑完停了是什麼原因
Iperf是一個網路性能測試工具。可以測試TCP和UDP帶寬質量,可以測量最大TCP帶寬,具有多種參數和UDP特性,可以報告帶寬,延遲抖動和數據包丟失
因為產品上確定要要用的PHY是千M的,但模塊介面又定義死了,只能用到100M。所以想測試下割掉幾根線試下100M可行不。在測之前先測下千M模式下到底性能怎麼樣,之前別人一直說這我手頭上這顆ARM根本上不了千M,雖然他標稱的是可以支持千M。一準備工作做好了,開始。
我們使用的工具是iperf這個工具我是自己編譯的。現在將我的過程寫下來。iperf下載地址
先編譯PC端工具:
1.解壓源碼:
$ tar xzvf iperf-2.0.5.tar.gz
2.進入源碼目錄
$ cd iperf-2.0.5
3.配置源碼 編譯PC下的不用指定參數,用默認的即可
$ ./configure
4.編譯 後面的-j4不是必須的。
$ make -j4
5.安裝 這里要注意要用管理員許可權
# make install
$ iperf -s 就可以啟動服務端。
ARM端:
1.清理源碼(就是剛才編譯過的源碼)
$ make distclean
2.設置環境變數 (就是你的ARM交叉編譯工具鏈,根據自己的實際情況改)
$ export PATH=/home/gavin/ti-sdk-am335x-evm-05.06.00.00/linux-devkit/bin:$PATH
3.配置 指定主機為ARM g++編譯器和gcc 這里根據自己的實際情況改
$ ./configure --host=arm CXX=arm-arago-linux-gnueabi-g++ CC=arm-arago-linux-gnueabi-gcc
4.修改源碼目錄下面的config.h(沒配置之前是沒有這個文件的),注釋掉 #define malloc rpl_malloc
5.編譯
$ make -j4
在iperf-2.0.5/src/下會生成iperf這個文件,這個就是我們需要的。將這個文件拷到ARM的文件系統中去。這樣PC端和ARM端的都有了。
至於iperf的使用,就不多介紹了,直接在網上一段下來。
2. 如何基準測試Linux PC的性能
基準測試是一項測試或一系列測試,用來確定某個計算機硬體運行起來的狀況有多好。在許多情況下,「基準測試」實際上等同於「壓力測試」。通過測試硬體的極限,然後可以將測得的結果與其他硬體測得的結果作一番比較。
大多數基準測試旨在模擬 PC 在實際情形下遇到的那種工作負載。正因為如此,基準測試幾乎就是獲得定量數據、了解系統性能如何的唯一方法――如果你的數據差強人意,這表明應該升級部分PC部件。
所以,准備好測試你自己的 PC 了嗎?下面是可供 Linux 用戶使用的一些比較實用的基準測試。
一、一體化基準測試
一體化基準測試工具又叫基準測試套件,恰如其名:它們測試和衡量系統的各個方面,而不是專注於某一個特定的硬體,如果你不想用三四個不同的工具搞亂系統,這很有用。
1、Phoronix 測試套件
Phoronix 測試套件是最知名的一體化 Linux 基準測試解決方案之一。有一些人聲稱,它有許多固有的問題;當然,我們不會說它在各方面完美無缺,但是它對大多數用戶來說足夠好。另外,外面值得一用的替代套件並不多。
Phoronix 可使用 100 多個不同的測試套件(即一組組單項測試)和 450 多個不同的測試配置文件。你可以選擇只安裝所需的那部分,所以如果你只關注處理器和普通硬碟基準測試,那麼只要安裝「Processor_Tests」和「Disk_Tests」。它還支持系統日誌和報告。
最棒的是,Phoronix 是自由而開源的。它還提供 Live CD 這種形式,名為 PTS Desktop Live,讓你可以直接從 CD、DVD 或 U 盤來運行,所以你可以在需要時使用「干凈」的操作系統,測試任何機器的硬體。
2、Stress-ng
你可能從名稱中猜得,stress-ng 是真正的壓力測試――它極其適合測試系統的極限,但是由於它要求很嚴苛,我們不建議經常運行它。如果反復接受壓力測試,某些部件(尤其是處理器和普通硬碟)會損耗得更快。
將 stress-ng 安裝到 Debian 和 Ubuntu 上:
sudo apt-get install stress-ng
將 stress-ng 安裝到 Fedora、Red Hat 和 CentOS 上:
sudo yum install stress-ng
一旦安裝完畢,stress-ng 可以測試各種各樣的部件,包括處理器、內存、輸入/輸出、 網路、虛擬內存及更多部件。它還很容易配置――針對每項測試,你可以指定不同的參數,比如多少測試實例、多少個處理器核心、測試強度多大、運行多久等。
介紹所有不同的命令和參數不在本文的范圍之內,但是 Ubuntu 維基上的這個頁面是個不錯的起始點。
3、PassMark BurnInTest
PassMark 擁有各種各樣的 PC 測試和監控軟體,包括大名鼎鼎的 MemTest86 和 PerformanceTest 應用程序,它們只面向Windows 用戶。另一方面,BurnInTest 應用程序卻有 Linux 版本,它無疑值得嘗試一番。
簡而言之,它能同時測試計算機的所有主要子系統。但它不是測試純粹的性能,而是更加專注於穩定性和可靠性。為了獲得最佳結果,我們推薦將它與其他一些形式的性能測試手段結合起來。
它提供免費 30 天試用的服務;一旦試用期結束,就要收費(79 美元)。
二、處理器基準測試
比較兩個不同的處理器很困難。還記得你知道奔騰 III 幾乎總是勝過奔騰 II 的日子嗎?有時候,i5 的性能勝過 i7,四核並非總是勝過雙核。
正由於如此,處理器可以從基準測試比較得到最大的好處――超過其他任何一個 PC 硬體。如果你決定不使用上述一體化測試,那麼可以從下面兩款工具中的一款入手。
1、Geekbench
Geekbench 是目前市面上最出色的處理器基準測試之一。它隨帶 10 項整數工作負載測試和 8 項浮點工作負載測試――其中一些測試在 Hardinfo(下有介紹)中也有,但是其中一些是 Geekbench 特有的。
Windows 版本和 Mac 版本隨帶用戶界面,但 Linux 版本只有命令行可執行文件。基準測試結果上傳到網上,讓你可以以一種比終端更直觀的方式查看分數。
上傳後,Geekbench 會在功能有限的「嘗試模式」(實際上是無限制的免費試用)下運行,只有 64 位和 OpenCL 基準測試。想要 CUDA 基準測試、獨立模式及其他功能,你需要購買 Geekbench 或 Geekbench 專業版。
2、Hardinfo
可以使用原生軟體包管理器從大多數發行版獲取 Hardinfo,不過我覺得在 Deiban 和 Ubuntu 上運行這個命令來得更容易:
sudo apt-get install hardinfo
或者在 Fedora、Red Hat 和 CentOS 上運行這個命令:
sudo yum install hardinfo
Hardinfo 隨帶 6 項不同的基準測試,每一種測試提供了一個分數,你可以用分數來准確地與其他系統比較。處理器測試執行整數運算,FPU 測試執行浮點運算。比較結果時,確保比較的是同樣的測試。
Hardinfo 還是一種迅速獲取系統信息的有用方式。只要瀏覽側邊欄中的各個頁面,即可查看計算機配置的詳細信息。
三、GPU 基準測試
想以一種非科學的方式測試系統的圖形功能,只要看看你的 PC 能不能處理圖形密集型游戲。想獲得更准確的結果,只要運行下列這些測試。
1、Unigine
Unigine 有兩項基準測試值得一提:Valley 基準測試和 Heaven 基準測試。每一項測試渲染不同的場景(分別是覆以森林的山谷和一系列浮空島),迫使你的 GPU「超時工作」。
這是大多數 Linux 游戲玩家首選的圖形基準測試。
免費基準測試是互動式,完全足以大致了解你的 GPU 有多好,但是如果是商業用途、進行深入的逐幀分析,專業版必不可少。售價 495 美元。
2、GFXBench
GFXBench 之前名為 GLBenchmark,它是面向 Linux 系統的兩種主要的圖形基準測試中名氣較小的。它隨帶兩組測試:高級測試(總體性能)和低級測試(特定功能的性能)。
四、數據硬碟基準測試
說到存儲數據的硬碟,速度並非總是最重要。比如說,當硬碟用來存儲備份內容,主要的問題是壽命、可靠性和容量。不過若是日常操作,你需要性能出色的高速固態硬碟。
1、Hdparm
Hdparm 是一種命令行實用工具,安裝在大多數現代的發行版上,非常易於使用。它不僅可用來測試驅動器的性能,還可以針對每個驅動器來改變設置(比如開啟或關閉 DMA)。不過要小心:如果使用不當,Hdparm 會導致驅動器崩潰或損壞!
首先,使用 df 命令列出系統上的所有驅動器。找到想要測試的那個驅動器――如果你沒有把握,可以使用上下文,比如總的磁碟空間或掛載位置,然後與下列命令結合使用。以本文為例,我的驅動器是 /dev/sda2。
為了測試緩沖讀取性能:
sudo hdparm -t /dev/sda2
/dev/sda2:
Timing buffered disk reads: 180 MB in 3.00 seconds = 59.96 MB/sec`
為了測試緩存讀取性能:
sudo hdparm -T /dev/sda2
/dev/sda2:
Timing cached reads: 3364 MB in 2.00 seconds = 1682.75 MB/sec`
無論你使用哪一個,都要多次運行命令,以獲得多個讀數,然後求平均值,以便更准確地了解性能。確保你沒有做可能影響讀數的其他任何操作,比如傳輸文件。
2、Bonnie++
Bonnie++ 是一種自由的實用工具,旨在基準測試文件系統和硬驅性能。它並不直接安裝在大多數發行版上,但是應該出現在核心代碼庫中。可使用下列命令安裝到 Debian 和 Ubuntu上:
sudo apt-get install bonnie++
或者使用這個命令安裝到Fedora、Red Hat或CentOS上:
sudo yum install bonnie++
一旦安裝完畢,運行Bonnie++的最簡單方法就是使用下列命令:
bonnie++ -d /tmp -r 2048 -u [username]
這會在 /tmp 目錄下運行測試(因而測試 /tmp 所在的驅動器的性能),使用的參數表明系統有 2048MB 內存,測試將以[用戶名]的用戶許可權來運行,本文中該用戶是 jleeso。
不確信你的系統上有多少內存?請使用 free –m 命令,在合計欄下查找 Mem。
最後,你會看到逗號分隔的一行,上面是密密麻麻的不同數字。這些就是你的結果。比例:
1.96,1.96,ubuntu,1,1378913658,4G,,786,99,17094,3,15431,3,4662,91,37881,4,548.4,17,16,,,,,142,0,+++++,+++,+++++,+++,+++++,+++,+++++,+++,+++++,+++,16569us,15704ms,2485ms,51815us,491ms,261ms,291us,400us,710us,382us,42us,787us
拷貝它,輸入下面這個命令:
echo "[粘貼你的結果]" | bon_csv2html > /tmp/t
3. linux測試網速的工具
1、fast
是Netflix提供的一項服務,它不僅可以通過命令行來使用,而且可以直接在Web端使用:fast.com,我們可以通過以下命令來安裝這個工具:
$ npm install --global fast-cli
不管是網頁端還是命令行,它都提供了最基本的網路下載測速。命令行下最簡單的使用方法如下:
$ fast
93 Mbps ↓
從以上結果可以看出,直接使用fast命令的話,將只返回網路下載速度。如果你也想獲取網路的上傳速度,則需要使用-u選項。
$ fast -u
⠧ 81 Mbps ↓ / 8.3 Mbps ↑
2、speedtest
是一個更加知名的工具。它是用Python寫成的,可以使用apt或pip命令來安裝。你可以在命令行下使用,也可以直接將其導入到你的 Python
項目,使用的時候,可以直接運行speedtest命令即可:
$ speedtest
Retrieving speedtest.net configuration...
Testing from Tencent cloud computing (140.143.139.14)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Henan CMCC 5G (Zhengzhou) [9.69 km]: 28.288 ms
Testing download
speed................................................................................
Download: 56.20 Mbit/s
Testing upload
speed......................................................................................................
Upload: 1.03 Mbit/s
從運行結果可以看出,speedtest命令將直接提供上傳/下載速率,測試的過程也是挺快的。你可以編寫一個腳本來調用這個命令,然後定期進行網路測試,並在結果保存在一個文件或資料庫,這樣你就可以實時跟蹤你的網路狀態。
3、iperf
是一個網路性能測試工具,它可以測試TCP和UDP帶寬質量,可以測量最大TCP帶寬,具有多種參數和UDP特性,可以報告帶寬,延遲抖動和數據包丟失。利用iperf這一特性,可以用來測試一些網路設備如路由器,防火牆,交換機等的性能。
這個工具不僅僅在Linux系統下可以用,在Mac和Windows系統同樣可以使用。
如果你想測試網路帶寬,則需要兩台電腦。這兩台電腦需要處於同樣的網路,一台作為服務機,另一台作為客戶機,並且二者必須都要安裝
iPerf,可以通過如下命令獲取伺服器的IP地址:
$ ip addr show | grep inet.*brd
inet 192.168.242.128/24 brd 192.168.242.255 scope global dynamic
noprefixroute ens33
之後,我們再在服務機上啟動iperf工具:
$ iperf -s
然後,我們就可以等待客戶機的接入了。客戶機可以使用以下命令來連上服務機:
$ iperf -c 192.168.242.128
通過幾秒鍾的測試,它就會返回網路傳輸速率及帶寬。
4. 如何測試兩台linux伺服器之間的連接速度有什麼命令或軟體可以做到詳細些。
iperf,具體要纖細直接去看文檔,
簡單給你列條測試:(TCP和UDP知只是兩種傳輸數據的協議)
1)TCP測試
伺服器執行:./iperf -s -i 1 -w 1M '這裏是指定windows如果是 iperf -s則windwos默認大小為8kbyte/s
客戶端執行:./iperf -c host -i 1 -w 1M 其中-w表示TCP window size,host需替換成伺服器地址。
2)UDP測試
伺服器執行:./iperf -u -s
客戶端執行:./iperf -u -c 10.255.255.251 -b 900M -i 1 -w 1M -t 60 其中-b表示使用多少帶寬,1G的線路你可以使用900M進行測試。
不給分不給力
5. linux 怎麼測試網路是否正常
在 Linux 系統下面,也可以使用 ping 命令來測試網路是否連通。例如:在 $ 狀態下,輸入:ping 192.168.1.1,看看返回的信息是否為 Reply From 192.168.1.1?如果是的話,那麼網路肯定是通的;但是反過來就不一定了,如果對方的機器上關閉了 ping 服務的話,即使網路的物理連接是連通的,你也不能夠只是通過一個 ping 命令就斷言網路肯定不通,你還需要通過別的手段再進一步檢測網路的連通性。
6. linux 如何檢測網路狀況
linux查看網路鏈接狀況命令
netstat 參數如下:
-a
顯示所有socket,包括正在監聽的。
-c 每隔1秒就重新顯示一遍,直到用戶中斷它。
-i 顯示所有網路介面的信息,格式同「ifconfig -e」。
-n 以網路IP地址代替名稱,顯示出網路連接情形。
-r 顯示核心路由表,格式同「route -e」。
-t 顯示TCP協議的連接情況。
-u 顯示UDP協議的連接情況。
-v 顯示正在進行的工作。
1. netstat -an | grep LISTEN
0.0.0.0的就是每個IP都有的服務,寫明哪個IP的就是綁定那個IP的服務。
2. netstat -tln
用來查看linux的埠使用情況
3. /etc/init.d/vsftp start
是用來啟動ftp埠~!
4. netstat
查看已經連接的服務埠(ESTABLISHED)
5. netstat -a
查看所有的服務埠(LISTEN,ESTABLISHED)
6. sudo netstat -ap
查看所有的服務埠並顯示對應的服務程序名
7. nmap <掃描類型><掃描參數>
例如:
nmap localhost
nmap -p 1024-65535 localhost
nmap -PT 192.168.1.127-245
當我們使用netstat
-apn查看網路連接的時候,會發現很多類似下面的內容:
Proto Recv-Q Send-Q Local Address
Foreign Address State PID/Program name
tcp 0 52 218.104.81.152:7710
211.100.39.250:29488 ESTABLISHED 6111/1
顯示這台伺服器開放了7710埠,那麼這個埠屬於哪個程序呢?
我們可以使用lsof -i :7710命令來查詢:
COMMAND PID USER FD TYPE DEVICE SIZE
NODE NAME
sshd 1990 root 3u IPv4 4836 TCP *:7710
(LISTEN) 54com.cn
這樣,我們就知道了7710埠是屬於sshd程序的。