CN110445680B - 网络流量异常检测方法、装置及服务器 - Google Patents
网络流量异常检测方法、装置及服务器 Download PDFInfo
- Publication number
- CN110445680B CN110445680B CN201910687114.0A CN201910687114A CN110445680B CN 110445680 B CN110445680 B CN 110445680B CN 201910687114 A CN201910687114 A CN 201910687114A CN 110445680 B CN110445680 B CN 110445680B
- Authority
- CN
- China
- Prior art keywords
- reference value
- network traffic
- data sample
- historical
- sample sequence
- 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/142—Network analysis or design using statistical or mathematical methods
-
- 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/147—Network analysis or design for predicting network behaviour
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0888—Throughput
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提出一种网络流量异常检测方法、装置及服务器,涉及网络流量预警技术领域。该方法及装置通过判断有效数据样本序列是否服从正态分布,并根据有效数据样本序列,利用与判断结果相适应的异常检测算法确定目标时刻的实际网络流量是否异常。本发明通过对以不同分布方式分布的有效数据样本序列采用不同的异常检测算法进行异常检测,使得检测过程更具备针对性,进而取得良好的预测效果。
Description
技术领域
本发明涉及网络流量预警技术领域,具体而言,涉及一种网络流量异常检测方法、装置及服务器。
背景技术
随着网络的不断发展,网络用户越来越多。各个公司为了给用户良好、稳定的体验,通常会对网络流量进行实时监控,以便在网络链路异常时(如遭受网络攻击、链路拥塞、短时流量突增突降等),能够及时发现可能存在的异常,尽可能减少异常带来的损失。
发明内容
有鉴于此,本发明的目的在于提供一种网络流量异常检测方法、装置及服务器。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供一种网络流量异常检测方法,所述网络流量异常检测方法包括:
判断获取的有效数据样本序列是否服从正态分布并生成判断结果,其中,所述有效数据样本序列包含多个历史时刻的历史网络流量;
根据所述有效数据样本序列,利用与所述判断结果相适应的异常检测算法确定目标时刻的实际网络流量是否异常。
第二方面,本发明实施例提供一种网络流量异常检测装置,所述网络流量异常检测装置包括:
判断模块,用于判断获取的有效数据样本序列是否服从正态分布并生成判断结果,其中,所述有效数据样本序列包含多个历史时刻的历史网络流量;
检测模块,用于根据所述有效数据样本序列,利用与所述判断结果相适应的异常检测算法确定目标时刻的实际网络流量是否异常。
第三方面,本发明实施例提供一种服务器,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式任一所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式中任一项所述的网络流量异常检测方法。
本发明实施例提供的网络流量异常检测方法、装置及服务器,通过判断有效数据样本序列是否服从正态分布,并根据有效数据样本序列,利用与判断结果相适应的异常检测算法确定目标时刻的实际网络流量是否异常。本发明通过对以不同分布方式分布的有效数据样本序列采用不同的异常检测算法进行异常检测,使得检测过程更具备针对性,进而取得良好的预测效果。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的服务器的方框示意图。
图2示出了本发明实施例提供的网络流量异常检测方法的流程图。
图3示出了图2中S202的具体流程图。
图4示出了图3中S2021的具体流程图。
图5示出了正态分布曲线。
图6示出了本发明实施例提供的网络流量异常检测方法进一步的流程图。
图7示出了本发明实施例提供的网络流量异常检测装置的功能模块图。
图标:100-服务器;110-存储器;120-处理器;130-通信模块;200-网络流量异常检测装置;210-判断模块;220-检测模块;230-异常得分确定模块;240-异常等级确定模块;250-更新模块。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
随着网络的不断发展,各个公司基于网络延伸出的产品线越来越多,能够准确地获得网络流量随时间变化的曲线显得至关重要。现有技术中,有方案通过训练集训练网络流量序列的回归模型,并基于该回归模型及当前时刻的前一段时间的网络流量序列预测当前时刻的网络流量值,然后根据预测得到的当前时刻的网络流量值对实际观测得到的当前时刻的网络流量值进行异常检测。
利用这种方法的缺点在于,一是并不知道当前时刻的前一段时间的网络流量序列的分布方式,直接采用单一的方法进行预测较为笼统且没针对性,导致预测结果存在较大误差;二是不能根据当前的预测结果及时调整模型,会一直累积误差,导致预测误差较大。从而,本发明提供了一种服务器、网络流量异常检测方法及装置来解决上述问题。
请参照图1,是服务器100的方框示意图。所述服务器100包括存储器110、处理器120及通信模块130。所述存储器110、处理器120以及通信模块130各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,存储器110用于存储程序或者数据。所述存储器110可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(ErasableProgrammable Read-Only Memory,EPROM),电可擦除只读存储器(Electric ErasableProgrammable Read-Only Memory,EEPROM)等。
处理器120用于读/写存储器110中存储的数据或程序,并执行相应的功能。
通信模块130用于通过网络建立所述服务器100与其它通信终端之间的通信连接,并用于通过所述网络收发数据。
应当理解的是,图1所示的结构仅为服务器100的结构示意图,所述服务器100还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。图1中所示的各组件可以采用硬件、软件或其组合实现。
本发明还提供了一种网络流量异常检测方法,应用于上述服务器100。请参阅图2,为本发明提供的网络流量异常检测方法的流程图。该网络流量异常检测方法包括:
S201,判断获取的有效数据样本序列是否服从正态分布并生成判断结果。
其中,有效数据样本序列包含多个历史时刻对应的历史网络流量,还可以包括各个历史时刻。在一种可选的实施方式中,该有效数据样本序列是服务器100从数据库中实时获取的。其中,该数据库既可以设置于该服务器100,也可以设置于与该服务器100通信连接的其他服务器100。
需要说明的是,有效数据样本序列是实时更新的。特殊地,若当前时刻为第一个时刻(即第一次从数据库获取有效数据样本序列的时刻),则当前时刻的有效数据样本序列为通过对历史数据样本序列进行预处理后得到的。而若当前时刻不为第一个时刻,则当前时刻的有效数据样本序列是在当前时刻的前一时刻的有效数据样本序列的基础上,基于当前时刻的前一时刻的实际网络流量或当前时刻的前一时刻的网络流量修正值进行更新得到的。
其中,历史数据样本序列包括多个历史时刻的原始网络流量;同时,历史数据样本序列也还可以包括多个历史时刻。历史数据样本序列包含的多个原始网络流量可由流量采集模块从多台交换机处采集得到,并以时间序列的方式存储至数据库。在一种可选的实施方式中,流量采集模块每隔1分钟(也可以为其他时间间隔,如2、3、4分钟等)采集一次原始网络流量,并存储至数据库。同时,每条链路,分上行和下行两个方向采集,上行流量表示单位时间注入到该链路的字节数,即上传;下行流量表示单位时间离开该链路的字节数,即下载。也即,每个历史时刻对应的原始网络流量包括上行流量以及下行流量。
例如,服务器100获取的历史数据样本序列的数据格式可如表1所示:
表1
其中,时间2018/10/1716:51即为一个历史时刻,该时刻对应原始网络流量中,下行网络流量为9131184bit/s,上行网络流量为3532293bit/s。
由于直接利用历史数据样本序列进行网络流量异常检测,会存在较大的误差。因此,为提高检测结果的准确性,在第一次判断当前时刻的实际网络流量是否异常时,需要从数据库读取历史数据样本序列,并对历史数据样本序列进行预处理得到有效数据样本序列。可选地,可以将第一次预处理得到的有效数据样本序列也存储在数据库中,但与历史数据样本序列分开存储。或者,还可以将有效数据样本序列覆盖历史数据样本序列。
常见的预处理方式包括但不仅限于数据清洗、归一化处理、标准化处理、异常值处理以及数据补全处理等等。在本实施例中,主要进行异常值处理以及数据补全处理。也即,对历史数据样本序列进行异常值处理以及数据补全处理便能得到有效数据样本序列。
在一种可选的实施方式中,可采用粗粒度的方法筛选出历史数据样本序列中的异常值。例如,先求取历史数据样本序列中,所有原始网络流量的均值与标准差,并将满足l>u'+3σ'或l<u'-3σ'的原始网络流量确定为异常值;其中,l为原始网络流量,u'为所有原始网络流量的均值,σ'为所有原始网络流量的标准差。
异常值可能是由计算错误或流量采集模块采集过程失误造成的,对于这类异常值,需要对其进行异常值处理。具体地,对异常值进行平滑处理。例如,可以取异常值所在时刻的前后时刻对应的原始网络流量的均值替代该异常值,并作为该时刻对应的历史网络流量;或者也可以将所有原始网络流量的中值替换该异常值,并作为该时刻对应的历史网络流量。
例如,若确定t时刻对应的原始网络流量l1为异常值,且t-1时刻对应的原始网络流量为l2,t+1时刻对应的原始网络流量为l3,则将(l2+l3)/2作为t时刻对应的历史网络流量。
同时,在流量采集模块采集数据的过程中,很可能未采集到某些时刻的网络流量;或者在数据传输的过程中,某些时刻的网络流量数据丢失。总之,数据丢失同样会造成检测结果不准确。因而,需要先确定历史数据样本序列中是否缺少某个历史时刻的原始网络流量,若存在缺失的情况,则需对数据进行补全。
需要说明的是,数据补全处理方法包括但不仅限于均值法、中位数法、递增法、预测法等等。例如,采用所有原始网络流量的均值、中位数作为该时刻的历史网络流量。
在获取有效数据样本序列后,需要判断有效数据样本序列是否服从正态分布。本发明实施例提供的正态分布检验方法可以是但不限于χ2拟合优度检验法、K-S正态检验法、峰度偏度检验法等等。在本实施例中,以峰度偏度检验法为例,说明如何判断有效数据样本序列是否服从正态分布。峰度偏度检验法又称为Jarque-Bera(JB)检验法,其原理如下:
首先计算偏度系数S,偏度系数S是对有效数据样本序列的概率密度函数对称性的度量。其中,偏度系数S满足算式:
然后计算峰度系数K,峰度系数K是对概率密度函数胖瘦的度量。其中,峰度系数K满足算式:
最后根据偏度系数S与峰度系数K计算检验统计量JB:
若检验统计量JB的值大于预设定的临界值χ2,则表明该有效数据样本序列不服从正态分布。若检验统计量JB的值小于或等于预设定的临界值χ2,则表明该有效数据样本序列服从正态分布。特殊地,当检验统计量JB为0时,表明该有效数据样本序列服从标准的正态分布。
需要说明的是,当原始网络流量包括上行流量以及下行流量时,在对历史数据样本序列进行预处理时,需要对其中的上行流量以及下行流量均进行预处理,从而得到的有效数据样本序列中实际包含上行流量序列以及下行流量序列;因此,需要利用上述方法,分别判断有效数据样本序列包含的上行流量序列以及下行流量序列是否满足正态分布并生成判断结果。
S202,根据有效数据样本序列,利用与判断结果相适应的异常检测算法确定目标时刻的实际网络流量是否异常。
其中,实际网络流量即为流量采集模块在目标时刻采集到的网络流量。在一种可选的实施方式中,若判断结果为有效数据样本序列服从正态分布,则与其适应的异常检测算法满足K-sigma原则:若判断结果为有效数据样本序列不服从正态分布,则与其适应的异常检测算法为自适应平滑系数算法。
请参阅图3,为本发明提供的网络流量异常检测方法进一步的流程图。该S202包括:
S2021,根据有效数据样本序列,利用与判断结果相适应的异常检测算法确定第一基准值及第二基准值。
同样地,确定第一基准值及第二基准值的异常检测算法与判断结果关联。判断结果包括有效数据样本序列服从正态分布以及有效数据样本序列不服从正态分布这两种结果。在一种可选的实施方式中,若判断结果为有效数据样本序列服从正态分布,则利用K-sigma原则确定第一基准值及第二基准值;若判断结果为有效数据样本序列不服从正态分布,则利用自适应指数平滑算法确定第一基准值及第二基准值。其中,第一基准值大于第二基准值。
从而,请参阅图4,S2021包括:若判断结果为有效数据样本序列服从正态分布,则执行S20211;若判断结果为有效数据样本序列不服从正态分布,则执行S20213。
S20211,根据多个历史时刻的历史网络流量,计算有效数据样本序列的期望值及标准差。
其中,K-sigma原则为当时序数据服从正态分布时(如图5所示),在u±3σ内包含了99.73%的时序数据,分布在u±3σ以外的数据为异常数据。
因此,先基于有效数据样本序列包含的多个历史网络流量计算有效数据样本序列的期望值及标准差。
S20212,根据期望值及标准差确定第一基准值及第二基准值。
具体地,在有效数据样本序列服从正态分布时,第一基准值B1满足:B1=μ+3σ,第二基准值B2满足:B2=μ-3σ;其中,μ为有效数据样本序列的期望值,σ为有效数据样本序列的标准差。
S20213,根据多个历史时刻的历史网络流量,计算有效数据样本序列的标准差。
S20214,确定有效数据样本序列在目标时刻的前一时刻的平滑系数。
本发明实施例提供的自适应指数平滑算法是在一次指数平滑的基础上,自动调节平滑系数,其能及时跟踪预测目标的变化,从而减小预测累积误差,最终使得预测误差达到最小。其中,一次指数平滑的原理是任一时刻的指数平滑值都是该时刻的前一时刻的实际值和前一时刻的指数平滑值的加权平均,基本公式如下:
yt+1=α*yt'+(1-α)yt
其中,yt+1为t+1时刻的网络流量预测值,yt'为t时刻的网络流量实际值,yt为t时刻的网络流量预测值(也即t时刻的指数平滑值),α为平滑系数,也称为加权因子,其反应了有效数据样本序列变化的剧烈程度,一般取(0.05,0.3)。
通常地,第一时刻的网络流量预测值y1可等于第一时刻的网络流量实际值y1',即y1=y1'。
而自适应指数平滑法中平滑系数的确定方法如下:
假设在t时刻的指数平滑预测误差et满足:et=yt'-yt;
其中,yt'为t时刻的网络流量实际值,yt为t时刻的网络流量预测值。
综合预测误差Et满足:Et+1=βet+1+(1-β)Et(t=2,3,4……);
其中,β是预测误差的权重,一般取经验值(0.1或0.2)即可,且取E1=0。
绝对平滑误差Mt满足:Mt+1=β|et+1|+(1-β)Mt(M1=0,且t=2,3,4……);
则,自适应平滑系数αt满足:αt=|Et|/Mt(t=2,3,4……且α1=0);
求出自适应平滑参数后,就可以用动态αt代替恒定的α,从而得到自适应指数平滑的预测模型如下:
yt+1=αtyt'+(1-αt)yt;
从而,确定目标时刻的前一时刻的平滑系数的过程如下:
一种可能的实施方式为,根据α1=0、y1=y1'以及算式yt+1=αtyt'+(1-αt)yt计算得出第二时刻的网络流量预测值y2,再结合第二时刻的网络流量实际值y2'计算第二时刻的指数平滑预测误差e2;然后根据第二时刻的指数平滑预测误差e2计算第二时刻的综合预测误差E2及绝对平滑误差M2,并以此计算出第二时刻的平滑系数α2;接着根据第二时刻的平滑系数α2、第二时刻的网络流量实际值y2'以及第二时刻的网络流量预测值y2计算第三时刻的网络流量预测值y3……以此类推,计算得到目标时刻的前一时刻的平滑系数,从而可以保证确定出的平滑系数的准确性。
另一种可能的实施方式为,根据上述平滑系数相关公式,预先计算出各个时刻对应的平滑系数,然后存储至数据库中,在进行存储时可以对有效数据样本序列中的历史网络流量进行编号,然后再确定出各个时刻的平滑系数后,建立编号与平滑系数的对应关系。这样,当需要确定目标时刻的网络的第二预测网络流量时,则可以确定目标时刻的前一时刻在有效数据样本序列中的编号,然后基于该编号从上述对应关系中确定该编号对应的平滑系数,也即目标时刻的前一时刻的平滑系数。例如,有效数据样本序列一共包含1440个历史时刻及每个历史时刻对应的历史网络流量,若由目标时刻的前一时刻确定的历史时刻位于1440个历史时刻中的第128位,即目标时刻的前一时刻的编号为128,则可以基于上述对应关系确定出编号128对应的平滑系数α128,并将α128确定为有效数据样本序列在所述目标时刻的前一时刻的平滑系数,且α128=|E128|/M128。由此可以快速确定出目标时刻的前一时刻的平滑系数,进而可以快速确定出目标时刻的第二预测网络流量,在一定程度上加快了确定目标时刻的实际网络是否异常的速度。
S20215,根据平滑系数、第一历史网络流量以及第一预测网络流量预测得到目标时刻的第二预测网络流量。
其中,第一预测网络流量为预测得到的目标时刻的前一时刻的网络流量。第一历史网络流量为目标时刻的前一时刻对应的历史网络流量。
以目标时刻为第129时刻为例,则目标时刻的第二网络流量即为y129,则y129=α128y128'+(1-α128)y128,其中,α128可以由步骤S20214中提供的任一种实施方式确定出。
S20216,根据第二预测网络流量及标准差确定第一基准值及第二基准值。
具体地,当有效数据样本序列不服从正态分布时,第一基准值B1满足:B1=yt+3σ,第二基准值B2满足:B2=yt-3σ;其中,yt为第二预测网络流量,σ为有效数据样本序列的标准差。
S2022,判断实际网络流量是否大于第一基准值,如果是,则执行S2024;如果否,则执行S2023。
具体地,若判断结果为有效数据样本序列服从正态分布,则判断实际网络流量是否大于μ+3σ;若判断结果为有效数据样本序列不服从正态分布,则判断实际网络流量是否大于yt+3σ。
S2023,判断实际网络流量是否小于第二基准值,如果是,则继续执行S2024;如果否,则执行S2025。
具体地,若判断结果为有效数据样本序列服从正态分布,则判断实际网络流量是否小于μ-3σ;若判断结果为有效数据样本序列不服从正态分布,则判断实际网络流量是否小于yt-3σ。
S2024,确定实际网络流量异常。
具体地,若实际网络流量大于第一基准值或小于第二基准值,表明该实际网络流量为异常数据。
S2025,确定实际网络流量正常。
具体地,若实际网络流量不大于第一基准值且不小于第二基准值,则确定实际网络流量正常。
为了更直观地让用户获知异常的网络流量的异常程度,可以确定网络流量的异常等级,请参阅图6,本发明提供的网络流量异常检测方法还包括:
S203,若实际网络流量大于第一基准值或小于第二基准值,则根据实际网络流量及第一基准值或实际网络流量及第二基准值确定异常得分。
其中,若实际网络流量大于第一基准值,则根据第一基准值及实际网络流量确定异常得分;若实际网络流量小于第二基准值,则根据第二基准值及实际网络流量确定异常得分。
具体地,若实际网络流量大于第一基准值,则将实际网络流量和第一基准值形成的差与第一基准值的比值确定为异常得分。也即,实际网络流量、第一基准值以及异常得分满足算式:
其中,score为异常得分,xt为实际网络流量,B1为第一基准值。
若实际网络流量小于第二基准值,则将第二基准值和实际网络流量形成的差与第二基准值的比值确定为异常得分。也即,实际网络流量、第二基准值以及异常得分满足算式:
其中,score为异常得分,xt为实际网络流量,B2为第二基准值。
S204,根据异常得分确定目标时刻的网络流量的异常等级。
需要说明的是,异常得分越高,则目标时刻的网络流量的异常等级越高。
在一种可选的实施方式中,若s1<socre≤s2,则目标时刻的网络流量的异常等级为轻微异常;若s2<socre≤s3,则目标时刻的网络流量的异常等级为中等异常;若socre>s3,则目标时刻的网络流量的异常等级为严重异常。在一种可选的实施方式中,服务器100可根据不同的异常等级生成不同的提示信息,以提醒用户实际网络流量的异常程度。这样,用户可以根据提示信息快速地执行不同的应对措施,以保证通信链路正常提供服务。
其中,s1为预设定的第一得分阈值,s2为预设定的第二得分阈值,s3为预设定的第三得分阈值,且s1<s2<s3。在一种可选的实施方式中,预设定的第一得分阈值为0,预设定的第二得分阈值为20,预设定的第三得分阈值为50。
S205,根据多个历史时刻的历史网络流量确定网络流量修正值。
若目标时刻的实际网络流量异常,则还需根据多个历史时刻的历史网络流量确定目标时刻的网络流量修正值。该网络流量修正值可以但不仅限于有效数据样本序列中多个历史网络流量的均值、有效数据样本序列中多个历史网络流量的中值等等。
S206,基于网络流量修正值及目标时刻对有效数据样本序列进行更新。
具体地,当对目标时刻进行异常检测后,该目标时刻就会成为历史时刻,则将目标时刻的网络流量修正值作为目标时刻对应的历史网络流量对有效数据样本序列进行更新,并存储至数据库中,以便目标时刻的下一时刻可基于新的有效数据样本序列判断目标时刻的下一时刻的实际网络流量是否异常。
S207,若实际网络流量不大于第一基准值且不小于第二基准值,确定异常得分为0。
在实际网络流量不大于第一基准值且不小于第二基准值的情况下,实际网络流量正常,从而可以直接确定异常得分为0。
S208,基于实际网络流量及目标时刻对有效数据样本序列进行更新。
由于目标时刻的实际网络流量正常,因此无需对其进行处理,直接将目标时刻的实际网络流量作为目标时刻对应的历史网络流量对有效数据样本序列进行更新,并存储至数据库中,以便目标时刻的下一时刻可基于新的有效数据样本序列判断目标时刻的下一时刻的实际网络流量是否异常。
从而,本发明提供的网络流量异常检测算法,首先判断有效数据样本序列是否服从正态分布,若有效数据样本序列服从正态分布,则利用K-sigma原则确定第一基准值及第二基准值;若有效数据样本序列不服从正态分布,则利用自适应指数平滑算法确定第一基准值及第二基准值,从而根据第一基准值及第二基准值判断目标时刻的实际网络流量是否异常。由于在有效数据样本序列服从或不服从正态分布时,会采用不同的算法确定第一基准值及第二基准值;也即对以不同分布方式分布的有效数据样本序列采用不同的异常检测算法进行异常检测,使得检测过程更具备针对性,进而取得更精准的预测效果。
为了执行上述实施例及各个可能的方式中的相应步骤,下面给出一种网络流量异常检测装置200的实现方式,可选地,该网络流量异常检测装置200可以采用上述图1所示的处理器120的器件结构。进一步地,请参阅图7,图7为本发明实施例提供的一种网络流量异常检测装置200的功能模块图。需要说明的是,本实施例所提供的网络流量异常检测装置200,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。该网络流量异常检测装置200包括:判断模块210、检测模块220、异常得分确定模块230、异常等级确定模块240以及更新模块250。
判断模块210用于判断获取的有效数据样本序列是否服从正态分布并生成判断结果。
可以理解地,在一种可选的实施方式中,判断模块210可用于执行S201。
检测模块220用于根据有效数据样本序列,利用与判断结果相适应的异常检测算法确定目标时刻的实际网络流量是否异常。
具体地,检测模块220用于根据有效数据样本序列,利用与判断结果相适应的异常检测算法确定第一基准值及第二基准值,以及若实际网络流量大于第一基准值或小于第二基准值,则确定实际网络流量异常;若实际网络流量不大于第一基准值且不小于第二基准值,则确定实际网络流量正常。
其中,若判断结果为有效数据样本序列服从正态分布,则根据多个历史时刻的历史网络流量计算有效数据样本序列的期望值及标准差,并根据期望值及标准差确定第一基准值及第二基准值。
若判断结果为有效数据样本序列不服从正态分布,则根据多个历史时刻的历史网络流量计算有效数据样本序列的标准差,并确定有效数据样本序列在目标时刻的前一时刻的平滑系数,然后根据平滑系数、第一历史网络流量以及第一预测网络流量预测得到目标时刻的第二预测网络流量,最后根据第二预测网络流量及标准差确定第一基准值及第二基准值。
可以理解地,在一种可选的实施方式中,检测模块220可用于执行S202、S2021、S20211、S20212、S20213、S20214、S20215、S20216、S2022、S2023、S2024以及S2025。
异常得分确定模块230用于若实际网络流量大于第一基准值或小于第二基准值,则根据实际网络流量及第一基准值或实际网络流量及第二基准值确定异常得分。
可以理解地,在一种可选的实施方式中,异常得分确定模块230可用于执行S203。
异常等级确定模块240用于根据异常得分确定目标时刻的网络流量的异常等级。
可以理解地,在一种可选的实施方式中,异常等级确定模块240可用于执行S204。
更新模块250用于若目标时刻的实际网络流量异常,则根据多个历史时刻的历史网络流量确定网络流量修正值,并基于网络流量修正值及目标时刻对有效数据样本序列进行更新。
可以理解地,在一种可选的实施方式中,更新模块250可用于执行S205及S206。
异常得分确定模块230还用于若实际网络流量不大于第一基准值且不小于第二基准值,则确定异常得分为0。
可以理解地,在一种可选的实施方式中,异常得分确定模块230可用于执行S207。
更新模块250还用于若目标时刻的实际网络流量正常,则基于实际网络流量及目标时刻对有效数据样本序列进行更新。
可以理解地,在一种可选的实施方式中,更新模块250可用于执行S205及S208。
可选地,上述模块可以软件或固件(Firmware)的形式存储于图1所示的存储器110中或固化于该服务器100的操作***(Operating System,OS)中,并可由图1中的处理器120执行。同时,执行上述模块所需的数据、程序的代码等可以存储在存储器110中。
综上所述,本发明提供的网络流量异常检测方法、装置及服务器,通过判断有效数据样本序列是否服从正态分布,并根据有效数据样本序列,利用与判断结果相适应的异常检测算法确定目标时刻的实际网络流量是否异常。本发明通过对以不同分布方式分布的有效数据样本序列采用不同的异常检测算法进行异常检测,使得检测过程更具备针对性,进而取得良好的预测效果。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种网络流量异常检测方法,其特征在于,所述网络流量异常检测方法包括:
判断获取的有效数据样本序列是否服从正态分布并生成判断结果,其中,所述有效数据样本序列包含多个历史时刻的历史网络流量,所述多个历史时刻的历史网络流量包含目标时刻的前一时刻的第一历史网络流量;
根据所述有效数据样本序列,利用与所述判断结果相适应的异常检测算法确定第一基准值及第二基准值,其中,所述第一基准值大于所述第二基准值;
其中,若所述判断结果为所述有效数据样本序列不服从正态分布,则所述根据所述有效数据样本序列,利用与所述判断结果相适应的异常检测算法确定第一基准值及第二基准值的步骤包括:
根据所述多个历史时刻的历史网络流量,计算所述有效数据样本序列的标准差;
确定所述有效数据样本序列在所述目标时刻的前一时刻的平滑系数;
根据所述平滑系数、所述第一历史网络流量以及第一预测网络流量预测得到所述目标时刻的第二预测网络流量,其中,所述第一预测网络流量为预测得到的所述目标时刻的前一时刻的网络流量;
根据所述第二预测网络流量及所述标准差确定所述第一基准值及所述第二基准值;
若实际网络流量大于所述第一基准值或小于所述第二基准值,则确定所述实际网络流量异常;
若所述实际网络流量不大于所述第一基准值且不小于所述第二基准值,则确定所述实际网络流量正常。
2.根据权利要求1所述的网络流量异常检测方法,其特征在于,若所述判断结果为所述有效数据样本序列服从正态分布,则所述根据所述有效数据样本序列,利用与所述判断结果相适应的异常检测算法确定第一基准值及第二基准值的步骤包括:
根据所述多个历史时刻的历史网络流量,计算所述有效数据样本序列的期望值及标准差;
根据所述期望值及所述标准差确定所述第一基准值及所述第二基准值。
3.根据权利要求1或2所述的网络流量异常检测方法,其特征在于,所述方法还包括:
若所述实际网络流量大于所述第一基准值,则根据所述第一基准值及所述实际网络流量确定异常得分;
若所述实际网络流量小于所述第二基准值,则根据所述第二基准值及所述实际网络流量确定所述异常得分。
4.根据权利要求3所述的网络流量异常检测方法,其特征在于,所述根据所述第一基准值及所述实际网络流量确定所述异常得分的步骤包括:
将所述实际网络流量和所述第一基准值形成的差与所述第一基准值的比值确定为所述异常得分;
所述根据所述第二基准值及所述实际网络流量确定所述异常得分的步骤包括:
将所述第二基准值和所述实际网络流量形成的差与所述第二基准值的比值确定为所述异常得分。
5.根据权利要求3所述的网络流量异常检测方法,其特征在于,所述方法还包括:
根据所述异常得分确定所述目标时刻的实际网络流量的异常等级。
6.根据权利要求1或2所述的网络流量异常检测方法,其特征在于,所述方法还包括:
若所述目标时刻的实际网络流量异常,则根据所述多个历史时刻的历史网络流量确定网络流量修正值;
基于所述网络流量修正值及所述目标时刻对所述有效数据样本序列进行更新。
7.一种网络流量异常检测装置,其特征在于,所述网络流量异常检测装置包括:
判断模块,用于判断获取的有效数据样本序列是否服从正态分布并生成判断结果,其中,所述有效数据样本序列包含多个历史时刻的历史网络流量,所述多个历史时刻的历史网络流量包含目标时刻的前一时刻的第一历史网络流量;
检测模块,用于若所述判断结果为所述有效数据样本序列不服从正态分布,则根据所述多个历史时刻的历史网络流量,计算所述有效数据样本序列的标准差;
所述检测模块还用于确定所述有效数据样本序列在所述目标时刻的前一时刻的平滑系数;
所述检测模块还用于根据所述平滑系数、所述第一历史网络流量以及第一预测网络流量预测得到所述目标时刻的第二预测网络流量,其中,所述第一预测网络流量为预测得到的所述目标时刻的前一时刻的网络流量;
所述检测模块还用于根据所述第二预测网络流量及所述标准差确定第一基准值及第二基准值;
所述检测模块还用于若实际网络流量大于所述第一基准值或小于所述第二基准值,则确定所述实际网络流量异常;
所述检测模块还用于若所述实际网络流量不大于所述第一基准值且不小于所述第二基准值,则确定所述实际网络流量正常。
8.一种服务器,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-6任一所述的网络流量异常检测方法。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-6中任一项所述的网络流量异常检测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910687114.0A CN110445680B (zh) | 2019-07-29 | 2019-07-29 | 网络流量异常检测方法、装置及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910687114.0A CN110445680B (zh) | 2019-07-29 | 2019-07-29 | 网络流量异常检测方法、装置及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110445680A CN110445680A (zh) | 2019-11-12 |
CN110445680B true CN110445680B (zh) | 2021-06-08 |
Family
ID=68431913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910687114.0A Active CN110445680B (zh) | 2019-07-29 | 2019-07-29 | 网络流量异常检测方法、装置及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110445680B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112911627B (zh) * | 2019-11-19 | 2023-03-21 | 中国电信股份有限公司 | 无线网络性能检测方法、装置以及存储介质 |
CN111092891B (zh) * | 2019-12-20 | 2022-04-01 | 杭州安恒信息技术股份有限公司 | 一种网络中异常点的检测方法、检测***及相关装置 |
CN111245684B (zh) * | 2020-01-13 | 2021-12-21 | 智者四海(北京)技术有限公司 | 流量调度方法和装置、电子设备、计算机可读介质 |
CN111884874B (zh) * | 2020-07-15 | 2022-02-01 | 中国舰船研究设计中心 | 一种基于可编程数据平面的舰船网络实时异常检测方法 |
CN113645215B (zh) * | 2021-08-03 | 2023-05-26 | 恒安嘉新(北京)科技股份公司 | 异常网络流量数据的检测方法、装置、设备及存储介质 |
CN114741377B (zh) * | 2022-04-01 | 2023-07-21 | 深圳市爱路恩济能源技术有限公司 | 识别天然气异常数据并对其处理的方法和装置 |
CN116519021B (zh) * | 2023-06-29 | 2023-09-15 | 西北工业大学 | 一种惯性导航***故障诊断方法、***及设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1617512A (zh) * | 2004-11-25 | 2005-05-18 | 中国科学院计算技术研究所 | 一种自适应网络流量预测和异常报警方法 |
CN101651568B (zh) * | 2009-07-01 | 2011-12-07 | 青岛农业大学 | 一种网络流量预测和异常检测方法 |
CN107483455B (zh) * | 2017-08-25 | 2020-07-14 | 国家计算机网络与信息安全管理中心 | 一种基于流的网络节点异常检测方法和*** |
CN107579981A (zh) * | 2017-09-08 | 2018-01-12 | 北京神州绿盟信息安全科技股份有限公司 | 一种网络流量监控方法及*** |
CN109873712B (zh) * | 2018-05-18 | 2022-03-22 | 新华三信息安全技术有限公司 | 一种网络流量预测方法及装置 |
CN109558295B (zh) * | 2018-11-15 | 2022-05-24 | 新华三信息安全技术有限公司 | 一种性能指标异常检测方法及装置 |
CN109726198A (zh) * | 2018-12-06 | 2019-05-07 | 中科恒运股份有限公司 | 异常数据处理方法及装置 |
-
2019
- 2019-07-29 CN CN201910687114.0A patent/CN110445680B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110445680A (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110445680B (zh) | 网络流量异常检测方法、装置及服务器 | |
US10747188B2 (en) | Information processing apparatus, information processing method, and, recording medium | |
CN107480028B (zh) | 磁盘可使用的剩余时长的获取方法及装置 | |
US9996444B2 (en) | Automated methods and systems for calculating hard thresholds | |
CN112188531B (zh) | 异常检测方法、装置、电子设备及计算机存储介质 | |
US8456295B2 (en) | Alarm generation method for patient monitoring, physiological monitoring apparatus and computer program product for a physiological monitoring apparatus | |
US8862119B2 (en) | Method and apparatus for telecommunications network performance anomaly events detection and notification | |
CN106096226B (zh) | 一种数据评估方法、装置及服务器 | |
US20110161048A1 (en) | Method to Optimize Prediction of Threshold Violations Using Baselines | |
CN111262750B (zh) | 一种用于评估基线模型的方法及*** | |
CN110888412B (zh) | 半导体器件和分析*** | |
EP3495905A2 (en) | Operational improvement effect calculation device, operational improvement effect calculation method and recording medium | |
JPWO2011155308A1 (ja) | 契約違反予測システム、契約違反予測方法および契約違反予測プログラム | |
US9235556B2 (en) | Adaptive baseline based on metric values | |
EP3502979A1 (en) | A probability-based detector and controller apparatus, method, computer program | |
JP6718367B2 (ja) | 判定システム、判定方法、及びプログラム | |
CN109960626B (zh) | 端口异常的识别方法、装置、设备及介质 | |
JP4354480B2 (ja) | 異常トラヒック検知装置および方法 | |
CN113916318A (zh) | 一种基于水情监测的大坝安全监测方法 | |
CN111241155B (zh) | 时序数据异常检测方法、装置、设备及存储介质 | |
CN113123955B (zh) | 柱塞泵异常检测方法、装置、存储介质及电子设备 | |
JP6625839B2 (ja) | 負荷実績データ判別装置、負荷予測装置、負荷実績データ判別方法及び負荷予測方法 | |
CN112905463A (zh) | 软件测试监控方法、装置、电子设备及可读存储介质 | |
JP5985328B2 (ja) | 蓄電池の残存価値格付け装置およびプログラム | |
US20210172921A1 (en) | Self-tuning event detection |
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 |