CN111200837B - 一种Wi-Fi软件测试系统及方法 - Google Patents

一种Wi-Fi软件测试系统及方法 Download PDF

Info

Publication number
CN111200837B
CN111200837B CN201911321116.4A CN201911321116A CN111200837B CN 111200837 B CN111200837 B CN 111200837B CN 201911321116 A CN201911321116 A CN 201911321116A CN 111200837 B CN111200837 B CN 111200837B
Authority
CN
China
Prior art keywords
software
layer
test
subsystem
simulated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911321116.4A
Other languages
English (en)
Other versions
CN111200837A (zh
Inventor
张建
陆佳炜
郭荣华
杨洁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ASR Microelectronics Co Ltd
Original Assignee
ASR Microelectronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ASR Microelectronics Co Ltd filed Critical ASR Microelectronics Co Ltd
Priority to CN201911321116.4A priority Critical patent/CN111200837B/zh
Publication of CN111200837A publication Critical patent/CN111200837A/zh
Application granted granted Critical
Publication of CN111200837B publication Critical patent/CN111200837B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W24/00Supervisory, monitoring or testing arrangements
    • H04W24/06Testing, supervising or monitoring using simulated traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0205Traffic management, e.g. flow control or congestion control at the air interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/06Transport layer protocols, e.g. TCP [Transport Control Protocol] over wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种Wi‑Fi软件测试系统,包括一个测试脚本子系统、多个模拟验证子系统、一个空口模拟子系统。每个模拟验证子系统用来模拟一台Wi‑Fi设备,至少一台模拟的Wi‑Fi设备中具有被测Wi‑Fi软件。每个模拟验证子系统包括操作系统适配层、驱动软件层、MAC软件层、PHY软件层;所述操作系统适配层接收测试脚本子系统发出的测试命令和测试参数,转换为驱动软件层的指令;所述驱动软件层实现对Wi‑Fi芯片硬件的控制;所述MAC软件层实现无线媒体介入控制、控制数据传输;所述PHY软件层实现MAC帧的收发,包括一个模拟的空口接口用来与空口模拟子系统进行交互。所述空口模拟子系统用来模拟无线局域网的无线信道环境。本申请可在Wi‑Fi芯片未制作出之前,对Wi‑Fi芯片的软件进行测试。

Description

一种Wi-Fi软件测试系统及方法
技术领域
本申请涉及一种对Wi-Fi芯片的软件进行测试的系统及方法。
背景技术
Wi-Fi是一种基于IEEE 802.11协议的射频技术,通常用于无线局域网(WLAN)设备。目前对Wi-Fi芯片的测试方法是基于一套测试系统,Wi-Fi设备(即包含Wi-Fi芯片的设备)置于所述测试系统中,利用测试用例对Wi-Fi设备的PHY(物理层)、MAC(介质访问控制层)的行为按照IEEE 802.11协议进行功能测试和性能验证。
请参阅图1,这是一套现有的Wi-Fi设备测试系统。所述Wi-Fi设备测试系统中包括测试脚本控制PC(个人计算机)、控制台PC、被测Wi-Fi设备、AP(Access Point,接入点)、其他网络设备。被测Wi-Fi设备、AP和其他网络设备通过无线局域网相连,在测试脚本控制PC和控制台PC的控制下对上述设备进行控制,从而进行一系列IEEE 802.11协议的功能测试。在测试过程中要求无线局域网相对稳定、无大的干扰,因此测试需要专业的屏蔽室环境。
上述Wi-Fi设备测试系统具有一些不足。第一,测试成本较高,每一套测试系统都需要在实验室内进行部署。如果想同时测试多个Wi-Fi设备,就需要在多个实验室内分别部署多套测试系统。每套测试系统都需要多台PC,硬件成本较高。第二,只能在Wi-Fi芯片制作出来以后进行测试。当Wi-Fi芯片在未制作出之前的开发过程中,研发人员完成Wi-Fi芯片的软件代码编写后,无法通过现有的测试系统对Wi-Fi芯片的驱动软件、PHY层协议软件、MAC层协议软件进行测试,这是Wi-Fi芯片软件的开发调试所面临的难题。
发明内容
本申请所要解决的技术问题是提供一种低成本的、可在Wi-Fi芯片未完成制作之前对Wi-Fi软件进行测试的系统。为此,本申请还要提供一种相应的Wi-Fi芯片测试方法。
为解决上述技术问题,本申请公开了一种Wi-Fi软件测试系统,包括一个测试脚本子系统、多个模拟验证子系统、一个空口模拟子系统。所述测试脚本子系统包含测试脚本及程序,它们构成了多个不同的测试用例;所述测试脚本子系统根据每个测试用例向各个模拟验证子系统发出测试命令和测试参数。每个模拟验证子系统用来模拟一台Wi-Fi设备,模拟的Wi-Fi设备选用STA模式或者AP模式;模拟验证子系统的数量及其模拟的Wi-Fi设备的模式根据不同测试用例的场景由测试脚本子系统配置;至少一台模拟的Wi-Fi设备中具有被测Wi-Fi软件。每个模拟验证子系统包括操作系统适配层、驱动软件层、MAC软件层、PHY软件层;所述操作系统适配层接收测试脚本子系统发出的测试命令和测试参数,转换为驱动软件层的指令;所述驱动软件层实现对Wi-Fi芯片硬件的控制,操作系统适配层所模拟的软件通过驱动软件层来访问Wi-Fi芯片硬件;驱动软件层还实现操作系统适配层与MAC软件层的交互;所述MAC软件层实现无线媒体介入控制、控制数据传输,包括根据上层指令或自发生成MAC数据帧、MAC管理帧、MAC控制帧;所述PHY软件层实现MAC帧的收发,包括一个模拟的空口接口用来与空口模拟子系统进行交互。所述空口模拟子系统用来模拟无线局域网的无线信道环境;所述空口模拟子系统收到各个模拟验证子系统发出的信号,再将这些信号发给对应的由其他模拟验证子系统模拟的STA或AP模式的Wi-Fi设备,完成不同Wi-Fi设备间的交互。上述Wi-Fi软件测试系统可在Wi-Fi芯片未制作出之前,对Wi-Fi芯片的软件进行测试。
进一步地,所述Wi-Fi软件测试系统采用PC。优选情况下,所述Wi-Fi软件测试系统采用一台PC即可实现,因而大大降低了测试成本。
优选地,所述Wi-Fi软件测试系统采用Windows操作系统的PC;每个子系统都是一个独立运行的Windows进程,子系统之间采用Socket通信方式进行交互。这是一种优选的实现方式,因为Windows操作系统的PC最为常见。基于同样原理,所述Wi-Fi软件测试系统也可采用其他操作系统例如Linux操作系统的PC实现。
进一步地,在模拟验证子系统中,驱动软件层、MAC软件层、PHY软件层之间的通信方式为函数内部调用、或者线程间通信方式。当所述Wi-Fi软件测试系统采用Windows操作系统的PC,每个模拟验证子系统是一个进程,那么模拟验证子系统内部的单元采用函数内部调用、或者线程间通信方式为优选的实现方式。
进一步地,至少一台模拟的Wi-Fi设备中的驱动软件层、MAC软件层、PHY软件层中的一个或多个包含被测Wi-Fi软件;如果被测Wi-Fi软件是Wi-Fi芯片的驱动软件,则在驱动软件层中;如果被测Wi-Fi软件是Wi-Fi芯片的MAC层软件,则在MAC软件层中;如果被测Wi-Fi软件是Wi-Fi芯片的PHY层软件,则在PHY软件层中。这表明本申请可以单独或同时对Wi-Fi芯片的驱动软件、MAC层软件、PHY层软件进行测试。
进一步地,所述操作系统适配层进一步包括适配单元和软件模拟单元;所述适配单元用来将测试脚本子系统发来的标准TLV格式的测试命令转换为对应于不同用户软件的调用指令,再传递给软件模拟单元;所述软件模拟单元用来模拟不同用户软件的至少部分功能,在适配单元的调用指令下与驱动软件层进行交互,最终调用Wi-Fi驱动软件提供的回调函数,以实现模拟控制Wi-Fi驱动软件。所述不同用户软件包括iw、wpa_supplicant、Hostapd中的一种或多种。这表明操作系统适配层用来在PC机的操作系统中模拟实现不同的用户软件的至少部分功能,以模拟这些用户软件对Wi-Fi驱动软件的控制功能。
进一步地,所述PHY软件层使用socket通信方式模拟空口收发,利用与空口模拟子系统的交互,模拟分布式协调以及点协调的发送接收,以实现各个模拟的Wi-Fi设备接入无线局域网;所述交互包括同步系统时间、NAV信息更新、竞争信息中的一项或多项。这是一种优选的实现方式,用来提供无线局域网的测试环境。
优选地,所述PHY软件层采用ASIC以硬件方式实现。这是一种可选的以硬件电路实现PHY软件层的实现方式。
进一步地,所述PHY软件层采用的MAC帧格式在原MAC帧之前新增了扩展的消息头部;所述扩展的消息头部包括源地址、目的地址、BSSID、时长、信道信息、广播多播信息、消息ID、消息长度、传输功率、PHY帧类型中的一项或多项;其中时长字段、信道信息字段由PHY软件层负责填写,用以更新无线信道信息。新增的扩展的消息头部更加便于PHY软件层和空口模拟子系统处理数据。
进一步地,所述Wi-Fi软件测试系统还包括日志子系统,用来实时抓取空口模拟子系统和各个模拟验证子系统之间采用socket通信方式交互的数据包,也就是对应的MAC帧以及出现的问题。这样可以更方便地记录数据用于功能调试与故障分析等。
本申请还公开了一种Wi-Fi软件测试方法,包括如下步骤:步骤S510:根据测试脚本及程序形成多个不同的测试用例,根据每个测试用例向模拟的Wi-Fi设备发出测试命令和测试参数;模拟的Wi-Fi设备的数量及其模式根据不同测试用例的场景而配置;至少一台模拟的Wi-Fi设备中具有被测Wi-Fi软件。步骤S520:模拟的Wi-Fi设备收到脚本测试命令和参数后,先转换为Wi-Fi驱动软件能够识别的指令,再由MAC层协议软件对指令进行处理实现无线媒体介入控制、控制数据传输,再经过PHY层协议软件处理实现MAC帧的收发,最后通过PHY层协议软件中模拟的空口接口发送出去。步骤S530:模拟的Wi-Fi设备发出的空口信号被送往对应的模拟的Wi-Fi设备,以形成多个模拟的Wi-Fi设备间的交互。上述Wi-Fi软件测试方法可在Wi-Fi芯片未制作出之前,对Wi-Fi芯片的软件进行测试。
进一步地,在测试开始后,至少有一个模拟的Wi-Fi设备采用AP模式,以产生无线局域网测试环境。这是一种优选的实现方式。
进一步地,在测试开始后,如有STA模式或AP模式的模拟的Wi-Fi设备加入无线局域网,则空口模拟子系统将更新设备列表;对于每一个加入无线局域网的模拟的Wi-Fi设备,产生无线局域网测试环境的那台AP模式的模拟的Wi-Fi设备将保留其socket地址、设备ID以及模拟MAC地址;此后空口模拟子系统将向设备列表中的每个模拟的Wi-Fi设备发送时钟同步消息;在多个模拟的Wi-Fi设备接入无线局域网之后,这些设备之间在进行IP通信时通过空口模拟子系统查询得到相应Wi-Fi设备的MAC地址,以实现ARP功能,完成填写MAC头部的功能。这是一种优选的实现方式。
进一步地,在测试开始后,如果某一模拟的Wi-Fi设备发出空口消息,空口模拟子系统收到消息后,将负责向设备列表中相应的模拟的Wi-Fi设备发送消息,以将信道NAV信息告知相应的模拟的Wi-Fi设备;相应的模拟的Wi-Fi设备收到NAV消息之后,更新自己的信道NAV信息,以控制信道发送;在此过程中,空口模拟子系统执行分布式协调功能。这是一种优选的实现方式。
本申请取得的技术效果是:可在通用的PC上实现,降低了测试成本;设计了操作系统适配层,易于移植到不同操作系统中;可在Wi-Fi硬件芯片未完成制作时对Wi-Fi软件进行测试;设计了空口模拟子系统用来模拟无线局域网的无线信道环境,有利于调试空口资源。
附图说明
图1是现有的Wi-Fi设备测试系统的结构示意图。
图2是本申请提供的Wi-Fi软件测试系统的结构示意图。
图3是图2中的操作系统适配层的详细结构示意图。
图4是本申请提供的一种MAC帧格式的示意图。
图5是本申请提供的Wi-Fi软件测试方法的流程图。
图中附图标记说明:200为Wi-Fi软件测试系统;210为测试脚本子系统;220为模拟验证子系统;222为操作系统适配层;224为驱动软件层;226为MAC软件层;228为PHY软件层;230为空口模拟子系统;302为适配单元;304为软件模拟单元。
具体实施方式
请参阅图2,这是本申请提供的Wi-Fi软件测试系统。所述Wi-Fi软件测试系统采用PC,例如为Windows操作系统的PC。所述Wi-Fi软件测试系统200包括一个测试脚本子系统210、多个模拟验证子系统220、一个空口(air interface,空中接口)模拟子系统230。每个子系统都是一个独立运行的Windows进程(process),子系统之间采用Socket(套接字)通信方式进行交互。
所述测试脚本子系统210包含IEEE 802.11协议组织提供的标准测试脚本及程序,它们构成了多个不同的测试用例。所述测试脚本子系统210根据每个测试用例向各个模拟验证子系统220发出测试命令和测试参数。
每个模拟验证子系统220用来模拟一台Wi-Fi设备。模拟的Wi-Fi设备可以选用STA(Station,站点)模式或者AP(Access Point,接入点)模式。模拟验证子系统220的数量及其模拟的Wi-Fi设备的模式根据不同测试用例的场景由测试脚本子系统210配置。
每个模拟验证子系统220包括操作系统适配层222、驱动软件层224、MAC软件层226、PHY软件层228。所述操作系统适配层222接收测试脚本子系统210发出的测试命令和测试参数,转换为驱动软件层224能够识别的指令。所述驱动软件层224用来实现对Wi-Fi芯片硬件的控制,操作系统适配层222所模拟的软件也可以通过驱动软件层224来访问Wi-Fi芯片硬件。此外,驱动软件层224还实现操作系统适配层222与MAC软件层226的交互。所述MAC软件层226用来实现IEEE 802.11协议规定的无线媒体介入控制,控制数据传输;包括根据上层指令或自发生成MAC数据帧、MAC管理帧、MAC控制帧等。所述PHY软件层228用来实现MAC帧的收发。所述PHY软件层228包括一个模拟的空口接口(AIR API),用来与空口模拟子系统230进行交互。
至少一台模拟的Wi-Fi设备中具有被测Wi-Fi软件。如果被测Wi-Fi软件是Wi-Fi芯片的驱动软件,则在驱动软件层224中。如果被测Wi-Fi软件是Wi-Fi芯片的MAC层软件,则在MAC软件层226中。如果被测Wi-Fi软件是Wi-Fi芯片的PHY层软件,则在PHY软件层228中。所述驱动软件层224、MAC软件层226、PHY软件层228中的一个或多个可以同时包含被测Wi-Fi软件。
在模拟验证子系统220中,驱动软件层224、MAC软件层226、PHY软件层228之间的软件控制逻辑不变,但是它们之间的通信方式需要由原来嵌入式系统中的中断触发等方式修改为函数内部调用、或者线程(thread)间通信方式以适应Windows操作系统的PC运行环境。被测软件模块间通信方式的修改不会影响对Wi-Fi软件的测试结果。
所述空口模拟子系统230用来模拟无线局域网的无线信道环境。所述空口模拟子系统230收到各个模拟验证子系统220发出的信号,空口模拟子系统230再将这些信号发给对应的由其他模拟验证子系统220模拟的STA或AP模式的Wi-Fi设备,完成不同Wi-Fi设备间的交互。
当Wi-Fi芯片运行在嵌入式操作系统上时,利用操作系统中的iw、wpa_supplicant以及Hostapd用户软件实现对Wi-Fi芯片的控制。但是这些软件与Wi-Fi驱动软件的交互需要以Wi-Fi芯片的真实硬件存在为前提。本申请中用操作系统适配层222来替代这些用户软件,从而可在Wi-Fi芯片制造出来之前对其中的软件部分进行测试。
请参阅图3,所述操作系统适配层222进一步包括适配单元302和软件模拟单元304。所述操作系统适配层222在收到测试脚本子系统210发来的标准TLV格式的测试命令后,由适配单元302把测试命令转换为对应于iw、wpa_supplicant、Hostapd用户软件的调用指令,再传递给软件模拟单元304。软件模拟单元304模拟iw、wpa_supplicant、Hostapd用户软件的至少部分功能,在适配单元302的调用指令下,与驱动软件层224进行交互,最终去调用Wi-Fi驱动软件提供的cfg80211_ops、ieee80211_ops等回调函数,以实现模拟控制Wi-Fi驱动软件的效果。驱动软件层224返回的处理结果先经过软件模拟单元304,再经过适配单元302转换为TLV格式,最后返回至测试脚本子系统210。
优选地,所述PHY软件层228使用socket通信方式模拟空口收发,利用与空口模拟子系统230的交互(包括同步系统时间、NAV信息更新、竞争信息),模拟分布式协调(DCF,Distributed Coordination Function)以及点协调(PCF,Point Coordination Function)的发送接收,以实现各个模拟的Wi-Fi设备接入无线局域网。
可选地,所述PHY软件层228可以改为ASIC(Application Specific IntegratedCircuit,专用集成电路)以硬件方式实现。
可选地,所述PHY软件层228采用图4所示的MAC帧格式。所述MAC帧在原MAC帧之前新增了扩展的消息头部,具体来说是在原MAC帧的原MAC头部(MAC Header)之前新增了扩展的消息头部。所述扩展的消息头部例如包括源地址、目的地址、BSSID、时长(duration)、信道(channel)信息、广播多播信息、消息ID、消息长度中的一项或多项。图4所示的扩展的消息头部仅为示意,可以对其中各字段的顺序任意调整,还可增加传输功率字段、PHY帧类型字段等,还可删除部分字段。其中BSSID字段表示产生无线局域网测试环境的那台AP模式的模拟的Wi-Fi设备的MAC地址,时长字段表示这一MAC帧所需占据无线媒介时长,也即传输时长。其中时长字段、信道信息字段由PHY软件层228负责填写,用以更新无线信道信息。在现有的MAC帧中包含有时长、源地址、目的地址、广播多播消息字段,本申请提供的扩展的消息头部将这些原本在MAC帧中的字段复制到新增的扩展的消息头部,又新增了信道信息字段、传输功率字段、PHY帧类型字段中的一项或多项,更加便于PHY软件层228和空口模拟子系统230处理数据。
可选地,本申请提供的Wi-Fi软件测试系统还包括日志子系统,用来实时抓取空口模拟子系统230和各个进程之间采用socket通信方式交互的数据包,也就是对应空口的IEEE 802.11协议的MAC帧,以及出现的问题,从而方便软件协议测试。
上述Wi-Fi软件测试系统用于对Wi-Fi软件的协议行为进行测试,相较于现有的Wi-Fi设备测试系统,本申请的Wi-Fi软件测试系统可在仅一台或多台Windows操作系统的PC上实现,因而大大降低了测试成本。本申请可在Wi-Fi芯片未制作出之前,对Wi-Fi芯片的软件进行测试,弥补了现有的Wi-Fi设备测试系统的空白。
请参阅图5,与图2所示的Wi-Fi软件测试系统相对应地,本申请还提供了一种Wi-Fi软件测试方法。所述Wi-Fi软件测试方法包括如下步骤。
步骤S510:根据IEEE 802.11协议组织提供的标准测试脚本及程序形成多个不同的测试用例,根据每个测试用例向模拟的Wi-Fi设备发出测试命令和测试参数。模拟的Wi-Fi设备的数量及其模式(STA模式或者AP模式)根据不同测试用例的场景而配置。至少一台模拟的Wi-Fi设备中具有被测Wi-Fi软件。这一步例如由图2中的测试脚本子系统210实现。
步骤S520:模拟的Wi-Fi设备收到脚本测试命令和参数后,先转换为Wi-Fi驱动软件能够识别的指令,再由MAC层协议软件对指令进行处理实现无线媒体介入控制、控制数据传输,再经过PHY层协议软件处理实现MAC帧的收发,最后通过PHY层协议软件中模拟的空口接口发送出去。
这一步中,模拟的Wi-Fi设备例如由图2中的模拟验证子系统220实现。
步骤S530:模拟的Wi-Fi设备发出的空口信号被送往对应的模拟的Wi-Fi设备,以形成多个模拟的Wi-Fi设备间的交互。这一步例如由图2中的空口模拟子系统230实现。
进一步地,在测试开始后,至少有一个模拟的Wi-Fi设备采用AP模式,以产生无线局域网测试环境。
进一步地,在测试开始后,如有STA模式或AP模式的模拟的Wi-Fi设备加入无线局域网,则空口模拟子系统230将更新设备列表。对于每一个加入无线局域网的模拟的Wi-Fi设备,产生无线局域网测试环境的那台AP模式的模拟的Wi-Fi设备将保留其socket地址、设备ID以及模拟MAC地址。此后空口模拟子系统230将向设备列表中的每个模拟的Wi-Fi设备发送时钟同步消息。在多个模拟的Wi-Fi设备接入无线局域网之后,这些设备之间如需进行IP(Internet Protocol,互联网协议)通信,可通过空口模拟子系统230查询得到相应Wi-Fi设备的MAC地址,以实现ARP(Address Resolution Protocol,地址解析协议)功能,完成填写MAC头部的功能。
进一步地,在测试开始后,如果某一模拟的Wi-Fi设备发出空口消息,空口模拟子系统230收到消息后,将负责向设备列表中相应的模拟的Wi-Fi设备发送消息,以将信道NAV(Network Allocation Vector,网络分配向量)信息告知相应的模拟的Wi-Fi设备。相应的模拟的Wi-Fi设备收到NAV消息之后,更新自己的信道NAV信息,以控制信道发送。在此过程中,空口模拟子系统230执行分布式协调(DCF,Distributed Coordination Function)功能。
本申请提供的Wi-Fi软件测试系统及方法具有如下有益效果。
第一,脱离了专用的嵌入式硬件平台,可在通用的PC上实现,提升了测试与调试的通用性,降低了测试成本。
第二,设计了操作系统适配层,因而脱离了特定的操作系统环境,也易于将软件测试移植到Windows、Linux等各种操作系统中。
第三,可在无Wi-Fi硬件芯片的条件下对Wi-Fi软件(包括Wi-Fi芯片中的驱动软件、MAC层软件、PHY层软件)进行测试,更易于在Wi-Fi芯片开发过程中发现其软件协议的问题,也方便新增功能的测试。
第四,设计了空口模拟子系统用来模拟无线局域网的无线信道环境,有利于调试空口资源例如模拟802.11协议的不同版本b、g、n、ac、ax等,监测无线信道环境,以及与PHY软件层配合实现802.11协议定义的DCF、PCF功能,高效且低成本地支持测试。
以上仅为本申请的优选实施例,并不用于限定本申请。对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (12)

1.一种Wi-Fi软件测试系统,其特征是,包括一个测试脚本子系统、多个模拟验证子系统、一个空口模拟子系统;
所述测试脚本子系统包含测试脚本及程序,它们构成了多个不同的测试用例;所述测试脚本子系统根据每个测试用例向各个模拟验证子系统发出测试命令和测试参数;
每个模拟验证子系统用来模拟一台Wi-Fi设备,模拟的Wi-Fi设备选用STA模式或者AP模式;模拟验证子系统的数量及其模拟的Wi-Fi设备的模式根据不同测试用例的场景由测试脚本子系统配置;至少一台模拟的Wi-Fi设备中具有被测Wi-Fi软件;
每个模拟验证子系统包括操作系统适配层、驱动软件层、MAC软件层、PHY软件层;所述操作系统适配层用来模拟实现用户软件对Wi-Fi驱动软件的控制;所述操作系统适配层接收测试脚本子系统发出的测试命令和测试参数,转换为驱动软件层的指令;所述操作系统适配层进一步包括适配单元和软件模拟单元;所述适配单元用来将测试脚本子系统发来的标准TLV格式的测试命令转换为对应于不同用户软件的调用指令,再传递给软件模拟单元;所述软件模拟单元用来模拟不同用户软件的至少部分功能;如果被测Wi-Fi软件是Wi-Fi芯片的驱动软件,则该驱动软件在驱动软件层中;所述驱动软件层实现对Wi-Fi芯片硬件的控制,操作系统适配层所模拟的软件通过驱动软件层来访问Wi-Fi芯片硬件;驱动软件层还实现操作系统适配层与MAC软件层的交互;如果被测Wi-Fi软件是Wi-Fi芯片的MAC层软件,则该MAC层软件在MAC软件层中;所述MAC软件层实现无线媒体介入控制、控制数据传输,包括根据上层指令或自发生成MAC数据帧、MAC管理帧、MAC控制帧;如果被测Wi-Fi软件是Wi-Fi芯片的PHY层软件,则该PHY层软件在PHY软件层中;所述PHY软件层实现MAC帧的收发,包括一个模拟的空口接口用来与空口模拟子系统进行交互;
所述空口模拟子系统用来模拟无线局域网的无线信道环境;所述空口模拟子系统收到各个模拟验证子系统发出的信号,再将这些信号发给对应的由其他模拟验证子系统模拟的STA或AP模式的Wi-Fi设备,完成不同Wi-Fi设备间的交互;
所述Wi-Fi软件测试系统采用Windows操作系统的PC;每个子系统都是一个独立运行的Windows进程,子系统之间采用Socket通信方式进行交互。
2.根据权利要求1所述的Wi-Fi软件测试系统,其特征是,在模拟验证子系统中,驱动软件层、MAC软件层、PHY软件层之间的通信方式为函数内部调用、或者线程间通信方式。
3.根据权利要求1所述的Wi-Fi软件测试系统,其特征是,至少一台模拟的Wi-Fi设备中的驱动软件层、MAC软件层、PHY软件层中的一个或多个包含被测Wi-Fi软件;如果被测Wi-Fi软件是Wi-Fi芯片的驱动软件,则在驱动软件层中;如果被测Wi-Fi软件是Wi-Fi芯片的MAC层软件,则在MAC软件层中;如果被测Wi-Fi软件是Wi-Fi芯片的PHY层软件,则在PHY软件层中。
4.根据权利要求1所述的Wi-Fi软件测试系统,其特征是,所述软件模拟单元还在适配单元的调用指令下与驱动软件层进行交互,最终调用Wi-Fi驱动软件提供的回调函数,以实现模拟控制Wi-Fi驱动软件;
所述不同用户软件包括iw、wpa_supplicant、Hostapd中的一种或多种。
5.根据权利要求1所述的Wi-Fi软件测试系统,其特征是,所述PHY软件层使用socket通信方式模拟空口收发,利用与空口模拟子系统的交互,模拟分布式协调以及点协调的发送接收,以实现各个模拟的Wi-Fi设备接入无线局域网;所述交互包括同步系统时间、NAV信息更新、竞争信息中的一项或多项。
6.根据权利要求1所述的Wi-Fi软件测试系统,其特征是,所述PHY软件层采用ASIC以硬件方式实现。
7.根据权利要求1所述的Wi-Fi软件测试系统,其特征是,所述PHY软件层采用的MAC帧格式在原MAC帧之前新增了扩展的消息头部;所述扩展的消息头部包括源地址、目的地址、BSSID、时长、信道信息、广播多播信息、消息ID、消息长度、传输功率、PHY帧类型中的一项或多项;其中时长字段、信道信息字段由PHY软件层负责填写,用以更新无线信道信息。
8.根据权利要求1所述的Wi-Fi软件测试系统,其特征是,所述Wi-Fi软件测试系统还包括日志子系统,用来实时抓取空口模拟子系统和各个模拟验证子系统之间采用socket通信方式交互的数据包,也就是对应的MAC帧以及出现的问题。
9.一种Wi-Fi软件测试方法,其特征是,基于权利要求1所述的Wi-Fi软件测试系统执行如下步骤:
步骤S510:根据测试脚本及程序形成多个不同的测试用例,根据每个测试用例向模拟的Wi-Fi设备发出测试命令和测试参数;
模拟的Wi-Fi设备的数量及其模式根据不同测试用例的场景而配置;至少一台模拟的Wi-Fi设备中具有被测Wi-Fi软件;
步骤S520:模拟的Wi-Fi设备收到脚本测试命令和参数后,先转换为Wi-Fi驱动软件能够识别的指令,再由MAC层协议软件对指令进行处理实现无线媒体介入控制、控制数据传输,再经过PHY层协议软件处理实现MAC帧的收发,最后通过PHY层协议软件中模拟的空口接口发送出去;
步骤S530:模拟的Wi-Fi设备发出的空口信号被送往对应的模拟的Wi-Fi设备,以形成多个模拟的Wi-Fi设备间的交互。
10.根据权利要求9所述的Wi-Fi软件测试方法,其特征是,在测试开始后,至少有一个模拟的Wi-Fi设备采用AP模式,以产生无线局域网测试环境。
11.根据权利要求10所述的Wi-Fi软件测试方法,其特征是,在测试开始后,如有STA模式或AP模式的模拟的Wi-Fi设备加入无线局域网,则空口模拟子系统将更新设备列表;对于每一个加入无线局域网的模拟的Wi-Fi设备,产生无线局域网测试环境的那台AP模式的模拟的Wi-Fi设备将保留其socket地址、设备ID以及模拟MAC地址;此后空口模拟子系统将向设备列表中的每个模拟的Wi-Fi设备发送时钟同步消息;在多个模拟的Wi-Fi设备接入无线局域网之后,这些设备之间在进行IP通信时通过空口模拟子系统查询得到相应Wi-Fi设备的MAC地址,以实现ARP功能,完成填写MAC头部的功能。
12.根据权利要求11所述的Wi-Fi软件测试方法,其特征是,在测试开始后,如果某一模拟的Wi-Fi设备发出空口消息,空口模拟子系统收到消息后,将负责向设备列表中相应的模拟的Wi-Fi设备发送消息,以将信道NAV信息告知相应的模拟的Wi-Fi设备;相应的模拟的Wi-Fi设备收到NAV消息之后,更新自己的信道NAV信息,以控制信道发送;在此过程中,空口模拟子系统执行分布式协调功能。
CN201911321116.4A 2019-12-20 2019-12-20 一种Wi-Fi软件测试系统及方法 Active CN111200837B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911321116.4A CN111200837B (zh) 2019-12-20 2019-12-20 一种Wi-Fi软件测试系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911321116.4A CN111200837B (zh) 2019-12-20 2019-12-20 一种Wi-Fi软件测试系统及方法

Publications (2)

Publication Number Publication Date
CN111200837A CN111200837A (zh) 2020-05-26
CN111200837B true CN111200837B (zh) 2023-12-22

Family

ID=70747562

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911321116.4A Active CN111200837B (zh) 2019-12-20 2019-12-20 一种Wi-Fi软件测试系统及方法

Country Status (1)

Country Link
CN (1) CN111200837B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112469068B (zh) * 2020-11-24 2023-05-09 展讯半导体(成都)有限公司 一种测试方法及装置
CN112566175B (zh) * 2020-12-03 2024-08-09 深圳信息通信研究院 无线物联网终端设备mac层共存机制的测试方法及装置
CN112699031B (zh) * 2020-12-29 2023-07-21 中国航空工业集团公司西安飞机设计研究所 一种分区软件架构的测试方法
CN112905154A (zh) * 2020-12-30 2021-06-04 杭州加速科技有限公司 一种提高软硬件协同开发速度的方法及装置
CN112867047B (zh) * 2021-04-13 2022-11-08 四川九州电子科技股份有限公司 一种WiFi6路由器性能测试系统及测试方法
CN114554537B (zh) * 2022-02-25 2024-01-23 中国人民解放军国防科技大学 一种基于软件通信体系结构的mac组件一致性测试方法
CN116541229B (zh) * 2023-07-07 2023-10-31 西安羚控电子科技有限公司 一种数据驱动的通信调试方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1555158A (zh) * 2003-12-19 2004-12-15 深圳市国人通信有限公司 基于嵌入式系统的无线局域网接入点设备
CN1777180A (zh) * 2005-12-02 2006-05-24 东南大学 基于嵌入式系统的无线保护接入设备
CN1883219A (zh) * 2004-01-09 2006-12-20 思科技术公司 仿真并管理无线局域网(wlan)的系统和方法
CN101790174A (zh) * 2010-01-19 2010-07-28 西安交通大学 基于OMAP3530Mini开发板的Ad Hoc网络的搭建方法
CN103218280A (zh) * 2013-04-15 2013-07-24 飞天诚信科技股份有限公司 一种usb设备的硬件通用测试方法
CN104750603A (zh) * 2013-12-30 2015-07-01 联芯科技有限公司 一种多核dsp软件仿真器及其物理层软件测试方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060294312A1 (en) * 2004-05-27 2006-12-28 Silverbrook Research Pty Ltd Generation sequences

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1555158A (zh) * 2003-12-19 2004-12-15 深圳市国人通信有限公司 基于嵌入式系统的无线局域网接入点设备
CN1883219A (zh) * 2004-01-09 2006-12-20 思科技术公司 仿真并管理无线局域网(wlan)的系统和方法
CN1777180A (zh) * 2005-12-02 2006-05-24 东南大学 基于嵌入式系统的无线保护接入设备
CN101790174A (zh) * 2010-01-19 2010-07-28 西安交通大学 基于OMAP3530Mini开发板的Ad Hoc网络的搭建方法
CN103218280A (zh) * 2013-04-15 2013-07-24 飞天诚信科技股份有限公司 一种usb设备的硬件通用测试方法
CN104750603A (zh) * 2013-12-30 2015-07-01 联芯科技有限公司 一种多核dsp软件仿真器及其物理层软件测试方法

Also Published As

Publication number Publication date
CN111200837A (zh) 2020-05-26

Similar Documents

Publication Publication Date Title
CN111200837B (zh) 一种Wi-Fi软件测试系统及方法
JP5485201B2 (ja) 分析装置、受容試験方法および受容試験装置
TWI244295B (en) Method and system for simulating multiple independent client devices in a wired or wireless network
CN110032512B (zh) 一种小程序的调试方法、相关设备及终端
JP2011239426A (ja) 無線デバイスにおける汎用診断監視モジュールのための装置及び方法
KR20070116277A (ko) 무선 장치의 네트워크 액세스 성능을 결정하기 위한 장치및 방법
CN107172075B (zh) 基于网络隔离的通信方法、系统及可读存储介质
CN101765133B (zh) 一种无线接入点接入无线终端的性能测试方法和系统
WO2017113848A1 (zh) 测试用例的测试方法及测试平台、模拟测试设备
JP2013522979A (ja) シグナルトレース情報の送信方法及び装置
CN105991679B (zh) 一种网络分享的实现方法和装置
CN112328492A (zh) 一种主播间的互动控制方法、装置和电子设备
WO2021052075A1 (zh) 干扰模拟和干扰测试的系统、方法、装置及计算机可读存储介质
KR101580466B1 (ko) 소프트웨어 정의 네트워킹을 이용하여 네트워크 장비를 테스트하는 방법, 장치 및 컴퓨터 프로그램
WO2023142907A1 (zh) 全光网络业务测试方法、装置、计算机设备和可读介质
Gao et al. Integration and connection test for OpenAirInterface 5g standalone system
Fontes et al. ns-3 next: Towards a reference platform for offline and augmented wireless networking experimentation
CN115643599A (zh) 一种网络质量检测方法、装置、sim卡和电子设备
CN113630802B (zh) Nr用户面业务测试方法及装置
Kato et al. Design and implementation of a wireless network tap device for IEEE 802.11 wireless network emulation
CN112468555A (zh) 基于云手机的宏命令群控方案
CN114567627B (zh) 一种仿真平台管理方法、系统、设备以及介质
CN116112943B (zh) 一种模拟通信系统及其部署方法、模拟通信测试方法
CN113572652B (zh) 一种有线Mesh网络测试方法
CN112994962B (zh) 基于aaa认证测试的装置、方法、存储介质及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 201203 No. 399, Keyuan Road, Zhangjiang High-tech Park, Pudong New Area, Shanghai

Applicant after: Aojie Technology Co.,Ltd.

Address before: 201203 No. 399, Keyuan Road, Zhangjiang High-tech Park, Pudong New Area, Shanghai

Applicant before: Aojie Technology (Shanghai) Co.,Ltd.

CB02 Change of applicant information
CB02 Change of applicant information

Address after: 201203 Floor 9, building 10, No. 399, Keyuan Road, China (Shanghai) free trade pilot zone, Pudong New Area, Shanghai

Applicant after: Aojie Technology Co.,Ltd.

Address before: 201203 No. 399, Keyuan Road, Zhangjiang High-tech Park, Pudong New Area, Shanghai

Applicant before: Aojie Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant