RFC2544吞吐性能测试方法、系统、设备及介质技术方案

技术编号:33127206 阅读:14 留言:0更新日期:2022-04-17 00:38
本发明专利技术公开了一种RFC2544吞吐性能测试方法、系统、设备及介质,基于DPDK pktgen测试工具实现,通过加载预先配置的配置文件;解析所述配置文件,得到配置参数;根据所述配置参数,生成对应的网络报文,以及根据所述配置参数计算得到测试用运行参数;基于所述网络报文及测试用运行参数,对被测设备进行多次迭代测试,得到所述被测设备的RFC2544吞吐量,在利用DPDK pktgen报文发送框架的基础上,可以自动多次迭代测试,测试得到被测设备较为准确的RFC2544吞吐量。RFC2544吞吐量。RFC2544吞吐量。

【技术实现步骤摘要】
RFC2544吞吐性能测试方法、系统、设备及介质


[0001]本专利技术涉及网络设备测试
,尤其涉及一种RFC2544吞吐性能测试方法、系统、设备及介质。

技术介绍

[0002]Web RFC2544协议是RFC组织提出的用于评测网络互联设备的国际标准。RFC2544中规定了许多测试不同网络设备的参数,主要有吞吐量、丢包率、时延、背靠背等。作为网关安全互通设备(如防火墙等),吞吐量是一个很重要的性能指标。为了满足吞吐量的要求,需要做很多的吞吐量优化工作。所以,也就需要比较可靠的流量发送工具,可以发送指定五元组、并发连接数目、吞吐量的网络报文。
[0003]目前,常用的网络测试工具有TestCenter、Ixia等,可以用于测试RFC2544吞吐量。由于这些设备比较昂贵,因此这类资源的使用比较紧张。另外一些常见的包回放软件,只能回放已经抓取的.pcap文件,不能自定义报文,报文发送性能也严重不足。
[0004]Pktgen(Packet Generator)是一个基于DPDK的软件框架,发包速率可达线速,可以提供运行时管理,端口实时测量,可以配置报文的五元组等。在一定程序上可以满足RFC2544吞吐量的要求,但没法像TestCenter自动多次迭代测试出网络设备的真实吞吐量。

技术实现思路

