首页 / 专利库 / 信号处理 / 自回归模型 / 异常流量监测方法、装置、设备及存储介质

异常流量监测方法、装置、设备及存储介质

阅读:335发布:2020-05-15

专利汇可以提供异常流量监测方法、装置、设备及存储介质专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种异常流量监测方法,包括:收集用户 访问 记录;对原始数据进行清洗与统计处理,生成第一流量时序数据;对第一流量时序数据进行多尺度小波分解,得到各层小波系数;以各层小波系数为分析对象,建立对应的平稳时间序列模型并进行预测,得到各层预测小波系数;对各层预测小波系数进行小波重构,得到第二流量时序数据;以第二流量时序数据为流量预测值,将同一时间对应的实际流量值与流量预测值进行比对;若实际流量值在流量预测值的置信区间内,则判定当前网络流量正常,否则判定当前网络流量异常。本发明还公开了一种异常流量监测装置、设备及计算机可读存储介质。本发明提升了异常流量监测准确率,降低了部署成本。,下面是异常流量监测方法、装置、设备及存储介质专利的具体信息内容。

1.一种异常流量监测方法,其特征在于,所述异常流量监测方法包括以下步骤:
基于预置埋点,收集预设时间段内的用户访问记录;
对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据,所述第一流量时序数据反映访问量和时间的对应关系;
通过预置的低通滤波器高通滤波器,采用多分辨分析算法对所述第一流量时序数据进行多尺度小波分解,得到各层小波分解分别对应的小波系数;
以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数;
采用逆小波变换对各层对应的所述预测小波系数进行小波重构,得到第二流量时序数据;
以所述第二流量时序数据为流量预测值,将同一时间对应的实际流量值与所述流量预测值进行比对;
若所述实际流量值在所述流量预测值的置信区间内,则判定当前网络流量正常;若所述实际流量值超过所述流量预测值的置信区间,则判定当前网络流量异常。
2.如权利要求1所述的异常流量监测方法,其特征在于,所述对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据包括:
检测所述用户访问记录中的原始数据是否存在缺失值;
若存在缺失值,则计算每个字段对应的缺失值比例,并根据所述缺失值比例与字段重要程度进行缺失值清洗,所述缺失值清洗包括:删除缺失值字段、使用插值法补全缺失值;
对所述用户访问记录中的原始数据进行排序,并计算排序后的每条记录与相邻记录之间的相似度;
若不同记录之间的相似度超过预置阈值,则判定为重复记录并删除多余的数据;
对清洗后的数据进行按照时间顺序进行访问量统计,生成访问量对应的所述第一流量时序数据。
3.如权利要求1或2所述的异常流量监测方法,其特征在于,所述以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数包括:
分别对各层小波系数进行平稳性检测,以判断各层小波系数是否为平稳时间序列;
若存在一层或多层小波系数为非平稳时间序列,则对所述一层或多层小波系数进行差分运算,直到任一层小波系数均为平稳时间序列;
若任一层小波系数均为平稳时间序列,则分别对各层小波系数进行白噪声检测;
若任一层小波系数均为平稳非白噪声时间序列,则分别计算各层小波系数的自相关系数及偏自相关系数;
根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型;
若各层小波系数均适合自回归移动平均模型,则基于预置定阶准则,确定待构建的自回归移动平均模型的阶数;
对待构建的自回归移动平均模型进行参数估计,得到模型参数值;
基于确定的阶数及所述模型参数值,分别构建各层小波系数对应的自回归移动平均模型;
基于构建的各自回归移动平均模型,分别对各层小波系数进行预测,得到各层对应的所述预测小波系数。
4.如权利要求3所述的异常流量监测方法,其特征在于,所述根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型包括:
判断各层小波系数各自对应的偏自相关系数是否拖尾以及判断各层小波系数各自对应的自相关系数是否截尾;
若各层小波系数各自对应的偏自相关系数均截尾、自相关系数均拖尾,则确定各层小波系数均适合自回归模型
若各层小波系数各自对应的偏自相关系数均拖尾、自相关系数均截尾,则确定各层小波系数均适合移动平均模型;
若各层小波系数各自对应的偏自相关系数均拖尾、自相关系数均拖尾,则确定各层小波系数均适合自回归移动平均模型。
5.如权利要求4所述的异常流量监测方法,其特征在于,在所述根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型的步骤之后,还包括:
若各层小波系数均适合自回归模型,则基于所述预置定阶准则,确定待构建的自回归模型的阶数;
对所述待构建的自回归模型进行参数估计,得到模型参数值;
基于确定的所述阶数及通过参数估计得到的所述模型参数值,分别构建各层小波系数对应的自回归模型;
基于构建的各所述自回归模型,分别对各层小波系数进行预测,得到各层对应的所述预测小波系数。
6.如权利要求4所述的异常流量监测方法,其特征在于,在所述根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型的步骤之后,还包括:
若各层小波系数均适合移动平均模型,则基于所述预置定阶准则,确定待构建的移动平均模型的阶数;
对待构建的移动平均模型进行参数估计,得到模型参数值;
基于确定的阶数及通过参数估计得到的模型参数值,分别构建各层小波系数对应的移动平均模型;
基于构建的各移动平均模型,分别对各层小波系数进行预测,得到各层对应的所述预测小波系数。
7.如权利要求1所述的异常流量监测方法,其特征在于,采用多分辨分析算法进行多尺度小波分解的对应公式如下:
cAj+1=H*cAj,cDj+1=G*cDj,j=1,2,...,J;
采用逆小波变换进行小波重构的对应公式如下:
cAj-1=H**cAj+G*cDj,j=1,2,...,J;
其中,H、G为分解算子,H表示低通滤波器,G表示高通滤波器,H*、G*分别为分解算子H、G的对偶算子,cA0表示原信号数据,cAj和cDj分别表示在分辨率2-j下原信号数据的低频信号部分和高频信号部分,J表示最大分解层数。
8.一种异常流量监测装置,其特征在于,所述异常流量监测装置包括:
收集模,用于基于预置埋点,收集预设时间段内的用户访问记录;
预处理模块,用于对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据,所述第一流量时序数据反映访问量和时间的对应关系;
分解模块,用于通过预置的低通滤波器和高通滤波器,采用多分辨分析算法对所述第一流量时序数据进行多尺度小波分解,得到各层小波分解分别对应的小波系数;
预测模块,用于以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数;
重构模块,用于采用逆小波变换对各层对应的所述预测小波系数进行小波重构,得到第二流量时序数据;
比对模块,用于以所述第二流量时序数据为流量预测值,将同一时间对应的实际流量值与流量预测值进行比对;
判定模块,用于若实际流量值在流量预测值的置信区间内,则判定当前网络流量正常;
若实际流量值超过流量预测值的置信区间,则判定当前网络流量异常。
9.一种异常流量监测设备,其特征在于,所述异常流量监测设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的异常流量监测程序,所述异常流量监测程序被所述处理器执行时实现如权利要求1-7中任一项所述的异常流量监测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有异常流量监测程序,所述异常流量监测程序被处理器执行时实现如权利要求1-7中任一项所述的异常流量监测方法的步骤。

说明书全文

异常流量监测方法、装置、设备及存储介质

技术领域

[0001] 本发明涉及网络安全技术领域,尤其涉及一种异常流量监测方法、装置、设备及存储介质。

背景技术

[0002] 随着信息时代的到来,网络异常流量监测一直是信息安全领域的重要一环。网络异常流量指网络中流量不规则地显著变化。针对网络流量在短时间内可能发生的突变异常,其背后可能存在高频操作、异常时段访问、文件异常或者访问对象异常等问题。无论是哪类问题都可能面临服务质量下降影响正常用户访问以及网络安全问题。
[0003] 传统的异常流量监测是根据请求量、流量数据包的长度、网络流量大小等基本特征以及组合特征进行流量的异常监测,该方法适于小规模、简单网络的监测,而目前很多企业所使用的网络结构不仅规模庞大,比如分支机构非常多、业务类型也多,同时应用场景也非常的多且复杂,比如,网络购物的场景,不仅涉及到客服沟通、第三方支付,同时还涉及到第三方物流以及后续的售后服务、供应商管理等,应用场景非常复杂,因而传统的异常流量监测并不适合目前复杂的网络结构以及复杂的应用场景。

发明内容

[0004] 本发明的主要目的在于提供一种异常流量监测方法、装置、设备及存储介质,旨在解决现有网络异常流量监测方式无法适应目前复杂的网络结构与应用场景的技术问题。
[0005] 为实现上述目的,本发明提供一种异常流量监测方法,所述异常流量监测方法包括以下步骤:
[0006] 基于预置埋点,收集预设时间段内的用户访问记录;
[0007] 对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据,所述第一流量时序数据反映访问量和时间的对应关系;
[0008] 通过预置的低通滤波器高通滤波器,采用多分辨分析算法对所述第一流量时序数据进行多尺度小波分解,得到各层小波分解分别对应的小波系数;
[0009] 以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数;
[0010] 采用逆小波变换对各层对应的所述预测小波系数进行小波重构,得到第二流量时序数据;
[0011] 以所述第二流量时序数据为流量预测值,将同一时间对应的实际流量值与流量预测值进行比对;
[0012] 若所述实际流量值在所述流量预测值的置信区间内,则判定当前网络流量正常;若所述实际流量值超过所述流量预测值的置信区间,则判定当前网络流量异常。
[0013] 可选地,所述对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据包括:
[0014] 检测所述用户访问记录中的原始数据是否存在缺失值;
[0015] 若存在缺失值,则计算每个字段对应的缺失值比例,并根据缺失值比例与字段重要程度进行缺失值清洗,所述缺失值清洗包括:删除缺失值字段、使用插值法补全缺失值;
[0016] 对所述用户访问记录中的原始数据进行排序,并计算排序后的每条记录与相邻记录之间的相似度;
[0017] 若不同记录之间的相似度超过预置阈值,则判定为重复记录并删除多余的数据;
[0018] 对清洗后的数据进行按照时间顺序进行访问量统计,生成访问量对应的所述第一流量时序数据。
[0019] 可选地,所述以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数包括:
[0020] 分别对各层小波系数进行平稳性检测,以判断各层小波系数是否为平稳时间序列;
[0021] 若存在一层或多层小波系数为非平稳时间序列,则对所述一层或多层小波系数进行差分运算,直到任一层小波系数均为平稳时间序列;
[0022] 若任一层小波系数均为平稳时间序列,则分别对各层小波系数进行白噪声检测;
[0023] 若任一层小波系数均为平稳非白噪声时间序列,则分别计算各层小波系数的自相关系数及偏自相关系数;
[0024] 根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型;
[0025] 若各层小波系数均适合自回归移动平均模型,则基于预置定阶准则,确定待构建的自回归移动平均模型的阶数;
[0026] 对待构建的自回归移动平均模型进行参数估计,得到模型参数值;
[0027] 基于确定的阶数及所述模型参数值,分别构建各层小波系数对应的自回归移动平均模型;
[0028] 基于构建的各自回归移动平均模型,分别对各层小波系数进行预测,得到各层对应的所述预测小波系数。
[0029] 可选地,所述根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型包括:
[0030] 判断各层小波系数各自对应的偏自相关系数是否拖尾以及判断各层小波系数各自对应的自相关系数是否截尾;
[0031] 若各层小波系数各自对应的偏自相关系数均截尾、自相关系数均拖尾,则确定各层小波系数均适合自回归模型
[0032] 若各层小波系数各自对应的偏自相关系数均拖尾、自相关系数均截尾,则确定各层小波系数均适合移动平均模型;
[0033] 若各层小波系数各自对应的偏自相关系数均拖尾、自相关系数均拖尾,则确定各层小波系数均适合自回归移动平均模型。
[0034] 可选地,在所述根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型的步骤之后,还包括:
[0035] 若各层小波系数均适合自回归模型,则基于所述预置定阶准则,确定待构建的自回归模型的阶数;
[0036] 对待构建的自回归模型进行参数估计,得到模型参数值;
[0037] 基于确定的阶数及通过参数估计得到的模型参数值,分别构建各层小波系数对应的自回归模型;
[0038] 基于构建的各自回归模型,分别对各层小波系数进行预测,得到各层对应的所述预测小波系数。
[0039] 可选地,在所述根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型的步骤之后,还包括:
[0040] 若各层小波系数均适合移动平均模型,则基于所述预置定阶准则,确定待构建的移动平均模型的阶数;
[0041] 对待构建的移动平均模型进行参数估计,得到模型参数值;
[0042] 基于确定的阶数及通过参数估计得到的模型参数值,分别构建各层小波系数对应的移动平均模型;
[0043] 基于构建的各移动平均模型,分别对各层小波系数进行预测,得到各层对应的所述预测小波系数。
[0044] 可选地,采用多分辨分析算法进行多尺度小波分解的对应公式如下:
[0045] cAj+1=H*cAj,cDj+1=G*cDj,j=1,2,...,J;
[0046] 采用逆小波变换进行小波重构的对应公式如下:
[0047] cAj-1=H**cAj+G*cDj,j=1,2,...,J;
[0048] 其中,H、G为分解算子,H表示低通滤波器,G表示高通滤波器,H*、G*分别为分解算子H、G的对偶算子,cA0表示原信号数据,cAj和cDj分别表示在分辨率2-j下原信号数据的低频信号部分和高频信号部分,J表示最大分解层数。
[0049] 进一步地,为实现上述目的,本发明还提供一种异常流量监测装置,所述异常流量监测装置包括:
[0050] 收集模,用于基于预置埋点,收集预设时间段内的用户访问记录;
[0051] 预处理模块,用于对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据,所述第一流量时序数据反映访问量和时间的对应关系;
[0052] 分解模块,用于通过预置的低通滤波器和高通滤波器,采用多分辨分析算法对所述第一流量时序数据进行多尺度小波分解,得到各层小波分解分别对应的小波系数;
[0053] 预测模块,用于以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数;
[0054] 重构模块,用于采用逆小波变换对各层对应的所述预测小波系数进行小波重构,得到第二流量时序数据;
[0055] 比对模块,用于以所述第二流量时序数据为流量预测值,将同一时间对应的实际流量值与流量预测值进行比对;
[0056] 判定模块,用于若实际流量值在流量预测值的置信区间内,则判定当前网络流量正常;若实际流量值超过流量预测值的置信区间,则判定当前网络流量异常。
[0057] 可选地,所述预处理模块包括:
[0058] 检测单元,用于检测所述用户访问记录中的原始数据是否存在缺失值;
[0059] 清洗单元,用于若存在缺失值,则计算每个字段对应的缺失值比例,并根据缺失值比例与字段重要程度进行缺失值清洗,所述缺失值清洗包括:删除缺失值字段、使用插值法补全缺失值;
[0060] 排序单元,用于对所述用户访问记录中的原始数据进行排序,并计算排序后的每条记录与相邻记录之间的相似度;
[0061] 判断单元,用于若不同记录之间的相似度超过预置阈值,则判定为重复记录并删除多余的数据;
[0062] 生成单元,用于对清洗后的数据进行按照时间顺序进行访问量统计,生成访问量对应的所述第一流量时序数据。
[0063] 可选地,所述预测模块包括:
[0064] 平稳性检测单元,用于分别对各层小波系数进行平稳性检测,以判断各层小波系数是否为平稳时间序列;
[0065] 差分运算单元,用于若存在一层或多层小波系数为非平稳时间序列,则对所述一层或多层小波系数进行差分运算,直到任一层小波系数均为平稳时间序列;
[0066] 白噪声检测单元,用于若任一层小波系数均为平稳时间序列,则分别对各层小波系数进行白噪声检测;
[0067] 系数确定单元,用于若任一层小波系数均为平稳非白噪声时间序列,则分别计算各层小波系数的自相关系数及偏自相关系数;
[0068] 模型确定单元,用于根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型;
[0069] 模型构建单元,用于若各层小波系数均适合自回归移动平均模型,则基于预置定阶准则,确定待构建的自回归移动平均模型的阶数;对待构建的自回归移动平均模型进行参数估计,得到模型参数值;基于确定的阶数及所述模型参数值,分别构建各层小波系数对应的自回归移动平均模型;
[0070] 模型预测单元,用于基于构建的各自回归移动平均模型,分别对各层小波系数进行预测,得到各层对应的预测小波系数。
[0071] 可选地,所述模型确定单元具体还用于:
[0072] 判断各层小波系数各自对应的偏自相关系数是否拖尾以及判断各层小波系数各自对应的自相关系数是否截尾;
[0073] 若各层小波系数各自对应的偏自相关系数均截尾、自相关系数均拖尾,则确定各层小波系数均适合自回归模型;
[0074] 若各层小波系数各自对应的偏自相关系数均拖尾、自相关系数均截尾,则确定各层小波系数均适合移动平均模型;
[0075] 若各层小波系数各自对应的偏自相关系数均拖尾、自相关系数均拖尾,则确定各层小波系数均适合自回归移动平均模型。
[0076] 可选地,所述模型构建单元具体还用于:
[0077] 若各层小波系数均适合自回归模型,则基于所述预置定阶准则,确定待构建的自回归模型的阶数;对待构建的自回归模型进行参数估计,得到模型参数值;基于确定的阶数及通过参数估计得到的模型参数值,分别构建各层小波系数对应的自回归模型;基于构建的各自回归模型,分别对各层小波系数进行预测,得到各层对应的预测小波系数。
[0078] 可选地,所述模型构建单元具体还用于:若各层小波系数均适合移动平均模型,则基于所述预置定阶准则,确定待构建的移动平均模型的阶数;对待构建的移动平均模型进行参数估计,得到模型参数值;基于确定的阶数及通过参数估计得到的模型参数值,分别构建各层小波系数对应的移动平均模型;基于构建的各移动平均模型,分别对各层小波系数进行预测,得到各层对应的预测小波系数。
[0079] 可选地,所述分解模块中采用多分辨分析算法进行多尺度小波分解的对应公式如下:
[0080] cAj+1=H*cAj,cDj+1=G*cDj,j=1,2,...,J;
[0081] 采用逆小波变换进行小波重构的对应公式如下:
[0082] cAj-1=H**cAj+G*cDj,j=1,2,...,J;
[0083] 其中,H、G为分解算子,H表示低通滤波器,G表示高通滤波器,H*、G*分别为分解算子H、G的对偶算子,cA0表示原信号数据,cAj和cDj分别表示在分辨率2-j下原信号数据的低频信号部分和高频信号部分,J表示最大分解层数。
[0084] 进一步地,为实现上述目的,本发明还提供一种异常流量监测设备,所述异常流量监测设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的异常流量监测程序,所述异常流量监测程序被所述处理器执行时实现如上述任一项所述的异常流量监测方法的步骤。
[0085] 进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有异常流量监测程序,所述异常流量监测程序被处理器执行时实现如上述任一项所述的异常流量监测方法的步骤。
[0086] 本发明基于小波分析进行流量数据处理以突出流量的局部化信息,对信号信息进行多尺度细化后可发现原信号所隐藏的规律和特点,也即得到各层小波系数的预测值,而后对得到的各个小波系数预测值进行小波重构,得到预测的流量时序数据,基于此预测的流量时序数据能够对正常序列和异常序列进行区分,进而可进行异常流量的识别和告警。本发明基于小波分析的优势,既可以去除流量时序数据中由于噪声引起的预测误判,又同时可以包含信号中的时域和频域信息,先通过小波分解,建立ARMA时序模型预测小波系数,而后通过小波重构,可得到预测的系列流量数据,并保留期时序特征,进而可根据流量预测值以及不同的业务场景设定不同的阈值范围,进行异常流量的识别和告警。
附图说明
[0087] 图1为本发明实施例方案涉及的异常流量监测设备运行环境的结构示意图;
[0088] 图2为本发明异常流量监测方法一实施例的流程示意图;
[0089] 图3为图2中步骤S20一实施例的细化流程示意图;
[0090] 图4为图2中步骤S40一实施例的细化流程示意图;
[0091] 图5为本发明异常流量监测装置一实施例的功能模块示意图;
[0092] 图6为图5中预处理模块20一实施例的细化功能模块示意图;
[0093] 图7为图5中预测模块40一实施例的细化功能模块示意图。
[0094] 本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

