CN112544059A - 用于网络流量分析的方法、设备和系统 - Google Patents

用于网络流量分析的方法、设备和系统 Download PDF

Info

Publication number
CN112544059A
CN112544059A CN201880095982.3A CN201880095982A CN112544059A CN 112544059 A CN112544059 A CN 112544059A CN 201880095982 A CN201880095982 A CN 201880095982A CN 112544059 A CN112544059 A CN 112544059A
Authority
CN
China
Prior art keywords
time interval
buckets
bucket
current time
key
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.)
Granted
Application number
CN201880095982.3A
Other languages
English (en)
Other versions
CN112544059B (zh
Inventor
靖旭阳
闫峥
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.)
Nokia Oyj
Original Assignee
Nokia Networks Oy
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 Nokia Networks Oy filed Critical Nokia Networks Oy
Publication of CN112544059A publication Critical patent/CN112544059A/zh
Application granted granted Critical
Publication of CN112544059B publication Critical patent/CN112544059B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • 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/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • 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/1441Countermeasures against malicious traffic
    • H04L63/1458Denial of Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

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)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

提供了一种用于网络流量分析的方法、设备和系统。该方法包括:获取当前时间间隔的流量数据;基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT‑RS)中记录流量数据;基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化,在CRT‑RS中检测异常桶;以及基于异常桶来恢复异常源地址关联信息,其中,取模运算的模数是从中国余数定理(CRT)中的模数中选择的,作为成对互质整数,并且CRT‑RS包括多个桶。检测步骤使用修改的多图累积和。

Description

