一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

研發(fā)干貨 | LS1028A 網(wǎng)絡(luò)應(yīng)用測試

 ARM開發(fā)板 2020-12-10

本文硬件平臺以飛凌嵌入式OK1028A-C開發(fā)板為基礎(chǔ)進行講解,其它LS1028產(chǎn)品,由于各個廠家設(shè)置不同會有所差異,請參考使用。本文檔主要介紹 NXP LS1028A開發(fā)板網(wǎng)絡(luò)中的應(yīng)用測試。包括 DPDK基本環(huán)境測試、 IPSEC基本環(huán)境測試、OpenSSL基本環(huán)境測試、Lighttpd測試、Samba測試。

LS1028A開發(fā)板網(wǎng)絡(luò)應(yīng)用測試

OK1028A-C平臺基于NXP LS1028A處理器設(shè)計,雙核ARM Cortex-A72,主頻最高1.5GHz,板載2GB DDR4 RAM,8GB ROM;原生支持6個Gbit Ethernet,支持TSN的以太網(wǎng)交換機和以太網(wǎng)控制器,可支持融合的IT和OT網(wǎng)絡(luò);

OK1028A-C所采用的CPU屬于NXP Layerscape?通信處理器,在網(wǎng)絡(luò)吞吐性能方面更具優(yōu)勢,而且原生網(wǎng)口數(shù)量也比較多,下面對LS1028A開發(fā)板在網(wǎng)絡(luò)中的應(yīng)用進行測試。

一、 Samba測試

Samba是在Linux和UNIX系統(tǒng)上實現(xiàn)SMB協(xié)議的一個免費軟件,由服務(wù)器及客戶端程序構(gòu)成。SMB(Server Messages Block,信息服務(wù)塊)是一種在局域網(wǎng)上共享文件和打印機的一種通信協(xié)議,它為局域網(wǎng)內(nèi)的不同計算機之間提供文件及打印機等資源的共享服務(wù)。SMB協(xié)議是客戶機/服務(wù)器型協(xié)議,客戶機通過該協(xié)議可以訪問服務(wù)器上的共享文件系統(tǒng)、打印機及其他資源。通過設(shè)置“NetBIOS over TCP/IP”使得Samba不但能與局域網(wǎng)絡(luò)主機分享資源,還能與全世界的電腦分享資源。

飛凌LS1028A平臺默認安裝samba服務(wù),可以通過網(wǎng)絡(luò)訪問OK1028A-C的sata硬盤等存儲設(shè)備。

安裝samba

root@forlinx:~# apt-get install samba

創(chuàng)建用戶及共享目錄

root@forlinx:~# groupadd share

root@forlinx:~# useradd share -g share

root@forlinx:~# smbpasswd -a share

根據(jù)提示輸入密碼

root@forlinx:~# chmod 777 -R /share

修改配置文件:

root@forlinx:~# vi /etc/samba/smb.conf

文件末尾加上如下

[share]

comment = Share Folder require password

browseable = yes

path = /share

create mask = 0777

directory mask = 0777

valid users = share

force user = nobody

force group = nogroup

public = yes

writable = yes

available = yes

如果您對配置文件有修改,請重啟samba:

root@forlinx:~# systemctl restart smbd.service

Windows訪問測試:

查看開發(fā)板IP:

在同一局域網(wǎng)內(nèi)的windows上打開運行,輸入\\192.168.1.200

 

 

訪問用戶名和密碼,即可看到文件系統(tǒng)/share目錄中的文件

二、 Lighttpd測試

飛凌LS1028平臺lighttpd服務(wù)默認開機啟動,為matrix桌面提供WEB服務(wù)。輸入開發(fā)板IP,即可將matrix桌面顯示在瀏覽器中。

 

三、  OpenSSL基本環(huán)境測試

安全套接字層(Ssl)協(xié)議是應(yīng)用最廣泛的應(yīng)用協(xié)議,通過使用諸如aes、des和3des等密碼算法對數(shù)據(jù)進行加密,在傳輸過程中對數(shù)據(jù)進行保護。

測試對稱加密rsa速度

root@forlinx:~# openssl speed rsa1024

 

測試AES對稱加密算法:

root@forlinx:~# dd if=/dev/urandom of=test bs=1 count=5922

root@forlinx:~# openssl enc -aes-128-cbc -e -in test -out test.enc -pass pass:123 -pbkdf2

root@forlinx:~# openssl enc -aes-128-cbc -d -in test.enc -out test.dec -pass pass:123 -pbkdf2

root@forlinx:~# diff test test.dec

 

測試DES對稱加密算法:

root@forlinx:~# dd if=/dev/urandom of=test bs=1 count=5922

root@forlinx:~# openssl enc -des-ede3-cbc -e -in test -out test.enc -pass pass:123 -pbkdf2

root@forlinx:~# openssl enc -des-ede3-cbc -d -in test.enc -out test.dec -pass pass:123 -pbkdf2

root@forlinx:~# diff test test.dec

四、 IPSEC基本環(huán)境測試

該項功能設(shè)置較為復雜,建議在一定網(wǎng)絡(luò)基礎(chǔ)上開展。需要打開內(nèi)核netfilter match ipsec功能,否則iptables不能被正常設(shè)置;如果提示raw表失敗,可以不導入raw表,或者內(nèi)核配置加raw表。

 Gateway moon為OK1028A-Ceno0 swp0網(wǎng)口。其它client為標準pc機。

網(wǎng)絡(luò)拓撲結(jié)構(gòu):

 

子網(wǎng)192.168.0.0/24使用ipsec加密通信,子網(wǎng)192.168.1.0/24使用明文通信。

重新配置內(nèi)核

 [*] Networking support  --->

Networking options  --->

[*] Network packet filtering framework (Netfilter)  --->

Core Netfilter Configuration  --->

 <*>   IPsec "policy" match support

 [*] Networking support  --->

Networking options  --->

[*] Network packet filtering framework (Netfilter)  --->

IP: Netfilter Configuration  --->

<*>   raw table support (required for NOTRACK/TRACE)

安裝Strongswan

apt-get install strongswan

所有使用ipsec的主機及網(wǎng)關(guān)均需安裝,非root權(quán)限需要加sudo。

Gateway moon設(shè)置

/etc/ipsec.conf

/etc/ipsec.secrets

/etc/strongswan.conf

/etc/ipsec.d/

ipsec.d目錄存放CA證書、私鑰和公鑰

 

1 路徑:OK1028A-C(Linux)用戶資料\工具\ipsec

moon相關(guān)文件參照moon_server.tar.bz2

導入iptables

iptables-restore < moon_iptables_1028.txt

ifconfig eno2 up

ifconfig swp0 up

ifconfig swp0 192.168.0.1

ifconfig eno0 192.168.1.250 

Roadwarrior carol設(shè)置

/etc/ipsec.conf

/etc/ipsec.secrets

/etc/strongswan.conf

/etc/ipsec.d/

ipsec.d目錄存放CA證書、私鑰和公鑰

 

1 路徑:OK1028A-C(Linux)用戶資料\工具\ipsec

相關(guān)文件見carol_client.tar.bz2

導入iptables

sudo iptables-restore < carol_iptables.txt

sudo ifconfig eth0 192.168.0.100 

Client alice設(shè)置

alice位于192.168.1.0/24網(wǎng)段內(nèi),需要設(shè)置192.168.0.0/24網(wǎng)關(guān)地址

sudo ifconfig eth0 192.168.1.107

sudo route add -net 192.168.0.0/24 dev eth0

sudo route add -net 192.168.0.0 gw 192.168.0.1 netmask 255.255.255.0 

啟動ipsec