[0005]本专利技术的主要目的在于提供一种RFC2544吞吐性能测试方法、系统、设备及介质,旨在利用DPDK pktgen报文发送框架的基础上,可以自动多次迭代测试,测试得到被测设备较为准确的RFC2544吞吐量,提高测试准确性。
[0006]为实现上述目的,本专利技术提供一种RFC2544吞吐性能测试方法,所述方法包括以下步骤:
[0007]加载预先配置的配置文件;
[0008]解析所述配置文件,得到配置参数;
[0009]根据所述配置参数,生成对应的网络报文,以及根据所述配置参数计算得到测试用运行参数;
[0010]基于所述网络报文及测试用运行参数,对被测设备进行多次迭代测试,得到所述被测设备的RFC2544吞吐量。
[0011]可选地,所述基于所述网络报文及测试用运行参数,对被测设备进行多次迭代测试,得到所述被测设备的RFC2544吞吐量的步骤包括:
[0012]S1,启动本次迭代测试,在测试过程中,进行所述网络报文的发送与接收,统计发送报文数目、接收报文数目,计算丢包率、平均吞吐量,并在交互界面显示;
[0013]S2,待本次迭代测试的截止时间到达后,结束报文收发操作,计算本次迭代测试的丢包率、平均吞吐量,并在交互界面显示;
[0014]S3,在本次迭代测试结束时,根据测试得到的丢包率与所述配置参数允许的丢包
率计算下一次迭代测试的吞吐量,返回执行步骤S1,依次循环,直到达到配置的迭代次数上限。
[0015]可选地,所述RFC2544吞吐性能测试方法基于DPDK pktgen测试工具实现,所述加载预先配置的配置文件的步骤之后还包括:
[0016]对所述DPDK pktgen测试工具进行初始化,其中,初始阶段确定的吞吐量上限bpsHigh=1,吞吐量下限bpsLow=0;
[0017]对报文发送线程、报文接收线程进行初始化;
[0018]所述启动本次迭代测试,在测试过程中,进行所述网络报文的发送与接收,统计发送报文数目、接收报文数目,计算丢包率、平均吞吐量,并在交互界面显示的步骤包括:
[0019]启动本次迭代测试,在测试过程中,记录每个报文发送线程已经发送的报文数目,记录每个报文接收线程已经接收到的报文数目,周期性计算丢包数目,在所述交互界面显示报文发送总数、报文接收总数、丢包总数,直到本次迭代测试的运行时间结束为止;
[0020]其中,根据所述报文发送总数、报文接收总数,计算丢包数目、丢包率、平均吞吐量。
[0021]可选地,所述S3,在本次迭代测试结束时,根据测试得到的丢包率与所述配置参数允许的丢包率计算下一次迭代测试的吞吐量,返回执行步骤S1,依次循环,直到达到配置的迭代次数上限的步骤包括:
[0022]在本次迭代测试结束时,根据本次迭代测试的丢包率、所述配置参数允许的丢包率,更新吞吐量上限bpsHigh与吞吐量下限bpsLow,其中:
[0023]如果本次迭代测试的丢包率小于允许的丢包率,则本次测试通过,吞吐量上限bpsHigh保持不变,吞吐量下限bpsLow更新为本次迭代测试的吞吐量bpsCur;
[0024]如果本次迭代测试的丢包率大于或等于允许的丢包率,则本次测试失败,吞吐量下限bpsLow保持不变,吞吐量上限bpsHigh更新为本次测试的吞吐量bpsCur,继续执行下一次迭代测试,直到达到配置参数迭代次数的限制;
[0025]其中,本次迭代测试的吞吐量bpsCur=(bpsHigh+bpsLow)/2。实际吞吐量为bpsCur*2*网卡线速(如万兆网卡的最大吞吐量为20Gbps)。
[0026]可选地,所述方法还包括:
[0027]对测试得到的所述被测设备的RFC2544吞吐量进行分析并在交互界面显示。
[0028]可选地,所述加载预先配置的配置文件的步骤之前还包括:
[0029]配置所述配置文件,所述配置文件涉及的配置参数至少包括:允许的丢包率、并发连接数、报文长度、报文五元组、每次迭代测试的持续时间。
[0030]可选地,所述根据所述配置参数,生成对应的网络报文,以及根据所述配置参数计算得到测试用运行参数的步骤包括:
[0031]根据所述配置参数中的并发连接数、报文五元组、报文长度,生成所需要的UDP报文;
[0032]根据报文连接数目Ncon、报文五元组的变化范围,选取Ncon个源IP地址、源端口、目的IP地址、目的地端口信息对;
[0033]确定Ncon条会话的五元组后,产生正向报文与反向报文;
[0034]确定本次迭代测试相关的运行参数,所述运行参数包括吞吐量。
[0035]此外,本专利技术实施例还提出一种网络设备吞吐性能测试系统,所述网络设备吞吐性能测试系统包括:业务模块,以及与所述业务模块交互的控制模块;
[0036]所述业务模块,用于接收或发送网卡的报文,管理报文发送线程、报文接收线程以及进行数据统计分析;
[0037]所述控制模块,用于加载预先配置的配置文件;解析所述配置文件,得到配置参数;根据所述配置参数,生成对应的网络报文,以及根据所述配置参数计算得到测试用运行参数;基于所述网络报文及测试用运行参数,对被测设备进行多次迭代测试,得到所述被测设备的RFC2544吞吐量。
[0038]此外,本专利技术实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的网络设备吞吐性能测试程序,所述网络设备吞吐性能测试程序被所述处理器执行时实现如上所述的RFC2544吞吐性能测试方法的步骤。
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种RFC2544吞吐性能测试方法,其特征在于,所述方法包括以下步骤:加载预先配置的配置文件;解析所述配置文件,得到配置参数;根据所述配置参数,生成对应的网络报文,以及根据所述配置参数计算得到测试用运行参数;基于所述网络报文及测试用运行参数,对被测设备进行多次迭代测试,得到所述被测设备的RFC2544吞吐量。2.根据权利要求1所述的方法,其特征在于,所述基于所述网络报文及测试用运行参数,对被测设备进行多次迭代测试,得到所述被测设备的RFC2544吞吐量的步骤包括:S1,启动本次迭代测试,在测试过程中,进行所述网络报文的发送与接收,统计发送报文数目、接收报文数目,计算丢包率、平均吞吐量,并在交互界面显示;S2,待本次迭代测试的截止时间到达后,结束报文收发操作,计算本次迭代测试的丢包率、平均吞吐量,并在交互界面显示;S3,在本次迭代测试结束时,根据测试得到的丢包率与所述配置参数允许的丢包率计算下一次迭代测试的吞吐量,返回执行步骤S1,依次循环,直到达到配置的迭代次数上限。3.根据权利要求2所述的方法,其特征在于,所述RFC2544吞吐性能测试方法基于DPDK pktgen测试工具实现,所述加载预先配置的配置文件的步骤之后还包括:对所述DPDK pktgen测试工具进行初始化,其中,初始阶段确定的吞吐量上限bpsHigh=1,吞吐量下限bpsLow=0;对报文发送线程、报文接收线程进行初始化;所述启动本次迭代测试,在测试过程中,进行所述网络报文的发送与接收,统计发送报文数目、接收报文数目,计算丢包率、平均吞吐量,并在交互界面显示的步骤包括:启动本次迭代测试,在测试过程中,记录每个报文发送线程已经发送的报文数目,记录每个报文接收线程已经接收到的报文数目,周期性计算丢包数目,在所述交互界面显示报文发送总数、报文接收总数、丢包总数,直到本次迭代测试的运行时间结束为止;其中,根据所述报文发送总数、报文接收总数,计算丢包数目、丢包率、平均吞吐量。4.根据权利要求3所述的方法,其特征在于,所述S3,在本次迭代测试结束时,根据测试得到的丢包率与所述配置参数允许的丢包率计算下一次迭代测试的吞吐量,返回执行步骤S1,依次循环,直到达到配置的迭代次数上限的步骤包括:在本次迭代测试结束时,根据本次迭代测试的丢包率、所述配置参数允许的丢包率,更新吞吐量上限bpsHigh与吞吐量下限bpsLow,其中:如果本次迭代测试的丢包率小于允许的丢包率,则本次测试通过,吞吐量上限bpsHigh保持不变,吞吐量下限bpsLow更新为本次迭代测试的吞吐量bpsCur;如...

【专利技术属性】
技术研发人员:李彬
申请(专利权)人:北京六方云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1