用于网络流量分析的方法、设备和系统
技术领域
本公开总体上涉及通信网络和应用的安全,并且更具体地,涉及用于网络流量分析的方法、设备和系统。
背景技术
作为互联网上的主要安全威胁的网络攻击已经引起了特别关注。网络的开放性和互连性以及协议和软件的安全脆弱性会导致多个且多级别的网络攻击。分布式拒绝服务(DDoS)泛洪攻击是互联网上的典型攻击之一。它旨在泛洪受害者并占用受害者的资源,以使得受害者无法为合法用户提供正常服务。
如何检测DDoS泛洪攻击是网络安全领域的热门话题。广泛用于检测DDoS泛洪攻击的方法包括统计方法、机器学习、以及基于知识的方法。随着网络规模的不断扩大,网络流量的不断增长给DDoS泛洪攻击的检测方法带来了极大的挑战。不完整的网络流量收集或对大规模网络流量的非实时处理将严重影响攻击检测的准确性和效率。此外,当前用于DDoS泛洪攻击的大多数检测方法是使用静态模型。
因此,需要改进对DDoS泛洪攻击的检测和缓解。
发明内容
为了克服上述问题并克服在阅读和理解现有技术时显而易见的限制,本公开提供了一种用于网络流量分析的方法、设备和系统。
根据本公开的第一方面,提出了一种用于网络流量分析的方法。该方法包括以下步骤:获取当前时间间隔的流量数据;基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT-RS)中记录流量数据,其中,取模运算的模数是从中国余数定理(CRT)中的模数中选择的,作为成对互质整数,并且CRT-RS包括多个桶;基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化,在CRT-RS中检测异常桶;以及基于异常桶来恢复异常源地址关联信息。
根据示例性实施例,流量数据包括至少一个数据分组,在CRT-RS中记录流量数据的步骤包括:从至少一个数据分组中导出至少一个成对项,其中,该成对项包括键和该键的关联值;以及在CRT-RS中记录至少一个成对项。
根据示例性实施例,键是从数据分组导出的源地址关联信息,并且是以下中的至少一个:源地址,源地址和端口的组合,源地址范围,以及数据分组的报头中的一个或多个字段。
根据示例性实施例,键的关联值是与键对应的数据分组的统计信息。
根据示例性实施例,关联值包括至少一个分量,分量是以下中的至少一个:与键对应的传输控制协议(TCP)分组数量;与键对应的用户数据报协议(UDP)分组数量;与键对应的互联网控制消息协议(ICMP)分组数量;与键对应的分组大小分布;以及与键对应的目的地地址分布。
根据示例性实施例,在CRT-RS中记录至少一个成对项包括:通过使用哈希运算来将至少一个键中的每个键映射到CRT-RS中的桶;将至少一个键中的每个键的关联值添加到CRT-RS中的对应桶的值。
根据示例性实施例,通过使用哈希运算来将至少一个键中的每个键映射到CRT-RS中的桶包括:对至少一个键中的每个键执行多个哈希运算,其中,每个哈希运算至少包括取模运算,并且取模运算的模数选自中国余数定理(CRT)中的模数,作为成对互质整数;以及基于哈希运算在多个哈希运算中的序列号和哈希运算的对应函数值,确定桶在CRT-RS中的位置。
根据示例性实施例,哈希运算在多个哈希运算中的序列号标示桶的行号,并且哈希运算的对应函数值标示桶的列号。
根据示例性实施例,哈希运算中的取模运算的模数以降序排列。
根据示例性实施例,基于由源地址关联信息指示的源地址数量来选择取模运算的模数。
根据示例性实施例,在基于中国余数定理的可逆概要中记录流量数据还包括:组合来自获取并记录流量数据的多个节点的CRT-RS中的对应桶的值。
根据示例性实施例,基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来检测CRT-RS中的异常桶包括:对于每个桶和关联值的每个分量,基于前一时间间隔的桶的累积和以及当前时间间隔的桶的值的变化,计算当前时间间隔的桶的值的累积和,其中,基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及具有缩放因子的当前时间间隔的桶的标准偏差来计算当前时间间隔的桶的值的变化。
根据示例性实施例,基于当前时间间隔的桶的值和前一时间间隔的桶的平均值来计算当前时间间隔的桶的平均值,其中,当前时间间隔的桶的值和前一时间间隔的桶的平均值中的至少一个用权重系数来计算。
根据示例性实施例,基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差,计算当前时间间隔的桶的标准偏差,其中,当前时间间隔的桶的值、当前时间间隔的桶的平均值和前一时间间隔的桶的标准偏差中的至少一个用权重系数来计算。
根据示例性实施例,基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来检测CRT-RS中的异常桶还包括:如果针对关联值的每个分量的当前时间间隔的桶的累积和超过第一阈值,则确定异常桶。
根据示例性实施例,第一阈值对于关联值的不同分量是不同的。
根据示例性实施例,基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来检测CRT-RS中的异常桶还包括:如果针对关联值的所有分量的桶的累积和的总和超过第二阈值,则确定异常桶。
根据示例性实施例,基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来检测CRT-RS中的异常桶还包括:对于所检测的异常桶的每个桶,将当前时间间隔的桶的累积和的值、当前时间间隔的桶的平均值、以及当前时间间隔的桶的标准偏差分别设置为前一时间间隔的桶的累积和的值、前一时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差。
根据示例性实施例,基于异常桶来恢复异常源地址关联信息包括:通过基于异常桶的位置求解哈希运算,恢复对应于异常桶的键;以及从键中获取异常源地址关联信息。
根据示例性实施例,基于异常桶来恢复异常源地址关联信息包括:在映射列表中记录与至少一个键中的每个键对应被映射的桶的位置;通过将异常桶的位置与映射列表中桶的位置进行匹配,恢复对应于异常桶的键。
根据示例性实施例,该方法还包括:将异常源地址关联信息添加到黑名单中。
根据示例性实施例,该方法还包括:将异常源地址关联信息添加到多个节点的黑名单中。
根据示例性实施例,该方法还包括:基于黑名单中的异常源地址关联信息,对流量数据的数据分组进行过滤。
根据本发明的第二方面,提出了一种用于网络流量分析的设备,并且该设备包括:获取单元,其被配置为获取当前时间间隔的流量数据;记录单元,其被配置为基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT-RS)中记录流量数据,其中,取模运算的模数是从中国余数定理(CRT)中的模数中选择的,作为成对互质整数,并且CRT-RS包括多个桶;检测单元,其被配置为基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化,在CRT-RS中检测异常桶;恢复单元,其被配置为基于异常桶来恢复异常源地址关联信息;以及存储单元,其被配置为存储CRT-RS。
根据示例性实施例,流量数据包括至少一个数据分组,记录单元还被配置为:从至少一个数据分组中导出至少一个成对项,其中,成对项包括键和该键的关联值;以及在CRT-RS中记录至少一个成对项。
根据示例性实施例,键是从数据分组导出的源地址关联信息。
根据示例性实施例,键是以下中的至少一个:源地址,源地址和端口的组合,源地址范围,以及数据分组的报头中的一个或多个字段。
根据示例性实施例,键的关联值是与键对应的数据分组的统计信息。
根据示例性实施例,关联值包括至少一个分量,分量是以下中的至少一个:与键对应的TCP分组数量;与键对应的UDP分组数量;与键对应的ICMP分组数量;与键对应的分组大小分布;以及与键对应的目的地地址分布。
根据示例性实施例,记录单元还被配置为:通过使用哈希运算来将至少一个键中的每个键映射到CRT-RS中的桶;将至少一个键中的每个键的关联值添加到CRT-RS中的对应桶的值。
根据示例性实施例,记录单元还被配置为:对至少一个键中的每个键执行多个哈希运算,其中,每个哈希运算至少包括取模运算,并且取模运算的模数选自中国余数定理(CRT)中的模数,作为成对互质整数;以及基于哈希运算在多个哈希运算中的序列号和哈希运算的对应函数值,确定桶在CRT-RS中的位置。
根据示例性实施例,哈希运算在多个哈希运算中的序列号标示桶的行号,并且哈希运算的对应函数值标示桶的列号。
根据示例性实施例,哈希运算中的取模运算的模数以降序排列。
根据示例性实施例,基于由源地址关联信息指示的源地址数量来选择取模运算的模数。
根据示例性实施例,检测单元被配置为:对于每个桶和关联值的每个分量,基于前一时间间隔的桶的累积和以及当前时间间隔的桶的值的变化,计算当前时间间隔的桶的值的累积和,其中,基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及具有缩放因子的当前时间间隔的桶的标准偏差来计算当前时间间隔的桶的值的变化。
根据示例性实施例,基于当前时间间隔的桶的值和前一时间间隔的桶的平均值来计算当前时间间隔的桶的平均值,其中,当前时间间隔的桶的值和前一时间间隔的桶的平均值中的至少一个用权重系数来计算。
根据示例性实施例,基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差,计算当前时间间隔的桶的标准偏差,其中,当前时间间隔的桶的值、当前时间间隔的桶的平均值、和前一时间间隔的桶的标准偏差中的至少一个用权重系数来计算。
根据示例性实施例,检测单元还被配置为:如果针对关联值的每个分量的当前时间间隔的桶的累积和超过第一阈值,则确定异常桶。
根据示例性实施例,第一阈值对于关联值的不同分量是不同的。
根据示例性实施例,检测单元还被配置为:如果针对关联值的所有分量的桶的累积和的总和超过第二阈值,则确定异常桶。
根据示例性实施例,检测单元还被配置为:对于所检测的异常桶的每个桶,将当前时间间隔的桶的累积和的值、当前时间间隔的桶的平均值、以及当前时间间隔的桶的标准偏差分别设置为前一时间间隔的桶的累积和的值、前一时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差。
根据示例性实施例,恢复单元还被配置为:通过基于异常桶的位置求解哈希运算,恢复对应于异常桶的键;以及从该键中获取异常源地址关联信息。
根据示例性实施例,恢复单元还被配置为:在映射列表中记录与至少一个键中的每个键对应被映射的桶的位置;通过将异常桶的位置与映射列表中桶的位置进行匹配,恢复对应于异常桶的键;并且存储单元还被配置为存储所述映射列表。
根据示例性实施例,存储单元还被配置为:存储用于存储异常源地址关联信息的黑名单。
根据示例性实施例,该设备还包括:过滤单元,其被配置为基于黑名单中的异常源地址关联信息,对流量数据的数据分组进行过滤。
根据本公开的第三方面,提出了一种用于网络流量分析的系统,该系统包括根据第一方面的多个设备。
根据示例性实施例,该系统还包括管理设备,该管理设备包括:管理单元,其被配置为组合来自多个设备的CRT-RS中的对应桶的值。
根据示例性实施例,管理单元还被配置为:将异常源地址关联信息添加到多个设备的黑名单中。
根据本公开的第四方面,提出了一种装置,该装置包括用于执行根据第一方面的方法的部件。
根据本公开的第五方面,提出了一种非暂时性计算机可读存储介质,该非暂时性计算机可读存储介质存储指令,该指令在由一个或多个处理器执行时使处理器执行根据第一方面的方法。
仅通过说明多个特定实施例和实施方式(包括执行本公开的最佳模式),本公开的其他方面、特征和优点将通过以下详细描述而显而易见。本公开还能够具有其他且不同的实施例,并且可以在各种显而易见的方面修改其若干细节,而所有这些都不脱离本公开的精神和范围。因此,附图和描述本质上应被认为是说明性的,而不是限制性的。
附图说明
在附图的图中通过示例而非限制的方式示出了本公开的示例性实施例:
图1示出根据本公开的示例性实施例的概要的图;
图2示出根据本公开的示例性实施例的CRT-RS的图;
图3示出根据本公开的示例性实施例的系统架构的框图;
图4示出根据本公开的示例性实施例的布隆(Bloom)过滤器的图;
图5示出根据本公开的示例性实施例的另一系统架构的框图;
图6示出根据本公开的示例性实施例的用于网络流量分析的方法的流程图;
图7示出根据本公开的另一示例性实施例的用于网络流量分析的方法的流程图;
图8示出根据本公开的示例性实施例的用于网络流量分析的设备的框图;
图9示出根据本公开的另一示例性实施例的用于网络流量分析的设备的框图;
图10示出根据本公开的示例性实施例的用于网络流量分析的系统的管理设备的框图;
图11示出可以在其上实现本公开的示例性实施例的计算机系统;以及
图12示出可用于实现本公开的示例性实施例的芯片组。
具体实施方式
本公开包括本文公开的任何新颖的特征或特征的组合或者其任何概括。当结合附图阅读时,鉴于前述描述,对本公开的前述示例性实施例的各种修改和改编对于相关领域的技术人员而言将变得显而易见。然而,任何和所有修改仍将落入本公开的非限制性和示例性实施例的范围内。
DDoS泛洪攻击可以以两种方式产生:直接泛洪攻击和间接泛洪攻击。在直接泛洪攻击(即网络/传输层和应用层DDoS泛洪攻击)中,攻击者通常假冒攻击数据分组的源IP地址,并将分组直接发送给受害者。在间接泛洪攻击(即分布式反射DoS(DRDoS)和链路泛洪攻击)的情况中,攻击者使用许多无辜的中间设备来间接泛洪受害者。
存在三种广泛用于检测DDoS泛洪攻击的方法。第一种是统计方法,该方法观察网络活动并生成表示正常网络行为的配置文件(profile)。通过测量从当前收集的网络流量中提取的配置文件与正常行为配置文件之间的相似性,该方法判断在网络中是否存在异常。第二种是机器学习,其通过训练大量数据来建立网络流量的判断标准,并使用该标准来分析和确定当前收集的流量是否异常。第三种是基于知识的方法,该方法将网络事件与预定义的攻击规则或攻击模式进行比较以检测网络攻击。
DDoS泛洪攻击已经成为网络安全中的严重问题。研究人员已提出了许多用于检测DDoS泛洪攻击的方法。以下是有关DDoS泛洪攻击检测的现有相关工作。
针对直接DDoS泛洪攻击的检测方法
示例性解决方案考虑针对以特定目的地为目标的UDP泛洪攻击的两个检测特征:(i)针对具有随机目的地端口的非欺骗源地址的总目的地端口变化的计数,以及(ii)针对随机欺骗的源地址的源地址变化的计数。每个节点表示唯一源地址的KD树用于记录进入流量的信息。在每个时间间隔中,执行KD树的前序遍历,以计算目的地端口变化的计数和源地址变化的计数的熵。当两个熵超过预设阈值时,将发出警报以指示UDP泛洪攻击。另一种方法利用源地址和目的地地址来将分组聚合成流。基于源自同一僵尸网络的攻击分组具有相似大小的知识,研究人员计算每个流中分组大小分布的熵。分组大小越集中,则熵越低。通过测量正常流量和当前流量之间的熵偏差来检测DDoS泛洪攻击。一些研究人员通过将CKNN(具有相关分析的K最近邻流量分类)应用于流级别数据,提供了一种部署在数据中心的有效检测方法。他们用相同的5元组(即,源和目的地地址、源和目的地端口、以及协议类型)聚合来自数据中心网络的分组。每个流可以由一组统计特征来表示,例如流持续时间、流大小等。由于(由同一应用生成的)流之间的高度相关,因此,该方法可以通过用CKNN分类和相关分析检查流特征来检测攻击。另一解决方案讨论了五种熟练的SYN泛洪攻击,并提出了一种准确且快速的检测方法,称为SACK2。在正常的TCP三次握手下,服务器发送的SYN-ACK分组的数量应当几乎等于客户端发送的ACK分组的数量。但是,在SYN泛洪攻击期间,由于没有对应的ACK分组,因此,这种平衡关系将以较大的偏差被破坏。SACK2利用计数布隆过滤器来观察SYN-ACK分组和ACK分组的数量差。布隆过滤器中的每个桶都是一个哈希值,该哈希值是使用客户端和服务器的IP地址、客户端和服务器的端口、以及客户端和服务器的TCP分组的初始序列号来计算的。
针对间接DDoS泛洪攻击的检测方法
一些研究人员发现,在DRDoS泛洪攻击中来自反射器的响应流的速率彼此之间具有线性关系,因为它们是由相同的攻击流量模拟的。它们将通过一台路由器发送给受害者的所有分组定义为流。斯皮尔曼等级相关系数被用于计算流量对之间的流相关系数,以区分攻击流量和合法流量。该方法利用DRDoS泛洪攻击流量的相似特性。在另一种方法中,从DNS查询流量中选择若干特征,例如,来自同一IP的分组间到达时间的平均值、每15秒IP的出现概率、最小、平均和最大分组大小等,DNS流量通过使用决策树、多层感知器、朴素贝叶斯和SVM被分类为正常和异常。使用诸如信息增益、增益比和卡方检验的属性选择算法来减少冗余特征。实验结果表明,决策树达到最高准确率99.3%。由同一僵尸网络生成的攻击分组在分组级别数据上具有高度相似性。其他研究人员提出了一种针对DNS放大泛洪攻击的反射器端检测方法。每单位时间提取三个特征,包括DNS请求分组的数量、DNS响应分组大小与DNS请求分组大小的比率、以及DNS响应分组的数量与DNS请求分组的数量的比率。然后,使用k均值算法来对正常集群和异常集群进行分类,以形成检测模式并计算参考点。基于检测模式,新数据是否正常是通过它与每组的参考点的距离来确定的。重新路由流量是检测链路泛洪攻击的可行方法。另一示例性解决方案制定了经由关系代数的链路泛洪攻击的检测方法。它表示僵尸与潜在目标之间的关联。流量以某种方式被连续地重新路由,以使得僵尸被迫持续参与链路泛洪事件。因此,僵尸表现出可疑行为并揭示其存在。还提出了一种协作式重新路由系统,该系统将合法流量重新路由到未拥塞链路,同时限制可用于在拥塞链路攻击流量的带宽。
有多种用于DDoS泛洪攻击的检测方法。但是,现有的研究很少考虑大规模网络流量所带来的影响,并满足自适应检测和协议独立性的检测要求。这些方法在DDoS泛洪攻击检测领域面临以下几个问题:
(1)缺少有效的网络流量压缩和融合方法。不断增长的网络流量要求检测方法必须具有处理大规模网络流量的能力,并同时确保高检测精度和高效。否则,在处理大规模网络流量时,检测方法将变得低效甚至无用。采用综述形式完整描述网络流量信息并准确定位异常流量的网络流量的有效压缩和融合可以极大地消除大规模网络流量对网络攻击检测带来的影响。但是,在文献中仍缺少可以高精度地压缩和融合大规模网络流量的对DDoS泛洪攻击的有效检测方法。
(2)缺少自适应和协议独立检测方法。大多数检测方法通常针对网络行为构建正常的配置文件,并基于正常配置文件与当前网络配置文件之间的偏差来检测入侵。但是,攻击者可以通过有意训练检测方法以使它逐渐将异常网络行为接受为正常来精心发起攻击。面对这样的攻击,很难定义什么类型的网络行为是正常的。如果正常网络行为的模式是错误的或不完整的,则检测方法将具有高的误报率。因此,检测方法应当适应当前网络行为的变化,而不是主要依赖于静态配置文件。此外,在各种网络协议的上下文中存在多种DDoS泛洪攻击。该方法无法预测何时以及哪种类型的攻击将发生。合格的检测方法应当是独立于协议地检测DDoS泛洪攻击。直接DDoS和间接DDoS泛洪攻击都有它们自己的攻击特性,并且可以利用多种协议来发起攻击。因此,期望一种独立于协议的方法来检测一类DDoS泛洪攻击,而不是检测特定的协议相关攻击。
由于上述缺陷,迫切需要通用的网络攻击检测方法,其具有处理大规模网络流量的能力,具有自适应检测的特性,并支持协议独立性。
本公开的示例性实施例提出了新颖的针对DDoS泛洪攻击的网络流量融合和分析方法、设备和系统。首先,为了具有全局网络流量信息,新的基于中国余数定理的可逆概要(CRT-RS)被设计以有效地压缩和融合网络流量。该概要基于CRT的模数来生成,因此,它是可逆的。基于CRT的可逆概要不仅可以有效地压缩和融合网络流量,而且还具有反向恢复异常源地址的能力。其次,使用修改的多图累积和(MM-CUSUM)算法的针对DDoS泛洪攻击的多维变化点检测方法被设计以监控CRT-RS所生成的流量数据记录上的突然变化。多图累积和意味着累积和是以表示流量数据的特性的向量的多个维度或分量来计算的。MM-CUSUM算法用于针对DDoS泛洪攻击的多维变化点检测,以监控流量记录上的突然变化。通过使用CRT-RS和MM-CUSUM算法来执行流量融合、分析和攻击检测,所提出的根据本公开的一些实施例的方法、设备和系统能够处理大规模网络流量、发现异常源地址、实现自适应检测、并支持协议独立性。
DDoS泛洪攻击通常用大量的攻击数据分组来泛洪受害者。因此,数据分组数量的急剧增加是DDoS泛洪攻击的指示。而且,当前的DDoS泛洪攻击通常是由僵尸网络发起的。每个被相同恶意程序感染的僵尸都生成采用相同格式的攻击数据分组。攻击数据分组共享许多相似的特性,例如分组大小、分组速率、目的地地址、目的地端口等。但是这些特性与合法分组有很大不同,以使得它们也可被用于检测例如DDoS泛洪攻击。
下面,首先简要说明本公开的理论背景。然后,根据本公开的示例性实施例,详细介绍新的基于中国余数定理(CRT-RS)的可逆概要。
用于汇总网络的流量数据的数据结构包括哈希值、位图、堆栈(pile)、字典树、概要(sketch)等。传统的概要是紧凑且恒定大小的数据结构,其通过使用哈希函数以随机地聚合流量来汇总网络流量。概要被广泛用于网络性能监控、网络管理、攻击检测和流量工程。在本公开的一些实施例中,从k个全域哈希函数的族中选择的哈希函数中的模数被CRT中的模数代替,并且采用数论中模块化系数描述的概念来保留余数。这样,新的CRT-RS不仅可以获取与传统的概要相同的容量,而且具有反向发现异常源地址的能力。因此,在网络流量收集过程中,CRT-RS有效地压缩和融合网络流量。在CRT-RS的每个桶中,构造了向量以记录流量信息。该向量中的每个维度是网络流量的统计信息,例如分组数量、分组大小分布、不同目的地地址的数量等。
概要(sketch)
首先,在本公开的示例性实施例中,用于网络流量分析的方法、设备和系统捕获来自网络的流量数据。流量数据可以包括多个数据分组。一些数据分组的目的地可以是用于网络流量分析的设备,其也被称为节点,然后,由设备或系统获取的数据分组可被称为所接收的数据分组,并且流量数据可被称为所接收的流量数据。其他数据分组的目的地可以不是用于网络流量分析的设备或节点,并且该设备仅转发数据分组,那么,由该设备或节点获取的数据分组可以被称为进入或到达数据分组,并且流量数据可被称为进入或到达流量数据。为了便于参考,在本说明书的上下文中,由设备或节点获取的用于网络流量分析的流量数据被称为进入或到达流量数据。
概要100是一种概率数据汇总技术,并且由H个大小为M的哈希表组成,其中M是正整数,如图1所示。哈希表意为包括H个哈希函数的哈希函数102组或族的函数值的表或图,其中H是正整数。进入网络流量数据被建模为包含键101和键101的关联值103的成对项,其中键101是源地址关联信息,诸如分组的大小、分组的数量、分组的分布等,值103可以是任何累积特征,例如,与键101对应的数据分组的统计信息。
在本公开的示例性实施例中,基于包括键101和键101的关联值103的成对项的定义,与相应的键101(即源地址关联信息)对应的多个成对项可以从流量数据导出并被记录在概要100中。通过记录从流量数据导出的成对项,流量数据信息被记录在概要中。
概要100的每一行i与独立的哈希函数hi相关联,该哈希函数将进入键101映射到哈希空间(0,1,2,....,M-1)中,其中i=(1,2,…,H)。行号i也可以被认为是哈希运算在H个哈希运算中的序列号。列号,即哈希空间(0,1,2,…,M-1),也可以被认为是哈希运算的对应函数值。以这种方式,通过将相应的成对项中的键101映射到具有一组桶104的概要100中,可以将流量数据记录到概要100中。如果键101所表示的源地址关联信息是顺序的,则桶104的位置相应地按预定顺序排序。概要100包括多个桶104。其键被哈希为相同值的数据(键101的值103)将被放入概要100的相同桶104中,并且桶104的值将被相加。通常,概要100中的H个哈希函数从在等式(1)中定义的k个全域哈希函数的族中选择,
Figure BDA0002915903610000131
其中,r是任意质数(例如,选择梅森(Mersenne)质数以用于快速实现),ai(≠0)和bi是从集合(0,1,…,r-1)中随机选择的,M是概要100的宽度。例如,k可被选择为2或4,并且k=r=M以简化哈希函数102的计算。在一些实施例中,r也可以是非常大的任意质数,以使得运算x mod r的值会是x,以便也简化哈希运算。使用k个全域哈希函数,两个键101在H个哈希表上被聚合在同一个桶104中的概率为(1/M)k*H。例如,可以通过使用具有高值的M和/或具有高值的H来降低聚合概率。如果将H的数字被选择为非常高的值,则哈希函数的计算量会很大。实际上,H通常被选择为5到6,以保持哈希函数的计算量足够小。在本公开的一些实施例中,哈希运算中运算“mod M”的模数M,即概要100的宽度,被选择为高的正整数值,以满足适当的聚合概率。
注意,哈希函数102的形式不限于在等式(1)中定义的k个全域哈希函数的族。其他哈希函数102也可以被用于将键101映射到概要100中。例如,哈希函数可以被选择为hi(x)≡(aix+bi)mod M或其他具有更复杂运算的形式。通常,哈希函数包括取模运算,以便将成对项的键101映射到概要100中。
基于中国余数定理的可逆概要(CRT-RS)
在传统的概要中,我们无法报告由于哈希函数的不可逆性而表现异常的键集合。这意味着传统的概要是不可逆的。为了解决这个问题,本公开的一些示例性实施例提出了基于中国余数定理的可逆概要(CRT-RS)200,如图2所示。与以上参考图1讨论的传统的概要100相比,H个哈希函数102中的哈希函数的模数,即在H行的每一行i中,被中国余数定理(CRT)中的模数代替,因此在CRT-RS 200的每一行获得不相等数量的桶204。新的包括取模运算的哈希函数202(其中取模运算的模数是从CRT中的模数中选择的)可被表示为以下等式(2):
Figure BDA0002915903610000141
其中,p1,p2,...,pH被选择为CRT中的成对互质整数,并且这些模数以降序被排序,即p1>p2>...>pH。这样的配置具有两个键101被聚合在每一行的同一桶204中的概率是(1/pi)2。该降序可以提高反向恢复异常源地址的准确性。例如,相对于232个源地址,pi的值可以被设置为220左右,以使得CRT-RS的聚合概率足够低以提高恢复的准确性,即基于异常桶204来导出源地址关联信息。在另一个实施例中,模数也可以按升序被排序,即,p1<p2<…<pH
在一些实施例中,我们还可以在等式(2)中将r设置为非常大的任意质数,将k设置为2,将a设置为1,将b设置为0。因此,CRT-RS中被优化的哈希函数202非常简单但有效,如等式(3)中所定义:
hi(x)≡x mod pi i=(1,2,…,H) (3)
在CRT-RS 200中,在行i中的列数量是pi而不是图1所示的概要100中的M。由于CRT-RS中每行的列数量是不同的并且可以预定顺序被排序,因此,与图1中的概要100相比,CRT-RS 200具有附加的维度或项来记录关于成对项(键,值)的更多信息,并且这种附加的维度或项可以用于反向恢复。
在CRT-RS 200中,每个桶104可被表示为RS[i][j],i=(1,2,…,H),j=(0,1,2,…,pi-1)。针对CRT-RS 200定义了四个基本运算:
(1)更新(UPDATE):在本公开的示例性实施例中,获取在时间间隔期间的到达流量数据,并将其建模为至少一个成对项,作为新的成对项。当新的成对项(键,值)到达以要被记录在CRT-RS中时,成对项的键将通过H个哈希函数{h1,h2,…,hH}被哈希H次,并且该键的关联值将被添加到CRT-RS的每一列中的对应桶,即
RS[i][hi(key)]+=value,i=(1,2,…,H) (4)
基于等式(3),应注意,从该键映射的行i中的桶的列号,即hi(key),表示该桶是该行中从左开始的第(hi(key)+1)个桶。
(2)查询(QUERY):键的查询被定义如下:
QUERY(key)=mediani=(1,2,…,H){RS[i][hi(key)]} (5)
其中,运算mediani{}意味着计算行i中的桶的值的中值。例如,运算mediani{}还可以被选择为计算行i中的桶的值的平均值。键的查询的结果,即键的关联值的平均值,表示来自与由该键表示的源地址关联信息对应的源地址或源地址组的平均统计信息。
(3)组合(COMBINE):通过累积每个CRT-RS的每个桶中的值,可以将具有相同概要参数的多个CRT-RS组合成一个。在本公开的一些实施例中,用于网络流量分析的方法在包括至少一个设备或节点的系统(例如,分布式服务器系统)上执行,该至少一个设备或节点分别执行针对DDoS泛洪攻击的网络流量分析。每个节点获取在时间间隔期间的到达流量数据,并将流量数据记录到相应的CRT-RS中。中心节点或监控节点可以将所有的CRT-RS组合成一个CRT-RS,以从整体角度执行网络流量分析。被组合的CRT-RS可以用于下一个过程,并且有关DDoS泛洪攻击的信息是基于CRT-RS中的异常桶,诸如攻击数据分组的源地址。中心节点或监控节点可以是执行网络服务和/或网络流量分析的节点之一,或者可以是仅执行网络流量分析的单个节点。在一个实施例中,中心节点或监控节点可以像其他节点一样获取来自网络的流量数据,或者收集来自其他节点的CRT-RS而不收集流量数据。
例如,我们组合一组CRT-RS,{RS1,RS2,…,RSl}:
Figure BDA0002915903610000161
其中,l是记录CRT-RS的节点的数量,并且l>0。
(4)恢复(RECOVER):CRT-RS的恢复函数旨在反向恢复表现异常的一组键。首先考虑最简单的场景。假设一个键表现异常,因此在CRT-RS的每一行中只有一个被标记为异常的桶,被标示为c1,c2,…,cH。基于等式(3),获取以下的联立同余(simultaneouscongruence)等式(7):
x≡c1mod p1,x≡c2mod p2,…,x≡cHmod pH (7)
基于CRT,x可以用以下等式(8)来确定:
Figure BDA0002915903610000162
其中,P=p1p2…pH,Qi=P/pi和QiQi′≡1mod pi,i=(1,2,…,H)。因此,哈希函数可以通过CRT求解。
在一般情况下,假设w(w>1)个键表现异常,因此,在CRT-RS的每一行中有w个被标记为异常的桶。在本公开的一些实施例中,可以通过基于异常桶在CRT-RS中的位置求解哈希函数来恢复对应于这些异常桶的键。如果在最简单的场景中使用的类似恢复原理也被应用于键的恢复,则将获取来自不同行的异常桶的wH个不同的可能组合。这导致沉重的计算负担。为了解决这个问题,可以采用数论中的模块化系数描述的概念来记录余数。对于键,它的模块化系数描述是<h1(key),h2(key),…hH(key)>,i=(1,2,…,H)。也就是说,模块化系数描述记录了键在每行中所位于的列号。在一些实施例中,可以将标志添加到桶RS[i][hi(key)]以记录从模块化系数描述获取的行i+1的模块化信息(列号),即flag=hi+1(key),i=(1,2,…,H-1)。
例如,在记录期间,关于从键到CRT-RS中的桶的映射的信息可被存储到映射列表中。映射列表可以至少包括与键对应映射的桶的位置信息,例如,桶在CRT-RS的每行中的列号,即,模块化系数描述。因此,当在每行中有许多被标记为异常的桶时,从第一行到最后一行由标志记录的模块化信息(列号)与所存储的已被哈希到映射列表中的CRT-RS中的所有键的模块化系数描述进行匹配。之后,可以基于所匹配的模块化系数描述,通过使用CRT来恢复所有的异常键,然后,可以从键导出异常源地址关联信息。这种方法比普通方法具有更少的计算负担,并将减少误报率。例如,表示模块化系数描述的标志也可以基于异常桶的列号来导出,,而不将标志存储在桶的值中。在一些实施例中,映射列表可被存储在单独的存储设备或与键或成对项相关联的相关存储字段中。
在恢复了异常源地址关联信息后,可以获取发送DDoS泛洪攻击的源地址或源地址组,其被称为异常源地址。异常源地址可被存储在黑名单中。在每个时间间隔中获取的流量数据可以包括来自新的异常源地址的攻击数据分组,然后,新的异常源地址被添加到黑名单中。在另一个实施例中,黑名单可以存储由从异常桶中恢复的异常键表示的异常源地址关联信息。基于黑名单,到达流量数据可以被过滤,以阻止属于执行DDoS泛洪攻击的源地址的数据分组。黑名单的查询将在下面详细讨论。
系统架构
图3示出了根据本公开的示例性实施例的用于网络流量分析(特别是DDoS泛洪攻击检测和缓解)的方法、设备和系统的系统架构300。首先,在攻击缓解过程306期间,来自网络的流量数据301被布隆过滤器302进行过滤,以验证新到达流量数据301中的数据分组是否来自在黑名单305中存在的源地址或者源地址是否与由被存储在黑名单305中的异常源地址关联信息指示的异常源地址相匹配。如果数据分组是从异常源地址被发送的,则它们将被阻止,否则它们将被转发到攻击检测过程306。在攻击检测过程306期间,过滤后的流量数据被压缩并与前一时间间隔304的CRT-RS融合,以生成新的CRT-RS 303,即当前时间间隔的CRT-RS。然后,基于由CRT-RS 303生成的流量数据的统计信息,应用多维变化点检测方法来在CRT-RS 303的每一行中找出异常桶。变化点是统计中的概念,其表示在平稳分布过程中突然变化的点。通过利用CRT-RS的可逆特性,异常键被恢复并被添加到黑名单305中。下面介绍详细的过程。
流量数据收集
根据本公开的示例性实施例的用于网络流量分析的方法利用DDoS泛洪攻击的基本特性来检测和缓解它们。在CRT-RS中,成对项的键被选择为源地址关联信息,目的是过滤来自由源地址关联信息指示的异常源地址或源地址组的攻击数据分组。源地址关联信息是关于被包括在流量数据中的至少一个数据分组的源地址或源地址组或范围的信息。例如,源地址关联信息可以是源地址、源地址和端口的组合、源地址范围、数据分组的报头中的一个或多个字段等、以及它们的任意组合。此外,只有当数据分组的任何部分中的一个或多个字段可被用于导出流量数据中数据分组的源地址时,才可以从该一个或多个字段中选择源地址关联信息。
成对项中键的关联值(即,被添加到CRT-RS的每行中的对应桶中的值)以及CRT-RS中的桶的值可被表示为value={value1,value2,value3,value4,value5}并且是多维向量,其中每个维度是被包括在来自网络的流量数据中的针对不同类型的统计方面的数据分组的统计信息。在本说明书的上下文中,每个维度(或称为分量)的统计信息可被称为维度特征。维度特征的数量也可被设置成例如除了上面列出的5以外的其他值。与键对应的数据分组的统计信息(即对应于键的维度特征)包括例如以下中的至少一个:(1)传输控制协议(TCP)分组数量,(2)用户数据报协议(UDP)分组数量,(3)互联网控制消息协议(ICMP)分组数量,(4)分组大小分布,(5)目的地地址分布等,以及它们的任意组合。
根据示例性实施例,三个计数器被用于分别记录维度特征(1)至(3)。对于维度特征(4)和(5),例如,直方图可被用于计算分布,其中x坐标是分组大小/目的地地址,y坐标是数据分组数量。然后,在示例性实施例中,基于每个直方图来计算熵。关于流量数据的上述五个维度特征被用于检测DDoS泛洪攻击,因为它们反映了这种攻击的基本特性。值得注意的是,如果需要,CRT-RS可以涉及流量数据的更多维度特征,以支持攻击检测。
DDoS泛洪攻击检测
在本公开的一些实施例中,修改的多图累积和(MM-CUSUM)被用于在流量数据信息被记录在CRT-RS中后监视每个桶的突然变化。MM-CUSUM中的多图意味着累积和是基于成对项(键,值)中的值的多个维度的统计信息来计算的。按时间间隔获取到达流量数据,因此,在两个相邻时间间隔之间(例如,在前一时间间隔与当前时间间隔之间)监视CRT-RS的每个桶的突然变化。例如,在一个时间间隔中,可以在收集时间内收集流量数据并将其记录到CRT-RS中。在收集时间以后,用于网络流量分析的方法和设备可以通过使用MM-CUSUM算法来开始对CRT-RS中的异常桶的检测。
标示RS(n)是从在例如第n个时间间隔中收集的流量数据映射的流量数据信息。RS[i][j](n)是桶在CRT-RS的行i和列j中的值,其中i=(1,2,…,H),j=(0,1,…,pi-1)。在本公开的示例性实施例中,标准CUSUM算法Mg[i][j](n)的结果被定义如下:
Figure BDA0002915903610000191
其中,g=(1,2,3,4,5)是上述的维度特征数量,初始累积和Mg[i][j](0)=0,
Figure BDA0002915903610000201
Figure BDA0002915903610000202
是直到第n个时间间隔的平均值和标准偏差,缩放因子β是可调整参数,作为调整
Figure BDA0002915903610000203
Figure BDA0002915903610000204
之间的重要性的权重。加权和
Figure BDA0002915903610000205
表示第n个时间间隔的桶的值的波动范围RS[i][j](n)。RS[i][j](n)和
Figure BDA0002915903610000206
之间的差表示第n个时间间隔的桶的值的波动信息。因此,针对每个桶的值的当前时间间隔的累积和可以基于前一时间间隔的累积和以及当前时间间隔的桶的值的波动信息来导出。Mg[i][j](n)在正常情况下将不变,则Mg[i][j](n)是0。但是,如果网络流量增加并且流量数据的波动超出波动范围,即,存在显著偏差
Figure BDA0002915903610000207
则Mg[i][j](n)将变为正数,这可被认为是攻击警报。根据等式(9),Mg[i][j](n)反映在流量数据信息在相邻时间间隔之间被记录在CRT-RS中后每个桶的突然变化。
在一些实施例中,均值
Figure BDA0002915903610000208
和标准偏差
Figure BDA0002915903610000209
可以通过指数加权移动平均值(EWMA)方法来估计,如以下等式所示:
Figure BDA00029159036100002010
Figure BDA00029159036100002011
其中,α是可调整参数,例如,作为在计算平均值
Figure BDA00029159036100002012
时调整
Figure BDA00029159036100002013
和RSg[i][j](n)之间的重要性的权重系数,或者作为可调整参数,作为在计算标准偏差
Figure BDA00029159036100002014
时调整
Figure BDA00029159036100002015
Figure BDA00029159036100002016
之间的重要性的权重系数。也就是说,可以用权系重数来计算上述项中的至少一个。例如,在一些实施例中,平均值
Figure BDA00029159036100002017
也可以被计算为算术平均值、几何平均值等,并且标准偏差
Figure BDA00029159036100002018
可以被计算为均方误差等。
注意,网络波动可以包括正常增加的流量数据,诸如在某些在线购物的场景中由于促销而导致的大量访问。设Ag[i][j](n)是在时间间隔n对CRT-RS的桶RS[i][j]中的维度特征g的决策结果,其中“0”指示正常桶,“1和0.5”指示异常桶:
Figure BDA0002915903610000211
Figure BDA0002915903610000212
其中,由于维度特征1至3的统计信息是数据分组的数量,因此,τ1g是正数,并且由于维度特征4和5的统计信息是分布,因此,τ2g是正数。τ1g和τ2g被设置为正值,而不是等式(9)中的零值,以抵消网络波动,因此,它们可被认为是每个维度特征的阈值,即,针对键的关联值的统计信息的每个维度或分量,第n个时间间隔的CRT-RS的每行和每列中的桶的累积和的阈值。例如,τ1g可被选择为对于维度特征1至3中的每个维度特征分别是不同或相同的正数,并且τ2g可被选择为对于维度特征4和5中的每个维度特征分别是不同或相同的正值。
在本公开的一些实施例中,也可以根据维度特征的重要性来将Ag[i][j](n)的值选择为不同的值。在等式(12)和(13)中,如果累积和超过阈值τ1g,则对于维度特征1至3,Ag[i][j](n)的值是1;如果累积和超过阈值τ2g,则对于维度特征4至5,Ag[i][j](n)的值是0.5,这是因为维度特征1至3被认为比维度特征4和5更重要。在本公开的其他实施例中,在上述示例中的Ag[i][j](n)的值对(1,0.5)也可以被选择为其他值对,例如(1,0.8),(1,0.1)等。
对于桶RS[i][j](n)的异常桶的最终决策是如等式(14)中所定义的Ag[i][j](n)的决策融合FA[i][j](n):
Figure BDA0002915903610000213
其中,δ是用于所有维度特征的可调整阈值。对于键的关联值的统计信息的每个维度或分量,δ可被认为是第n个时间间隔的CRT-RS的每行和每列的桶的融合累积和的阈值。定义该判断标准的原因是,当DDoS泛洪攻击发生时,TCP/UDP/ICMP数据分组数量的急剧增加是攻击的指示符。因此,在等式(12)中设定:如果Mg[i][j](n)>τ1g,则Ag[i][j](n)=1。此外,向许多目的地地址发出多个相似数据分组的主机的扫描行为将导致维度特征4和5的异常。在等式(13)中设定如果Mg[i][j](n)>τ2g,则Ag[i][j](n)=0.5。当g∈{4,5}时Ag[i][j](n)=0.5的设置是因为维度特征4和5不是像维度特征1至3那么强的攻击指示符。
应当注意,如果存在DDoS泛洪攻击,则从自源于异常源地址或异常源地址组的数据分组导出的键映射的CRT-RS中的所有桶都具有当前时间间隔的异常累积和。在CRT-RS中每行和每列中的桶都应当以遍历的方式被检查,而不是仅检查部分桶,以避免攻击检测中的误判断。
值得注意的是,Mg[i][j](n-1)、
Figure BDA0002915903610000221
Figure BDA0002915903610000222
是最新的正常CRT-RS的结果。也就是说,当发出攻击警报时,这些值将不再更新,直到警报释放为止。因此,在这种情况下,对于在由行i和列j标示的位置处的每个所检测的异常桶,用于网络流量分析的方法和设备可以讲Mg[i][j](n)、
Figure BDA0002915903610000223
Figure BDA0002915903610000224
的值分别设置为Mg[i][j](n-1)、
Figure BDA0002915903610000225
Figure BDA0002915903610000226
的值。另外,通过调整等式(9)-(14)中的参数,该方法能够检测一些精心设计的攻击。
DDoS泛洪攻击缓解
在定位了CRT-RS的每行中的异常桶之后,可以使用CRT-RS的恢复函数来反向计算指示异常源地址关联信息的键。例如,在CRT-RS的每行中的异常桶的列号(等式7中的ci)被导出,并可被用在等式8中以获取指示源地址关联信息的键。
所计算的异常键的异常源地址关联信息或由异常源地址关联信息指示的异常源地址被添加到黑名单中。通过查找新的到达流量数据的源地址是在黑名单中或与由黑名单中的异常源地址关联信息指示的异常源地址相匹配,对由黑名单验证的恶意流量数据进行过滤。
在示例性实施例中,布隆过滤器可用于快速查找黑名单。布隆过滤器是用于集合成员资格查询的节省空间的数据结构。它由所有初始值为零的m位的数组和范围为(0,1,2,…,m-1)的K个独立的哈希函数hi组成,其中i=(1,2,....,K),如图4所示的本公开的示例性实施例。对于数据集S中的每个元素x,在由hi(x)指示的桶处的位被设置为1,i=(1、2,...,K)。为了查询另一个元素y是否属于数据集S,则检查在由hi(y)指示的桶处的位,i=(1、2,...K)。如果所有被检查的位均等于1,则元素y属于数据集S的概率很高。如图4所示,因为存在一个等于0的位,所以y不属于S。尽管布隆过滤器具有由于哈希函数的冲突而导致的低误报率,但是,布隆过滤器的快速查询和空间消耗少的优点仍然使它成为流行的用于集合成员资格查询的数据结构。
其他算法也可以用于查找黑名单。这些算法例如是二进制搜索、块搜索、二进制树查找等。
图5示出了根据本公开的一些实施例的用于针对DDoS泛洪攻击的网络流量分析的方法和设备的另一系统架构。用于网络流量分析的系统400包括:至少一个节点402,其中,每个节点402分别针对DDoS泛洪攻击执行网络流量分析;以及中心或监控节点403,其从总体角度执行网络流量分析。监控节点403可以从节点402中选择,然后它还具有以下功能:获取来自网络的到达流量数据401,将流量数据401记录到相应的CRT-RS 404中,以及基于黑名单而过滤来自异常源地址的数据分组。监控节点403也可以是执行在CRT-RS中检测异常桶并仅更新黑名单的功能的单独节点。例如,监控节点403收集来自其他节点402中的每一个或一部分的CRT-RS,并基于CRT-RS的组合函数来将CRT-RS组合成一个CRT-RS。然后,监控节点403通过使用上述的MM-CUSUM算法来在所组合的CRT-RS中检测异常桶,并将基于从异常桶恢复的键的异常源地址或异常源地址关联信息添加到监控节点403的黑名单405中。黑名单405可以被发送给节点402中的每一个或一部分,以更新这些节点402的黑名单,以使得每个节点402可以过滤新的到达流量数据中的异常数据分组。
根据本公开的一些实施例,提供了用于网络流量分析的方法。图6示出了说明该方法的示例性步骤的流程图。用于网络流量分析的方法包括以下步骤:
S610:获取当前时间间隔的流量数据;
S620:基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT-RS)中记录流量数据,其中,取模运算的模数选自中国余数定理(CRT)中的模数,作为成对互质整数,并且CRT-RS包括多个桶;
S630:基于当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化,在CRT-RS中检测异常桶;以及
S640:基于异常桶,恢复异常源地址关联信息。
具体地,流量数据可以包括至少一个数据分组,并且被建模为成对项(键,值),因此,步骤S620还可以包括:从至少一个数据分组中导出至少一个成对项的步骤,其中,成对项包括键和该键的关联值;以及在CRT-RS中记录至少一个成对项的步骤。在示例性实施例中,键表示从数据分组导出的源地址关联信息,并且是数据分组的源地址、源地址和端口的组合、源地址范围、以及数据分组的报头中的一个或多个字段中的至少一个。键的关联值是与键对应的数据分组的统计信息。值例如是包括多个分量的向量,每个分量是与键对应的TCP分组数量、与键对应的UDP分组数量、与键对应的ICMP分组数量、与键对应的分组大小分布、以及与键对应的目的地地址分布中的至少一个。
在CRT-RS中记录至少一个成对项的步骤可以包括:通过使用哈希运算来将至少一个键中的每个键映射到CRT-RS中的桶,以及将至少一个键中的每个键的关联值添加到CRT-RS中对应桶的值。映射可以进一步包括:对至少一个键中的每个键执行多个哈希运算的步骤,其中每个哈希运算至少包括取模运算,并且取模运算的模数可以从中国余数定理(CRT)中的模数选择,作为成对互质整数;以及基于哈希运算在多个哈希运算中的序列号和哈希运算的对应函数值来确定桶在CRT-RS中的位置的步骤。可以基于由源地址关联信息指示的多个源地址来选择取模运算的模数。根据示例性实施例,桶的位置由作为桶的行号的哈希运算在多个哈希运算中的序列号和作为桶的列号的哈希运算的对应函数值来标示。在基于中国余数定理的可逆概要中记录流量数据的步骤还可以包括:组合来自获取并记录流量数据的多个节点的CRT-RS中的对应桶的值。
步骤630可以进一步包括以下步骤:对于每个桶和关联值的每个分量,基于前一时间间隔的桶的累积和以及当前时间间隔的桶的值的变化,计算当前时间间隔的桶的累积和。此外,可以基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及具有缩放因子的当前时间间隔的桶的标准偏差,计算当前时间间隔的桶的值的变化。根据示例性实施例,可以基于当前时间间隔的桶的值和前一时间间隔的桶的平均值,计算当前时间间隔的桶的平均值,其中,当前时间间隔的桶的值和前一时间间隔的桶的平均值中的至少一个可用权重系数来计算。可以基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差,计算当前时间间隔的桶的标准偏差,其中,当前时间间隔的桶的值、当前时间间隔的桶的平均值、和前一时间间隔的桶的标准偏差中的至少一个用权重系数来计算。
在计算了桶的累积和之后,如果针对关联值的每个分量的当前时间间隔的桶的累积和超过第一阈值,则该方法可以进一步确定异常桶。第一阈值可以对于关联值的不同分量是不同的。例如,如果针对关联值的所有分量的桶的累积和的总和超过第二阈值,则该方法可以进一步确定异常桶。如果检测到异常桶,则该方法可以进一步将当前时间间隔的桶的累积和的值、当前时间间隔的桶的平均值、以及当前时间间隔的桶的标准偏差分别设置为前一时间间隔的桶的累积和的值、前一时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差。
步骤S640还可以包括以下步骤:通过基于异常桶的位置求解哈希运算,恢复对应于异常桶的键;以及从键中获取异常源地址关联信息。在示例性实施例中,步骤640可以包括:在映射列表中记录与至少一个键中的每个键对应被映射的桶的位置;以及通过将异常桶的位置与映射列表中桶的位置进行匹配,恢复对应于异常桶的键。这种恢复方式将减少计算量。
除了DDoS泛洪攻击检测之外,用于网络流量分析的方法还可以包括通过使用存储了异常源地址关联信息的黑名单和用于对执行攻击的异常源地址进行过滤的过滤器来缓解攻击的步骤。
图7示出了根据本公开的示例性实施例的用于网络流量分析的方法,尤其是用于DDoS泛洪攻击缓解。该方法包括以下步骤:
S710:判断数据分组的源地址是否与由黑名单中的异常源地址数据关联信息指示的源地址相匹配;
S720:如果步骤S710的结果为“否”,则获取当前时间间隔的流量数据,其中,在系统初始化中,由于黑名单为空,因此该方法可以直接进入S720;
S730:基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT-RS)中记录流量数据,其中,取模运算的模数选自中国余数定理(CRT)中的模数,作为成对互质整数,并且CRT-RS包括多个桶;
S740:根据当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化,在CRT-RS中检测异常桶;
S750:基于异常桶,恢复异常源地址关联信息;
S760:将异常源地址关联信息添加到黑名单中;
S770:如果步骤S710的结果为“是”,则基于黑名单中的异常源地址关联信息,对流量数据的数据分组进行过滤;
S780:获取当前时间间隔的流量数据,被过滤的流量数据的源地址与由黑名单中的异常源地址关联信息指示的源地址不匹配。
对于包括执行网络流量分析的多个节点的系统架构,与在单个节点或设备上的网络流量分析的方法的步骤相比,根据本公开的一些实施例的方法可以进一步包括:例如在DDoS泛洪攻击检测过程期间,组合来自获取并记录流量数据的多个节点的CRT-RS中的对应桶的值的步骤;以及例如在DDoS泛洪攻击缓解过程期间,将异常源地址关联信息添加到多个节点的黑名单中的步骤。
图8示出了根据本公开的示例性实施例的用于网络流量分析的设备,特别是用于DDoS泛洪攻击检测。设备800可以包括获取单元810、记录单元820、检测单元830、恢复单元840和存储单元850。获取单元810可被配置为获取当前时间间隔的流量数据。记录单元820可被配置为基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT-RS)中记录流量数据,其中,取模运算的模数是从中国余数定理(CRT)的模数中选择的,作为成对互质整数,并且CRT-RS包括多个桶。然后,检测单元830可被配置为基于当前时间间隔的流量数据和前一时间间隔的流量数据之间的变化来在CRT-RS中检测异常桶。恢复单元840可被配置为基于异常桶来恢复异常源地址关联信息。CRT-RS的数据被存储在存储单元850中。每个单元810至840还可以包括存储器单元,以在这些单元的对应处理中存储相关信息。在一些实施例中,相关信息或其他数据(例如与MM-CUSUM算法有关的数据)也可被存储在存储单元850中。
流量数据可以包括至少一个数据分组。获取单元可以包括用于接收来自网络的流量数据的数据分组的通信接口。记录单元820还被配置为从至少一个数据分组导出至少一个成对项,并在CRT-RS中记录至少一个成对项。成对项可以包括键和该键的关联值。具体地,根据示例性实施例,键是从数据分组导出的源地址关联信息,并且可以是以下中的至少一个:源地址,源地址和端口的组合,源地址范围、以及数据分组的报头中的一个或多个字段。成对项中的键的关联值可以是与键对应的数据分组的统计信息,并且包括以下中的至少一个:与键对应的TCP分组数量、与键对应的UDP分组数量、与键对应的ICMP分组数量、与键对应的分组大小分布、以及与键对应的目的地地址分布。
记录单元820例如可以通过使用哈希运算将至少一个键中的每个键映射到CRT-RS中的桶并将至少一个键中的每个键的关联值添加到CRT-RS中对应桶的值相,将成对项记录到CRT-RS中。在映射过程中,记录单元820还可被配置为:对至少一个键中的每个键执行多个哈希运算,其中每个哈希运算至少包括取模运算,并且取模运算的模数选自中国余数定理(CRT)中的模数,作为成对互质整数;以及基于哈希运算在多个哈希运算中的序列号和哈希运算的对应函数值来确定桶在CRT-RS中的位置。例如,桶的位置可以由作为桶的行号的哈希运算在多个哈希运算中的序列号和作为桶的列号的哈希运算的对应函数值标示。在哈希函数的配置中,可以按升序或降序排列哈希运算中的取模运算的模数。关于源地址数量,在一些实施例中,基于由源地址关联信息指示的源地址数量来选择取模运算的模数。
在示例性实施例中,检测单元830可被配置为执行MM-CUSUM算法以执行攻击检测,例如针对每个桶和关联值的每个分量,基于前一时间间隔的桶的累积和以及当前时间间隔的桶的值的变化,计算当前时间间隔的桶的值的累积和,其中,基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及具有缩放因子的当前时间间隔的桶的标准偏差来计算当前时间间隔的桶的值的变化。例如,可以基于当前时间间隔的桶的值和前一时间间隔的桶的平均值,计算当前时间间隔的桶的平均值,其中,当前时间间隔的桶的值和前一时间间隔的桶的平均值中的至少一个用权重系数来计算。然后,可以基于当前时间间隔的桶的值、当前时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差,计算当前时间间隔的桶的标准偏差,其中,当前时间间隔的桶的值、当前时间间隔的桶的平均值、和前一时间间隔的桶的标准偏差中的至少一个用权重系数来计算。
在计算了桶的累积和之后,检测单元830可以进一步被配置为:如果针对关联值的每个分量的当前时间间隔的桶的累积和超过第一阈值,则确定异常桶。在示例性实施例中,第一阈值对于关联值的不同分量是不同的。另外,可以通过确定针对关联值的所有分量的桶的累积和的总和是否超过第二阈值来检测异常桶。如果检测到异常桶,则检测单元830还被配置为对于所检测的异常桶中的每一个,将当前时间间隔的桶的累积和的值、当前时间间隔的桶的平均值、以及当前时间间隔的桶的标准偏差分别设置为前一时间间隔的桶的累积和的值、前一时间间隔的桶的平均值、以及前一时间间隔的桶的标准偏差。
在本公开的一些实施例中,在恢复过程期间,恢复单元840可被配置为:通过基于异常桶的位置求解哈希运算,恢复对应于异常桶的键;以及从键中获取异常源地址关联信息。该恢复过程可以通过简化方式来执行,例如,恢复单元840可被配置为:在映射列表中记录与至少一个键中的每个键对应被映射的桶的位置;以及通过将异常桶的位置与映射列表中桶的位置进行匹配,恢复对应于异常桶的键。映射列表可被存储在存储单元850中。
图9示出了根据本公开的示例性实施例的用于网络流量分析的设备,特别是用于DDoS泛洪攻击缓解。与图8中的设备800相比,图9中的设备900可以进一步包括过滤单元960,其被配置为基于黑名单中的异常源地址关联信息,对流量数据的数据分组进行过滤。诸如获取单元910、记录单元920、检测单元930和恢复单元940的其他单元被配置为执行如上所述的类似功能。与图8中的存储单元850相比,存储单元950可以具有附加功能,例如,存储用于存储异常源地址关联信息的黑名单。
根据本公开的一些实施例,提供了用于网络流量分析的系统。该系统可以包括多个如图8或9所示的设备。此外,该系统还可以包括如图10所示的管理设备1000。管理设备1000例如包括管理单元1010、检测单元1020、恢复单元1030、和存储单元1040。管理单元1010可被配置为组合来自多个图8或9的设备的CRT-RS中的对应桶的值。因此,管理单元1010可以包括通信接口以接收来自其他设备的CRT-RS并将更新的黑名单发送给这些设备。检测单元1020和恢复单元1030可被配置为执行与如图9所示的检测单元930和恢复单元940相似的功能。然后,存储单元1040可以存储所组合的CRT-RS和黑名单。与其他设备相比,根据本公开的示例性实施例,管理单元1010还可被配置为将异常源地址关联信息添加到多个设备的黑名单中,以使这些设备能够执行攻击缓解。
管理设备1000也可以从获取和记录流量数据的设备中选择。然后,管理设备1000可以包括如图9所示的所有单元以及如图10所示的管理单元1010。
基于上述特征,根据本公开示例性实施例的用于网络流量分析的方法、设备和系统提供了如下的至少一个优点:
适合于处理大规模网络流量:通过使用概要数据结构以将网络流量数据压缩并融合成紧凑且恒定大小的数据集,根据示例性实施例的解决方案能够通过得益于概要数据结构的先进性来有效地处理大规模流量数据。
新颖的可逆概要:根据一些实施例的用于网络流量分析的方法、设备和系统通过提出新颖的可逆概要(被称为CRT-RS)来解决传统的概要中的不可逆性问题。CRT-RS利用中国余数定理中的同余方程的解来反向计算键。因此,这些解决方案能够找到异常源地址,并能进一步缓解源自异常源地址的恶意流量数据。
自适应检测和协议独立:根据一些实施例的用于网络流量分析的方法、设备和系统是自适应且协议独立的,用于检测DDoS泛洪攻击。首先,该解决方案使用MM-CUSUM算法来监视网络流量随时间的突然变化,而不是预先构建网络活动的正常配置文件。这种设计可以使攻击检测适应最近的网络流量变化,而无需基于先前建立的静态配置文件进行判断。此外,该解决方案能够通过在检测过程中调整参数来检测一些精心设计的攻击。这种自适应特性使得解决方案更灵活和鲁棒,以应对更多的网络攻击。其次,该解决方案充分利用DDoS泛洪攻击的的导致数据分组数量急剧增加的基本攻击特性。有很多协议可以用来发起DDoS泛洪攻击。无法预测何时和何种类型的DDoS泛洪攻击将发生。协议独立的方法、设备和系统被高度预期用于作为整体来评估互联网安全。在根据本公开的示例性实施例提供的解决方案中,多维变化点检测方法被用于在CRT-RS的每行中找出异常桶。该设计可以支持在不同协议下处理异常攻击。所提供的解决方案是通用得解决方案,其可以基于具有高检测效率的统一可逆概要数据结构来组合不同的检测方法。因此,与其他现有检测方法相比,它具有很高的优势。
可扩展性:所设计的概要数据结构可被扩展以涉及用于DDoS泛洪攻击的更多维度特征。它也可被扩展以涉及某些特定的维度特征以检测其他网络攻击。因此,根据本公开的一些实施例的用于网络流量分析的方法、设备和系统不仅可以检测DDoS泛洪攻击,而且可被用于在检测过程中所使用的维度特征可被集成到概要数据结构中时检测其他攻击。从这个角度来看,这些解决方案可以以自适应、高效且协议独立的方式支持合成攻击检测。
图11示出了可以在其上实现本公开的示例性实施例的计算机系统1100。尽管计算机系统1100针对特定设备或装置进行了描述,但是可以预期,图11内的其他设备或装置(例如,网络单元、服务器等)可以部署所示的系统1100的硬件和组件。,计算机系统1100被设计并被编程(例如,通过计算机程序代码或指令)以用于如本文所述的在分布式网络中的分散信任评估,并且包括诸如总线1110的通信机制以用于在计算机系统1100的其他内部和外部组件之间传递信息。信息(也被称为数据)被表示为可测量现象的物理表达,通常是电压,但在其他实施例中包括诸如磁性、电磁、压力、化学、生物、分子、原子、亚原子和量子交互的现象。计算机系统1100或其一部分构成用于在虚拟化网络中执行安全和信任技术及解决方案中的一个或多个步骤的模块。
总线1110包括一个或多个并行的信息导体,以使得信息在被耦合到总线1110的设备之间被快速传输。用于处理信息的一个或多个处理器1102与总线1110耦合。
处理器1102执行对信息的一组操作,如与本文所述的在分布式网络中的分散信任评估有关的计算机程序代码所指定的。该计算机程序代码是提供用于处理器和/或计算机系统的操作以执行指定功能的指令的一组指令或语句。该代码例如可以用计算机编程语言编写,并被编译成处理器的本机指令集。代码也可以使用本机指令集(例如,机器语言)来被直接编写。该组操作包括从总线1110引入信息并将信息放置在总线1110上。该组操作通常还包括比较两个或更多个信息单元、对信息单元的位置移位、以及例如通过加法或乘法或逻辑运算(例如或(OR)、异或(XOR)、和与(AND))来组合两个或更多个信息单元。可以由处理器执行的一组操作中的每个操作被称为指令的信息(例如一个或多个数字的操作代码)表示给处理器。由处理器1102执行的操作序列,例如操作代码序列,构成处理器指令,也称为计算机系统指令或者简称为计算机指令。处理器可以单独或组合地被实现为机械、电气、磁性、光学、化学或量子组件。
计算机系统1100还包括被耦合到总线1110的存储器1104。诸如随机存取存储器(RAM)或其他动态存储设备之类的存储器1104存储信息,该信息包括用于如本文所描述的在分布式网络中的分散信任评估的处理器指令。动态存储器允许被存储在其中的信息被计算机系统1100改变。RAM允许被存储在被称为存储器地址的位置处的信息单元独立于在相邻地址处的信息来被存储和检索。处理器1102还使用存储器1104以在处理器指令的执行期间存储临时值。计算机系统1100还包括被耦合到总线1110的只读存储器(ROM)1106或其他静态存储设备,用于存储未被计算机系统1100改变的包括指令的静态信息。某一存储器由当断电时丢失被存储在其上的信息的易失性存储设备组成。非易失性(永久性)存储设备1108也被耦合到总线1110,诸如磁盘、光盘或闪存卡,用于存储即使当计算机系统1100被关闭或断电时也仍然存在的包括指令的信息。
信息(包括用于本文描述的在分布式网络中的分散信任评估的指令)从外部输入设备1112被提供给总线710以供处理器使用,该外部输入设备1112例如是包含由人类用户操作的字母数字键的键盘或传感器。主要用于与人交互的被耦合到总线1110的其他外部设备包括用于呈现文本或图像的显示设备1114(例如阴极射线管(CRT)或液晶显示器(LCD),或等离子屏幕或打印机)、以及用于控制在显示器1114上呈现的小光标图像的位置并发出与在显示器1114上呈现的图形元素相关联的命令的指示设备1116(例如鼠标或轨迹球或光标方向键或运动传感器)。在一些实施例中,例如,在其中计算机系统1100自动执行所有功能而无需人工输入的实施例中,外部输入设备1112、显示设备1114和指示设备1116中的一个或多个被省略。
在所示出的实施例中,诸如专用集成电路(ASIC)1120之类的专用硬件被耦合到总线1110。专用硬件被配置为出于专用目的而足够快地执行未被处理器1102执行的操作。专用IC的示例包括:用于生成用于显示器1114的图像的图形加速卡、用于对通过网络发送的消息进行加密和解密、语音识别的加密板、以及到特殊外部设备(例如重复执行可以在硬件中被更有效实现的某些复杂的操作序列的机械臂和医疗扫描设备)的接口。
计算机系统1100还包括被耦合到总线1110的通信接口1170的一个或多个实例。通信接口1170向以自己的处理器进行操作的各种外部设备(例如打印机、扫描仪和外部磁盘)提供单向或双向通信耦合。通常,耦合是通过网络链路进行的,该网络链路被连接到本地网络,并且具有自己的处理器的各种外部设备被连接到该本地网络。例如,通信接口1170可以是个人计算机上的并行端口或串行端口或通用串行总线(USB)端口。在一些实施例中,通信接口1170是集成服务数字网络(ISDN)卡或数字用户线(DSL)卡或电话调制解调器,其提供到对应类型的电话线的信息通信连接。在一些实施例中,通信接口1170是电缆调制解调器,该电缆调制解调器将总线1110上的信号转换成用于同轴电缆上的通信连接的信号或转换成用于光纤电缆上的通信连接的光信号。作为另一示例,通信接口1170可以是局域网(LAN)卡,以提供到诸如以太网之类的可兼容LAN的数据通信连接。也可以实现无线链路。对于无线链路,通信接口1170发送或接收或同时发送和接收电、声或电磁信号(包括红外和光信号),其携带信息流(例如数字数据)。例如,在无线手持设备(诸如像蜂窝电话的移动电话)中,通信接口1170包括称为无线电收发机的无线电频带电磁发射机和接收机。在某些实施例中,通信接口1170使得能够连接到用于如本文所述的在分布式网络中的分散信任评估的虚拟化网络。
如本文所使用的术语“计算机可读介质”是指参与向处理器1102提供信息(包括用于执行的指令)的任何介质。这样的介质可以采取许多形式,包括但不限于计算机可读存储介质(例如,非易失性介质、易失性介质)和传输介质。非暂时性介质(例如非易失性介质)包括例如光盘或磁盘(例如存储设备1108)。易失性介质包括例如动态存储器704。传输介质包括例如同轴电缆、铜缆电线、光导纤维、和在空间中传播而没有电线或电缆的载波(例如声波和电磁波,包括无线电波、光波和红外波)。信号包括通过传输介质传输的幅度、频率、相位、极化或其他物理特性的人为瞬态变化。计算机可读介质的常见形式包括例如软盘、柔性盘、硬盘、磁带、任何其他磁介质、CD-ROM、CDRW、DVD、任何其他光学介质、打孔卡、纸带、光学标记纸、带有孔图案或其他光学可识别标记的任何其他物理介质、RAM、PROM、EPROM、FLASH-EPROM、任何其他存储器芯片或盒、载波、或计算机可以从中读取的任何其他介质。本文使用术语计算机可读存储介质来指代除传输介质之外的任何计算机可读介质。
在一种或多种有形介质中编码的逻辑包括计算机可读存储介质上的处理器指令和专用硬件(例如ASIC 1120)中的一个或两个。
本公开的至少一些实施例与用于实现本文描述的一些或全部技术的计算机系统71100的使用有关。根据本公开的一个实施例,那些技术由计算机系统1100响应于处理器1102执行被包含在存储器1104中的一个或多个序列的一个或多个处理器指令来执行。这些指令也称为计算机指令、软件和程序代码,可以从诸如存储设备1108或网络链路之类的另一计算机可读介质被读入存储器1104中。在存储器1104中包含的指令序列的执行使处理器1102执行本文所述的一个或多个方法步骤。在替代实施例中,可以使用诸如ASIC 1120之类的硬件来代替软件或与之组合来实现本发明。因此,本发明的实施例不限于硬件和软件的任何特定组合,除非本文另有明确说明。
在网络链路和其他网络上通过通信接口1170传输的信号携带往返计算机系统1100的信息。计算机系统1100可以通过网络通过通信接口1170发送和接收信息(包括程序代码)。所接收的代码可以在被接收到时由处理器1102执行,或者可被存储在存储器1104中或被存储在存储设备1108或其他非易失性存储设备中以供以后执行,或被存储在两者。以这种方式,计算机系统1100可以获取采用载波上的信号的形式的应用程序代码。
图12示出了可以在其上实现本公开的实施例的计算机系统1200。尽管针对特定设备或装备描述了计算机系统1100,但是可以预期,图11内的其他设备或装置(例如,网络单元、服务器等)可以部署所示的系统1100的硬件和组件。计算机系统1100被设计并被编程(例如,通过计算机程序代码或指令)以用于如本文所述的在分布式网络中的分散信任评估,并且包括诸如总线1110之类的通信机制以用于在计算机系统1100的其他内部和外部组件之间传递信息。信息(也称为数据)被表示为可测量现象的物理表达,通常是电压,但在其他实施例中包括诸如磁性、电磁、压力、化学、生物、分子、原子、亚原子和量子交互的现象。计算机系统1100或其一部分构成用于在虚拟化网络中执行安全和信任技术及解决方案中的一个或多个步骤的模块。
总线1110包括一个或多个并行的信息导体,以使得信息在被耦合到总线1110的设备之间被快速传输。用于处理信息的一个或多个处理器1102与总线1110耦合。
处理器1102执行对信息的一组操作,如与本文所述的在分布式网络中的分散信任评估有关的计算机程序代码所指定的。该计算机程序代码是提供用于处理器和/或计算机系统的操作以执行指定功能的指令的一组指令或语句。该代码例如可以用计算机编程语言编写,并被编译成处理器的本机指令集。代码也可以使用本机指令集(例如,机器语言)来直接编写。该组操作包括从总线1110引入信息并将信息放置在总线1110上。该组操作通常还包括比较两个或更多个信息单元、对信息单元的位置移位、以及例如通过加法或乘法或逻辑运算(例如或(OR)、异或(XOR)、和与(AND))来组合两个或更多个信息单元。可以由处理器执行的一组操作中的每个操作被称为指令的信息(例如一个或多个数字的操作代码)表示给处理器。由处理器1102执行的操作序列,例如操作代码序列,构成处理器指令,也称为计算机系统指令或者简称为计算机指令。处理器可以单独或组合地被实现为机械、电气、磁性、光学、化学或量子组件。
计算机系统1100还包括被耦合到总线1110的存储器1104。诸如随机存取存储器(RAM)或其他动态存储设备之类的存储器1104存储信息,该信息包括用于如本文所描述的在分布式网络中的分散信任评估的处理器指令。动态存储器允许被存储在其中的信息被计算机系统1100改变。RAM允许被存储在被称为存储器地址的位置处的信息单元独立于在相邻地址处的信息来被存储和检索。处理器1102还使用存储器1104以在处理器指令的执行期间存储临时值。计算机系统1100还包括被耦合到总线1110的只读存储器(ROM)1106或其他静态存储设备,用于存储未被计算机系统1100改变的包括指令的静态信息。某一存储器由当断电时丢失被存储在其上的信息的易失性存储设备组成。非易失性(永久性)存储设备1108也被耦合到总线1110,例如磁盘、光盘或闪存卡,用于存储即使当计算机系统1100被关闭或断电时也仍然存在得包括指令的信息。
信息(包括用于本文描述的在分布式网络中的分散信任评估的指令)从外部输入设备1112被提供给总线710以供处理器使用,该外部输入设备1112例如是包含由人类用户操作的字母数字键的键盘或传感器。主要用于与人交互的被耦合到总线1110的其他外部设备包括用于呈现文本或图像的显示设备1114(例如阴极射线管(CRT)或液晶显示器(LCD)或等离子屏幕或打印机)、以及用于控制在显示器1114上呈现的小光标图像的位置并发出与在显示器1114上呈现的图形元素相关联的命令的指示设备1116(例如鼠标或轨迹球或光标方向键或运动传感器)。在一些实施例中,例如,在其中计算机系统1100自动执行所有功能而无需人工输入的实施例中,外部输入设备1112、显示设备1114和指示设备1116中的一个或多个被省略。
在示出的实施例中,诸如专用集成电路(ASIC)1120之类的专用硬件被耦合到总线1110。专用硬件被配置为出于专用目的而足够快地执行未被处理器1102执行的操作。专用IC的示例包括:用于生成用于显示器1114的图像的图形加速卡、用于对通过网络发送的消息进行加密和解密、语音识别的加密板、以及到特殊外部设备(例如重复执行可以在硬件中被更有效实现的某些复杂的操作序列的机械臂和医疗扫描设备)的接口。
计算机系统1100还包括被耦合到总线1110的通信接口1170的一个或多个实例。通信接口1170向以自己的处理器进行操作的各种外部设备(例如打印机、扫描仪和外部磁盘)提供单向或双向通信耦合。通常,耦合是通过网络链路进行的,该网络链路被连接到本地网络,并且具有自己处理器的各种外部设备被连接到该本地网络。例如,通信接口1170可以是个人计算机上的并行端口或串行端口或通用串行总线(USB)端口。在一些实施例中,通信接口1170是集成服务数字网络(ISDN)卡或数字用户线(DSL)卡或电话调制解调器,其提供到对应类型的电话线的信息通信连接。在一些实施例中,通信接口1170是电缆调制解调器,该电缆调制解调器将总线1110上的信号转换成用于同轴电缆上的通信连接的信号或转换成用于光纤电缆上的通信连接的光信号。作为另一示例,通信接口1170可以是局域网(LAN)卡,以提供到诸如以太网之类的可兼容LAN的数据通信连接。也可以实现无线链路。对于无线链路,通信接口1170发送或接收或同时发送和接收电、声或电磁信号(包括红外和光信号),其携带信息流(例如数字数据)。例如,在无线手持设备(诸如像蜂窝电话的移动电话)中,通信接口1170包括称为无线电收发机的无线电频带电磁发射机和接收机。在某些实施例中,如本文所述,通信接口1170使得能够连接到用于如本文所述的在分布式网络中的分散信任评估的虚拟化网络。
如本文所使用的术语“计算机可读介质”是指参与向处理器1102提供信息(包括用于执行的指令)的任何介质。这样的介质可以采取许多形式,包括但不限于计算机可读存储介质(例如,非易失性介质、易失性介质)和传输介质。非暂时性介质(例如非易失性介质)包括例如光盘或磁盘(例如存储设备1108)。易失性介质包括例如动态存储器704。传输介质包括例如同轴电缆、铜缆电线、光导纤维、和在空间中传播而没有电线或电缆的载波(例如声波和电磁波,包括无线电波、光波和红外波)。信号包括通过传输介质传输的幅度、频率、相位、极化或其他物理特性的人为瞬态变化。计算机可读介质的常见形式包括例如软盘、柔性盘、硬盘、磁带、任何其他磁介质、CD-ROM、CDRW、DVD、任何其他光学介质、打孔卡、纸带、光学标记纸、带有孔图案或其他光学可识别标记的任何其他物理介质、RAM、PROM、EPROM、FLASH-EPROM、任何其他存储器芯片或盒、载波、或计算机可以从中读取的任何其他介质。本文使用术语计算机可读存储介质来指代除传输介质之外的任何计算机可读介质。
在一种或多种有形介质中编码的逻辑包括计算机可读存储介质上的处理器指令和专用硬件(例如ASIC 1120)中的一个或两个。
本公开的至少一些实施例与用于实现本文描述的一些或全部技术的计算机系统71100的使用有关。根据本公开的一个实施例,那些技术由计算机系统1100响应于处理器1102执行被包含在存储器1104中的一个或多个序列的一个或多个处理器指令来执行。这些指令也称为计算机指令、软件和程序代码,可以从诸如存储设备1108或网络链路之类的另一计算机可读介质被读入存储器1104中。在存储器1104中包含的指令序列的执行使处理器1102执行本文所述的一个或多个方法步骤。在替代实施例中,可以使用诸如ASIC 1120之类的硬件来代替软件或与之组合来实现本发明。因此,本发明的实施例不限于硬件和软件的任何特定组合,除非本文另有明确说明。
在网络链路和其他网络上通过通信接口1170传输的信号携带往返计算机系统1100的信息。计算机系统1100可以通过网络通过通信接口1170发送和接收信息(包括程序代码)。所接收的代码可以在被接收到时由处理器1102执行,或者可被存储在存储器1104中或被存储在存储设备1108中或其他非易失性存储设备中以供以后执行,或被存储在两者。以这种方式,计算机系统1100可以获取采用载波上的信号的形式的应用程序代码。
图12示出了可以在其上实现本公开的实施例的芯片组1200。芯片组1200被编程为如本文所述的在分布式网络中的分散信任评估,并且包括例如被合并在一个或多个物理封装(例如,芯片)中的关于图11描述的处理器和存储器组件。举例来说,物理封装包括一种或多种材料、部件和/或电线在结构组件(例如,基板)上的布置,以提供一种或多种特性,例如物理强度、尺寸保持、和/或电交互的限制。预期在某些实施例中,可以在单个芯片中实现芯片组。芯片组1200或其一部分构成用于执行在同一通信会话中执行多种形式的通信的一个或多个步骤的部件。
在一个实施例中,芯片组1200包括诸如总线1201之类的通信机制,用于在芯片组1200的各个组件之间传递信息。处理器1203具有到总线1201的连接,以执行被存储在例如存储器1205中的指令和处理信息。处理器1203可以包括一个或多个处理核,每个核被配置为独立执行。多核处理器使得能够在单个物理封装内进行多处理。多核处理器的示例包括两个、四个、八个或更多数量的处理核。替代地或另外地,处理器803可以包括经由总线801串联配置的一个或多个微处理器,以使能指令的独立执行、流水线化、和多线程化。处理器1203还可以带有一个或多个专用组件以执行某些处理功能和任务,例如一个或多个数字信号处理器(DSP)1207或一个或多个专用集成电路(ASIC)1209。DSP1207通常被配置为独立于处理器1203而实时处理真实世界信号(例如,声音)。类似地,ASIC 1209可被配置为执行通用处理器不容易执行的专用功能。有助于执行本文描述的发明功能的其他专用部件包括一个或多个现场可编程门阵列(FPGA)(未示出)、一个或多个控制器(未示出)、或一个或多个其他专用计算机芯片。
处理器1203和所附组件具有经由总线1201到存储器1205的连接。存储器1205包括动态存储器(例如,RAM、磁盘、可写光盘等)和静态存储器(例如,ROM、CD-ROM等),用于存储可执行指令,这些可执行指令在被执行时执行本文所述的发明性步骤,以在同一通信会话中执行多种形式的通信。存储器1205还存储与发明步骤的执行相关联或由其生成的数据。
本公开包括本文明确公开的任何新颖特征或特征组合或其任何概括。当结合附图阅读时,鉴于前述描述,对本公开的前述示例性实施例的各种修改和调适对于相关领域的技术人员而言将变得显而易见。然而,任何和所有修改仍将落入本公开的非限制性和示例性实施例的范围内。

