一种网络协议测试方法、系统及存储介质
文献发布时间:2024-01-17 01:27:33
技术领域
本发明涉及协议测试技术领域,尤其涉及一种网络协议测试方法、系统及存储介质。
背景技术
在计算机网络的发展历程中,协议一直处于核心地位。从ARPAnet发展到Internet,其关键环节就是形成了国际标准化的协议。协议是计算机网络和分布式系统中各种通信实体之间相互交换信息所必须遵守的一组规则,就像是一种语法规则,是构建网络的基石。
随着网络隧道技术与网络叠加模式,复杂事件处理(CEP,Complex EventProcessin-g)场景测试多元化,网络协议测试组网方式越发广泛。而在网络测试协议过程中,由于组网复杂,协议流程测试困难,因此,如何高效实现网络协议测试是一个亟需解决的问题。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明提出一种网络协议测试方法、系统及存储介质。
一方面,本发明实施例提供了一种网络协议测试方法,包括:
从网关获取被测系统的测试报文;
对测试报文进行协议识别,提取目标协议层的协议信息,并根据协议信息确定协议处理节点;
当协议处理节点存在,对协议信息进行字段属性提取,获得属性数据,并获取目标对象的报文检验数据;
根据协议信息进行数据检索,并结合属性数据确定目标处理报文;
获取目标对象的报文处理数据,对目标处理报文进行自定义处理;其中,自定义处理包括请求评论协议处理、报文封装处理和报文丢弃处理;
以目标协议层的下个协议层作为目标协议层,然后返回提取目标协议层的协议信息,并根据协议信息确定协议处理节点这一步骤,直至协议处理节点不存在。
可选地,方法还包括:
对网关自身发出的报文,基于预设数据包捕获格式进行追加保存。
可选地,方法还包括:
当协议处理节点不存在,将协议信息交付至空节点进行处理,并对测试报文进行发包处理。
可选地,对协议信息进行字段属性提取,获得属性数据,并获取目标对象的报文检验数据,包括:
对协议信息进行字段属性提取,获得目标协议层的属性数据;属性数据包括目标协议层的路径信息和属性信息;
以路径信息作为键,并以属性信息作为值,将属性数据存储到报文数据;
根据报文数据,对外提供报文数据检验接口;通过报文数据检验接口获取目标对象的报文检验数据。
可选地,根据协议信息进行数据检索,并结合属性数据确定目标处理报文,包括:
以协议信息作为键,检索目标协议层的检验数据;
对检验数据和属性数据进行数据比对,基于比对一致的结果确定目标协议层的报文为目标处理报文。
可选地,方法还包括:
当目标协议层的报文为目标处理报文,对目标对象的报文检验数据和属性数据进行数据比对,并记录数据比对的检验结果。
可选地,方法还包括:
对非目标处理报文进行请求评论协议处理。
另一方面,本发明实施例提供了一种网络协议测试系统,包括:
第一模块,用于从网关获取被测系统的测试报文;
第二模块,用于对测试报文进行协议识别,提取目标协议层的协议信息,并根据协议信息确定协议处理节点;
第三模块,用于当协议处理节点存在,对协议信息进行字段属性提取,获得属性数据,并获取目标对象的报文检验数据;
第四模块,用于根据协议信息进行数据检索,并结合属性数据确定目标处理报文;
第五模块,用于获取目标对象的报文处理数据,对目标处理报文进行自定义处理;其中,自定义处理包括请求评论协议处理、报文封装处理和报文丢弃处理;
第六模块,用于以目标协议层的下个协议层作为目标协议层,然后返回第二模块中提取目标协议层的协议信息,并根据协议信息确定协议处理节点这一步骤,直至协议处理节点不存在。
可选地,系统还包括:
第七模块,用于对网关自身发出的报文,基于预设数据包捕获格式进行追加保存;
第八模块,用于当协议处理节点不存在,将协议信息交付至空节点进行处理,并对测试报文进行发包处理;
第九模块,用于当目标协议层的报文为目标处理报文,对目标对象的报文检验数据和属性数据进行数据比对,并记录数据比对的检验结果;
第十模块,用于对非目标处理报文进行请求评论协议处理。
可选地,第三模块还用于:
对所述协议信息进行字段属性提取,获得所述目标协议层的属性数据;所述属性数据包括所述目标协议层的路径信息和属性信息;
以所述路径信息作为键,并以所述属性信息作为值,将所述属性数据存储到报文数据;
根据所述报文数据,对外提供报文数据检验接口;通过所述报文数据检验接口获取目标对象的报文检验数据。
可选地,第四模块还用于:
以所述协议信息作为键,检索所述目标协议层的检验数据;
对所述检验数据和所述属性数据进行数据比对,基于比对一致的结果确定所述目标协议层的报文为目标处理报文
另一方面,本发明实施例提供了一种网络协议测试系统,包括:处理器以及存储器;存储器用于存储程序;处理器执行程序实现上述网络协议测试方法。
另一方面,本发明实施例提供了一种计算机存储介质,其中存储有处理器可执行的程序,处理器可执行的程序在由处理器执行时用于实现上述网络协议测试方法。
本发明实施例首先从网关获取被测系统的测试报文;对测试报文进行协议识别,提取目标协议层的协议信息,并根据协议信息确定协议处理节点;当协议处理节点存在,对协议信息进行字段属性提取,获得属性数据,并获取目标对象的报文检验数据;根据协议信息进行数据检索,并结合属性数据确定目标处理报文;获取目标对象的报文处理数据,对目标处理报文进行自定义处理;其中,自定义处理包括请求评论协议处理、报文封装处理和报文丢弃处理;以目标协议层的下个协议层作为目标协议层,然后返回提取目标协议层的协议信息,并根据协议信息确定协议处理节点这一步骤,直至协议处理节点不存在。本发明实施例通过对测试报文的识别以及数据提取,进而实现中间协议的转发和处理,简化网络协议测试环境部署,并且,通过获取目标对象的报文检验数据以及报文处理数据,进一步增加网络协议测试的过程控制和结果检验控制。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1是本发明实施例提供的进行网络协议测试的一种实施环境示意图;
图2是本发明实施例提供的一种网络协议测试方法的流程示意图;
图3为本发明实施例提供的一种网络协议测试系统的原理框架示意图;
图4为本发明实施例提供的协议分发处理模块的原理框架示意图;
图5为本发明实施例提供的协议属性识别模块的原理框架示意图;
图6是本发明实施例提供的协议检验模块的原理框架示意图;
图7为本发明实施例提供的协议处理模块的原理框架示意图;
图8为本发明实施例提供的网络协议收发模块的原理框架示意图;
图9为本发明实施例提供的网络协议测试系统的数据流程示意图;
图10为本发明实施例提供的网络协议测试系统与用户和被测系统的交互示意图;
图11为本发明实施例提供的一种网络协议测试系统其一的结构示意图;
图12为本发明实施例提供的一种网络协议测试系统其二的结构示意图;
图13为本发明实施例提供的适于用来实现本申请实施例的网络测试系统的计算机系统结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明的是,虽然在系统示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于系统中的模块划分,或流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一/S100”、“第二/S200”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
可以理解的是,本发明实施例提供的网络协议测试方法,是能够应用于任意一种具备数据处理计算能力计算机设备,而这一计算机设备可以是各类终端或是服务器。当实施例中的计算机设备是服务器时,该服务器是独立的物理服务器,或者,是多个物理服务器构成的服务器集群或者分布式系统,或者,是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。可选地,该终端是智能手机、平板电脑、笔记本电脑以及台式计算机等,但也并不局限于此。
需要进一步补充说明的是,本发明实施例中所涉及终端包括但不限于智能手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。本发明实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
如图1所示,是发明实施例提供的一种实施环境示意图。参照图1,该实施环境包括至少一个终端102和服务器101。终端102和服务器101之间可以通过无线或者有线的方式进行网络连接,完成数据传输交换。
服务器101可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
另外,服务器101还可以是区块链网络中的一个节点服务器。其中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
终端102可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端102以及服务器101可以通过有线或无线通信方式进行直接或间接地连接,本发明实施例在此不做限制。
示例性地基于图1所示的实施环境,本发明实施例提供了一种网络协议测试方法,下面以该网络协议测试方法应用于服务器101中为例子进行说明,可以理解的是,该网络协议测试方法也可以应用于终端102中。
参照图2,图2为本发明实施例提供的应用于服务器的网络协议测试方法的流程图,该网络协议测试方法的执行主体可以是前述的任意一种计算机设备。参照图2,该方法包括以下步骤:
S100、从网关获取被测系统的测试报文;
需要说明的是,一些实施例中,方法还包括:对网关自身发出的报文,基于预设数据包捕获格式进行追加保存。
具体地,一些具体实施例中,首先对报文进行识别,若报文是由网卡自身发出,对报文进行pcap文件(基于预设数据包捕获格式进行)追加保存,其中,pcap是PacketCapture的英文缩写,是一种行业标准的网络数据包捕获格式;若不是则对报文进行后续处理。
S200、对测试报文进行协议识别,提取目标协议层的协议信息,并根据协议信息确定协议处理节点;
具体地,一些具体实施例中,通过报文协议头提取,根据协议信息查询协议处理节点。首先将报文进行解封装,逐层拆解,然后依据协议层找到对应处理节点。
S300、当协议处理节点存在,对协议信息进行字段属性提取,获得属性数据,并获取目标对象的报文检验数据;
需要说明的是,一些实施例中,包括步骤:对协议信息进行字段属性提取,获得目标协议层的属性数据;属性数据包括目标协议层的路径信息和属性信息;以路径信息作为键,并以属性信息作为值,将属性数据存储到报文数据;根据报文数据,对外提供报文数据检验接口;通过报文数据检验接口获取目标对象的报文检验数据。
具体地,一些具体实施例中,若处理节点存在:则将协议层交付至节点进行协议节点处理。通过将协议层交付至协议处理协议属性识别模块进行处理,同时将协议头指针偏移至下个协议层。随后,对当前协议层协议进行数据提取,并将提取的信息存入报文属性结构体.结构体信息如下,以协议层为key,该层属性信息为map,如下样例:
{"Eth.ip.udp":{"dport":22,"sport":15432}};
其中,基于上述结构体信息可以实现报文属性比对。具体包括如下步骤:对当前层协议数据进行字段属性提取,同时将属性数据进行存储,以当前层作为key值;同时提供协议层属性数据对比功能;
1.依赖各自的协议层处理函数,依据当前协议层路径作为key,当前协议层属性键值对值作为值,提取并存储至报文数据;
2.依据1中存储的报文数据,对外提供报文数据检验接口,用户报文的数据检验。
S400、根据协议信息进行数据检索,并结合属性数据确定目标处理报文;
需要说明的是,一些实施例中,包括步骤:以协议信息作为键,检索目标协议层的检验数据;对检验数据和属性数据进行数据比对,基于比对一致的结果确定目标协议层的报文为目标处理报文。
其中,一些实施例中,还包括:当目标协议层的报文为目标处理报文,对目标对象的报文检验数据和属性数据进行数据比对,并记录数据比对的检验结果。
具体地,一些具体实施例中,当处理完当前协议层属性后,进入报文检验。用户(即目标对象)可以通过api接口进行预期报文检验数据输入。以当前协议信息做为key去往检验数据池进行数据检索。若存在数据,则进入协议数据检验。进行报文确认,通过前述步骤的信息实现报文属性比对,进行当前报文识别,判断是否为目标处理报文。若是,则进入用户自定义检验处理,并记录结果。若不是或者未存在检验数据,则进行下个节点处理。具体包括如下步骤:
1.通过设置的检验节点,进行对本协议处理进行待检验数据检索,当前协议层发现存在检验数据时,进行数据检验操作;
2.数据检验分二个相互关联的子节点:
子节点1:根据协议层属性识别模块中的报文数据池和前置检验数据进行对比,确认当前报文为目标待检验报文,触发第二个子节点处理;
子节点2:进行预期报文数据检验。通过协议层属性识别模块中的报文数据池和获取的后置校验数据,进行数据比对,并记录数据检验结果。
S500、获取目标对象的报文处理数据,对目标处理报文进行自定义处理;
需要说明的是,,自定义处理包括请求评论协议处理、报文封装处理和报文丢弃处理;报文封装处理基于目标对象的报文处理数据进行。
其中,一些实施例中,还包括:对非目标处理报文进行请求评论协议处理。
S600、以目标协议层的下个协议层作为目标协议层,然后返回提取目标协议层的协议信息,并根据协议信息确定协议处理节点这一步骤,直至协议处理节点不存在;
需要说明的是,一些实施例中,方法还包括:当协议处理节点不存在,将协议信息交付至空节点进行处理,并对测试报文进行发包处理。
具体地,一些具体实施例中,对于步骤S500和S600可通过如下步骤实现:判断当前报文是否为目标处理报文。若是,则进入用户自定义协议处理,若不是则交付报文转发进行下个节点查找处理。直到处理节点为空节点时,则进行报文发送处理。随后依据处理后的报文数据,依据字段对报文进行丢弃或者发送处理。具体包括如下步骤:
首先通过当前协议层去协议处理池中查找是否存在待处理的数据。若存在则进行前置节点校验,若不存在或前置检验未通过,则协议层依据RFC(Request For Comments)协议规定进行处理。若前置检验通过时,触发协议层用户自定义处理。协议处理分二个相互关联的子节点:
1.子节点一:根据协议层属性识别模块中的报文数据池和前置检验数据进行对比,确认当前报文为目标待检验报文,触发第二个子节点处理;
2.字节点二:依据当前协议层去协议处理池找寻数据,根据数据处理类型,划分为以下三种类型:
一.默认协议处理:根据RFC协议规定,默认处理协议层,组成当前协议层报文的协议数据进行封装报文;
二.当前协议自定义封装:根据用户提供的待处理数据进行报文的封装;
做报文丢弃处理:不进行任何协议操作,设置处理状态为丢弃,如果检测处理状态,当处理状态为丢弃时,标记下个节点为空节点,否则正常进行下个节点识别。如果是节点处理为空节点则交付至收发包模块进行处理。
为详细解释本发明技术方案的原理,下面结合一些具体实施例对本发明作进一步说明,容易理解的是,下述为对本发明技术原理的解释,不能看做对本发明的限制。
本发明基于触发原理,通过逐层网络协议解析,前置比对协议报文字段属性,从而进行网络协议数据检验和网络协议流程控制处理的自动化网络协议测试。
基于本发明实施例的方案,用户完成基础配置并启动网卡监听,当报文由被测系统通过网卡进入网络协议收发处理模块后,再流经网络协议分发模块,进行逐层解析,当特定协议在协议检验数据池或者协议处理数据池命中规则时,则进行协议检验或协议处理,否则正常遵循请求评论(RFC,Request For Comments)标准处理协议。
在一些具体实施例中,如图3所示,本发明实施例提供了一种网络协议测试系统,系统包括:协议分发处理模块、协议属性识别模块、协议检验模块、协议处理模块和网络协议收发处理模块,各模块所具体实现的功能与上述方法实施例对应。下面对各模块进行逐一说明:
如图4所示,协议分发处理模块:将报文进行解封装,逐层拆解,依据协议层找到对应处理节点,若当前协议层无处理节点时,交付至空节点处理。
1.进行协议识别,提取协议信息,并对数据做记录;
2.依据1中的协议信息找寻处理节点:
若处理节点存在:则将协议层交付至节点进行协议节点处理;
若不存在:则将下个节点变更为空节点,再交付至下个节点按进行协议节点处理。
如图5所示(图中顶部Eth、ip...等标识表示测试报文,而底部ethHandle、vxlanHandle和UDPHandle均表示报文协议测试中的句柄标识符,协助模块数据处理的理解,在后续附图含义相同/类似),协议属性识别模块:对当前层协议数据进行字段属性提取,同时将属性数据进行存储,以当前层作为key值;同时提供协议层属性数据对比功能;
1.依赖各自的协议层处理函数,依据当前协议层路径作为key,当前协议层属性键值对值作为值,提取并存储至报文数据;
2.依据1中存储的报文数据,对外提供报文数据检验接口,用户报文的数据检验。
如图6所示,协议检验模块:
1.通过设置的检验节点,进行对本协议处理进行待检验数据检索,当前协议层发现存在检验数据时,进行数据检验操作;
2.数据检验分二个相互关联的子节点:
子节点1:根据协议层属性识别模块中的报文数据池和前置检验数据进行对比,确认当前报文为目标待检验报文,触发第二个子节点处理;
子节点2:进行预期报文数据检验。通过协议层属性识别模块中的报文数据池和获取的后置校验数据,进行数据比对,并记录数据检验结果。
如图7所示,协议处理模块:
首先通过当前协议层去协议处理池中查找是否存在待处理的数据。若存在则进行前置节点校验,若不存在或前置检验未通过,则协议层依据RFC协议规定进行处理。若前置检验通过时,触发协议层用户自定义处理。协议处理分二个相互关联的子节点:
1.子节点一:根据协议层属性识别模块中的报文数据池和前置检验数据进行对比,确认当前报文为目标待检验报文,触发第二个子节点处理;
2.字节点二:依据当前协议层去协议处理池找寻数据,根据数据处理类型,划分为以下三种类型:
一.默认协议处理:根据RFC协议规定,默认处理协议层,组成当前协议层报文的协议数据进行封装报文;
二.当前协议自定义封装:根据用户提供的待处理数据进行报文的封装;
三.做报文丢弃处理:不进行任何协议操作,设置处理状态为丢弃,如果检测处理状态,当处理状态为丢弃时,标记下个节点为空节点,否则正常进行下个节点识别。如果是节点处理为空节点则交付至收发包模块进行处理。
如图8所示,网络协议收发模块:
进行网卡纳管,与被测系统进行二层组网或者三层组网;使能基础协议处理库;通过http接口,实时进行协议检验数据存入和协议处理数据存入,从而起到对被测协议进行预期检验和预期处理,完成网络协议自动化测试过程。
以上述的网络协议测试系统的应用场景为例,如图9和图10所示,本发明的方法实施例的流程可以通过如下步骤实现:
1.测试报文通过网卡进入收发包模块,收发包模块对报文进行识别,若报文是由网卡自身发出,对报文进行pcap文件(基于预设数据包捕获格式进行)追加保存;若不是则交付至报文分发模块进行处理;其中,pcap是Packet Capture的英文缩写,是一种行业标准的网络数据包捕获格式。
2.当报文进入分发模块时,通过报文协议头提取,根据协议信息查询协议处理节点;当协议处理节点不存在时,将报文交付至空节点进行处理;若协议处理节点存在时,将协议层交付至协议处理协议属性识别模块进行处理。同时将协议头指针偏移至下个协议层;
3.当进入协议属性识别模块时,首先判断待处理节点是否为空节点,若是,直接跳过检验模块,由处理模块转发至收发包模块进行发包处理;若不是则对当前协议层协议进行数据提取,并将提取的信息存入报文属性结构体.结构体信息如下,以协议层为key,该层属性信息为map,如下样例:
{"Eth.ip.udp":{"dport":22,"sport":15432}};
并提供报文属性比对功能;
4.当处理完当前协议层属性后,进入报文检验。用户可以通过api接口进行预期报文检验数据输入。以当前协议信息做为key去往检验数据池进行数据检索。若存在数据,则进入协议数据检验。进行报文确认,调用3中报文属性比对功能,进行当前报文识别,判断是否为目标处理报文。若是,则进入用户自定义检验处理,并记录结果。若不是或者未存在检验数据,则进行下个节点处理。
5.进入协议处理后,同样用户可以通过api接口进行预期报文处理数据输入。以当前协议信息做为key值去往检验数据池进行数据检索。若存在数据,则进入协议数据检验。进行报文确认,调用3中报文属性比对功能,进行当前报文识别,判断是否为目标处理报文。若是,则进入用户自定义协议处理,若不是则交付报文转发进行下个节点查找处理。直到处理节点为空节点时,则交付至收发包模块进行报文发送处理。
6.收发包模块,依据5中处理后的报文数据,依据字段对报文进行丢弃或者发送处理。
7.由上述6个步骤完成了对网络协议的测试。依赖于协议属性识别提取的报文数据和提供的协议校验方式,从而对报文进行协议检验和协议处理,从而达到网络协议验证的目的和控制协议转发的流程控制。又通过api接口对检验结果进行输出且提供接口让用户对完整的协议测试流程提供流程和方法。
综上所述,本发明实施例通过本发明提供的方法进行测试,可以选择物理网卡或者虚拟网卡进行组网,且无需额外的网络设备做中间协议的转发和处理,简化网络协议测试环境部署;同时通过本发明提供的方法进行测试,对于企业公司而言,可以极大的提高工作效率,为公司减少人力成本;并且,通过本发明提供的方法进行测试,不仅丰富了网络协议测试场景,增加网络协议测试的过程控制和结果检验控制。本发明实可以支持对于VXLAN隧道下NFV云化场景下对用户DHCP,PPPOE,UDP,TCP转发等协议的支持。简化了NFV云化场景下的网络协议测试,提供了可靠的平台去支撑NFV的测试,丰富了网络协议的自动化工具。
另一方面,如图11所示,本发明实施例提供了一种网络协议测试系统1100,包括:第一模块1110,用于从网关获取被测系统的测试报文;第二模块1120,用于对测试报文进行协议识别,提取目标协议层的协议信息,并根据协议信息确定协议处理节点;第三模块1130,用于当协议处理节点存在,对协议信息进行字段属性提取,获得属性数据,并获取目标对象的报文检验数据;第四模块1140,用于根据协议信息进行数据检索,并结合属性数据确定目标处理报文;第五模块1150,用于获取目标对象的报文处理数据,对目标处理报文进行自定义处理;其中,自定义处理包括请求评论协议处理、报文封装处理和报文丢弃处理;第六模块1160,用于以目标协议层的下个协议层作为目标协议层,然后返回第二模块1120中提取目标协议层的协议信息,并根据协议信息确定协议处理节点这一步骤,直至协议处理节点不存在。
需要说明的是,一些实施例中,还包括如下模块:
第七模块,用于对网关自身发出的报文,基于预设数据包捕获格式进行追加保存;
第八模块,用于当协议处理节点不存在,将协议信息交付至空节点进行处理,并对测试报文进行发包处理;
第九模块,用于当目标协议层的报文为目标处理报文,对目标对象的报文检验数据和属性数据进行数据比对,并记录数据比对的检验结果;
第十模块,用于对非目标处理报文进行请求评论协议处理。
本发明方法实施例的内容均适用于本系统实施例,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
另一方面,如图12所示,本发明实施例还提供了一种网络协议测试系统1200,该系统包括至少一个处理器1210,还包括至少一个存储器1220,用于存储至少一个程序;以一个处理器1210及一个存储器1220为例。
处理器1210和存储器1220可以通过总线或者其他方式连接。
存储器1220作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器1220可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件或其他非暂态固态存储器件。在一些实施方式中,存储器1220可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
以上所描述的系统实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
具体地,图13示意性地示出了用于实现本申请实施例的网络协议测试系统的计算机系统结构框图。
需要说明的是,图13示出的电子设备的计算机系统1300仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图13所示,计算机系统1300包括中央处理器1301(Central Processing Unit,CPU),其可以根据存储在只读存储器1302(Read-Only Memory,ROM)中的程序或者从存储部分1308加载到随机访问存储器1303(Random Access Memory,RAM)中的程序而执行各种适当的动作和处理。在随机访问存储器1303中,还存储有系统操作所需的各种程序和数据。中央处理器1301、在只读存储器1302以及随机访问存储器1303通过总线1304彼此相连。输入/输出接口1305(Input/Output接口,即I/O接口)也连接至总线1304。
以下部件连接至输入/输出接口1305:包括键盘、鼠标等的输入部分1306;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1307;包括硬盘等的存储部分1308;以及包括诸如局域网卡、调制解调器等的网络接口卡的通信部分1309。通信部分1309经由诸如因特网的网络执行通信处理。驱动器1310也根据需要连接至输入/输出接口1305。可拆卸介质1311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1310上,以便于从其上读出的计算机程序根据需要被安装入存储部分1308。
特别地,根据本申请的实施例,各个方法流程图中所描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1309从网络上被下载和安装,和/或从可拆卸介质1311被安装。在该计算机程序被中央处理器1301执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
本发明方法实施例的内容均适用于本系统实施例,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
本发明实施例的另一方面还提供了一种计算机可读存储介质,存储介质存储有程序,程序被处理器执行实现如前面的方法。
本发明方法实施例的内容均适用于本计算机可读存储介质实施例,本计算机可读存储介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法达到的有益效果也相同。
本发明实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前面的方法。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块,但是这种划分并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本申请实施方式的方法。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行装置、装置或设备(如基于计算机的装置、包括处理器的装置或其他可以从指令执行装置、装置或设备取指令并执行指令的装置)使用,或结合这些指令执行装置、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行装置、装置或设备或结合这些指令执行装置、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变形或替换均包含在本发明权利要求所限定的范围内。
- 一种固态硬盘性能测试方法、系统、装置及可读存储介质
- 一种鸡胚的测试方法和系统、存储介质
- 一种系统冷启动测试方法、装置、终端及存储介质
- 一种冗余设备及其测试方法、系统和存储介质
- 一种测试方法、装置、自动测试系统及存储介质
- 基于网络协议栈的NCSI测试方法、系统、装置及存储介质
- 一种基于网络协议的自动化渗透测试方法、装置及存储介质