CN112181750A - 工控网络设备的稳定性的测试方法、装置及介质 - Google Patents

工控网络设备的稳定性的测试方法、装置及介质 Download PDF

Info

Publication number
CN112181750A
CN112181750A CN202011127810.5A CN202011127810A CN112181750A CN 112181750 A CN112181750 A CN 112181750A CN 202011127810 A CN202011127810 A CN 202011127810A CN 112181750 A CN112181750 A CN 112181750A
Authority
CN
China
Prior art keywords
utilization rate
stability
system resource
industrial control
control network
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
Application number
CN202011127810.5A
Other languages
English (en)
Inventor
雷海波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Winicssec Technologies Co Ltd
Original Assignee
Beijing Winicssec Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Winicssec Technologies Co Ltd filed Critical Beijing Winicssec Technologies Co Ltd
Priority to CN202011127810.5A priority Critical patent/CN112181750A/zh
Publication of CN112181750A publication Critical patent/CN112181750A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods

Abstract

本发明提供一种工控网络设备的稳定性的测试方法,其特征在于,所述方法包括:场景构造步骤,构造使系统资源高于基准使用率运转的使用场景;数据获取步骤,实时获取表示系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率;数据记录步骤,实时记录计算出的所述系统资源使用率;以及稳定性验证步骤,基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。

Description

工控网络设备的稳定性的测试方法、装置及介质
技术领域
本发明涉及一种工控网络设备的稳定性的测试方法、装置及介质。
背景技术
工控网络设备大量应用于国家关键基础设施中,例如水利、水电、能源和交通等领域,除了具备功能执行正确,高吞吐、低时延的性能要求外,还需要具备近乎严苛的稳定性,以保证现场的指令随时都可以被按时执行和响应。
然而,网络设备的稳定性测试及验证在业界还没有一个统一的、通用的、强针对性的行之有效的方法,工控网络设备的稳定性测试更是如此。在公司级的产品研发实践中,稳定性测试通常也就是设备连续运行3*24或7*24小时,仅是简单过流量,来看设备有没有重启和生成崩溃文件而已。
可见,现有的工控网络设备的稳定性的测试没有针对性,即,没有针对CPU和内存这两大影响系统稳定性的关键因素去构造出资源长期被占用的场景以验证设备的稳定性。而且现有的工控网络设备的稳定性的测试也没有考虑到量化,即,不能从微观、线性的角度对测试过程中的设备资源变化进行取值和记录,从而无法真正地对设备的稳定性进行客观分析。例如,无法分析出每个时间点的CPU使用率是多少,内存使用率是多少;指标的最高值是多少且出现在哪个时间点;指标的最低值是多少且出现在哪个时间点;指标的平均值为多少等。此外,现有的工控网络设备的稳定性的测试也没有做到数据实时写存档。
发明内容
针对上述情况而做出了本发明,并且本发明的目的是提供一种工控网络设备的稳定性的测试方法和装置,其能够克服现有技术的上述缺陷,在工控网络设备正式上线接入关键基础设施网络前,对其稳定性进行充分检测。鉴于在产品研发和客户使用的实践中,影响设备稳定性的最突出因素就是CPU使用率过高、CPU死锁,内存使用率过高、内存泄露、内存溢出所导致的设备功能异常和系统崩溃,因此,本发明的工控网络设备的稳定性的测试方法和装置针对测试过程中的指标(CPU使用率、内存使用率)数据以及分配使用机制、回收机制进行实时量化记录,以便可以客观地、可量化地去评判被测试网络设备的稳定性。
本发明的工控网络设备的稳定性的测试方法和装置在工控网络设备正式接入关键基础网络前对其稳定性进行长时间、数字量化验证,即在CPU和内存处于高使用率、频繁分配使用资源、回收资源场景下,对其稳定性、功能健壮性进行强覆盖,从而提前暴露稳定性方面的问题,以实现客观、可量化地评价网络设备是否具备高稳定性。
而且,本发明的工控网络设备的稳定性的测试方法和装置通过系统数据采集和自动化记录技术对CPU和内存的资源使用情况进行实时记录与分析,以从微观、线性的角度对测试过程中的设备资源变化进行取值和记录。此外,本发明的工控网络设备的稳定性的测试方法和装置自动化构造CPU密集型报文,可以在极短时间内构造CPU和内存的高使用率的场景。
根据本发明的第一方面,提供一种工控网络设备的稳定性的测试方法,所述方法包括:
场景构造步骤,构造使系统资源高于基准使用率运转的使用场景;
数据获取步骤,实时获取表示系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率;
数据记录步骤,实时记录计算出的所述系统资源使用率;以及
稳定性验证步骤,基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。
进一步地,在所述数据获取步骤中,以预定时间间隔获取所述数据。
进一步地,所述系统资源使用率包括CPU使用率和内存使用率。
进一步地,使用Python脚本程序利用相邻的两个时间点获取的所述数据计算所述CPU使用率和所述内存使用率。
进一步地,在所述数据记录步骤中,利用Python脚本程序将计算出的所述系统资源使用率实时地记录在电子表格文件中。
进一步地,在所述稳定性验证步骤中,基于记录在所述电子表格文件中的所述系统资源使用率的所述记录结果而对所述工控网络设备的稳定性进行验证,并且
当所述系统资源使用率的所述记录结果超过预先设定的阈值时,验证所述工控网络设备存在稳定性风险,并发出警报。
进一步地,基于在所述电子表格文件中的所述系统资源使用率的所述记录结果,能够获得所述系统资源使用率的平均值、最高值和最低值。
进一步地,能够基于所述电子表格文件中的所述系统资源使用率的记录结果,绘制所述系统资源使用率随时间变化的曲线图,从而可视化地呈现所述系统资源使用率的变化情况。
进一步地,在所述场景构造步骤中,根据报文分层构造模型对报文进行分层构造,并构造出CPU密集型的分片报文,从而构造使所述系统资源高于基准使用率运转的场景。
本发明的第二方面提供了一种工控网络设备的稳定性的测试装置,所述装置包括:
场景构造模块,该场景构造模块用于构造使系统资源高于基准使用率运转的使用场景;
数据获取模块,该数据获取模块用于实时获取表示系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率;
数据记录模块,该数据记录模块用于实时记录计算出的所述系统资源使用率;以及
稳定性验证模块,该稳定性验证模块用于基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。
进一步地,所述数据获取模块以预定时间间隔获取所述数据。
进一步地,所述系统资源使用率包括CPU使用率和内存使用率。
进一步地,所述数据获取模块使用Python脚本程序利用相邻的两个时间点获取的所述数据计算所述CPU使用率和所述内存使用率。
进一步地,所述数据记录模块利用Python脚本程序将计算出的所述系统资源使用率实时地记录在电子表格文件中。
进一步地,所述稳定性验证模块基于记录在所述电子表格文件中的结果而对所述工控网络设备的稳定性进行验证,并且
当所述CPU使用率或所述内存使用率的结果超过预先设定的阈值时,所述稳定性验证模块验证所述工控网络设备存在稳定性风险,并发出警报。
进一步地,基于记录在所述电子表格文件中的结果,能够获得所述系统资源使用率的平均值、最高值和最低值。
进一步地,能够基于所述电子表格文件中的所述系统资源使用率的记录结果,绘制所述系统资源使用率随时间变化的曲线图,从而可视化地呈现所述系统资源使用率的变化情况。
进一步地,所述场景构造模块根据报文分层构造模型对报文进行分层构造,并构造出CPU密集型的分片报文,从而构造使CPU高于基准使用率运转的场景。
本发明的第三方面提供了一种工控网络设备的稳定性的测试装置,所述装置包括存储程序的存储单元和处理单元,其中,
所述处理单元执行所述程序用以实现如第一方面所述的方法中的各个步骤。
本发明的第四方面提供了一种计算机可读介质,其中,
所述介质上存储有程序,该程序被执行用以实现如第一方面所述的方法中的各个步骤。
以下结合本发明的附图及优选实施方式对本发明的技术方案做进一步详细地描述,本发明的有益效果将进一步明确。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,但其说明仅用于解释本发明,并不构成对本发明的不当限定。
图1是根据本发明一优选实施例的工控网络设备的稳定性的测试方法的步骤的示意图。
图2示出根据本发明一优选实施例的工控网络设备的稳定性的测试方法的场景构造步骤的实例,其示出了利用报文分层构造模型对报文进行分层构造。
图3示出利用本发明的工控网络设备的稳定性的测试方法获得的系统资源使用率的具体实例,其中,图3(a)示出了CPU使用率的统计结果的曲线图,并且图3(b)示出了内存使用率的统计结果的曲线图。
图4是根据本发明一优选实施例的工控网络设备的稳定性的测试装置的示意性框图。
图5是示出本发明一优选实施例的工控网络设备的稳定性的测试装置所适用的计算机系统的示意性配置的图。
具体实施方式
下面将结合本发明的具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分优选实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1描述根据本发明的工控网络设备的稳定性的测试方法。图1是根据本发明一优选实施例的工控网络设备的稳定性的测试方法的步骤的示意图。
如图1所示,根据本发明的工控网络设备的稳定性的测试方法包括场景构造步骤S1、数据获取步骤S2、数据记录步骤S3以及稳定性验证步骤S4。
下文将详细描述上述各个步骤。
S1:场景构造步骤
构造使系统资源高于基准使用率运转的使用场景。其中,基准使用率为预先设定的使系统不太可能出现稳定性风险的使用率的上限阈值,并且可以根据需要和实际使用场景而进行相应设定。例如,可以将基准使用率设定为30%。
具体的,例如,可以根据报文分层构造模型对报文进行分层构造,参见图2所示。并且可以对报文进行分片,从而构造出CPU密集型的分片报文,使得系统资源使用率快速上升,从而使系统资源(CPU、内存等)高于基准使用率运转,以处于CPU和内存高使用率、频繁分配使用资源、回收资源的场景下。
构造使系统资源高于基准使用率运转的使用场景的方式不限于上述对报文进行分层和分片,还可以应用其它方式。例如,利用系统自身存在的程序问题等导致的系统资源高于基准使用率运转。
S2:数据获取步骤
实时获取表示系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率。
具体地,使用Python脚本程序以预定时间间隔(例如,1秒)从工控网络设备的操作系统实时获取系统资源的CPU和内存的使用情况,并且计算系统资源使用率。其中,系统资源使用率包括CPU使用率和内存使用率。此外,上述预定时间间隔可以是根据需要设定的固定的时间间隔,也可以是根据需要设定的非固定的时间间隔等。
具体地,作为一个实例,可以利用以下命令获取系统资源的使用情况:
Figure BDA0002730559750000071
#cat/proc/stat|grep"cpu"cpu 1005154 0174964 4265915_79 210268 2019 0 0 0
具体的,作为一个实例,可以利用例如以下的公式1的程序脚本计算系统资源使用率,即,CPU使用率和内存使用率。
【公式1】
od=float(user1+nice1+system1+idle1)
nd=float(user2+nice2+system2+idle2)
id=float(user2)-float(user1)
sd=float(system2)-float(system1)
cpu_use=round(float(sd+id)/float(nd-od),4)
mem_use=1-round((float(freemem)+f1oat(cachedmem))/float(totalmem),4)
其中,user表示用户模式;nice表示低优先级的用户模式;system表示内核模式;idle表示空闲的处理器时间;od表示时间点t1所对应的值,nd表示从时间点t1经过所述预定时间间隔后的相邻时间点t2所对应的值;id表示用户模式在时间点t2与时间点t1的差值;sd表示内核模式在时间点t2与时间点t1的差值;freemem表示空闲的内存;cachedmem表示用于缓冲的内存;totalmem表示总的内存大小;并且cpu_use表示CPU使用率;mem_use表示内存使用率。
S3:数据记录步骤
实时记录计算出的所述系统资源使用率。
具体地,利用Python脚本程序将计算出的系统资源使用率实时地记录在通用的电子表格文件中。
具体地,作为一个实例,可以采用如下的Python脚本程序:
Figure BDA0002730559750000081
通过上述Python脚本程序获得的电子表格文件的具体实例,可以参见以下表1中的数据。
表1系统资源使用率的电子表格文件的具体内容的示例
Figure BDA0002730559750000091
如上文表1所示,其实时列出了系统资源使用率的百分比,从而进行实时量化记录,以便可以客观地、可量化地去评判被测试网络设备的稳定性。
此外,还可以基于上述数据绘制系统资源使用率随时间变化的曲线图,参见图3所示,图3(a)示出CPU使用率的变化曲线,并且图3(b)示出内存使用率的变化曲线。通过上述曲线图,能够更加直观的可视化地呈现系统资源使用率的变化情况,从而可以对工控网络设备的稳定性进行长时间、可量化的可视化验证。
而且,基于获得的上述表格中的百分比数据,能够获得系统资源使用率在预定时间段内的平均值、最高值和最低值以及最高值和最低值所对应的时间点等具体数据。
S4:稳定性验证步骤
基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。
具体地,基于记录在所述电子表格文件中的结果而对所述工控网络设备的稳定性进行验证。例如,当所述CPU使用率或所述内存使用率的结果超过预先设定的阈值时,验证所述工控网络设备的可能存在稳定性风险,即,不具备高稳定性,并发出警报。
例如,可以将预先设定的系统资源使用率的阈值设定为80%,则当记录在电子表格文件中的百分比的数据高于80%的使用率时,则验证系统存在稳定性风险,并可以自动发送警报,以提示该风险的发生。
以上详细描述了本发明的工控网络设备的稳定性的测试方法的各个步骤。本发明的工控网络设备的稳定性的测试方法针对测试过程中的指标(CPU使用率、内存使用率)数据以及分配使用机制、回收机制进行实时量化记录,以便可以客观地、可量化地去评判被测试网络设备的稳定性。因此,在工控网络设备正式接入关键基础网络前对其稳定性进行长时间、数字量化验证,即在CPU和内存处于高使用率,频繁分配使用资源、回收资源场景下,对其稳定性、功能健壮性进行强覆盖,提前暴露稳定性方面的问题,从而客观、可量化地评价网络设备是否具备高稳定性。
本发明的另一方面提供了一种工控网络设备的稳定性的测试装置,下文将参考图4描述根据本发明的工控网络设备的稳定性的测试装置的具体配置。
根据本发明的工控网络设备的稳定性的测试装置100包括场景构造模块110、数据获取模块120、数据记录模块130和稳定性验证模块140。
下文将详细描述上述各个模块。
场景构造模块110
场景构造模块110用于构造使系统资源高于基准使用率运转的使用场景。其中,基准使用率为预先设定的使系统不太可能出现稳定性风险的使用率的上限阈值,并且可以根据需要和实际使用场景而进行相应设定。例如,可以将基准使用率设定为30%。
具体的,场景构造模块110可以根据报文分层构造模型对报文进行分层构造,参见图2所示。并且场景构造模块110可以对报文进行分片,从而构造出CPU密集型的分片报文,使得系统资源使用率快速上升,从而使系统资源(CPU、内存等)高于基准使用率运转,以处于CPU和内存高使用率、频繁分配使用资源、回收资源的场景下。
场景构造模块110构造使系统资源高于基准使用率运转的使用场景的方式不限于上述对报文进行分层和分片,还可以应用其它方式。例如,场景构造模块110可以利用系统自身存在的程序问题等导致的系统资源高于基准使用率运转。
数据获取模块120
数据获取模块120用于实时获取表示系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率。
具体地,数据获取模块120使用Python脚本程序以预定时间间隔(例如,1秒)从工控网络设备的操作系统实时获取系统资源的CPU和内存的使用情况,并且计算系统资源使用率。其中,系统资源使用率包括CPU使用率和内存使用率。此外,上述预定时间间隔可以是根据需要设定的固定的时间间隔,也可以是根据需要设定的非固定的时间间隔等。
具体地,作为一个实例,可以利用以下命令获取系统资源的使用情况:
Figure BDA0002730559750000121
#cat/proc/stat|grep″cpu″cpu 1005154 0174964 4265915_79 210268 2019 0 0 0
具体的,作为一个实例,可以利用例如前文所述的公式1的程序脚本计算系统资源使用率,即,CPU使用率和内存使用率。
数据记录模块130
数据记录模块130用于实时记录计算出的所述系统资源使用率。
具体地,数据记录模块130利用Python脚本程序将计算出的系统资源使用率实时地记录在通用的电子表格文件中。
具体地,作为一个实例,数据记录模块130可以采用如下的Python脚本程序:
Figure BDA0002730559750000131
通过上述Python脚本程序获得的电子表格文件的具体实例,可以参见前文表1中的数据。
如前文表1所示,其实时列出了系统资源使用率的百分比,从而进行实时量化记录,以便可以客观地、可量化地去评判被测试网络设备的稳定性。
此外,数据记录模块130还可以基于上述数据绘制系统资源使用率随时间变化的曲线图,参见图3所示,图3(a)示出CPU使用率的变化曲线,并且图3(b)示出内存使用率的变化曲线。通过上述曲线图,能够更加直观的可视化地呈现系统资源使用率的变化情况,从而可以对工控网络设备的稳定性进行长时间、可量化的可视化验证。
而且,基于获得的上述表格中的百分比数据,能够获得系统资源使用率在预定时间段内的平均值、最高值和最低值以及最高值和最低值所对应的时间点等具体数据。
稳定性验证模块140
稳定性验证模块140用于基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。
具体地,稳定性验证模块140基于记录在所述电子表格文件中的结果而对所述工控网络设备的稳定性进行验证。例如,当所述CPU使用率或所述内存使用率的结果超过预先设定的阈值时,稳定性验证模块140验证所述工控网络设备的可能存在稳定性风险,即,不具备高稳定性,并发出警报。
例如,可以将预先设定的系统资源使用率的阈值设定为80%,则当记录在电子表格文件中的百分比的数据高于80%的使用率时,则稳定性验证模块140验证系统存在稳定性风险,并可以自动发送警报,以提示该风险的发生。
以上详细描述了本发明的工控网络设备的稳定性的测试装置的各个模块。根据发明的工控网络设备的稳定性的测试装置针对测试过程中的指标(CPU使用率、内存使用率)数据以及分配使用机制、回收机制进行实时量化记录,以便可以客观地、可量化地去评判被测试网络设备的稳定性。因此,在工控网络设备正式接入关键基础网络前对其稳定性进行长时间、数字量化验证,即在CPU和内存处于高使用率,频繁分配使用资源、回收资源场景下,对其稳定性、功能健壮性进行强覆盖,提前暴露稳定性方面的问题,从而客观、可量化地评价网络设备是否具备高稳定性。
另外,本发明的实施例还提供了一种工控网络设备的稳定性的测试装置。下面参考图5,其为适于用来实现本发明实施例的工控网络设备的稳定性的测试装置的计算机系统的结构示意图。图5示出的仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图3所示,计算机系统300包括中央处理单元(CPU)301,其可以根据存储在只读存储器(ROM)302中的程序或者从存储部分308加载到随机访问存储器(RAM)303中的程序而执行各种适当的动作和处理。在RAM 303中,还存储有系统300操作所需的各种程序和数据。CPU 301、ROM302以及RAM 303通过总线304彼此相连。输入/输出(I/O)接口305也连接至总线304。
以下部件连接至I/O接口305:包括键盘、鼠标等的输入部分306;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分303;包括硬盘等的存储部分308;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分309。通信部分309经由诸如因特网的网络执行通信处理。驱动器310也根据需要连接至I/O接口305。可拆卸介质311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器310上,以便于从其上读出的计算机程序根据需要被安装入存储部分308。
特别地,根据本发明公开的实施例,上文参考流程图描述的步骤可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行图1所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分309从网络上被下载和安装,和/或从可拆卸介质311被安装。在该计算机程序被中央处理单元(CPU)301执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的方法、装置和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块及其单元也可以设置在处理器中,例如,可以描述为:一种处理器包括场景构造模块、数据获取模块、数据记录模块和稳定性验证模块。其中,这些模块的名称在某种情况下并不构成对该模块及其单元本身的限定,例如,数据获取模块还可以被描述为“使用率计算模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:
S1:场景构造步骤
构造使系统资源高于基准使用率运转的使用场景。其中,基准使用率为预先设定的使系统不太可能出现稳定性风险的使用率的上限阈值,并且可以根据需要和实际使用场景而进行相应设定。例如,可以将基准使用率设定为30%。
具体的,可以根据报文分层构造模型对报文进行分层构造,参见图2所示。并且可以对报文进行分片,从而构造出CPU密集型的分片报文,使得系统资源使用率快速上升,从而使系统资源(CPU、内存等)高于基准使用率运转,以处于CPU和内存高使用率、频繁分配使用资源、回收资源的场景下。
构造使系统资源高于基准使用率运转的使用场景的方式不限于上述对报文进行分层和分片,还可以应用其它方式。例如,利用系统自身存在的程序问题等导致的系统资源高于基准使用率运转。
S2:数据获取步骤
实时获取表示系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率。
具体地,使用Python脚本程序以预定时间间隔(例如,1秒)从工控网络设备的操作系统实时获取系统资源的CPU和内存的使用情况,并且计算系统资源使用率。其中,系统资源使用率包括CPU使用率和内存使用率。此外,上述预定时间间隔可以是根据需要设定的固定的时间间隔,也可以是根据需要设定的非固定的时间间隔等。
具体地,作为一个实例,可以利用以下命令获取系统资源的使用情况:
Figure BDA0002730559750000182
#cat/proc/stat|grep″cpu″cpu 1005154 0174964 4265915_79 210268 2019 0 0 0
具体的,作为一个实例,可以利用例如前文所述的公式1的程序脚本计算系统资源使用率,即,CPU使用率和内存使用率。
S3:数据记录步骤
实时记录计算出的所述系统资源使用率。
具体地,利用Python脚本程序将计算出的系统资源使用率实时地记录在通用的电子表格文件中。
具体地,作为一个实例,可以采用如下的Python脚本程序:
Figure BDA0002730559750000181
通过上述Python脚本程序获得的电子表格文件的具体实例,可以参见前文所述的表1中的数据。
如前文所述的表1所示,其实时列出了系统资源使用率的百分比,从而进行实时量化记录,以便可以客观地、可量化地去评判被测试网络设备的稳定性。
此外,还可以基于上述数据绘制系统资源使用率随时间变化的曲线图,参见图3所示,图3(a)示出CPU使用率的变化曲线,并且图3(b)示出内存使用率的变化曲线。通过上述曲线图,能够更加直观的可视化地呈现系统资源使用率的变化情况,从而可以对工控网络设备的稳定性进行长时间、可量化的可视化验证。
而且,基于获得的上述表格中的百分比数据,能够获得系统资源使用率在预定时间段内的平均值、最高值和最低值以及最高值和最低值所对应的时间点等具体数据。
S4:稳定性验证步骤
基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。
具体地,基于记录在所述电子表格文件中的结果而对所述工控网络设备的稳定性进行验证。例如,当所述CPU使用率或所述内存使用率的结果超过预先设定的阈值时,验证所述工控网络设备的可能存在稳定性风险,即,不具备高稳定性,并发出警报。
例如,可以将预先设定的系统资源使用率的阈值设定为80%,则当记录在电子表格文件中的百分比的数据高于80%的使用率时,则验证系统存在稳定性风险,并可以自动发送警报,以提示该风险的发生。
以上详细描述了本发明的工控网络设备的稳定性的测试方法和装置的各个实施例。本发明的工控网络设备的稳定性的测试方法和装置针对测试过程中的指标(CPU使用率、内存使用率)数据以及分配使用机制、回收机制进行实时量化记录,以便可以客观地、可量化地去评判被测试网络设备的稳定性。因此,在工控网络设备正式接入关键基础网络前对其稳定性进行长时间、数字量化验证,即在CPU和内存处于高使用率,频繁分配使用资源、回收资源场景下,对其稳定性、功能健壮性进行强覆盖,提前暴露稳定性方面的问题。客观、可量化地评价网络设备是否具备高稳定性。
以上所述仅为本申请的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

