请选择 进入手机版 | 继续访问电脑版
查看: 405|回复: 0

[应用笔记] DB62系列网络性能测试

[复制链接]

21

主题

21

帖子

67

积分

利尔达员工

Rank: 9Rank: 9Rank: 9

积分
67
发表于 2023-5-11 09:48:12 | 显示全部楼层 |阅读模式
  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
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表