CN113783754B - 性能测试方法、装置、系统、测试设备及存储介质 - Google Patents
性能测试方法、装置、系统、测试设备及存储介质 Download PDFInfo
- Publication number
- CN113783754B CN113783754B CN202111067867.5A CN202111067867A CN113783754B CN 113783754 B CN113783754 B CN 113783754B CN 202111067867 A CN202111067867 A CN 202111067867A CN 113783754 B CN113783754 B CN 113783754B
- Authority
- CN
- China
- Prior art keywords
- packet
- bandwidth
- flow
- rate
- tuple
- 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
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/50—Testing arrangements
-
- 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/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种性能测试方法、装置、系统、测试设备及存储介质,属于网络安全领域。该方法包括:接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息;对所述流报文进行解析,并输出解析结果;根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。通过该方法,可以降低测试时的成本以及增加测试结果的准确性。
Description
技术领域
本申请属于网络安全领域,具体涉及一种性能测试方法、装置、系统、测试设备及存储介质。
背景技术
目前针对主干链路流量的解析,一般是通过在主干链路的旁路部署检测设备来实现。其中,针对检测设备的解析性能的测试主要分为镜像和分光两者。
针对分光模式,是将交换机串接到测试仪表,并将检测设备旁挂在交换机上。当测试表构造测试流量后,用核心交换机去采集报文,并将抽样结果以流报文(flow报文,例如Netflow、Netstream、SFlow等)的形式发送到检测设备进行测试。后续通过观察测试设备接收的flow报文条目数与核心交换机的发包数目是否一致,以及观察检测设备针对flow报文解析出的流量带宽与测试表所构造的报文的流量带宽是否一致,来确定测试设备的解析性能。
然而上述方案的实施依赖于核心交换机,且对交换机的性能要求较高。此外,若后续测试设备所检测出的待观察量(flow报文条目数、流量带宽等)与预期值不一致时,不能确定是核心交换机的采集发包问题,还是测试设备的解析性能存在问题。即现有技术无法量化确认是解析错误还是采集错误。
发明内容
有鉴于此,本申请的目的在于提供一种性能测试方法、装置、系统、测试设备及存储介质,可以降低测试时的成本以及增加测试结果的准确性。
本申请的实施例是这样实现的:
第一方面,本申请实施例提供一种性能测试方法,应用于测试设备,所述方法包括:接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息;对所述流报文进行解析,并输出解析结果;根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
在上述针对测试设备的flow流量解析性能进行测试的过程中,跳过了通过核心交换机对测试仪表流量采样flow报文并发送给测试设备的过程,而是直接通过试仪表构造并发送flow报文到测试设备进行测试,因此,相较于现有技术,本申请实施例所提供的性能测试方法,不再依赖于核心交换机,相应的,可以降低测试过程对设备性能的要求以及测试成本。
此外,由于是直接将构造出的flow报文及其对应的准备的属性信息发送给测试设备进行解析测试,不会引入核心交换机对flow报文的采集过程以及对flow报文的发包过程,那么最终的测试结果也可以排除这两个过程所带来的干扰,是可以准确反应测试设备的解析性能的测试结果,相应的,从这个角度来说,本申请实施例所提供的性能测试方法,还可以增加测试结果的准确性。
结合第一方面实施例,在一种可能的实施方式中,所述根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能,包括:比较所述解析结果所包括的实际流量带宽与所述属性信息所包括的理论流量带宽,以及比较所述解析结果所包括的收包率以及所述属性信息所包括的发包率;在所述实际流量带宽等于所述理论流量带宽,以及所述收包率等于所述发包率时,确定所述测试设备的流量解析性能充足;其中,所述属性信息包括所述流报文所对应的发包速率以及所述流报文所对应的理论流量带宽;所述解析结果包括所述测试设备接收所述流报文的收包率以及所述测试设备针对所述流报文计算出的实际流量带宽。
结合第一方面实施例,在一种可能的实施方式中,所述对所述流报文进行解析,得到解析结果,包括:解析出所述流报文的包头字段以及数据字段,所述包头字段包括所述流报文所携带的五元组的个数,所述数据字段包括每个所述五元组所采样的报文的个数以及对应五元组的三层包长;根据所述五元组的个数、每个所述五元组所采样的报文的个数以及所述对应五元组的三层包长,计算得到所述测试设备针对所述流报文所解析出的实际流量带宽以及所述测试设备接收所述流报文的收包率;所述解析结果包括所述实际流量带宽以及所述收包率。
结合第一方面实施例,在一种可能的实施方式中,所述实际流量带宽为二层流量带宽或者一层流量带宽。
结合第一方面实施例,在一种可能的实施方式中,所述计算得到所述测试设备针对所述流报文所解析出的实际流量带宽,包括:在所述实际流量带宽为二层流量带宽时,基于公式L2 rate=A×(B+C×D)×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L2rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数。
结合第一方面实施例,在一种可能的实施方式中,所述计算得到所述测试设备针对所述流报文所解析出的实际流量带宽,包括:在所述实际流量带宽为一层流量带宽时,基于公式L1 rate=A×(B+C×(D+E+F))×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L1 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数,E为帧间隙前导码所占的字节数,F为校验和所占的字节数。
第二方面,本申请实施例提供一种性能测试装置,应用于测试设备,所述装置包括:接收模块、解析模块以及确定模块。
接收模块,用于接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息;
解析模块,用于对所述流报文进行解析,并输出解析结果;
确定模块,用于根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
结合第二方面实施例,在一种可能的实施方式中,所述确定模块,用于比较所述解析结果所包括的实际流量带宽与所述属性信息所包括的理论流量带宽,以及比较所述解析结果所包括的收包率以及所述属性信息所包括的发包率;在所述实际流量带宽等于所述理论流量带宽,以及所述收包率等于所述发包率时,确定所述测试设备的流量解析性能充足;
其中,所述属性信息包括所述流报文所对应的发包速率以及所述流报文所对应的理论流量带宽;所述解析结果包括所述测试设备接收所述流报文的收包率以及所述测试设备针对所述流报文计算出的实际流量带宽。
结合第二方面实施例,在一种可能的实施方式中,所述解析模块,用于解析出所述流报文的包头字段以及数据字段,所述包头字段包括所述流报文所携带的五元组的个数,所述数据字段包括每个所述五元组所采样的报文的个数以及对应五元组的三层包长;根据所述五元组的个数、每个所述五元组所采样的报文的个数以及所述对应五元组的三层包长,计算得到所述测试设备针对所述流报文所解析出的实际流量带宽以及所述测试设备接收所述流报文的收包率;所述解析结果包括所述实际流量带宽以及所述收包率。
结合第二方面实施例,在一种可能的实施方式中,所述实际流量带宽为二层流量带宽或者一层流量带宽。
结合第二方面实施例,在一种可能的实施方式中,所述解析模块,用于在所述实际流量带宽为二层流量带宽时,基于公式L2 rate=A×(B+C×D)×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L2 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数。
结合第二方面实施例,在一种可能的实施方式中,所述解析模块,用于在所述实际流量带宽为一层流量带宽时,基于公式L1 rate=A×(B+C×(D+E+F))×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L1 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数,E为帧间隙前导码所占的字节数,F为校验和所占的字节数。
第三方面,本申请实施例还提供一种测试设备,包括:存储器和处理器,所述存储器和所述处理器连接;所述存储器用于存储程序;所述处理器调用存储于所述存储器中的程序,以执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第四方面,本申请实施例还提供一种非易失性计算机可读取存储介质(以下简称存储介质),其上存储有计算机程序,所述计算机程序被计算机运行时执行上述第一方面实施例和/或结合第一方面实施例的任一种可能的实施方式提供的方法。
第五方面,本申请实施例还提供一种性能测试系统,用于对测试设备的流量解析性能进行测试,包括:
测试仪表,用于构造流报文,并将所述流报文及其属性信息发送给测试设备;所述测试设备,用于对所述流报文进行解析,并输出解析结果;并根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例而了解。本申请的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。通过附图所示,本申请的上述及其它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部分。并未刻意按实际尺寸等比例缩放绘制附图,重点在于示出本申请的主旨。
图1示出本申请实施例提供的一种性能测试方法的流程图。
图2示出本申请实施例提供的一种性能测试装置的结构框图。
图3示出本申请实施例提供的一种测试设备的结构示意图。
附图标记:100-测试设备;110-处理器;120-存储器;400-性能测试装置;410-接收模块;420-解析模块;430-确定模块。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中诸如“第一”、“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
再者,本申请中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
此外,针对现有技术中的针对测试设备的解析性能测试方法所存在的缺陷(依赖于核心交换机导致测试成本较高,且无法量化确认是解析错误还是采集错误)均是申请人在经过实践并仔细研究后得出的结果,因此,上述缺陷的发现过程以及在下文中本申请实施例针对上述缺陷所提出的解决方案,都应该被认定为是申请人对本申请做出的贡献。
为了解决上述问题,本申请实施例提供一种性能测试方法、装置、系统、测试设备及存储介质,可以降低测试时的成本以及增加测试结果的准确性。
该技术可采用相应的软件、硬件以及软硬结合的方式实现。以下对本申请实施例进行详细介绍。
下面将针对本申请所提供的性能测试方法进行介绍。
请参照图1,本申请实施例提供一种应用于测试设备的性能测试方法,以对测试设备的flow流量解析性能进行测试。该方法可以包括以下步骤。
步骤S110:接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息。
步骤S120:对所述流报文进行解析,并输出解析结果。
步骤S130:根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
在上述针对测试设备的flow流量解析性能进行测试的过程中,跳过了通过核心交换机去测试仪表流量采样flow报文并发送给测试设备的过程,而是直接通过试仪表构造并发送flow报文到测试设备进行测试,因此,相较于现有技术,本申请实施例所提供的性能测试方法,不再依赖于核心交换机,相应的,可以降低测试过程对设备性能的要求以及测试成本。
此外,由于是直接将构造出的flow报文及其对应的准确的属性信息发送给测试设备进行解析测试,不会引入核心交换机对flow报文的采集过程以及对flow报文的发包过程,那么最终的测试结果也可以排除这两个过程所带来的干扰,是可以准确反应测试设备的解析性能的测试结果,相应的,从这个角度来说,本申请实施例所提供的性能测试方法,还可以增加测试结果的准确性。
下面将针对上述各个步骤的详细实施过程进行介绍。
步骤S110:接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息。
在本申请实施例中,测试仪表可以获取由用户输入的配置信息,以构造出flow报文。与现有技术中通过核心交换机来进行流量采集生成flow报文的方案相比,测试仪表可以达到百万、千万flow/s的程度,显著高于交换机的采集生成能力。
下面将以Netflow为例,针对构造Netflow报文的过程进行介绍。
Netflow目前应用较多的输出格式为v5版本和v9版本。其中,v5版本无模板,v9版本的报文区分模板报文和数据报文,构造时需要考虑模板报文。
其中,针对V5版本,Netflow报文的包头格式可以如下表1所示,包括多个字段。需要说明的是,流序列数这个字段的序列号等于前一个序列号加上本次数据包中的流(即PDU,一个PDU表示一个五元组)的个数。当接收到一个新的数据包后,接收程序可以从Netflow报文的包头格式所提供的序列号中提取出的预期的序列号,这样即可以获取丢失的流的数目。
表1
其中,针对V5版本,Netflow报文中的每条流的记录格式可以如表2所示,包括多个字段。
表2
其中,V9版本的NetFlow报文的包头格式与V5版本基本保持一致。
其中,针对V9版本的NetFlow报文,采取了基于模板的统计数据输出,可以根据需要对数据格式进行自定义和拓展。
V9版本的NetFlow报文的数据字段部分,包括模板数据流部分以及信息数据流部分。其中,模板数据流部分用来描述Netflow报文的数据部分有哪些字段、字段的长度、流量集(flowset)中有哪些类型的数据及其长度信息。
具体的,模板数据流的各字段描述:
FlowSet ID=0:数据流汇总ID的值为0,该值是专门保留给模板数据流汇总ID使用的。
Length:长度值是整个数据流汇总所有字段长度的总和。由于某些模板数据流汇总可能包含了多个模板记录,因此我们必须使用一个长度值来确定下一条任何类型的数据流汇总的位置。
Template ID:每一个生成的模板记录都会被分配一个唯一的模板ID。模板ID的唯一性在一个本地的观察域中有效,0-255的模板ID被预留出来给模板数据流汇总、可选数据流汇总和其它尚待开发的数据流汇总使用。信息数据流汇总则使用256-65535之间的模板ID值。
Field Count:一个模板记录中字段的数量。因为一个模板数据流汇总中通常有多个模板记录,这些字段的计数能够帮助收集器界定一条模板记录和下一条模板记录的分界点。
Field Type:一个表示该字段类型的数字值,具体请参考RFC3954“字段类型定义”一节。
Field Length:一个表示相应类型字段的长度值,以字节为单位。具体请参考RFC3954“字段类型定义”一节。
可选的,信息数据流各字段描述可以是:
FlowSet ID=Template ID:每一条信息数据流汇总都会有自己的数据流汇总ID,这个汇总ID和模板数据流汇总中的模板ID一致。收集器可以根据这个信息数据流汇总ID来查找相应的模板并对信息记录进行解析(取值等于模板字段中定义的Template ID值,表示数据是按哪个模板定义的)。
Length:指的是整个信息数据流汇总报文的总长度。
Record N-Field Value M:信息数据流汇总剩余的部分是数据流信息记录的集合,里面包含了字段的具体数值,而这些字段的类型和长度已经在先前描述的模板记录中定义好了,我们可以根据数据流汇总ID和模板ID找到它们。
Padding:输出器将根据需要在数据流汇总中插入一些填充字节使得其符合每段4字节的大小。注意:报文格式中的length字段的值已经计算了填充字节的大小,填充字节的数值全部是0。
Options Template FlowSet:可选模板数据集。
用户通过在测试仪表的配置界面输入相应的信息,即可按照需求,构造出相应的NetFlow报文。
以构造V5版本的NetFlow报文为例。
在对其进行构造时,NetFlow报文的ip头和udp头部参考检测设备预设的Netflow的相关配置,在测试仪表,例如思博伦Spirent Testcenter内进行对NetFlow报文的相关构造工作。其中,报文长度修改为auto,取消勾选思博伦特征字段。随后添加,Netflow报头相关字段。对检测设备而言,此处的关键字段为版本和记录数,其它类似时间之类的字段可不做修改,多个报文也可以完全复用。至于采样比,对检测设备而言一般以自身设定为主要依据。例如,构造的NetFlow报文的版本为v5、记录数1,在仪表端udp头部后新增自定义头部1,填充hex为00050001144cbda05d52e8620000000000690d240002400a。
针对流的记录格式部分,需要确定构造的netflow报文中是否需要可变字段,一般来说有修改五元组、报文数、报文长度的需求,所以,可以参考表2,可针对性对流的记录格式部分继续分层构造,在一标段下添加更多的自定义头部。例如新增源ip所在自定义头部2,填充3F010102;自定义头部3目的ip,填充40010102;下一跳路由器IP地址、入接口和出接口对于有溯源功能的设备来说可以进行修改,此处记为自定义头部4,填充固定hex为400101020008000A;报文数记为自定义头部5,取固定值100,填充00000064;包长记为自定义头部6,取固定值填充11000,填充为00002AF8;时间固定为自定义头部7,填充144BD2AA144CBD96;自定义头部8位为源端口,填充0400,目的端口取514,和padding、TCPflag字段、协议UDP包括无需修改的字段写在一起固定为自定义头部9,填充0202000011c00000000020200000。
经过上述构造过程,即可构造得到一条携带单一flow,源ip 63.1.1.2源端口1024目的IP64.1.1.2目的端口514的udp报文,报文的三层包长为110,且每个flow由100条报文采样而来。
在构造出Netflow报文后,测试仪表即可将Netflow报文直接发送给测试设备。
相应的,测试设备在接收Netflow报文的同时,可以获取到与之对应的属性信息。该属性信息主要包括:该构造出的Netflow报文所对应的理论流量带宽以及测试仪表在发送该Netflow报文时所控制的发包率。
当然,发包率可以根据测试环境的不同进行调整。
值得指出的是,上述属性信息的数值是由用户进行控制,相应的,上述属性信息是数值可以作为已知量。
步骤S120:对所述流报文进行解析,并输出解析结果。
其中,对流报文进行解析的过程,即是解析出流报文的包头字段以及数据字段,然后根据包头字段包括流报文所携带的五元组的个数,数据字段包括每个五元组所采样的报文的个数以及对应五元组的三层包长,计算得到测试设备针对流报文所解析出的实际流量带宽以及测试设备接收流报文的收包率的过程。
相应的,解析结果包括实际流量带宽以及收包率。
其中,计算实际流量带宽的过程如下。
在一些实施方式中,流量带宽采用的是一层流量带宽。
此时,可以基于公式:
L1 rate=A×(B+C×(D+E+F))×8/1024/1024/1024,计算得到一层实际流量带宽。其中,L1 rate为一层实际流量带宽,单位为Gbps,A为测试设备的收包率,单位为pps,B为测试设备所获取到的对应五元组的三层包长,C为每个五元组所采样的报文的个数,D为每个报文的MAC头的字节数,E为帧间隙前导码所占的字节数,F为校验和所占的字节数。上述内容均可以在测试设备解析出的包头字段以及数据字段中获取到。
在一些实施方式中,流量带宽采用的是二层流量带宽。
此时,可以基于公式:
L2 rate=A×(B+C×D)×8/1024/1024/1024,计算得到二层实际流量带宽,其中,L2 rate为二层实际流量带宽,单位为Gbps,A为测试设备的收包率,单位为pps,B为测试设备所获取到的对应五元组的三层包长,C为每个五元组所采样的报文的个数,D为每个报文的MAC头的字节数。
至于测试设备的收包率,则可以通过计算单位时间内所接收到的报文的个数来确定。
步骤S130:根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
可选的,确定测试设备的流量解析性能,计算比较解析结果所包括的实际流量带宽与属性信息所包括的理论流量带宽,以及比较解析结果所包括的收包率以及属性信息所包括的发包率的过程。
其中,在实际流量带宽等于理论流量带宽,以及收包率等于发包率时,说明测试设备的流量解析性能充足,否则,说明测试设备的流量解析性能不充足。
当然,在一些实施方式中,在构造流报文时,还可以针对性地设计出最小包长(每个flow仅携带一个pdu)与最大包长(最大支持29个pdu),进而测试出不同情况下测试设备的最大处理能力。
此外,请参照图2,本申请实施例还提供一种性能测试装置400,应用于测试设备。性能测试装置400可以包括:接收模块410、解析模块420以及确定模块430。
接收模块410,用于接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息;
解析模块420,用于对所述流报文进行解析,并输出解析结果;
确定模块430,用于根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
在一种可能的实施方式中,所述确定模块430,用于比较所述解析结果所包括的实际流量带宽与所述属性信息所包括的理论流量带宽,以及比较所述解析结果所包括的收包率以及所述属性信息所包括的发包率;在所述实际流量带宽等于所述理论流量带宽,以及所述收包率等于所述发包率时,确定所述测试设备的流量解析性能充足;
其中,所述属性信息包括所述流报文所对应的发包速率以及所述流报文所对应的理论流量带宽;所述解析结果包括所述测试设备接收所述流报文的收包率以及所述测试设备针对所述流报文计算出的实际流量带宽。
在一种可能的实施方式中,所述解析模块420,用于解析出所述流报文的包头字段以及数据字段,所述包头字段包括所述流报文所携带的五元组的个数,所述数据字段包括每个所述五元组所采样的报文的个数以及对应五元组的三层包长;根据所述五元组的个数、每个所述五元组所采样的报文的个数以及所述对应五元组的三层包长,计算得到所述测试设备针对所述流报文所解析出的实际流量带宽以及所述测试设备接收所述流报文的收包率;所述解析结果包括所述实际流量带宽以及所述收包率。
在一种可能的实施方式中,所述实际流量带宽为二层流量带宽或者一层流量带宽。
在一种可能的实施方式中,所述解析模块420,用于在所述实际流量带宽为二层流量带宽时,基于公式L2 rate=A×(B+C×D)×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L2 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数。
在一种可能的实施方式中,所述解析模块420,用于在所述实际流量带宽为一层流量带宽时,基于公式L1 rate=A×(B+C×(D+E+F))×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L1 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数,E为帧间隙前导码所占的字节数,F为校验和所占的字节数。
本申请实施例所提供的性能测试装置400,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
此外,本申请实施例还提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被计算机运行时,执行如上述的性能测试方法所包含的步骤。
此外,请参照图3来描述用于实现本申请实施例的性能测试方法、装置的测试设备100。
可选的,测试设备100,可以是,但不限于个人电脑(Personal computer,PC)、服务器等具备流量解析功能的设备。
其中,测试设备100可以包括:处理器110、存储器120。
应当注意,图3所示的测试设备100的组件和结构只是示例性的,而非限制性的,根据需要,测试设备100也可以具有其他组件和结构。
处理器110、存储器120以及其他可能出现于测试设备100的组件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,处理器110、存储器120以及其他可能出现的组件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
存储器120用于存储程序,例如存储有前文出现的性能测试方法对应的程序或者前文出现的性能测试装置。可选的,当存储器120内存储有性能测试装置时,性能测试装置包括至少一个可以以软件或固件(firmware)的形式存储于存储器120中的软件功能模块。
可选的,性能测试装置所包括软件功能模块也可以固化在测试设备100的操作系统(operating system,OS)中。
处理器110用于执行存储器120中存储的可执行模块,例如性能测试装置包括的软件功能模块或计算机程序。当处理器110在接收到执行指令后,可以执行计算机程序,例如执行:接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息;对所述流报文进行解析,并输出解析结果;根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
当然,本申请任一实施例所揭示的方法都可以应用于处理器110中,或者由处理器110实现。
此外,本申请实施例还提供一种性能测试系统,可以包括上述测试仪表以及测试设备。
其中,测试仪表,用于构造流报文,并将所述流报文及其属性信息发送给测试设备;
测试设备,用于对所述流报文进行解析,并输出解析结果;并根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
综上所述,本发明实施例提出的性能测试方法、装置、系统、测试设备及存储介质,该方法在对测试设备进行测试时,跳过了通过核心交换机到测试仪表上去采样flow报文并发送给测试设备的过程,而是直接通过试仪表构造并发送flow报文到测试设备进行测试,因此,相较于现有技术,本申请实施例所提供的性能测试方法,不再依赖于核心交换机,相应的,可以降低测试过程对设备性能的要求以及测试成本。
此外,由于是直接将构造出的flow报文及其对应的准备的属性信息发送给测试设备进行解析测试,不会引入核心交换机对flow报文的采集过程以及对flow报文的发包过程,那么最终的测试结果也可以排除这两个过程所带来的干扰,是可以准确反应测试设备的解析性能的测试结果,相应的,从这个角度来说,本申请实施例所提供的性能测试方法,还可以增加测试结果的准确性。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,笔记本电脑,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。
Claims (6)
1.一种性能测试方法,其特征在于,应用于测试设备,所述方法包括:
接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息;
对所述流报文进行解析,并输出解析结果;
根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能;
所述对所述流报文进行解析,得到解析结果,包括:
解析出所述流报文的包头字段以及数据字段,所述包头字段包括所述流报文所携带的五元组的个数,所述数据字段包括每个所述五元组所采样的报文的个数以及对应五元组的三层包长;
根据所述五元组的个数、每个所述五元组所采样的报文的个数以及所述对应五元组的三层包长,计算得到所述测试设备针对所述流报文所解析出的实际流量带宽以及所述测试设备接收所述流报文的收包率;
所述解析结果包括所述实际流量带宽以及所述收包率;
所述实际流量带宽为二层流量带宽或者一层流量带宽;
所述计算得到所述测试设备针对所述流报文所解析出的实际流量带宽,包括:
在所述实际流量带宽为二层流量带宽时,基于公式
L2 rate=A ×(B+C×D)×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L2rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数;
在所述实际流量带宽为一层流量带宽时,基于公式
L1 rate=A ×(B+C×(D+E+F))×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L1 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数,E为帧间隙前导码所占的字节数,F为校验和所占的字节数。
2.根据权利要求1所述的方法,其特征在于,所述根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能,包括:
比较所述解析结果所包括的实际流量带宽与所述属性信息所包括的理论流量带宽,以及比较所述解析结果所包括的收包率以及所述属性信息所包括的发包率;
在所述实际流量带宽等于所述理论流量带宽,以及所述收包率等于所述发包率时,确定所述测试设备的流量解析性能充足;
其中,所述属性信息包括所述流报文所对应的发包速率以及所述流报文所对应的理论流量带宽;所述解析结果包括所述测试设备接收所述流报文的收包率以及所述测试设备针对所述流报文计算出的实际流量带宽。
3.一种性能测试装置,其特征在于,应用于测试设备,所述装置包括:
接收模块,用于接收由测试仪表构造并发送的流报文以及与所述流报文对应的属性信息;
解析模块,用于对所述流报文进行解析,并输出解析结果;解析出所述流报文的包头字段以及数据字段,所述包头字段包括所述流报文所携带的五元组的个数,所述数据字段包括每个所述五元组所采样的报文的个数以及对应五元组的三层包长;根据所述五元组的个数、每个所述五元组所采样的报文的个数以及所述对应五元组的三层包长,计算得到所述测试设备针对所述流报文所解析出的实际流量带宽以及所述测试设备接收所述流报文的收包率;所述解析结果包括所述实际流量带宽以及所述收包率;所述实际流量带宽为二层流量带宽或者一层流量带宽;在所述实际流量带宽为二层流量带宽时,基于公式L2 rate=A×(B+C×D)×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L2 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数;在所述实际流量带宽为一层流量带宽时,基于公式L1 rate=A ×(B+C×(D+E+F))×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L1 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数,E为帧间隙前导码所占的字节数,F为校验和所占的字节数;
确定模块,用于根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能。
4.一种测试设备,其特征在于,包括:存储器和处理器,所述存储器和所述处理器连接;
所述存储器用于存储程序;
所述处理器调用存储于所述存储器中的程序,以执行如权利要求1或2中所述的方法。
5.一种存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被计算机运行时执行如权利要求1或2所述的方法。
6.一种性能测试系统,其特征在于,用于对测试设备的流量解析性能进行测试,包括:
测试仪表,用于构造流报文,并将所述流报文及其属性信息发送给测试设备;
所述测试设备,用于对所述流报文进行解析,并输出解析结果;并根据所述解析结果以及所述属性信息,确定所述测试设备的流量解析性能;
所述测试设备,具体用于解析出所述流报文的包头字段以及数据字段,所述包头字段包括所述流报文所携带的五元组的个数,所述数据字段包括每个所述五元组所采样的报文的个数以及对应五元组的三层包长;根据所述五元组的个数、每个所述五元组所采样的报文的个数以及所述对应五元组的三层包长,计算得到所述测试设备针对所述流报文所解析出的实际流量带宽以及所述测试设备接收所述流报文的收包率;所述解析结果包括所述实际流量带宽以及所述收包率;所述实际流量带宽为二层流量带宽或者一层流量带宽;在所述实际流量带宽为二层流量带宽时,基于公式L2 rate=A ×(B+C×D)×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L2 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数;在所述实际流量带宽为一层流量带宽时,基于公式L1 rate=A ×(B+C×(D+E+F))×8/1024/1024/1024,计算得到所述实际流量带宽,其中,L1 rate为所述实际流量带宽,单位为Gbps,A为所述收包率,单位为pps,B为所述对应五元组的三层包长,C为每个所述五元组所采样的报文的个数,D为每个所述报文的MAC头的字节数,E为帧间隙前导码所占的字节数,F为校验和所占的字节数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111067867.5A CN113783754B (zh) | 2021-09-13 | 2021-09-13 | 性能测试方法、装置、系统、测试设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111067867.5A CN113783754B (zh) | 2021-09-13 | 2021-09-13 | 性能测试方法、装置、系统、测试设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113783754A CN113783754A (zh) | 2021-12-10 |
CN113783754B true CN113783754B (zh) | 2023-09-26 |
Family
ID=78842959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111067867.5A Active CN113783754B (zh) | 2021-09-13 | 2021-09-13 | 性能测试方法、装置、系统、测试设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113783754B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015131597A1 (zh) * | 2014-09-17 | 2015-09-11 | 中兴通讯股份有限公司 | 一种实现流量分析的方法及装置 |
WO2016161713A1 (zh) * | 2015-04-10 | 2016-10-13 | 中兴通讯股份有限公司 | 路由设备中数据流分析的方法、装置及路由设备 |
CN107404421A (zh) * | 2017-09-18 | 2017-11-28 | 赛尔网络有限公司 | 流量监测、监管方法及系统 |
CN107534901A (zh) * | 2015-12-17 | 2018-01-02 | 华为技术有限公司 | 一种QoS保障方法及网关 |
CN108322403A (zh) * | 2018-01-31 | 2018-07-24 | 杭州迪普科技股份有限公司 | 一种Netflow流量分流方法及装置 |
CN108696455A (zh) * | 2017-04-11 | 2018-10-23 | 华为技术有限公司 | 用于处理业务流的方法及装置 |
CN110505082A (zh) * | 2019-07-26 | 2019-11-26 | 国家电网有限公司 | 一种面向成本和QoS的NFV服务链映射方法 |
CN112702339A (zh) * | 2020-12-23 | 2021-04-23 | 中移(杭州)信息技术有限公司 | 基于深度迁移学习的异常流量监测与分析方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10135577B2 (en) * | 2015-03-02 | 2018-11-20 | Lg Electronics Inc. | Scalable service in a wireless communication system |
US20190372857A1 (en) * | 2018-05-29 | 2019-12-05 | Arris Enterprises Llc | Capacity planning and recommendation system |
-
2021
- 2021-09-13 CN CN202111067867.5A patent/CN113783754B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015131597A1 (zh) * | 2014-09-17 | 2015-09-11 | 中兴通讯股份有限公司 | 一种实现流量分析的方法及装置 |
WO2016161713A1 (zh) * | 2015-04-10 | 2016-10-13 | 中兴通讯股份有限公司 | 路由设备中数据流分析的方法、装置及路由设备 |
CN107534901A (zh) * | 2015-12-17 | 2018-01-02 | 华为技术有限公司 | 一种QoS保障方法及网关 |
CN108696455A (zh) * | 2017-04-11 | 2018-10-23 | 华为技术有限公司 | 用于处理业务流的方法及装置 |
CN107404421A (zh) * | 2017-09-18 | 2017-11-28 | 赛尔网络有限公司 | 流量监测、监管方法及系统 |
CN108322403A (zh) * | 2018-01-31 | 2018-07-24 | 杭州迪普科技股份有限公司 | 一种Netflow流量分流方法及装置 |
CN110505082A (zh) * | 2019-07-26 | 2019-11-26 | 国家电网有限公司 | 一种面向成本和QoS的NFV服务链映射方法 |
CN112702339A (zh) * | 2020-12-23 | 2021-04-23 | 中移(杭州)信息技术有限公司 | 基于深度迁移学习的异常流量监测与分析方法和装置 |
Non-Patent Citations (2)
Title |
---|
一种改进的分层CBF网络大流识别策略;张惠民;冯林生;邱雪欢;;装甲兵工程学院学报(01);全文 * |
基于DPDK的流量测试平台设计;朱星宇;张倩武;曹炳尧;;微型电脑应用(05);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113783754A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9065767B2 (en) | System and method for reducing netflow traffic in a network environment | |
KR100814546B1 (ko) | 통신 데이터를 수집하여 분석하는 장치 및 방법 | |
US20130191890A1 (en) | Method and system for user identity recognition based on specific information | |
US8923152B2 (en) | Random data stream sampling | |
US20060067493A1 (en) | Processing of usage data for first and second types of usage-based functions | |
US20130265883A1 (en) | Method and system for storing packet flows | |
CN102571479B (zh) | 延时的测量方法、装置及系统 | |
CN101800671B (zh) | 一种h.264视频文件的丢包检测方法 | |
US20120026914A1 (en) | Analyzing Network Activity by Presenting Topology Information with Application Traffic Quantity | |
Claise et al. | Export of structured data in IP flow information export (IPFIX) | |
CN102223260A (zh) | 测试iptv视频数据流传输质量的方法、系统及装置 | |
CN108206788B (zh) | 一种流量的业务识别方法及相关设备 | |
US20100165859A1 (en) | Sorting flow records into analysis buckets | |
US9270565B2 (en) | System for estimating download speed from passive measurements | |
US20180331931A1 (en) | Packet throughput and loss ratio measurements of a service function chain | |
EP2586158A1 (en) | Apparatus and method for monitoring of connectivity services | |
Marques et al. | Intsight: Diagnosing slo violations with in-band network telemetry | |
CN110691007A (zh) | 一种精确测量quic连接丢包率的方法 | |
CN112335203B (zh) | 处理局域网诊断数据 | |
CN115277510A (zh) | 自动识别网络会话中设备、设备接口、设备路径的方法 | |
CN105827474A (zh) | 网络监控方法、过滤数据包的方法及装置 | |
CN113783754B (zh) | 性能测试方法、装置、系统、测试设备及存储介质 | |
US7032032B2 (en) | Method and apparatus for providing tandem connection, performance monitoring, and protection architectures over ethernet protocols | |
CN111490907B (zh) | 一种确定vxlan网络性能参数的方法及装置 | |
CN101778294B (zh) | 一种mpeg视频文件的丢包检测方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |