CN114205248B - 模拟超时响应方法、装置、设备及存储介质 - Google Patents
模拟超时响应方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114205248B CN114205248B CN202111534617.8A CN202111534617A CN114205248B CN 114205248 B CN114205248 B CN 114205248B CN 202111534617 A CN202111534617 A CN 202111534617A CN 114205248 B CN114205248 B CN 114205248B
- Authority
- CN
- China
- Prior art keywords
- data packet
- fault
- simulated
- overtime
- timeout
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
Abstract
本申请提供一种模拟超时响应方法、装置、设备及存储介质。应用于计算机技术领域,具体方案包括:接收后端服务器发送的数据包;判断所述数据包中是否包括预设的网络连接相关标识;若确定所述数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取所述模拟超时故障场景对应的模拟超时故障策略;根据所述数据包及对应的模拟超时故障策略模拟超时故障,实现延时发送时间大于建立连接的时间时,依然可以模拟后端服务器超时故障,可以增加延时发送时间的设置范围。可以灵活配置模拟超时故障场景,可以实现对不同超时故障场景下产生的超时故障的模拟,满足模拟各类场景下后端服务器超时故障的需求。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种模拟超时响应方法、装置、设备及存储介质。
背景技术
对待测试系统进行的高可用测试,往往会包含模拟后端服务器超时故障的测试。模拟后端服务器超时故障的测试用来测试当前端设备向后端服务器发送请求,但出现后端服务器超时故障,后端服务器超时未返回响应的情况时,前端设备中的待测试系统能否正确处理。
在现有技术中,可以通过修改前端设备中待测试系统本身的流控规则,对数据包进行延时处理,实现模拟后端服务器超时故障。还可以使用第三方提供的服务,实现模拟后端服务器超时故障。
但现有技术中对所有类型的数据包进行延时处理,当延时发送时间大于建立连接的时间时,前端设备无法与后端服务器建立连接,从而无法模拟后端服务器超时故障。使用第三方提供的挡板服务,在实现模拟后端服务器超时故障时,需要获取对挡板做配置的权限,并且在获取权限后需要频繁配置挡板,才能模拟各类场景下后端服务器超时故障,因此,难以满足模拟各类场景下后端服务器超时故障的需求。
发明内容
本申请提供一种模拟超时响应方法、装置、设备及存储介质,用以解决当延时发送时间大于建立连接的时间时,前端设备无法与后端服务器建立连接,从而无法模拟后端服务器超时故障,且难以满足模拟各类场景下后端服务器超时故障的需求的问题。
第一方面,本申请提供一种模拟超时故障方法,包括:
接收后端服务器发送的数据包;
判断所述数据包中是否包括预设的网络连接相关标识;
若确定所述数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取所述模拟超时故障场景对应的模拟超时故障策略;
根据所述数据包及对应的模拟超时故障策略模拟超时故障。
第二方面,本申请提供一种模拟超时故障装置,包括:
接收模块,用于接收后端服务器发送的数据包;
判断模块,用于判断所述数据包中是否包括预设的网络连接相关标识;
获取模块,用于若确定所述数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取所述模拟超时故障场景对应的模拟超时故障策略;
模拟模块,用于根据所述数据包及对应的模拟超时故障策略模拟超时故障。
第三方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器和收发器;
所述处理器,所述存储器及所述收发器之间电路互连;
所述存储器存储计算机执行指令;所述收发器用于收发数据;
所述处理器执行所述存储器存储的计算机执行指令,以实现上述所述的模拟超时故障方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现上述所述的模拟超时故障方法。
第五方面,本申请提供一种计算机程序产品,包括计算机执行指令,该计算机执行指令被处理器执行时实现上述所述的模拟超时故障方法。
本申请提供的模拟超时响应方法、装置、设备及存储介质,接收后端服务器发送的数据包;判断所述数据包中是否包括预设的网络连接相关标识;若确定所述数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取所述模拟超时故障场景对应的模拟超时故障策略;根据所述数据包及对应的模拟超时故障策略模拟超时故障。通过判断所述数据包中是否包括预设的网络连接相关标识,可以识别出用于建立或断开网络连接的数据包,从而识别出响应数据包,可以仅根据响应数据包及对应的模拟超时故障策略模拟超时故障,可以实现延时发送时间大于建立连接的时间时,依然可以模拟后端服务器超时故障,可以增加延时发送时间的设置范围。可以灵活配置模拟超时故障场景,可以实现对不同超时故障场景下产生的超时故障的模拟,满足模拟各类场景下后端服务器超时故障的需求。由于增加延时发送时间的范围,并且可以灵活配置模拟超时故障场景,因此,增加了模拟超时故障方法的通用性。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请提供的一种网络架构示意图;
图2为本申请实施例一提供的模拟超时故障方法流程图;
图3为本申请实施例四提供的模拟超时故障装置的结构示意图;
图4为本申请实施例五提供的电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。在以下各实施例的描述中,“多个”的含义是两个以上,除非另有明确具体的限定。
首先对本申请所涉及的名词进行解释:
JSON,全称为JavaScript Object Notation,是JS对象的简写,是一种轻量级的数据交换格式。
XML:可扩展标记语言,标准通用标记语言的子集,简称XML,是一种用于标记电子文件使其具有结构性的标记语言。
TPS是Transactions Per Second的缩写,是每秒处理的事务数目。
传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。前端设备与后端服务器在通信之前需要完成三次握手才能建立连接,而断开连接则需要四次挥手。
TCP共有6个标志位,分别是:SYN(synchronous,建立联机)、ACK(acknowledgement,确认)、PSH(push,传输)、FI N(finish,结束)、RST(reset,重置)、URG(urgent,紧急)。
图1为本申请提供的一种网络架构示意图,如图1所示,以前端设备主动发起连接为例,第一次握手:前端设备发送SYN数据包到后端服务器,标识为SYN,表示“请求建立新连接”。第二次握手:后端服务器收到SYN数据包后,向前端设备返回SYN+ACK数据包以确认连接请求,标识为SYN,ACK。第三次握手:前端设备收到后端服务器的SYN+ACK数据包,向后端服务器发送ACK数据包,标识为ACK,此包发送完毕后,前端设备和后端服务器进入连接成功状态(ESTABLISHEDTCP),完成三次握手,双方可以进行通信。
TCP连接在数据传输完成之后需要关闭,TCP的连接关闭需要四次通信,前端设备或后端服务器均可主动发起挥手动作。如图1所示,以前端设备为主动关闭方,后端服务器为被动关闭方为例,第一次挥手:前端设备发送一个FIN数据包,标识为FIN,用来关闭前端设备到后端服务器的数据传送。第二次挥手:后端服务器收到这个FIN数据包,对收到的FIN数据包进行确认发回一个ACK数据包,标识为ACK,前端设备只接收后端服务器发送的数据,不再主动发送数据。第三次挥手:后端服务器关闭后端服务器到前端设备的连接,发送一个FIN数据包给前端设备,标识为FIN。第四次挥手:前端设备发回ACK数据包确认收到FIN数据包,标识为ACK,前端设备经过最大报文生存时间(2MSL,Maxumun Segment Lifetime)的时间后关闭后端服务器与前端设备之间的连接。
如图1所示,前端设备向后端服务器发送请求,并从后端服务器获取响应的整体流程如下:
步骤1、前端设备与后端服务器通过“三次握手”建立TCP连接;步骤2、建立连接后,前端设备把请求数据包通过建立的TCP连接发送给后端服务器;步骤3、后端服务器把响应数据包通过建立的TCP连接返回给前端设备;步骤4、在后端服务器响应返回后,前端设备与后端服务器若无其他数据传输要求,就会通过“四次挥手”将两者之间的连接关闭。
模拟超时故障是通过延长步骤3中响应数据包的传输时间,模拟后端服务器出现问题,后端服务器在接收到前端设备发送的请求后,超时未响应的场景。在现有技术中,由于对步骤1-4的数据包均进行延时,在延时的时间过长,延时发送时间大于建立连接的时间时,会导致tcp三次握手失败,网络连接无法建立,从而无法模拟后端服务器超时故障。例如,在前端设备将SYN数据包发送到到后端服务器,在超过建立连接的时间后还未收到后端服务器发送的SYN+ACK数据包,则会导致连接建立失败。
发明人在研究中发现,只延长步骤3中后端服务器返回的响应数据包的传输时间,就不会影响步骤1及步骤4中前端设备与后端服务器网络连接的建立和断开,也不影响步骤2中前端设备向后端服务器正常发送请求数据包。
但是,步骤3中响应数据包中的数据信息复杂,直接识别响应数据包较为困难,发明人发现,可以通过识别出步骤1、步骤2、步骤4中的数据包,间接识别出步骤3中响应数据包。由于,只延长步骤3中响应数据包的传输时间,因此,只需要从后端服务器向前端设备发送的数据包中,识别出后用于建立和释放连接的数据包,即步骤1和步骤4中的数据包,就可以识别出步骤3中响应数据包,从而实现只延长步骤3中响应数据包的传输时间,模拟后端服务器超时故障。通过对图1的分析,发明人发现,建立连接的数据包的标识包括SYN、ACK中的一个或多个,释放连接的数据包的标识包括FIN、ACK中的一个,响应数据包的标识不包括SYN、ACK、FIN,因此可以通过识别数据包标识的方式,识别用于建立连接和释放连接的数据包。
现有技术中还使用第三方提供的服务,实现模拟后端服务器超时故障。挡板服务是通过预先配置的挡板,模拟得到请求对应的响应数据包;通过配时延时发送时间,使挡板延时发送响应数据包,实现模拟后端服务器超时故障。因此,需要获取对挡板做配置的权限,并且在获取权限后需要频繁配置挡板,才能模拟各类场景下后端服务器超时故障,难以满足模拟各类场景下后端服务器超时故障的需求。
发明人在研究中发现,只延长步骤3中后端服务器返回的响应数据包的传输时间,不需要使用挡板服务,并且可以通过预先配置模拟超时故障场景,根据对应的模拟超时故障策略将步骤3中后端服务器返回的响应数据包的传输时间延长不同时长,就可以满足模拟各类场景下后端服务器超时故障的需求。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
实施例一
图2为本申请实施例一提供的模拟超时故障方法流程图,本申请实施例针对当延时发送时间大于建立连接的时间时,前端设备无法与后端服务器建立连接,从而无法模拟后端服务器超时故障,且难以满足模拟各类场景下后端服务器超时故障的需求的问题,提供了模拟超时故障方法。本实施例中的方法应用于模拟超时故障装置,模拟超时故障装置可以位于电子设备中。其中,电子设备可以为表示各种形式的数字计算机。诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。
如图2所示,该方法具体步骤如下:
步骤S101、接收后端服务器发送的数据包。
具体地,接收后端服务器向前端设备发送的数据包,后端服务器发送的数据包为:用于建立连接和释放连接的数据包或响应数据包。
其中,用于建立连接和释放连接的数据包中包括网络连接相关标识。
本申请实施例中,模拟超时故障装置位于电子设备中,电子设备可以为前端设备,也可以为独立于前端设备的设备,前端设备中设置有待测试系统,模拟超时故障装置在接收后端服务器发送的数据包后,将数据包发送前端设备中的待测试系统。
步骤S102、判断数据包中是否包括预设的网络连接相关标识。
示例性地,如图1所示,建立连接的数据包的标识包括SYN、ACK中的一个或多个,释放连接的数据包的标识包括FIN、ACK中的一个,响应数据包的标识不包括SYN、ACK、FIN,因此,预设的网络连接相关标识可以为SYN、FIN、ACK。此外,预设的网络连接相关标识还可以为其他可以识别用于建立连接和释放连接的数据包的标识,本实施例此处不做具体限定。
本申请实施例中,若数据包中包括预设的网络连接相关标识中的一个或多个,则确定数据包中包括预设的网络连接相关标识。
步骤S103、若确定数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取模拟超时故障场景对应的模拟超时故障策略。
本申请实施例中,若确定数据包中不包括预设的网络连接相关标识,则确定数据包不为数据包用于建立连接和释放连接的数据包,即该不包括预设的网络连接相关标识的数据包是响应数据包。
其中,模拟超时故障场景为模拟后端服务器可能发生的超时故障的场景,例如,后端服务器可能发生的超时故障可以包括:特定的后端服务器发生超时故障,特定的业务发生超时故障、当TPS达到一定值时发生超时故障等。模拟超时故障策略为模拟超时故障场景时对数据包的处理方式。
可选地,预先配置模拟超时故障场景的方式可以为,设置多种模拟超时故障场景及对应的模拟超时故障策略,从多种模拟超时故障场景中,选择一种模拟超时故障场景确定为预先配置的模拟超时故障场景。
可选地,预先配置模拟超时故障场景的方式还可以为,设置一种模拟超时故障场景及对应的模拟超时故障策略,并将该模拟超时故障场景确定为预先配置的模拟超时故障场景。
在确定预先配置的模拟超时故障场景之后,可以根据预先配置的模拟超时故障场景获取对应的模拟超时故障策略。
步骤S104、根据数据包及对应的模拟超时故障策略模拟超时故障。
示例性地,可以根据对应的模拟超时故障策略,选择性地对不包括预设的网络连接相关标识的数据包进行延时发送处理,从而实现对不同超时故障场景下产生的超时故障的模拟。还可以根据对应的模拟超时故障策略,对不包括预设的网络连接相关标识的数据包进行不同延时发送时长的延时发送处理,从而实现对不同超时故障场景下产生的超时故障的模拟。还可以根据对应的模拟超时故障策略,对所有不包括预设的网络连接相关标识的数据包进行延时发送处理,从而实现生产环境中全部后端服务器发生异常,所有响应超时场景下产生的超时故障的模拟。
本申请实施例中,接收后端服务器发送的数据包;判断数据包中是否包括预设的网络连接相关标识;若确定数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取模拟超时故障场景对应的模拟超时故障策略;根据数据包及对应的模拟超时故障策略模拟超时故障。通过判断数据包中是否包括预设的网络连接相关标识,可以识别出用于建立或断开网络连接的数据包,从而识别出响应数据包,可以仅根据响应数据包及对应的模拟超时故障策略模拟超时故障,可以实现延时发送时间大于建立连接的时间时,依然可以模拟后端服务器超时故障,可以增加延时发送时间的范围。可以灵活配置模拟超时故障场景,可以实现对不同超时故障场景下产生的超时故障的模拟,满足模拟各类场景下后端服务器超时故障的需求。由于增加延时发送时间的范围,并且可以灵活配置模拟超时故障场景,因此,增加了模拟超时故障方法的通用性。
实施例二
在上述实施例一的基础上,本实施例涉及的是对步骤S104根据数据包及对应的模拟超时故障策略模拟超时故障的具体过程的细化。
本申请实施例中,根据数据包及对应的模拟超时故障策略模拟超时故障,具体包括:根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理;若确定对数据包进行延时发送处理,则根据对应的模拟超时故障策略确定延时发送时间,并按照延时发送时间将数据包延时发送给前端设备,以模拟超时故障。
其中,延时发送处理是指在到确定的延时发送时间时,再将述数据包发送给前端设备。
本申请实施例中,若确定不对数据包进行延时发送处理,则将数据包发送给前端设备。
本申请实施例中对确定延时发送时间的方式不做具体限定。例如,可以获取接收数据包的时间,并确定延时发送时长,将接收数据包的时间加延时发送时长得到的时间,确定为延时发送时间,其中,延时发送时长可以为预设时长,也可以为随机时长。
本申请实施例中,可以通过根据模拟超时故障策略判断是否对数据包进行延时发送处理,可以按照预设时长的延时发送时间将数据包延时发送给前端设备,也可以按照随机时长延时发送时间将数据包延时发送给前端设备,从而实现对不同超时故障场景的模拟,满足模拟各类场景下后端服务器超时故障的需求。
可选地,本申请实施例的一种具体实现方式为:
预先配置的模拟超时故障场景为各种问题不定时产生的模拟超时故障场景,根据各种问题不定时产生的超时故障场景按照随机的方式判断数据包是否进行延时发送处理;根据各种问题不定时产生的超时故障场景确定延时发送时间为随机时长延时发送时间;按照随机时长延时发送时间将数据包延时发送给前端设备,以模拟超时故障。
具体地,预先配置的模拟超时故障场景对应的模拟超时故障策略为:按照随机的方式判断数据包是否进行延时发送处理,延时发送时间为随机时长延时发送时间。在接收后端服务器发送的数据包,并确定数据包中不包括预设的网络连接相关标识后,随机确定是否对数据包进行延时发送处理,若确定不对数据包进行延时发送处理,则直接将数据包发送给前端设备;若确定对数据包进行延时发送处理,则可以确定随机时长延时发送时间,在到确定的随机时长延时发送时间后,将数据包延时发送给前端设备,以模拟各种问题不定时产生的超时故障场景下产生的超时故障。
示例性地,可以设置随机时长的范围,在随机时长的范围内,随机确定延时发送时长,根据随机确定的延时发送时长,确定随机时长延时发送时间。
其中,进行延时发送处理的数据包的频率和次数都是随机确定的。
示例性地,可以设置延时频率的范围,和/或延时次数的范围,在超时频率的范围和/或超时次数的范围内随机确定是否对数据包进行延时发送处理。例如,设置的超时频率的范围可以为1秒1次到1秒5次、5秒1次到5秒10次等,设置的超时次数的范围可以为10次、100次、1000次等。
本申请实施例中,通过按照随机的方式判断数据包是否进行延时发送处理,按照随机时长延时发送时间将数据包延时发送给前端设备,可以模拟生产环境中因各种问题不定时产生超时故障的场景。
可选地,本申请实施例的另一种具体实现方式为:
预先配置的模拟超时故障场景为以下场景中的任意一种:超时问题达到预设比例的模拟超时故障场景、超时问题达到预设数量的模拟超时故障场景、预设业务模拟超时故障场景、预设报文格式模拟超时故障场景、预设后端服务器模拟超时故障场景。
具体地,根据对应的模拟超时故障策略确定延时发送时间为预设时长的延时发送时间;按照预设时长的延时发送时间将数据包延时发送给前端设备,以模拟超时故障。
示例性地,若根据对应的模拟超时故障策略,确定对数据包进行延时发送处理,则可以获取预设时长,根据预设时长确定延时发送时间。若根据对应的模拟超时故障策略,确定不对数据包进行延时发送处理,则将数据包发送给前端设备。其中,预设时长可以为0.5秒、1秒、2秒、5秒等,本实施例此处不做具体限定,根据预设时长确定的延时发送时间即为预设时长的延时发送时间。
本申请实施例中,可以通过根据模拟超时故障策略判断是否对数据包进行延时发送处理,按照预设时长的延时发送时间将数据包延时发送给前端设备,从而实现对不同超时故障场景的模拟,满足模拟各类场景下后端服务器超时故障的需求。
实施例三
本实施例分别对预先配置的模拟超时故障场景为以下场景中的任意一种:超时问题达到预设比例的模拟超时故障场景、超时问题达到预设数量的模拟超时故障场景、预设业务模拟超时故障场景、预设报文格式模拟超时故障场景、预设后端服务器模拟超时故障场景;根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理的具体实现方式进行详细说明。
本申请实施例中,预先配置的模拟超时故障场景为超时问题达到预设比例的模拟超时故障场景,根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理的具体实现方式为:
判断延时发送处理的数据包的比例是否达到预设比例;若否,则确定对数据包进行延时发送处理;若是,则确定不对数据包进行延时发送处理。
其中,超时问题为后端服务器超时未响应的问题,通过延时发送处理的数据包模拟超时问题。
示例性地,获取预设比例,并对预设时间段内接收的响应数据包进行计数,计算预设时间段内延时发送处理的数据包占预设时间段内接收的响应数据包的比例,若延时发送处理的数据包的比例未达到预设比例,则确定对数据包进行延时发送处理;若延时发送处理的数据包的比例未达到预设比例,则确定不对数据包进行延时发送处理。
本申请实施例中,通过判断延时发送处理的数据包的比例是否达到预设比例,确定是否对数据包进行延时发送处理,可以模拟后端服务器在出现超时问题达到一定比例后触发了流控机制,可以正常发送响应的场景。
本申请实施例中,预先配置的模拟超时故障场景为超时问题达到预设数量的模拟超时故障场景,根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理的具体实现方式为:
判断延时发送处理的数据包的数量是否达到预设数量;若否,则确定对数据包进行延时发送处理;若是,则确定不对数据包进行延时发送处理。
其中,预设数量可以为10个、20个、50个等,本实施例对此不做具体限定。
示例性地,获取延时发送处理的数据包的数量,若延时发送处理的数据包的数量大于预设数量,则确定不对数据包进行延时发送处理,若单位时间内数据包的数量小于预设数量,则确定不对数据包进行延时发送处理。
示例性地,可以预设TPS(每秒处理的事务数目,Transactions Per Second)阈值。获取延时发送处理的数据包的TPS,若未达到预设的TPS阈值,则确定对数据包进行延时发送处理,若达到预设的TPS阈值,则确定不对数据包进行延时发送处理。
本申请实施例中,通过判断延时发送处理的数据包的数量是否达到预设数量,确定是否对数据包进行延时发送处理,可以模拟后端服务器在出现超时问题达到一定数量后触发了流控机制,可以正常发送响应的场景。
本申请实施例中,预先配置的模拟超时故障场景为预设业务模拟超时故障场景,根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理的具体实现方式为:
获取数据包中的业务类型信息;根据业务类型信息判断数据包是否为预设业务类型;若是,则确定对数据包进行延时发送处理;若否,则确定不对数据包进行延时发送处理。
示例性地,业务类型信息中可以为前端设备中待测试系统提供的业务类型的标识,可以通过设置预设业务类型的标识确定预设业务类型。通过判断数据包的业务类型信息中的业务类型的标识是否包含在预设的业务类型的标识中,判断数据包是否为预设业务类型。
例如,待测试系统为银行业或金融行业的系统,待测试系统提供的业务类型可以为多种交易类型,业务类型的标识可以为交易码。可以预设一个或多个交易码,若数据包中的交易码包含在预设交易码中,则确定对数据包进行延时发送处理,若数据包中的交易码不包含在预设交易码中,则确定不对数据包进行延时发送处理。
本申请实施例中,根据数据包是否为预设业务类型判断是否对数据包进行延时发送处理,可以模拟生产环境中由于配置问题或其他问题导致的后端服务器对一种或多种业务类型的响应超时,对而其他业务类型的请求可以正常响应的场景。
本申请实施例中,预先配置的模拟超时故障场景为预设报文格式模拟超时故障场景,根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理的具体实现方式为:
确定数据包对应的报文格式;判断数据包的对应的报文格式是否为预设报文格式;若是,则确定对数据包进行延时发送处理;若否,则确定不对数据包进行延时发送处理。
示例性的,数据包对应的报文格式可以为json和xml。可以将json和xml中的任一种报文格式设置为预设报文格式。若数据包的报文格式是预设报文格式,则确定对数据包进行延时发送处理,若数据包的报文格式不是预设报文格式,则确定不对数据包进行延时发送处理。
本申请实施例中,根据数据包的对应的报文格式是否为预设报文格式判断是否对数据包进行延时发送处理,可以模拟生产环境中由于对某种报文格式进行解析出现问题,而产生的单报文格式的数据包发生超时故障的场景。
本申请实施例中,预先配置的模拟超时故障场景为预设后端服务器模拟超时故障场景,根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理的具体实现方式为:
获取数据包中包括的后端服务器信息;根据后端服务器信息判断数据包是否为从预设后台服务器接收到的数据包;若是,则确定对数据包进行延时发送处理;若否,则确定不对数据包进行延时发送处理。
示例性地,后端服务器信息中可以为后端服务器的标识,可以通过设置预设后端服务器的标识确定预设业务类型。通过判断后端服务器信息中的后端服务器的标识是否包含在预设后端服务器的标识中,判断数据包是否为从预设后台服务器接收到的数据包。
本申请实施例中,根据数据包是否为从预设后台服务器接收到的数据包判断是否对数据包进行延时发送处理,可以模拟生产环境中部分后端服务器发生异常而导致到发送至后端服务器的请求超时未收到响应的场景。
可选地,在上述任一实施例的基础上,若确定数据包中包括预设的网络连接相关标识,则将数据包不进行延时发送处理,并发送给前端设备,以使前端设备与后端服务器根据预设的网络连接相关标识建立或断开网络连接。
本申请实施例中,若确定数据包中包括预设的网络连接相关标识,则可以确定该数据包是用于建立和释放连接的数据包,不对该数据包进行延时发送处理,发送给前端设备,可以使用于建立和释放连接的数据包不受延时发送时长的影响,在延时发送时长较长的情况下,仍可以使前端设备与后端服务器建立或断开网络连接,从而可以增加延时发送时间的范围。
实施例四
图3为本申请实施例四提供的模拟超时故障装置的结构示意图。本申请实施例提供的模拟超时故障装置可以执行模拟超时故障方法实施例提供的处理流程。如图3所示,该模拟超时故障装置30包括:接收模块301,判断模块302,获取模块和模拟模块304。
具体地,接收模块301,用于接收后端服务器发送的数据包。
判断模块302,用于判断数据包中是否包括预设的网络连接相关标识;
获取模块303,用于若确定数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取模拟超时故障场景对应的模拟超时故障策略;
模拟模块304,用于根据数据包及对应的模拟超时故障策略模拟超时故障。
本申请实施例提供的装置可以具体用于执行上述实施例一所提供的方法实施例,具体功能此处不再赘述。
可选地,模拟模块304包括:判断单元、确定单元、发送单元。
判断单元,用于根据对应的模拟超时故障策略判断是否对数据包进行延时发送处理。
确定单元,用于若确定对数据包进行延时发送处理,则根据对应的模拟超时故障策略确定延时发送时间。
发送单元,用于按照延时发送时间将数据包延时发送给前端设备,以模拟超时故障。
可选地,预先配置的模拟超时故障场景为各种问题不定时产生的模拟超时故障场景;判断单元,具体用于根据各种问题不定时产生的超时故障场景按照随机的方式判断数据包是否进行延时发送处理;确定单元,具体用于根据各种问题不定时产生的超时故障场景确定延时发送时间为随机时长延时发送时间;发送单元,具体用于按照随机时长延时发送时间将数据包延时发送给前端设备,以模拟超时故障。
可选地,预先配置的模拟超时故障场景为以下场景中的任意一种:
超时问题达到预设比例的模拟超时故障场景、超时问题达到预设数量的模拟超时故障场景、预设业务模拟超时故障场景、预设报文格式模拟超时故障场景、预设后端服务器模拟超时故障场景;确定单元,具体用于根据对应的模拟超时故障策略确定延时发送时间为预设时长的延时发送时间;发送单元,具体用于按照预设时长的延时发送时间将数据包延时发送给前端设备,以模拟超时故障。
可选地,预先配置的模拟超时故障场景为超时问题达到预设比例的模拟超时故障场景;判断单元,具体用于判断延时发送处理的数据包的比例是否达到预设比例;若否,则确定对数据包进行延时发送处理;若是,则确定不对数据包进行延时发送处理。
可选地,预先配置的模拟超时故障场景为超时问题达到预设数量的模拟超时故障场景;
判断单元,具体用于判断延时发送处理的数据包的数量是否达到预设数量;若否,则确定对数据包进行延时发送处理;若是,则确定不对数据包进行延时发送处理。
可选地,预先配置的模拟超时故障场景为预设业务模拟超时故障场景;
判断单元,具体用于获取数据包中的业务类型信息;根据业务类型信息判断数据包是否为预设业务类型;若是,则确定对数据包进行延时发送处理;若否,则确定不对数据包进行延时发送处理。
可选地,预先配置的模拟超时故障场景为预设报文格式模拟超时故障场景;
判断单元,具体用于确定数据包对应的报文格式;判断数据包的对应的报文格式是否为预设报文格式;若是,则确定对数据包进行延时发送处理;若否,则确定不对数据包进行延时发送处理。
可选地,预先配置的模拟超时故障场景为预设后端服务器模拟超时故障场景;
判断单元,具体用于获取数据包中包括的后端服务器信息;根据后端服务器信息判断数据包是否为从预设后台服务器接收到的数据包;若是,则确定对数据包进行延时发送处理;若否,则确定不对数据包进行延时发送处理。
可选地,模拟超时故障装置30还包括:发送模块。
发送模块,用于若确定数据包中包括预设的网络连接相关标识,则将数据包不进行延时发送处理,并发送给前端设备,以使前端设备与后端服务器根据预设的网络连接相关标识建立或断开网络连接。
本申请实施例提供的装置可以具体用于执行上述方法实施例,具体功能此处不再赘述。
实施例五
图4为本申请实施例五提供的电子设备的结构示意图。如图4所示,该电子设备40包括:处理器401,以及与处理器401通信连接的存储器402和收发器403。
其中,处理器401,存储器402及收发器403之间电路互连;存储器402存储计算机执行指令;收发器403用于收发数据;处理器401执行存储器存储的计算机执行指令,以实现上述任一实施例提供的模拟超时故障方法。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时实现上述任一方法实施例提供的模拟超时故障方法。
本申请实施例还提供一种计算机程序产品,包括计算机执行指令,该计算机执行指令被处理器执行时实现上述任一方法实施例提供的模拟超时故障方法。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。
Claims (12)
1.一种模拟超时故障方法,其特征在于,包括:
接收后端服务器发送的数据包;
判断所述数据包中是否包括预设的网络连接相关标识;预设的网络连接相关标识为可以识别用于建立连接和释放连接的数据包的标识;
若确定所述数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取所述模拟超时故障场景对应的模拟超时故障策略;模拟超时故障场景为模拟后端服务器可能发生的超时故障的场景;模拟超时故障策略为模拟超时故障场景时对数据包的处理方式;
根据所述数据包及对应的模拟超时故障策略模拟超时故障;
所述根据所述数据包及对应的模拟超时故障策略模拟超时故障,包括:
根据对应的模拟超时故障策略判断是否对所述数据包进行延时发送处理;
若确定对所述数据包进行延时发送处理,则根据所述对应的模拟超时故障策略确定延时发送时间,并按照所述延时发送时间将所述数据包延时发送给前端设备,以模拟超时故障。
2.根据权利要求1所述的方法,其特征在于,所述预先配置的模拟超时故障场景为各种问题不定时产生的模拟超时故障场景;
所述根据对应的模拟超时故障策略判断所述数据包是否进行延时发送处理,包括:
根据所述各种问题不定时产生的超时故障场景按照随机的方式判断所述数据包是否进行延时发送处理;
所述根据所述对应的模拟超时故障策略确定延时发送时间,并按照所述延时发送时间将所述数据包延时发送给前端设备,以模拟超时故障,包括:
根据所述各种问题不定时产生的超时故障场景确定延时发送时间为随机时长延时发送时间;
按照所述随机时长延时发送时间将所述数据包延时发送给前端设备,以模拟超时故障。
3.根据权利要求1所述的方法,其特征在于,所述预先配置的模拟超时故障场景为以下场景中的任意一种:
超时问题达到预设比例的模拟超时故障场景、超时问题达到预设数量的模拟超时故障场景、预设业务模拟超时故障场景、预设报文格式模拟超时故障场景、预设后端服务器模拟超时故障场景;
所述根据所述对应的模拟超时故障策略确定延时发送时间,并按照所述延时发送时间将所述数据包延时发送给前端设备,以模拟超时故障,包括:
根据所述对应的模拟超时故障策略确定延时发送时间为预设时长的延时发送时间;
按照预设时长的延时发送时间将所述数据包延时发送给前端设备,以模拟超时故障。
4.根据权利要求3所述的方法,其特征在于,所述预先配置的模拟超时故障场景为超时问题达到预设比例的模拟超时故障场景;
所述根据对应的模拟超时故障策略判断是否对所述数据包进行延时发送处理,包括:
判断延时发送处理的数据包的比例是否达到预设比例;
若否,则确定对所述数据包进行延时发送处理;
若是,则确定不对所述数据包进行延时发送处理。
5.根据权利要求3所述的方法,其特征在于,所述预先配置的模拟超时故障场景为超时问题达到预设数量的模拟超时故障场景;
所述根据对应的模拟超时故障策略判断是否对所述数据包进行延时发送处理,包括:
判断延时发送处理的数据包的数量是否达到预设数量;
若否,则确定对所述数据包进行延时发送处理;
若是,则确定不对所述数据包进行延时发送处理。
6.根据权利要求3所述的方法,其特征在于,所述预先配置的模拟超时故障场景为预设业务模拟超时故障场景;
所述根据对应的模拟超时故障策略判断是否对所述数据包进行延时发送处理,包括:
获取所述数据包中的业务类型信息;
根据所述业务类型信息判断所述数据包是否为预设业务类型;
若是,则确定对所述数据包进行延时发送处理;
若否,则确定不对所述数据包进行延时发送处理。
7.根据权利要求3所述的方法,其特征在于,所述预先配置的模拟超时故障场景为预设报文格式模拟超时故障场景;
所述根据对应的模拟超时故障策略判断是否对所述数据包进行延时发送处理,包括:
确定所述数据包对应的报文格式;
判断所述数据包的对应的报文格式是否为预设报文格式;
若是,则确定对所述数据包进行延时发送处理;
若否,则确定不对所述数据包进行延时发送处理。
8.根据权利要求3所述的方法,其特征在于,所述预先配置的模拟超时故障场景为预设后端服务器模拟超时故障场景;
所述根据对应的模拟超时故障策略判断是否对所述数据包进行延时发送处理,包括:
获取所述数据包中包括的后端服务器信息;
根据所述后端服务器信息判断所述数据包是否为从预设后台服务器接收到的数据包;
若是,则确定对所述数据包进行延时发送处理;
若否,则确定不对所述数据包进行延时发送处理。
9.根据权利要求1-8任一项所述的方法,其特征在于,还包括:
若确定所述数据包中包括预设的网络连接相关标识,则将所述数据包不进行延时发送处理,并发送给前端设备,以使前端设备与所述后端服务器根据所述预设的网络连接相关标识建立或断开网络连接。
10.一种模拟超时故障装置,其特征在于,包括:
接收模块,用于接收后端服务器发送的数据包;
判断模块,用于判断所述数据包中是否包括预设的网络连接相关标识;预设的网络连接相关标识为可以识别用于建立连接和释放连接的数据包的标识;
获取模块,用于若确定所述数据包中不包括预设的网络连接相关标识,则确定预先配置的模拟超时故障场景,并获取所述模拟超时故障场景对应的模拟超时故障策略;模拟超时故障场景为模拟后端服务器可能发生的超时故障的场景;模拟超时故障策略为模拟超时故障场景时对数据包的处理方式;
模拟模块,用于根据所述数据包及对应的模拟超时故障策略模拟超时故障;
模拟模块,具体用于根据对应的模拟超时故障策略判断是否对所述数据包进行延时发送处理;
若确定对所述数据包进行延时发送处理,则根据所述对应的模拟超时故障策略确定延时发送时间,并按照所述延时发送时间将所述数据包延时发送给前端设备,以模拟超时故障。
11.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器和收发器;
所述处理器,所述存储器及所述收发器之间电路互连;
所述存储器存储计算机执行指令;所述收发器用于收发数据;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1-9中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534617.8A CN114205248B (zh) | 2021-12-15 | 2021-12-15 | 模拟超时响应方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534617.8A CN114205248B (zh) | 2021-12-15 | 2021-12-15 | 模拟超时响应方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114205248A CN114205248A (zh) | 2022-03-18 |
CN114205248B true CN114205248B (zh) | 2023-06-13 |
Family
ID=80654050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111534617.8A Active CN114205248B (zh) | 2021-12-15 | 2021-12-15 | 模拟超时响应方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114205248B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110034972A (zh) * | 2019-03-22 | 2019-07-19 | 深圳市腾讯信息技术有限公司 | 服务器压力测试方法和装置 |
-
2021
- 2021-12-15 CN CN202111534617.8A patent/CN114205248B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110034972A (zh) * | 2019-03-22 | 2019-07-19 | 深圳市腾讯信息技术有限公司 | 服务器压力测试方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114205248A (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8925068B2 (en) | Method for preventing denial of service attacks using transmission control protocol state transition | |
US9313225B2 (en) | Method for packet processing, electronic device and storage medium | |
CN111224999A (zh) | 一种传输协议切换方法、装置、设备及存储介质 | |
CN112398781B (zh) | 一种攻击测试方法、主机服务器及控制服务器 | |
US10728220B2 (en) | System and method for covertly transmitting a payload of data | |
CN104038845A (zh) | 报文传输方法及装置 | |
CN114629822A (zh) | 链路检测方法、装置、电子设备及存储介质 | |
CN114205248B (zh) | 模拟超时响应方法、装置、设备及存储介质 | |
CN116170235B (zh) | 一种数据库优化访问方法、系统、设备及介质 | |
CN109996349B (zh) | 一种会话恢复方法及其装置 | |
CN109286665B (zh) | 实时移动游戏长链接处理方法及装置 | |
CN109818912B (zh) | 防范泛洪攻击的方法、装置、负载均衡设备和存储介质 | |
CN114710801B (zh) | 网络性能的测评参数的处理方法、装置、存储介质及设备 | |
CN112436982B (zh) | 一种网络流量自动混跑测试方法、系统、终端及存储介质 | |
CN113411228B (zh) | 一种网络状况的确定方法及服务器 | |
CN109194674A (zh) | 一种通信数据的处理方法及装置 | |
CN104954187B (zh) | 一种确定用户侧设备状态的方法和装置 | |
EP2951708B1 (en) | Reporting errors on serial interfaces to application layers for flexible error handling approach selection | |
CN110798423B (zh) | 消息处理方法及装置、安全防护设备及终端设备 | |
CN110474807A (zh) | 一种日志处理方法及装置 | |
CN112689284B (zh) | 无线网络密码修改方法、装置、设备及存储介质 | |
CN111049754B (zh) | 数据通信方法、装置、设备和计算机可读存储介质 | |
CN110198322B (zh) | 数据通信网络接入方法 | |
CN112491637A (zh) | 通信性能测试方法、第一通信设备和计算机可读存储介质 | |
CN105337929A (zh) | Ip地址的校验方法和装置 |
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 |