Claims (12)

1.一种工控网络设备的稳定性的测试方法,其特征在于,所述方法包括:
场景构造步骤,构造使系统资源高于基准使用率运转的使用场景;
数据获取步骤,实时获取表示所述系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率;
数据记录步骤,实时记录计算出的所述系统资源使用率;以及
稳定性验证步骤,基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。
2.如权利要求1所述的方法,其特征在于,其中,
所述系统资源使用率包括CPU使用率和内存使用率。
3.如权利要求2所述的方法,其特征在于,其中,
在所述数据获取步骤中,以预定时间间隔获取所述数据。
4.如权利要求3所述的方法,其特征在于,其中,
在所述数据获取步骤中,使用Python脚本程序利用相邻的两个时间点获取的所述数据计算所述CPU使用率和所述内存使用率。
5.根据权利要求1至4的任意一项所述的方法,其特征在于,其中,
在所述数据记录步骤中,利用Python脚本程序将计算出的所述系统资源使用率实时地记录在电子表格文件中。
6.根据权利要求5所述的方法,其特征在于,其中,
在所述稳定性验证步骤中,基于记录在所述电子表格文件中的所述系统资源使用率的所述记录结果而对所述工控网络设备的稳定性进行验证,并且
当所述系统资源使用率的所述记录结果超过预先设定的阈值时,验证所述工控网络设备存在稳定性风险,并发出警报。
7.根据权利要求5或6所述的方法,其特征在于,其中,
基于在所述电子表格文件中的所述系统资源使用率的所述记录结果,能够获得所述系统资源使用率的平均值、最高值和最低值。
8.根据权利要求5或6所述的方法,其特征在于,其中,
能够基于所述电子表格文件中的所述系统资源使用率的记录结果,绘制所述系统资源使用率随时间变化的曲线图,从而可视化地呈现所述系统资源使用率的变化情况。
9.如权利要求1至8的任意一项所述的方法,其特征在于,其中,
在所述场景构造步骤中,根据报文分层构造模型对报文进行分层构造,并构造出CPU密集型的分片报文,从而构造使所述系统资源高于所述基准使用率运转的场景。
10.一种工控网络设备的稳定性的测试装置,其特征在于,所述装置包括:
场景构造模块,该场景构造模块用于构造使系统资源高于基准使用率运转的使用场景;
数据获取模块,该数据获取模块用于实时获取表示所述系统资源的使用情况的数据,并且基于所述数据计算系统资源使用率;
数据记录模块,该数据记录模块用于实时记录计算出的所述系统资源使用率;以及
稳定性验证模块,该稳定性验证模块用于基于所述系统资源使用率的记录结果验证所述工控网络设备的稳定性。
11.一种工控网络设备的稳定性的测试装置,其特征在于,所述装置包括存储程序的存储单元和处理单元,其中,
所述处理单元执行所述程序用以实现如权利要求1至9的任意一项所述的方法中的各个步骤。
12.一种计算机可读介质,其特征在于,其中,
所述介质上存储有程序,该程序被执行用以实现如权利要求1至9的任意一项所述的方法中的各个步骤。
CN202011127810.5A 2020-10-19 2020-10-19 工控网络设备的稳定性的测试方法、装置及介质 Pending CN112181750A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011127810.5A CN112181750A (zh) 2020-10-19 2020-10-19 工控网络设备的稳定性的测试方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011127810.5A CN112181750A (zh) 2020-10-19 2020-10-19 工控网络设备的稳定性的测试方法、装置及介质

Publications (1)

Publication Number Publication Date
CN112181750A true CN112181750A (zh) 2021-01-05

Family

ID=73923039

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011127810.5A Pending CN112181750A (zh) 2020-10-19 2020-10-19 工控网络设备的稳定性的测试方法、装置及介质

Country Status (1)

Country Link
CN (1) CN112181750A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190369A (zh) * 2021-04-21 2021-07-30 北京海博思创科技股份有限公司 数据处理方法、装置、设备及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190369A (zh) * 2021-04-21 2021-07-30 北京海博思创科技股份有限公司 数据处理方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US9064048B2 (en) Memory leak detection
CN113157545A (zh) 业务日志的处理方法、装置、设备及存储介质
CN111258847B (zh) 一种文件句柄监控及分析方法、装置、介质和设备
CN107688626B (zh) 慢查询日志处理方法、装置及电子设备
CN114757587B (zh) 一种基于大数据的产品质量控制系统及方法
CN112801434A (zh) 性能指标健康度的监测方法、装置、设备和存储介质
CN112954056B (zh) 监控数据处理方法、装置、电子设备及存储介质
CN112181750A (zh) 工控网络设备的稳定性的测试方法、装置及介质
CN111367813B (zh) 决策引擎自动化测试方法、装置、服务器及存储介质
CN110659340A (zh) 一种电子围栏的生成方法、装置、介质及电子设备
CN114708535A (zh) 测试事件检测算法的方法、装置、电子设备及存储介质
CN109634868B (zh) 金融数据分析系统自动化测试结果的处理方法及装置
CN113052509A (zh) 模型评估方法、模型评估装置、电子设备和存储介质
CN113656391A (zh) 数据检测方法及装置、存储介质及电子设备
CN111047433A (zh) 用户数异常原因的分析方法、装置、服务器和存储介质
CN108959302B (zh) 用于数据处理的方法及其设备
US10885462B2 (en) Determine an interval duration and a training period length for log anomaly detection
CN115292146B (zh) 一种系统容量预估方法、系统、设备及存储介质
CN112532747B (zh) 用于输出信息的方法、装置、设备以及存储介质
CN113282471B (zh) 设备性能测试方法、装置、终端设备
CN115190008B (zh) 故障处理方法、故障处理装置、电子设备及存储介质
CN115314404B (zh) 服务优化方法、装置、计算机设备及存储介质
CN113572768B (zh) 一种僵尸网络家族传播源数量变化异常的分析方法
CN115017461A (zh) 一种结果评价表征方法、装置、计算机设备及存储介质
CN116643946A (zh) 性能数据的收集方法、装置、设备及介质

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