CN114826750B - 一种网络异常检测方法、服务器、服务器集群及存储介质 - Google Patents
一种网络异常检测方法、服务器、服务器集群及存储介质 Download PDFInfo
- Publication number
- CN114826750B CN114826750B CN202210474045.7A CN202210474045A CN114826750B CN 114826750 B CN114826750 B CN 114826750B CN 202210474045 A CN202210474045 A CN 202210474045A CN 114826750 B CN114826750 B CN 114826750B
- Authority
- CN
- China
- Prior art keywords
- retransmission
- service
- target
- data
- management server
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 135
- 230000005540 biological transmission Effects 0.000 claims abstract description 63
- 230000002159 abnormal effect Effects 0.000 claims description 51
- 238000000034 method Methods 0.000 claims description 49
- 230000005856 abnormality Effects 0.000 claims description 31
- 238000012545 processing Methods 0.000 claims description 30
- 238000012544 monitoring process Methods 0.000 claims description 8
- 230000003321 amplification Effects 0.000 claims description 4
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 87
- 230000000875 corresponding effect Effects 0.000 description 34
- 230000006870 function Effects 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000012360 testing method Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000012800 visualization Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000004888 barrier function Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 239000003999 initiator Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书实施例提供的一种网络异常检测方法、服务器、服务器集群及存储介质,在由多个服务器组成的服务器集群中包括多个业务服务器和管理服务器,多个业务服务器与管理服务器连接。由于多个业务服务器之间基于可靠传输协议进行数据传输,因此多个业务服务器之间会发生数据重传。当某一业务服务器监测到在向其他业务服务器发送业务数据和/或连接建立数据时发生了目标超时重传,则获取用于表征目标超时重传的重传参数,并将重传参数发送至管理服务器。管理服务器可以根据接收到的重传参数对该业务服务器与其他服务器之间的网络连接进行异常检测。
Description
技术领域
本说明书实施例涉及通信技术领域,尤其涉及一种网络异常检测方法、服务器、服务器集群及存储介质。
背景技术
随着电子产业与通信技术的快速发展,信息技术(Information Technology,IT)的应用和管理模式逐渐从独立且分散的功能性资源,发展成为以数据中心为主要作业平台的操作模式。数据中心包括服务器、环境控制设备、配电设备和不间断电源设备(Uninterruptible Power Supply,UPS),并且与容纳上述组件的建筑物如集装箱,共同组成机房形式的集中运算设备。
数据中心的多台服务器可以部署有一个或以上的业务系统。业务系统中的业务可以利用多台服务器进行协同处理。业务的协同处理依赖于多台服务器之间通过网络进行数据传输,包括业务的中间数据和/或结果数据的传输。因此,业务的完成情况和业务系统的服务质量与网络质量密切相关。为了保证业务的完成以及业务系统的服务质量,需要对服务器之间的网络进行异常检测。网络的异常检测需要占用一定的计算资源,造成资源开销。如何实现低开销的网络异常检测,是本领域亟待解决的技术问题。
发明内容
本说明书实施例提供了一种网络异常检测方法、服务器、服务器集群及存储介质,以实现低开销的网络异常检测。
根据本说明书实施例的第一方面,提供一种网络异常检测方法,应用在多个业务服务器中的至少一个,所述业务服务器与管理服务器连接,所述多个业务服务器之间基于可靠传输协议进行数据传输;所述方法包括:
监测向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传;所述连接建立数据用于建立与所述其他业务服务器的基于可靠传输协议的网络连接;
获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,以使所述管理服务器根据所述重传参数对本业务服务器与所述其他业务服务器之间的网络连接进行异常检测。
在一些例子中,所述可靠传输协议包括TCP/IP协议;所述业务服务器搭载有eBPF架构,所述eBPF架构包括用户态程序与内核态程序;
所述内核态程序,用于监测向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传,获取所述重传参数,并将所述重传参数发送至所述用户态程序;
所述用户态程序,用于将所述内核态程序加载至所述业务服务器的内核;以及将所述内核态程序发送的重传参数转发至所述管理服务器。
在一些例子中,所述监测向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传,包括:
获取发生超时重传时所述业务服务器所处的连接状态;
若所述连接状态包括ESTABLISHED、SYN_SENT或SYN_RCVD,确定所述业务服务器发生所述目标超时重传。
在一些例子中,所述业务服务器存储有目标目的IP地址,所述重传参数包括目的IP地址;所述获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,包括:
基于所述目的IP地址,确定与目标目的IP地址匹配的目标重传参数;
将所述目标重传参数发送至所述管理服务器。
在一些例子中,所述业务服务器传输的数据携带所述数据的处理优先级信息;所述获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,包括:
获取目标超时重传所传输的数据的处理优先级信息;
基于所述处理优先级信息,将满足优先级条件的目标超时重传对应的重传参数发送至所述管理服务器。
在一些例子中,所述获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,包括:
若在预设的采集周期内,目标超时重传的发生次数多于预设的第一次数阈值,获取预设数量的目标超时重传对应的重传参数;
将所述采集周期内获取的所有目标超时重传对应的重传参数发送至所述管理服务器。
在一些例子中,所述重传参数包括所述目标超时重传所传输的数据的五元组信息;所述方法还包括:
基于所述五元组信息,对获取的重传参数进行统计以获得统计数据;
将所述统计数据发送至所述管理服务器。
在一些例子中,所述重传参数至少包括所述目标超时重传的发生时间和/或所述目标超时重传所传输的数据的IP地址。
根据本说明书实施例的第二方面,提供一种网络异常检测方法,应用在管理服务器,所述管理服务器与多个业务服务器连接,所述多个业务服务器之间基于可靠传输协议进行数据传输;所述方法包括:
在预设的检测周期内,接收所述多个业务服务器发送的至少一次目标超时重传对应的重传参数;其中,所述目标超时重传是所述业务服务器在向其他业务服务器发送业务数据和/或连接建立数据时发生的;所述连接建立数据用于建立与所述其他业务服务器的基于可靠传输协议的网络连接;
根据所有目标超时重传对应的重传参数,对网络连接进行异常检测。
在一些例子中,所述重传参数包括所述目标超时重传的发生时间;所述根据所有目标超时重传对应的重传参数,对网络连接进行异常检测,包括:
基于每次所述目标超时重传的发生时间,判断在所述检测周期内发生的目标超时重传次数是否大于预设的第二次数阈值;
若是,确定所述网络连接发生异常。
在一些例子中,所述重传参数包括所述目标超时重传的发生时间,以及所述目标超时重传所传输的数据的IP地址;所述根据所有目标超时重传对应的重传参数,对网络连接进行异常检测,包括:
基于每次所述目标超时重传的发生时间以及所传输的数据的IP地址,确定目标IP地址在当前时间段内发生的目标超时重传的当前次数;
获取所述目标IP地址在历史时间段内发生的目标超时重传的历史次数;
若所述当前次数相较于所述历史次数的增幅大于预设的增幅阈值,确定所述网络连接发生异常。
在一些例子中,所述重传参数包括所述超时重传所传输的数据的IP地址;所述管理服务器存储有IP地址与业务的对应关系;所述方法还包括:
基于检测结果确定发生网络异常的异常IP地址;
基于所述异常IP地址,利用所述IP地址与业务的对应关系,确定异常业务。
根据本说明书实施例的第三方面,提供一种服务器,所述服务器包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器调用所述可执行指令时实现上述第一方面任一所述方法的操作,或上述第二方面任一所述方法的操作。
根据本说明书实施例的第四方面,提供一种服务器集群,所述服务器集群包括多个业务服务器与管理服务器,所述多个业务服务器与所述管理服务器进行数据传输;所述多个服务器之间基于可靠传输协议进行数据传输,
至少一个所述业务服务器,包括:
第一处理器;
用于存储处理器可执行指令的第一存储器;
其中,所述第一处理器调用所述可执行指令时实现如上述第一方面任一所述方法的操作;
所述管理服务器,包括:
第二处理器;
用于存储处理器可执行指令的第二存储器;
其中,所述第二处理器调用所述可执行指令时实现如上述第二方面任一所述方法的操作。
根据本说明书实施例的第五方面,提供一种计算机可读存储介质,所述计算机可读存储介质上存储有若干计算机指令,所述计算机指令被执行时执行上述第一方面任一所述的方法,或上述第二方面任一所述方法。
本说明书实施例提供的技术方案的有益效果将在下文展开说明。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
附图说明
此处的附图被并入说明书中并构成本说明书实施例的一部分,示出了符合本说明书实施例的实施例,并与说明书一起用于解释本说明书实施例的原理。
图1是本说明书根据一实施例示出的数据中心的示意图。
图2是本说明书根据一实施例示出的服务器集群的示意图。
图3是本说明书根据一实施例示出的一种网络异常检测方法的流程图。
图4是本说明书根据另一实施例示出的服务器集群的示意图。
图5是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图6是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图7是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图8是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图9是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图10是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图11是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图12是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图13是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图14是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图15是本说明书根据另一实施例示出的一种网络异常检测方法的流程图。
图16是本说明书根据一实施例示出的一种服务器的硬件结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书实施例的一些方面相一致的装置和方法的例子。
在本说明书实施例使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书实施例。在本说明书实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
随着电子产业与通信技术的快速发展,信息技术(Information Technology,IT)的应用和管理模式逐渐从独立且分散的功能性资源,发展成为以数据中心为主要作业平台的操作模式。数据中心包括服务器、环境控制设备、配电设备和不间断电源设备(Uninterruptible Power Supply,UPS),并且与容纳上述组件的建筑物如集装箱,共同组成机房形式的集中运算设备。
数据中心的多台服务器可以部署有一个或以上的业务系统。业务系统中的业务可以利用多台服务器进行协同处理。业务的协同处理依赖于多台服务器之间通过网络进行数据传输,包括业务的中间数据和/或结果数据的传输。因此,业务的完成情况和业务系统的服务质量与网络质量密切相关。
为了保证业务的完成以及业务系统的服务质量,需要对服务器之间的网络进行异常检测。网络异常可以包括但不限于以下若干种情况:物理链路断连、网络链路拥堵、网络中间节点设备(如交换机)发生故障等导致的网络无法正常传输数据。相关技术中,网络异常的检测方式有多种,作为例子,如图1所示,数据中心100包括服务器110-140。服务器110-140之间可以通过网络进行数据传输。以服务器110为例,服务器110可以主动向其他的服务器120-140发送请求报文,例如通过ping命令发送ICMP(Internet Control MessageProtocol,因特网报文控制协议)请求报文、TCP(Transmission Control Protocol,传输控制协议)请求报文、HTTP(Hyper Text Transfer Protocol,超文本传输协议)请求报文中的一种或多种。服务器120-140可以基于请求报文向服务器110返回响应报文。基于响应报文中携带的如丢包率、延时数据等可以用于评估网络质量的数据,可以检测服务器110与某一其他服务器之间的网络是否发生异常。
在上述的主动检测方式中,需要各服务器逐一向其他所有服务器主动发送请求报文。若数据中心包括N台服务器,那么所有服务器之间需要经过N*(N-1)/2次的请求报文发送,才能完成各服务器之间网络的异常检测。显然,当服务器数量较多时,网络中传输的用于检测网络异常的请求报文以及响应报文的数据量庞大,占用了大量的网络带宽;同时,处理数量庞大的响应报文也需要占用较多的计算资源,造成了较大的资源开销。
为了实现低开销的网络异常检测,本说明书实施例提出了一种网络异常检测方法。如图2所示,服务器集群200包括管理服务器210和业务服务器221-223。其中,服务器集群可以是上文所述的数据中心中多台服务器组成的集群。管理服务器210的数量可以是一个或多个,图2中仅示出一个管理服务器以作为示例。业务服务器221-223之间可以基于可靠传输协议进行数据传输,业务服务器221-223均与管理服务器210连接,其中,业务服务器221-223与管理服务器210之间的连接可以是基于任一传输协议的网络连接。业务服务器221-223可以搭载有一个或多个业务系统,业务系统中各业务可以利用多台业务服务器进行协同处理。所述方法应用于业务服务器221-223中的至少一个,所述方法包括如图3所示的步骤:
步骤310:监测向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传;所述连接建立数据用于建立与所述其他业务服务器的基于可靠传输协议的网络连接;
步骤320:获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,以使所述管理服务器根据所述重传参数对本业务服务器与所述其他业务服务器之间的网络连接进行异常检测。
多台业务服务器在协同处理业务时会产生业务数据,包括中间数据和/或结果数据。除了业务数据以外,业务服务器之间在建立和释放网络连接时,还会产生相应的连接建立数据和连接释放数据。连接建立数据用于建立业务服务器之间的基于可靠传输协议的网络连接;连接释放数据用于释放业务服务器之间的基于可靠传输协议的网络连接。业务的协同处理依赖于各服务器之间通过网络进行上述各种数据的传输。然而,网络异常经常会导致数据包在传输过程中丢失(以下简称丢包)和数据包延时送达(以下简称延时)。在一些场景中,若业务服务器之间基于可靠传输协议进行数据传输,那么在发生丢包和/或延时后便会发生数据重传。通过检测数据重传的发生,可以检测网络是否发生异常。
网络异常会导致数据重传的发生,然而数据重传不一定都是由网络异常引起的。例如,当服务器对数据处理不及时也会导致数据重传的发生,因此数据重传的发生并不一定意味着网络发生异常。发明人发现,若直接根据所有数据重传情况来进行网络异常检测,一方面会导致检测噪声较高,检测难度较大,同时检测结果准确度也较低;另一方面,由于需要对所有数据重传都进行分析处理,因此异常检测会占用较多计算资源,造成较大开销。
数据重传包括但不限于以下若干种类:超时重传、快速重传和尾包重传。超时重传是指发送端在发送数据时会开启一个计时器,若在一定时间内仍未收到接收端反馈的确认信息(如ACK报文),则会触发数据重传操作。其中,触发超时重传的时间段称为超时重传时间(Retransmission Time Out,RTO)。快速重传是指当发送端接收到接收端反馈的3次冗余确认信息时,立马触发数据重传操作,而不需要等待发送端的计时器超时再进行数据重传。在一次会话中,尾包是本次会话的最后一个数据包,无法利用快速重传来触发尾包的重传。为了提高数据传输效率,提出了尾包重传机制,也即当发送端在发送本次会话的尾包后,若超过预设时间未接收到接收端反馈的确认信息,则重新发送尾包。其中,触发尾包重传的预设时间短于触发超时重传的RTO。
在上述三种数据重传中,发明人发现,由于触发快速重传与尾包重传所需时间短于触发超时重传的RTO,如果网络发生短暂的抖动而非长时间的异常,那么通过快速重传和尾包重传便能将丢失的数据重新发送至接收端。但是如果网络发生了长时间的异常,快速重传与尾包重传均无法成功将丢失的数据重新发送至接收端,则会触发超时重传。因此,相较于其他两种数据重传,超时重传的发生与网络异常的相关性更大。
基于此,本说明书实施例提出了可以基于超时重传的发生来检测网络是否发生异常。然而,如上所述,业务服务器之间传输的数据包括但不限于业务数据、连接建立数据和连接释放数据。超时重传所重传的数据可以是上述任一种数据。从业务完成的角度上,业务服务器之间网络连接的建立以及业务数据的传输会影响业务的完成情况;而网络连接通常是在业务完成后进行释放,因此连接释放数据对业务完成情况的影响较小。也就是说,在业务数据和/或连接建立数据的传输过程中若因网络异常导致接收端无法接收到数据,对业务的完成情况有更重大的影响。如此,为了保证业务完成,在本说明书实施例中,可以关注业务数据和/或连接建立数据传输过程中发生的网络异常。也即,可以监测目标超时重传的发生。所谓目标超时重传,即业务服务器在向其他业务服务器发送业务数据和/或连接建立数据时发生的超时重传。而忽略其他不会影响业务完成的数据发送时发生的超时重传。
其中,业务服务器作为数据发送方可以监测到自身是否发生了目标超时重传。各业务服务器将监测到的目标超时重传的重传参数上报至管理服务器,以使管理服务器根据重传参数对各业务服务器之间的网络连接进行异常检测。
在一些实施例中,重传参数可以包括以下一种或多种:目标超时重传的发生时间、五元组信息、RTO、往返时延(Round Trip Time,RTT)、平滑往返时延(Smooth Round TripTime,SRTT)、本业务服务器的连接状态、重传数据所属进程等。其中,五元组信息包括源IP地址、目的IP地址、源端口、目的端口和传输层协议。
第一,与上述相关技术中主动检测方式相比,本说明书实施例利用了超时重传与网络异常强相关性的特点,基于目标超时重传的发生来被动检测网络异常,检测过程中只会监测少量的目标超时重传而无需额外向其他业务服务器发送用于检测的数据,因此少了网络异常检测的开销。
第二,以图2为例,在一些场景中,业务服务器221与业务服务器223虽然可以进行数据传输,但在实际业务处理过程中,业务服务器221与业务服务器223可能搭载了不同的业务系统,若两个业务系统之间未发生数据交互,那么业务服务器221与业务服务器223之间就不会产生数据传输。如此,尽管业务服务器221与业务服务器223之间的网络连接发生异常,也不会影响到业务处理以及业务系统的服务质量。也就是说,业务服务器221与业务服务器223之间的网络连接没有进行异常检测的必要。但在上述的主动检测方式中,业务服务器221还是有可能向业务服务器223主动发送请求报文以检测网络连接是否发生异常。显然,这样不必要的异常检测占用了一定的资源开销。但在本说明书实施例中,由于网络的异常检测是基于目标超时重传的发生而被动执行的,若业务服务器221与业务服务器223没有产生目标超时重传,就不会对该网络连接进行异常检测。网络异常检测与业务有强联系,因此不会发生如主动检测中不必要的异常检测,引入不必要的资源消耗。
第三,本说明书实施例从多种数据重传中确定出超时重传与网络异常的相关性更高,在被动检测中基于目标超时重传的发生进行网络异常检测,忽略其他种类数据重传的发生,从而降低了检测噪声以及检测难度的同时,还提高了检测结果的准确度。并且,在基于目标超时重传的被动检测中,还关注会影响业务完成的业务数据和/或连接建立数据的目标超时重传,忽略其他不会影响业务完成的数据的超时重传,进一步地减少了计算资源的占用,实现了低开销的网络异常检测。
第四,在一些场景中,若网络中间节点设备(如交换机)设置了数据流量的过滤规则,如ACL(Access Control List,访问控制列表)规则,例如设置了过滤的字段、协议类型等,若主动探测时发送的请问报文未命中ACL规则,请求报文允许通过,认为网络未发生异常。但在实际业务处理过程中,业务数据可能会命中ACL规则,无法传输到对端服务器。因此在主动检测的方法中,无法检测出非链路异常但网络不通的情况。而在本说明书实施例提供的被动检测方法中,由于目标超时重传数据本身就是业务处理过程中产生的流量数据,而非额外的探测流量数据,因此可以检测出主动检测所无法检测出的非链路异常但网络不通的情况。
第五,为了降低网络异常检测的资源开销,如在上述的主动检测方式中,可以对网络进行采样检测,也即只选取部分服务器之间的网络进行异常检测。这样采样检测的方法虽然能降低开销,但是无法实现全面覆盖的网络异常检测。同时,在有限的网络带宽与计算资源下,随着服务器数量增加,采样率会降低。可见,在相关技术中,网络异常检测往往难以兼得低开销与全面覆盖。而在本说明书实施例中,如上所述,业务服务器作为数据发送方可以监测到自身是否发生了目标超时重传。只要有目标超时重传的发生,目标超时重传的发起方就能监测到,因此能实现全面覆盖的网络异常检测。可见,本说明书实施例提供的一种网络异常检测方法,克服了主动检测方式中长期存在的难以兼得低开销与全面覆盖的技术壁垒。
在一些实施例中,多个业务服务器之间的可靠传输协议可以包括TCP/IP协议(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)或QUIC协议(Quick UDP Internet Connection,基于UDP的低时延的互联网传输层协议)。以基于TCP/IP协议的网络连接(以下简称TCP连接)为例,连接建立数据可以包括建立TCP连接时在三次握手中分别产生的数据。TCP连接建立时三次握手的过程可以参考相关技术,本说明书实施例在此不展开说明。
在一些实施例中,业务服务器搭载有eBPF(extended Berkeley Packet Filter)架构。eBPF是一种可以在Linux内核中运行用户编写的程序,而不需要修改内核代码或加载内核模块的技术。在另一些实施例中,业务服务器还可以搭载有systemtap工具,这是一种利用Linux内核调试技术Kprobe提供的API(Application Programming Interface,应用程序编程接口)来实现动态跟踪运行中的Linux内核的非破坏性工具。本领域技术人员可以根据业务服务器的操作系统版本,选择采用eBPF架构或systemtap工具。
以eBPF架构为例,eBPF架构包括用户态程序与内核态程序,如图4所示,业务服务器420的用户空间中加载有eBPF架构的用户态程序421,用于通过系统调用,将编译好的内核态程序423(也称eBPF字节码)加载到业务服务器420的内核中。在加载过程中,内核会对eBPF字节码进行安全验证,验证通过后eBPF字节码会被编译为eBPF机器码,即eBPF系统调用指令。最后将eBPF系统调用指令挂载到指定函数上。在本实施例中,指定函数可以包括数据重传发生时被调用的函数,例如tcp_enter_loss。由于eBPF系统调用指令挂载在指定函数上,因此当数据重传发生时,调用指定函数,相应的内核态程序423会被执行,以监测本业务服务器向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传。指定函数的输出结果可以包括重传参数,因此内核态程序423可以利用指定函数获取到重传参数,并将重传参数发送至用户态程序421。用户态程序421,还用于将内核态程序423发送的重传参数转发至管理服务器410。在一些实施例中,如图4所示,业务服务器420还包括传输模块422,用户态程序421将重传参数转发至管理服务器410,可以是通过传输模块422将重传参数转发至管理服务器410。也即传输模块422用于将用户态程序421接收到的重传参数上传至管理服务器410。
在一些实施例中,步骤310中目标超时重传的监测可以包括如图5所示的步骤:
步骤311:获取发生超时重传时所述业务服务器所处的连接状态;
步骤312:若所述连接状态包括ESTABLISHED、SYN_SENT或SYN_RCVD,确定所述业务服务器发生所述目标超时重传。
其中,步骤311-步骤312可以由eBPF架构中的内核态程序执行。如上所述,指定函数携带有重传参数,当超时重传发生时,调用指定函数,内核态程序可以利用指定函数获取到重传参数。重传参数可以包括本业务服务器的连接状态,因此,内核态程序可以从获取的重传参数中获取发生超时重传时本业务服务器所处的连接状态。
连接状态可以包括LISTEN、SYN_SENT、SYN_RCVD、ESTABLISHED、FIN_WAIT_1、FIN_WAIT_2、CLOSE_WAIT、CLOSING、LAST_ACK、TIME_WAIT、CLOSED。其中,当本业务服务器处于ESTABLISHED连接状态时,表示本业务服务器与其他业务服务器之间基于可靠传输协议的网络连接已经建立,在ESTABLISHED连接状态下传输的数据是业务数据。当本业务服务器处于SYN_SENT或SYN_RCVD连接状态时,表示本业务服务器正在与其他业务服务器建立基于可靠传输协议的网络连接,在SYN_SENT或SYN_RCVD连接状态下传输的数据是连接建立数据。如此,内核态程序可以通过重传参数中的连接状态,判断发生的超时重传是否为目标超时重传。
在一些实施例中,重传参数可以包括目的IP地址,业务服务器可以存储有目标目的IP地址。如图4所示,管理服务器410包括的控制模块415可以向业务服务器420中的用户态程序421发送目标目的IP地址的信息,使得业务服务器420可以存储有目标目的IP地址。如此,上述步骤320重传参数的获取与发送过程,可以包括如图6所示的步骤:
步骤321:基于所述目的IP地址,确定与目标目的IP地址匹配的目标重传参数;
步骤322:将所述目标重传参数发送至所述管理服务器。
其中,步骤321-步骤322可以由eBPF架构中的用户态程序执行。由于业务服务器存储有目标目的IP地址,用户态程序接收内核态程序发送的重传参数后,可以基于重传参数中的目的IP地址,从接收的所有重传参数中过滤出与目标目的IP地址匹配的目标重传参数,并将目标重传参数转发至管理服务器。
目标目的IP地址可以包括一个或以上,例如可以是同一网段中的所有IP地址。作为例子,网段可以包括业务网段、测试网段和其他网段。业务网段可以提供给业务系统执行业务时进行数据传输;测试网段可以提供给服务器集群执行测试任务时进行测试数据的传输;其他网络可以提供给执行其他任务时进行数据传输。为了保证业务完成,目标目的IP地址可以包括业务网段中的IP地址,以过滤掉其他非业务网段下目的IP地址对应的重传参数。使得管理服务器优先对业务网段进行网络异常分析,对于与业务无关的网段不进行或延缓进行网络异常分析。
作为另一个例子,通过IP地址的地址位可以识别出目标IP地址为内网IP地址还是互联网IP地址。在一些实施例中,管理服务器针对内网IP地址和互联网IP地址有不同的网络异常检测策略,具体的不同网络异常检测策略可以参考相关技术,本说明书实施例此不展开说明。如此,用户态程序可以基于重传参数中的目标IP地址,为重传参数标记上内网标记或互联网标记,以使管理服务器根据重传参数中的标记,采取不同的处理方式。在另一些实施例中,管理服务器可以只对内网进行网络异常检测。因此目标目的IP地址可以包括内网IP地址,以过滤掉互联网IP地址对应的重传参数。
作为另一个例子,业务服务器可以存储有目的IP地址的黑名单,若重传参数中的目的IP地址命中黑名单中的目的IP地址,则忽略该重传参数,不将该重传参数上传至管理服务器。
如此,用户态程序在发送重传参数前,可以先过滤出与管理服务器所需的目标目的IP地址匹配的目标重传参数,并将目标重传参数发送至管理服务器,减少了业务服务器与管理服务器之间不必要的传输数据量,从而节省了网络带宽,进一步降低开销。
在一些实施例中,业务服务器之间传输的数据携带该数据的处理优先级信息,作为例子,处理优先级信息可以记录在数据包IP头部DSCP(Differentiated Services CodePoint,差分服务代码点)字段中。DSCP字段使用6比特可以定义64个优先级(0-63)。当然,处理优先级信息还可以记录在如ToS字段等其他字段中,本说明书实施例对处理优先级信息的记录位置不进行限定。
对于处理优先级高的数据,在传输过程中若因为网络异常导致该数据未能得到及时处理,将会影响业务完成以及业务系统服务质量。因此可以优先对用于传输处理优先级高的数据的网络进行异常检测。如此,上述步骤320重传参数的获取与发送过程,可以包括如图7所示的步骤:
步骤323:获取目标超时重传所传输的数据的处理优先级信息;
步骤324:基于所述处理优先级信息,将满足优先级条件的目标超时重传对应的重传参数发送至所述管理服务器。
其中,步骤323-步骤324可以由eBPF架构中的用户态程序执行。优先级条件可以包括优先级大于预设优先级,即认为优先级大于预设优先级的数据为处理优先级高的数据。用户态程序基于处理优先级信息,对重传参数进行过滤,将满足优先级条件的重传参数发送至管理服务器,以使管理服务器优先对用于传输处理优先级高的数据的网络进行异常检测,以保证业务完成的时效性以及业务系统的服务质量。
在网络发生异常时,会在短时间内突发大量的目标超时重传,为了减轻管理服务器的计算压力,在一些实施例中,上述步骤320重传参数的获取与发送过程,可以包括如图8所示的步骤:
步骤325:若在预设的采集周期内,目标超时重传的发生次数多于预设的第一次数阈值,获取预设数量的目标超时重传对应的重传参数;
步骤326:将所述采集周期内获取的所有目标超时重传对应的重传参数发送至所述管理服务器。
其中,步骤325-步骤326可以由eBPF架构中的用户态程序执行。用户态程序可以对内核态程序在采集周期内所获取的所有重传参数进行选择性采样,选取预设数量的重传参数转发至管理服务器。采集周期可以根据实际需要设置,例如可以是30秒或60秒。预设数量以及第一次数阈值可以根据管理服务器的计算能力设置。选择性采样方法可以参照相关技术,本说明书实施例在此不做限制。如此,当网络中瞬间突发大量目标超时重传时,业务服务器可以选择性地将部分重传参数发送至管理服务器,以减轻管理服务器的计算压力。同时,由于当网络某一连接发生异常时,突发的目标超时重传中可能大部分目标超时重传对应的重传参数都携带了相同的信息,因此就算只选取部分目标超时重传对应的重传参数发送至管理服务器,也足以让管理服务器检测出发生异常的网络连接。
在一些实施例中,重传参数可以包括目标超时重传所传输的数据的五元组信息,在采集周期内,业务服务器可能发生了多次目标超时重传,那么业务服务器可以获取到多次目标超时重传对应的重传参数。如此,本说明书实施例提供的一种网络异常检测方法,还可以包括如图9所示的步骤:
步骤330:基于所述五元组信息,对获取的重传参数进行统计以获得统计数据;
步骤340:将所述统计数据发送至所述管理服务器。
其中,步骤330-步骤340可以由eBPF架构中的用户态程序执行。由于重传参数包括目标超时重传所传输的数据的五元组信息,因此业务服务器可以根据五元组信息对重传参数进行统计汇总。例如,可以根据目的IP地址、目的端口、源端口对重传参数进行统计汇总,并将统计数据与各重传参数一起发送至管理服务器。
此外,本说明书实施例还提供了一种网络异常方法,应用于如图4所示的多个业务服务器420中的至少一个。业务服务器420的用户空间中加载有eBPF架构的用户态程序421,内核空间中加载有eBPF架构的内核态程序423。如图10所示,当数据重传发生时,内核态程序被调用执行以下步骤:
步骤1011:当数据重传发生时,判断是否为超时重传;
如上所述,数据重传包括超时重传、快速重传和尾包重传。若是,则执行步骤1012,若否,则执行步骤1014。
步骤1012:判断业务服务器所处的连接状态是否为ESTABLISHED、SYN_SENT或SYN_RCVD;
若是,确定该次超时重传为目标超时重传,并执行步骤1013;若否,则执行步骤1014。
步骤1013:获取重传参数,并将重传参数发送至用户态程序。
其中,重传参数可以包括但不限于:目标超时重传的发生时间、五元组信息、RTO、RTT、SRTT、本业务服务器的连接状态、重传数据所属进程等。
步骤1014:忽略该次重传。
内核态程序执行步骤1011-步骤1014后,可以将目标超时重传对应的重传参数发送至用户态程序。随后,用户态程序针对接收到的每一条重传参数,可以执行步骤1021-步骤1022:
步骤1021:判断重传参数中的目的IP地址是否与黑名单中的目的IP地址匹配;
其中,黑名单中的目的IP地址可以包括一个或以上,例如可以是同一网段中的所有IP地址。作为例子,黑名单可以包括测试网段中的IP地址。在步骤1021中,判断结果若为否,则执行步骤1022,若为是,则执行步骤1014。
步骤1022:判断超时重传所传输的数据的处理优先级是否满足优先级条件;
若是,则执行步骤1023,若否,则执行步骤1014。
其中,本说明书实施例不限定步骤1021与步骤1022的执行顺序。
针对采集周期内用户态程序接收到的所有重传参数,执行步骤1023-步骤1025:
步骤1023:若在预设的采集周期内,超时重传的发生次数多于预设的第一次数阈值,获取预设数量的重传参数;
步骤1024:基于重传参数中的五元组信息,对获取的重传参数进行统计以获得统计数据;
步骤1025:将统计数据与采集周期内获取的重传参数通过传输模块转发至管理服务器。
本说明实施例提供的一种网络异常检测方法中,内核态程序负责从发生的数据重传中确定出与网络异常相关性高的目标超时重传,并获取目标超时重传对应的重传数据。同时拓展了用户态程序的功能,用户态程序除了负责将内核态程序加载至业务服务器的内核空间以外,还对内核态程序获取的重传数据进行采样、过滤和汇总,从而减少了业务服务器与管理服务器之间的数据传输量。
此外,本说明书实施例还提供了一种网络异常检测方法,应用在如图2所示的管理服务器210。管理服务器210与多个业务服务器221-223连接,业务服务器221-223之间可以基于可靠传输协议进行数据传输。业务服务器221-223与管理服务器210之间的连接可以是基于任一传输协议的网络连接。业务服务器221-223可以搭载有一个或多个业务系统,业务系统中各业务可以利用多台业务服务器进行协同处理。所述方法包括如图11所示的步骤:
步骤1110:在预设的检测周期内,接收所述多个业务服务器发送的至少一次目标超时重传对应的重传参数;
其中,所述目标超时重传是所述业务服务器在向其他业务服务器发送业务数据和/或连接建立数据时发生的;所述连接建立数据用于建立与所述其他业务服务器的基于可靠传输协议的网络连接;
步骤1120:根据所有目标超时重传对应的重传参数,对网络进行异常检测。
其中,预设的检测周期可以根据实际需要设定,作为例子,管理服务器预设的检测周期可以是业务服务器的采集周期的若干倍。管理服务器与服务器集群中的多个业务服务器连接,当业务服务器发生目标超时重传时,便会向管理服务器发送目标超时重传对应的重传参数。管理服务器可以接收到来自不同业务服务器发送的多次目标超时重传的重传参数。基于所有重传参数,管理服务器可以对网络连接进行异常检测。在一些实施例中,如图4所示,管理服务器410可以包括数据存储模块411和异常分析模块412。数据存储模块用于存储业务服务器发送的重传参数,即传输模块422发送的重传参数,并为后续的模块提供声明式语言支持。异常分析模块用于对重传参数进行汇总、分析,可以通过时间序列实时异常检测来判断网络是否发生异常。
在一些实施例中,重传参数可以包括目标超时重传的发生时间,如此,网络的时间序列实时异常检测可以包括如图12所示的步骤:
步骤1121:基于每次所述目标超时重传的发生时间,判断在所述检测周期内发生的目标超时重传次数是否大于预设的第二次数阈值;
步骤1122:若是,确定所述网络连接发生异常。
其中,步骤1121-步骤1122可以由管理服务器中的异常分析模块执行。统计检测周期内网络中目标超时重传的发生次数,若统计次数超过第二次数阈值,则说明网络中发生了大量的目标超时重传,此时可能是网络连接出现异常。
在一些实施例中,重传参数可以包括目标超时重传的发生时间,以及目标超时重传所传输的数据的IP地址。IP地址可以包括目的IP地址和/或源IP地址。如此,网络的时间序列实时异常检测可以包括如图13所示的步骤:
步骤1123:基于每次所述目标超时重传的发生时间以及所传输的数据的IP地址,确定目标IP地址在当前时间段内发生的目标超时重传的当前次数;
步骤1124:获取所述目标IP地址在历史时间段内发生的目标超时重传的历史次数;
步骤1125:若所述当前次数相较于所述历史次数的增幅大于预设的增幅阈值,确定所述网络连接发生异常。
其中,步骤1123-步骤1125可以由管理服务器中的异常分析模块执行。管理服务器中可以存储有历史时间段内发生的目标超时重传的历史次数。当前时间段与历史时间段可以为若干个检测周期。如在上述例子,若检测周期内网络中目标超时重传的发生次数小于预设的第二次数阈值,则会认定网络连接未发生异常。但在一些场景中,若某一IP地址在当前时间段内发生的目标超时重传的当前次数,远远大于历史时间段内发生的目标超时重传的历史次数,也即当前次数相较于历史次数的增幅大于预设的增幅阈值,那么就算整个网络中目标超时重传的发生次数小于第二次数阈值,也可以判断该IP地址对应的网络连接发生了异常。
在一些实施例中,如图4所示,管理服务器410还可以包括报警模块414,在异常分析模块412对网络连接进行异常检测,得到检测结果后,可以基于检测结果生成异常告警信息,并通过报警模块414输出检测结果和/或异常告警信息,以提示相关的技术人员对异常网络进行检修。
在一些实施例中,重传参数可以包括目标超时重传所传输的数据的IP地址。IP地址可以包括目的IP地址和/或源IP地址。管理服务器中可以存储有IP地址与业务的对应关系。如此,本说明书实施例提供的一种网络异常检测方法,还可以包括如图14所示的步骤:
步骤1130:基于检测结果确定发生网络异常的异常IP地址;
步骤1140:基于所述异常IP地址,利用所述IP地址与业务的对应关系,确定异常业务。
管理服务器根据所有目标超时重传对应的重传参数,可以对网络连接进行异常检测,得到检测结果。由于重传参数包括目标超时重传所传输的数据的IP地址,因此可以基于检测结果确定发生网络异常的异常IP地址。作为例子,可以将异常IP地址加入异常IP列表中。同时,由于管理服务器存储有IP地址与业务的对应关系,因此可以查找出发生异常的异常业务。
本实施例将IP地址与业务进行关联,一旦发生目标超时重传,意味着相应的网络连接上的数据无法及时发送和接收,此时必然会引起业务系统的抖动,导致业务异常。本实施例在检测出网络异常的同时还能定位出异常业务,网络异常检测与业务有强关联性,技术人员可以根据异常业务及时采取相应措施。
在本实施例中,重传参数还可以包括五元组信息,在管理服务器确定出发生网络异常的异常IP地址后,还可以基于异常IP地址以及五元组信息确定出异常访问拓扑。其中,如图4所示,管理服务器410还可以包括可视化模块413。在得到异常访问拓扑后,可以通过可视化模块向相关的技术人员展示异常访问拓扑,例如在显示屏幕中显示异常访问拓扑,使得检测结果可读性更强。
本说明书实施例还提供了一种网络异常检测方法,应用于如图4所示的管理服务器410。管理服务器410包括数据存储模块411、异常分析模块412、可视化模块413、报警模块414、控制模块415。其中,数据存储模块411与控制模块415所实现的功能参见上文,在此不再赘述。如图15所示,针对检测周期内接收到的重传参数,执行步骤1511-步骤1513:
步骤1511:基于重传参数,对网络连接进行时间序列实时异常检测,得到检测结果;
其中,重传参数包括目标超时重传的发生时间,以及目标超时重传所传输的数据的五元组信息。时间序列实时异常检测方式可以参照上文实施例,在此不再赘述。
步骤1512:基于检测结果,确定异常IP地址;
步骤1513:基于异常IP地址与五元组信息,确定出异常访问拓扑;
在得到检测结果与异常访问拓扑后,管理服务器410的可视化模块413可以执行步骤1520,报警模块414可以执行步骤1530。
步骤1520:将异常访问拓扑进行可视化输出。
步骤1530:基于异常检测结果生成异常告警信息,并输出检测结果和/或异常告警信息。
本说明书实施例提供了一种网络异常检测方法,在由多个服务器组成的服务器集群中包括多个业务服务器和管理服务器,多个业务服务器与管理服务器连接。由于多个业务服务器之间基于可靠传输协议进行数据传输,因此多个业务服务器之间会发生数据重传。当某一业务服务器监测到在向其他业务服务器发送业务数据和/或连接建立数据时发生了目标超时重传,则获取用于表征目标超时重传的重传参数,并将重传参数发送至管理服务器。管理服务器可以根据接收到的重传参数对该业务服务器与其他服务器之间的网络连接进行异常检测。
与相关技术中主动检测方式相比,本说明书实施例是被动检测方式,只会在网络异常时监测少量的目标超时重传而无需额外向其他业务服务器发送用于检测的数据,因此对业务服务器开销较低。同时,被动检测方式与业务强相关,不会对与业务无关的网络连接进行异常检测,减少了不必要的异常检测。此外,在被动检测中基于目标超时重传的发生进行网络异常检测,忽略其他种类数据重传的发生,从而降低了检测噪声以及检测难度的同时,还提高了检测结果的准确度。以及关注了会影响业务完成的业务数据和/或连接建立数据的目标超时重传,忽略其他不会影响业务完成的数据的超时重传,进一步地减少了降低了计算资源的占用。在被动检测方式中,只要有目标超时重传的发生,目标超时重传的发起方就能监测得到,因此能实现全面覆盖的网络异常检测,同时克服了主动检测方式中长期存在的难以兼得低开销与全面覆盖的技术壁垒。
基于上述任意实施例所述的一种网络异常检测方法,本说明书实施例还提供了如图16所示的一种服务器的结构示意图。其中,该服务器可以是如图2所示的服务器集群200中的管理服务器210,也可以是业务服务器221-223。如图16,在硬件层面,该服务器包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述任意实施例所述的一种网络异常检测方法。
基于上述任意实施例所述的一种网络异常检测方法,本说明书实施例还提供了如图2所示的一种服务器集群200的结构示意图。服务器集群包括管理服务器与多个业务服务器。多个业务服务器与所述管理服务器进行数据传输;多个服务器之间基于可靠传输协议进行数据传输。其中,在硬件层面上,至少一个业务服务器包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述任意实施例所述的一种网络异常检测方法。管理服务器包括处理器、内部总线、网络接口、内存以及非易失性存储器,当然还可能包括其他业务所需要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现上述任意实施例所述的一种网络异常检测方法。
基于上述任意实施例所述的一种网络异常检测方法,本说明书实施例还提供了一种计算机存储介质,存储介质存储有计算机程序,计算机程序被处理器执行时可用于执行上述任意实施例所述的一种网络异常检测方法。
上述对本说明书实施例特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本领域技术人员在考虑说明书及实践这里申请的发明后,将容易想到本说明书实施例的其它实施方案。本说明书实施例旨在涵盖本说明书实施例的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书实施例的一般性原理并包括本说明书实施例未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书实施例的真正范围和精神由下面的权利要求指出。
Claims (14)
1.一种网络异常检测方法,应用在多个业务服务器中的至少一个,所述业务服务器与管理服务器连接,所述多个业务服务器之间基于可靠传输协议进行数据传输;所述业务服务器传输的数据携带所述数据的处理优先级信息;所述方法包括:
监测向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传;所述连接建立数据用于建立与所述其他业务服务器的基于可靠传输协议的网络连接;
获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,以使所述管理服务器根据所述重传参数对本业务服务器与所述其他业务服务器之间的网络连接进行异常检测;
所述获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,包括:
获取目标超时重传所传输的数据的处理优先级信息;
基于所述处理优先级信息,将满足优先级条件的目标超时重传对应的重传参数发送至所述管理服务器。
2.根据权利要求1所述的方法,所述可靠传输协议包括TCP/IP协议;所述业务服务器搭载有eBPF架构,所述eBPF架构包括用户态程序与内核态程序;
所述内核态程序,用于监测向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传,获取所述重传参数,并将所述重传参数发送至所述用户态程序;
所述用户态程序,用于将所述内核态程序加载至所述业务服务器的内核;以及将所述内核态程序发送的重传参数转发至所述管理服务器。
3.根据权利要求1所述的方法,所述监测向其他业务服务器发送业务数据和/或连接建立数据时发生的目标超时重传,包括:
获取发生超时重传时所述业务服务器所处的连接状态;
若所述连接状态包括ESTABLISHED、SYN_SENT或SYN_RCVD,确定所述业务服务器发生所述目标超时重传。
4.根据权利要求1所述的方法,所述业务服务器存储有目标目的IP地址,所述重传参数包括目的IP地址;所述获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,包括:
基于所述目的IP地址,确定与目标目的IP地址匹配的目标重传参数;
将所述目标重传参数发送至所述管理服务器。
5.根据权利要求1所述的方法,所述获取用于表征所述目标超时重传的重传参数,并将所述重传参数发送至所述管理服务器,包括:
若在预设的采集周期内,目标超时重传的发生次数多于预设的第一次数阈值,获取预设数量的目标超时重传对应的重传参数;
将所述采集周期内获取的所有目标超时重传对应的重传参数发送至所述管理服务器。
6.根据权利要求1所述的方法,所述重传参数包括所述目标超时重传所传输的数据的五元组信息;所述方法还包括:
基于所述五元组信息,对获取的重传参数进行统计以获得统计数据;
将所述统计数据发送至所述管理服务器。
7.根据权利要求1所述的方法,所述重传参数至少包括所述目标超时重传的发生时间和/或所述目标超时重传所传输的数据的IP地址;所述管理服务器存储有IP地址与业务的对应关系,以使所述管理服务器基于检测结果确定发生网络异常的异常IP地址,以及基于所述异常IP地址,利用所述IP地址与业务的对应关系,确定异常业务。
8.一种网络异常检测方法,应用在管理服务器,所述管理服务器与多个业务服务器连接,所述多个业务服务器之间基于可靠传输协议进行数据传输;所述业务服务器传输的数据携带所述数据的处理优先级信息;所述方法包括:
在预设的检测周期内,接收所述多个业务服务器发送的至少一次目标超时重传对应的重传参数;其中,所述目标超时重传是所述业务服务器在向其他业务服务器发送业务数据和/或连接建立数据时发生的;所述连接建立数据用于建立与所述其他业务服务器的基于可靠传输协议的网络连接;
所述重传参数是所述业务服务器基于处理优先级信息,确定的满足优先级条件的目标超时重传对应的重传参数,所述处理优先级信息是所述业务服务器获取的所述目标超时重传所传输的数据的处理优先级信息;
根据所有目标超时重传对应的重传参数,对网络连接进行异常检测。
9.根据权利要求8所述的方法,所述重传参数包括所述目标超时重传的发生时间;所述根据所有目标超时重传对应的重传参数,对网络连接进行异常检测,包括:
基于每次所述目标超时重传的发生时间,判断在所述检测周期内发生的目标超时重传次数是否大于预设的第二次数阈值;
若是,确定所述网络连接发生异常。
10.根据权利要求8所述的方法,所述重传参数包括所述目标超时重传的发生时间,以及所述目标超时重传所传输的数据的IP地址;所述根据所有目标超时重传对应的重传参数,对网络连接进行异常检测,包括:
基于每次所述目标超时重传的发生时间以及所传输的数据的IP地址,确定目标IP地址在当前时间段内发生的目标超时重传的当前次数;
获取所述目标IP地址在历史时间段内发生的目标超时重传的历史次数;
若所述当前次数相较于所述历史次数的增幅大于预设的增幅阈值,确定所述网络连接发生异常。
11.根据权利要求8所述的方法,所述重传参数包括所述超时重传所传输的数据的IP地址;所述管理服务器存储有IP地址与业务的对应关系;所述方法还包括:
基于检测结果确定发生网络异常的异常IP地址;
基于所述异常IP地址,利用所述IP地址与业务的对应关系,确定异常业务。
12.一种服务器,所述服务器包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器调用所述可执行指令时实现权利要求1-7任一所述方法的操作,或权利要求8-11任一所述方法的操作。
13.一种服务器集群,所述服务器集群包括多个业务服务器与管理服务器,所述多个业务服务器与所述管理服务器进行数据传输;所述多个服务器之间基于可靠传输协议进行数据传输,
至少一个所述业务服务器,包括:
第一处理器;
用于存储处理器可执行指令的第一存储器;
其中,所述第一处理器调用所述可执行指令时实现权利要求1-7任一所述方法的操作;
所述管理服务器,包括:
第二处理器;
用于存储处理器可执行指令的第二存储器;
其中,所述第二处理器调用所述可执行指令时实现权利要求8-11任一所述方法的操作。
14.一种计算机可读存储介质,所述计算机可读存储介质上存储有若干计算机指令,所述计算机指令被执行时执行权利要求1-7任一所述的方法,或权利要求8-11任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210474045.7A CN114826750B (zh) | 2022-04-29 | 2022-04-29 | 一种网络异常检测方法、服务器、服务器集群及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210474045.7A CN114826750B (zh) | 2022-04-29 | 2022-04-29 | 一种网络异常检测方法、服务器、服务器集群及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114826750A CN114826750A (zh) | 2022-07-29 |
CN114826750B true CN114826750B (zh) | 2024-02-06 |
Family
ID=82510999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210474045.7A Active CN114826750B (zh) | 2022-04-29 | 2022-04-29 | 一种网络异常检测方法、服务器、服务器集群及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114826750B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6772375B1 (en) * | 2000-12-22 | 2004-08-03 | Network Appliance, Inc. | Auto-detection of limiting factors in a TCP connection |
CN107018070A (zh) * | 2016-01-28 | 2017-08-04 | 南水北调中线干线工程建设管理局 | 一种异构多模网关设备及其传输方法和应用 |
CN107332741A (zh) * | 2017-08-25 | 2017-11-07 | 广东欧珀移动通信有限公司 | 一种网络检测方法、网络检测装置及智能终端 |
CN107360059A (zh) * | 2017-07-28 | 2017-11-17 | 广东欧珀移动通信有限公司 | 网络检测方法、网络检测装置及智能终端 |
CN108769805A (zh) * | 2018-06-11 | 2018-11-06 | 广州酷狗计算机科技有限公司 | 数据传输方法、装置、计算机设备及存储介质 |
CN110138608A (zh) * | 2019-05-09 | 2019-08-16 | 网宿科技股份有限公司 | 网络业务服务质量管理的方法及服务器 |
CN111010617A (zh) * | 2019-11-05 | 2020-04-14 | 网宿科技股份有限公司 | 一种传输质量检测方法、系统及设备 |
WO2021212756A1 (zh) * | 2020-04-23 | 2021-10-28 | 平安科技(深圳)有限公司 | 指标异常分析方法、装置、电子设备及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070078589A1 (en) * | 2005-10-05 | 2007-04-05 | Antonio Magnaghi | Detecting anomalies internal to a network from traffic external to the network |
CN102118653B (zh) * | 2009-12-31 | 2012-12-26 | 华为技术有限公司 | 保障网络电视直播业务的业务服务质量的方法和设备 |
JP5230824B2 (ja) * | 2010-01-06 | 2013-07-10 | 三菱電機株式会社 | 無線通信装置および無線通信方法 |
-
2022
- 2022-04-29 CN CN202210474045.7A patent/CN114826750B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6772375B1 (en) * | 2000-12-22 | 2004-08-03 | Network Appliance, Inc. | Auto-detection of limiting factors in a TCP connection |
CN107018070A (zh) * | 2016-01-28 | 2017-08-04 | 南水北调中线干线工程建设管理局 | 一种异构多模网关设备及其传输方法和应用 |
CN107360059A (zh) * | 2017-07-28 | 2017-11-17 | 广东欧珀移动通信有限公司 | 网络检测方法、网络检测装置及智能终端 |
CN107332741A (zh) * | 2017-08-25 | 2017-11-07 | 广东欧珀移动通信有限公司 | 一种网络检测方法、网络检测装置及智能终端 |
CN108769805A (zh) * | 2018-06-11 | 2018-11-06 | 广州酷狗计算机科技有限公司 | 数据传输方法、装置、计算机设备及存储介质 |
CN110138608A (zh) * | 2019-05-09 | 2019-08-16 | 网宿科技股份有限公司 | 网络业务服务质量管理的方法及服务器 |
CN111010617A (zh) * | 2019-11-05 | 2020-04-14 | 网宿科技股份有限公司 | 一种传输质量检测方法、系统及设备 |
WO2021212756A1 (zh) * | 2020-04-23 | 2021-10-28 | 平安科技(深圳)有限公司 | 指标异常分析方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114826750A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11671342B2 (en) | Link fault isolation using latencies | |
Yu et al. | Profiling network performance for multi-tier data center applications | |
US10469364B2 (en) | System and method for real-time load balancing of network packets | |
US8122082B2 (en) | System and method for detecting a proxy between a client and a server | |
US8204986B2 (en) | Multi-hierarchy latency measurement in data centers | |
CN1812412A (zh) | 用于检测TCP网络连接上进行Nagle的系统和方法 | |
KR20060094861A (ko) | 원격 디버깅 동작을 용이하게 하는 시스템 및 방법 | |
JP2004528648A (ja) | Tcp接続における制限因子の自動検出 | |
JP2007533215A (ja) | アクティブプロービングによるipネットワーク性能の監視および分析を自動化し、スケーリングするための方法および装置 | |
JP2007533215A5 (zh) | ||
US20210092036A1 (en) | Network monitoring method and network monitoring apparatus | |
CN115037658B (zh) | 基于bpf的计量主站网络检测方法及计量主站 | |
US20220368606A1 (en) | Fault Detection Model Training Method, Apparatus, and System | |
CN102209010A (zh) | 一种网络测试系统和方法 | |
CN112866338B (zh) | 一种服务器状态检测的方法及装置 | |
CN114826750B (zh) | 一种网络异常检测方法、服务器、服务器集群及存储介质 | |
EP1330889A2 (en) | Server and network performance monitoring | |
CN103227781A (zh) | 基于用户数据报协议的网络诊断及性能评估系统和方法 | |
US20140086091A1 (en) | Method, apparatus, and system for analyzing network transmission characteristic | |
Vacirca et al. | An algorithm to detect TCP spurious timeouts and its application to operational UMTS/GPRS networks | |
CN114095398A (zh) | 探测时延的确定方法、装置、电子设备及存储介质 | |
US10033609B1 (en) | Low impact passive monitoring of application performance | |
Zhang et al. | High fidelity off-path round-trip time measurement via TCP/IP side channels with duplicate SYNs | |
Rewaskar et al. | Why don’t delay-based congestion estimators work in the real-world | |
CN114710424B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |