效能測試工具iperf驗證SDN網路

2021-10-04 22:01:18 字數 2987 閱讀 1222

網路效能測試主要是監測網路頻寬的使用率,將網路頻寬利用最大化是保證網路效能的基礎,但是由於網路設計不合理、網路存在安全漏洞等原因,都會導致網路頻寬利用率不高。要找到網路頻寬利用率不高的原因,就需要對網路傳輸進行監控,此時就需要用到一些網路效能測試工具,而iperf就是這樣一款網路頻寬測試工具

在sdn網路環境中,使用iperf測試資料層面兩台相互通訊的虛擬機器之間的tcp和udp頻寬質量,提供網路延遲抖動、資料報丟失率等統計資訊。

1. 搭建環境

建立支援openflow1.3協議的mininet虛擬機器和opendaylight lithium版本虛擬機器,啟動實驗和虛擬機器。注意:為保證正常執行,記憶體至少選擇4g;cpu最好選擇2核或4核,方便後面的多執行緒測試。而我在這一步的時候選擇了1核cpu,前期的實驗並不影響,後期在多執行緒測試的時候我將再建立乙個2核的虛擬機器進行實驗,所以為了避免麻煩,請大家在選擇cpu核心的時候選2核或4核。

2. 確保虛擬機器間能相互通訊

確定兩台虛擬機器ip:

ifconfig
確保虛擬機器間能相互通訊:

3. 測試單執行緒tcp吞吐量

步驟1:通過iperf測試網路頻寬利用率

分別在虛擬機器odl和虛擬機器mininet安裝iperf,安裝命令

apt-get install iperf
將虛擬機器mininet作為伺服器端,虛擬機器odl作為客戶端,進行頻寬測試,測試結果如下:

可以看到iperf預設的執行時間在10秒左右,網絡卡的頻寬速率911mbits/sec。

步驟2:新增「-t」和「-i」引數後的iperf輸出

要改變iperf執行的時間和輸出頻率,可以通過「-t」和「-i」引數來實現。

可以看到傳輸時間為30秒,輸出頻率為5秒的結果。頻寬仍然儲存在900mbits/sec左右。

步驟3:iperf客戶端通過「-n」引數指定要傳輸的資料量

為了模擬大量的資料傳輸,也可以指定要傳送的資料量,這可以通過**「-n」**引數來實現。在指定「-n」引數後,「-t」引數失效,iperf在傳輸完畢指定大小的資料報後,自動結束。

4. 測試多執行緒tcp吞吐量

採用多執行緒不會提高程式的執行速度,反而會降低速度,但是對於使用者來說,可以減少使用者的響應時間理論上多執行緒的傳輸效能應該比單執行緒的要好,但是也受具體的網路環境影響。

5.測試udp丟包和延遲

iperf也可以用於udp資料報吞吐量、丟包率和延遲指標,但是由於udp協議是乙個非面向連線的輕量級傳輸協議,並且不提供可靠的資料傳輸服務,因此,對udp應用的關注點不是傳輸資料有多快,而是它的丟包率和延時指標。通過iperf的「-u」引數即可測試udp應用的傳輸效能,這裡測試iperf客戶端傳輸100m的udp資料報。

先聯通服務端:

了解更詳細的udp丟包和延時資訊,可以在iperf服務端檢視,因為在客戶端執行傳輸測試的同時,服務端也會同時顯示傳輸狀態.

「jitter」列表示抖動時間,也稱為傳輸延遲,「lost/total datagrams」列表示丟失的資料報和資料報數量,0.0059%是平均丟包率。

6.在mininet中使用iperf功能

步驟1:建立拓撲

sudo mn --topo single,5 --

switch ovsk --controller=remote,ip=30.0.1.4,port=6633

pingall驗證連通正常

步驟2:測試拓撲中主機間的頻寬情況

在一台host上跑iperf伺服器,另一台host上跑iperf客戶端,檢視頻寬情況。

網路效能測試工具 Iperf

iperf 是乙個網路效能測試工具。iperf可以測試tcp和udp頻寬質量。iperf可以測量最大tcp頻寬,具有多種引數和udp特性。iperf可以報告頻寬,延遲抖動和資料報丟失。iperf使用方法與引數說明 引數說明 s 以server模式啟動,eg iperf s c host以client...

iperf 網路效能測試工具

iperf命令是乙個網路效能測試工具。iperf可以測試tcp和udp頻寬質量。iperf可以測量最大tcp頻寬,具有多種引數和udp特性。iperf可以報告頻寬,延遲抖動和資料報丟失。利用iperf這一特性,可以用來測試一些網路裝置如路由器,防火牆,交換機等的效能。iperf分為兩種版本,unix...

IPerf網路效能測試工具

最近專案中需要iperf的工具,因此實施調研了一下。iperf可以測試tcp以及udp協議下的一些網路效能,如頻寬 丟包率等。通過這個過程,我好像深刻明白了docker的意義。本身我自己是開了兩個虛擬機器,進行相關的網路效能的測試,但是呢,我的本子太太太差勁了,開了兩個虛擬機器,就要炸。在別人的建議...