一种测试接入控制器性能的方法及装置制造方法

文档序号:7798947阅读:237来源:国知局
一种测试接入控制器性能的方法及装置制造方法
【专利摘要】本发明涉及通信【技术领域】,尤其涉及一种测试AC性能的方法及装置,用以解决现有技术中测试AC性能的方式耗费的人力和财力较多,且满足测试需要的难度较大的问题。本发明实施例测试AC性能的方法包括:创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟AP或一个虚拟STA,每台虚拟主机包括虚拟网卡和虚拟主机线程;通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能。采用本发明实施例,仅在一台PC机上就可以创建出多个虚拟AP和虚拟STA,采用这些虚拟AP和虚拟STA来代替真实AP和真实STA,不仅可以节省大量的人力和财力,还可以大大降低测试难度。
【专利说明】一种测试接入控制器性能的方法及装置
【技术领域】
[0001]本发明涉及通信【技术领域】,尤其涉及一种测试接入控制器性能的方法及装置。
【背景技术】
[0002]随着通信技术的迅速发展,无线局域网(WLAN, Wireless Local Area Network)日益流行,传统的WLAN也逐渐暴露出一系列问题,如缺乏集中控制管理功能,存在安全问题等,于是集中式WLAN组网架构应运而生。集中式WLAN系统引入了接入控制器(AC,AccessController)来分担传统“胖”AP (Access Point,接入点)的管理、控制、认证等功能,功能简化了的“瘦”AP主要用来接收和发送无线网络数据。
[0003]AC作为接入控制器集中管理着大量的AP,AP下还有海量的站点(Station,STA),这对AC各方面的处理性能提出了新的要求,要想在投入现网之前就检测出AC存在的问题,就必须对AC进行全面的测试。目前开发商对AC进行压力稳定性测试的方法主要是通过批量采购真实AP和无线终端充当STA来进行测试,特别是要测试AP和STA达到AC容量极限时的性能表现,比如能否达到AC的容量极限、达到容量极限是否会出现管理错误等,这种方法不仅要花费大量的财力去购买设备,还要消耗大量的人力去布置组网,而实际所需的实验场地更是很难满足测试AC容量极限的要求。
[0004]因此,现有的测试AC性能的方式耗费的财力和人力较多,且满足测试需要的难度较大。

【发明内容】

