初探網路效能測試

2021-07-11 04:23:13 字數 2445 閱讀 3055

最近對雲主機進行效能測試,第一次涉及到了網路方面的效能測試,其實不能算是一次很全面的網路效能方面的效能測試,只是針對不同的測試目標進行了測試,在這期間,了解了網路效能測試需要掌握的效能指標、測試工具、功能選型和對比等。下面一一介紹下:

常見的網路效能測試指標包含:網路吞吐量(throughput)、網路延遲(latency)、抖動(jitter)、丟包率等

網路吞吐量:單位時間內通過某個網路(或通道、介面)的資料量,吞吐量受網路的頻寬或者網路的額定速率限制的,例如家庭頻寬為10m網路,表明網路吞吐量不可能超過10mbits/s,吞吐量的單位通常表示為位元每秒(bit/s或bps)。

網路延遲:通俗的講,就是資料從電腦這邊傳到那邊所用的時間。這兒有個問題需要確認,資料是指乙個資料報的傳輸還是任意大小,和你傳輸的資料量相關。可以明顯的看到,從a到b傳送1個位元組的時間和傳送100mb的時間肯定是不一樣的。標準意義上的延遲,應該僅僅指1個位元組的傳輸時間,類似網路課上講到的傳播時延。(不同意見歡迎討論)。同樣存在乙個名詞叫做傳播延時

,這個應該可以標識整個資料報的傳輸時間,不論包大小為多少。

抖動:用於描述包在網路中的傳輸延時的變化,抖動越小,說明網路質量越穩定越好。抖動是評價乙個網路效能的最重要的因素。

丟包率:測試中所丟失的資料報數量佔所傳送的資料報的比率,因為我們知道tcp協議是可靠的,所以,一般在使用udp傳輸時,才會統計丟包率。

大家熟知的,常用的開源網路效能測試工具有兩個:iperf 和 netperf,這兩種工具都是可以測試tcp協議和udp協議的,從可測試的網路效能指標,我們對兩種工具進行下對比:

可測試的網路效能指標

工具

吞吐量

網路延時

抖動

丟包

其他

iperf是是

否是netperf是是

是是重傳、cpu利用率、延時分布等

可見,iperf也可以完成基本的網路效能測試,但是工具比netperf要略差些,我們測試過程中,選用的工具為netperf,下面對netperf進行下詳細介紹:

安裝:netperf的安裝可以找sa部署,但是sa安裝的版本時2.4版本,很多功能沒有實現,可以自己make安裝netperf 2.6版本,是目前為止最新的版本。

基本命令:netperf -h hostname -l testtime: 例如 netperf -h 172.0.0.2 -l 60,表示傳送到172.0.0.2(這台機器上需要啟動netserver程序),傳送時間為60s,預設的傳送方式為tcp stream方式。

傳送方式:netperf 可以支援多種不同的傳送方式,通過-t引數指定:

tcp_stream、udp_stream模式:即不停往傳送方傳送資料,可以通過-m 引數指定傳送資料的大小,預設大小為socket size。

tcp_rr模式:即request、response模式,類似模擬http請求、資料庫請求等,預設大小request size 和 response size 均為1byte,可以通過 -r 64,32k 設定 

request、response size。

統計資料:預設得到的資料只有傳輸時間和吞吐量等,可以通過-k 引數設定要顯示的結果資料:

min_latency,max_latency,mean_latency,p50_latency,p90_latency:可以得到延遲相關的統計資料,延遲最大最小值、平均延遲,延遲50、70、90、99值等。

stddev_latency:延遲標準差,可以通過該值反應網路的抖動情況

throughput:兩台機器之間當前的吞吐量

local_cpu_util,remote_cpu_util:傳送方和接收方的cpu使用率

request_size,response_size:rr模式時,

request、response size

local_transport_retrans:重傳次數

通過上面對netperf命令的描述,可以看到該工具基本可以測試得到所有網路效能方面的指標,但是netperf、iperf這種工具可能更適合作為一種基準工具,進行壓力測試,作為負載測試工具還不是很合適,測試過程中,可以通過-b -w的引數制定傳送資料報個數和傳送間隔,但是不能從根本上限制網路吞吐量僅佔網路頻寬的50%等情況。

「基準測試工具可能僅適用於一些基本效能指標的測試,並不算乙個完善的測試工具」 —— 霞姐~

關於網路效能測試的基本內容介紹完了,如果疑問歡迎聯絡我,我們一起**~

初探網路效能測試

最近對雲主機進行效能測試,第一次涉及到了網路方面的效能測試,其實不能算是一次很全面的網路效能方面的效能測試,只是針對不同的測試目標進行了測試,在這期間,了解了網路效能測試需要掌握的效能指標 測試工具 功能選型和對比等。下面一一介紹下 常見的網路效能測試指標包含 網路吞吐量 throughput 網路...

Android 效能測試初探(二)

書接前文 android 效能測試初探 一 上回大體介紹了下在 android 端的效能測試項,現在我們就細節測試項做一些闡述 包括如何自己 diy 測試 首先我們來說說啟動時間。關於應用的啟動時間的測試,分為三類 1.首次啟動 應用首次啟動所花費的時間 2.非首次啟動 應用非首次啟動所花費的時間 ...

網路效能測試

一 簡介 二 術語 1 網路吞吐量 單位時間內通過某個網路 或通道 介面 的資料量,吞吐量受網路的頻寬或者網路的額定速率限制的,例如家庭頻寬為10m網路,表明網路吞吐量不可能超過10mbits s,吞吐量的單位通常表示為位元每秒 bit s或bps 2 網路延遲 通俗的講,就是資料從電腦這邊傳到那邊...