網(wǎng)絡(luò)的基本目的是有效地共享資源。利用可靠的網(wǎng)絡(luò)測(cè)試工具建立定期的網(wǎng)絡(luò)測(cè)試對(duì)于:了解網(wǎng)絡(luò)的狀態(tài)、確保配置更改按預(yù)期工作、檢測(cè)癱瘓網(wǎng)絡(luò)攻擊、提供一流的終端用戶體驗(yàn)。那么網(wǎng)絡(luò)性能也是非常關(guān)鍵的。只要是需要快速而且大量的網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)膽?yīng)用都可以作為網(wǎng)絡(luò)性能基準(zhǔn)測(cè)試工具,可以是專門用于測(cè)試網(wǎng)絡(luò)帶寬的Netperf、Iperf等,也可以是常用的Linux上的文件傳輸工具SCP。下面簡(jiǎn)單介紹幾種常用的網(wǎng)絡(luò)性能測(cè)試工具。
1. Netperf
Netperf可以測(cè)試網(wǎng)絡(luò)性能的多個(gè)方面,主要包括使用TCP、UDP等協(xié)議的單向批量數(shù)據(jù)傳輸模式和請(qǐng)求-響應(yīng)模式的傳輸性能。Netperf主要測(cè)試的項(xiàng)目包括:使用BSD Sockets的TCP和UDP連接(IPv4和IPv6)、使用DLPI接口的鏈路級(jí)別的數(shù)據(jù)傳輸、Unix Domain Socket、SCTP協(xié)議的連接(IPv4和IPv6)。下載鏈接:https://github.com/HewlettPackard/netperf。
Netperf采用客戶機(jī)/服務(wù)器(Client/Server)的工作模式:服務(wù)端是netserver,用來偵聽來自客戶端的連接,客戶端是netperf,用來向服務(wù)端發(fā)起網(wǎng)絡(luò)測(cè)試。在客戶端與服務(wù)端之間,首先建立一個(gè)控制連接,用于傳遞有關(guān)測(cè)試配置的信息和測(cè)試完成后的結(jié)果;在控制連接建立并傳遞了測(cè)試配置信息以后,客戶端與服務(wù)端之間會(huì)另外再建立一個(gè)測(cè)試數(shù)據(jù)連接,用來傳遞指定測(cè)試模式的所有數(shù)據(jù);當(dāng)測(cè)試完成后數(shù)據(jù)連接就斷開,控制連接會(huì)收集好客戶端和服務(wù)端的測(cè)試結(jié)果,然后讓客戶端展示給用戶。
可以測(cè)試以下幾種模式的TCP核UDP網(wǎng)絡(luò)性能:
TCP_STREAM: client端向server端發(fā)送批量TCP數(shù)據(jù)
UDP_STREAM:client端向server端發(fā)送批量UDP數(shù)據(jù)
TCP_RR和TCP_CRR:前者是在同一個(gè)連接中進(jìn)行多次request和response請(qǐng)求,后者是每次請(qǐng)求新建一個(gè)連接(HTTP)
UDP_RR:使用UDP進(jìn)行request和response請(qǐng)求
2. Iperf3
iperf3 的主要開發(fā)在 CentOS Linux、FreeBSD 和 macOS 上進(jìn)行。iperf 系列工具執(zhí)行主動(dòng)測(cè)量以確定 IP 網(wǎng)絡(luò)上可實(shí)現(xiàn)的最大帶寬。它支持調(diào)整與時(shí)序、協(xié)議和緩沖區(qū)相關(guān)的各種參數(shù)。對(duì)于每個(gè)測(cè)試,它都會(huì)報(bào)告測(cè)量的吞吐量、損耗和其他參數(shù)。下載鏈接:https://downloads.es.net/pub/iperf/iperf-3.11.tar.gz。
iperf3 是一個(gè)從頭開始的新實(shí)現(xiàn),目標(biāo)是更小、更簡(jiǎn)單的代碼庫(kù),以及可在其他程序中使用的功能的庫(kù)版本。iperf3 還集成了其他工具(例如 nuttcp 和 netperf)中的許多功能,但原始 iperf 中缺少這些功能。例如,這些包括零復(fù)制模式和可選的 JSON 輸出。請(qǐng)注意,iperf3與原始 iperf不向后兼容。
簡(jiǎn)單參數(shù)介紹如下:
#常用公共參數(shù)
-i 2 #表示每2秒顯示一次報(bào)告
-w 80k #對(duì)于TCP方式,此設(shè)置為TCP窗口大小。對(duì)于UDP方式,此設(shè)置為接受UDP數(shù)據(jù)包的緩沖區(qū)大小,限制可以接受數(shù)據(jù)包的最大值
-B 192.168.122.1
#綁定到主機(jī)的多個(gè)地址中的一個(gè)。對(duì)于客戶端來說,這個(gè)參數(shù)設(shè)置了出棧接口。對(duì)于服務(wù)器端來說,這個(gè)參數(shù)設(shè)置入棧接口。這個(gè)參數(shù)只用于具有多網(wǎng)絡(luò)接口的主機(jī)。
#在Iperf的UDP模式下,此參數(shù)用于綁 定和加入一個(gè)多播組。使用范圍在224.0.0.0至239.255.255.255的多播地址
#常用客戶端參數(shù)
-b 100m #用于udp測(cè)試時(shí),設(shè)置測(cè)試發(fā)送的帶寬,單位:bit/秒,不設(shè)置時(shí)默認(rèn)為:1Mbit/秒
-c #指定服務(wù)端ip地址
-d #同時(shí)測(cè)試上行和下行
-t 10 #設(shè)置傳輸時(shí)間,為10秒
-P 5 #指定發(fā)起5個(gè)線程
3. SCP
SCP是Linux系統(tǒng)上最常用的遠(yuǎn)程文件復(fù)制程序,它可以作為實(shí)際的應(yīng)用來測(cè)試網(wǎng)絡(luò)傳輸?shù)男省S肧CP遠(yuǎn)程傳輸同等大小的一個(gè)文件,根據(jù)其花費(fèi)時(shí)間的長(zhǎng)短可以粗略評(píng)估出網(wǎng)絡(luò)性能的好壞。
常見參數(shù)如下:
-1:使用ssh協(xié)議版本1;
-2:使用ssh協(xié)議版本2;
-4:使用ipv4;
-6:使用ipv6;
-B:以批處理模式運(yùn)行;
-C:使用壓縮;
-F:指定ssh配置文件;
-l:指定寬帶限制;
-o:指定使用的ssh選項(xiàng);
-P:指定遠(yuǎn)程主機(jī)的端口號(hào);
-p:保留文件的最后修改時(shí)間,最后訪問時(shí)間和權(quán)限模式;
-q:不顯示復(fù)制進(jìn)度;
-r:以遞歸方式復(fù)制。
示例如下:
從遠(yuǎn)處復(fù)制文件到本地目錄,從192.168.1.1機(jī)器上的/home/soft/的目錄中下載nginxtar.gz 文件到本地/root/soft/目錄中。
scp root@192.168.1.1:/home/soft/nginx.tar.gz /root/soft/
上傳本地文件到遠(yuǎn)程機(jī)器指定目錄,復(fù)制本地/root/soft/目錄下的文件nginx.tar.gz到遠(yuǎn)程機(jī)器192.168.1.1的/home/soft/nginx目錄。
scp /root/soft/nginx.tar.gz root@192.168.1.1:/home/soft/ngnix
4. TTCP文章來源:http://www.zghlxwxcb.cn/news/detail-413723.html
TTCP是一個(gè)傳統(tǒng)的測(cè)試TCP性能的工具,它主要測(cè)試兩個(gè)機(jī)器之間TCP的吞吐量,在應(yīng)用層模擬消息傳遞的過程——客戶端發(fā)送一個(gè)包,服務(wù)端對(duì)包進(jìn)行確認(rèn),并且在確認(rèn)之前客戶端不發(fā)送下一個(gè)包。可以設(shè)置發(fā)包的數(shù)量和每個(gè)包的大小,程序計(jì)算傳輸所有包所用的時(shí)間,然后計(jì)算出帶寬。源碼下載:https://sourceforge.net/projects/ttcp/。文章來源地址http://www.zghlxwxcb.cn/news/detail-413723.html
到了這里,關(guān)于網(wǎng)絡(luò)性能測(cè)試工具的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!