无码人妻精品一区二区三区9厂-国产精品人人做人人爽人人添-在线永久免费观看黄网站-国产精品久久久久一区二区三区

中國自動化學會專家咨詢工作委員會指定宣傳媒體
新聞詳情

5個千兆網口,將有什么樣高速網絡傳輸體驗?——米爾MYD-J1028X開發板實測分享

http://www.gjzbw99.com 2022-11-18 10:40 來源:米爾

  視頻搶先看↓↓↓

  01本次測試的主角

  米爾MYD-J1028X開發板提供了5個超級給力的最高支持千兆網絡接口,具體如下:

  通過查看官方的手冊,也可以詳細了解:

  今天,我們就借助工具,對網絡進行一些實際測試,看看實際效果到底如何。

  02測試前的準備

  首先,說一下我這邊的測試環境:

  1. 米爾MYD-J1028X開發板
  2. MacBookPro筆記本:兩個UB3.0千兆有線網卡
  3. ThinkPad筆記本:內置Intel千兆網卡

  規劃連線如下:

  為了得到最理想的測試速度,筆記本和開發板之間,直接連接,不經過第三方。

  測試的計劃內容包括:

  1. 單網口,http下載速度測試
  2. 單網口,多進程nc并發數據傳輸測試
  3. 多網口,多進程nc并發輸出傳輸測試
  4. 多網口,多進程http下載速度測試
  5. 多機多網口,http下載速度測試

  03測試前先來做“連連看”

  實際連線如下:

  具體的連線關系:

  • 1連接到上級路由器
  • 2留空
  • 3連接到7,即MacBookPro的USB千兆網卡1
  • 4連接到8,即ThinkPad的Intel千兆網卡
  • 5連接到6,即MacBookPro的USB千兆網卡2
  • 9為USB千兆網卡1的USB,連 MacBookPro
  • 10為USB千兆網卡2的USB,連 MacBookPro

  米爾MYD-J1028X開發板系統的各網口地址對應的設備和IP地址信息如下:

  • 1-eno0:192.168.1.237,為上級路由器通過DHCP分配的地址
  • 2-eth1:10.10.11.11
  • 3-eth2:10.10.12.12
  • 4-eth3:10.10.13.13
  • 5-eth4:10.10.14.14

  設置eth1~4的地址使用如下的命令:

  設置完成后,查看設置情況:

  具體結果如下:

  然后,在MacBook Pro上,設置2塊USB千兆網卡對應的IP地址:

  以及ThinkPad的Windows系統中Intel千兆網卡的IP地址:

  然后,在開發板上,檢測能否連通兩臺筆記本上的IP:

  顯示如下表示全部連通:

  在MacBook Pro和ThinkPad上,也用命令檢查一下對應開發板連接網口的IP是否連通正常:

  一切連通妥當,就可以開始準備測試了。

  04安裝調試好要用到的測試工具

  首先,在開發板上,安裝4款軟件:

  • nginx用于提供web服務
  • bmon用于提供網絡情況監測
  • axel用于多線程下載
  • pv實時監控管道數據流量

  為了達到最好的性能,我們需要修改一下nginx的配置,關閉日志,并使用/dev/shm內存文件系統提供文件服務。修改nginx的主配置文件:/etc/nginx/nginx.conf,具體涉及到的設置項如下:

  修改nginx默認站點/etc/nginx/sites-enabled/default 配置:

  修改完成后,就可以啟動nginx了:

  再寫入基本測試內容到/dev/shm/index.html:

  05單網口,http下載速度測試

  現在,我們就可以做一個基本的文件下載測試了:

  1. 在macOS上,使用dd指令,生一個512M的數據文件test.dat,并使用php提供隨手web服務
  2. 在開發板上,使用axel,下載macOS上面的數據文件,保存到/dev/shm內存文件系統
  3. 在macOS上,使用axl下載開發板上的test.dat文件

  從上述結果可以看到,macOS上php提供的隨手web服務,不支持多線程下載,但單線程下載速度,能達到89.1MB/s而在開發板上,nginx提供的web服務,支持多線程下載,3個線程,下載速度可以達到91.9MB/s 下載都正常后,現在試用bmon指令,監控實時網絡速度:

  具體指令如下:

  1. 開發板:bmon -bp eth2
  2. macOS:axel -a -n 10 http://10.10.12.12/test.dat

  經過多次下載,最高帶寬可以達到975.65MBits/s,速度相當可以。

  06單網口,多進程nc并發數據傳輸測試

  上面測試的相互下載的速度,下面再測試一下,通過nc命令,往開發板上傳送數據的情況。

  上述命令,表示從macOS上的/dev/random生成隨機數據,然后使用nc,通過網絡,發送到開發板的/dev/null空設備中去。這樣做的好處是,不操作io設備,性能不受其他原因影響,而且數據隨機,寫入到/dev/null也永遠寫不滿,不占用實際磁盤空間。你甚至可以讓它自己跑三天三夜,看看網絡是否穩定。 下面是實際測試的結果:

  我用了三個nc通道,并行進行數據的傳輸。最高傳輸帶寬,可以達到940.62MBits/s,速度還是非常理想的。

  07多網口,多進程nc并發輸出傳輸測試

  之前測試的是針對一個網口的測試,現在測試同時對eth2、eth4進行數據傳輸測試:

  先啟動四個nc數據傳輸進程:

  針對eth2、eth4的連接,各起兩個,注意要確保對應關系。然后,通過bmon查看當前網絡帶寬情況:

  合并起來的最高帶寬,為870MBits/s。

  再看一下開發板的負載情況和macOS的負載情況:

  可以看到,開發板上跑了4個接收進程,CPU并未占滿。

  而macOS上跑了4個發送進程,結果把CPU都拉得滿滿的。

  08多網口,多進程http下載速度測試

  上面是使用nc進行數據傳輸,下面我們再使用axel通過nginx下載數據,看看帶寬使用情況如何。

  上面的過程,是現在開發板上,使用dd生成一個728M大小的測試文件。

  然后在macOS上面,針對不同網口的ip,進行http下載測試。測試過程中,再次通過bmon查看當前網絡帶寬情況:

  這次的網絡帶寬使用更加充分,合并計算,可以達到1000MBits/s了。

  在測試過程中,我們也在看一下系統負載情況:

  開發板上的nginx跑滿了一個cpu,而macOS上的cpu則都跑滿了。

  09多機多網口,http下載速度測試

  現在要試一下,同時在macOS和Windows下載情況如何。先到ThinkPad的windows系統,使用curl命令,開兩個進程下載測試,結果如下:

  合并的結果,能達到90MB/s。

  然后,在macOS上面,分別使用cur從連接的兩個網卡的ip下載數據,在windows上面,同樣開兩個curl進程下載:

  測試過程中, 可以看到,多個網口同時使用,帶寬的使用,將更加的充分。

  總的來說,米爾MYD-J1028X開發板的千兆網絡接口,非常的給力,在高速網絡通信中,是強有力的保證。

版權所有 工控網 Copyright?2025 Gkong.com, All Rights Reserved