a、在moon網(wǎng)關(guān)上執(zhí)行

ipsec restart

b、在carol主機上執(zhí)行

ipsec restart

ipsec up home

 

出現(xiàn)connection 'home' established successfully表示ipsec認證完成。

carol和alice的ping通信

目前位于不同網(wǎng)段的carol和alice具備通信功能,且carol所在子網(wǎng)內(nèi)使用加密通信。

carol主機對alice主機的ping。

 

在網(wǎng)關(guān)192.168.0.1和192.168.0.100之間傳遞的是ESP密文,經(jīng)過解析產(chǎn)生了192.168.1.107對192.168.0.100回復的明文。

五、  DPDK基本環(huán)境測試

DPDK是用戶空間包處理的框架,專注于網(wǎng)絡(luò)應(yīng)用中數(shù)據(jù)包的高性能處理,具體體現(xiàn)在DPDK應(yīng)用程序是運行在用戶空間上,利用自身提供的數(shù)據(jù)平面庫來收發(fā)數(shù)據(jù)包,繞過了Linux內(nèi)核協(xié)議棧對數(shù)據(jù)包的處理過程。OK1028A-C平臺支持完整的DPDK環(huán)境,同時支持OVS-DPDK,底層基于DPDK的Open VSwitch。

DPDK的知識庫:

http://doc./guides-17.05/linux_gsg/index.html

下面以二層轉(zhuǎn)發(fā)和三層轉(zhuǎn)發(fā)為例,測試OK1028A-C平臺的DPDK環(huán)境。首先,使用DPDK環(huán)境,需要修改設(shè)備樹,將網(wǎng)絡(luò)配置到用戶態(tài)。需要使用到的設(shè)備樹文件:

mv /boot/OK1028A-C.dtb /boot/OK1028A-C.dtb.bak

cp /boot/OK1028A-C-DPDK.dtb /boot/OK1028A-C.dtb

reboot

cd /usr/local/dpdk/enetc/

./dpdk_configure_1028ardb.sh

測試DPDK完成后恢復默認配置方法:

cp /boot/OK1028A-C.dtb.bak /boot/OK1028A-C.dtb

reboot

1、 二層轉(zhuǎn)發(fā)測試

二層轉(zhuǎn)發(fā)網(wǎng)絡(luò)拓撲如下圖所示:

 

使用OK1028A-C平臺eno0和swp0,對Linux Host和OK1012A-C之間的數(shù)據(jù)進行轉(zhuǎn)發(fā)。Linux Host和OK1012A-C您可以替換成其他的網(wǎng)絡(luò)設(shè)備。

配置OK1028A-C:

l2fwd -c 0x3 -n 1 -- -p 0x3 -q 1 --no-mac-updating

參數(shù)

說明

-c

Core mask 0xf使用2核

-n

內(nèi)存通道數(shù)

-p

Port mask 0xc二進制0011使用port1 port0

-q

每個核的隊列數(shù)量默認為1

--no-mac-updating

轉(zhuǎn)換后不替換MAC

配置OK1012A-C:

ifconfig eth0 192.168.1.200

tcpdump -i eth0 -vv -n -e

配置Linux Host:

ifconfig eth0 192.168.1.120

sudo modprobe pktgen.ko

echo "add_device eth0" > /proc/net/pktgen/kpktgend_0

echo "dst_mac 6e:56:7d:85:ce:4d" > /proc/net/pktgen/eth0
echo "dst 192.168.1.200" > /proc/net/pktgen/eth0
echo "pkt_size 64" > /proc/net/pktgen/eth0
echo "count 1000000" > /proc/net/pktgen/eth0
echo "start" > /proc/net/pktgen/pgctrl

注意:如果您的主機不含有pktgen驅(qū)動,請自行配置內(nèi)核編譯驅(qū)動。

查看OK1028A-C:

 

查看OK1012A-C:

2、 三層轉(zhuǎn)發(fā)測試

三層轉(zhuǎn)發(fā)網(wǎng)絡(luò)拓撲如下圖所示:

 

使用OK1028A-C對192.168.1.0網(wǎng)段和192.168.2.0網(wǎng)段之間的數(shù)據(jù)進行轉(zhuǎn)發(fā)。

配置OK1028A-C:

DPDK中自帶的l3fwd lpm路由表與我們的網(wǎng)絡(luò)拓撲環(huán)境不一致,因此需要修改代碼,修改OK1028-linux-fs/flexbuild/packages/apps/dpdk/examples/l3fwd/l3fwd_lpm.c

 

修改說明:

收到的192.168.1.0/24網(wǎng)段數(shù)據(jù)使用port0輸出

收到的192.168.2.0/24網(wǎng)段數(shù)據(jù)使用port1輸出

在flex-build環(huán)境中使用flex-builder -c dpdk -a arm64 -m ls1028ardb 命令進行編譯。將編譯完的可執(zhí)行程序packages/apps/dpdk/examples/l3fwd/build/l3fwd拷貝到開發(fā)板根目錄。

/l3fwd -c 0x3 -n 1 -- -p 0x3 -P -L --config="(0,0,0),(1,0,1)"   \

--eth-dest=0,74:27:ea:f7:8e:10 --eth-dest=1,6e:56:7d:85:ce:4d

參數(shù)

說明

-c

Core Mask

-n

內(nèi)存通道數(shù)

-p

Port Mask

-P

promiscuous mode

-L

使用LPM

--config

(Port, Queue, Core)綁定端口隊列cpu核

--eth-dest

輸出端口對應(yīng)的目的MAC地址

配置OK1012A-C:

ifconfig eth0 192.168.2.2

tcpdump -i eth0 -vv -n -e

配置Linux Host:

ifconfig eth0 192.168.1.120

modprobe pktgen.ko

echo "add_device eth0" > /proc/net/pktgen/kpktgend_0

echo "dst_mac E2:1C:5E:C0:19:88" > /proc/net/pktgen/eth0

echo "dst 192.168.2.2" > /proc/net/pktgen/eth0

echo "pkt_size 64" > /proc/net/pktgen/eth0

echo "count 1000000" > /proc/net/pktgen/eth0

echo "start" > /proc/net/pktgen/pgctrl

查看OK1012A-C:

 

六、  OVS-DPDK基本環(huán)境測試

注意:LS1028A開發(fā)板測試openvswitch時需要開啟內(nèi)核CONFIG_OPENVSWITCH配置。

 

本節(jié)簡單介紹利用ovs-dpdk搭建如下圖的二層交換環(huán)境。

 

測試前請確保使用的是支持DPDK的設(shè)備樹,同時執(zhí)行過./dpdk_configure_1028ardb.sh

使用網(wǎng)線連接Host1、OK1028A-C、Host2,使用以下命令測試轉(zhuǎn)發(fā)性能:

Host1:iperf3 -s

Host2:iperf3 -c 192.168.1.120 -i 1 -t 60

 

七、  TSN測試

1、 Enetc PTP對時測試

注意:ptp測試時需要先使用apt-get install linuxptp命令安裝測試工具,默認內(nèi)核沒有開啟enetc的硬件時間戳,測試時請打開內(nèi)核FSL_ENETC_HW_TIMESTAMPING配置項。

 

將兩塊ls1028的eno0使用網(wǎng)線直連,并分別設(shè)置以下參數(shù):

Ls1028-A:

ifconfig eno0 up

ifconfig eno0 192.168.2.2

Ls1028-B:

ifconfig eno0 up

ifconfig eno0 192.168.2.3

ping 192.168.2.2

保證網(wǎng)絡(luò)能夠ping通,查看內(nèi)核配置是否正確,是否支持硬件時間戳

 

環(huán)境設(shè)置完成之后進行如下測試:

Ls1028-A:

ptp4l -i eno0 -m -2

Ls1028-B:

ptp4l -i eno0 -s -m -2

 

master offset值表示從主設(shè)備測量的偏移量(以納秒為單位);

s0,s1,s2表示時鐘伺服器的不同狀態(tài),s0表示未鎖定,s1表示正在同步,s2表示鎖定,鎖定狀態(tài)表示不會再發(fā)生階躍行同步,只是緩慢調(diào)整。

2、Switch PTP對時測試

注意:ptp測試時需要先使用apt-get install linuxptp命令安裝測試工具。

將兩塊ls1028的swp0使用網(wǎng)線直連,并分別設(shè)置以下參數(shù):

Ls1028-A:

ifconfig eno2 up

ifconfig swp0 up

ifconfig swp0 192.168.2.2

Ls1028-B:

ifconfig eno2 up

ifconfig swp0 up

ifconfig swp0 192.168.2.3

ping 192.168.2.2

保證網(wǎng)絡(luò)能夠ping通,查看內(nèi)核配置是否正確,是否支持硬件時間戳

 

環(huán)境設(shè)置完成之后進行如下測試:

Ls1028-A:

ptp4l -i swp0 -m -2

Ls1028-B:

ptp4l -i swp0 -m -2 -s

 

master offset值表示從主設(shè)備測量的偏移量(以納秒為單位);

s0,s1,s2表示時鐘伺服器的不同狀態(tài),s0表示未鎖定,s1表示正在同步,s2表示鎖定,鎖定狀態(tài)表示不會再發(fā)生階躍行同步,只是緩慢調(diào)整。

? Enetc Qbv測試

tc qdisc add dev eno0 root handle 1: mqprio num_tc 8 map 0 1 2 3 4 5 6 7 hw 1

測試前保證eno0的網(wǎng)絡(luò)暢通

 

cat > qbv0.txt << EOF

t0 00000000b 20000

EOF

tsntool

tsntool> verbose

tsntool> qbvset --device eno0 --entryfile ./qbv0.txt

tsntool> quit

ping 192.168.1.1

 

可見所有的gate關(guān)閉之后,網(wǎng)絡(luò)已經(jīng)不通。

TSN關(guān)于更詳細的測試內(nèi)容請參考NXP LSDKUG_Rev20.04.pdf

    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    日韩欧美三级视频在线| 日韩黄色大片免费在线| 欧美激情床戏一区二区三| 午夜小视频成人免费看| 国产男女激情在线视频| 亚洲视频一区自拍偷拍另类| 国产精品免费视频久久| 99久久精品久久免费| 91人妻丝袜一区二区三区| 男人大臿蕉香蕉大视频| 亚洲欧美日韩在线中文字幕| 国产在线一区二区免费| 国产老熟女超碰一区二区三区| 中国日韩一级黄色大片| 中文字幕亚洲精品乱码加勒比| 爱在午夜降临前在线观看| 国产麻豆一区二区三区在| 日韩人妻免费视频一专区| 深夜视频成人在线观看| 熟女一区二区三区国产| 婷婷色网视频在线播放| 欧美一二三区高清不卡| 色丁香之五月婷婷开心| 日韩成人午夜福利免费视频| 日韩精品免费一区二区三区| 乱女午夜精品一区二区三区| 日韩人妻免费视频一专区 | 91天堂免费在线观看| 欧美日韩一区二区午夜| 欧美黑人暴力猛交精品| 免费在线观看欧美喷水黄片 | 欧美一区二区不卡专区| 国产成人人人97超碰熟女| 区一区二区三中文字幕| 午夜午夜精品一区二区| 日韩精品一区二区三区射精| 精品一区二区三区三级视频| 色综合久久六月婷婷中文字幕| 高潮日韩福利在线观看| 美女被后入福利在线观看| 国产精品免费不卡视频|