[0095] 应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0096] 本发明提供一种异常流量监测设备。
[0097] 参照图1,图1为本发明实施例方案涉及的异常流量监测设备运行环境的结构示意图。
[0098] 如图1所示,该异常流量监测设备包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
[0099] 本领域技术人员可以理解,图1中示出的异常流量监测设备的硬件结构并不构成对异常流量监测设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0100] 如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及异常流量监测程序。其中,操作系统是管理和控制异常流量监测设备和软件资源的程序,支持异常流量监测程序以及其它软件和/或程序的运行。
[0101] 在图1所示的异常流量监测设备的硬件结构中,网络接口1004主要用于接入网络;用户接口1003主要用于侦测确认指令和编辑指令等,而处理器1001可以用于调用存储器
1005中存储的异常流量监测程序,并执行以下异常流量监测方法的各实施例的操作。
[0102] 基于上述异常流量监测设备硬件结构,提出本发明异常流量监测方法的各个实施例。
[0103] 参照图2,图2为本发明异常流量监测方法一实施例的流程示意图。本实施例中,所述异常流量监测方法包括以下步骤:
[0104] 步骤S10,基于预置埋点,收集预设时间段内的用户访问记录;
[0105] 通常,网络流量体现在访问量上,因此,本实施例需要获得记录有用户访问量信息的用户访问记录。本实施例中,通过预置埋点,比如在日志数据库中埋点,从而收集预设时间段内的用户访问记录数据。为更真实拟合网络流量的访问量特征,因此优选收集至少一个月以上时间段内的用户访问记录。
[0106] 可选的,在一实施例中,用户访问记录包含用户ID、用户以及服务方IP地址、用户访问时间、用户停留时间、用户结束访问时间等信息。
[0107] 步骤S20,对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据,所述第一流量时序数据反映访问量和时间的对应关系;
[0108] 本实施例中,为便于后续处理,因此预先对收集到的用户访问记录中的原始数据进行清洗与统计处理,从而生成访问量对应的流量时序数据。
[0109] 数据清洗是指过滤那些不符合要求的数据,主要有不完整的数据、错误的数据和重复的数据三大类。其中,不完整的数据,也即一些应该有的信息缺失,此类数据需要剔除或者通过插值处理进行补全。错误的数据是指与格式不正确,比如字段格式不正确、数据对应的业务意义不正确。重复的数据,此类数据需要剔除。数据统计是指统计不同时间内的系统访问量,从而可得到访问量对应的时序数据,也即第一流量时序数据。
[0110] 本实施例中,通过对用户访问记录中的原始数据进行清洗与统计处理后,生成访问量对应的流量时序数据,也即不同时间点对应的访问量集合所组成的时序数据。
[0111] 步骤S30,通过预置的低通滤波器和高通滤波器,采用多分辨分析算法对所述第一流量时序数据进行多尺度小波分解,得到各层小波分解分别对应的小波系数;
[0112] 小波分解是指将原信号按某一小波函数簇展开,即将原信号表示为一系列不同尺度和不同时移的小波函数的线性组合,其中每一项的系数称为小波系数,而同一尺度下所有不同时移的小波函数的线性组合称为信号在该尺度下的小波分量。
[0113] 小波系数就是小波基函数与原信号相似的系数,由于网络流量数据是离散数据,因此只适用于离散小波变换,同时由于很多小波函数不是正交函数,因此小波变换需要一个尺度函数,也即原信号函数可以分解成尺度函数和小波函数的线性组合,在这个函数中,尺度函数产生低频部分,小波函数产生高频部分,因此小波系数包括流量时序数据中高频部分对应的细节系数以及低频部分对应的逼近系数。尺度函数可以由低通滤波器实现,而小波函数则可由高通滤波器实现。这样的滤波器组就构成了原信号分解的框架。低通滤波器的尺度函数可以作为下一级的小波函数和尺度函数的母函数。
[0114] 本实施例采用多分辨分析算法将原信号函数按层分解到相应的空间。在一实施例中,多分辨分析算法利用构造的两个滤波器,对原信号进行频带划分,算法表述如下:
[0115] cAj+1=H*cAj,cDj+1=G*cDj,j=1,2,...,J;
[0116] 其中,H、G为分解算子,H表示低通滤波器,G表示高通滤波器,cA0表示原信号数据,cAj和cDj分别表示在分辨率2-j下原信号数据的低频信号部分和高频信号部分,J表示最大分解层数,cD1=G*cA0。
[0117] 步骤S40,以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数;
[0118] 本实施例中,在以实际流量进行小波分解后得到的小波系数(包括高频部分对应的细节系数和低频部分对应的逼近系数)作为实际数据来初始化平稳时间序列模型(优选ARMA模型)。在使用平稳时间序列模型之前,需要先计算出平稳时间序列模型的参数,然后对各层小波系数进行预测。
[0119] 步骤S50,采用逆小波变换对各层对应的预测小波系数进行小波重构,得到第二流量时序数据;
[0120] 本实施例采用逆小波变换对预测得到的各层小波系数进行小波重构,也即对各层细节系数和逼近系数的预测结果进行叠加(原信号等于各个分解层的高频部分和最后一层的低频部分的叠加),最终得到重构的流量时序数据。
[0121] 需要说明的是,若cAj和cDj已知,则可对小波分解过程进行逆运算,从而实现对原信号的近似部分和细节部分进行重构,得到新的等长流量时序数据。在一实施例中,优选采用逆小波变换进行小波重构,对应公式如下:
[0122] cAj-1=H**cAj+G*cDj,j=1,2,...,J;
[0123] 其中,H、G为分解算子,H表示低通滤波器,G表示高通滤波器,H*、G*分别为分解算子H、G的对偶算子,cA0表示原信号数据,cAj和cDj分别表示在分辨率2-j下原信号数据的低频信号部分和高频信号部分,J表示最大分解层数,cD1=G*cA0。
[0124] 通过上述重构算法可对原信号的近似部分和细节部分进行重构。
[0125] 步骤S60,以所述第二流量时序数据为流量预测值,将同一时间对应的实际流量值与流量预测值进行比对;
[0126] 本实施例中,在得到重构的预测流量时序数据后,将其和实际的流量数据进行对比,同时设定一定的预测值和真实值的差值阈值进行异常流量的判断和告警。
[0127] 步骤S70,若实际流量值在流量预测值的置信区间内,则判定当前网络流量正常;若实际流量值超过流量预测值的置信区间,则判定当前网络流量异常。
[0128] 本实施例中,可设置预测值上下的一个范围为置信区间,比如千分之五;不过在实际业务中也可能出现对上下波动容忍度不同的情况,比如阈值为向上波动千分之一(访问量的激增可能源于恶意访问或者攻击,险较高)向下波动千分之五(对用户的访问量降低容忍度较高)。
[0129] 本实施例中,通过将同一时间对应的流量时序数据进行对比,若实际流量值在流量预测值的置信区间内,则判定当前网络流量正常;若实际流量值超过流量预测值的置信区间,则判定当前网络流量异常。
[0130] 本实施例基于小波分析进行流量数据处理以突出流量的局部化信息,对信号信息进行多尺度细化后可发现原信号所隐藏的规律和特点,也即得到各层小波系数的预测值,而后对得到的各个小波系数预测值进行小波重构,得到预测的流量时序数据,基于此预测的流量时序数据能够对正常序列和异常序列进行区分,进而可进行异常流量的识别和告警。本实施例基于小波分析的优势,既可以去除流量时序数据中由于噪声引起的预测误判,又同时可以包含信号中的时域和频域信息,先通过小波分解,建立ARMA时序模型预测小波系数,而后通过小波重构,可得到预测的系列流量数据,并保留期时序特征,进而可根据流量预测值以及不同的业务场景设定不同的阈值范围,进行异常流量的识别和告警。
[0131] 参照图3,图3为图2中步骤S20一实施例的细化流程示意图。基于上述实施例,本实施例中,上述步骤S20进一步包括:
[0132] 步骤S201,检测所述用户访问记录中的原始数据是否存在缺失值;
[0133] 本实施例中,用户访问日志使用了多个字段记录了多种信息,比如用户ID、用户以及服务方IP地址、用户访问时间、用户停留时间、用户结束访问时间、访问异常情况、访问状态、异常类型code以及异常类型说明等,若某条记录对应字段存在数值缺失,则确定该条记录中存在缺失值。
[0134] 步骤S202,若存在缺失值,则计算每个字段对应的缺失值比例,并根据缺失值比例与字段重要程度进行缺失值清洗,所述缺失值清洗包括:删除缺失值字段、使用插值法补全缺失值;
[0135] 本实施例中,若用户访问记录中某个或某些个字段存在缺失值,则每个字段对应的缺失值比例,例如,有100条用户访问记录,若某个字段对应有10条记录存在缺失值,则该字段对应的缺失值比例为10%。
[0136] 本实施例中,在实际应用场景中不同字段的重要程度不同。比如,用户IP地址较服务方IP地址更重要,用户访问时间较用户停留时间更重要。字段的不同重要程度所使用的清洗策略不同。例如,若缺失值比例高且字段重要程度低,则直接删除缺失值字段,而若缺失值比例低且字段重要程度高,则使用插值法补全缺失值。
[0137] 步骤S203,对所述用户访问记录中的原始数据进行排序,并计算排序后的每条记录与相邻记录之间的相似度;
[0138] 步骤S204,若不同记录之间的相似度超过预置阈值,则判定为重复记录并删除多余的数据;
[0139] 本实施例中,还进一步对重复的记录进行去重处理,具体为先对用户访问记录中的所有原始数据进行排序,比如基于某个字段的数值大小进行排序,比如基于访问时间进行排序,然后计算排序后的每条记录与相邻记录之间的相似度,比如采用字段匹配算法、标准化欧氏距离等方式计算不同记录之间的相似度。若不同记录之间的相似度超过预置阈值(比如90%),则判定为重复记录并删除多余的数据。
[0140] 步骤S205,对清洗后的数据进行按照时间顺序进行访问量统计,生成访问量对应的所述第一流量时序数据。
[0141] 本实施例中,为获得访问量的时序数据,因此进一步对清洗后的数据进行统计处理。例如,在时间点1对应有IP1、IP2、IP3三个IP地址,则该时间点对应的[0142] 参照图4,图4为图2中步骤S40一实施例的细化流程示意图。基于上述实施例,本实施例中,上述步骤S40进一步包括:
[0143] 步骤S401,分别对各层小波系数进行平稳性检测,以判断各层小波系数是否为平稳时间序列;
[0144] 假如时间序列符合下列要求:(1)对任意时间t,其均值恒为常数;(2)对于任意的时间t与s,此时间序列的相关系数是由两个时间点之间的时间段决定的,两个时间点的起始点不会造成任何影响。这样的时间序列就是平稳时间序列。
[0145] 本实施例中,为了确定原始数据序列中有没有随机趋势或确定趋势,需要对数据进行平稳性检测。平稳性检验的方法有数据图、逆序检验、游程检验、单位根检验、DF检验、ADF检验等。
[0146] 步骤S402,若存在一层或多层小波系数为非平稳时间序列,则对所述一层或多层小波系数进行差分运算,直到任一层小波系数均为平稳时间序列;
[0147] 在实际应用中,常常会遇到输入的时间序列经检验是非平稳的,这样就无法采用平稳时间序列模型,通常的处理方法是采用差分的方法将它们变换为平稳的。
[0148] 经差分后,如果时间序列检验为平稳,就对差分后的时间序列进行处理,便可建立对应的平稳随机过程或模型。一个非平稳时间序列接受了d次差分处理并成为平稳序列时,就能够用一个平稳的ARMA(p,q)模型当作其对应的模型。
[0149] 步骤S403,若任一层小波系数均为平稳时间序列,则分别对各层小波系数进行白噪声检测;
[0150] 本实施例中,为了验证序列中是否是白噪声,如果是白噪声,那么此序列即都是随机扰动,无法进行预测和使用。
[0151] 步骤S404,若任一层小波系数均为平稳非白噪声时间序列,则分别计算各层小波系数的自相关系数及偏自相关系数;
[0152] 相关系数用于度量两个向量的线性相关性,而在平稳时间序列{Rt}中,Rt与Rt-i的线性相关性称为自相关系数。偏自相关系数用于评价,Rt-i对Rt影响的相关度。具体计算方式与现有技术相同,因此不做过多赘述。
[0153] 步骤S405,根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型;
[0154] 本实施例中,时间序列数据对应的自相关系数及偏自相关系数的不同,其对应的平稳时间序列模型也不同。
[0155] 可选的,在一具体实施例中,通过判断各层小波系数各自对应的偏自相关系数是否拖尾以及判断各层小波系数各自对应的自相关系数是否截尾,以确定各层小波系数适合的平稳时间序列模型。
[0156] 若平稳序列的偏自相关系数是截尾的,而自相关系数是拖尾的,可断定序列适合AR模型;若平稳序列的偏自相关系数是拖尾的,而自相关系数是截尾的,则可断定序列适合MA模型;若平稳序列的偏自相关系数和自相关系数均是拖尾的,则序列适合ARMA模型。其中,截尾是指时间序列的自相关系数(ACF)或偏自相关系数(PACF)在某阶后均为0的性质(比如AR的PACF);拖尾是ACF或PACF并不在某阶后均为0的性质(比如AR的ACF)。
[0157] 步骤S406,若各层小波系数均适合自回归移动平均模型,则基于预置定阶准则,确定待构建的自回归移动平均模型的阶数;
[0158] 本实施例中,自回归移动平均过程具有随机性的特点,它包括了两个不同的部分,即自回归、移动平均。如果用p代表前一部分的阶数值的上限值(自回归阶数),用q代表后一部分的阶数值的上限值(移动平均阶数),那么自回归移动平均过程就可以表示为ARMA(p,q)。在一实施例中,优选采用如下表达式确定待构建的自回归移动平均模型,具体如下:
[0159]
[0160] 其中,εt,εt-1,...,εt-q为白噪声, 为自回归模型的参数,θ1,θ2,...,θq为移动平均模型的参数,xt,xt-1,xt-2,...,xt-p表示时间序列,t为正整数。
[0161] 若各层小波系数均属于自回归移动平均模型,则基于预置定阶准则,确定待构建的自回归移动平均模型的阶数。使用自相关函数和偏自相关函数的截尾来判断模型为ARMA模型时,并不能确定p和q的阶数,为了比较精确的确定p和q的阶数,就必须与常用的定阶准则联合起来应用。比如最小信息量准则AIC(A-Information Criterion)。
[0162] 步骤S407,对待构建的自回归移动平均模型进行参数估计,得到模型参数值;
[0163] 本实施例中,在确定待构建的自回归移动平均模型的阶数之后,需进一步计算出该模型的参数值。例如使用矩估计方法进行参数估计,或者使用近似极大似然估计方法进行参数估计。
[0164] 步骤S408,基于确定的阶数及所述模型参数值,分别构建各层小波系数对应的自回归移动平均模型;
[0165] 步骤S409,基于构建的各自回归移动平均模型,分别对各层小波系数进行预测,得到各层对应的预测小波系数。
[0166] 本实施例中,在确定了自回归移动平均模型的阶数及模型参数值后,即可构建各层小波系数对应的自回归移动平均模型,进而可根据构建的自回归移动平均模型计算各层小波系数的预测值。此外,自回归模型以及移动平均模型的构造方式与自回归移动平均模型相同,因此不做过多赘述。
[0167] 参照图5,图5为本发明异常流量监测装置一实施例的功能模块示意图。本实施例中,所述异常流量监测装置包括:
[0168] 收集模块10,用于基于预置埋点,收集预设时间段内的用户访问记录;
[0169] 预处理模块20,用于对所述用户访问记录中的原始数据进行清洗与统计处理,生成访问量对应的第一流量时序数据,所述第一流量时序数据反映访问量和时间的对应关系;
[0170] 分解模块30,用于通过预置的低通滤波器和高通滤波器,采用多分辨分析算法对所述第一流量时序数据进行多尺度小波分解,得到各层小波分解分别对应的小波系数;
[0171] 预测模块40,用于以各层小波系数为分析对象,分别建立对应的平稳时间序列模型,并通过所述平稳时间序列模型对各层小波系数进行预测,得到各层对应的预测小波系数;
[0172] 重构模块50,用于采用逆小波变换对各层对应的预测小波系数进行小波重构,得到第二流量时序数据;
[0173] 比对模块60,用于以所述第二流量时序数据为流量预测值,将同一时间对应的实际流量值与流量预测值进行比对;
[0174] 判定模块70,用于若实际流量值在流量预测值的置信区间内,则判定当前网络流量正常;若实际流量值超过流量预测值的置信区间,则判定当前网络流量异常。
[0175] 基于与上述本发明异常流量监测方法相同的实施例说明内容,因此本实施例对异常流量监测装置的实施例内容不做过多赘述。
[0176] 本实施例基于小波分析进行流量数据处理以突出流量的局部化信息,对信号信息进行多尺度细化后可发现原信号所隐藏的规律和特点,也即得到各层小波系数的预测值,而后对得到的各个小波系数预测值进行小波重构,得到预测的流量时序数据,基于此预测的流量时序数据能够对正常序列和异常序列进行区分,进而可进行异常流量的识别和告警。本实施例基于小波分析的优势,既可以去除流量时序数据中由于噪声引起的预测误判,又同时可以包含信号中的时域和频域信息,先通过小波分解,建立ARMA时序模型预测小波系数,而后通过小波重构,可得到预测的系列流量数据,并保留期时序特征,进而可根据流量预测值以及不同的业务场景设定不同的阈值范围,进行异常流量的识别和告警。
[0177] 参照图6,图6为图5中预处理模块20一实施例的细化功能模块示意图。基于上述实施例,本实施例中,上述预处理模块20进一步包括:
[0178] 检测单元201,用于检测所述用户访问记录中的原始数据是否存在缺失值;
[0179] 清洗单元202,用于若存在缺失值,则计算每个字段对应的缺失值比例,并根据缺失值比例与字段重要程度进行缺失值清洗,所述缺失值清洗包括:删除缺失值字段、使用插值法补全缺失值;
[0180] 排序单元203,用于对所述用户访问记录中的原始数据进行排序,并计算排序后的每条记录与相邻记录之间的相似度;
[0181] 判断单元204,用于若不同记录之间的相似度超过预置阈值,则判定为重复记录并删除多余的数据;
[0182] 生成单元205,用于对清洗后的数据进行按照时间顺序进行访问量统计,生成访问量对应的所述第一流量时序数据。
[0183] 基于与上述本发明异常流量监测方法相同的实施例说明内容,因此本实施例对异常流量监测装置的实施例内容不做过多赘述。
[0184] 参照图7,图7为图5中预测模块40一实施例的细化功能模块示意图。本实施例中,上述预测模块40进一步包括:
[0185] 平稳性检测单元401,用于分别对各层小波系数进行平稳性检测,以判断各层小波系数是否为平稳时间序列;
[0186] 差分运算单元402,用于若存在一层或多层小波系数为非平稳时间序列,则对所述一层或多层小波系数进行差分运算,直到任一层小波系数均为平稳时间序列;
[0187] 白噪声检测单元403,用于若任一层小波系数均为平稳时间序列,则分别对各层小波系数进行白噪声检测;
[0188] 系数确定单元404,用于若任一层小波系数均为平稳非白噪声时间序列,则分别计算各层小波系数的自相关系数及偏自相关系数;
[0189] 模型确定单元405,用于根据各层小波系数各自对应的自相关系数及偏自相关系数,分别确定各层小波系数适合的平稳时间序列模型;
[0190] 模型构建单元406,用于若各层小波系数均适合自回归移动平均模型,则基于预置定阶准则,确定待构建的自回归移动平均模型的阶数;对待构建的自回归移动平均模型进行参数估计,得到模型参数值;基于确定的阶数及所述模型参数值,分别构建各层小波系数对应的自回归移动平均模型;
[0191] 模型预测单元407,用于基于构建的各自回归移动平均模型,分别对各层小波系数进行预测,得到各层对应的预测小波系数。
[0192] 基于与上述本发明异常流量监测方法相同的实施例说明内容,因此本实施例对异常流量监测装置的实施例内容不做过多赘述。
[0193] 本发明还提供一种计算机可读存储介质。
[0194] 本实施例中,计算机可读存储介质上存储有异常流量监测程序,所述异常流量监测程序被处理器执行时实现如上述任一项实施例中所述的异常流量监测方法的步骤。其中,异常流量监测程序被处理器执行时所实现的方法可参照本发明异常流量监测方法的各个实施例,因此不再过多赘述。
[0195] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
[0196] 上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