CN105610638A - 一种模拟用户无线上网行为的方法 - Google Patents
一种模拟用户无线上网行为的方法 Download PDFInfo
- Publication number
- CN105610638A CN105610638A CN201510678961.2A CN201510678961A CN105610638A CN 105610638 A CN105610638 A CN 105610638A CN 201510678961 A CN201510678961 A CN 201510678961A CN 105610638 A CN105610638 A CN 105610638A
- Authority
- CN
- China
- Prior art keywords
- client
- control protocol
- transmission control
- request
- internet access
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
Landscapes
- Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明适用于无线网络技术领域,提供了一种模拟用户无线上网行为的方法,其包括如下步骤:提供多个无线网卡及一个代理服务器,每个无线网卡代表一个真实的无线客户端;将该多个无线网卡均连接到一个能够上外网的无线网络;创建第一脚本及第二脚本;通过导入该第一脚本实现自动发出上网请求的子进程及实现自动并发上网请求的多进程;及通过导入该第二脚本将每个上网请求分别绑定到一个无线网卡上,然后该代理服务器与自动发出上网请求的多个请求客户端及外网进行交互。该模拟用户无线上网行为的方法能够模拟多个真实的用户进行无线上网,简单、方便且成本低。
Description
技术领域
本发明属于无线网络技术领域,尤其涉及一种模拟用户无线上网行为的方法。
背景技术
路由器在生产过程中需要检测其能承载多少个用户(即无线终端)同时进行无线上网,因此需要模拟多个真实的用户进行无线上网。现在一般有三种方法来模拟用户无线上网行为。第一种方法是采用仪表,但是很多公司因为无法承受如此高昂的费用所以没办法使用。第二种方法是在电脑上安装许多虚拟机,每个虚拟机占用一个无线网卡,来模拟无线客户端,但是安装虚拟机势必会影响电脑主机的性能,装的越多,电脑主机的性能越差,从而也会影响测试的进行。第三种方法是使用测试工具(比如LOADRUNNER),但是多个用户都是虚拟出来的,并不是真实的,与实际应用还是有一定的差距。
发明内容
本发明所要解决的技术问题在于提供一种模拟用户无线上网行为的方法,旨在能够模拟真实的用户进行无线上网,简单、方便且成本低。
本发明是这样实现的,一种模拟用户无线上网行为的方法,其包括如下步骤:提供多个无线网卡及一个代理服务器,每个无线网卡代表一个真实的无线客户端,该代理服务器能够绑定该无线网卡并实现上网功能;将该多个无线网卡均连接到一个能够上外网的无线网络;创建第一脚本及第二脚本;通过导入该第一脚本实现自动发出上网请求的子进程及实现自动并发上网请求的多进程;及通过导入该第二脚本将每个上网请求分别绑定到一个无线网卡上,然后该代理服务器与自动发出上网请求的多个请求客户端及该外网进行交互。
本发明与现有技术相比,有益效果在于:本发明的模拟用户无线上网行为的方法,在电脑上连接多个无线网卡,每个无线网卡分别代表一个真实的无线客户端;代理服务器能够实现将客户端发送的多个上网请求分别绑定到相应的网卡上去,并实现上网功能,从而能够模拟多个真实的用户进行无线上网,简单、方便且成本低。
附图说明
图1本发明实施例提供的模拟用户无线上网行为的方法的流程图。
图2是图1的模拟用户无线上网行为的方法中自动发出上网请求的子进程的流程图。
图3是图1的模拟用户无线上网行为的方法中自动并发上网请求的多进程的流程图。
图4是代理服务器与请求客户端和外网交互的结构图。
图5是第一TCP客户端与浏览器的映射关系图。
图6是第二TCP客户端与无线网卡的映射关系图。
图7是代理服务器与请求客户端和外网交互的流程图。
图8是图1的模拟用户无线上网行为的方法中的第一部分步骤的流程图。
图9是图1的模拟用户无线上网行为的方法中的第二部分步骤的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明实施例提供的模拟用户无线上网行为的方法,其包括如下步骤:
S1:提供多个无线网卡及一个代理服务器,每个无线网卡代表一个真实的无线客户端。
S2:将该多个无线网卡均连接到同一个能够上外网的无线网络。
S3:创建第一脚本及第二脚本,该第一脚本用于实现自动并发上网请求,该第二脚本用于将上网请求绑定无线网卡并转发上网请求。
S4:将该第一脚本通过导入python语言的selenium库实现自动发出上网请求的子进程,然后引用python语言的多进程技术实现自动并发上网请求,即实现自动上网请求的多进程。该Python语言是一种解释型、面向对象、动态数据类型的高级程序设计语言。该Selenium是一个Web应用程序自动化测试工具,由ThoughtWorks公司的开发和测试员团队开发。
具体的,图2为自动发出上网请求的子进程,其包括如下子步骤:
S401:自动设置一浏览器的代理服务器地址及端口号。在本实施例中,该浏览器的代理服务器地址为运行该代理服务器脚本的主机的网络之间互连的协议(InternetProtocol,IP)地址,端口号为该代理服务器设置的端口号。
S402:自动打开该浏览器。
S403:自动请求指定的统一资源定位符(UniformResourceLocator,URL),并进行上网操作。
S404:检测上网是否成功。
S405:若上网成功,则该子进程直接结束。
S406:若上网失败,则等待直到超时为止。
图3为自动并发上网请求的多进程,其包括如下步骤:
S411:创建多个自动发出上网请求的子进程。
S412:控制该多个自动发出上网请求的子进程同时发出上网请求。请求的URL可以一致也可以不一致。
S413:控制父进程阻塞式等待所有自动发出上网请求的子进程结束,直到所有自动发出上网请求的子进程全部结束为止。
S5:将该第二脚本通过导入python语言的selenium库,以控制该代理服务器将每个上网请求分别绑定到一个无线网卡上,然后该代理服务器与该多个自动发出上网请求的多个请求客户端及外网进行交互,从而将该多个请求客户端的上网请求转发到外网,同时还将该外网的数据传输给该多个请求客户端。
具体的,如图4所示,步骤S5包括如下子步骤:
S51:建立该代理服务器与该请求客户端和外网之间的交互连接关系。在本实施例中,通过套接字技术实现该代理服务器与该请求客户端和外网之间的交互。图5为代理服务器与请求客户端和外网(即因特网)交互的结构图。在代理服务器内建立一个套接字服务器端(SocketServer)及一个套接字客户端(SocketClient)。将该套接字服务器端设定为第一传输控制协议(TransmissionControlProtocol,TCP)服务器端,将该因特网(Internet)设定为第二TCP服务器端,将该多个请求客户端(RequestClient)分别设定为多个第一TCP客户端,将该套接字客户端(SocketClient)设定为第二TCP客户端。该请求客户端与该套接字服务器端组成一个套接字,在建立TCP链接之后进行通信。该因特网与该套接字客户端组成一个套接字,在建立TCP链接之后进行通信。由于该第一TCP服务器端和该第二TCP客户端同时在该第二脚本里,所以能够互相传输数据。
S52:创建多个第一TCP客户端与多个浏览器之间的第一映射表。图6是第一TCP客户端与浏览器的映射关系图。由于需要并发进行上网请求,所以有多个第一TCP客户端,每个第一TCP客户端代表一个上网请求,就相当于一个浏览器在发送上网请求,所以能够将每个第一TCP客户端映射成一个浏览器,形成该第一映射表。
S53:创建多个第二TCP客户端与该多个无线网卡之间第二映射表。图7是第二TCP客户端与无线网卡的映射关系图。第二TCP客户端的作用就是转发第一TCP服务器端接收到的从第一TCP客户端发送来的数据包,并将该数据包绑定到一个无线网卡上,这样就相当于不同的上网请求是从不同的无线网卡出去并连接到外网的。由于该第二TCP客户端需要绑定多个不同的无线网卡,所以要建立多个第二TCP客户端,这里第二TCP客户端和无线网卡也是一一对应关系,形成第二映射表。
S54:将该代理服务器与该请求客户端和该外网进行交互,从而将该多个请求客户端的上网请求转发到外网,同时还将该外网的数据传输给该多个请求客户端。代理服务器与请求客户端和外网交互的流程图包括第一子步骤及第二部分步骤。该第一部分步骤是请求报文的数据包从该第一TCP服务器端(即请求客户端)传输到第二TCP服务器端(外网)。该第二部分步骤是请求报文的数据包从第二TCP服务器端(外网)传输到该第一TCP服务器端(即请求客户端)。
如图8所示,该第一部分步骤包括如下子步骤:
S541:根据第一TCP客户端(浏览器)发出的请求报文,记录该请求报文的数据包的源端口号。
S542:在第一映射表中查找该源端口号是否有对应的第一TCP服务器端。
S543:若在第一映射表中该源端口号有对应的第一TCP服务器端,则将该报文转发给该第一TCP服务器端,然后转入步骤S545。
S544:若在第一映射表中该源端口号没有对应的第一TCP服务器端,则获得该请求报文的数据包的该源端口号,并将该源端口号与该第一TCP服务器端形成一个新映射,并该新映射加入该第一映射表,然后将该报文的数据包转发给该第一TCP服务器端,转入步骤S545。
S545:控制该第一TCP服务器端在该第二映射表中查找该源端口号是否有对应的第二TCP客户端。
S546:若在该第二映射表中该源端口号有对应的第二TCP客户端,则将该请求报文的数据包转发给该第二TCP客户端,并通过该第二TCP客户端将该请求报文的数据包转发给该外网。
S547:若若在该第二映射表中该源端口号没有对应的第二TCP客户端,则获得该请求报文的数据包的源端口号,并从该第二TCP客户端的集群中选出一个空闲的第二TCP客户端,将该源端口号与该空闲的第二TCP客户端形成一个新映射,并将该新映射加入该第二映射表,然后将该请求报文的数据包通过该第二TCP客户端转发给该外网。
如图9所示,该第二部分步骤包括如下子步骤:
S551:根据第二TCP客户端(外网)发过来的请求报文,解析该请求报文的目的端口号,然后在第二映射表中查找该目的端口号对应的第二TCP客户端。
S552:将该请求报文转发给该第二TCP客户端,然后通过该第二TCP客户端转发给该第一TCP服务器端。
S553:控制该第一TCP服务器端解析出该请求报文的数据包的目的端口号,然后在第一映射表中查找该目的端口号对应的第一TCP客户端。
S554:将该请求报文的数据包转发给该第一TCP客户端。
可以理解,本发明的上网请求可以采用除Selenium之外的技术,并发也可以采用非阻塞的机制。该代理服务器与该客户端的上网请求以及与该外网之间的交互可以采用除套接字之外的技术。
与现有技术相比较,本发明的模拟用户无线上网行为的方法,在电脑上连接多个无线网卡,每个无线网卡分别代表一个真实的无线客户端;代理服务器能够实现将客户端发送的多个上网请求分别绑定到相应的网卡上去,并实现上网功能,从而能够模拟多个真实的用户进行无线上网。该模拟用户无线上网行为的方法不影响电脑主机的性能,模拟的无线客户端都是真实的无线客户端,且无线客户端的数量由无线网卡的数量决定,方便、简单且成本低。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种模拟用户无线上网行为的方法,其特征在于,所述方法包括如下步骤:提供多个无线网卡及一个代理服务器,每个所述无线网卡代表一个真实的无线客户端;将该多个无线网卡均连接到一个能够上外网的无线网络;创建第一脚本及第二脚本;通过导入该第一脚本实现自动发出上网请求的子进程及实现自动并发上网请求的多进程;及通过导入该第二脚本将每个上网请求分别绑定到一个该无线网卡上,然后控制该代理服务器与自动发出上网请求的多个请求客户端及该外网进行交互。
2.如权利要求1所述的模拟用户无线上网行为的方法,其特征在于,该步骤“自动发出上网请求的子进程”包括如下子步骤:自动设置一浏览器的代理服务器地址及端口号;自动打开该浏览器;自动请求指定的统一资源定位符,并进行上网操作;检测上网是否成功;若上网成功,则该子进程直接结束;若上网失败,则等待直到超时为止。
3.如权利要求2所述的模拟用户无线上网行为的方法,其特征在于,该步骤“自动并发上网请求的多进程”包括如下子步骤:创建多个自动发出上网请求的子进程;控制该多个自动发出上网请求的子进程同时发出上网请求;及控制父进程阻塞式等待所有自动发出上网请求的子进程结束,直到所有自动发出上网请求的子进程全部结束为止。
4.如权利要求2所述的模拟用户无线上网行为的方法,其特征在于,该步骤“通过导入该第二脚本将每个上网请求分别绑定到一个无线网卡上,然后该代理服务器与该多个自动发出上网请求的多个请求客户端及该外网进行交互”包括如下子步骤:在该代理服务器内建立一个套接字服务器端及一个套接字客户端,将该套接字服务器端设定为第一传输控制协议服务器端,将该外网设定为第二传输控制协议服务器端,将该多个请求客户端设定为多个第一传输控制协议客户端,将该套接字客户端设定为第二传输控制协议客户端;创建该多个第一传输控制协议客户端与多个该浏览器之间的第一映射表;创建该第二传输控制协议客户端与该多个无线网卡之间第二映射表;及将该代理服务器与该请求客户端和该外网进行交互。
5.如权利要求4所述的模拟用户无线上网行为的方法,其特征在于,该多个第一传输控制协议客户端与该多个浏览器是一一对应的关系,从而形成该第一映射表。
6.如权利要求4所述的模拟用户无线上网行为的方法,其特征在于,该多个第二传输控制协议客户端与该多个无线网卡也是一一对应的关系,从而形成该第二映射表。
7.如权利要求4所述的模拟用户无线上网行为的方法,其特征在于,该步骤“将该代理服务器与该请求客户端和该外网进行交互”还包括“将该多个请求客户端的上网请求转发到外网”的第一部分步骤,该第一部分步骤包括如下子步骤:根据第一传输控制协议客户端发过来的请求报文,记录该请求报文的数据包的源端口号,然后在第一映射表中查找该源端口号是否有对应的第一传输控制协议服务器端;若在第一映射表中该源端口号有对应的第一传输控制协议服务器端,则将该报文转发给该第一传输控制协议服务器端;控制该第一传输控制协议服务器端在该第二映射表中查找该源端口号有对应的第二传输控制协议客户端;及若在该第二映射表中该源端口号有对应的第二传输控制协议客户端,则将该请求报文的数据包转发给该第二传输控制协议客户端,并通过该第二传输控制协议客户端将该请求报文的数据包转发给该外网。
8.如权利要求7所述的模拟用户无线上网行为的方法,其特征在于,该第一部分步骤还包括“在该第一映射表中该源端口号没有对应的第一传输控制协议服务器端,则获得该请求报文的数据包的源端口号,并将该源端口号与该第一传输控制协议服务器端形成一个新映射,并该新映射加入该第一映射表,然后将该请求报文的数据包转发给该第一传输控制协议服务器端”的步骤。
9.如权利要求7所述的模拟用户无线上网行为的方法,其特征在于,该第一部分步骤还包括“若在该第二映射表中该源端口号没有对应的第二传输控制协议客户端,则将获得该报文的数据包的源端口号,并从该第二传输控制协议客户端的集群中选出一个空闲的第二传输控制协议客户端,将该源端口号与该空闲的第二传输控制协议客户端形成一个新映射,并该新映射加入该第二映射表,然后将该请求报文的数据包通过该第二传输控制协议客户端转发给该外网”的步骤。
10.如权利要求4所述的模拟用户无线上网行为的方法,其特征在于,该步骤“将该代理服务器与该请求客户端和该外网进行交互”包括“将该外网的数据传输给该多个请求客户端”的第二部分步骤,该第二部分步骤还包括如下子步骤:根据该第二传输控制协议客户端发过来的请求报文,解析该请求报文的目的端口号,然后在第二映射表中查找该目的端口号是否有对应的第二传输控制协议客户端;将该请求报文的数据包转发给该第二传输控制协议客户端,然后通过该第二传输控制协议客户端将该请求报文的数据包转发给该第一传输控制协议服务器端;控制该第一传输控制协议服务器端解析出该请求报文的数据包的目的端口号,然后在第一映射表中查找该目的端口号对应的第一传输控制协议客户端;及将该请求报文的数据包转发给该第一传输控制协议客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510678961.2A CN105610638A (zh) | 2015-10-19 | 2015-10-19 | 一种模拟用户无线上网行为的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510678961.2A CN105610638A (zh) | 2015-10-19 | 2015-10-19 | 一种模拟用户无线上网行为的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105610638A true CN105610638A (zh) | 2016-05-25 |
Family
ID=55990183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510678961.2A Pending CN105610638A (zh) | 2015-10-19 | 2015-10-19 | 一种模拟用户无线上网行为的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105610638A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110798491A (zh) * | 2018-08-01 | 2020-02-14 | 北京国双科技有限公司 | 一种网络访问方法及装置、代理服务器 |
CN113612626A (zh) * | 2021-07-08 | 2021-11-05 | 重庆长安汽车股份有限公司 | 一种基于tbox模拟平台测试云端的方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6243832B1 (en) * | 1998-08-12 | 2001-06-05 | Bell Atlantic Network Services, Inc. | Network access server testing system and methodology |
CN1992653A (zh) * | 2005-12-28 | 2007-07-04 | 中兴通讯股份有限公司 | 以太网交换机接入控制系统自动化测试的测试系统和方法 |
CN101035037A (zh) * | 2007-04-17 | 2007-09-12 | 华为技术有限公司 | 检测网络通信质量的方法、系统及相关装置 |
CN101272293A (zh) * | 2008-05-21 | 2008-09-24 | 北京星网锐捷网络技术有限公司 | 一种网络测试方法及装置 |
CN101272291A (zh) * | 2008-04-29 | 2008-09-24 | 北京星网锐捷网络技术有限公司 | 网络设备测试方法及系统 |
-
2015
- 2015-10-19 CN CN201510678961.2A patent/CN105610638A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6243832B1 (en) * | 1998-08-12 | 2001-06-05 | Bell Atlantic Network Services, Inc. | Network access server testing system and methodology |
CN1992653A (zh) * | 2005-12-28 | 2007-07-04 | 中兴通讯股份有限公司 | 以太网交换机接入控制系统自动化测试的测试系统和方法 |
CN101035037A (zh) * | 2007-04-17 | 2007-09-12 | 华为技术有限公司 | 检测网络通信质量的方法、系统及相关装置 |
CN101272291A (zh) * | 2008-04-29 | 2008-09-24 | 北京星网锐捷网络技术有限公司 | 网络设备测试方法及系统 |
CN101272293A (zh) * | 2008-05-21 | 2008-09-24 | 北京星网锐捷网络技术有限公司 | 一种网络测试方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110798491A (zh) * | 2018-08-01 | 2020-02-14 | 北京国双科技有限公司 | 一种网络访问方法及装置、代理服务器 |
CN110798491B (zh) * | 2018-08-01 | 2022-10-28 | 北京国双科技有限公司 | 一种网络访问方法及装置、代理服务器 |
CN113612626A (zh) * | 2021-07-08 | 2021-11-05 | 重庆长安汽车股份有限公司 | 一种基于tbox模拟平台测试云端的方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10860567B2 (en) | Storing state in a dynamic content routing network | |
CN104580192B (zh) | 应用程序的网络访问请求的处理方法和装置 | |
US8533310B2 (en) | Method and apparatus for acceleration by prefetching associated objects | |
US10554607B2 (en) | Heterogeneous cloud controller | |
CN101065741B (zh) | 基于ip分组网络传输pci express分组的方法 | |
US9071648B2 (en) | Asynchronous messaging using a node specialization architecture in the dynamic routing network | |
US8856279B2 (en) | Method and system for object prediction | |
CN107786621B (zh) | 一种用户信息管理方法、访问处理方法及装置和系统 | |
CN104112002B (zh) | 一种表单适配的方法、装置和系统 | |
CN103401909B (zh) | 基于bs的数据交互方法与系统、客户端及服务器 | |
CN1802638B (zh) | 用于路由提示的方法和设备 | |
CN107463453B (zh) | 同一终端不同应用间通信的方法、装置、设备和存储介质 | |
CN108270882A (zh) | 域名的解析方法和装置、存储介质、电子装置 | |
CN101178717A (zh) | 一种对网页进行适配处理的方法及网页适配装置 | |
CN112445700B (zh) | 测试方法和装置 | |
CN104639497B (zh) | 远程访问配置方法、远程访问方法、装置和系统 | |
CN108156210A (zh) | 目标资源的获取方法和装置 | |
CN103533080A (zh) | 用于lvs的服务器调度方法及装置 | |
CN104063407A (zh) | 基于云计算的浏览器架构与解析方法 | |
US20170289243A1 (en) | Domain name resolution method and electronic device | |
EP3217611A1 (en) | Media resource feedback method and device | |
CN107171889A (zh) | 网络应用接口的测试方法、装置及电子设备 | |
CN111367685B (zh) | 接口调用的方法及装置、计算机设备、存储介质 | |
CN105610638A (zh) | 一种模拟用户无线上网行为的方法 | |
CN110247926A (zh) | 一种交互方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20190507 |