Claims (51)

1.一种用于网络流量分析的方法,包括:
获取当前时间间隔的流量数据;
基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT-RS)中记录所述流量数据,其中,所述取模运算的模数是从中国余数定理(CRT)中的模数中选择的,作为成对互质整数,并且所述CRT-RS包括多个桶;
基于所述当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化,在所述CRT-RS中检测异常桶;以及
基于所述异常桶,恢复异常源地址关联信息。
2.根据权利要求1所述的方法,其中,所述流量数据包括至少一个数据分组,在所述CRT-RS中记录所述流量数据包括:
从所述至少一个数据分组中导出至少一个成对项,其中,所述成对项包括键和所述键的关联值;以及
在所述CRT-RS中记录所述至少一个成对项。
3.根据权利要求2所述的方法,其中,所述键是从所述数据分组导出的源地址关联信息。
4.根据权利要求3所述的方法,其中,所述键是以下中的至少一个:
源地址,
源地址和端口的组合,
源地址范围,以及
数据分组的报头中的一个或多个字段。
5.根据权利要求2至4中任一项所述的方法,其中,所述键的所述关联值是与所述键对应的所述数据分组的统计信息。
6.根据权利要求5所述的方法,其中,所述关联值包括至少一个分量,所述分量是以下中的至少一个:
与所述键对应的传输控制协议分组数量;
与所述键对应的用户数据报协议分组数量;
与所述键对应的互联网控制消息协议分组数量;
与所述键对应的分组大小分布;以及
与所述键对应的目的地地址分布。
7.根据权利要求2至6中任一项所述的方法,其中,在所述CRT-RS中记录所述至少一个成对项包括:
通过使用哈希运算来将所述至少一个键中的每个键映射到所述CRT-RS中的桶;
将所述至少一个键中的每个键的所述关联值添加到所述CRT-RS中对应桶的值。
8.根据权利要求7所述的方法,其中,通过使用哈希运算来将所述至少一个键中的每个键映射到所述CRT-RS中的桶包括:
对所述至少一个键中的每个键执行多个哈希运算,其中,每个所述哈希运算至少包括取模运算,并且取模运算的模数选自中国余数定理(CRT)中的模数,作为成对互质整数;
基于所述哈希运算在所述多个哈希运算中的序列号和所述哈希运算的对应函数值,确定所述桶在所述CRT-RS中的位置。
9.根据权利要求8所述的方法,其中,所述哈希运算在所述多个哈希运算中的所述序列号标示所述桶的行号,并且所述哈希运算的对应函数值标示所述桶的列号。
10.根据权利要求8或9所述的方法,其中,所述哈希运算中的取模运算的模数以升序或降序排列。
11.根据权利要求8至10中的任一项所述的方法,其中,基于由所述源地址关联信息指示的源地址数量来选择取模运算的模数。
12.根据权利要求8至11中任一项所述的方法,其中,在基于中国余数定理的可逆概要中记录所述流量数据还包括:
组合来自获取并记录所述流量数据的多个节点的所述CRT-RS中的对应桶的值。
13.根据权利要求1至12中任一项所述的方法,其中,基于所述当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来在所述CRT-RS中检测异常桶包括:
对于每个桶和所述关联值的每个分量,基于所述前一时间间隔的桶的累积和以及所述当前时间间隔的桶的值的变化,计算所述当前时间间隔的桶的累积和,其中,基于所述当前时间间隔的桶的值、所述当前时间间隔的桶的平均值以及具有缩放因子的所述当前时间间隔的桶的标准偏差来计算所述当前时间间隔的桶的值的变化。
14.根据权利要求13所述的方法,其中,基于所述当前时间间隔的桶的值和所述前一时间间隔的桶的平均值来计算所述当前时间间隔的桶的平均值,其中,所述当前时间间隔的桶的值和所述前一时间间隔的桶的平均值中的至少一个用权重系数来计算。
15.根据权利要求14所述的方法,其中,基于所述当前时间间隔的桶的值、所述当前时间间隔的桶的平均值以及所述前一时间间隔的桶的标准偏差,计算所述当前时间间隔的桶的标准偏差,其中,所述当前时间间隔的桶的值、所述当前时间间隔的桶的平均值、和所述前一时间间隔的桶的标准偏差中的至少一个用权重系数来计算。
16.根据权利要求13至15中任一项所述的方法,其中,基于所述当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来在所述CRT-RS中检测异常桶还包括:
如果针对所述关联值的每个分量的所述当前时间间隔的桶的累积和超过第一阈值,则确定异常桶。
17.根据权利要求16所述的方法,其中,所述第一阈值对于所述关联值的不同分量是不同的。
18.根据权利要求16和17中任一项所述的方法,其中,基于所述当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来在所述CRT-RS中检测异常桶还包括:
如果针对所述关联值的所有分量的所述桶的所述累积和的总和超过第二阈值,则确定异常桶。
19.根据权利要求13至18中任一项所述的方法,其中,基于所述当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化来在所述CRT-RS中检测异常桶还包括:
对于所检测的异常桶的每个桶,将所述当前时间间隔的桶的累积和的值、所述当前时间间隔的桶的平均值、以及所述当前时间间隔的桶的标准偏差分别设置为所述前一时间间隔的桶的累积和的值、所述前一时间间隔的桶的平均值、以及所述前一时间间隔的桶的标准偏差。
20.根据权利要求7至19中任一项所述的方法,其中,基于所述异常桶来恢复异常源地址关联信息包括:
通过基于所述异常桶的所述位置求解所述哈希运算,恢复对应于所述异常桶的所述键;以及
从所述键中获取所述异常源地址关联信息。
21.根据权利要求7至19中任一项所述的方法,其中,基于所述异常桶来恢复异常源地址关联信息包括:
在映射列表中记录与所述至少一个键中的每个键对应被映射的桶的位置;
通过将所述异常桶的位置与所述映射列表中桶的位置进行匹配,恢复对应于所述异常桶的所述键。
22.根据权利要求1至21中的任一项所述的方法,还包括:
将所述异常源地址关联信息添加到黑名单中。
23.根据权利要求1至22中的任一项所述的方法,还包括:
将所述异常源地址关联信息添加到多个节点的黑名单中。
24.根据权利要求22或23所述的方法,还包括:
基于所述黑名单中的所述异常源地址关联信息,对所述流量数据的数据分组进行过滤。
25.一种用于网络流量分析的设备,包括:
获取单元,其被配置为获取当前时间间隔的流量数据;
记录单元,其被配置为基于包括取模运算的哈希运算,在基于中国余数定理的可逆概要(CRT-RS)中记录所述流量数据,其中,所述取模运算的模数是从中国余数定理(CRT)中的模数中选择的,作为成对互质整数,并且所述CRT-RS包括多个桶;
检测单元,其被配置为基于所述当前时间间隔的流量数据与前一时间间隔的流量数据之间的变化,在所述CRT-RS中检测异常桶;
恢复单元,其被配置为基于所述异常桶来恢复异常源地址关联信息;以及
存储单元,其被配置为存储所述CRT-RS。
26.根据权利要求25所述的设备,其中,所述流量数据包括至少一个数据分组,所述记录单元还被配置为:
从所述至少一个数据分组中导出至少一个成对项,其中,所述成对项包括键和所述键的关联值;以及
在所述CRT-RS中记录所述至少一个成对项。
27.根据权利要求26所述的设备,其中,所述键是从所述数据分组导出的源地址关联信息。
28.根据权利要求27所述的设备,其中,所述键是以下中的至少一个:
源地址,
源地址和端口的组合,
源地址范围,以及
数据分组的报头中的一个或多个字段。
29.根据权利要求26至28中任一项所述的设备,其中,所述键的所述关联值是与所述键对应的所述数据分组的统计信息。
30.根据权利要求29所述的设备,其中,所述关联值包括至少一个分量,所述分量是以下中的至少一个:
与所述键对应的传输控制协议分组数量;
与所述键对应的用户数据报协议分组数量;
与所述键对应的互联网控制消息协议分组数量;
与所述键对应的分组大小分布;以及
与所述键对应的目的地地址分布。
31.根据权利要求26至30中的任一项所述的设备,其中,所述记录单元还被配置为:
通过使用哈希运算来将所述至少一个键中的每个键映射到所述CRT-RS中的桶;
将所述至少一个键中的每个键的所述关联值添加到所述CRT-RS中的对应桶的值。
32.根据权利要求31所述的设备,其中,所述记录单元还被配置为:
对所述至少一个键中的每个键执行多个哈希运算,其中,每个所述哈希运算至少包括取模运算,并且取模运算的模数选自中国余数定理(CRT)中的模数,作为成对互质整数;
基于所述哈希运算在所述多个哈希运算中的序列号和所述哈希运算的对应函数值,确定所述桶在所述CRT-RS中的位置。
33.根据权利要求32所述的设备,其中,所述哈希运算在所述多个哈希运算中的所述序列号标示所述桶的行号,并且所述哈希运算的对应函数值标示所述桶的列号。
34.根据权利要求32或33所述的设备,其中,所述哈希运算中的取模运算的模数以升序或降序排列。
35.根据权利要求32至34中的任一项所述的设备,其中,基于由所述源地址关联信息指示的源地址的数量来选择取模运算的模数。
36.根据权利要求25至35中任一项所述的设备,其中,所述检测单元被配置为:
对于每个桶和所述关联值的每个分量,基于所述前一时间间隔的桶的累积和以及所述当前时间间隔的桶的值的变化,计算所述当前时间间隔的桶的累积和,其中,基于所述当前时间间隔的桶的值、所述当前时间间隔的桶的平均值以及具有缩放因子的所述当前时间间隔的桶的标准偏差来计算所述当前时间间隔的桶的值的所述变化。
37.根据权利要求36所述的设备,其中,基于所述当前时间间隔的桶的值和所述前一时间间隔的桶的平均值来计算所述当前时间间隔的桶的平均值,其中,所述当前时间间隔的桶的值和所述前一时间间隔的桶的平均值中的至少一个用权重系数来计算。
38.根据权利要求37所述的设备,其中,基于所述当前时间间隔的桶的值、所述当前时间间隔的桶的平均值以及所述前一时间间隔的桶的标准偏差,计算所述当前时间间隔的桶的标准偏差,其中,所述当前时间间隔的桶的值、所述当前时间间隔的桶的平均值、和所述前一时间间隔的桶的标准偏差中的至少一个用权重系数来计算。
39.根据权利要求36至38中任一项所述的设备,其中,所述检测单元还被配置为:
如果针对所述关联值的每个分量的所述当前时间间隔的桶的累积和超过第一阈值,则确定异常桶。
40.根据权利要求39所述的设备,其中,所述第一阈值对于所述关联值的不同分量是不同的。
41.根据权利要求39和40中的任一项所述的设备,其中,所述检测单元还被配置为:
如果针对所述关联值的所有分量的所述桶的所述累积和的总和超过第二阈值,则确定异常桶。
42.根据权利要求36至41中任一项所述的设备,其中,所述检测单元还被配置为:
对于所检测的异常桶的每个桶,将所述当前时间间隔的桶的累积和的值、所述当前时间间隔的桶的平均值、以及所述当前时间间隔的桶的标准偏差分别设置为所述前一时间间隔的桶的累积和的值、所述前一时间间隔的桶的平均值、以及所述前一时间间隔的桶的标准偏差。
43.根据权利要求25至42中任一项所述的设备,其中,所述恢复单元还被配置为:
通过基于所述异常桶的所述位置求解所述哈希运算,恢复对应于所述异常桶的所述键;以及
从所述键中获取所述异常源地址关联信息。
44.根据权利要求25至42中任一项所述的设备,其中,所述恢复单元还被配置为:
在映射列表中记录与所述至少一个键中的每个键对应被映射的桶的位置;
通过将所述异常桶的位置与所述映射列表中桶的位置进行匹配,恢复对应于所述异常桶的所述键;以及
所述存储单元还被配置为存储所述映射列表。
45.根据权利要求25至44中的任一项所述的设备,其中,所述存储单元还被配置为:
存储用于存储所述异常源地址关联信息的黑名单。
46.根据权利要求44或45所述的设备,还包括:
过滤单元,其被配置为基于所述黑名单中的所述异常源地址关联信息,对所述流量数据的数据分组进行过滤。
47.一种用于网络流量分析的系统,包括多个根据权利要求25至46中的任一项所述的设备。
48.根据权利要求47所述的系统,其中,所述系统还包括管理设备,所述管理设备包括:
管理单元,其被配置为组合来自所述多个设备的所述CRT-RS中的对应桶的值。
49.根据权利要求47和48中的任何一项所述的系统,其中,所述管理单元还被配置为:
将所述异常源地址关联信息添加到所述多个设备的所述黑名单中。
50.一种装置,包括用于执行根据权利要求1至24中的任一项所述的方法的部件。
51.一种非暂时性计算机可读存储介质,其存储指令,所述指令当由一个或多个处理器执行时使所述处理器执行根据权利要求1至24中任一项所述的方法。
CN201880095982.3A 2018-07-27 用于网络流量分析的方法、设备和系统 Active CN112544059B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/097300 WO2020019270A1 (en) 2018-07-27 2018-07-27 Method, device, and system for network traffic analysis

Publications (2)

Publication Number Publication Date
CN112544059A true CN112544059A (zh) 2021-03-23
CN112544059B CN112544059B (zh) 2024-05-31

Family

ID=

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113259263A (zh) * 2021-04-29 2021-08-13 中电积至(海南)信息技术有限公司 一种深度报文检测集群中的数据包调度方法
CN113746798A (zh) * 2021-07-14 2021-12-03 清华大学 基于多维度分析的云网络共享资源异常根因定位方法
CN114004654A (zh) * 2021-11-04 2022-02-01 中南大学 基于大数据分析的互联网卡用户画像构建方法及系统

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020035628A1 (en) * 2000-09-07 2002-03-21 Gil Thomer Michael Statistics collection for network traffic
US6597661B1 (en) * 1999-08-25 2003-07-22 Watchguard Technologies, Inc. Network packet classification
US20060075489A1 (en) * 2004-09-30 2006-04-06 Lucent Technologies, Inc. Streaming algorithms for robust, real-time detection of DDoS attacks
JP2007221311A (ja) * 2006-02-15 2007-08-30 Yokogawa Electric Corp パケット解析システム
CN105099732A (zh) * 2014-04-28 2015-11-25 华为技术有限公司 一种识别异常ip数据流的方法、装置和系统
CN106575323A (zh) * 2014-08-22 2017-04-19 诺基亚技术有限公司 用于虚拟化网络的安全性和信任框架
CN106657038A (zh) * 2016-12-08 2017-05-10 西安交通大学 一种基于对称度Sketch的网络流量异常检测与定位方法
CN108141372A (zh) * 2015-03-18 2018-06-08 赫尔实验室有限公司 用于基于网络流量检测对移动ad hoc网络的攻击的系统和方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6597661B1 (en) * 1999-08-25 2003-07-22 Watchguard Technologies, Inc. Network packet classification
US20020035628A1 (en) * 2000-09-07 2002-03-21 Gil Thomer Michael Statistics collection for network traffic
US20060075489A1 (en) * 2004-09-30 2006-04-06 Lucent Technologies, Inc. Streaming algorithms for robust, real-time detection of DDoS attacks
JP2007221311A (ja) * 2006-02-15 2007-08-30 Yokogawa Electric Corp パケット解析システム
CN105099732A (zh) * 2014-04-28 2015-11-25 华为技术有限公司 一种识别异常ip数据流的方法、装置和系统
CN106575323A (zh) * 2014-08-22 2017-04-19 诺基亚技术有限公司 用于虚拟化网络的安全性和信任框架
CN108141372A (zh) * 2015-03-18 2018-06-08 赫尔实验室有限公司 用于基于网络流量检测对移动ad hoc网络的攻击的系统和方法
CN106657038A (zh) * 2016-12-08 2017-05-10 西安交通大学 一种基于对称度Sketch的网络流量异常检测与定位方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SABER DASHTI.ETC: "An efficient sketch-based framework to identify multiple heavy-hitters and its application in DoS detection", THE 22ND IRANIAN CONFERENCE ON ELECTRICAL ENGINEERING (ICEE 2014), pages 2 - 5 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113259263A (zh) * 2021-04-29 2021-08-13 中电积至(海南)信息技术有限公司 一种深度报文检测集群中的数据包调度方法
CN113259263B (zh) * 2021-04-29 2022-11-22 积至(海南)信息技术有限公司 一种深度报文检测集群中的数据包调度方法
CN113746798A (zh) * 2021-07-14 2021-12-03 清华大学 基于多维度分析的云网络共享资源异常根因定位方法
CN114004654A (zh) * 2021-11-04 2022-02-01 中南大学 基于大数据分析的互联网卡用户画像构建方法及系统

Also Published As

Publication number Publication date
EP3831034A4 (en) 2022-02-23
WO2020019270A1 (en) 2020-01-30
EP3831034A1 (en) 2021-06-09
US20210273865A1 (en) 2021-09-02
EP3831034B1 (en) 2024-05-01
US11558269B2 (en) 2023-01-17

Similar Documents

Publication Publication Date Title
EP3831034B1 (en) Method, device, and system for network traffic analysis
Jing et al. Network traffic fusion and analysis against DDoS flooding attacks with a novel reversible sketch
Dong et al. DDoS attack detection method based on improved KNN with the degree of DDoS attack in software-defined networks
Zhang et al. DDoS detection and prevention based on artificial intelligence techniques
Kumar et al. Distributed denial of service attack detection using an ensemble of neural classifier
Khan et al. Feature selection of denial-of-service attacks using entropy and granular computing
Bagui et al. Using machine learning techniques to identify rare cyber‐attacks on the UNSW‐NB15 dataset
Vijayasarathy et al. A system approach to network modeling for DDoS detection using a Naive Bayesian classifier
Gurulakshmi et al. Analysis of IoT bots against DDOS attack using machine learning algorithm
Liu et al. Fine-grained DDoS detection scheme based on bidirectional count sketch
CN113114694B (zh) 一种面向高速网络分组抽样数据采集场景的DDoS攻击检测方法
Jing et al. A reversible sketch-based method for detecting and mitigating amplification attacks
Bouyeddou et al. Detection of smurf flooding attacks using Kullback-Leibler-based scheme
Dwyer et al. Profiling iot-based botnet traffic using dns
Buragohain et al. Anomaly based DDoS attack detection
Bawa et al. Enhanced mechanism to detect and mitigate economic denial of sustainability (EDoS) attack in cloud computing environments
Shahrestani et al. Architecture for applying data mining and visualization on network flow for botnet traffic detection
Roshani et al. Hybriddad: Detecting ddos flooding attack using machine learning with programmable switches
Xie et al. High performance ddos attack detection system based on distribution statistics
Anil A Zero-Trust Security Framework for Granular Insight on Blind Spot and Comprehensive Device Protection in the Enterprise of Internet of Things (E-IOT)
CN112544059B (zh) 用于网络流量分析的方法、设备和系统
Yong et al. Understanding botnet: From mathematical modelling to integrated detection and mitigation framework
Majed et al. Efficient and Secure Statistical DDoS Detection Scheme.
Prasad et al. Detection of DDoS attack in software-defined networking environment and its protocol-wise analysis using machine learning
Dalvi et al. DDoS Attack Detection using Artificial Neural Network

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