CN115315922A - 检测指示网络操作特性的度量并基于检测到的异常进行识别和控制 - Google Patents

检测指示网络操作特性的度量并基于检测到的异常进行识别和控制 Download PDF

Info

Publication number
CN115315922A
CN115315922A CN202080063026.4A CN202080063026A CN115315922A CN 115315922 A CN115315922 A CN 115315922A CN 202080063026 A CN202080063026 A CN 202080063026A CN 115315922 A CN115315922 A CN 115315922A
Authority
CN
China
Prior art keywords
anomaly detection
detection threshold
dynamic
anomaly
metric
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
CN202080063026.4A
Other languages
English (en)
Inventor
赵莉婷
S·柯蒂帕利
杨振国
B·鲁特科夫斯基
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN115315922A publication Critical patent/CN115315922A/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/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0609Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on severity or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0627Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time by acting on the notification or alarm source
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Algebra (AREA)
  • Mathematical Optimization (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Debugging And Monitoring (AREA)

Abstract

机器学习异常检测系统接收指示计算系统架构的操作特性的度量时序。识别度量值的分布,并且识别在当前评估时段期间检测到的度量的量。基于所检测到的度量的分布和量,生成动态异常检测门限。将来自当前评估时段的度量值与动态异常检测门限进行比较,以确定当前评估时段中的度量值是否异常。如果是,则生成动作信号。

Description

检测指示网络操作特性的度量并基于检测到的异常进行识别 和控制
背景技术
计算机系统目前被广泛使用。一些计算机系统托管可以由客户端或租户设备通过网络访问的服务。一些系统检测指示关于服务与客户端或租户设备的交互的某些特性的度量。可以通过各种不同类型的检测器在客户端侧和服务器侧二者检测这些特性。检测器可以检测诸如客户端系统连接到服务的成功率、各种不同延时、请求所采用的网络路径等事项。可以将检测到的度量聚合到表征架构的操作特性的信号时序中。
一些系统对信号时序执行信号处理,以检测架构中的操作问题。例如,一些信号处理可以用于识别信号时序中的异常,以便识别计算系统的操作特性中的异常行为。
在信号处理系统中,一些模型尝试基于与正常度量模式的偏差来预测或识别异常。
上文的讨论仅为了提供一般背景信息,而非旨在用来辅助确定所要求保护的发明主题的范围。
发明内容
机器学习异常检测系统接收指示计算系统架构的操作特性的度量时序。识别度量值的分布,并且识别在当前评估时段期间检测到的度量的量。基于所检测到的度量的分布和量,生成动态异常检测门限。将来自当前评估时段的度量值与动态异常检测门限进行比较,以确定当前评估时段中的度量值是否异常。如果是,则生成动作信号。
提供本发明内容以便以简化的形式对下面在具体实施方式中进一步描述的一组设计构思进行介绍。本发明内容并不旨在标识要求保护的发明主题的关键特征或重要特征,也不旨在用于协助确定要求保护的发明主题的范围。要求保护的发明主题不局限于解决背景技术中指出的任意或所有缺点的实施方式。
附图说明
图1是计算系统架构的一个示例的框图。
图2是更详细地示出机器学习异常检测系统的一个示例的框图。
图3A和图3B(在本文中被统称为图3)示出了流程图,该流程图示出了在识别计算系统架构的操作中的异常时图1所示的架构的操作的一个示例。
图4A和图4B(在本文中被统称为图4)示出了流程图,该流程图更详细地示出了在识别异常时图1和图2所示的机器学习异常检测系统的操作的一个示例。
图5示出了动态异常检测门限的一个示例。
图6示出了应用动态异常检测门限的结果的一个示例。
图7是示出云计算架构中部署的、图1所示的计算系统架构的一个示例的框图。
图8是示出了可以用于前图所示的架构中的计算环境的一个示例的框图。
具体实施方式
如上文所讨论的,一些系统已经尝试检测指示计算系统架构的操作特性的事件。所检测事件可以由度量值来代表。基于对事件的检测而随时间生成度量值时序。一些系统已经尝试识别所检测事件的时序中的异常,这可能是困难的,因为度量值时序的模式可能随时间而自然地变化。
例如,不同的时序可以具有不同的模式,例如季节性模式、稳定模式和不稳定模式。类似地,甚至时序的已知模式也可能随时间变化。
一些系统识别度量值的正态分布,所述度量值表征计算系统的操作。可以在历史值集合上识别正态分布。正态分布意味着大多数数据值通常以对称方式围绕均值聚合。距均值越远,值出现的可能性就越小。正态分布的标准差定义正态分布在均值周围的散布范围。在正态分布的度量值集合中,所有值中的大约68%介于均值两侧的一个标准差之间。所有值中的大约95%落在均值两侧的两个标准差之内,所有值中的大约99.7%落在均值两侧的三个标准偏差之内。
为了本讨论的目的,假设表征计算系统架构的操作特性(由所检测事件指示)的度量值是正态分布的。因此,度量值时序通常符合上文针对正态分布讨论的规则。
作为示例,假设计算系统架构的检测到的操作特性是做出网络连接请求的成功率。可以通过检测对连接到服务的请求(请求事件)以及成功或失败的连接(连接或失败的连接事件)来识别该操作特性(连接成功率)。例如,如果客户端计算系统尝试连接到服务计算系统,则检测到的度量指示该所请求的连接是否成功。指示网络连接成功率的值时序大致呈正态分布。因此,可以通过计算历史数据分布的均值和标准差来识别异常门限。可以使用均值和标准差来区分正常度量值和异常度量值(例如,区分连接成功率是正常还是异常)。因为数据的分布可以随时间变化,所以本描述针对使用滑动历史窗口进行,在该窗口上计算正态分布的均值和标准差。取决于特定度量时序所代表的事件,窗口可以以不同的频率滑动。例如,它可以每5分钟、每小时、每天滑动一次,或者它可以基于数据变化的频率来滑动,或者以其他方式滑动。
本文的讨论还认识到,应当基于正在考虑的度量值的量来设置异常门限。例如,再次假设正在分析的度量是网络连接成功率。如果正在分析的数据是在半夜获取的,则该请求次数与办公时间期间的请求次数相比可能很小。因此,即使连接请求失败的次数相对较少,也会导致成功的连接大幅下降,因为请求的总数非常小。
因此,本讨论针对基于量来设置动态异常检测门限来进行。本文讨论的异常检测门限根据正在分析的度量的量而动态变化。当量较大时,将更严格(更高)地设置异常门限。这是因为,在请求量较大时,成功请求数量的相对较小的减少将不会那么明显,而当请求量较小时,相对较小数量的未成功请求将对连接成功率有更大的影响。因此,异常检测门限是动态的,并且在量较高时设置为较高而在量较低时设置为较低。
图1是示出计算系统架构100的一个示例的框图。架构100包括远程服务器(云)计算系统102和多个客户端计算系统104-106。示出了客户端计算系统104和106通过网络108访问远程服务器计算系统102。在一个示例中,远程服务器计算系统102托管由客户端计算系统104-106通过网络108访问的应用或服务。因此,网络108可以是广域网、局域网、近场通信网络、蜂窝通信网络、或者各种各样的其他网络中的任何之一或网络的组合。图1还示出了连接到网络108的项目也可以访问其他计算系统110和/或也被其他计算系统110访问。
图1还示出了客户端计算系统104生成一个或多个用户接口112以供用户114进行交互。用户114说明性地与用户接口112交互,以便控制和操纵远程服务器计算系统102的一些部分以及客户端计算系统104。
客户端计算系统106也可以说明性地由用户115访问。用户115可以控制远程服务器计算系统102的一些部分以及客户端计算系统106。
客户端计算系统104和106可以是相似或不同的。为了本讨论,假设它们是相似的,从而更详细地描述了仅客户端计算系统104。客户端计算系统104可以包括一个或多个处理器或服务器116、数据存储装置118、用户接口系统120、远程服务器连接系统122、操作特性(连接性、延时等)检测器124,并且其可以包括各种各样的其他客户端计算系统功能单元126。
在本文讨论的示例中,客户端计算系统104包括建立与远程服务器计算系统102的连接的远程服务器连接系统122。操作特性检测器124检测指示客户端计算系统104和架构100的各种操作特性(或从中可以导出这些操作特性)的事件。它可以通过网络108间歇地将那些特性(或指示那些特性的度量值)发送到远程服务器计算系统102。例如,检测器124可以检测客户端计算系统104与远程服务器计算系统102的连接成功率。连接成功率可以通过检测事件并生成指示那些事件的度量来表征。举例而言,检测器124可以检测其中系统122请求与计算系统102的连接的请求。检测器124还可以检测请求何时成功并确定远程服务器连接系统122请求连接到远程服务器计算系统102的次数相对于请求成功的次数的百分比,并且实际建立了连接。检测器124可以将其表征为指示连接请求成功的时间百分比(连接成功率)的百分比值。
检测器124还可以检测其他度量,例如延时(从将请求发送到远程服务器计算系统102到接收到响应之间的时间)。检测器124还可以生成度量值(其可以是时间值),该度量值指示客户端计算系统104经历的平均请求延时或每个请求延时。
检测器124可以检测各种各样的其他操作特性、或者可以从中导出操作特性的事件。这些可以包括诸如请求通过网络108路由到远程服务器计算系统102之类的事项,以及各种各样的其他事件或操作特性。
用户接口系统120说明性地生成用户接口112,并且检测与那些用户接口112的用户交互。它可以提供对与客户端计算系统104和远程服务器计算系统102中的其他项目的所检测到的交互的指示。
远程服务器计算系统102说明性地包括一个或多个处理器或服务器130、数据存储装置132、操作特性检测器134、服务后端功能单元136、服务前端功能单元138、通信系统140、反馈系统142、机器学习系统144、机器学习异常检测系统146、动作信号生成器148,并且它还可以包括其他功能单元149。动作信号生成器148本身可以包括控制信号生成器150、警告生成器152,并且它可以包括各种各样的其他项目154。在描述架构100的整体操作之前,将首先提供对远程服务器计算系统102中的一些项目及其操作的简要描述。
数据存储装置132可以存储用于各种客户端或租户的客户端数据。服务前端功能单元138可以展示可由客户端计算系统104-106(或由系统102托管的服务的客户端组件)访问的应用程序编程接口或其他接口。服务前端功能单元138可以将请求传递给服务后端功能单元136,该服务后端功能单元136基于请求执行动作并访问和操纵数据存储装置132中的用户数据。
从远程服务器计算系统102的角度来看,与客户端计算系统104上的操作特性检测器124类似,操作特性检测器134可以检测操作特性或者可以从中导出操作特性的事件,并且生成指示那些特性的度量。因此,检测器134可以检测各种各样的事件或操作特性中的各种连接问题(例如,客户端计算系统断开连接的次数)、各种延时。
通信系统140可以实现远程服务器计算系统102的各个项目之间的通信。它也可以促进与架构100中的其他项目的通信。
机器学习异常检测系统146说明性地从操作特性检测器134以及从客户端计算系统104-106上的各种操作特性检测器124接收指示检测到的操作特性的度量。系统146说明性地随时间而接收那些度量值(或随时间而接收已经被聚合或检测的度量值集合)作为值时序。系统146检测那些值中的异常,这些异常指示由那些值感测和代表的操作特性中的异常。系统146通过使用动态函数生成动态异常检测门限来检测异常,该动态函数产生随量而变化的门限值。下文中更加详细地对其进行了描述。系统146将当前值(或代表性值)与门限进行比较,并且生成指示所检测到的异常的、指向动作信号生成器148的输出。
动作信号生成器148基于所检测到的异常来生成动作信号。例如,控制信号生成器150可以生成用于自动执行补救步骤来纠正异常操作特性的控制信号。举例而言,如果异常指示与特定客户端计算系统104或客户端计算系统集合的连接成功率相对较低,则控制信号生成器150可以生成用于自动将更多资源分配给服务于客户端计算系统104的服务区域的控制信号。它也可以向从客户端计算系统104接收的请求分配更多的计算资源(就虚拟机或其他计算资源而言)。
警告生成器152可以生成警告信号,该警告信号被提供给工程师或其他用户(例如在其他计算系统110处)。然后,这些用户可以发起调查并且基于警告来采取补救动作。
异常检测系统146可能错误地检测到实际上没有发生的异常,或者错误地未能检测到异常行为。在那种情况下,可以通过反馈系统142(例如,由计算系统110的工程师或其他用户)提供反馈,以指示异常检测系统146是否未能检测到异常行为或所检测到的异常行为实际上是不存在的。可以将其提供给机器学习系统144,该机器学习系统144可以执行机器学习操作以调整用于生成动态异常检测门限的动态异常检测函数,该动态异常检测门限被异常检测系统146用于检测异常行为。可以对异常检测系统146所使用的其他值和机构执行机器学习,以便也改善其性能。其中的一些将在下面更详细地描述。
图2是更详细地示出机器学习异常检测系统146的一个示例的框图。图2示出了机器学习异常检测系统146说明性地包括数据存储交互系统160、历史窗口跟踪系统162、聚合组件164、动态异常门限生成器166、门限比较系统168、异常检测器170、异常严重性级别识别系统172,并且它可以包括其他项目174。历史窗口跟踪系统162本身可以包括历史窗口数据访问组件176、窗口控制组件178,并且它可以包括其他项目180。聚合组件164本身可以包括量检测器组件182、正态分布识别器184,并且它可以包括其他项目186。动态异常门限生成器166可以包括回溯窗口/桶识别器188、桶选择组件190、每桶量(volume per bucket)检测器192、绝对比较值识别器194、历史量比较识别器196、函数应用组件198,并且它可以包括其他项目200。门限比较系统168说明性地包括每桶度量生成器202、度量/门限比较组件204,并且它可以包括其他项目206。异常检测器170本身可以包括异常桶识别器208、异常检测准则比较系统210,并且它可以包括其他项目212。现在将提供对机器学习异常检测系统146中的一些项目及其操作的简要描述。
数据存储交互系统160说明性地与数据存储装置132或其他数据存储装置进行交互,在这些数据存储装置中存储了由机器学习异常检测系统146用于检测异常的信息。历史窗口跟踪系统162说明性地识别在其上将识别出正态分布的历史窗口。历史窗口数据访问组件176访问历史窗口中的度量值,并且窗口控制组件178控制窗口是否以及何时在时间上向前移动。例如,度量值的数据分布可以随时间而变化。因此,在其上识别出正态分布的历史窗口在时间上向前滑动,以便仅使用相对较新的数据集合来识别正态分布。历史窗口可以基于各种各样不同的准则在时间上向前滑动。例如,如果数据模式变化相对较快,则可以每几分钟、每小时或每天向前滑动一次。如果数据模式变化较慢,并且数据量较小,则窗口可能会滑动得更慢。窗口控制组件178还可以确定数据变化多快。如果它变化更快,则窗口可能会更频繁地滑动。如果数据变化不太快,则窗口滑动的频率可能会降低。
聚合组件164对历史窗口中的数据进行聚合,以便可以识别正态分布。量检测器组件182识别历史窗口中的数据量,以确保在该窗口内已经聚合了足够的数据。然后,正态分布识别器184识别历史窗口中数据的正态分布(通过均值和标准差)。
然后,动态异常门限生成器166生成动态异常检测门限,可以将其与当前度量值(或代表性度量值)进行比较,以确定由度量值代表的操作特性是否异常。这将指示该计算系统可能在以异常方式操作。
为了识别异常行为,在一个示例中,不将单个度量值与动态异常检测门限进行比较。替代地,将代表时间窗口(回溯窗口)内的多个度量值的代表性值与动态异常检测门限进行比较。因此,在一个示例中,回溯窗口/桶识别器188识别相对当前的数据集合,并且将该数据集合定义为回溯窗口(或者正在分析窗口)。然后,将回溯窗口划分为时间桶(或时间片段),每个时间桶都包含回溯窗口内一时间范围内的度量时序的值。为每个桶生成代表性度量值。例如,如果度量值代表连接成功率,则可以计算桶中度量值的连接成功率的平均值。然后将该值与从正态分布导出的动态异常检测门限进行比较。因此,回溯窗口/桶识别器188识别回溯窗口(当前正在被分析的时间跨度),并且将该回溯窗口划分为将被单独分析的桶(或时间片段)。桶选择组件190选择桶之一,并且每桶量检测器192识别该桶中的量(例如,度量的数量)。绝对比较值识别器194识别绝对比较值,并且历史量比较值识别器196识别历史(或相对)比较值。然后,函数应用组件198应用动态函数以生成动态异常检测门限。
更具体地,假设用于生成动态异常检测门限的动态函数是下面的等式1中所示的函数:
DynamicThreshold=μ-f(vol)*σ等式1其中,μ是正态分布的均值,
σ是标准差,并且
f(vol)是用于基于量来动态调整异常检测门限的动态函数。
如本文所述,一个目标是,随着请求量的增大,f(vol)的值将变小。对于较大的量,这将导致较高的动态异常检测门限值。类似地,随着正在分析的请求量减少,f(vol)的值升高,从而导致异常检测门限降低。
在一个示例中,f(vol)识别如下:
Figure BDA0003537929430000051
其中,c是常量值;
b是常量值,其可以根据历史经验或其他方式经验性地导出;
Mean(last_week_vol)是来自相对新的历史时间段(在本例中为前一周)的量的均值;并且
vol是正在分析的桶中的请求总量。
从等式2中可以看出,通过等式3中列出的项,将正在分析的桶中的当前量与绝对值b进行比较:
Figure BDA0003537929430000052
而且,将当前量与相对项进行比较,以确定其相对于等式4的项的新值(上周的平均量级别)相比是高还是低:
Figure BDA0003537929430000053
因此,函数应用组件198应用动态门限等式1中的函数f(vol)以获得动态异常检测门限的值。
门限比较系统168然后将与当前桶相对应的代表性值与动态异常检测门限进行比较,以确定是否存在异常。更具体地,在一个示例中,每桶度量生成器202生成针对所选择的桶的正在分析的度量的代表性值。如上文所指示的,这可以是平均值或另一值。然后,度量/门限比较组件204将该度量与由生成器166生成的动态异常检测门限进行比较。该比较指示代表性度量是否满足门限。如果不满足,则异常检测器170使用异常桶识别器208来将正在分析的值的桶识别为包含异常。在回溯窗口中针对每个桶生成比较。
异常检测准则比较系统210访问异常检测准则,并且在给定那些准则的情况下确定是否存在异常。例如,如果系统希望将任何异常桶标识为异常,则即使回溯窗口中的单个桶被标记为异常,系统210也会生成指示这些桶中的一个桶存在异常的输出。然而,如果准则指示仅在异常持续了多个连续桶,或者持续了回溯窗口内的多个桶,或持续了某个其他数量的桶的情况下才识别异常,则系统210确定是否满足了那些准则。如果是这样,则系统210输出标识异常行为的类型的指示。
异常严重性级别识别系统172检测该异常是否是高等级异常、低等级异常等。分类可以由动作信号生成器148(图1所示)用于识别生成哪个特定动作信号。
图3A和图3B(在本文中统称为图3)示出了流程图,该流程图示出了在进行以下操作时计算系统架构100的操作的一个示例:获得指示架构100的操作特性的时序数据,识别那些时序中的异常,以及基于检测到的异常来生成用于执行动作的动作信号。首先假设服务计算系统102被配置为接收指示架构的操作特性的度量时序。这由图3的流程图中的框220指示。
在一个示例中,可以在远程服务器计算系统102处接收指示在客户端计算系统104处检测到的操作特性的度量时序。这由框222指示。例如,操作特性检测器124可以从客户端计算系统104的角度检测操作特性,并且将其提供给机器学习异常检测系统146。类似地,可以从服务侧获得度量时序。例如,计算系统102上的操作特性检测器134可以从服务的角度检测计算系统架构的操作特性。这些也可以被提供给机器学习异常检测系统146。这由框224指示。在一个示例中,所检测到的操作特性包括如框226所指示的连接成功率。它们可以包括其他连接特性228、与不同请求相对应的延时230,并且它们可以包括各种各样的其他项目232。
然后,(机器学习异常检测系统146中的)窗口控制组件178识别在其上聚合数据的历史窗口,以便识别与所接收的度量时序相对应的数据的正态分布。这由框234指示。如上文所讨论的,可以基于各种不同的准则来识别历史窗口。
历史窗口数据访问组件176然后访问在该历史窗口内已经接收到的度量时序中的值,并对该信息进行聚合,从而可以生成正态分布。然后,正态分布识别器184基于所聚合的数据来识别当前历史窗口中的正态分布。识别器184可以生成当前历史窗口上的值时序的均值和标准差。这由图3的流程图中的框236指示。
量检测器182可以对当前历史窗口中的数据进行解析,以识别当前历史窗口中的度量值的量。这由框238指示。可以这样做以确保在历史窗口中呈现足够的量以获得有意义的正态分布。
而且,如上文所讨论的,当前历史窗口可以在时间上向前滑动,以使其包含相关数据(相对新的数据)。因此,窗口控制组件178可以确定是否到了向前滑动历史窗口的时候了。而且,如上文简要讨论的,确定何时滑动历史窗口可以基于时间段(例如,分钟、小时、天等)。它也可以基于其他准则,例如数据变化的频率。在图3的流程图中,由框240指示确定是否滑动窗口,而由框242指示向前滑动窗口。
然后,动态异常门限生成器166访问数据存储装置,以获得用于识别动态异常检测门限的度量值和聚合。这由图3的流程图中的框244指示。例如,如框246所示,绝对比较识别器194获得常量值c和b(在等式2中示出)。历史量比较值识别器196可以获得历史量值(例如,来自等式2的Mean(last_week_vol)值)。这由框248指示。每桶量检测器192可以识别正在分析的当前桶中的量。这由框250指示。可以获得其他信息,这些信息也可以用于计算动态异常检测门限。这由框252指示。
然后,函数应用组件198计算随量变化的动态函数,以便识别动态异常检测门限。这由图3的流程图中的框254指示。例如,它可以如等式2所指示的来计算动态函数f(vol),然后可以如等式1所指示的来计算动态门限。
在一个示例中,动态函数f(vol)随着量值的增加而降低。这由框256指示。而且,由等式1生成的总体动态门限值说明性地随着量的增加而升高,以施加针对更大量的更严格的标准。这由框258指示。在一个示例中,动态项f(vol)可以将当前量与历史常量值(b)进行比较,如等式3所指示的,并且动态项可以将当前值与量的相对新的历史值进行比较,如等式4所指示的。这些步骤由图3的流程图中的框260和262指示。也可以用其他方式来计算动态异常检测门限,这由图3的流程图中的框264指示。
门限比较系统168然后将检测到的度量(例如,代表性度量)与动态异常检测门限进行比较,以确定异常是否正在发生以及其已经发生的时间。这由图3的流程图中的框266指示。下文还将针对图4更详细地描述将所检测到的度量与动态异常检测门限进行比较。
如果存在异常状况,如框268所指示的,则异常检测器170基于度量值与动态异常检测门限的比较来检测该异常状况。异常检测器170向异常严重性级别识别系统172提供指示存在异常的输出。系统172基于其严重性级别来对异常进行分类。这由框270指示。例如,严重性级别可以基于异常的相对幅度(度量值与动态异常检测门限的偏离程度)。这由框272指示。严重性级别可以基于异常已经持续了多长时间,如框274所指示的。异常的严重性级别也可以基于各种各样的其他准则,这由框276指示。
然后,动作信号生成器148基于异常和严重性级别来识别要采取的动作。这由框278指示。它生成用于控制远程服务器计算系统102执行该动作的控制信号。这由框280指示。例如,控制信号生成器150可以生成用于控制计算系统102在服务器侧自动执行补救动作的控制信号。这由框282指示,并且可以包括诸如重新分配计算资源、故障排除资源等之类的事项。生成用于分配更多的资源的信号,这由框284指示。警告生成器152可以生成用于向可以执行附加补救动作的工程师或其他用户显现警告的控制信号。这由框286指示。例如,警告生成器152可以生成用于控制通信系统140向其他计算系统110发送警告的控制信号,它们可以在其他计算系统110处被显现给工程师或其他用户。警告可以标识异常的类型、异常发生的位置、引起异常的特定客户端机器或机器集合或租户等等。动作信号生成器148可以生成各种各样的其他动作信号以便也执行各种各样的其他动作。这由框288指示。
评估异常的工程师或其他人员也可以通过反馈系统152提供反馈。该反馈可以指示异常检测是正确的,级别是正确还是不正确的,或者异常检测本身是不正确的。框290指示检测到这种类型的反馈。机器学习系统144然后基于该反馈来执行机器学习。这由框292指示。机器学习可以用于修改上面等式1和2中的常量、相对值、或者其他值或函数,以提高机器学习异常检测系统146在检测异常和/或识别异常的严重性级别方面的准确性。
图4A和图4B(在本文中统称为图4)示出了流程图,该流程图示出了机器学习异常检测系统146在将所检测到的度量与动态异常检测门限进行比较,以确定异常是否存在时的操作的一个示例。因此,图4A和4B更详细地示出了图3中的框266处标识的操作。
可能期望基于其影响来检测异常而不是简单地识别异常度量值。对异常的影响的一种指示是异常持续多长时间。因此,可能期望基于时序数据的集合来检测异常,而不是简单地对照动态异常门限检查给定的数据点来识别异常。在一个示例中,因此在时间窗口(被称为回溯窗口)上评估数据时序。回溯窗口/桶识别器188可以识别在其上评估数据的回溯窗口的长度,以便将异常标识为常量或基于量的,或者可以以其他方式改变回溯窗口。识别回溯窗口由图4的流程图中的框300指示。框302指示使用常量回溯窗口,并且框304指示基于数据量来识别回溯窗口。回溯窗口/桶识别器188也可以其他方式识别回溯窗口,这由框306指示。
在一个示例中,识别器188然后将回溯窗口划分为多个时间桶。然后,通过生成代表每个桶中的度量时序的代表性值,并将该代表性值与动态异常检测门限进行比较,来评估该桶的健康状况。可以基于用于确定系统健康状况的期望粒度或者以其他方式来确定每个桶的长度(就时间而言的每个桶的大小)。回溯窗口/桶识别器188将回溯窗口划分为片段或桶,这由图4的流程图中的框308指示。
桶选择组件190然后选择这些桶中的一个桶以进行评估。这由框310指示。然后,每桶度量生成器202生成针对所选择的桶的代表性度量。例如,在度量代表连接性(例如,连接成功率)的情况下,则可以生成针对所选择的桶的连接性的平均值。框312指示生成针对所选择的桶的代表性值。
回想一下,每桶量检测器192已经检测到当前桶中的数据量。因此,给定该量,函数应用组件198也已经生成了针对异常检测门限的值。然后,由度量/门限比较组件204将针对所选择桶的正在分析度量的代表性值与动态异常检测门限进行比较。这由框314指示。该比较的结果被提供给异常检测器170,异常检测器170确定正在分析的度量的值是否越过异常检测门限。这由框316指示。如果没有,则当前没有异常存在,并且该所选择的桶不是异常桶。然而,如果代表所选择的桶中的值的度量确实越过了动态异常检测门限,则异常桶识别器208将所选择的桶标记为异常桶。这由框318指示。
如果当前回溯窗口中有更多桶,则处理返回到框310,在框310处,桶选择组件190选择下一个桶,每桶度量生成器202生成针对该桶的代表性值,比较组件204将代表性值与基于该桶中的量计算出的异常检测门限进行比较,并且异常桶识别器确定所选择的桶是否异常。返回到框310以选择另一个桶,这由图4的流程图中的框320指示。
然后,异常检测准则比较系统210对照异常检测准则来检测回溯窗口中的异常桶的数量,以确定是否已经检测到异常。这由图4的流程图中的框322指示。如上文所讨论的,当回溯窗口中的一个或多个(或任何预定义的数量或比例的)桶被识别为异常时,可能将会检测到异常。这由图4的流程图中的框324指示。在另一示例中,可能只有当异常相对持久时(例如,当回溯窗口中的所有桶都被识别为异常时),才可能会检测到异常。这由图4的流程图中的框326指示。应当注意,异常检测准则比较系统210也可以将回溯窗口中的异常桶的数量与其他准则进行比较,以便确定是否已经检测到异常。这由框328指示。
而且,异常检测器170可以检测提供所检测到的异常的上下文的其他状况。这由框330指示。例如,异常状况可以标识检测到异常的客户端系统,与异常相对应的网络或网络路径(例如,当由感测到的度量代表的操作持久性是延时的情况下),异常的一致性(例如由回溯窗口中异常桶的数量所指示的)或各种各样的其他异常状况中的任何一种。
当检测到异常状况时,从异常检测器170向异常严重性级别识别系统172提供指示该异常状况的输出,在异常严重性级别识别系统172处对异常进行分类(例如上文针对图3的流程图中的框270所讨论的)。生成指示所检测到的异常状况的输出,这由图4的流程图中的框332指示。
现在将描述生成动态异常检测门限并将其应用于代表性度量值的示例。对于本示例,假设度量值时序代表指示客户端计算系统104在尝试连接到由远程服务器计算系统102托管的服务时所尝试的成功连接请求的百分比的值。
首先假设正在分析的时序中的值在正被用于分析的历史窗口上具有正态分布。还假设正态分布的均值为μ=99.0,并且标准差为σ=0.5。还假设上周的请求数量的均值为Mean(last_week_vol)=1500。为了计算动态异常检测门限,假设常量c=3.5,并且常量b=1000。在这些假设下,可以根据等式1来计算动态异常检测门限,如下所示:
Figure BDA0003537929430000081
接下来,可以针对两个不同的量(vol=500和vol=3000)来评估等式5。回想一下,这些量代表在上述回溯窗口中正在分析的每个桶中的度量的量。这可以对应于在一天中较高量的时间(例如,在量=3000的工作时间期间)处检测异常,以及在一天中低量的时间(例如,在量=500的晚上时间期间)处检测异常。在这些情况下,对等式5的评估提供了以下内容:
Figure BDA0003537929430000082
可以将其与可以设置的静态门限进行比较。例如,假设针对均值的正负四个标准偏差设置了静态门限,则产生的静态门限如下:
StaticThreshol=μ-4*σ=97 等式7
图5示出了分布图的一个示例,该分布图示出了本示例中的值时序的正态分布。静态门限值(为97)用于所有不同请求量的实例。然而,动态异常检测门限发生变化。例如,当请求量为500(其是相对低的量)时,则相应的动态异常检测门限约为96.6,这与静态门限相比离平均成功率更远。当请求量为3000(其是相对高的量)时,则动态异常检测门限为97.15,这与静态门限相比更接近均值。因此,动态门限基于实时请求量而采用不同的值,以便更好地决策是否实际发生了异常。
如图6所示,给定这些异常检测门限值,现在假设连接请求成功率的请求时序。可以看出,连接成功率通常为99.0%左右,并且请求量以每周为周期变化,这通常与工作时间一致。在图6所示的成功率时序中,有四处凹陷,在每个凹陷处都对量进行了标记。连接成功率的前两处凹陷对应于3000的连接量,而接下来的两处凹陷对应于500的请求量。
当使用上文计算的静态门限(97)时,则将第一、第三和第四处凹陷识别为异常。这是因为所有三处凹陷的连接成功率均小于97。
使用上文计算的动态门限,将第一、第二和第四处凹陷识别为异常,这是因为第一和第二处凹陷越过了动态异常检测门限97.15(这是针对3000个请求的大的量计算出的),并且第四处凹陷越过了动态异常检测门限96.6(这是针对大约500个请求的较小量计算出的)。
下表示出了使用静态异常检测门限和动态异常检测门限之间的性能差异,该差异基于当前量而变化。
Figure BDA0003537929430000083
表1
表1示出了动态异常检测门限在识别具有某种时间影响的实际异常时更为准确。第一、第二和第四处凹陷被识别为异常,而动态异常检测门限将第三处凹陷忽略为噪声,第三处凹陷可能是由轻微的波动引起的,但是发生在相对低的请求量处。相比之下,使用静态门限会使系统将第三处凹陷曲解为异常,而使第二处凹陷未被检测到。
因此,可以看出,通过使用基于量而变化的动态异常检测门限,本说明书提供了一种在识别计算系统架构中的异常操作特性方面更加准确并且更加高效的系统。由于虚假的异常未被识别,这将获得更准确的计算系统性能并提高效率。
将指出的是,上述讨论已经描述了各种不同的系统、组件和/或逻辑单元。将领会的是,这样的系统、组件和/或逻辑单元可以由执行与那些系统、组件和/或逻辑单元相关联的功能单元的硬件项目(例如处理器和相关联的存储器,或其他处理组件,在下文中描述了其中的一些)组成。另外,如下所述,系统、组件和/或逻辑单元可以由加载到存储器中并随后由处理器或服务器或其他计算组件执行的软件组成。系统、组件和/或逻辑单元还可以由硬件、软件、固件等的不同组合组成,在下文中描述了它们的一些示例。这些只是可以用于形成上述系统、组件和/或逻辑单元的不同结构的一些示例。也可以使用其他结构。
本文的讨论还提及了处理器和服务器。在一个实施例中,处理器和服务器包括具有相关联的存储器和定时电路(没有单独示出)的计算机处理器。它们是其所属的系统或设备的功能部分,并且由那些系统中的其他组件或项目激活,并且便利那些系统中的其他组件或项目的功能。
而且,已经讨论了大量用户接口显示。它们可以采取各种各样的不同形式,并且可以具有置于其上的各种各样的不同的用户可致动输入机制。例如,用户可致动的输入机制可以是文本框、复选框、图标、链接、下拉菜单、搜索框等。也可以用各种各样的不同方式来致动它们。例如,可以使用点击设备(例如轨迹球或鼠标)来致动它们。可以使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等来致动它们。还可以使用虚拟键盘或其他虚拟致动器来致动它们。另外,在显示它们的屏幕是触摸敏感屏幕的情况下,可以使用触摸手势来致动它们。而且,在显示它们的设备具有语音识别组件的情况下,可以使用语音命令来致动它们。
也已经讨论了多种数据存储装置。将指出的是,可以将它们分别分割成多个数据存储装置。所有的数据存储装置对于访问它们的系统而言可以是本地的,所有的数据存储装置可以是远程的,或者一些可以是本地的而其他是远程的。在本文中设想了所有这些配置。
而且,附图示出了具有归于每个框的功能的多个框。将指出的是,可使用更少的框,以便功能由更少的组件执行。而且,在功能分布在更多组件之间时,可以使用更多的框。
图7是图1中示出的架构100的框图,除了其元素置于云计算架构500中之外。云计算提供不需要端用户知晓传送服务的系统的物理位置或配置的计算、软件、数据访问和存储服务。在各个示例中,云计算使用合适的协议在广域网(例如互联网)上递送服务。例如,云计算提供商在广域网上递送应用,并且其可以通过网页浏览器或任何其他计算组件来访问。架构100的软件或组件以及相应的数据可以被存储在远程位置处的服务器上。云计算环境中的计算资源可以并置于远程数据中心位置处,或者它们可以是分散的。云计算基础设施可以通过共享的数据中心来递送服务,即使对于用户而言它们看起来像单个接入点。因此,可以使用云计算架构从位于远程位置处的服务提供商提供本文中描述的组件和功能。替代地,它们可从传统服务器提供,或者,它们可以直接或以其他方式被安装在客户端设备上。
本描述旨在包括公共云计算和私有云计算二者。云计算(公共和私有二者)提供资源的大量无缝汇集,以及管理和配置底层硬件基础设施的降低的需要。
公共云由供应商管理,并且一般支持多个消费者使用相同的基础设施。而且,与私有云相反,公共云可以将端用户从管理硬件中解放出来。私有云可以由组织自身管理,并且基础设施一般不与其他组织共享。组织将在某个程度上维护硬件,例如安装和维修等。
在图7所示的示例中,一些项目与图1中示出的那些项目类似,并且对它们进行类似编号。图7具体示出了远程服务器计算系统102可以位于云502(其可以是公共的、私有的,或者部分公共而其他部分私有的组合)中。因此,用户114和115可以使用用户设备504和506通过云502来访问那些系统。
图7还描绘了云架构的另一个示例。图7示出还设想了计算系统102的一些元素可以布置于云502中,而其他元素则不布置于云502中。通过举例的方式,数据存储装置132可以布置在云502外部,并且通过云502访问。在另一示例中,机器学习异常检测系统146(或其他项目)可以在云502外部。不管它们位于何处,它们可由设备504和506通过网络(广域网或局域网)直接访问,它们可以由服务托管在远程站点处,或者它们可以作为服务通过云提供或由位于该云中的连接服务访问。在本文中设想了所有这些架构。
还将指出,架构100或其部分可以布置于各种各样的不同设备上。这些设备中的一些设备包括:服务器、桌面式计算机、膝上型计算机、平板计算机或其他移动设备,例如掌上计算机、手机、智能电话、多媒体播放器、个人数字助理等。
图8是可以在其中部署架构100或其部分(例如)的计算环境的一个示例。参考图8,用于实现一些实施例的示例系统包括具有被编程为如上所述操作的计算机810的形式的计算设备。计算机810的组件可以包括但不限于:处理单元820(其可以包括前图所示的处理器或服务器)、系统存储器830、以及将包括系统存储器的各种系统组件耦合到处理单元820的系统总线821。系统总线821可以是若干种类型的总线结构中的任意一种,包括存储器总线或存储器控制器、外围总线、以及使用各种总线架构中的任意一种的局部总线。通过举例而非限制的方式,这些架构包括:工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线以及外围组件互连(PCI)总线(也被称为Mezzanine总线)。针对图1描述的存储器和程序可以被部署在图8的相应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是可以由计算机810访问的任何可用介质,并且包括易失性和非易失性介质,可移动和不可移动介质。通过举例而非限制的方式,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质不同于并且不包括调制数据信号或载波。它包括硬件存储介质,硬件存储介质包括用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的、以任何方法或技术实现的易失性和非易失性、可移动和不可移动介质二者。计算机存储介质包括但不限于:RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储设备、磁带盒、磁带、磁盘存储设备或其他磁存储设备、或者可用于存储所期望的信息且可由计算机810访问的任何其他介质。通信介质通常体现为计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并且包括任何信息递送介质。术语“经调制的数据信号”意指以对信号中的信息进行编码的方式对其一个或多个特性设置或改变的信号。通过举例而非限制的方式,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声音、RF、红外线和其他无线介质之类的无线介质。上述各项中任意项的组合也应当被包括在计算机可读介质的范围之内。
系统存储器830包括具有易失性和/或非易失性存储器形式的计算机存储介质,例如只读存储器(ROM)831和随机存取存储器(RAM)832。包含有助于在计算机810中的元素之间传输信息(例如在启动时)的基本例程的基本输入/输出系统833(BIOS)通常被存储在ROM831中。RAM 832通常包含由处理单元820立即可访问的和/或当前在操作的数据和/或程序模块。通过举例而非限制的方式,图8示出了操作系统834、应用程序835、其他程序模块836和程序数据837。
计算机810还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。通过举例的方式,图8示出了从不可移动、非易失性磁性介质读取或向其写入的硬盘驱动器841,以及从可移动、非易失性光盘856(例如CD ROM或其他光介质)读取或向其写入的光盘驱动器855。可以用于示例性操作环境的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于:磁带盒、闪存卡、数字多功能盘、数字视频磁带、固态RAM、固态ROM等。硬盘驱动器841通常通过不可移动存储器接口(例如接口840)连接到系统总线821,并且光盘驱动器855通常通过可移动存储器接口(例如接口850)连接到系统总线821。
替换地或另外地,本文中描述的功能至少部分可以由一个或多个硬件逻辑组件来执行。举例而非限制性地,可以使用的硬件逻辑组件的说明性类型包括:现场可编程门阵列(FPGA)、程序专用集成电路(ASIC)、程序专用标准产品(ASSP)、系统级芯片系统(SOC)、复杂可编程逻辑器件(CPLD)等。
在上文讨论并且在图8中示出的驱动器及其相关联的计算机存储介质为计算机810提供计算机可读指令、数据结构、程序模块和其他数据的存储。例如,在图8中,硬盘驱动器841示为存储操作系统844、应用程序845、其他程序模块846和程序数据847。注意,其他组件可以与操作系统834、应用程序835、其他程序模块836和程序数据837相同或不同。操作系统844、应用程序845、其他程序模块846和程序数据847在这里被赋予不同的编号以说明至少它们是不同的副本。
用户可以通过诸如键盘862、麦克风863和定点设备861(例如鼠标、轨迹球或触摸板)之类的输入设备来向计算机810输入命令和信息。其他输入设备(未示出)可以包括操纵杆、游戏手柄、碟形卫星天线、扫描仪等。这些和其他输入设备经常通过耦合到系统总线的用户输入接口860连接到处理单元820,但可以由其他接口和总线结构(例如并行端口、游戏端口或通用串行总线(USB))连接。视觉显示器891或其他类型的显示设备也经由接口(例如视频接口890)连接到系统总线821。除了显示器,计算机还可以包括诸如扬声器897和打印机896之类的其他外围输出设备,这些设备可以通过输出外围接口895连接。
计算机810操作在联网环境中,使用去往一个或多个远程计算机(例如远程计算机880)的逻辑连接。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其他公共网络节点,并且通常包括上文针对计算机810描述的许多或所有元素。图8中描绘的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但还可以包括其他网络。这样的网络连接环境常见于办公室、企业范围计算机网络、内联网和互联网。
当用于LAN网络连接环境时,计算机810通过网络接口或适配器870连接到LAN871。当用于WAN网络连接环境时,计算机810通常包括调制解调器872或用于在WAN 873(例如互联网)上建立通信的其他单元。调制解调器872(其可以是内部或外部的)可以经由用户输入接口860或其他适当的机制连接到系统总线821。在联网环境中,针对计算机810描绘的程序模块或其部分可以被存储在远程存储器存储设备中。通过举例而非限制的方式,图8将远程应用程序885示为位于远程计算机880上。将领会的是,示出的网络连接是示例性的,并且可以使用用于在计算机之间建立通信链路的其他手段。
还应当指出的是,本文中描述的不同示例可以不同方式进行组合。也就是说,一个或多个示例的一些部分可与一个或多个其他示例的一些部分组合。在本文中设想了所有这些。
示例1是一种用于检测计算系统的操作特性中的异常行为的计算机实现的方法,所述方法包括:
在异常检测系统处接收度量时序,所述度量时序中的每个度量指示在正在分析的时间窗口内的所检测计算系统事件;
检测事件量,所述事件量指示由所述度量时序代表的计算系统事件的量;
利用处理器来应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限基于所述事件量并且基于表征度量值在历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所述正在分析的时间窗口;
将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号;
基于所述比较结果信号来检测所述计算系统的所述操作特性中的异常;以及
基于所检测到的异常来生成用于控制所述计算系统的一部分的动作信号。
示例2是任意或所有之前示例的计算机实现的方法,并且还包括:
检测指示检测所述异常的准确性的反馈;以及
执行机器学习,以基于所述反馈来修改所述动态异常检测门限。
示例3是任意或所有之前示例的计算机实现的方法,其中,检测异常包括:
访问异常检测准则;以及
将所述异常检测准则应用于所述比较结果,以确定是否检测到异常。
示例4是任意或所有之前示例的计算机实现的方法,其中,所述异常检测准则包括持续准则,并且其中,检测异常包括:
识别所述异常在其上持续存在的持续时间段;
将所述持续时间段与所述持续准则进行比较;以及
当所述持续时间段满足所述持续准则时,检测所述异常。
示例5是任意或所有之前示例的计算机实现的方法,并且还包括:
基于由所述持续时间段与所述持续准则的比较所指示的、所述异常的持续性来检测异常严重性级别。
示例6是任意或所有之前示例的计算机实现的方法,其中,生成动作信号包括:
基于所检测到的异常严重性级别来生成所述动作信号。
示例7是任意或所有之前示例的计算机实现的方法,其中,应用动态异常检测门限生成器,以生成动态异常检测门限包括:
应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限随着所述事件量的减少而降低,并且随着所述事件量的增加而升高。
示例8是任意或所有之前示例的计算机实现的方法,其中,将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号包括:将所述正在分析的时间窗口划分为多个时间片段,并且其中,检测事件量包括:
选择时间片段;以及
检测所选择的时间片段中的事件量。
示例9是任意或所有之前示例的计算机实现的方法,其中,应用所述异常检测门限生成器包括:
应用所述动态异常检测门限生成器,以生成针对所选择的时间片段的动态异常检测门限,所述动态异常检测门限基于所选择的时间片段中的所述事件量并且基于表征度量值在所述历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所选择的时间片段。
示例10是任意或所有之前示例的计算机实现的方法,其中,进行比较包括:
生成所述代表性值作为所选择的时间片段中的所述度量值的代表;以及
将所述代表性值与针对所选择的时间片段的所述动态异常检测门限进行比较。
示例11是任意或所有之前示例的计算机实现的方法,其中,检测异常包括:
基于所述代表性值与针对所选择的时间片段的所述动态异常检测门限的比较,将所述时间片段识别为异常片段。
示例12是任意或所有之前示例的计算机实现的方法,其中,检测异常包括:
基于所述正在分析的窗口中的多个时间片段是异常片段来检测所述异常。
示例13是一种用于检测计算系统的操作特性中的异常行为的计算机实现的方法,所述方法包括:
接收度量时序,所述度量时序中的每个度量指示在正在分析的时间窗口内的所检测计算系统事件;
识别事件量,所述事件量指示所述正在分析的时间窗口中的、由所述度量时序代表的计算系统事件的量;
应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限基于所述事件量并且基于表征度量值在历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所述正在分析的时间窗口;
将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号,所述比较结果信号指示所述代表性值是否满足所述动态异常检测门限;
如果所述代表性值满足所述动态异常检测门限,则检测所述代表性值在其上满足所述动态异常检测门限的时间段,以获得持续值;
基于所述比较结果信号和所述持续值来识别所述计算系统的所述操作特性中的异常;以及
基于所识别的异常来生成用于控制所述计算系统的一部分的动作信号。
示例14是任意或所有之前示例的计算机实现的方法,并且还包括:
检测指示识别所述异常的准确性的反馈;以及
执行机器学习,以基于所述反馈来修改所述动态异常检测门限。
示例15是任意或所有之前示例的计算机实现的方法,其中,应用动态异常检测门限生成器,以生成动态异常检测门限包括:
应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限随着所述正在分析的时间窗口中所述事件量的减少而降低,并且随着所述正在分析的窗口中的所述事件量的增加而升高。
示例16是一种计算机系统,包括:
通信系统,其接收度量时序,所述度量时序中的每个度量指示正在分析的时间窗口内的所检测计算系统事件;
量检测器,其识别事件量,所述事件量指示所述正在分析的时间窗口中的、由所述度量时序代表的计算系统事件的量;
动态异常检测门限生成器,其接收所述事件量并且生成动态异常检测门限,所述动态异常检测门限基于所述事件量并且基于表征度量值在历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所述正在分析的时间窗口;
门限比较系统,其将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号,所述比较结果信号指示所述代表性值是否满足所述动态异常检测门限;
异常检测器,其接收所述比较结果信号并且基于所述比较结果信号来检测所述计算系统的所述操作特性中的异常;以及
动作信号生成器,其基于所检测到的异常来生成用于控制所述计算系统的一部分的动作信号。
示例17是任意或所有之前示例的计算机系统,并且还包括:
反馈系统,其检测指示所述异常检测器的准确性的反馈;以及
机器学习系统,其执行机器学习,以基于所述反馈来修改所述动态异常检测门限生成器。
示例18是任何或所有先前示例的计算系统,其中,所述动态异常检测门限生成器包括:
绝对比较值识别器,其识别量常量;
历史量比较值识别器,其识别历史量级别;以及
函数应用组件,其将所述事件量与所述量常量进行比较,以获得绝对量指示符,以及将所述事件量与所述历史量级别进行比较,以获得相对量指示符,以及基于所述绝对量指示符和所述相对量指示符,使用函数来生成所述动态异常检测门限,所述动态异常检测门限随着所述正在分析的时间窗口中的所述事件量的减少而降低,并且随着所述正在分析的窗口中的所述事件量的增加而升高。
示例19是任何或所有先前示例的计算系统,其中,所述异常检测器包括:
异常检测准则比较系统,其检测所述代表性值在其上满足所述动态异常检测门限的时间段,以获得持续值,以及基于所述比较结果信号和所述持续值来识别所述计算系统的所述操作特性中的异常。
示例20是任何或所有先前示例的计算系统,其中,所述动作信号生成器包括:
警告生成器,其基于所检测到的异常来生成警告。
虽然以特定于结构特征和/或方法动作的语言对发明主题进行了描述,但应当理解的是,所附权利要求书中定义的发明主题并不一定受限于上述具体特征或动作。相反,上述具体特征或动作是作为实现权利要求的示例形式而公开的。

Claims (20)

1.一种用于检测计算系统的操作特性中的异常行为的计算机实现的方法,所述方法包括:
在异常检测系统处接收度量时序,所述度量时序中的每个度量指示正在分析的时间窗口内的所检测计算系统事件;
检测事件量,所述事件量指示由所述度量时序代表的计算系统事件的量;
利用处理器来应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限基于所述事件量并且基于表征度量值在历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所述正在分析的时间窗口;
将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号;
基于所述比较结果信号来检测所述计算系统的所述操作特性中的异常;以及
基于所检测到的异常来生成用于控制所述计算系统的一部分的动作信号。
2.根据权利要求1所述的计算机实现的方法,并且还包括:
检测指示检测所述异常的准确性的反馈;以及
执行机器学习,以基于所述反馈来修改所述动态异常检测门限。
3.根据权利要求1所述的计算机实现的方法,其中,检测异常包括:
访问异常检测准则;以及
将所述异常检测准则应用于所述比较结果,以确定是否检测到异常。
4.根据权利要求3所述的计算机实现的方法,其中,所述异常检测准则包括持续准则,并且其中,检测异常包括:
识别所述异常在其上持续存在的持续时间段;
将所述持续时间段与所述持续准则进行比较;以及
当所述持续时间段满足所述持续准则时,检测所述异常。
5.根据权利要求4所述的计算机实现的方法,并且还包括:
基于由所述持续时间段与所述持续准则的比较所指示的、所述异常的持续性来检测异常严重性级别。
6.根据权利要求5所述的计算机实现的方法,其中,生成动作信号包括:
基于所检测到的异常严重性级别来生成所述动作信号。
7.根据权利要求1所述的计算机实现的方法,其中,应用动态异常检测门限生成器,以生成动态异常检测门限包括:
应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限随着所述事件量的减少而降低,并且随着所述事件量的增加而升高。
8.根据权利要求1所述的计算机实现的方法,其中,将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号包括:将所述正在分析的时间窗口划分为多个时间片段,并且其中,检测事件量包括:
选择时间片段;以及
检测所选择的时间片段中的事件量。
9.根据权利要求8所述的计算机实现的方法,其中,应用所述异常检测门限生成器包括:
应用所述动态异常检测门限生成器,以生成针对所选择的时间片段的动态异常检测门限,所述动态异常检测门限基于所选择的时间片段中的所述事件量并且基于表征度量值在所述历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所选择的时间片段。
10.根据权利要求9所述的计算机实现的方法,其中,进行比较包括:
生成所述代表性值作为所选择的时间片段中的所述度量值的代表;以及
将所述代表性值与针对所选择的时间片段的所述动态异常检测门限进行比较。
11.根据权利要求10所述的计算机实现的方法,其中,检测异常包括:
基于所述代表性值与针对所选择的时间片段的所述动态异常检测门限的比较,将所述时间片段识别为异常片段。
12.根据权利要求11所述的计算机实现的方法,其中,检测异常包括:
基于所述正在分析的窗口中的多个时间片段是异常片段来检测所述异常。
13.一种用于检测计算系统的操作特性中的异常行为的计算机实现的方法,所述方法包括:
接收度量时序,所述度量时序中的每个度量指示在正在分析的时间窗口内的所检测计算系统事件;
识别事件量,所述事件量指示所述正在分析的时间窗口中的、由所述度量时序代表的计算系统事件的量;
应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限基于所述事件量并且基于表征度量值在历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所述正在分析的时间窗口;
将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号,所述比较结果信号指示所述代表性值是否满足所述动态异常检测门限;
如果所述代表性值满足所述动态异常检测门限,则检测所述代表性值在其上满足所述动态异常检测门限的时间段,以获得持续值;
基于所述比较结果信号和所述持续值来识别所述计算系统的所述操作特性中的异常;以及
基于所识别的异常来生成用于控制所述计算系统的一部分的动作信号。
14.根据权利要求13所述的计算机实现的方法,并且还包括:
检测指示识别所述异常的准确性的反馈;以及
执行机器学习,以基于所述反馈来修改所述动态异常检测门限。
15.根据权利要求14所述的计算机实现的方法,其中,应用动态异常检测门限生成器,以生成动态异常检测门限包括:
应用动态异常检测门限生成器,以生成动态异常检测门限,所述动态异常检测门限随着所述正在分析的时间窗口中的所述事件量的减少而降低,并且随着所述正在分析的窗口中的所述事件量的增加而升高。
16.一种计算机系统,包括:
通信系统,其接收度量时序,所述度量时序中的每个度量指示正在分析的时间窗口内的所检测计算系统事件;
量检测器,其识别事件量,所述事件量指示所述正在分析的时间窗口中的、由所述度量时序代表的计算系统事件的量;
动态异常检测门限生成器,其接收所述事件量并且生成动态异常检测门限,所述动态异常检测门限基于所述事件量并且基于表征度量值在历史时间窗口上的分布的分布参数而变化,所述历史时间窗口大于所述正在分析的时间窗口;
门限比较系统,其将代表所述正在分析的时间窗口中的度量的代表性值与所述动态异常检测门限进行比较,以获得比较结果信号,所述比较结果信号指示所述代表性值是否满足所述动态异常检测门限;
异常检测器,其接收所述比较结果信号并且基于所述比较结果信号来检测所述计算系统的所述操作特性中的异常;以及
动作信号生成器,其基于所检测到的异常来生成用于控制所述计算系统的一部分的动作信号。
17.根据权利要求16所述的计算机系统,并且还包括:
反馈系统,其检测指示所述异常检测器的准确性的反馈;以及
机器学习系统,其执行机器学习,以基于所述反馈来修改所述动态异常检测门限生成器。
18.根据权利要求17所述的计算系统,其中,所述动态异常检测门限生成器包括:
绝对比较值识别器,其识别量常量;
历史量比较值识别器,其识别历史量级别;以及
函数应用组件,其将所述事件量与所述量常量进行比较,以获得绝对量指示符,以及将所述事件量与所述历史量级别进行比较,以获得相对量指示符,以及基于所述绝对量指示符和所述相对量指示符,使用函数来生成所述动态异常检测门限,所述动态异常检测门限随着所述正在分析的时间窗口中的所述事件量的减少而降低,并且随着所述正在分析的窗口中的所述事件量的增加而升高。
19.根据权利要求18所述的计算系统,其中,所述异常检测器包括:
异常检测准则比较系统,其检测所述代表性值在其上满足所述动态异常检测门限的时间段,以获得持续值,以及基于所述比较结果信号和所述持续值来识别所述计算系统的所述操作特性中的异常。
20.根据权利要求19所述的计算系统,其中,所述动作信号生成器包括:
警告生成器,其基于所检测到的异常来生成警告。
CN202080063026.4A 2020-07-02 2020-07-02 检测指示网络操作特性的度量并基于检测到的异常进行识别和控制 Pending CN115315922A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/099844 WO2022000398A1 (en) 2020-07-02 2020-07-02 Detecting metrics indicative of operational characteristics of network and identifying and controlling based on detected anomalies

Publications (1)

Publication Number Publication Date
CN115315922A true CN115315922A (zh) 2022-11-08

Family

ID=79317782

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080063026.4A Pending CN115315922A (zh) 2020-07-02 2020-07-02 检测指示网络操作特性的度量并基于检测到的异常进行识别和控制

Country Status (4)

Country Link
US (1) US20230229550A1 (zh)
EP (1) EP4176566A4 (zh)
CN (1) CN115315922A (zh)
WO (1) WO2022000398A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11902309B1 (en) * 2021-06-25 2024-02-13 Amazon Technologies, Inc. Anomaly prediction for electronic resources
CN117616400A (zh) * 2022-06-22 2024-02-27 瞻博网络公司 使用基于意图的分析对网络装置的异常检测
CN114884751B (zh) * 2022-07-07 2022-10-18 国网江苏省电力有限公司信息通信分公司 一种内生安全体系的调度时机与调度数量动态调整方法
CN115603955B (zh) * 2022-09-26 2023-11-07 北京百度网讯科技有限公司 异常访问对象识别方法、装置、设备和介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030110007A1 (en) * 2001-07-03 2003-06-12 Altaworks Corporation System and method for monitoring performance metrics
US20110019566A1 (en) * 2009-07-17 2011-01-27 Anomalous Networks Inc. Determining Usage Predictions and Detecting Anomalous User Activity Through Traffic Patterns
CN104967629A (zh) * 2015-07-16 2015-10-07 网宿科技股份有限公司 网络攻击检测方法及装置
CN106411947A (zh) * 2016-11-24 2017-02-15 广州华多网络科技有限公司 一种实时阈值自适应流量预警方法及装置
US20180020015A1 (en) * 2016-06-14 2018-01-18 Sdn Systems, Llc System and method for automated network monitoring and detection of network anomalies
US20180020016A1 (en) * 2016-07-15 2018-01-18 Alibaba Group Holding Limited Processing network traffic to defend against attacks
US20190065302A1 (en) * 2017-08-28 2019-02-28 Ca, Inc. Detecting computer system anomaly events based on modified z-scores generated for a window of performance metrics
US20200073740A1 (en) * 2018-08-29 2020-03-05 International Business Machines Corporation Systems and methods for anomaly detection in a distributed computing system
US20210374027A1 (en) * 2018-05-02 2021-12-02 Visa International Service Association Self-learning alerting and anomaly detection

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110995477A (zh) * 2019-11-20 2020-04-10 北京宝兰德软件股份有限公司 基于动态阈值的预警处理方法、装置、设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030110007A1 (en) * 2001-07-03 2003-06-12 Altaworks Corporation System and method for monitoring performance metrics
US20110019566A1 (en) * 2009-07-17 2011-01-27 Anomalous Networks Inc. Determining Usage Predictions and Detecting Anomalous User Activity Through Traffic Patterns
CN104967629A (zh) * 2015-07-16 2015-10-07 网宿科技股份有限公司 网络攻击检测方法及装置
US20180020015A1 (en) * 2016-06-14 2018-01-18 Sdn Systems, Llc System and method for automated network monitoring and detection of network anomalies
US20180020016A1 (en) * 2016-07-15 2018-01-18 Alibaba Group Holding Limited Processing network traffic to defend against attacks
CN106411947A (zh) * 2016-11-24 2017-02-15 广州华多网络科技有限公司 一种实时阈值自适应流量预警方法及装置
US20190065302A1 (en) * 2017-08-28 2019-02-28 Ca, Inc. Detecting computer system anomaly events based on modified z-scores generated for a window of performance metrics
US20210374027A1 (en) * 2018-05-02 2021-12-02 Visa International Service Association Self-learning alerting and anomaly detection
US20200073740A1 (en) * 2018-08-29 2020-03-05 International Business Machines Corporation Systems and methods for anomaly detection in a distributed computing system

Also Published As

Publication number Publication date
WO2022000398A1 (en) 2022-01-06
EP4176566A4 (en) 2024-02-28
US20230229550A1 (en) 2023-07-20
EP4176566A1 (en) 2023-05-10

Similar Documents

Publication Publication Date Title
CN115315922A (zh) 检测指示网络操作特性的度量并基于检测到的异常进行识别和控制
US10949535B2 (en) Security model training and threshold selection
US10210036B2 (en) Time series metric data modeling and prediction
US8966392B2 (en) Event management apparatus, systems, and methods
US9658910B2 (en) Systems and methods for spatially displaced correlation for detecting value ranges of transient correlation in machine data of enterprise systems
US7310590B1 (en) Time series anomaly detection using multiple statistical models
US7882075B2 (en) System, method and program product for forecasting the demand on computer resources
US20180027002A1 (en) Outlier detection in enterprise threat detection
CN110489306A (zh) 一种报警阈值确定方法、装置、计算机设备及存储介质
US10860410B2 (en) Technique for processing fault event of IT system
CN107222331B (zh) 分布式应用系统性能的监控方法、装置、存储介质及设备
US20160224400A1 (en) Automatic root cause analysis for distributed business transaction
RU2699054C2 (ru) Восстановление доступа для использования основанной на облаке услуги после отказа системы
CN107704387B (zh) 用于系统预警的方法、装置、电子设备及计算机可读介质
CN111897700B (zh) 应用指标监控方法及装置、电子设备和可读存储介质
EP4158480A1 (en) Actionability metric generation for events
CN109976971A (zh) 硬盘状态监测方法和装置
US11086838B2 (en) Generating compact data structures for monitoring data processing performance across high scale network infrastructures
CN113114540B (zh) 一种带宽预测器的设置、服务调整方法及相关装置
US20190281134A1 (en) Sandboxing requests for web services
US11294748B2 (en) Identification of constituent events in an event storm in operations management
US20210286699A1 (en) Automated selection of performance monitors
US20170372334A1 (en) Agent-based monitoring of an application management system
CN111383044A (zh) 确定兼容模块的系统和方法
KR102464688B1 (ko) 모니터링 결과의 이벤트 등급 결정 방법 및 장치

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