|
1 引言
DB62系列是一款集成Hi3861L芯片低功耗WI-FI4模组,支持5/10/20MHz带宽。Iperf是一个网络性能测试工具,可以测试最大TCP和UDP带宽性能,可以报告带宽、延迟抖动和数据包丢失。本文使用Iperf软件对DB62模组进行TCP吞吐量和UDP丢包进行测试,旨在帮助用户尽快掌握速度测试的方法。
注:DB62系列模组测速只能使用iPerf2,暂不支持iPerf3。
2 环境搭建
2.1 测试前准备
2.2 搭建硬件环境
1、检查开发板
本文测试使用Lierda开发板。J4处为测试电流预留引脚,在使用时用跳线帽接起来,滑动开关拨到VDD_3V3处。(开关在VDD_SD处的话说明VDDIO选择的电平是SDIO的VDD)
2、连接
iperf基于Server-Client模式实现,为了方便测试,本次测试示例采用第二种的连接方式。
●2套DB62开发板+1台电脑将进行iPerf测速连接示意图如下
●1套DB62开饭板+1台电脑进行iPerf测速连接示意图如下:
DB62开发板通过typ-c连接电脑,通过串口助手输入指令连接路由
电脑通过网线或者wifi连接路由器
2.3 搭建软件环境
2.3.1 下载iperf
iPerf下载地址:iPerf - Download iPerf3 and original iPerf pre-compiled binaries,本文使用iperf2进行灌包测试。
注:iPerf灌包测试,服务器、客户端需要在同一个局域网下。不同网络下会导致连接失败。
2.3.2 打开iPerf
1) 方法1
启动示例:iperf.exe -s
2) 方法2
空白处双击,然后按住shift键+点击鼠标右键,选择打开Powershell窗口。
启动示例:.\iperf.exe -s
3 iPerf灌包测试
3.1 获取IP指令流程
// 模组上电
ready to OS start
sdk ver:Hi3861V100R001C00SPC031 2021-10-27 18:00:00
FileSystem mount ok.
wifi init success!
AT // 发送AT,确认模组连接OK
AT
OK
AT+STARTSTA // 开启STA
AT+STARTSTA
OK
AT+SCAN // 扫描WiFi
AT+SCAN
OK
+NOTICE:SCANFINISH // 扫描结束
AT+SCANRESULT // 查看扫描结果
AT+SCANRESULT
+SCANRESULT:OPPOAramis,82:9b:9a:4b:93:6b,11,-37,2 //路由器名称,路由器MAC地址, 信道号11,信号强度37,认证方式2
+SCANRESULT:.,ec:41:18:24:75:8d,2,-40,3
+SCANRESULT:lierda-test,0a:69:6c:2f:8b:64,5,-42,3
+SCANRESULT:lierda-guest,0e:69:6c:2f:8b:64,5,-42,3
+SCANRESULT:Lierda_140204,e0:e2:e6:93:3a:4d,1,-43,2
+SCANRESULT:lierda-test,0a:69:6c:2f:7c:74,1,-44,3
+SCANRESULT:lierda-test,0a:69:6c:2f:8b:6c,9,-44,3
+SCANRESULT:lierda-guest,0e:69:6c:2f:7c:74,1,-44,3
+SCANRESULT:lierda-guest,0e:69:6c:2f:8b:6c,9,-45,3
OK
+NOTICE:DISCONNECTED
AT+CONN="OPPOAramis",82:9b:9a:4b:93:6b,2,"123456789" // 连接路由器 AT+CONN="路由器名称",MAC地址,认证方式,"密码"
AT+CONN="OPPOAramis",82:9b:9a:4b:93:6b,2,"123456789"
OK
+NOTICE:SCANFINISH
+NOTICE:CONNECTED
AT+DHCP=wlan0,1 // 开启DHCP(开启客户端命令)
AT+DHCP=wlan0,1
OK
AT+IFCFG // 查询本机IP
AT+IFCFG
+IFCFG:wlan0,ip=192.168.1.104netmask=255.255.255.0,gateway=192.168.43.1,ip6=FE80::321B:97FF:FE95:BFE2,ip6=240E:471:E80:58A2:321B:97FF:FE95:BFE2,HWaddr=30:1b:97:95:bf:e2,MTU=1500,LinkStatus=1,RunStatus=1 +IFCFG:lo,ip=127.0.0.1,netmask=255.0.0.0,gateway=127.0.0.1,ip6=::1,HWaddr=00,MTU=16436,LinkStatus=1,RunStatus=1 OK
3.2 查询电脑IP
电脑以太网/Wi-Fi连接同一台路由器,查询IP
DB62 IP:192.168.1.104 PC IP:192.168.1.103
3.3 TCP吞吐量测速
3.3.1 DB62 TCP服务器吞吐量测速(rx)
1) DB62开启服务器监听 使用协议默认为tcp,【-i 1】显示报告以1s为间隔,【-t 20】监听时间为20s
AT+IPERF=-s,-i,1,-t,20
2) 电脑端开启客户端发送 使用协议默认为tcp,ip地址为192.168.1.104的测试机,【-t 20】发送测试20s,【-i 1】显示报告以1s为间隔,【-w 20M】tcp发送窗口为20M
iperf.exe -c 192.168.1.104 -t 20 -i 1 -w 20M
测速结果如下(示例):
*AT的iperf默认的测试时间,默认30秒,可以看到每秒钟传输的数据量在1.35MB左右,刚好与“Bandwidth”列的值对应起来,网卡的带宽速率维持在11.28Mbits/sec左右,测试的环境是办公室,这个测试值基本合理。在输出的最后,iperf给出了带宽速率平均值。
3.3.2 DB62 TCP客户端吞吐量测速(tx)
1) 电脑端开启服务器监听
iperf.exe -s -i 1
2) DB62开启客户端发送
AT+IPERF=-c,192.168.1.103,-t,5,-i,1
3.4 UDP丢包和延迟测试
UDP协议是一个非面向连接的轻量级传输协议,并且不提供可靠的数据传输服务,因此对UDP应用的关注点不是传输数据有多快,而是它的丢包率和延时指标。通过iperf的"-u"参数即可测试UDP应用的传输性能。
3.4.1 DB62 UDP服务器测试(rx)
1) DB62开启服务器监听
AT+IPERF=-s,-u,-i,1,-t,20
2) 电脑端开启客户端发送 使用协议默认为tcp,ip地址为192.168.1.104的测试机,【-t 20】发送测试20s,【-i 1】显示报告以1s为间隔,【-w 20M】tcp发送窗口为20M
iperf.exe -c 192.168.1.104 -u -b 20M -t 20 -i 1
3.4.2 DB62 UDP客户端测试(tx)
1) 电脑端开启服务器监听
iperf.exe -s -i 1 -u -t 20
2) DB62开启客户端发送
AT+IPERF=-c,192.168.1.103,-u,-b,10M,-t,20,-i,1
测速结果如下(示例):
“Jitter”列表示抖动时间,或者称为传输延迟,“Lost/Total”列表示丢失的数据报和总的数据报数量,后面的0.017%是平均丢包的比率,“Datagrams”列显示的是总共传输数据包的数量。【-b 10M】 udp发送带宽,单位为bps,如设置为10K、20M,默认值为1Mbps
注:要了解更详细的UDP丢包和延时信息,可以在iperf服务端查看,因为在客户端执行传输测试的同时,服务端也会同时显示传输状态,在这个输出中,详细记录了在传输过程中,每个阶段的传输延时和丢包率,在UDP应用中随着传输数据的增大,丢包率和延时也随之增加。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|