加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

logo

logo

有事離開?不用擔(dān)心

掃一掃繼續(xù)用手機(jī)看

微信掃碼
不再提醒
  • 點(diǎn)贊
  • 評論
  • 分享
相關(guān)視訊
  • 視訊介紹
    • 本次測試的主角
    • 測試前的準(zhǔn)備
    • 測試前先來做“連連看”
    • 安裝調(diào)試好要用到的測試工具
    • 單網(wǎng)口,http下載速度測試
    • 單網(wǎng)口,多進(jìn)程nc并發(fā)數(shù)據(jù)傳輸測試
    • 多網(wǎng)口,多進(jìn)程nc并發(fā)輸出傳輸測試
    • 多網(wǎng)口,多進(jìn)程http下載速度測試
    • 多機(jī)多網(wǎng)口,http下載速度測試
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

5個(gè)千兆網(wǎng)口,將有什么樣高速網(wǎng)絡(luò)傳輸體驗(yàn)?

2022/11/18
1825
閱讀需 13 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

本篇測評由電子工程世界的優(yōu)秀測評者“HonestQiao ”提供。此次的板卡測試,是米爾MYD-J1028X開發(fā)板的高速網(wǎng)絡(luò)數(shù)據(jù)傳輸測試體驗(yàn)。

本次測試的主角

米爾MYD-J1028X開發(fā)板提供了5個(gè)超級給力的最高支持千兆網(wǎng)絡(luò)接口,具體如下:

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

今天,我們就借助工具,對網(wǎng)絡(luò)進(jìn)行一些實(shí)際測試,看看實(shí)際效果到底如何。

測試前的準(zhǔn)備

首先,說一下我這邊的測試環(huán)境:

1. 米爾MYD-J1028X開發(fā)板

2. MacBookPro筆記本:兩個(gè)UB3.0千兆有線網(wǎng)卡

3. ThinkPad筆記本:內(nèi)置Intel千兆網(wǎng)卡

規(guī)劃連線如下:

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

測試的計(jì)劃內(nèi)容包括:

單網(wǎng)口,http下載速度測試

單網(wǎng)口,多進(jìn)程nc并發(fā)數(shù)據(jù)傳輸測試

多網(wǎng)口,多進(jìn)程nc并發(fā)輸出傳輸測試

多網(wǎng)口,多進(jìn)程http下載速度測試

多機(jī)多網(wǎng)口,http下載速度測試

測試前先來做“連連看”

實(shí)際連線如下:

具體的連線關(guān)系:

1連接到上級路由器

2留空

3連接到7,即MacBookPro的USB千兆網(wǎng)卡1

4連接到8,即ThinkPad的Intel千兆網(wǎng)卡

5連接到6,即MacBookPro的USB千兆網(wǎng)卡2

9為USB千兆網(wǎng)卡1的USB,連 MacBookPro

10為USB千兆網(wǎng)卡2的USB,連 MacBookPro

米爾MYD-J1028X開發(fā)板系統(tǒng)的各網(wǎng)口地址對應(yīng)的設(shè)備和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

設(shè)置eth1~4的地址使用如下的命令:

  • sudo ifconfig eth1 10.10.11.11 netmask 255.255.255.0
  • sudo ifconfig eth2 10.10.12.12 netmask 255.255.255.0
  • sudo ifconfig eth3 10.10.13.13 netmask 255.255.255.0
  • sudo ifconfig eth4 10.10.14.14 netmask 255.255.255.0

設(shè)置完成后,查看設(shè)置情況:

ifconfig | grep -E 'eth[1-4]' -A1

具體結(jié)果如下:

然后,在MacBook Pro上,設(shè)置2塊USB千兆網(wǎng)卡對應(yīng)的IP地址:

以及ThinkPad的Windows系統(tǒng)中Intel千兆網(wǎng)卡的IP地址:

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

  • ping 10.10.12.102 -c 1
  • ping 10.10.13.103 -c 1
  • ping 10.10.14.104 -c 1

顯示如下表示全部連通:

在MacBook Pro和ThinkPad上,也用命令檢查一下對應(yīng)開發(fā)板連接網(wǎng)口的IP是否連通正常:

一切連通妥當(dāng),就可以開始準(zhǔn)備測試了。

安裝調(diào)試好要用到的測試工具

首先,在開發(fā)板上,安裝4款軟件

  • sudo apt install nginx
  • sudo apt install bmon
  • sudo apt install axel
  • sudo apt install pv

nginx用于提供web服務(wù)

bmon用于提供網(wǎng)絡(luò)情況監(jiān)測

axel用于多線程下載

pv實(shí)時(shí)監(jiān)控管道數(shù)據(jù)流量

為了達(dá)到最好的性能,我們需要修改一下nginx的配置,關(guān)閉日志,并使用/dev/shm內(nèi)存文件系統(tǒng)提供文件服務(wù)。

修改nginx的主配置文件:/etc/nginx/nginx.conf,具體涉及到的設(shè)置項(xiàng)如下:

user www-data;

worker_processes auto;

worker_cpu_affinity auto 11;

pid /run/nginx.pid;

include /etc/nginx/modules-enabled/*.conf;

events {

worker_connections 1024;

# multi_accept on;

}

http {

#...

keepalive_requests 100000;

#...

access_log off;

#access_log /var/log/nginx/access.log;

#error_log /var/log/nginx/error.log;

error_log /dev/null;

#...

}

修改nginx默認(rèn)站點(diǎn)/etc/nginx/sites-enabled/default 配置:

#root /var/www/html;

root /dev/shm;

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

再寫入基本測試內(nèi)容到/dev/shm/index.html:

  • echo hello > /dev/shm/index.html
  • curl http://10.10.12.12/
  • # 應(yīng)返回 hello

單網(wǎng)口,http下載速度測試

現(xiàn)在,我們就可以做一個(gè)基本的文件下載測試了:

在macOS上,使用dd指令,生一個(gè)512M的數(shù)據(jù)文件test.dat,并使用php提供隨手web服務(wù)

在開發(fā)板上,使用axel,下載macOS上面的數(shù)據(jù)文件,保存到/dev/shm內(nèi)存文件系統(tǒng)

在macOS上,使用axl下載開發(fā)板上的test.dat文件

從上述結(jié)果可以看到,macOS上php提供的隨手web服務(wù),不支持多線程下載,但單線程下載速度,能達(dá)到89.1MB/s

而在開發(fā)板上,nginx提供的web服務(wù),支持多線程下載,3個(gè)線程,下載速度可以達(dá)到91.9MB/s

下載都正常后,現(xiàn)在試用bmon指令,監(jiān)控實(shí)時(shí)網(wǎng)絡(luò)速度:

具體指令如下:

開發(fā)板:bmon -bp eth2

macOS:axel -a -n 10 http://10.10.12.12/test.dat

經(jīng)過多次下載,最高帶寬可以達(dá)到975.65MBits/s,速度相當(dāng)可以。

單網(wǎng)口,多進(jìn)程nc并發(fā)數(shù)據(jù)傳輸測試

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

  • # macOS執(zhí)行:分別在三個(gè)窗口執(zhí)行
  • pv /dev/random | nc -l 10.10.12.102 2345
  • pv /dev/random | nc -l 10.10.12.102 2346
  • pv /dev/random | nc -l 10.10.12.102 2347
  • # 開發(fā)板執(zhí)行:分別在三個(gè)終端執(zhí)行
  • sudo nc 10.10.12.102 2345 > /dev/null
  • sudo nc 10.10.12.102 2346 > /dev/null
  • sudo nc 10.10.12.102 2347 > /dev/null

上述命令,表示從macOS上的/dev/random生成隨機(jī)數(shù)據(jù),然后使用nc,通過網(wǎng)絡(luò),發(fā)送到開發(fā)板的/dev/null空設(shè)備中去。

這樣做的好處是,不操作io設(shè)備,性能不受其他原因影響,而且數(shù)據(jù)隨機(jī),寫入到/dev/null也永遠(yuǎn)寫不滿,不占用實(shí)際磁盤空間。

你甚至可以讓它自己跑三天三夜,看看網(wǎng)絡(luò)是否穩(wěn)定。

下面是實(shí)際測試的結(jié)果:

我用了三個(gè)nc通道,并行進(jìn)行數(shù)據(jù)的傳輸。最高傳輸帶寬,可以達(dá)到940.62MBits/s,速度還是非常理想的。

多網(wǎng)口,多進(jìn)程nc并發(fā)輸出傳輸測試

之前測試的是針對一個(gè)網(wǎng)口的測試,現(xiàn)在測試同時(shí)對eth2、eth4進(jìn)行數(shù)據(jù)傳輸測試:

先啟動四個(gè)nc數(shù)據(jù)傳輸進(jìn)程:

針對eth2、eth4的連接,各起兩個(gè),注意要確保對應(yīng)關(guān)系。

然后,通過bmon查看當(dāng)前網(wǎng)絡(luò)帶寬情況:

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

再看一下開發(fā)板的負(fù)載情況和macOS的負(fù)載情況:

可以看到,開發(fā)板上跑了4個(gè)接收進(jìn)程,CPU并未占滿。

而macOS上跑了4個(gè)發(fā)送進(jìn)程,結(jié)果把CPU都拉得滿滿的。

多網(wǎng)口,多進(jìn)程http下載速度測試

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

上面的過程,是現(xiàn)在開發(fā)板上,使用dd生成一個(gè)728M大小的測試文件。

然后在macOS上面,針對不同網(wǎng)口的ip,進(jìn)行http下載測試。

測試過程中,再次通過bmon查看當(dāng)前網(wǎng)絡(luò)帶寬情況:

這次的網(wǎng)絡(luò)帶寬使用更加充分,合并計(jì)算,可以達(dá)到1000MBits/s了。

在測試過程中,我們也在看一下系統(tǒng)負(fù)載情況:

開發(fā)板上的nginx跑滿了一個(gè)cpu,而macOS上的cpu則都跑滿了。

多機(jī)多網(wǎng)口,http下載速度測試

現(xiàn)在要試一下,同時(shí)在macOS和Windows下載情況如何。
先到ThinkPad的windows系統(tǒng),使用curl命令,開兩個(gè)進(jìn)程下載測試,結(jié)果如下:

合并的結(jié)果,能達(dá)到90MB/s。

然后,在macOS上面,分別使用cur從連接的兩個(gè)網(wǎng)卡的ip下載數(shù)據(jù),在windows上面,同樣開兩個(gè)curl進(jìn)程下載:

  • # macOS執(zhí)行:開兩個(gè)命令行執(zhí)行
  • curl -o test1.dat http://10.10.12.12/test.dat
  • curl -o test2.dat http://10.10.14.14/test.dat
  • # windows執(zhí)行:開兩個(gè)命令行執(zhí)行
  • curl -o test3.dat http://10.10.13.13/test.dat
  • curl -o test4.dat http://10.10.13.13/test.dat

測試過程中, 可以看到,多個(gè)網(wǎng)口同時(shí)使用,帶寬的使用,將更加的充分。

總的來說,米爾MYD-J1028X開發(fā)板的千兆網(wǎng)絡(luò)接口,非常的給力,在高速網(wǎng)絡(luò)通信中,是強(qiáng)有力的保證。

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險(xiǎn)等級 參考價(jià)格 更多信息
RCNL25R0F05R0KTT 1 American Technical Ceramics Corp RC Network
暫無數(shù)據(jù) 查看
08-50-0105 1 Molex Wire Terminal, ROHS AND REACH COMPLIANT
$0.05 查看
FI-X30SSLA-HF-R2500 1 Japan Aviation Electronics Industry Limited Card Edge Connector, 30 Contact(s), 1 Row(s), Female, Right Angle, 0.039 inch Pitch, Surface Mount Terminal, Locking, Black Insulator, LEAD FREE

ECAD模型

下載ECAD模型
$13.31 查看
米爾科技

米爾科技

米爾電子,是一家專注于嵌入式處理器模組設(shè)計(jì)、研發(fā)、生產(chǎn)和銷售于一體的國家級高新技術(shù)企業(yè),也被評為專精特新企業(yè)。米爾電子深耕嵌入式領(lǐng)域10多年,致力于為企業(yè)級客戶提供基于ARM、FPGA、RISC-V和AI等各種架構(gòu),穩(wěn)定可靠的處理器模組,滿足客戶大批量產(chǎn)品應(yīng)用部署的需求,同時(shí)為客戶提供產(chǎn)品定制設(shè)計(jì)、行業(yè)應(yīng)用解決方案和OEM的一站式服務(wù)。

米爾電子,是一家專注于嵌入式處理器模組設(shè)計(jì)、研發(fā)、生產(chǎn)和銷售于一體的國家級高新技術(shù)企業(yè),也被評為專精特新企業(yè)。米爾電子深耕嵌入式領(lǐng)域10多年,致力于為企業(yè)級客戶提供基于ARM、FPGA、RISC-V和AI等各種架構(gòu),穩(wěn)定可靠的處理器模組,滿足客戶大批量產(chǎn)品應(yīng)用部署的需求,同時(shí)為客戶提供產(chǎn)品定制設(shè)計(jì)、行業(yè)應(yīng)用解決方案和OEM的一站式服務(wù)。 收起

查看更多

相關(guān)推薦

電子產(chǎn)業(yè)圖譜

米爾電子,是一家專注于嵌入式處理器模組設(shè)計(jì)、研發(fā)、生產(chǎn)和銷售于一體的國家級高新技術(shù)企業(yè),也被評為專精特新企業(yè)。米爾電子深耕嵌入式領(lǐng)域10多年,致力于為企業(yè)級客戶提供基于ARM、FPGA、RISC-V和AI等各種架構(gòu),穩(wěn)定可靠的處理器模組,滿足客戶大批量產(chǎn)品應(yīng)用部署的需求,同時(shí)為客戶提供產(chǎn)品定制設(shè)計(jì)、行業(yè)應(yīng)用解決方案和OEM的一站式服務(wù)。 米爾英文簡稱“MYIR”,是“Make Your Idea Real”第一個(gè)大寫字母的縮寫。我們的理念是“專業(yè)服務(wù)助力客戶成功”,目前米爾已通過專業(yè)高效的服務(wù),幫助全球數(shù)萬家企業(yè)的產(chǎn)品成功上市。