[0005]本发明实施例提供一种测试AC性能的方法及装置,用以解决现有技术中测试AC性能的方式耗费的人力和财力较多,且满足测试需要的难度较大的问题。
[0006]本发明实施例提供的一种测试AC性能的方法,包括:
[0007]创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟接入点AP或一个虚拟站点STA,每台虚拟主机包括虚拟网卡和虚拟主机线程;
[0008]通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能。
[0009]可选地,基于以下步骤实现所述虚拟AP与所述AC之间的信息传输,或所述虚拟STA与所述AC之间的信息传输:
[0010]创建收发数据包的转发线程;
[0011]通过所述转发线程捕获所述AC发送至物理网卡的数据包,并根据所述数据包的媒体接入控制MAC地址,将所述数据包分配到对应的虚拟网卡中;和/或,
[0012]通过所述虚拟主机线程读取并处理对应的虚拟网卡中的数据包,并通过所述转发线程将处理后的数据包发送给所述AC。
[0013]可选地,所述通过所述转发线程捕获所述AC发送至物理网卡的数据包,包括:
[0014]通过所述转发线程将所述物理网卡设置成混杂模式,捕获所有发送至所述物理网卡的数据包。
[0015]可选地,根据以下步骤创建多台虚拟主机的虚拟网卡:
[0016]读取配置文件中配置的虚拟AP和虚拟STA信息;所述虚拟AP和虚拟STA信息包括虚拟AP的个数和每个虚拟AP关联的虚拟STA的个数,虚拟AP和虚拟STA的虚拟局域网VLAN信息;
[0017]根据所述虚拟AP和虚拟STA信息,创建所述多台虚拟主机的虚拟网卡。
[0018]可选地,所述配置文件中还包括以下信息中的一种或多种:
[0019]AC发现过程的方式;
[0020]每个虚拟STA的用户名和密码;
[0021 ] 各个交互过程所需要的报文内容。
[0022]本发明实施例提供的一种测试接入控制器AC性能的装置,包括:
[0023]创建模块,用于创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟接入点AP或一个虚拟站点STA,每台虚拟主机包括虚拟网卡和虚拟主机线程;
[0024]测试模块,用于通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能。
[0025]可选地,所述测试模块具体用于:创建收发数据包的转发线程;通过所述转发线程捕获所述AC发送至物理网卡的数据包,并根据所述数据包的媒体接入控制MAC地址,将所述数据包分配到对应的虚拟网卡中;和/或,通过所述虚拟主机线程读取并处理对应的虚拟网卡中的数据包,并通过所述转发线程将处理后的数据包发送给所述AC。
[0026]可选地,所述测试模块具体用于:通过所述转发线程将所述物理网卡设置成混杂模式,捕获所有发送至所述物理网卡的数据包。
[0027]可选地,所述创建模块具体用于:读取配置文件中配置的虚拟AP和虚拟STA信息;所述虚拟AP和虚拟STA信息包括虚拟AP的个数和每个虚拟AP关联的虚拟STA的个数,虚拟AP和虚拟STA的虚拟局域网VLAN信息;根据所述虚拟AP和虚拟STA信息,创建所述多台虚拟主机的虚拟网卡。
[0028]可选地,所述配置文件中还包括以下信息中的一种或多种:
[0029]AC发现过程的方式;
[0030]每个虚拟STA的用户名和密码;
[0031 ] 各个交互过程所需要的报文内容。
[0032]本发明实施例通过创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟AP或一个虚拟STA,每台虚拟主机包括虚拟网卡和虚拟主机线程;通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能;采用本发明实施例,仅在一台个人电脑(Personal Computer, PC)上就可以创建出多个虚拟AP和虚拟STA,采用这些虚拟AP和虚拟STA来代替真实AP和真实STA,不仅可以节省大量的人力和财力,还可以大大降低测试难度。
【专利附图】

【附图说明】
[0033]图1为本发明实施例提供的测试AC性能的方法流程图;
[0034]图2为本发明实施例提供的进行AC测试的软件框架示意图;[0035]图3为本发明实施例提供的测试用的网络架构示意图;
[0036]图4为本发明实施例提供的测试用的二层网络架构示意图;
[0037]图5为本发明实施例提供的测试用的三层网络架构示意图;
[0038]图6为本发明实施例采用如图3~图5任一所示的网络架构进行AC性能测试的流程图;
[0039]图7为本发明实施例在AC测试过程中进行数据包处理的方法流程图;
[0040]图8为与图7对应的进行AC测试的示意图;
[0041]图9为本发明实施例进行组网并进行AC性能测试的流程图;
[0042]图10为本发明实施例提供的测试AC性能过程中的各报文交互流程图;
[0043]图11为本发明实施例提供的测试接入控制器性能的装置结构图。
【具体实施方式】
[0044]本发明实施例通过创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟AP或一个虚拟STA,每台虚拟主机包括虚拟网卡和虚拟主机线程;通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能;采用本发明实施例,仅在一台个人电脑(Personal Computer, PC)上就可以创建出多个虚拟AP和虚拟STA,采用这些虚拟AP和虚拟STA来代替真实AP和真实STA,不仅可以节省大量的人力和财力,还可以大大降低测试难度。
[0045]下面结合说明书附图对本发明实施例作进一步详细描述。
[0046]如图1所示,为本发明实施例提供的测试AC性能的方法流程图,包括以下步骤:
[0047]SlOl:创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟接入点AP或一个虚拟站点STA,每台虚拟主机包括虚拟网卡和虚拟主机线程;
[0048]S102:通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能。
[0049]在具体实施过程中,可以根据预先设置的配置数据,如虚拟AP和虚拟STA个数等,创建虚拟网卡,并为虚拟网卡分配内存,为了实现虚拟AP与AC之间,以及虚拟STA与AC之间的通信,可以根据以下方式通过设置专门的转发线程,作为虚拟AP和虚拟STA与AC之间进行通信的桥梁;具体地,可以采用以下步骤实施:
[0050]可选地,基于以下步骤实现所述虚拟AP或虚拟STA与所述AC之间的信息传输:
[0051]创建收发数据包的转发线程;
[0052]通过所述转发线程捕获所述AC发送至物理网卡的数据包,并根据所述数据包的媒体接入控制MAC地址,将所述数据包分配到对应的虚拟网卡中;和/或,
[0053]通过所述虚拟主机线程读取并处理对应的虚拟网卡中的数据包,并通过所述转发线程将处理后的数据包发送给所述AC。
[0054] 在具体实施过程中,可以采用PC机的主线程读取预先设置的配置文件中的配置数据,根据读取的配置数据,仓Il建虚拟网卡(Mock Network Interface Card, Mock NIC),并为虚拟网卡分配内存(Pkt Buffer Queue-NIC),同时,创建收发数据包的转发线程(PktDispatch)和N个虚拟主机线程(H0ST-1…HOST-η),这些虚拟主机线程可以分别对应AP或者STA,其分配和绑定关系由配置文件决定;在具体实施中,可以设置命令行界面,用于查看统计数据和修改配置文件中的配置数据等;
[0055]如图2所示,为本发明实施例提供的进行AC测试的软件框架示意图;本发明实施例中,每一个AP或者STA都可以抽象为一台虚拟主机,该虚拟主机有自己的虚拟网卡、进程调度、路由表以及相应的应用进程;每一张虚拟网卡都与一个实际的物理网卡具有对应关系,这样,可以在发送数据时通过原始套接字接口将数据直接发送到实际的物理网卡上去;每个虚拟主机的路由表、地址解析协议(Address Resolution Protocol, ARP)表和网络数据资源都是独立的;本发明实施例将真实AP和STA的数据转发抽象为虚拟主机(虚拟AP和虚拟STA)间的数据转发,该数据转发只需要在虚拟网卡的消息队列中放入数据即可;每个虚拟AP都有关联的虚拟STA主机列表,能够让STA关联上线;每个虚拟STA都有一个对应的关联AP,这样虚拟STA主机的数据可以经由关联的AP进行Capwap协议封装后发送到AC ;
[0056]可选地,所述通过所述转发线程捕获所述AC发送至物理网卡的数据包,包括:
[0057]通过所述转发线程将所述物理网卡设置成混杂模式,捕获所有发送至所述物理网卡的数据包。
[0058]在具体实施过程中,可以采用转发线程将物理网卡设置成混杂模式,捕获所有流经物理网卡的数据包,比如,在捕获到AC发送过来的数据包后,根据媒体接入控制(MediaAccess Control, MAC)地址,将数据包分配到对应的虚拟网卡的消息队列中;每张虚拟网卡对应一个虚拟主机线程,也即该虚拟网卡所属虚拟主机的主机线程,该虚拟主机线程读取消息队列中的数据包,在将该数据包中的数据处理完毕后,将处理后的数据经过相应协议栈封装后通过转发线程将处理后的数据发送给AC;若虚拟主机线程的进程调度队列执行网络进程(Network Process)时,需要将接收到的数据转交给其它进程使用,则当调度到其它进程时,虚拟网卡发送基于无线接入点和配置协议(Control And Provisioning ofWireless Access Points Protocol Specification,CAPWAP)的数据或基于动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)的数据到物理网卡中进行后续处理。
[0059]可选地,根据以下步骤创建多台虚拟主机的虚拟网卡:
[0060]读取配置文件中配置的虚拟AP和虚拟STA信息;所述虚拟AP和虚拟STA信息包括虚拟AP的个数和每个虚拟AP关联的虚拟STA的个数,虚拟AP和虚拟STA的虚拟局域网VLAN信息;
[0061]根据所述虚拟AP和虚拟STA信息,创建所述多台虚拟主机的虚拟网卡。
[0062]可选地,所述配置文件中还包括以下信息中的一种或多种:
[0063]AC发现过程的方式;
[0064]每个虚拟STA的用户名和密码;
[0065]各个交互过程所需要的报文内容。
[0066]上述配置文件中的数据可以包括虚拟AP的个数,每个虚拟AP关联的虚拟STA的个数,虚拟AP和虚拟STA的VLAN信息,AC发现过程的方式,按照特定规则配置的每个虚拟STA的用户名和密码,各个交互过程所需要的报文内容等,其中,VLAN信息包括VLAN的标识(Identity, ID)号,还可以包括二层服务质量(Quality of Service, QoS)优先级等。这些数据可用于进行虚拟网卡的创建和虚拟网卡与AC之间的交互过程,如,配置的AC发现过程的方式可以用于测试AC发现,配置的每个虚拟STA的用户名和密码可用于测试AC对STA的上网认证性能,各个交互过程所需要的报文内容可用于初始化等测试流程中的一些环节;本发明实施例中测试流程的初始化工作包括模拟软件核心初始化,从配置文件读取配置数据,交互报文初始化,协议栈初始化,虚拟STA关联虚拟AP,为虚拟AP和STA分配虚拟网卡资源和线程资源,启动核心线程接收物理网卡的原始套接字,并通过比对MAC地址将报文分发到各个虚拟网卡的收报队列中等;本发明实施例虚拟AP和虚拟STA在模拟真实AP和真实STA的行为时,需要按照真实AP和真实STA遵守的协议传输数据,因此,本发明实施例在测试AC性能时,还需要采用真实AP和真实STA传输数据时遵守的协议对虚拟AP和虚拟STA传输的数据进行封装和解封装,具体包括链路层的以太网(Ethnet,ΕΤΗ)协议、地址解析协议(Address Resolution Protocol, ARP),网络层的网间控制报文协议(Internet Control Messages Protocol, , ICPM)、IP 和传输层的用户数据包协议(UserDatagram Protocol, UDP)、传输控制协议(Transmission Control Protocol, TCP),以及DHCP和CAPWAP协议等。
[0067]本发明实施例中,在采用虚拟网卡充当虚拟AP和虚拟STA后,虚拟AP和虚拟STA的工作过程和内容可以包括:(一)AC发现过程:本发明实施例可以支持两种AC发现过程,静态发现和DHCP发现;如果配置文件配置的AC发现过程为DHCP发现,则虚拟AP会采用DHCP来发现AC,如果配置文件配置了静态的AC,则不需要发现过程;(二)基于CAPWAP协议的状态转换过程:虚拟AP可以根据自身状态和收到的报文在空闲(IDLE)状态、发现(DISCOVERY)状态、接入(JOIN)状态、配置(STATE-C0NFIG)状态、转换(STATE-CHG-STATE)状态、运行(STATE-RUN)状态之间转换并发送相应的报文;(三)AP配置更新和WLAN配置:进入STATE-RUN状态后的虚拟AP在收到AC发送的配置更新报文时回复响应报文给AC,表示配置更新成功,虚拟AP收到AC发送的WLAN配置报文也会回复响应报文给AC ;(四)AC与AP之间的心跳检测:进入STATE-RUN状态后的虚拟AP经过设定的时间后会主动发送心跳报文给AC,以维持AC与AP之间的心跳,连续未收到心跳回应次数超过设定次数时,虚拟AP会在进入IDLE状态后将所有在该AP下的STA下线并重新启动接入上线流程;(五)如果配置有虚拟STA,则虚拟AP在STA-RUN状态下会关联虚拟STA,并发送虚拟STA的信息给AC,AC下发用户配置信息,虚拟AP再回复响应,虚拟STA关联成功;(六)在与虚拟AP关联成功后,虚拟STA按照DHCP协议申请IP地址,虚拟STA发送的报文会按照CAPWAP协议被封装再发送给AC,发往虚拟STA的报文也会进行CAPWAP解封装;(七)虚拟STA获取到IP地址后,如果AC配置了 STA必须通过认证才能上网,则启动虚拟STA的入口(PORTAL)认证流程,虚拟STA模拟上网行为去访问网页,AC截获并回复重定向报文给虚拟STA ;(八)虚拟STA主动发起TCP连接请求,PORTAL服务器向该虚拟STA发送认证页面后,虚拟STA向PORTAL服务器发送自身的用户名和密码,PORTAL服务器经过与认证(RADIUS)服务器和AC进行交互得到认证结果后,将认证结果发送给虚拟STA和AC ;(九)虚拟STA收到认证通过的页面后,可发送Ping包模拟真实STA产生数据流量,同时,还需要配置数据接收端的IP地址,Ping包负载大小和数据传输速率;如此,完成了一个完整的工作流程,之后,进入提供的命令行界面可以查看虚拟AP和虚拟STA的统计信息,也可以根据IP地址或者MAC地址查看特定的虚拟AP和虚拟STA,同时可以改变虚拟AP和虚拟STA的状态重新继续特定状态下的行为。
[0068]如图3所示,为本发明实施例提供的测试用的网络架构示意图,包括外网,PORTAL服务器,RADIUS服务器,主备AC,真实AP、真实STA以及PC机,各设备依次连接;外网也即是Internet网络,用于虚拟STA进行Ping包模拟真实STA访问外网产生流量;认证系统包括PORTAL服务器和RADIUS服务器,PORTAL服务器完成向WLAN用户推送认证页面,RADIUS服务器用于认证计费数据管理;主备AC包括主AC和备AC,主AC在正常情况下对AP和STA进行管理并把数据备份到备AC,备AC是在主AC出现异常,不能正常工作时接替主AC的工作,以保证管理和业务正常;真实测试环境包括真实AP和真实无线终端,真实AP用来测试AC对AP管理的相关功能项,真实STA用来测试AC对STA管理的相关功能项;本发明实施例可以批量模拟真实AP和真实STA,测试AC在大容量接入AP和STA的压力下表现出来的稳定性和转发能力,认证计费能力等。
[0069]本发明实施例安装有虚拟网卡的PC机只需是装有LINUX系统的普通PC机即可;根据实际测试需求,该网络架构还可以接入交换机路由器扩展成如图4和图5所示的二层和三层网络架构;
[0070]如图6所示,为本发明实施例采用如图3?图5任一所示的网络架构进行AC性能测试的流程图,包括:
[0071]S601:采用真实的AP和STA来测试AC的功能项,保证AC功能的可用性和完整性;
[0072]S602:采用虚拟AP,模拟多个AP接入AC的过程,测试AC的大容量并发接入能力;该过程包括基于CAPWAP协议的AP与AC之间的交互过程,通过统计可以查看AP接入的详细信息,调整AP个数可以测试AC的最大接入容量,如发现异常,可以查看状态并通过抓包分析原因;
[0073]S603:启动虚拟STA,发起PORTAL认证,测试AC的大容量并发认证能力和计费能力;
[0074]S604:虚拟STA进行PING产生数据流量,测试AC的大容量并发转发能力;
[0075]在具体实施过程中,当虚拟AP成功接入AC后,虚拟STA自动关联并获取IP地址,测试AC在大容量下的并发接入能力;虚拟STA自动模拟真实STA上网行为,进行PORTAL认证过程,每个虚拟STA配置有自己的用户名和密码,只有认证通过STA的才能进行PING包产生数据流量,并对流量大小或者在线时长进行计费,不通过的只能在关联状态无法正常上网,此流程可以测试AC的PORTAL认证能力和计费能力;认证通过后的虚拟STA为在线状态,此外,可以配置外网PC的IP地址进行PING包模拟STA产生数据流量,该数据流量速度可调,由此可以测试AC的数据转发能力;
[0076]S605:执行主备AC切换,测试主AC的备份能力和主备AC的可用性;
[0077]在具体实施中,可以主动将主AC挂死,测试主备AC的高可用性,测试主AC是否将AP和STA的数据和业务都转交给备AC,并测试该过程所需时间,是否会发生中断,丢包率等;比如,在系统进入稳定状态时,将主AC的关键进程杀掉或将主AC的网线拔除,此时可以测试主备AC倒换的切换时间。
[0078]S606:配置错误的虚拟AP和/或虚拟STA信息,使得虚拟AP和/或虚拟STA的状态、报文、VLAN和用户面、密码等中的一种或多种异常,测试AC对异常情况的处理能力;
[0079]在具体实施中,可以主动配置错误的虚拟AP和/或虚拟STA信息,比如为STA配置错误的用户名和/或密码等,测试AC对异常状态的处理能力。
[0080]S607:将虚拟STA关联的虚拟AP更改为另一个虚拟AP,测试AC对STA漫游支持的能力。
[0081]在具体实施中,可以通过命令行界面(command-line interface, CLI),将某一个虚拟STA关联的虚拟AP更改为另一个虚拟AP,这样,可以测试AC对STA漫游支持的能力。
[0082]为了进一步说明本发明实施例进行AC性能测试的方法流程,下面通过几个具体的实施例进行介绍;
[0083]如图7所示,为本发明实施例在AC测试过程中进行数据包处理的方法流程图,图8为与图7对应的进行AC测试的示意图,本发明实施例在AC测试过程中进行数据包处理的方法流程包括:
[0084]S701:转发线程捕获到AC发送过来的数据包,根据MAC地址将该数据包转发到相应的虚拟网卡的消息队列中;
[0085]S702:虚拟主机线程从消息队列中读取数据包,根据报文头判断数据包类型,若确定是ARP报文则根据ARP协议作相应处理,若确定是互联网控制报文协议(InternetControl Message Protocol, ICMP)报文则根据ICMP协议回复,若确定是UDP报文则进一步判断端口号;
[0086]S703:如果端口号是DHCP报文按照DHCP协议回复,如果是CAPWAP控制报文,则进一步分析消息类型,根据当前主机的状态作相应处理,若确定是CAPWAP数据报文,则将该数据包转发到相应虚拟STA的消息队列中;
[0087]S704:虚拟STA从消息队列读取数据包并判断数据包的类型,若确定是ARP报文则根据ARP协议作相应处理,若确定是ICMP报文则根据ICMP协议回复,若确定是Μ)Ρ协议则根据端口号进一步分析处理,若确定是TCP报文则根据TCP协议处理;
[0088]S705:虚拟主机线程将处理之后的数据包经转发线程发往AC,若未建立CAPWAP隧道,则直接将ARP、ICMP报文经协议栈封装后发送,虚拟AP与AC之间的CAPWAP控制报文要先经过CAPWAP封装后再经标准的协议栈封装发送,虚拟STA的报文经标准协议栈封装后需添加所关联的虚拟AP信息,之后进行CAPWAP封装后经标准协议栈封装发送。
[0089]如图9所示,为本发明实施例进行组网并进行AC性能测试的流程图,包括:
[0090]S901:根据图3、图4或者图5的示意,将各个测试用设备依次连通外网、认证系统和主备AC,并配置好主备AC ;
[0091]S902:接入真实测试环境,测试AC功能项的可用性和完整性;
[0092]S903:设置好配置文件,启动安装有虚拟网卡的PC机,使虚拟AP和虚拟STA接入接入主AC,测试大量虚拟AP和虚拟STA接入AC时,该AC的并发接入能力,特别是DHCP分配,状态管理等;
[0093]S904:启动虚拟STA,模拟真实STA的PORTAL认证功能,开始进行PORTAL认证,测试AC的认证计费能力;
[0094]S905:启动虚拟STA的Ping功能,认证通过的虚拟STA开始向外网发出Ping包模拟真实STA产生流量,测试AC的数据转发能力;
[0095]S906:切换主备AC,测试AC的可用性。
[0096]如图10所示,为本发明实施例提供的测试AC性能过程中的各报文交互流程,包括:
[0097]S1001:AC发现,获取IP地址;
[0098]具体地,虚拟AP根据DHCP协议,发送DHCP发现(Discover)报文,在收到DHCP邀请(Offer)报文后后发送DHCP请求(Request)报文请求IP地址,AC回复DHCP响应(ACK)分配IP地址;
[0099]S1002:虚拟 AP 接入 AC ;
[0100]具体地,虚拟AP发送接入请求(Join Request)请求接入AC, AC回复接入响应(Join Response)手艮文;
[0101]S1003:虚拟AP请求配置状况;
[0102]具体地,虚拟AP发送配置状况请求(Configuration Status Request),AC回复响应配置状况响应(Configuration Status Response);
[0103]S1004:虚拟AP检测数据通道改变状态;
[0104]具体地,虚拟AP发送状态改变请求(Change State Request)报文,AC回复状态改变响应(Change State Response)报文;
[0105]S1005:AC向虚拟AP下发配置更新报文;
[0106]具体地,AC下发配置更新请求(Configuration Update Request)报文,虚拟AP回复配置更新响应(Configuration Update Response)报文;
[0107]S1006:虚拟AP进行心跳检测;
[0108]具体地,虚拟AP发送心跳请求(Echo Request)报文,AC回复心跳响应(EchoResponse)报文;
[0109]S1007:AC向虚拟AP下发WLAN配置;
[0110]具体地,AC下发WLAN配置请求(WLAN Configuration Request)报文,虚拟AP回复 WLAN 配置响应(WLAN Configuration Response)报文;
[0111]S1008:虚拟AP向AC发送虚拟STA信息;
[0112]具体地,虚拟AP发送STA信息请求(Station Information Request)报文;AC回复 STA 信息响应(Station Information Response)报文;
[0113]S1009:AC下发用户配置;
[0114]具体地,AC下发用户配置请求(Station Configuration Request)报文,虚拟AP回复用户配置响应(Station Configuration Response)报文;
[0115]SlOlO:虚拟STA获取IP地址;
[0116]具体地,虚拟STA根据DHCP协议,向AC发送DHCP Discover,在收到AC回复的DHCPOffer后,发送DHCP Request获取IP地址,AC回复DHCP ACK为该虚拟STA分配IP地址;
[0117]SlOll:AC 强制 STA 进行 PORTAL 认证;
[0118]具体地,虚拟STA模拟真实STA访问网页(First HTTP Packet), AC截获此请求,并回复虚拟STA —个重定向报文(302Redirect URL),强制虚拟STA访问PORTAL服务器;
[0119]S1012:虚拟STA执行PORTAL认证流程;
[0120]具体地,虚拟STA根据收到的重定向报文,访问PORTAL服务器(First ConnectPORTAL),PORTAL服务器重新回复一个重定向报文给虚拟STA(302Redirect URL),虚拟STA再次收到重定向报文后再次访问PORTAL服务器(Second Connect PORTAL),PORTAL服务器推送认证页面给虚拟STA,虚拟STA发送携带用户名和密码的报文给PORTAL服务器,PORTAL服务器进行后续的认证过程,最后发送认证结果给虚拟STA ;
[0121]S1013:虚拟STA产生模拟流量;
[0122]具体地,开启虚拟STA的Ping功能,虚拟STA发送回应请求(Echo Request)报文,目的端,即外网,回复回应响应(Echo Reply)报文。
[0123]基于同一发明构思,本发明实施例中还提供了一种与测试接入控制器性能的方法对应的测试接入控制器性能的装置,由于该装置解决问题的原理与本发明实施例测试接入控制器性能的方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
[0124]如图11所示,为本发明实施例提供的测试接入控制器性能的装置结构图,包括:
[0125]创建模块111,用于创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟接入点AP或一个虚拟站点STA,每台虚拟主机包括虚拟网卡和虚拟主机线程;
[0126]测试模块112,用于通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能。
[0127]可选地,所述测试模块112具体用于:创建收发数据包的转发线程;通过所述转发线程捕获所述AC发送至物理网卡的数据包,并根据所述数据包的媒体接入控制MAC地址,将所述数据包分配到对应的虚拟网卡中;和/或,通过所述虚拟主机线程读取并处理对应的虚拟网卡中的数据包,并通过所述转发线程将处理后的数据包发送给所述AC。
[0128]可选地,所述测试模块112具体用于:通过所述转发线程将所述物理网卡设置成混杂模式,捕获所有发送至所述物理网卡的数据包。
[0129]可选地,所述创建模块111具体用于:读取配置文件中配置的虚拟AP和虚拟STA信息;所述虚拟AP和虚拟STA信息包括虚拟AP的个数和每个虚拟AP关联的虚拟STA的个数,虚拟AP和虚拟STA的虚拟局域网VLAN信息;根据所述虚拟AP和虚拟STA信息,创建所述多台虚拟主机的虚拟网卡。
[0130]可选地,所述配置文件中还包括以下信息中的一种或多种:
[0131]AC发现过程的方式;
[0132]每个虚拟STA的用户名和密码;
[0133]各个交互过程所需要的报文内容。
[0134]本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0135]本发明是参照根据本发明实施例的方法、装置(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0136]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。[0137]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0138]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0139]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种测试接入控制器AC性能的方法,其特征在于,该方法包括: 创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟接入点AP或一个虚拟站点STA,每台虚拟主机包括虚拟网卡和虚拟主机线程; 通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能。
2.如权利要求1所述的方法,其特征在于,基于以下步骤实现所述虚拟AP与所述AC之间的信息传输,或所述虚拟STA与所述AC之间的信息传输: 创建收发数据包的转发线程; 通过所述转发线程捕获所述AC发送至物理网卡的数据包,并根据所述数据包的媒体接入控制MAC地址,将所述数据包分配到对应的虚拟网卡中;和/或, 通过所述虚拟主机线程读取并处理对应的虚拟网卡中的数据包,并通过所述转发线程将处理后的数据包发送给所述AC。
3.如权利要求2所述的方法,其特征在于,所述通过所述转发线程捕获所述AC发送至物理网卡的数据包,包括: 通过所述转发线程将所述物理网卡设置成混杂模式,捕获所有发送至所述物理网卡的数据包。
4.如权利要求1所述的方法,其特征在于,根据以下步骤创建多台虚拟主机的虚拟网卡: 读取配置文件中配置的虚拟AP和虚拟STA信息;所述虚拟AP和虚拟STA信息包括虚拟AP的个数和每个虚拟AP关联的虚拟STA的个数,虚拟AP和虚拟STA的虚拟局域网VLAN信息; 根据所述虚拟AP和虚拟STA信息,创建所述多台虚拟主机的虚拟网卡。
5.如权利要求4所述的方法,其特征在于,所述配置文件中还包括以下信息中的一种或多种: AC发现过程的方式; 每个虚拟STA的用户名和密码; 各个交互过程所需要的报文内容。
6.一种测试接入控制器AC性能的装置,其特征在于,该装置包括: 创建模块,用于创建多台虚拟主机,其中,每台虚拟主机作为一个虚拟接入点AP或一个虚拟站点STA,每台虚拟主机包括虚拟网卡和虚拟主机线程; 测试模块,用于通过至少一个虚拟AP与所述AC之间进行信息传输,以及至少一个虚拟STA与所述AC之间进行信息传输,测试所述AC的性能。
7.如权利要求6所述的装置,其特征在于,所述测试模块具体用于:创建收发数据包的转发线程;通过所述转发线程捕获所述AC发送至物理网卡的数据包,并根据所述数据包的媒体接入控制MAC地址,将所述数据包分配到对应的虚拟网卡中;和/或,通过所述虚拟主机线程读取并处理对应的虚拟网卡中的数据包,并通过所述转发线程将处理后的数据包发送给所述AC。
8.如权利要求7所述的装置,其特征在于,所述测试模块具体用于:通过所述转发线程将所述物理网卡设置成混杂模式,捕获所有发送至所述物理网卡的数据包。
9.如权利要求6所述的装置,其特征在于,所述创建模块具体用于:读取配置文件中配置的虚拟AP和虚拟STA信息;所述虚拟AP和虚拟STA信息包括虚拟AP的个数和每个虚拟AP关联的虚拟STA的个数,虚拟AP和虚拟STA的虚拟局域网VLAN信息;根据所述虚拟AP和虚拟STA彳目息,创建所述多台虚拟王机的虚拟网卡。
10.如权利要求9所述的装置,其特征在于,所述配置文件中还包括以下信息中的一种或多种: AC发现过程的方式; 每个虚拟STA的用户名和密码; 各个交互过程所需要 的报文内容。
【文档编号】H04W24/06GK103945445SQ201410095461
【公开日】2014年7月23日 申请日期:2014年3月13日 优先权日:2014年3月13日
【发明者】张海泉, 胡明城, 关则洛 申请人:京信通信技术(广州)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1