CN114500351A - 网络性能测试方法、装置、设备及存储介质 - Google Patents
网络性能测试方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114500351A CN114500351A CN202210120692.8A CN202210120692A CN114500351A CN 114500351 A CN114500351 A CN 114500351A CN 202210120692 A CN202210120692 A CN 202210120692A CN 114500351 A CN114500351 A CN 114500351A
- Authority
- CN
- China
- Prior art keywords
- simulation
- gateway
- test
- tunnel
- tested
- 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
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000011056 performance test Methods 0.000 title abstract description 32
- 238000004088 simulation Methods 0.000 claims abstract description 256
- 238000012360 testing method Methods 0.000 claims abstract description 205
- 230000004044 response Effects 0.000 claims abstract description 47
- 238000012545 processing Methods 0.000 claims description 28
- 230000015654 memory Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 238000005538 encapsulation Methods 0.000 claims description 7
- 239000000126 substance Substances 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000004806 packaging method and process Methods 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
Images
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/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0485—Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供一种网络性能测试方法、装置、设备及存储介质,该方法建立模拟客户端、模拟服务器、模拟路由和模拟网关,其中,模拟路由用于模拟网络环境;控制模拟网关与待测试网关建立隧道;控制模拟客户端通过模拟网关与待测试网关建立的隧道,向模拟服务器发送测试数据包;控制模拟服务器在接收到测试数据包后,通过隧道,向模拟客户端发送测试响应;根据测试数据包和测试响应,确定待测试网关的网络性能。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种网络性能测试方法、装置、设备及存储介质。
背景技术
虚拟专用网络(Virtual Private Network,VPN)的功能是在公用网络上建立专用网络,进行加密通讯,在企业网络中有广泛应用,VPN网关通过对数据包的加密和数据包目标地址的转换实现远程访问。IPsec VPN指采用IPSec协议来实现远程接入的一种VPN技术,在公网上为两个私有网络提供安全通信通道,通过加密通道保证连接的安全,在两个公共网关间提供私密数据封包服务。IPsec VPN的性能直接影响网络质量及用户体验。
目前,IPsec VPN的性能测试主要体现在VPN加密和解密的性能以及VPN通道的建立速度和并发隧道能力,现有技术通常部署多个设备,包括客户端设备、服务器端设备和测试分析设备,通过多个设备之间的数据传输实现IPsec VPN的性能测试。
然而,现有技术中的网络性能测试方法,需要部署多个设备,成本高、实现复杂,且由于设备的不稳定性,IPsec VPN网络性能测试准确性低。
发明内容
本申请提供一种网络性能测试方法、装置、设备及存储介质,从而解决现有技术中的网络性能测试方法,需要部署多个设备,成本高、实现复杂,且由于设备的不稳定性,IPsec VPN网络性能测试准确性低的技术问题。
第一方面,本申请提供一种网络性能测试方法,包括:
建立模拟客户端、模拟服务器、模拟路由和模拟网关,其中,所述模拟路由用于模拟网络环境;
控制所述模拟网关与待测试网关建立隧道;
控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包;
控制所述模拟服务器在接收到所述测试数据包后,通过所述隧道,向所述模拟客户端发送测试响应;
根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能。
这里,本申请在进行IPsec VPN性能测试时,可以在一台设备上进行模拟客户端、模拟服务器、模拟路由和模拟网关的建立,实现模拟多VPN网关、多用户和高性能环境,从而无需多台设备,就可以进行IPsec VPN网络的模拟和性能的测试,通过模拟网关可以与待测试网关建立VPN隧道,模拟客户端和模拟服务器通过VPN隧道的数据传输可以实现对IPsecVPN网络性能的准确测试,无需部署多个设备,通过程序模拟建立虚拟设备的方式降低了成本,简化了网络性能测试步骤,同时避免了多个实体设备的不稳定带来的测试误差,提高了IPsec VPN网络性能测试的准确性。
可选地,所述控制所述模拟网关与待测试网关建立隧道,包括:
控制所述模拟网关向待测试网关发起因特网密钥交换协议安全协商,并生成IPSec安全联盟,其中,所述因特网密钥交换协议安全协商包括加密算法、摘要算法和认证方法中的至少一种。
其中,本申请模拟网关通过向待测试网关发起因特网密钥交换协议(InternetKey Exchange,IKE)安全协商,生成安全联盟(Security Association,SA),建立IPSecVPN隧道,这里的IKE安全协商包括加密算法、摘要算法和认证方法中的至少一种,实现了建立IPSec VPN隧道的建立。
可选地,所述控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包,包括:
控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,根据RFC2544测试标准和/或RFC2544测试标准,向所述模拟服务器发送测试数据包。
这里,本申请中的模拟服务器可以通过模拟网关与待测试网关建立的IPSec VPN隧道,根据RFC2544测试标准和/或RFC2544测试标准,向模拟服务器发送测试数据包,可以通过本申请中建立的模拟客户端、模拟服务器、模拟路由和模拟网关,实现了IPSec VPN的RFC2544和RFC3511的测试,进一步地提高了IPSec VPN网络性能测试的准确性和全面性、灵活性。
可选地,所述根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能,包括:
根据所述测试数据包和所述测试响应,确定所述待测试网关的VPN通道的建立速度、断开速度和保持VPN通道数量的能力中的至少一种。
这里,本申请可以根据测试数据包和测试响应,对待测试网关的VPN通道的建立速度、断开速度和保持VPN通道数量的能力进行测试,示范性的,每个模拟网关与待测试网关建立一条远程访问的国密IPSec VPN隧道,然后模拟客户端通过每个国密IPSec隧道向模拟服务端发送测试数据包,并终止隧道,从而实现国密IPSec隧道每秒新建速率测试,可准确实现IPSec VPN网络性能测试。
可选地,所述控制所述模拟网关与待测试网关建立隧道,包括:
控制多个所述模拟网关与待测试网关建立多个隧道;
相应的,所述控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包,包括:
控制所述模拟客户端通过多个所述模拟网关和所述待测试网关建立的多个隧道,向所述模拟服务器发送多个测试数据包;
相应的,所述控制所述模拟服务器在接收到所述测试数据包后,通过所述隧道,向所述模拟客户端发送测试响应,包括:
控制所述模拟服务器在接收到多个所述测试数据包后,通过所述多个隧道,向所述模拟客户端发送多个测试响应;
相应的,所述根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能,包括:
根据所述多个测试数据包和所述多个测试响应,确定所述待测试网关的最大并发隧道数和\或隧道最大吞吐率。
这里,本申请可以通过多个模拟网关(端点)与待测试网关建立多个IPSec VPN隧道,通过多个IPSec VPN隧道进行网络性能的测试,可准确测试IPSec VPN网关的最大并发隧道数和隧道最大吞吐率。
可选地,在所述建立模拟客户端、模拟服务器、模拟路由和模拟网关之前,还包括:
建立用户态协议栈,其中,所述用户态协议栈用于进行数据封装。
这里,本申请预先建立用户态协议栈,转换成用户态后,将国密的内核态协议栈转化为用户态协议栈,以使在测试过程中,基于用户态协议栈进行数据封装,通过使用用户态协议栈来进行数据封装,可以生成模拟传输控制协议(Transmission Control Protocol,TCP)的TCP数据包,既可以可靠传输,又可以避免数据重传带来的延迟增加,因此可以提高数据传输效率和传输可靠性,可提高IPSec VPN测试中模拟和实体设备的性能,进一步的提高了IPSec VPN网络性能测试的准确性。
第二方面,本申请提供了一种网络性能测试装置,包括:
第一建立模块,用于建立模拟客户端、模拟服务器、模拟路由和模拟网关,其中,所述模拟路由用于模拟网络环境;
第一处理模块,用于控制所述模拟网关与待测试网关建立隧道;
第二处理模块,用于控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包;
第三处理模块,用于控制所述模拟服务器在接收到所述测试数据包后,通过所述隧道,向所述模拟客户端发送测试响应;
确定模块,用于根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能。
可选地,所述第一处理模块具体用于:
控制所述模拟网关向待测试网关发起因特网密钥交换协议安全协商,并生成IPSec安全联盟,其中,所述因特网密钥交换协议安全协商包括加密算法、摘要算法和认证方法中的至少一种。
可选地,所述第二处理模块具体用于:
控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,根据RFC2544测试标准和/或RFC2544测试标准,向所述模拟服务器发送测试数据包。
可选地,所述确定模块具体用于:
根据所述测试数据包和所述测试响应,确定所述待测试网关的VPN通道的建立速度、断开速度和保持VPN通道数量的能力中的至少一种。
可选地,所述第一处理模块具体用于:
控制多个所述模拟网关与待测试网关建立多个隧道;
相应的,所述第二确定模块具体用于:
控制所述模拟客户端通过多个所述模拟网关和所述待测试网关建立的多个隧道,向所述模拟服务器发送多个测试数据包;
相应的,所述第三处理模块具体用于:
控制所述模拟服务器在接收到多个所述测试数据包后,通过所述多个隧道,向所述模拟客户端发送多个测试响应;
相应的,所述确定模块具体用于:
根据所述多个测试数据包和所述多个测试响应,确定所述待测试网关的最大并发隧道数和\或隧道最大吞吐率。
可选地,在所述第一建立模块建立模拟客户端、模拟服务器、模拟路由和模拟网关之前,上述装置还包括:
第二建立模块,用于建立用户态协议栈,其中,所述用户态协议栈用于进行数据封装。
第三方面,本申请提供一种网络性能测试设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面或第一方面的可选方式所述的网络性能测试方法。
第四方面,本申请提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当计算机执行指令被处理器执行时用于实现如第一方面或第一方面的可选方式所述的网络性能测试方法。
第五方面,本发明提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上第一方面以及第一方面各种可能的设计所述的网络性能测试方法。
本申请提供的网络性能测试方法、装置、设备及存储介质,该方法在进行IPsecVPN性能测试时,可以在一台设备上进行模拟客户端、模拟服务器、模拟路由和模拟网关的建立,实现模拟多VPN网关、多用户和高性能环境,从而无需多台设备,就可以进行IPsecVPN网络的模拟和性能的测试,通过模拟网关可以与待测试网关建立VPN隧道,模拟客户端和模拟服务器通过VPN隧道的数据传输可以实现对IPsec VPN网络性能的准确测试,无需部署多个设备,通过程序模拟建立虚拟设备的方式降低了成本,简化了网络性能测试步骤,同时避免了多个实体设备的不稳定带来的测试误差,提高了IPsec VPN网络性能测试的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种网络性能测试系统架构示意图;
图2为本申请实施例提供的一种网络性能测试应用场景示意图;
图3为本申请实施例提供的一种网络性能测试方法的流程示意图;
图4为本申请实施例提供的一种网络性能测试装置的结构示意图;
图5为本申请实施例提供的一种网络性能测试设备的结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”及“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
现如今主流的IPSec VPN技术和设备使用的是国际组织制定的加密技术,其中的算法都是国际标准的算法,一般都在网络上公开,这样就会存在安全性不足的问题。近年来,国家密码管理局参考RFC标准制定了相应的IPSec VPN技术规范《GMT 0022-2014IPSecVPN技术规范》,规范了商用密码算法在IPSec VPN中的应用,其中包括国密算法。国密算法是国家商用密码算法的简称。国密算法的支持和实现,对涉密的内部信息、行政事务信息、经济信息、个人隐私等进行了加密保护,网络安全设备厂家,纷纷支持国密算法的IPSecVPN。目前,IPsec VPN的性能测试主要体现在VPN加密和解密的性能以及VPN通道的建立速度和并发隧道能力,现有技术通常部署多个设备,包括客户端设备、服务器端设备和测试分析设备,通过多个设备之间的数据传输实现IPsec VPN的性能测试,且对国密IPSec VPN相关产品的性能测试方面还处于空白状态。
为了解决上述问题,本申请实施例提供一种网络性能测试方法、装置、设备及计算机可读存储介质,在进行IPsec VPN性能测试时,可以在一台设备上进行模拟客户端、模拟服务器、模拟路由和模拟网关的建立,实现模拟多VPN网关、多用户和高性能环境,从而无需多台设备,就可以进行IPsec VPN网络的模拟和性能的测试。
可选的,图1为本申请实施例提供的一种网络性能测试系统架构示意图。在图1中,上述架构包括接收设备101、处理器102和显示设备103中至少一种。
可以理解的是,本申请实施例示意的结构并不构成对网络性能测试系统架构的具体限定。在本申请另一些可行的实施方式中,上述架构可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置,具体可根据实际应用场景确定,在此不做限制。图1所示的部件可以以硬件,软件,或软件与硬件的组合实现。
在具体实现过程中,接收设备101可以是输入/输出接口,也可以是通信接口。
处理器102在进行IPsec VPN性能测试时,可以在一台设备上进行模拟客户端、模拟服务器、模拟路由和模拟网关的建立,实现模拟多VPN网关、多用户和高性能环境,从而无需多台设备,就可以进行IPsec VPN网络的模拟和性能的测试。
显示设备103可以用于对上述结果等进行显示。
显示设备还可以是触摸显示屏,用于在显示的上述内容的同时接收用户指令,以实现与用户的交互。
应理解,上述处理器可以通过处理器读取存储器中的指令并执行指令的方式实现,也可以通过芯片电路实现。
示范性的,图2为本申请实施例提供的一种网络性能测试应用场景示意图,如图2所示,网络性能测试方法可以应用于测试仪,该测试仪可以根据网络性能测试方法,建立模拟个人计算机(personal computer,PC)、模拟路由和模拟网关,其中,模拟PC、模拟路由和模拟网关的数量可以根据实际情况设置,模拟PC可以作为模拟客户端和模拟服务器进行网络性能测试,测试仪可以与待测试设备建立隧道,包括n条虚拟专用网络隧道,其中,n条虚拟专用网络隧道用于通模拟网关传输加密流,测试仪可以与待测试设备建立隧道非加密流隧道。
另外,本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
下面结合具体的实施例对本申请的技术方案进行详细的说明:
图3为本申请实施例提供的一种网络性能测试方法的流程示意图。本申请实施例的执行主体可以为图1中的处理器102,具体执行主体可以根据实际应用场景确定。如图3所示,该方法包括如下步骤:
S301:建立模拟客户端、模拟服务器、模拟路由和模拟网关。
其中,模拟路由用于模拟网络环境。
可选地,模拟客户端和模拟服务器可通过建立模拟PC实现,模拟PC可用于分别实现模拟客户端和模拟服务器的功能。
可选地,模拟网关用于与被测设备建立VPN通道。
可选地,模拟网关为模拟国密IPsec VPN网关。
可选地,在建立模拟客户端、模拟服务器、模拟路由和模拟网关之前,还包括:建立用户态协议栈。
其中,用户态协议栈用于进行数据封装。
在数据收发过程的实现上,基于DPDK进行数据收发,不经过内核态,数据的收发过程极短,不影响国密IPSec隧道每秒新建速率的测试。
这里,本申请实施例预先建立用户态协议栈,转换成用户态后,将国密的内核态协议栈转化为用户态协议栈,以使在测试过程中,基于用户态协议栈进行数据封装,通过使用用户态协议栈来进行数据封装,可以生成TCP数据包,既可以可靠传输,又可以避免数据重传带来的延迟增加,因此可以提高数据传输效率和传输可靠性,可提高IPSec VPN测试中模拟和实体设备的性能,进一步的提高了IPSec VPN网络性能测试的准确性。
S302:控制模拟网关与待测试网关建立隧道。
可选地,模拟网关与待测试网关建立隧道的方式如下:
控制模拟网关向待测试网关发起因特网密钥交换协议安全协商,并生成IPSec安全联盟。在一些实施例中,模拟网关向支持国密算法的VPN待测试网关发起IKE安全协商,生成IPSec SA,建立国密IPSec隧道。
其中,因特网密钥交换协议安全协商包括加密算法、摘要算法和认证方法中的至少一种。
其中,模拟网关是基于测试端口模拟一个或多个远程VPN,测试开始执行IKE进行安全协商,向被测支持国密算法的VPN网关发起IKE安全协商。IKE安全协商的两个阶段如下:
第一阶段,通信双方协商和建立IKE协议本身使用的安全通道,即建立一个IKESA。
第二阶段,利用第一阶段已通过认证和安全保护的安全通道,建立一对用于数据安全传输的IPSec SA。
可选地,在模拟网关向待测试网关发起IKE安全协商,生成IPSec SA,建立国密IPSec隧道之前包括:在被测支持国密算法的VPN网关上配置相应的IKE协商参数,包括IKE版本、认证方式、IKE协商两个阶段的加密算法、摘要算法等。进一步地,证书认证时配置同一CA签发的证书。。
可选地,建立隧道的具体方式如下:
步骤1.1:模拟网关向被测支持国密算法的VPN网关发送IKE安全提议,包括加密算法、摘要算法、认证方法、Diffie-Hellman组标识等信息。其中加密算法包括SM4等,摘要算法包括SM3。
步骤1.2:模拟网关收到被测支持国密算法的VPN网关(待测试网关)将匹配的IKE安全提议后,与被测支持国密算法的VPN网关交换数据,可包括数据内容nonce、身份标识(ID)、可选的证书等载荷,生成用于IKE SA的认证和加密密钥。
步骤1.3:模拟网关发起身份验证信息,身份验证信息是根据步骤1.1和步骤1.2中协商的加密算法和加密密钥进行加密的。
步骤1.4:模拟网关发送本端的安全参数和身份认证信息。其中安全参数包括被保护的数据流和IPSec安全提议等需要协商的参数;身份认证信息包括步骤1.1到1.2中产生的密钥。
步骤1.5:模拟网关收到被测支持国密算法的VPN网关发送的确认信息及新的密钥后,发送确认信息,确认与被测支持国密算法的VPN网关可以通信,协商结束。
其中,本申请实施例模拟网关通过向待测试网关发起IKE安全协商,生成SA,建立IPSecVPN隧道,这里的IKE安全协商包括加密算法、摘要算法和认证方法中的至少一种,实现了建立IPSec VPN隧道的建立。
现有技术中,基于国密算法实现IPSec VPN的方法通常需要对用户层和内核层算法进行扩展,本申请实施例在上述步骤的实现上,基于现有技术,依据国家密码管理局制定的《IPSec VPN技术规范》的相关技术标准,对IKE在算法添加、IKE流程、消息格式等方面进行了修改,实现IPSec VPN对国密算法的支持。本申请实施例可以基于linux内核支持SM2、SM3和SM4算法基础上,实际通过DPDK程序执行算法的兼容与支持,在用户层对实现SM2、SM3和SM4算法扩展以及为国密证书提供接口支持。
S303:控制模拟客户端通过模拟网关与待测试网关建立的隧道,向模拟服务器发送测试数据包。
其中,测试数据包用于在IPSec VPN隧道建立成功后,进行隧道连通性及性能测试。
可选地,模拟客户端发送测试数据包之前,预先通过IPSec SA对测试数据包进行签名(完整性检查)和/或加密处理。
可选地,测试数据包的参数包括文件路径、文件名、协议动作、URL参数、HTTP请求头等参数(用于客户端),HTTP响应头、文件内容等参数(用于服务端)。
可选地,测试数据包可以是完整的HTTP事务(TCP连接,HTTP请求和回应,关闭TCP连接)。
可选地,控制模拟客户端通过模拟网关与待测试网关建立的隧道,向模拟服务器发送测试数据包,包括:
控制模拟客户端通过模拟网关与待测试网关建立的隧道,根据RFC2544测试标准和/或RFC2544测试标准,向模拟服务器发送测试数据包。
这里,本申请实施例中的模拟服务器可以通过模拟网关与待测试网关建立的IPSec VPN隧道,根据RFC2544测试标准和/或RFC2544测试标准,向模拟服务器发送测试数据包,可以通过本申请实施例中建立的模拟客户端、模拟服务器、模拟路由和模拟网关,实现了IPSec VPN的RFC2544和RFC3511的测试,进一步地提高了IPSec VPN网络性能测试的准确性和全面性、灵活性。
S304:控制模拟服务器在接收到测试数据包后,通过隧道,向模拟客户端发送测试响应。
可选地,在模拟客户端收到测试响应后,模拟网关断开IPSec VPN连接。
S305:根据测试数据包和测试响应,确定待测试网关的网络性能。
模拟客户端通过收到测试响应后,根据测试响应判断IPSec VPN隧道是否建立成功。
可选地,根据测试数据包和测试响应,确定待测试网关的网络性能,包括:根据测试数据包和测试响应,确定待测试网关的VPN通道的建立速度、断开速度和保持VPN通道数量的能力中的至少一种。
可选地,可以基于测试数据包和测试响应确定统计信息,包括:IPSec隧道新建数量、IPSec隧道建立数量、IPSec隧道并发数数量、链路层流量发送与接收、HTTP请求与响应等,从而实现网络性能确定。
这里,本申请实施例可以根据测试数据包和测试响应,对待测试网关的VPN通道的建立速度、断开速度和保持VPN通道数量的能力进行测试,示范性的,每个模拟网关与待测试网关建立一条远程访问的国密IPSec VPN隧道,然后模拟客户端通过每个国密IPSec隧道向模拟服务端发送测试数据包,并终止隧道,从而实现国密IPSec隧道每秒新建速率测试,可准确实现IPSec VPN网络性能测试。
本申请实施例在进行IPsec VPN性能测试时,可以在一台设备上进行模拟客户端、模拟服务器、模拟路由和模拟网关的建立,实现模拟多VPN网关、多用户和高性能环境,从而无需多台设备,就可以进行IPsec VPN网络的模拟和性能的测试,通过模拟网关可以与待测试网关建立VPN隧道,模拟客户端和模拟服务器通过VPN隧道的数据传输可以实现对IPsecVPN网络性能的准确测试,无需部署多个设备,通过程序模拟建立虚拟设备的方式降低了成本,简化了网络性能测试步骤,同时避免了多个实体设备的不稳定带来的测试误差,提高了IPsec VPN网络性能测试的准确性。
在一些可能的实现方式中,本申请实施例可以可以通过不同方案对国密IPSecVPN进行性能测试:
可选地,控制模拟网关与待测试网关建立隧道,包括:控制多个模拟网关与待测试网关建立多个隧道;相应的,控制模拟客户端通过模拟网关与待测试网关建立的隧道,向模拟服务器发送测试数据包,包括:控制模拟客户端通过多个模拟网关和待测试网关建立的多个隧道,向模拟服务器发送多个测试数据包;相应的,控制模拟服务器在接收到测试数据包后,通过隧道,向模拟客户端发送测试响应,包括:控制模拟服务器在接收到多个测试数据包后,通过多个隧道,向模拟客户端发送多个测试响应;相应的,根据测试数据包和测试响应,确定待测试网关的网络性能,包括:根据多个测试数据包和多个测试响应,确定待测试网关的最大并发隧道数和\或隧道最大吞吐率。
具体的,性能测试的可选方式一:
在一个实施例中,基于上述国密IPSec VPN测试方法基本流程,可以设置多个虚拟用户模拟多个端点(这里的端点可以对应为一个模拟网关),每个端点与被测VPN网关(待测试网关)建立一条远程访问的国密IPSec隧道,然后模拟客户端通过每个国密IPSec隧道向服务端发送测试数据包,并终止隧道,从而实现国密IPSec隧道每秒新建速率测试。
具体的,性能测试的可选方式二:
在一个实施例中,基于上述国密IPSec VPN测试方法基本流程,可以设置多个虚拟用户模拟多个端点,与被测VPN网关建立建立大量的国密IPSec隧道连接,然后模拟客户端通过它们循环向服务端发送测试数据包,最后终止隧道,从而实现国密IPSec最大并发隧道数测试。
具体的,性能测试的可选方式三:
在一个实施例中,基于上述国密IPSec VPN测试方法基本流程,可以设置多个虚拟用户模拟多个端点,与被测VPN网关建立建立大量的国密IPSec隧道连接,然后模拟客户端通过它们循环向服务端发送测试数据包,最后终止隧道,从而实现国密IPSec隧道最大吞吐率测试。
这里,本申请实施例可以通过多个模拟网关(端点)与待测试网关建立多个IPSecVPN隧道,通过多个IPSec VPN隧道进行网络性能的测试,可准确测试IPSec VPN网关的最大并发隧道数和隧道最大吞吐率。
图4为本申请实施例提供的一种网络性能测试装置的结构示意图,如图4所示,本申请实施例的装置包括:第一建立模块401、第一处理模块402、第二处理模块403、第三处理模块404和确定模块405。这里的网络性能测试装置可以是上述处理器102本身,或者是实现处理器102的功能的芯片或者集成电路。这里需要说明的是,第一建立模块401、第一处理模块402、第二处理模块403、第三处理模块404和确定模块405的划分只是一种逻辑功能的划分,物理上两者可以是集成的,也可以是独立的。
其中,第一建立模块,用于建立模拟客户端、模拟服务器、模拟路由和模拟网关,其中,模拟路由用于模拟网络环境;
第一处理模块,用于控制模拟网关与待测试网关建立隧道;
第二处理模块,用于控制模拟客户端通过模拟网关与待测试网关建立的隧道,向模拟服务器发送测试数据包;
第三处理模块,用于控制模拟服务器在接收到测试数据包后,通过隧道,向模拟客户端发送测试响应;
确定模块,用于根据测试数据包和测试响应,确定待测试网关的网络性能。
可选地,第一处理模块具体用于:
控制模拟网关向待测试网关发起因特网密钥交换协议安全协商,并生成IPSec安全联盟,其中,因特网密钥交换协议安全协商包括加密算法、摘要算法和认证方法中的至少一种。
可选地,第二处理模块具体用于:
控制模拟客户端通过模拟网关与待测试网关建立的隧道,根据RFC2544测试标准和/或RFC2544测试标准,向模拟服务器发送测试数据包。
可选地,确定模块具体用于:
根据测试数据包和测试响应,确定待测试网关的VPN通道的建立速度、断开速度和保持VPN通道数量的能力中的至少一种。
可选地,第一处理模块具体用于:
控制多个模拟网关与待测试网关建立多个隧道;
相应的,第二确定模块具体用于:
控制模拟客户端通过多个模拟网关和待测试网关建立的多个隧道,向模拟服务器发送多个测试数据包;
相应的,第三处理模块具体用于:
控制模拟服务器在接收到多个测试数据包后,通过多个隧道,向模拟客户端发送多个测试响应;
相应的,确定模块具体用于:
根据多个测试数据包和多个测试响应,确定待测试网关的最大并发隧道数和\或隧道最大吞吐率。
可选地,在第一建立模块建立模拟客户端、模拟服务器、模拟路由和模拟网关之前,上述装置还包括:
第二建立模块,用于建立用户态协议栈,其中,用户态协议栈用于进行数据封装。
图5为本申请实施例提供的一种网络性能测试设备的结构示意图。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不限制本文中描述的和/或者要求的本申请的实现。
如图5所示,该网络性能测试设备包括:处理器501和存储器502,各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器501可以对在网络性能测试设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。图5中以一个处理器501为例。
存储器502作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的网络性能测试设备的方法对应的程序指令/模块(例如,附图4所示的第一建立模块401、第一处理模块402、第二处理模块403、第三处理模块404和确定模块405)。处理器501通过运行存储在存储器502中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的网络性能测试设备的方法。
网络性能测试设备还可以包括:输入装置503和输出装置504。处理器501、存储器502、输入装置503和输出装置504可以通过总线或者其他方式连接,图5中以通过总线连接为例。
输入装置503可接收输入的数字或字符信息,以及产生与网络性能测试设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置504可以是网络性能测试设备的显示设备等输出设备。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
本申请实施例的网络性能测试设备,可以用于执行本申请上述各方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现上述任一项的网络性能测试方法。
本申请实施例还提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时,用于实现上述任一项的网络性能测试方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求书指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求书来限制。
Claims (10)
1.一种网络性能测试方法,其特征在于,包括:
建立模拟客户端、模拟服务器、模拟路由和模拟网关,其中,所述模拟路由用于模拟网络环境;
控制所述模拟网关与待测试网关建立隧道;
控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包;
控制所述模拟服务器在接收到所述测试数据包后,通过所述隧道,向所述模拟客户端发送测试响应;
根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能。
2.根据权利要求1所述的方法,其特征在于,所述控制所述模拟网关与待测试网关建立隧道,包括:
控制所述模拟网关向待测试网关发起因特网密钥交换协议安全协商,并生成IPSec安全联盟,其中,所述因特网密钥交换协议安全协商包括加密算法、摘要算法和认证方法中的至少一种。
3.根据权利要求1所述的方法,其特征在于,所述控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包,包括:
控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,根据RFC2544测试标准和/或RFC2544测试标准,向所述模拟服务器发送测试数据包。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能,包括:
根据所述测试数据包和所述测试响应,确定所述待测试网关的VPN通道的建立速度、断开速度和保持VPN通道数量的能力中的至少一种。
5.根据权利要求1至3任一项所述的方法,其特征在于,所述控制所述模拟网关与待测试网关建立隧道,包括:
控制多个所述模拟网关与待测试网关建立多个隧道;
相应的,所述控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包,包括:
控制所述模拟客户端通过多个所述模拟网关和所述待测试网关建立的多个隧道,向所述模拟服务器发送多个测试数据包;
相应的,所述控制所述模拟服务器在接收到所述测试数据包后,通过所述隧道,向所述模拟客户端发送测试响应,包括:
控制所述模拟服务器在接收到多个所述测试数据包后,通过所述多个隧道,向所述模拟客户端发送多个测试响应;
相应的,所述根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能,包括:
根据所述多个测试数据包和所述多个测试响应,确定所述待测试网关的最大并发隧道数和\或隧道最大吞吐率。
6.根据权利要求1至3任一项所述的方法,其特征在于,在所述建立模拟客户端、模拟服务器、模拟路由和模拟网关之前,还包括:
建立用户态协议栈,其中,所述用户态协议栈用于进行数据封装。
7.一种网络性能测试装置,其特征在于,包括:
第一建立模块,用于建立模拟客户端、模拟服务器、模拟路由和模拟网关,其中,所述模拟路由用于模拟网络环境;
第一处理模块,用于控制所述模拟网关与待测试网关建立隧道;
第二处理模块,用于控制所述模拟客户端通过所述模拟网关与所述待测试网关建立的隧道,向所述模拟服务器发送测试数据包;
第三处理模块,用于控制所述模拟服务器在接收到所述测试数据包后,通过所述隧道,向所述模拟客户端发送测试响应;
确定模块,用于根据所述测试数据包和所述测试响应,确定所述待测试网关的网络性能。
8.一种网络性能测试设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1至6任一项所述的网络性能测试方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述的网络性能测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210120692.8A CN114500351A (zh) | 2022-02-09 | 2022-02-09 | 网络性能测试方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210120692.8A CN114500351A (zh) | 2022-02-09 | 2022-02-09 | 网络性能测试方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114500351A true CN114500351A (zh) | 2022-05-13 |
Family
ID=81479017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210120692.8A Pending CN114500351A (zh) | 2022-02-09 | 2022-02-09 | 网络性能测试方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114500351A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115378838A (zh) * | 2022-08-24 | 2022-11-22 | 深圳市共进电子股份有限公司 | 测试路由器IPsec的方法、装置、介质及系统 |
CN115426297A (zh) * | 2022-08-09 | 2022-12-02 | 杭州涂鸦信息技术有限公司 | 子设备的功能测试方法、装置、计算机设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1514586A (zh) * | 2002-12-31 | 2004-07-21 | 深圳市中兴通讯股份有限公司 | 模拟多用户、多连接的数据通讯设备测试系统及方法 |
EP1863254A1 (en) * | 2006-06-02 | 2007-12-05 | Research In Motion Limited | Negotiating VPN tunnel establishment parameters on user's interaction |
CN101232410A (zh) * | 2005-10-14 | 2008-07-30 | 中国移动通信集团公司 | Wap网关性能的测试方法及系统 |
CN102984025A (zh) * | 2012-11-23 | 2013-03-20 | 华为技术有限公司 | 网关设备虚拟隧道性能的测试方法、装置及系统 |
US20180262598A1 (en) * | 2017-03-09 | 2018-09-13 | Fortnet, Inc. | High availability (ha) internet protocol security (ipsec) virtual private network (vpn) client |
-
2022
- 2022-02-09 CN CN202210120692.8A patent/CN114500351A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1514586A (zh) * | 2002-12-31 | 2004-07-21 | 深圳市中兴通讯股份有限公司 | 模拟多用户、多连接的数据通讯设备测试系统及方法 |
CN101232410A (zh) * | 2005-10-14 | 2008-07-30 | 中国移动通信集团公司 | Wap网关性能的测试方法及系统 |
EP1863254A1 (en) * | 2006-06-02 | 2007-12-05 | Research In Motion Limited | Negotiating VPN tunnel establishment parameters on user's interaction |
CN102984025A (zh) * | 2012-11-23 | 2013-03-20 | 华为技术有限公司 | 网关设备虚拟隧道性能的测试方法、装置及系统 |
US20180262598A1 (en) * | 2017-03-09 | 2018-09-13 | Fortnet, Inc. | High availability (ha) internet protocol security (ipsec) virtual private network (vpn) client |
Non-Patent Citations (1)
Title |
---|
王美娇: "自发现虚拟专用网络中隧道的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 10, 15 October 2014 (2014-10-15), pages 139 - 86 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115426297A (zh) * | 2022-08-09 | 2022-12-02 | 杭州涂鸦信息技术有限公司 | 子设备的功能测试方法、装置、计算机设备和存储介质 |
CN115426297B (zh) * | 2022-08-09 | 2023-12-12 | 杭州涂鸦信息技术有限公司 | 子设备的功能测试方法、装置、计算机设备和存储介质 |
CN115378838A (zh) * | 2022-08-24 | 2022-11-22 | 深圳市共进电子股份有限公司 | 测试路由器IPsec的方法、装置、介质及系统 |
CN115378838B (zh) * | 2022-08-24 | 2024-02-09 | 深圳市共进电子股份有限公司 | 测试路由器IPsec的方法、装置、介质及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110870277B (zh) | 将中间盒引入到客户端与服务器之间的安全通信中 | |
CN107018134B (zh) | 一种配电终端安全接入平台及其实现方法 | |
CN105993146B (zh) | 用于与客户端设备建立安全会话的方法和装置 | |
CN109936547A (zh) | 身份认证方法、系统及计算设备 | |
CN108965230A (zh) | 一种安全通信方法、系统及终端设备 | |
CN106788989B (zh) | 一种建立安全加密信道的方法及设备 | |
JP5640226B2 (ja) | 第1ドメインのクライアントと第2ドメインのサーバとの間でセキュアな通信チャネルを確立するための装置、方法およびプログラム | |
US11736304B2 (en) | Secure authentication of remote equipment | |
JP4962117B2 (ja) | 暗号通信処理方法及び暗号通信処理装置 | |
Urien et al. | An innovative solution for cloud computing authentication: Grids of EAP-TLS smart cards | |
CN114500351A (zh) | 网络性能测试方法、装置、设备及存储介质 | |
CN108664395A (zh) | 应用程序测试方法、装置、设备及存储介质 | |
CN111226418A (zh) | 针对跨网络周边防火墙的设备使能零接触引导 | |
CN102857393B (zh) | 一种基于报文模拟的非公开密码算法ssl vpn设备性能测试方法 | |
WO2019237576A1 (zh) | 校验虚拟机通信性能的方法及装置 | |
CN106878133A (zh) | 报文转发方法及装置 | |
CN112422560A (zh) | 基于安全套接层的轻量级变电站安全通信方法及系统 | |
CN104168565A (zh) | 一种非可信无线网络环境下智能终端安全通讯的控制方法 | |
CN211352206U (zh) | 基于量子密钥分发的IPSec VPN密码机 | |
CN113992427B (zh) | 基于相邻节点的数据加密发送方法及装置 | |
US8646066B2 (en) | Security protocol control apparatus and security protocol control method | |
CN114707158A (zh) | 基于tee的网络通信认证方法以及网络通信认证系统 | |
Novickis et al. | Protocol state fuzzing of an OpenVPN | |
CN110266705A (zh) | 一种控制方法及系统 | |
Groen et al. | Securing O-RAN Open Interfaces |
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 |