欢迎光临小豌豆知识网!
当前位置:首页 > 电学技术 > 电通讯技术> 访问行为识别方法、性能检测方法、装置、设备和系统独创技术53905字

访问行为识别方法、性能检测方法、装置、设备和系统

2021-02-21 22:11:15

访问行为识别方法、性能检测方法、装置、设备和系统

  技术领域

  本发明涉及互联网技术领域,尤其涉及一种访问行为识别方法、性能检测方法、装置、设备和系统。

  背景技术

  网络流量镜像(Switched Port Analyzer)技术,是一种通过一定技术手段从网络中1:1复制网络流量并进行分析的技术。一般可以用于网络安全监控、用户访问行为分析等用途。

  将网络流量镜像技术的执行方称为镜像系统,镜像系统一般可以由一个或多个主机构成。

  在客户端——服务端的网络架构下,为实现用户访问行为的准确识别,服务端运行安全的准确监控,至少需要镜像系统能够完整地获取客户端对服务端的所有网络访问流量,因为如果丢失其中的部分网络访问流量,就可能会导致恶意访问行为未被准确识别出的情况。由此可见,镜像系统的性能对于服务端的安全运行具有重要影响。

  发明内容

  本发明实施例提供一种访问行为识别方法、性能检测方法、装置、设备和系统,用以实现对镜像系统的性能检测。

  第一方面,本发明实施例提供一种性能检测方法,应用于服务端,该方法包括:

  构造第一探测请求报文;

  将所述第一探测请求报文发送至客户端;

  若接收到镜像系统伪造的与所述第一探测请求报文对应的第一探测应答报文,则确定所述镜像系统成功获取到所述第一探测请求报文。

  第二方面,本发明实施例提供一种性能检测装置,应用于服务端,该装置包括:

  构造模块,用于构造第一探测请求报文;

  发送模块,用于将所述第一探测请求报文发送至客户端;

  确定模块,用于若接收到镜像系统伪造的与所述第一探测请求报文对应的第一探测应答报文,则确定所述镜像系统成功获取到所述第一探测请求报文。

  第三方面,本发明实施例提供一种电子设备,包括第一处理器、第一存储器,所述第一存储器上存储有可执行代码,当所述可执行代码被所述第一处理器执行时,至少可以实现上述第一方面所述的性能检测方法。

  第四方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,至少可以实现上述第一方面中的性能检测方法。

  第五方面,本发明实施例提供一种性能检测方法,应用于镜像系统,该方法包括:

  获取到服务端发送至客户端的第一探测请求报文;

  伪造与所述第一探测请求报文对应的第一探测应答报文;

  将所述第一探测应答报文发送至所述服务端,以使所述服务端根据所述第一探测应答报文确定所述镜像系统成功获取到所述第一探测请求报文。

  第六方面,本发明实施例提供一种性能检测装置,应用于镜像系统,该装置包括:

  获取模块,用于获取到服务端发送至客户端的第一探测请求报文;

  伪造模块,用于伪造与所述第一探测请求报文对应的第一探测应答报文;

  发送模块,用于将所述第一探测应答报文发送至所述服务端,以使所述服务端根据所述第一探测应答报文确定所述镜像系统成功检测到所述第一探测请求报文。

  第七方面,本发明实施例提供一种电子设备,包括第二处理器、第二存储器,所述第二存储器上存储有可执行代码,当所述可执行代码被所述第二处理器执行时,至少可以实现上述第五方面所述的性能检测方法。

  第八方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,至少可以实现上述第五方面中的性能检测方法。

  第九方面,本发明实施例提供了一种性能检测系统,包括:

  客户端、服务端、镜像系统和路由器;

  所述服务端,用于构造探测请求报文,通过所述路由器将所述探测请求报文发送至所述客户端;以及,若接收到所述镜像系统发送的探测应答报文,则确定所述镜像系统成功获取到所述探测请求报文;

  所述镜像系统,用于通过所述路由器获取所述探测请求报文,并伪造与所述探测请求报文对应的所述探测应答报文,将所述探测应答报文发送至所述服务端。

  第十方面,本发明实施例提供了一种访问行为识别方法,包括:

  数据计算设备,获取到客户端计算设备发送至服务端计算设备的数据访问请求;

  若所述数据计算设备的报文响应延时符合要求,则所述数据计算设备对所述数据访问请求进行访问行为的类别识别;

  若识别出所述数据访问请求为预设类别的访问行为,则向所述客户端计算设备发送访问终止报文;

  其中,所述报文响应延时符合要求是指所述数据计算设备获取到服务端计算设备发送至客户端计算设备的探测请求报文,并使得响应所述探测请求报文的探测应答报文在设定时长内被发送至所述客户端计算设备。

  第十一方面,本发明实施例提供了一种访问行为识别方法,应用于镜像系统,所述镜像系统的报文响应延时符合要求,所述报文响应延时符合要求是指所述镜像系统成功获取到服务端发送至客户端的探测请求报文,并使得伪造的探测应答报文在设定时长内被发送至所述客户端;所述方法包括:

  获取到客户端发送至服务端的数据访问请求;

  对所述数据访问请求进行访问行为恶意性识别;

  若识别出所述数据访问请求为恶意访问行为,则向所述客户端发送访问终止报文。

  在本发明实施例中,为检测镜像系统能否完整地捕获客户端发往服务端的所有访问流量,在服务端侧可以基于通用的通信协议构造探测请求报文,并将构造的探测请求报文发送至客户端。如果镜像系统能够捕获该探测请求报文,则镜像系统会伪造出探测应答报文,并将伪造出的探测应答报文发送至服务端。当服务端接收到镜像系统伪造的与其发出的探测请求报文对应的探测应答报文时,确定镜像系统成功获取到了该探测请求报文。如此,服务端通过构造大量的探测请求报文可以实现对镜像系统能否完整地捕获客户端发往服务端的所有访问流量的检测。

  附图说明

  为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

  图1为本发明实施例提供的一种镜像系统性能检测系统的组成示意图;

  图2为ICMP报文的数据结构的示意图;

  图3为ICMP报文的类型字段的取值及含义示意图;

  图4为本发明实施例提供的一种镜像系统性能检测方法的实际执行过程示意图;

  图5为本发明实施例提供的一种镜像系统性能检测方法的流程图;

  图6为本发明实施例提供的另一种镜像系统性能检测方法的流程图;

  图7为本发明实施例提供的另一种镜像系统性能检测方法的实际执行过程示意图;

  图8为图7中三种探测应答报文对应的收发路径的示意图;

  图9为本发明实施例提供的又一种镜像系统性能检测方法的流程图;

  图10为本发明实施例提供的再一种镜像系统性能检测方法的流程图;

  图11为本发明实施例提供的一种访问行为识别方法的流程图;

  图12为本发明实施例提供的另一种访问行为识别方法的流程图;

  图13为本发明实施例提供的一种镜像系统性能检测装置的结构示意图;

  图14为与图13所示实施例提供的镜像系统性能检测装置对应的电子设备的结构示意图;

  图15为本发明实施例提供的另一种镜像系统性能检测装置的结构示意图;

  图16为与图15所示实施例提供的镜像系统性能检测装置对应的电子设备的结构示意图。

  具体实施方式

  为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

  在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式。除非上下文清楚地表示其他含义,“多种”一般包含至少两种。

  取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。

  还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者系统中还存在另外的相同要素。

  另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。

  图1为本发明实施例提供的一种镜像系统性能检测系统的组成示意图,如图1所示,该系统包括:客户端、服务端、镜像系统和路由器。

  其中,服务端,用于构造探测请求报文,通过路由器将探测请求报文发送至客户端;以及,若接收到镜像系统发送的探测应答报文,则确定镜像系统成功获取到探测请求报文。

  其中,镜像系统,用于通过路由器获取探测请求报文,并伪造与探测请求报文对应的探测应答报文,将探测应答报文发送至服务端。

  假设如下的实际应用场景:在广大用户访问某服务提供商的服务器的场景中,服务提供商侧可能会存在对用户的访问流量进行统计、分析等需求,此时,服务提供商需要利用镜像系统来捕获访问其服务器的网络流量,并对捕获的网络流量进行统计、分析等处理。因此,需要提前对该镜像系统的性能进行检测,以保证镜像系统的性能符合设定的要求。而度量镜像系统性能的指标之一便是统计完整性,所谓统计完整性,简单来说就是镜像系统能否完整地捕获发往服务器的访问流量。为了对该镜像系统的性能进行检测,可以将该服务提供商的服务器视为本文中的服务端,将访问该服务器的其他设备视为本文中的客户端,通过在服务端侧构造探测请求报文以对镜像系统进行性能检测。

  当然,本文中的服务端可以是独立的服务器,也可以是服务器集群等多种具体表现形式。

  客户端对服务端的网络访问需要通过互联网,而互联网中会包含众多网络设备,而其中必不可少的网络设备为路由器。在本发明实施例中,可以对路由器进行配置,将客户端与服务端的通信数据除了发送至对端外,还转发至镜像系统。

  另外,服务端中可以存储有历史上访问过该服务端的多个客户端(即访问服务器的设备)的IP地址,基于该IP地址,服务端可以主动实现对客户端的访问。

  实际应用中,可选地,镜像系统可以由一个或多个主机构成,对每个主机的性能检测过程是一致的,因此,本发明实施例中仅以镜像系统实现为某个主机为例进行说明。

  由于镜像系统往往是服务端侧部署的,因此,服务端更关系镜像系统的性能情况,从而,为实现对镜像系统的性能检测,可以在服务端中构造众多发往客户端的探测请求报文,如果镜像系统能通过路由器成功获取到这些探测请求报文并对这些探测请求报文进行响应,则会向服务端发送与每个探测请求报文对应的探测应答报文,从而,服务端通过统计接收到的探测应答报文便可以确定镜像系统的统计完整性是否符合要求。

  比如,假设客户端一共构造了1000个探测请求报文,但是仅接收到与其中的900个探测请求报文对应的探测应答报文,则说明镜像系统并没有成功获取到剩余的100个探测请求报文并对其做出响应。

  实际应用中,镜像系统符合统计完整性要求可以是指镜像系统成功获取到全部的探测请求报文并对每个探测请求报文做出响应,或者,也可以是指镜像系统至少成功获取到全部的探测请求报文中的设定比例的探测请求报文并对其做出响应。

  在本发明实施例中,服务端构造的探测请求报文,是一种控制消息,可以基于通用的网络协议生成。比如可以通过Internet控制报文协议(Internet Control MessageProtocol,简称ICMP)来生成。

  如图2所示,ICMP报文的数据结构中包括:8位类型字段、8位代码字段、16位校验和字段以及数据载荷字段(payload)。不同类型和代码字段对应的数据载荷字段的填充内容不同。

  其中,类型字段表明ICMP报文的不同类型,该类型字段可以有15个不同的值,图3中示意出了一些类型字段的取值和含义。

  可选地,本发明实施例中的探测请求报文,可以是ping请求报文,相应地,探测应答报文可以是ping应答报文。此时,ping请求报文是基于类型为8的ICMP报文生成的,ping应答报文是基于类型为0的ICMP报文生成的。

  当然,探测请求报文和探测应答报文也可以基于其他具体类型的ICMP报文来生成,不局限于类型取值0和8的报文。

  下面结合图4所示意的一次检测过程来说明客户端、服务端和镜像系统的工作过程:

  以服务端构造的探测请求报文为ping请求报文为例,如图4中所示,该ping请求报文中的类型字段type的取值为8,数据载荷字段payload中包括如下两个内容:第一个是编号信息seq,第二个是时间戳tick。其中,假设ping请求报文中的seq取值为0001,tick取值为37260。其中,编号信息seq可以唯一性地标识一个探测请求报文,从而可以用于区分不同的探测请求报文。

  可以理解的是,该ping请求报文中还可以包括IP首部等信息,其中包括该ping请求报文对应的源和目的IP地址,以表明该ping请求报文是由该服务端发送至客户端的。

  在图4中,服务端构造出的该ping请求报文一方面被路由器发送至客户端,另一方面被转发至镜像系统。

  假设客户端对该ping请求报文进行响应而反馈给服务端的ping应答报文为图4中的ping应答报文A,其中,type取值为0;payload中的seq的取值与ping请求报文中的seq取值相同,为0001,以表明该ping应答报文A是与该ping请求报文对应的;payload中的tick的取值假设为38470。

  另外,假设镜像系统对该ping请求报文进行响应而反馈给服务端的ping应答报文为图4中的ping应答报文B,其中,type取值为0;payload中的seq的取值与ping请求报文中的seq取值相同,为0001;payload中的tick的取值假设为37470。值得说明的是,为了让服务端能够区别出接收到的ping应答报文的发送方是客户端还是镜像系统,在镜像系统反馈的ping应答报文中可以设置有特定的标识字段,从而,服务端当接收到包含该特定的标识字段的ping应答报文时,可以确定该ping应答报文是镜像系统发送的。在图4中,该特定的标识字段以meta表示,该标识字段可以设置为是镜像系统对应的IP地址,比如图4中示意的1.1.1.1。

  综上,在图4中,服务端构造出一个ping请求报文,如果接收到镜像系统反馈的ping应答报文B,则确定镜像系统成功获取到了该ping请求报文。如此,在服务端构造若干ping请求报文的情况下,服务端可以统计出镜像系统成功获取到了多少ping请求报文,从而完成对镜像系统的统计完整性的检测。

  实际应用中,镜像系统的性能除了可以通过上述统计完整性来度量外,还可以通过其他指标来度量,比如响应及时性,等等。下面结合以下实施例对镜像系统的性能检测的执行过程进行详细介绍。

  图5为本发明实施例提供的一种镜像系统性能检测方法的流程图,该镜像系统性能检测方法可以由图1所示的服务端来执行。如图1所示,该方法包括如下步骤:

  501、构造第一探测请求报文。

  502、将第一探测请求报文发送至客户端。

  503、若接收到镜像系统伪造的与第一探测请求报文对应的第一探测应答报文,则确定镜像系统成功获取到第一探测请求报文。

  可选地,本实施例中,第一探测请求报文可以为ping请求报文,相应地,第一探测应答报文可以为ping应答报文。

  实际应用中,服务端需要构造多个不同的第一探测请求报文以对镜像系统进行性能检测,为区别不同的第一探测请求报文,每个第一探测请求报文中可以包括不同的编号信息。另外,为了体现第一探测请求报文与第一探测应答报文的对应性,第一探测应答报文中也包含与对应的第一探测请求报文一致的编号信息。

  本实施例中的第一探测请求报文以及第一探测应答报文的报文结构可以参考图4中所示意的ping请求报文和ping应答报文B。

  结合图4可知,客户端响应于第一探测请求报文也会向服务端反馈探测应答报文,在后续实施例中,将客户端反馈的该探测应答报文称为第三探测应答报文,该第三探测应答报文的报文结构可以参见图4中示意的ping应答报文A。

  如前文所述,为了使得服务端能够区别出哪个探测应答报文是客户端反馈的,哪个探测应答报文是镜像系统伪造而反馈的,镜像系统伪造的第一探测应答报文中可以包括特定的标识字段,称为第一标识字段,用以表示第一探测应答报文是镜像系统伪造的探测应答报文,亦即用于指示第一探测应答报文的发送方是客户端还是镜像系统。

  服务端每构造出一个第一探测请求报文,便会通过执行上述步骤而确定镜像系统是否成功获取到当前生成的第一探测请求报文并做出响应。从而,可选地,对于服务端构造的多个第一探测请求报文,若镜像系统成功获取到的第一探测请求报文的数量小于设定值,则确定镜像系统不符合统计完整性要求。实际应用中,该设定值可以为客户端构造的全部第一探测请求报文的个数,也可以是比该个数小的数值。

  前述实施例中介绍了在以统计完整性作为度量镜像系统的性能指标的情况下,如何检测镜像系统的统计完整性。而实际上,除了统计完整性外,镜像系统的性能指标还可以包括响应及时性。下面先对响应及时性提出的背景需求及含义进行说明。

  仍以用户访问某服务提供商的服务器的场景为例,镜像系统捕获广大用户发送至服务器的网络流量,对网络流量进行分析的目的之一就是:拦截或者说阻断恶意访问行为,以保证服务器的安全运行。为实现该目的,镜像系统需要提供旁路防火墙的功能。旁路防火墙的功能简单来说就是:镜像系统监听用户设备发送至服务器的访问请求,对该访问请求进行分析,一旦发现该访问请求为恶意访问请求,则直接回复伪造的访问终止亦即复位(reset)报文至该用户设备,并保证伪造的reset报文比服务器的正常响应报文先到达该用户设备,以实现阻断恶意访问行为的目的。

  基于该旁路防火墙功能的可靠提供,镜像系统的访问行为识别过程可以描述为:

  获取到客户端发送至服务端的数据访问请求;

  对数据访问请求进行访问行为恶意性识别;

  若识别出数据访问请求为恶意访问行为,则向客户端发送访问终止报文。

  在这个过程中所提及的客户端往往对应于用户终端,服务端往往对应于某服务提供商的服务器。该访问行为识别的过程可以理解为是经过性能检测合格的镜像系统在实际应用场景中的工作过程。

  其中,对数据访问请求进行访问行为恶意性识别,可以是根据该数据访问请求的IP地址,该IP地址对应的历史访问记录等因素来判定的。

  由此可知,为了实现旁路防火墙功能,除了需要镜像系统能够完整地捕获发往服务器的访问请求外,还需要保证镜像系统伪造的reset报文早于服务器的正常响应报文到达用户设备,也就是说,reset报文的传输延时需要控制在足够小的范围内,以保证镜像系统的报文响应延时符合响应及时性要求。比如,针对用户设备发出的访问请求,如果统计发现服务器做出的正常响应报文最快需要在50微秒后到达用户设备,那么需要保证镜像系统伪造的reset报文在50微秒之内到达用户设备,此时镜像系统才能满足响应及时性要求。

  基于上述响应及时性的背景需求的介绍,下面结合图6来对镜像系统的响应及时性的检测过程进行说明。

  图6为本发明实施例提供的另一种镜像系统性能检测方法的流程图,该镜像系统性能检测方法可以由图1所示的服务端来执行。如图6所示,该方法可以包括如下步骤:

  601、构造第一探测请求报文。

  602、将第一探测请求报文发送至客户端。

  603、接收到镜像系统伪造的与第一探测请求报文对应的第一探测应答报文。

  604、接收到客户端响应于镜像系统发送的第二探测请求报文而反馈的第二探测应答报文,镜像系统在获取到第一探测请求报文后向客户端发送伪造的第二探测请求报文。

  605、接收到客户端响应于第一探测请求报文而反馈的第三探测应答报文。

  606、根据第一探测应答报文、第二探测应答报文和第三探测应答报文各自对应的时间戳以及第一探测请求报文对应的时间戳,确定在第一探测请求报文下镜像系统的报文响应延时。

  为更加直观地理解镜像系统的响应及时性的检测过程,结合图7来说明。

  在图7中,假设第一探测请求报文为ping请求报文1,其中,type=8,payload中的seq=0001,payload中的tick=37260。

  服务端发出ping请求报文1后,客户端接收到该ping请求报文1后向服务端反馈第三探测应答报文,假设为图7中的ping应答报文c,其中,type=0,payload中的seq=0001,payload中的tick=38470。

  该ping请求报文1被镜像系统接收到之后,一方面,镜像系统伪造出第一探测应答报文并将第一探测应答报文反馈到服务端。该第一探测应答报文假设为图7中的ping应答报文a,其中,type=0,payload中的seq=0001,payload中的tick=37470,payload中的meta_reply=1.1.1.1。另一方面,镜像系统根据接收到的ping请求报文1伪造出第二探测请求报文,并发送至客户端。假设第二探测请求报文为图7中的ping请求报文2,其中,type=8,payload中的seq=0001,payload中的tick=37260,payload中的meta_request=1.1.1.1。

  从而,客户端在接收到镜像系统伪造的ping请求报文2后,向服务端发送第二探测应答报文,假设为图7中的ping应答报文b,其中,type=0,payload中的seq=0001,payload中的tick=39470,payload中的meta_request=1.1.1.1。

  下面对图7示意的检测过程中涉及到的几个概念进行说明。

  在图7中,是以探测请求报文具体实现为ping请求报文为例进行的说明,相应地,探测应答报文为ping应答报文。

  由图7可知,正常情况下,在触发一个第一探测请求报文后,服务端会接收到对应的三个探测应答报文,为了区别这三个探测应答报文,引入了如下几个特定的标识字段:

  第一标识字段,携带于第一探测应答报文中,在图7,第一标识字段即为ping应答报文a中的meta_reply,被赋值为镜像系统对应的IP地址:1.1.1.1。若某探测应答报文中包含该第一标识字段,说明该探测应答报文是镜像系统伪造的。

  第二标识字段,携带于第二探测请求报文中,在图7,第二标识字段即为ping请求报文2中的meta_request,被赋值为镜像系统对应的IP地址:1.1.1.1。若某探测请求报文中包含该第二标识字段,说明该探测请求报文是镜像系统伪造的。

  第三标识字段,携带于第二探测应答报文中,在图7,第三标识字段即为ping应答报文b中的meta_request,该第三标识字段与第二标识字段可以相同,即第三标识字段可以取自第二标识字段,同样被赋值为镜像系统对应的IP地址:1.1.1.1。若某探测应答报文中包含该第三标识字段,说明该探测应答报文是客户端响应镜像系统伪造的探测请求报文而发出的。当然,第三标识字段也可以设置为不同于第二标识字段和第一标识字段的其他内容。

  另外,值得说明的是,如图7中所示的各个时间戳信息,镜像系统在伪造第二探测请求报文即ping请求报文2时,将时间戳设置为与ping请求报文1中的时间戳相同。而且,理想情况下服务端接收到的三个探测应答报文中时间戳的顺序正如图7中所示意的,按照时间先后顺序依次为:ping应答报文1、ping应答报文3、ping应答报文2。

  该顺序与第一探测请求报文发出后所经过的处理路径有关。如图8中所示,由于镜像系统拦截服务端发往客户端的第一探测请求报文,因此,可以认为镜像系统位于客户端与服务端之间。从而,若将第一探测请求报文被镜像系统捕获并反馈伪造的第一探测应答报文到服务端的这条收发路径称为路径1;将第一探测请求报文被镜像系统捕获并伪造出第二探测请求报文发送至客户端,由客户端反馈第二探测应答报文到服务端的这条收发路径称为路径2;将第一探测请求报文被直接发送至客户端并由客户端反馈第三探测应答报文到服务端的这条收发路径称为路径3,那么通过路径长短的比较结果可知,路径1最低、路径3次之,路径2最长。路径1对应于ping应答报文1,路径3对应于ping应答报文3,路径2对应于ping应答报文2,因此,ping应答报文1、ping应答报文3、ping应答报文2各自对应的时间戳的先后顺序呈现如图7中所示的情形。

  而该时间顺序也正是镜像系统正常提供旁路防火墙功能时应该表现出的时间顺序,因此,当服务端触发第一探测请求报文时,可选地,如果服务端依次接收到的三个探测应答报文的顺序满足:第一探测应答报文先于第二探测应答报文和第三探测应答报文被接收到这个条件,才会执行根据第一探测应答报文、第二探测应答报文和第三探测应答报文各自对应的时间戳以及第一探测请求报文对应的时间戳,确定在第一探测请求报文下镜像系统的报文响应延时的步骤,否则,如果不满足该条件,则丢弃基于当前的第一探测请求报文的检测过程。

  具体地,可以根据如下公式确定在第一探测请求报文下镜像系统的报文响应延时:

  ΔT=[T2+T1/2-T3]/2;

  其中,ΔT为在第一探测请求报文下镜像系统的报文响应延时,T1为第一探测应答报文对应的时间戳与第一探测请求报文对应的时间戳的差值,T2为第二探测应答报文对应的时间戳与第一探测请求报文对应的时间戳的差值,T3为第三探测应答报文对应的时间戳与第一探测请求报文对应的时间戳的差值。

  在上述公式中,假设的是镜像系统伪造第二探测请求报文发送至客户端所用的时长与镜像系统伪造第一探测应答报文发送至服务端所用的时长可视为相等。

  通过上述过程,每当服务端触发一个第一探测请求报文时,服务端都可以计算得到当前镜像系统对应的报文响应延时。从而,在服务端触发出多个第一探测请求报文后,服务端可以根据每个第一探测请求报文下镜像系统分别对应的报文响应延时,确定镜像系统是否符合响应及时性要求。比如,如果每个第一探测请求报文下镜像系统分别对应的报文响应延时均小于设定时长,则确定镜像系统符合响应及时性要求,反之则不符合。再比如,如果在超过全部第一探测请求报文中一定比例的第一探测请求报文下镜像系统分别对应的报文响应延时均小于设定时长,则确定镜像系统符合响应及时性要求,反之则不符合。

  综上,在本发明实施例中,通过通用的通信协议构造控制消息——探测请求报文、探测应答报文,即可方便地完成对镜像系统的性能检测,以便及时发现镜像系统的性能异常情况做出优化处理。

  图9为本发明实施例提供的又一种镜像系统性能检测方法的流程图,该方法可以由图1所示的镜像系统来执行。如图9所示,可以包括如下步骤:

  901、获取到服务端发送至客户端的第一探测请求报文。

  902、伪造与第一探测请求报文对应的第一探测应答报文。

  903、将第一探测应答报文发送至服务端,以使服务端根据第一探测应答报文确定镜像系统成功获取到第一探测请求报文。

  其中,可选地,第一探测请求报文可以为基于ICMP协议构造的ping请求报文,相应地,第一探测应答报文为ping应答报文。

  其中,第一探测应答报文中包括第一标识字段,第一标识字段用以表示第一探测应答报文是该镜像系统伪造的探测应答报文。

  其中,镜像系统伪造与第一探测请求报文对应的第一探测应答报文,可以实现为:提取第一探测请求报文中包含的编号信息,伪造包含该编号信息的第一探测应答报文。另外,该第一探测应答报文中还可以包括时间戳信息。

  图10为本发明实施例提供的再一种镜像系统性能检测方法的流程图,该方法可以由图1所示的镜像系统来执行。如图10所示,可以包括如下步骤:

  1001、获取到服务端发送至服务端的第一探测请求报文。

  1002、伪造与第一探测请求报文对应的第一探测应答报文。

  1003、将第一探测应答报文发送至服务端,以使服务端根据第一探测应答报文确定镜像系统成功获取到第一探测请求报文。

  1004、根据第一探测请求报文伪造第二探测请求报文。

  1005、将第二探测请求报文发送至客户端,以使客户端响应于第二探测请求报文向服务端发送第二探测应答报文,供服务端根据第一探测应答报文、第二探测应答报文和第三探测应答报文各自对应的时间戳以及第一探测请求报文对应的时间戳确定在第一探测请求报文下镜像系统的报文响应延时,第三探测应答报文是客户端响应于第一探测请求报文而反馈至客户端的。

  其中,可选地,第二探测请求报文为ping请求报文,第二探测应答报文和第三探测应答报文为ping应答报文。

  其中,第二探测请求报文中包括第二标识字段,第二标识字段用以表示第二探测请求报文是镜像系统伪造的探测请求报文。

  其中,第二探测应答报文中包括第三标识字段,第三标识字段用以表示第二探测应答报文是与镜像系统伪造的探测请求报文对应的探测应答报文。

  图9和图10所示实施例的详细执行过程可以参考前述其他实施例中的说明,在此不赘述。

  图11为本发明实施例提供的一种访问行为识别方法的流程图。如图11所示,可以包括如下步骤:

  1101、数据计算设备获取到客户端计算设备发送至服务端计算设备的数据访问请求。

  1102、若数据计算设备的报文响应延时符合要求,则数据计算设备对数据访问请求进行访问行为的类别识别,报文响应延时符合要求是指数据计算设备获取到服务端计算设备发送至客户端计算设备的探测请求报文,并使得响应所述探测请求报文的探测应答报文在设定时长内被发送至客户端计算设备。

  1103、若识别出数据访问请求为预设类别的访问行为,则数据计算设备向客户端计算设备发送访问终止报文。

  其中,访问终止报文可以是前文中的提到的reset报文。

  本实施例中,客户端计算设备和服务端计算设备是一对相对概念,在实际应用中,服务端计算设备可以是某服务提供商提供某种服务的服务器或服务器集群,相应地,客户端计算设备泛指可以访问该服务端计算设备的各种电子设备。而数据计算设备是指可以捕获客户端计算设备与服务端计算设备之间的通信数据的设备。

  在一具体实施例中,上述客户端计算设备对应于前文所述的客户端,上述服务端计算设备对应于前文所述的服务端,数据计算设备对应于前文所述的镜像系统。

  值得说明的是,本实施例中,数据计算设备的报文响应延时是否符合要求是由服务端计算设备预先确定出的。服务端计算设备确定数据处理设备的报文响应延时是否符合要求(即响应及时性要求)的过程可以参见前述相关实施例中的说明,在此不赘述。

  只是,实际应用中,服务端计算设备可以定期对数据处理设备进行报文响应延时是否符合要求的判定,并将判定结果告知数据处理设备,以使得数据处理设备基于该判定结果使能数据访问请求的类别识别功能。也就是说,服务端计算设备在某时刻确定出数据处理设备的报文响应延迟是否符合要求后,可以向数据处理设备发送相应通知消息,以告知数据处理设备其报文响应延时是否符合要求。另外,该通知消息中还可以携带有时间周期,意味着数据处理设备在该时间周期内其报文响应延时是否符合要求。

  可选地,数据处理设备中可以设置有特定标志位,该特定标志位用于表明当前数据处理设备的报文响应延时是否符合要求,比如该特定标志位置为1时,表明当前数据处理设备的报文响应延时符合要求;该特定标志位置为0时,表明当前数据处理设备的报文响应延时不符合要求。而该特定标志位应该置于什么数值,取决于数据处理设备接收到的上述通知消息。

  基于此,数据处理设备在后续工作过程中,捕获到客户端计算设备发送至服务端计算设备的数据访问请求时,查询该特定标志位,若该特定标志位置为1,则对该数据访问请求进行类别识别,以及在识别出该数据访问请求为预设类别的访问行为时,向客户端计算设备发送访问终止报文,此时,该访问终止报文会优先于服务端计算设备的正常访问响应报文到达客户端计算设备,从而实现拦截预设类别的访问行为的目的。

  可以理解的是,如果该特定标志位置为0,说明数据处理设备的报文响应延时不符合要求,那么在数据处理设备捕捉到客户端计算设备发送至服务端计算设备的数据访问请求时,可以不执行访问行为的类别识别等处理,因为如果数据处理设备的报文响应延时不符合要求,便无法保证上述访问终止报文先于服务端计算设备的正常访问响应报文到达客户端计算设备。

  实际应用中,可以将数据访问请求的访问行为划分为正常访问和恶意访问这两种类别。上述预设类别可以是指恶意访问类别。而恶意访问类别的判定比如可以是:如果数据访问请求中的IP地址位于预设的黑名单中,则认为该数据访问请求的访问行为为恶意访问行为;或者,如果该数据访问请求中的IP地址在较短时间内触发了多次数据访问请求,认为该数据访问请求的访问行为为恶意访问行为;或者,如果该数据访问请求的目的是访问或修改服务端计算设备的预设敏感信息,认为该数据访问请求的访问行为为恶意访问行为,等等。

  结合前文可知,本实施例中,响应探测请求报文的探测应答报文是数据计算设备根据该探测请求报文伪造的。具体来说,当探测请求报文实现为如前述实施例中提到的第一探测请求报文——ping请求报文1时,该探测请求报文中会包括诸如编号seq=0001、时间戳tick=37260、类型type=8等信息,基于此,伪造的探测应答报文可以是前文中的第一探测应答报文——ping应答报文a,该探测应答报文中携带有type=0,seq=0001,tick=37470,meta_reply=1.1.1.1等信息,其中,seq=0001,与探测请求报文中的seq保持一致,表明该探测应答报文与探测请求报文相对应;meta_reply字段是数据处理设备额外添加的字段,用以表征该探测应答报文是数据处理设备伪造的,以便于服务端计算设备能够区别客户端计算设备反馈的探测应答报文与数据处理设备反馈的探测应答报文,因为,客户端计算设备反馈的探测应答报文中不包含该meta_reply字段。

  在上述实施例中,由于客户端计算设备可以对应于前文所述的客户端,服务端计算设备可以对应于前文所述的服务端,数据计算设备对应于前文所述的镜像系统。因此,上述实施例相当于是镜像系统在获取到客户端发送至服务端的数据访问请求后,需要确定自己的报文响应延时是否符合要求,若符合要求,才能执行后续的访问行为识别及拦截过程。

  而实际应用中,当服务端某时刻确定出镜像系统的报文响应延时不符合要求时,可以使得相关人员及时对镜像系统进行性能维护,以保证其报文响应延时符合要求。基于此,可以认为镜像系统的报文响应延时一直被维护于符合要求的状态,从而,镜像系统在获取到客户端发送至服务端的数据访问请求时,可以直接对该数据访问请求进行访问行为恶意性识别,并在识别出数据访问请求为恶意访问行为时,向客户端发送访问终止报文。

  也就是说,可以由镜像系统执行一种访问行为识别方法,该镜像系统的报文响应延时符合要求,报文响应延时符合要求是指镜像系统成功获取到服务端发送至客户端的探测请求报文,并使得伪造的探测应答报文在设定时长内被发送至客户端。基于满足上述条件的镜像系统,该访问行为识别方法可以实现为:镜像系统获取到客户端发送至服务端的数据访问请求,对数据访问请求进行访问行为恶意性识别,若识别出数据访问请求为恶意访问行为,则向客户端发送访问终止报文。

  图12为本发明实施例提供的另一种访问行为识别方法的流程图。如图12所示,可以包括如下步骤:

  1201、数据计算服务获取到客户端计算设备发送至服务端计算设备的数据访问请求,数据计算服务部署在客户端计算设备或服务端计算设备中。

  1202、若数据计算服务的报文响应延时符合要求,则数据计算服务对数据访问请求进行访问行为的类别识别,报文响应延时符合要求是指数据计算服务获取到服务端计算设备发送至客户端计算设备的探测请求报文,并使得响应所述探测请求报文的探测应答报文在设定时长内被发送至客户端计算设备。

  1203、若识别出数据访问请求为预设类别的访问行为,则数据计算服务向客户端计算设备发送访问终止报文。

  可以认为前述图11所示实施例中的数据计算设备中部署有本实施例中的数据计算服务,而数据计算设备是独立于客户端计算设备和服务端计算设备的。而在本实施例中,该数据计算服务可以集成在客户端计算设备或服务端计算设备中。假设该数据计算服务部署在服务端计算设备中,服务端计算设备可以启动第一进程来执行该数据计算服务,启动第二进程执行与客户端计算设备之间的通信,第一进程可以通过进程间通信的方式获得第二进程上产生的通信数据,比如上述数据访问请求、探测请求报文。

  数据计算服务执行上述步骤的详细过程可以参见图11所示实施例的说明,在此不赘述。

  以下将详细描述本发明的一个或多个实施例的镜像系统性能检测装置。本领域技术人员可以理解,这些镜像系统性能检测装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。

  图13为本发明实施例提供的一种镜像系统性能检测装置的结构示意图,如图13所示,该装置包括:构造模块11、发送模块12、确定模块13。

  构造模块11,用于构造第一探测请求报文。

  发送模块12,用于将所述第一探测请求报文发送至客户端。

  确定模块13,用于若接收到镜像系统伪造的与所述第一探测请求报文对应的第一探测应答报文,则确定所述镜像系统成功获取到所述第一探测请求报文。

  可选地,所述第一探测请求报文为ping请求报文,所述第一探测应答报文为ping应答报文。

  可选地,所述第一探测应答报文中包括第一标识字段,所述第一标识字段用以表示所述第一探测应答报文是所述镜像系统伪造的探测应答报文。

  可选地,所述第一探测请求报文中包括编号信息;所述第一探测应答报文中包含所述编号信息。

  可选地,所述确定模块13还用于:对于所述客户端构造的多个第一探测请求报文,若所述镜像系统成功获取到的第一探测请求报文的数量小于设定值,则确定所述镜像系统不符合统计完整性要求。

  可选地,所述装置还包括:接收模块,用于接收到所述客户端响应于所述镜像系统发送的第二探测请求报文而反馈的第二探测应答报文,所述镜像系统在获取到所述第一探测请求报文后向所述客户端发送伪造的所述第二探测请求报文;以及,接收到所述客户端响应于所述第一探测请求报文而反馈的第三探测应答报文。相应地,所述确定模块13还可以用于:根据所述第一探测应答报文、所述第二探测应答报文和所述第三探测应答报文各自对应的时间戳以及所述第一探测请求报文对应的时间戳,确定在所述第一探测请求报文下所述镜像系统的报文响应延时。

  其中,所述确定模块13具体可以根据如下公式确定在所述第一探测请求报文下所述镜像系统的报文响应延时:

  ΔT=[T2+T1/2-T3]/2;

  其中,ΔT为在所述第一探测请求报文下所述镜像系统的报文响应延时,T1为所述第一探测应答报文对应的时间戳与所述第一探测请求报文对应的时间戳的差值,T2为所述第二探测应答报文对应的时间戳与所述第一探测请求报文对应的时间戳的差值,T3为所述第三探测应答报文对应的时间戳与所述第一探测请求报文对应的时间戳的差值。

  其中,可选地,所述第二探测请求报文为ping请求报文,所述第二探测应答报文和所述第三探测应答报文为ping应答报文。所述第二探测请求报文中包括第二标识字段,所述第二标识字段用以表示所述第二探测请求报文是所述镜像系统伪造的探测请求报文。所述第二探测应答报文中包括第三标识字段,所述第三标识字段用以表示所述第二探测应答报文是与所述镜像系统伪造的探测请求报文对应的探测应答报文。

  其中,可选地,所述确定模块13具体可以用于:若所述第一探测应答报文先于所述第二探测应答报文和所述第三探测应答报文被接收到,则根据所述第一探测应答报文、所述第二探测应答报文和所述第三探测应答报文各自对应的时间戳以及所述第一探测请求报文对应的时间戳,确定在所述第一探测请求报文下所述镜像系统的报文响应延时。

  可选地,所述确定模块13还可以用于:根据所述镜像系统的报文响应延时,确定所述镜像系统是否符合响应及时性要求。

  图13所示装置可以执行前述图1至图6所示实施例中服务端执行的步骤,本实施例未详细描述的部分,可参考前述实施例的相关说明,在此不再赘述。

  在一个可能的设计中,上述图13所示的镜像系统性能检测装置的结构可实现为一电子设备,如图14所示,该电子设备可以包括:第一处理器21、第一存储器22。其中,所述第一存储器22上存储有可执行代码,当所述可执行代码被所述第一处理器21执行时,使所述第一处理器21至少可以执行如前述图1至图6所示实施例中客户端执行的步骤。

  实际上,该电子设备中也可以包括第一通信接口23,用于与其他设备进行通信。

  另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以执行如前述图1至图6所示实施例中服务端执行的步骤。

  图15为本发明实施例提供的另一种镜像系统性能检测装置的结构示意图,如图15所示,该装置包括:获取模块31、伪造模块32、发送模块33。

  获取模块31,用于获取到服务端发送至客户端的第一探测请求报文;

  伪造模块32,用于伪造与所述第一探测请求报文对应的第一探测应答报文;

  发送模块33,用于将所述第一探测应答报文发送至所述服务端,以使所述服务端根据所述第一探测应答报文确定所述镜像系统成功检测到所述第一探测请求报文。

  可选地,所述第一探测请求报文为ping请求报文,所述第一探测应答报文为ping应答报文。所述第一探测应答报文中包括第一标识字段,所述第一标识字段用以表示所述第一探测应答报文是所述镜像系统伪造的探测应答报文。

  可选地,所述伪造模块32具体可以用于:提取所述第一探测请求报文中包含的编号信息;伪造包含所述编号信息的所述第一探测应答报文。

  可选地,所述伪造模块32还可以用于:根据所述第一探测请求报文伪造第二探测请求报文。相应地,所述发送模块33还可以用于:将所述第二探测请求报文发送至所述客户端,以使所述客户端响应于所述第二探测请求报文向所述客户端发送第二探测应答报文,供所述服务端根据所述第一探测应答报文、所述第二探测应答报文和第三探测应答报文各自对应的时间戳以及所述第一探测请求报文对应的时间戳,确定在所述第一探测请求报文下所述镜像系统的报文响应延时,所述第三探测应答报文是所述客户端响应于所述第一探测请求报文而反馈至所述服务端的。

  其中,可选地,所述第二探测请求报文为ping请求报文,所述第二探测应答报文和所述第三探测应答报文为ping应答报文。所述第二探测请求报文中包括第二标识字段,所述第二标识字段用以表示所述第二探测请求报文是所述镜像系统伪造的探测请求报文。所述第二探测应答报文中包括第三标识字段,所述第三标识字段用以表示所述第二探测应答报文是与所述镜像系统伪造的探测请求报文对应的探测应答报文。

  图15所示装置可以执行前述图9-图10所示实施例中镜像系统执行的步骤,本实施例未详细描述的部分,可参考前述实施例的相关说明,在此不再赘述。

  在一个可能的设计中,上述图15所示的镜像系统性能检测装置的结构可实现为一电子设备,如图16所示,该电子设备可以包括:第二处理器41、第二存储器42。其中,所述第二存储器42上存储有可执行代码,当所述可执行代码被所述第二处理器41执行时,使所述第二处理器41至少可以执行如前述图9-图10所示实施例中镜像系统执行的步骤。

  实际上,该电子设备中也可以包括第二通信接口43,用于与其他设备进行通信。

  另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以执行如前述图9-图10所示实施例中镜像系统执行的步骤。

  以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

  通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

  最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

《访问行为识别方法、性能检测方法、装置、设备和系统.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式(或pdf格式)