用于实时网络流量分析的系统和方法与流程

文档序号:30494742发布日期:2022-06-22 03:41阅读:240来源:国知局
用于实时网络流量分析的系统和方法与流程

1.本领域总体涉及网络流量分析,更具体地涉及在已知、受控和不断变化的环境中检测流量中的恶意流量流。


背景技术:

2.包括通信卫星在内的通信系统是恶意行为者的潜在目标。检测这些恶意行为者的入侵可能很困难,因为监控卫星和其他通信系统之间的每一次通信可能并不实际,因为设备和网络的配置和拓扑结构可能会随着时间的推移而不断变化。
3.此外,网络设备(诸如卫星)和其他系统之间的许多通信流均是加密的,这会降低传输速度并可能妨碍对正在传输的消息进行分析。在许多情况下,入侵检测系统需要能够实时分析消息,并且能够处理间歇性或短消息。因此,提高通信系统的检测能力的附加安全性或系统将是有利的。
4.本背景技术部分旨在向读者介绍可能与本公开的各个方面相关的技术的各个方面,本公开的这些方面在下文中描述和/或要求保护。该论述被认为有助于向读者提供背景信息,以便于更好地理解本公开的各个方面。因此,应当理解,这些陈述应从这个角度来解读,而不是作为对现有技术的承认。


技术实现要素:

5.在一方面,提供了一种用于检测网络中的恶意流量流(traffic flow)的系统。该系统包括计算机系统,该计算机系统包括与至少一个存储器设备通信的至少一个处理器。基于为通过网络传输的多个数据分组/数据包(data packet)接收的分组信息,至少一个处理器被编程为计算多个数据分组的到达间隔时间和分组持续时间。至少一个处理器还被编程为过滤分组信息以去除噪声。至少一个处理器被进一步编程为基于分组信息、到达间隔时间和分组持续时间生成至少一个直方图。至少一个处理器被进一步编程为基于分组信息、到达间隔时间和分组持续时间生成功率谱密度估计。此外,至少一个处理器被编程为分析至少一个直方图和功率谱密度估计,以检测一个或多个意外数据流。此外,至少一个处理器被编程为报告一个或多个意外数据流。
6.在另一方面,提供了一种用于检测网络中的恶意流量流的方法。该方法由计算机系统实施,该计算机系统包括与至少一个存储器设备通信的至少一个处理器。该方法还包括由处理器接收通过网络传输的多个数据分组的分组信息。该方法还包括由处理器基于分组信息计算多个数据分组的到达间隔时间。此外,该方法包括由处理器基于分组信息计算多个数据分组的分组持续时间。此外,该方法包括由处理器过滤分组信息以去除噪声。此外,该方法包括由处理器基于分组信息、到达间隔时间和分组持续时间生成至少一个直方图。此外,该方法还包括由处理器基于分组信息、到达间隔时间和分组持续时间生成功率谱密度估计。此外,该方法还包括由处理器分析至少一个直方图和功率谱密度估计,以检测一个或多个意外数据流。此外,该方法还包括由处理器报告一个或多个意外数据流。
7.在另一方面,提供了一种用于检测网络中的恶意流量流的系统。该系统包括计算机系统,该计算机系统包括与至少一个存储器设备通信的至少一个处理器。至少一个处理器被编程为接收要在系统上执行的安全策略,其中安全策略包括配置数据。至少一个处理器还被编程为接收通过网络传输的多个数据分组的分组信息。至少一个处理器被进一步编程为基于分组信息和安全策略来计算多个数据分组的到达间隔时间。此外,至少一个处理器被编程成由处理器基于分组信息来计算多个数据分组的分组持续时间。此外,至少一个处理器被编程为基于安全策略过滤分组信息以去除噪声。此外,至少一个处理器被编程为基于分组信息、到达间隔时间和分组持续时间生成至少一个直方图。此外,至少一个处理器还被编程为基于分组信息、到达间隔时间和分组持续时间生成功率谱密度估计。此外,至少一个处理器被进一步编程为基于安全策略分析至少一个直方图和功率谱密度估计,以检测一个或多个意外数据流。此外,至少一个处理器还被编程为报告一个或多个意外数据流。
8.与上述方面相关的特征存在各种改进。另外的特征也可结合在上述方面中。这些改进和附加功能可单独存在或以任何组合存在。例如,下面论述的与所示示例中的任何一个相关的各种特征可单独或以任何组合并入上述方面中的任何一个。
附图说明
9.下面描述的附图描绘了其中公开的系统和方法的各个方面。应当理解,每个附图描绘了所公开的系统和方法的特定方面的示例,并且每个附图旨在符合其可能的示例。此外,在可能的情况下,以下描述引用包括在以下附图中的附图标记,其中多个附图中描绘的特征用一致的附图标记指定。
10.在附图中示出了目前论述的布置,然而,应当理解,本示例不限于所示的精确布置和手段,其中:
11.图1图示了根据本公开的一个示例的示例通信卫星系统的框图。
12.图2图示了包括图1所示的示例通信卫星系统的第一网络配置中的示例网络的框图。
13.图3图示了从图2所示的第一网络配置到第二网络配置的转换的框图。
14.图4图示了用于分析流量流数据以检测图1所示系统和图2所示网络中的恶意数据流的示例算法。
15.图5图示了使用图4所示算法对流量流进行第一分析的第一曲线图。
16.图6图示了图5所示的流量流的第一分析的第一直方图。
17.图7图示了使用图4所示算法对流量流进行第二分析的第二曲线图。
18.图8图示了图7所示的流量流的第二分析的第二直方图。
19.图9图示了使用图4所示算法对流量流进行第三分析的第三曲线图。
20.图10图示了图9所示的流量流的第三分析的第三直方图。
21.图11图示了使用图4所示算法对流量流进行第四分析的第四曲线图。
22.图12图示了图11所示的流量流的第四分析的第四直方图。
23.图13图示了使用图4所示算法对流量流进行第五分析的第五曲线图。
24.图14图示了图13所示的流量流的第五分析的第五直方图。
25.图15图示了使用图4所示算法对流量流进行第六分析的第六曲线图。
26.图16图示了图15所示的流量流的第六分析的第六直方图。
27.图17图示了用于分析图2所示网络上的通信流量的示例通信网络分析仪(“cna”)系统的简化框图。
28.图18图示了分析图2所示网络上的通信流量并使用图17所示系统的示例过程。
29.图19图示了根据本公开的一个示例在图17所示的系统中使用的用户计算机设备的示例配置。
30.图20图示了根据本公开的一个示例在图17所示的系统中使用的服务器计算机设备的示例配置。
具体实施方式
31.本领域总体涉及入侵检测,并且更具体地涉及在已知、受控和不断变化的环境中检测加密流量流中的恶意流量流。在一个示例中,通信网络分析仪(“cna”)计算机设备基于当前时间和可用通信设备确定通信网络,激活具有安全策略的算法以监控通过通信网络传输的分组。本文所描述的系统和方法被设计成能够实时地监控流量,而不依赖于网络上正在使用的通信协议。
32.在典型的网络流量中,各种分组类型(流)可能不会以预定速率到达。这可能会导致使用标准技术区分到达频率较低的虚假分组类型时出现问题。此外,各种分组类型可具有不同的持续时间,其中当使用标准技术时,持续时间较短的分组可具有较低的能量和较低的签名。
33.本文所描述的分析技术将功率谱密度(psd)估计与直方图数据相结合,以增强具有较低到达频率或较短持续时间的分组类型(流)的能量,从而允许改进这些流的检测和分析。这种分析技术为所有数据分组类型(流)生成不同且可见的签名,并且增强非周期性和虚假分组到达时间的签名。分析技术还减少了有效分析所需的捕获数据量。在大多数情况下,需要的分析越准确,需要供应给分析的数据就越多。然而,在许多情况下,例如在实时分析中,可能没有那么多的数据和/或处理时间。通过增强数据分组的签名和可见性,可减少正确分析网络流量所需的数据量。通过将psd分析与直方图数据相结合,系统可增加关于被分析分组的信息的分辨率和/或准确性,诸如但不限于,每个流中的分组数目、分组类型、分组大小、频率和数据速率。
34.本文所公开的系统和方法被描述为由cna计算机设备执行。在一个示例中,当流量正在通过交换机时,cna计算机设备是网络通信设备的交换机的数据平面。在其他示例中,cna计算机设备还可为但不限于网卡、中继器集线器、网桥、交换集线器、桥接集线器、mac网桥、抽头端口,或被配置为在数据平面内部或外部读取消息(诸如分组)的任何其他设备。
35.cna计算机设备确定关于从网络到达和/或被传输到网络的分组的信息。此信息包括分组到达时间(秒)、分组长度(比特)和分组内容比特率(每秒比特数)。利用该信息,cna计算机设备分析分组以通过分析cna计算机设备正在分析的分组的存在、形状、形式和/或频率来发现不需要的分组序列或分组集合的存在。
36.cna计算机设备基于关于分组的信息生成直方图和psd数据,以与预期流进行比较,从而检测流量中的意外数据流。
37.本文所描述的是计算机系统,诸如cna计算机设备和相关计算机系统。如本文所
述,此类计算机系统包括处理器和存储器。然而,本文所指的计算机设备中的任何处理器也可指一个或多个处理器,其中处理器可在一个计算设备或并行工作的多个计算设备中。此外,本文所指的计算机设备中的任何存储器也可指一个或多个存储器,其中存储器可在一个计算设备或并行工作的多个计算设备中。
38.系统和过程不限于本文所描述的具体示例。此外,每个系统和每个过程的组件可独立于本文所描述的其他组件和过程并与之分离来实践。每个组件和过程也可与其他组装包和过程结合使用。
39.图1图示了根据本公开的一个示例的示例通信卫星系统100的框图。示例卫星系统100包括网络处理器102、存储单元104和有效载荷处理器106,它们均连接到以太网交换机108。以太网交换机108进一步连接到一个或多个总线控制器110,其便于与卫星总线子系统112和分组交换机114进行通信。在一些示例中,分组交换机114是具有安全性的可编程数据平面,其允许执行算法来监控用于往返于卫星100的通信连接118的多个端口116。多个连接118可包括但不限于卫星间链路(isl)、下行链路(dl)和可充当isl或dl的端口116。
40.图2图示了包括示例通信卫星系统100(如图1所示)的第一网络配置202中的示例网络200的框图。网络200包括多个卫星100。如第一网络配置202中所示,多个卫星100位于多个轨道上,诸如地球同步轨道(geo)204、中地球轨道(meo)206和低地球轨道(leo)208。网络200还可包括处于高度椭圆轨道、月球轨道或围绕天体的任何其他非地球静止(ngso)轨道的卫星100,其中它们的连接和位置是已知的和/或可预测的。
41.网络200还包括多个用户设备210。用户设备210可包括飞行器、航天器、船艇、地面车辆、地面站和/或空间站,其中用户设备210连接到网络200。
42.如第一网络配置202中所示,卫星100各自具有一个或多个isl连接212。还存在从用户设备210到卫星100的dl连接214。尽管图2中未显示为直接连接,但每个dl连接214将网络200上的用户设备210连接到卫星100。
43.根据卫星100的性质,不同的卫星100以不同的速率围绕地球运行,使得网络配置202中的在时间a处的卫星100将不同于时间b处的卫星100。例如,leo 208中的卫星100将在90到120分钟内围绕地球运行,而meo 206中的卫星可能需要12小时来完成轨道运行。这意味着组成网络200的卫星100将随时间变化。因此,知道网络200的网络配置202将在何时改变对于适当地保护和监控网络200是重要的。
44.图3图示了从第一网络配置202到第二网络配置302的转换300的框图。在转换300中,卫星#4和卫星#7之间的isl连接212结束,并且在卫星#5和卫星#8之间创建新的isl连接212。
45.每个网络配置202和302代表不同时间点的网络200。尽管本文所示的不同网络配置202和302与卫星相关,但本文所描述的系统和方法也将与连接有多个用户设备210的其他类型的计算机网络200一起工作。
46.图4图示了用于分析流量流数据以检测系统100(如图1所示)以及其他类似系统和网络(诸如网络200(如图2所示))中的恶意数据流的示例算法400。算法400的步骤由分组交换机114(如图1所示)执行。分组交换机114被编程为监控由端口116传输或接收的数据流(如图1所示)。分组交换机114使用算法400来监控端口116上的数据流。在一个示例中,分组交换机114存储一个或多个安全策略,其中安全策略与网络200的配置相关,诸如配置202和
302(两者均在图3中示出)。在至少一个示例中,安全策略包括关于网络配置和流量应如何流动的信息。在一些示例中,分组交换机114与另一处理器位于同一位置,其中位于同一位置的处理器执行算法400的一个或多个步骤,诸如分析步骤。
47.分组交换机114基于接收或传输的数据分组确定三个不同的输入分组特性。这些输入包括但不限于分组到达时间402、分组长度404和分组比特率406。
48.使用到达时间402,分组交换机114计算408到达间隔时间,这是数据分组到达之间的持续时间。分组交换机114基于分组统计或诸如在安全策略中提供的先验知识来确定最小间隙长度。如果相邻分组到达之间的距离超过预定标准(例如,阈值量),则分组交换机114识别间隙并将到达间隔时间减少到中值到达间隔时间。分组交换机114去除间隙周期,因为此类间隙可在分析结果中引入失真。分组交换机114计算412到达间隔率,并且计算中值414到达间隔率。以非线性比率416组合到达间隔率和中值到达间隔率。到达间隔率代表与相应流相关联的数据分组的到达率。
49.使用分组长度404和分组比特率406,分组交换机114生成比率418以计算分组持续时间420。分组交换机114计算422最大分组持续时间,以生成分组持续时间420相对于最大分组持续时间的非线性比率424。
50.到达间隔时间非线性比率416和分组持续时间非线性比率424的结果被组合并用于计算432一个或多个直方图。分组交换机114将检测准则(例如,阈值)434应用于直方图以减少和/或克服抖动或噪声。在诸如网络200的计算机网络中,基于每个分组经过的中继器链路的数目,可能存在大量抖动,链路越多,抖动就越大。通过将检测阈值434应用于直方图,高于检测阈值434的任何内容被保持为实际数据分组,而低于检测阈值434的任何内容均作为抖动被丢弃。检测阈值434可由分组交换机114计算。检测阈值434还可预先计算并基于网络配置202,并且在安全策略中提供。
51.接下来,分组交换机114执行若干步骤以正确地应用直方图生成的数据以进行psd分析。这些步骤包括但不限于,确定直方图分组上方数据分组的最大数目的比率436,确定相对分组增益438,以及确定非线性排序加权和舍入440。目标是维持低持续时间和突发分组的正信噪比。
52.然后,分组交换机114使用分组持续时间的最小值442的一半作为采样时间来生成444采样的矩形序列,该矩形序列将增强的数据分组表示为数据分组的矩形序列,其中持续时间代表实际数据分组,并且振幅代表分配给数据分组的能量。
53.分组交换机114分析功率谱密度数据以显示各种分组序列在什么频率下出现。在该示例中,使用韦尔奇周期图(welch periodogram)计算功率谱密度估计446。分组交换机114将功率谱密度估计446与超过检测阈值434的数据分组与直方图432组合,以确定448检测到的分组类型(流)。直方图数据包括每个流中数据分组的数目。安全策略包括预期流。分组交换机114将预期流与检测到的流进行比较,以检测任何意外流。在一个示例中,分组交换机114从直方图432中检测到的流中去除预期流,以确定在改变的直方图中是否存在任何未预期的流。
54.由于网络200的拓扑结构是已知的,因此超出该拓扑结构的任何内容均是意外的,因此是异常的并且可能是恶意的。当检测到意外数据时,分组交换机114传输存在意外流的通知。分组交换机114还可提供异常数据分组的频率、到达时间、持续时间和/或数目。异常
数据分组可指示恶意威胁或分组交换机114用于分析的安全策略的错误配置。分组交换机114可通知操作中心、安全中心或采取行动。行动可能包括但不限于提供附加通知、警报、触发另一个程序、更改网络的拓扑结构和/或阻止流量。
55.图5至图14图示了使用算法400(如图4所示并由分组交换机114执行)对不同示例流进行分析的结果。下表1显示了每个分析中可能包含的不同流。出于本分析的目的,流1是唯一的预期流。流1以25khz的频率提供128,000个1500b的数据分组,流数据速率为300mbps。
[0056][0057]
表1
[0058]
图5图示了使用算法400(如图4所示)对流量流进行第一分析的第一曲线图500。曲线图500图示了流1的功率谱密度图。曲线图500包括x轴线上以千赫兹(khz)为单位的各种分组类型的分组到达的频率和y轴线上以分贝(db)为单位的功率谱密度(psd)。在曲线图500的中心,流1显示为25khz。曲线图500中所示的其他分量是到达间隔抖动,其小于-70db。
[0059]
图6图示了图5所示的对流量流进行第一分析的第一直方图600。出于算法400(如图4所示)的目的,从直方图600中排除主导流。这允许分组交换机114(或协同定位的处理器)鉴别直方图600中所示的附加流。直方图600包括x轴线上以db为单位的相对权重和y轴线上的分组数目。通过排除主导流,直方图600可显示关于其他检测到的流的信息,而不会被主导流遮蔽。出于本论述的目的,主导流(流1)是预期流,而所有其他流均是意外的和潜在的恶意流。分组交换机114从直方图600去除所有预期流以集中于意外流。在理想状态下,直方图600为空,因为没有意外的流。
[0060]
图7图示了使用算法400(如图4所示)对流量流进行第二分析的第二曲线700。曲线图700显示了在25khz下的主导流(流1)和每2hz重复一次的第二流。第二流是表1中的流2。图8图示了图7所示的对流量流进行第二分析的第二直方图800。直方图800显示具有10个分组的流2。主导流(流1)从直方图800中排除。因此,对于总共10个分组,第二流是每秒2个分组。
[0061]
图9图示了使用算法400(如图4所示)对流量流进行第三分析的第三曲线图900。曲线图900显示了在25khz下的主导流(流1),每20hz重复一次的第二流(流3)以及每2hz重复一次第三流(流2)。图10图示了图9所示的对流量流进行第三分析的第三直方图1000。直方图1000显示在16db处~10个分组、在17db处1个分组、在19.5db处~10个分组、在21db处~100个分组。出于分析的目的,彼此相距2db内的数据分组集被视为相同流的部分,但受到抖动的影响。因此,在17db处的1个分组是在16db处的数据分组的部分,在~19.5db处的10个分组是在21db处的数据分组的部分。如图9和图10所示,检测阈值434去除了大部分抖动,但
仍有一些抖动。然而,出于分析目的,这是可接受的,因为主导流在曲线图900上清晰可见。因此,第二流以每秒20个分组的速度提供100个分组,并且第三流以每秒2个分组的速度提供10个分组。
[0062]
尽管流1、2和3均有1500字节的分组,但算法400可检测不同字节大小的分组。在图11和图12中,主导流(流1)中的分组保持1500字节的大小,而第二流(流4)中的分组只有100字节长。此外,算法400以不同的流量流数据速率检测不同的流。流1的流数据速率为300mbps,而流4的流数据速率为1.6kbps。图11图示了使用算法400(如图4所示)对流量流进行第四分析的第四曲线图1100。曲线图1100显示了在25khz处的主导流(流1)和在2hz处重复出现的第二流(流4)。图12图示了如图11所示的对流量流进行第四分析的第四直方图1200。直方图1200图示了在19.5db处的3个分组和在21db处的7个分组。因此,第二流以每秒2个分组的速度提供10个分组。
[0063]
图13图示了使用算法400(如图4所示)对流量流进行第五分析的第五曲线图1300。曲线图1300显示了在25khz处的主导流(流1)、在20hz处重复出现的第二流(流5),以及在2hz下重复出现的第三流(流4)。图14图示了图13所示的对流量流进行第五分析的第五直方图。直方图1400图示了在64db处的10个分组和在21db处的100个分组。因此,第二流以每秒20个分组的速度提供100个分组,并且第三流以每秒2个分组的速度提供10个分组。
[0064]
图15图示了使用算法400(如图4所示)对流量流进行第六分析的第六曲线图1500。曲线图1500显示了在25khz处的主导流(流1)和在20hz处重复出现的第二流(流5)。图16图示了图15所示的对流量流进行第六分析的第六直方图。直方图1600图示了在19.5db处的3个分组和在21db处的97个分组。因此,第二流以每秒20个分组的速度提供100个分组。
[0065]
图17图示了用于分析网络200(如图2所示)上的通信流量的示例通信网络分析仪(“cna”)系统1700的简化框图。在该示例中,cna系统1700用于控制用于监控卫星100(如图1所示)和网络200上的其他设备的通信的算法的操作。该算法监控网络200上的通信中可能指示网络安全威胁和攻击的恶意数据流,以允许其他系统对所识别的检测到的网络安全威胁和攻击做出潜在响应。
[0066]
cna系统1700包括与一个或多个通信端口1705通信的cna计算机设备1710。cna计算机设备1710可类似于在网络200中的卫星100(两者均如图1所示)或用户设备210(如图2所示)上执行的分组交换机114或其他处理单元。在一些示例中,分组交换机114与能够执行算法400(如图4所示)的一个或多个步骤的一个或多个附加处理器共处一地。通信端口1705可类似于端口116(如图1所示)。一个或多个通信端口1705各自与通信设备1730通信。通信设备1730可类似于卫星100和/或用户设备210。在一个示例中,cna计算机设备还与向cna计算机设备1710提供安全策略的网络控制器1725通信。cna计算机设备1710还可与数据库服务器1715通信,用于检索和存储数据库1720中的数据。
[0067]
cna计算机设备1710被编程为接收关于计算机网络200的不同配置的签名信息和/或安全策略。安全策略可包括关于网络拓扑结构的信息,使得分析流量流的算法能够识别预期数据流,并且在出现意外数据流时检测它们。在一些示例中,安全策略包括网络的当前配置的预期流量流的签名。安全策略可包括信息,诸如但不限于,用户应何时连接、他们将连接多长时间、连接118的mod/cod、连接118的数据速率、对连接118的需求将用于定义数目的数据流、关于那些数据流的信息(诸如分组大小)、应用程序如何传输那些数据分组、到达
时间、协议(如果可用)等。所有这些信息均是在每个连接118的基础上编译的。安全策略可基于网络信息,诸如但不限于网络200中的卫星100(如图1所示)在特定时间点或在定义的时间间隔期间的知识,包括卫星100位于何处、设备100和210连接到哪个设备、以及设备100和210应在每个特定时间点或在指定时间间隔期间连接到哪个设备和/或每个连接118的持续时间。网络信息还可包括但不限于用户设备210如何连接到网络200和卫星100、卫星100本身之间以及卫星100和用户设备210之间的连接118的类型、mod/cod(调制和编码,其中编码指fec(前向纠错)开销)、数据速率,以及对于每个网络配置202和302(分别如图2和图3所示)沿着网络200的流量概况(用户期望生成何种类型的流量)。在一些示例中,cna计算机设备1710从网络控制器1725接收安全策略。在其他示例中,cna计算机设备1710存储多个安全策略,并且基于网络200的配置在不同的时间点使用不同的安全策略。在一些示例中,所有的连接212和214(均在图2中示出)均是预先已知的。在这些示例中的一些示例中,算法控制器1725传输指示何时使用每个安全策略的信号。在这些示例中的其他示例中,网络控制器1725传输调度,该调度通知cna计算机设备1710何时使用哪个安全策略。在一些示例中,cna计算机设备1710存储多个不同的算法。在这些示例中的一些示例中,网络控制器1725通知cna计算机设备1710何时使用哪种算法以及使用哪种安全策略。
[0068]
在其他示例中,一个或多个用户设备210可在自组织(ad-hoc)的基础上连接到网络200。在这些示例中,新用户设备210协商到网络200的连接118。新用户设备的信息被传递到网络控制器1725或cna计算机设备1710,其为新用户设备210以及具有到新用户设备210的连接118的设备100和210生成新安全策略。
[0069]
cna计算机设备1710对具有到通信设备1730的连接118的通信端口1705使用安全策略。在该示例中,cna计算机设备1710执行用于监控每个连接118的算法,其中该算法被配置为使用安全策略来针对恶意流量流监控与一个或多个连接118相关联的通信端口1705。当网络200处于相应配置时,cna计算机设备1710激活适当的算法和适当的安全策略。
[0070]
例如,基于网络配置202和302,cna计算机设备1710确定第一网络配置202将从时间a到时间b有效,并且第二网络配置302将从时间b到时间c有效。此外,cna计算机设备1710知道每个网络配置202和302的安全策略。该安全策略可存储在数据库1720中或从网络控制器1725接收。
[0071]
对于每个网络配置202和302,cna计算机设备1710确定使用哪个算法和安全策略来监控每个连接118。例如,在第一网络配置202中,与卫星#1相关联的cna计算机设备1710确定要在卫星#1上运行的算法(例如图4所示的算法400)来运行哪个安全策略以用于到卫星#2的isl连接212。cna计算机设备1710可使用不同的安全策略来监控到卫星2的isl连接212。此外,cna计算机设备1710可同时执行算法的多个副本,每个副本对应于具有活动连接118的每个通信端口1705。基于它们的连接和网络200的配置,算法的不同副本可各自使用不同的安全策略。与卫星#2相关联的cna计算机设备1710确定在卫星#2上为isl连接212确定在卫星#2上运行哪种算法,并为卫星#2的算法确定使用哪种安全策略来监控isl连接212。在每个卫星100上执行的算法和安全策略在不同的卫星100上或者甚至在同一卫星100的不同端口116上可不同。cna计算机设备1710和/或网络控制器1725基于所论述的卫星的一个或多个属性和/或网络200的配置来选择算法和安全策略。
[0072]
cna计算机设备1710确保在正确的时间在相应的卫星100上激活适当的算法和安
全策略。在一些示例中,cna计算机设备1710预先从网络控制器1725接收安全策略和算法,以及指示cna计算机设备1710何时激活每个算法和安全策略的调度。例如,cna计算机设备1710可接收用于第一网络配置202和第二网络配置302的算法和安全策略。当时间a开始时,与每个卫星100相关联的cna计算机设备1710激活与第一网络配置202相关联的预定算法和安全策略。当到达时间b时,与每个卫星100相关联的cna计算机设备1710激活与第二网络配置302相关联的预定算法和安全策略,等等。在这些示例中,网络控制器1725可在相应网络配置开始之前将算法和安全策略传输到cna计算机设备1710。此外,在一些示例中,可在多个时间点重复网络配置。在这些示例中,每个cna计算机设备1710可存储多个算法和安全策略,并且cna计算机设备1710可从网络控制器1725接收信号,该信号包括在不同时间点激活哪个算法和安全策略。在其他示例中,网络控制器1725在新网络配置开始时将一个或多个适当算法和安全策略传输到cna计算机设备1710。尽管以上是关于卫星100所述的,但是任何通信设备均可与本文所描述的系统和方法一起使用。在一些示例中,代替调度,每个安全策略包括活动时间属性,并且计算机设备710在适当的时间激活该安全策略。
[0073]
在该示例中,cna计算机设备1710是诸如分组交换机114(如图1所示)的系统,其可执行算法和安全策略来监控端口116(均如图1所示)上的通信118。在其他示例中,cna计算机设备1710还可为但不限于网卡、中继器集线器、网桥、交换集线器、桥接集线器、mac网桥或配置为传输和接收消息(诸如数据分组)的任何其他设备。在该示例中,cna计算机设备1710与网络控制器1725通信以接收关于何时使用哪些算法和安全策略的信号。在该示例中,网络控制器1725可通过isl连接212和dl连接214与cna计算机设备1710通信。cna计算机设备1710还可向网络控制器1725、用户设备210(如图2所示)或其他通信设备1730提供关于检测到的潜在恶意数据流或与安全策略的其他偏差的信息。在其他示例中,算法400可在集中位置执行,其中集中位置处的计算机设备监控网络200中的通信(即,数据流),并且根据适当的安全策略审查这些通信。cna计算机设备1710可为卫星100或用户设备210的一部分,其中端口116上的连接118可用于监控。
[0074]
在该示例中,通信设备1730是包括web浏览器或软件应用程序的计算机,其使得客户端通信设备1730能够使用因特网、局域网(lan)或广域网(wan)与cna计算机设备1710通信。在一些示例中,通信设备1730通过许多接口通信地耦合到因特网,包括但不限于诸如互联网、局域网、广域网或综合业务数字网络(isdn)、拨号连接、数字用户线路(dsl)、蜂窝电话连接、卫星连接和电缆调制解调器中的至少一个。通信设备1730可为能够访问网络(诸如因特网)的任何设备,包括但不限于台式计算机、膝上型计算机、个人数字助理(pda)、蜂窝电话、智能手机、平板电脑、平板手机或其他基于web的可连接装备。在至少一个示例中,一个或多个通信设备1730包括web浏览器,该web浏览器可用于向网络控制器1725或cna计算机设备1710输出信息,例如提供关于网络200的一个或多个配置的上下文信息或关于恶意数据流的一个或多个警告。在一些示例中,通信设备1730监控或控制卫星100的路径并提供关于卫星100的信息。在其他示例中,通信设备1730便于cna计算机设备1710和网络控制器1725之间的通信。
[0075]
该应用程序包括关于网络200中的卫星100和用户设备210的信息,并且能够确定在特定时间点或特定网络配置使用哪些算法和哪些安全策略来监控计算机网络200的数据流。该应用程序可作为基于云的web服务通过因特网或其他网络提供。在一些示例中,网络
控制器1725包括在网络控制器1725上执行的至少一个应用程序,以执行网络分析。
[0076]
数据库服务器1715通信地耦合到存储数据的数据库1720。在一个示例中,数据库1720包括多个卫星通信属性、多个算法属性、多个安全策略信息以及关于用户设备210的附加信息。在一些示例中,数据库1720从cna计算机设备1710远程存储。在一些示例中,数据库1720是分散的。在该示例中,通过登录到cna计算机设备1710和网络控制器1725中的至少一个,人可经由用户设备210访问数据库1720。
[0077]
在高级别上,算法在作为cna计算机设备1710的部分的fpga或其他处理器上执行。该算法生成数据,诸如以日志形式的统计数据。该算法可在卫星100、用户设备210或通信设备1730上并置,并且也可运行在计算机设备(诸如网络控制器1725)上。然后,计算机设备解释日志。基于对算法日志的审查,可检测到一些东西。基于检测,网络控制器1725、cna计算机设备1710或其他客户端设备可通知操作中心、安全中心或采取行动。行动可能包括但不限于提供通知、警报、触发另一个程序、更改网络的拓扑结构或阻止流量。
[0078]
图18图示了用于分析网络200(如图2所示)上的通信流量并使用系统1700(如图17所示)的示例过程1800。过程1800的步骤可由卫星100(图1)或其他设备210(图2)和/或cna计算机设备1710(图17)的分组交换机114执行。在至少一个示例中,执行过程1800的分组交换机114位于卫星100上。在一个示例中,分组交换机114对与另一通信设备1730(如图17所示)进行通信118(如图1所示)的每个端口116(如图1所示)执行过程1800。在一些示例中,分组交换机114针对每个活动端口116执行过程1800的不同实例化。在其他示例中,分组交换机114执行监控多个端口116的过程1800的一个实例化。
[0079]
cna计算机设备1710或分组交换机114与网络200中的一个或多个设备通信。网络中的设备可包括但不限于卫星100、用户设备210、通信设备1730和网络控制器1725(如图17所示)。
[0080]
cna计算机设备1710接收1805通过网络200(如图2所示)传输的多个数据分组的分组信息。分组信息包括但不限于分组到达时间402、分组长度404和分组比特率406(均在图4中示出)。cna计算机设备1710实时监控通过一个或多个端口116传输或接收的数据分组。cna计算机设备1710基于审查由计算机系统100或210通过端口116传输的多个数据分组来确定分组信息。
[0081]
cna计算机设备1710基于分组信息计算1810多个数据分组的到达间隔时间408(如图4所示)。cna计算机设备1710调整多个数据分组的多个到达间隔时间以去除间隙410(如图4所示)。cna计算机设备1710基于分组信息计算多个数据分组的到达间隔率412(如图4所示)。cna计算机设备1710计算多个数据分组的中值(或平均)到达间隔率414(如图4所示)。然后,cna计算机设备1710基于中值到达间隔率414调整多个到达间隔时间以去除一个或多个间隙410。
[0082]
cna计算机设备1710基于分组信息为多个数据分组计算1815分组持续时间420(如图4所示)。cna计算机设备1710过滤1820分组信息以去除噪声和抖动。cna计算机设备1710将检测阈值434(如图4所示)应用于多个数据分组,以过滤分组信息,从而去除噪声。cna计算机设备1710基于分组信息、到达时间408和分组持续时间420生成1825至少一个直方图432(如图4所示)。cna计算机设备1710还基于分组信息、到达间隔时间408和分组持续时间420生成1830功率谱密度估计446(如图4所示)。
[0083]
cna计算机设备1710分析1835至少一个直方图432和功率谱密度估计446,以检测一个或多个意外数据流。cna计算机设备1710在至少一个直方图432和功率谱密度估计446中检测一个或多个数据流448(如图4所示)。cna计算机设备1710将一个或多个检测到的数据流与一个或多个预期数据流进行比较。cna计算机设备1710基于比较来检测一个或多个意外数据流。在一个示例中,cna计算机设备1710从至少一个直方图432过滤一个或多个预期数据流,并且分析至少一个过滤直方图432以检测一个或多个意外数据流。
[0084]
基于对一个或多个意外数据流的检测,cna计算机设备1710报告一个或多个意外数据流。cna计算机设备1710可向网络控制器1725传输通知。此外,网络控制器1725、cna计算机设备1710或其他客户端设备可通知操作中心、安全中心或采取行动。行动可能包括但不限于提供通知、警报、触发另一个程序、更改网络的拓扑结构或阻止流量。
[0085]
cna计算机设备1710可接收包括一个或多个预期数据流的安全策略并存储该安全策略。cna计算机设备1710还可存储多个安全策略。多个安全策略中的每个安全策略与网络200的配置202或302(两者均在图3中示出)相关联。cna计算机设备1710激活与网络200的当前配置202相关联的安全策略。
[0086]
在cna计算机设备1710存储一个或多个安全策略的一些示例中,cna计算机设备1710从网络控制器1725(如图17所示)接收安全策略以在该时间点激活。在cna计算机设备1710存储一个或多个安全策略的其他示例中,cna计算机设备1710从网络控制器1725接收指示cna计算机设备1710激活所存储的安全策略中的一个的信号。在cna计算机设备1710存储一个或多个安全策略的另外示例中,cna计算机设备1710还可从网络控制器1725接收调度。调度包含要激活每个算法和安全策略的活动时间。cna计算机设备1710基于脚本激活相应的算法和安全策略。例如,脚本可包括将在网络200的一天、一小时或其他时间段内使用的所有算法和安全策略。安全策略可包括关于预期数据流的信息。
[0087]
图19图示了根据本公开的一个示例,在cna系统1700(如图17所示)中使用的用户计算机设备1902的示例配置。用户计算机设备1902由用户1901操作。用户计算机设备1902可包括但不限于卫星100、分组交换机114(均如图1所示)、用户设备210(如图2所示)、通信设备1730和网络控制器1725(均如图17所示)。用户计算机设备1902包括用于执行指令的处理器1905。在一些示例中,可执行指令存储在存储器区域1910中。处理器1905可包括一个或多个处理单元(例如,在多核配置中)。存储区域1910是允许存储和检索诸如可执行指令和/或事务数据的信息的任何设备。存储区域1910可包括一个或多个计算机可读介质。
[0088]
用户计算机设备1902还包括用于向用户1901呈现信息的至少一个媒体输出组件1915。媒体输出组件1915是能够向用户1901传送信息的任何组件。在一些示例中,媒体输出组件1915包括输出适配器(未示出),诸如视频适配器和/或音频适配器。输出适配器可操作地耦合到处理器1905,并且可操作地耦合到输出设备,诸如显示设备(例如,阴极射线管(crt)、液晶显示器(lcd)、发光二极管(led)显示器或“电子墨水”显示器)或音频输出设备(例如,扬声器或耳机)。在一些示例中,媒体输出组件1915被配置为向用户1901呈现图形用户接口(例如,web浏览器和/或客户端应用程序)。图形用户接口可包括例如用于查看关于网络200的监控数据的接口(如图2所示)。在一些示例中,用户计算机设备1902包括用于接收来自用户1901的输入的输入设备1920。用户1901可使用输入设备1920来输入网络配置信息,但不限于此。输入设备1920可包括例如键盘、指向设备、鼠标、触笔、触敏面板(例如,触
摸板或触摸屏)、陀螺仪、加速计、位置检测器、生物测定输入设备和/或音频输入设备。诸如触摸屏的单个组件既可用作媒体输出组件1915的输出设备,也可用作输入设备1920。
[0089]
用户计算机设备1902还可包括通信接口1925,该通信接口可通信地耦合到远程设备,诸如cna计算机设备1710(如图7所示)。通信接口1925可包括例如用于移动电信网络的有线或无线网络适配器和/或无线数据收发器。
[0090]
存储在存储区域1910中的是例如用于经由媒体输出组件1915向用户1901提供用户接口以及任选地接收和处理来自输入设备1920的输入的计算机可读指令。除其他可能性外,用户接口可包括web浏览器和/或客户端应用程序。web浏览器使得诸如用户1901的用户能够显示通常嵌入在来自cna计算机设备1710的网页或网站上的媒体和其他信息并与之交互。客户端应用程序允许用户1901与例如cna计算机设备1710交互。例如,指令可由云服务存储,并且指令的执行的输出被发送到媒体输出组件1915。
[0091]
处理器1905执行用于实施本公开的方面的计算机可执行指令。
[0092]
图20图示了根据本公开的一个示例在cna系统1700(如图17所示)中使用的服务器计算机设备2001的示例配置。服务器计算机设备2001可包括但不限于cna计算机设备1710、数据库服务器1715和网络控制器1725(均在图17中示出)。服务器计算机设备2001还包括用于执行指令的处理器2005。指令可存储在存储器区域2010中。处理器2005可包括一个或多个处理单元(例如,在多核配置中)。
[0093]
处理器2005操作地耦合到通信接口2015,使得服务器计算机设备2001能够与远程设备通信,诸如另一服务器计算机设备2001、cna计算机设备1710、另一网络控制器725或通信设备1730(如图17所示)。例如,通信接口2015可经由因特网接收来自网络控制器725的请求,如图17所示。
[0094]
处理器2005还可操作地耦合到存储设备2034。存储设备2034是适于存储和/或检索数据的任何计算机操作硬件,例如但不限于与数据库1720相关联的数据(如图17所示)。在一些示例中,存储设备2034集成在服务器计算机设备2001中。例如,服务器计算机设备2001可包括一个或多个硬盘驱动器作为存储设备2034。在其他示例中,存储设备2034位于服务器计算机设备2001的外部,并且可由多个服务器计算机设备2001访问。例如,存储设备2034可包括存储区域网络(san)、网络附接存储(nas)系统和/或多个存储单元,诸如廉价磁盘冗余阵列(raid)配置中的硬盘和/或固态磁盘。
[0095]
在一些示例中,处理器2005经由存储接口2020操作地耦合到存储设备2034。存储接口2020是能够向处理器2005提供对存储设备2034的访问的任何组件。存储接口2020可包括例如高级技术附件(ata)适配器、串行ata(sata)适配器、小型计算机系统接口(scsi)适配器、raid控制器、san适配器、网络适配器和/或为处理器2005提供对存储设备2034的访问的任何组件。
[0096]
处理器2005执行用于实施本公开的方面的计算机可执行指令。在一些示例中,通过执行计算机可执行指令或以其他方式通过编程将处理器2005转换为专用微处理器。例如,处理器2005使用诸如图18所示的指令进行编程。
[0097]
如本文所用,处理器可包括任何可编程系统,包括使用微控制器的系统;精简指令集电路(risc)、专用集成电路(asic)、逻辑电路以及能够执行本文所述功能的任何其他电路或处理器。上述示例仅为示例,因此无意以任何方式限制术语“处理器”的定义和/或含
义。
[0098]
如本文所用,术语“网络安全威胁”包括未经授权试图获得对主题系统的访问。网络安全威胁,也称为网络攻击或网络威胁,试图利用计算机系统中的漏洞来破坏计算机系统。一些网络安全威胁包括试图破坏或扰乱主题系统。这些网络安全威胁可包括但不限于主动入侵、间谍软件、恶意软件、病毒和蠕虫。网络安全威胁可能通过多种途径(也称为攻击途径)破坏系统。这些路径可能包括操作系统攻击、错误配置攻击、应用程序级攻击和收缩包装代码攻击。网络安全威胁可能由直接访问计算设备的个人或系统、经由通信网络或连接系统或通过相关联的供应链远程引入。
[0099]
如本文所用,术语“数据库”可指数据体、关系数据库管理系统(rdbms)或两者。如本文所用,数据库可包括任何数据集合,包括分层数据库、关系数据库、平面文件数据库、对象关系数据库、面向对象数据库,以及存储在计算机系统中的记录或数据的任何其他结构化集合。上述示例仅为示例,因此无意以任何方式限制术语数据库的定义和/或含义。rdbms的示例包括但不限于数据库、mysql、db2、sql server、和postgresql。然而,可使用能够实现本文所描述的系统和方法的任何数据库。(oracle是加利福尼亚州红木海岸oracle公司的注册商标;ibm是纽约州阿蒙克市国际商业机器公司的注册商标;microsoft是华盛顿州雷德蒙市微软公司的注册商标;而sybase是加利福尼亚州都柏林市sybase的注册商标。)
[0100]
在另一示例中,提供了计算机程序,并且该程序体现在计算机可读介质上。在一个示例中,系统在一台计算机系统上执行,而不需要连接到服务器计算机。在另一个示例中,系统在环境中运行(windows是华盛顿州雷德蒙市微软公司的注册商标)。在另一个示例中,系统在大型机环境和服务器环境中运行(unix是位于英国伯克希尔雷丁的x/open国际联盟有限公司的注册商标)。在另一个示例中,系统在环境中运行(ios是位于加利福尼亚州圣何塞的美国思科系统公司(cisco systems,inc.)的注册商标)。在另一个示例中,该系统在mac环境中运行(mac os是位于加利福尼亚州库珀蒂诺的苹果公司(apple inc.)的注册商标)。在又一个示例中,该系统运行在操作系统上(android是加利福尼亚州山景城谷歌公司的注册商标)。在另一个示例中,系统运行在操作系统上(linux是马萨诸塞州波士顿市linus torvalds的注册商标)。该应用程序非常灵活,可在各种不同的环境中运行,而不会影响任何主要功能。
[0101]
如本文所用,以单数形式叙述并以“一(a)”或“一个(an)”字开头的元件或步骤应理解为不排除复数元件或步骤,除非明确叙述了此类排除。此外,对本公开的“示例”或“一个示例”的引用不旨在被解释为排除也包含所述特征的附加示例的存在。此外,就术语“包括(includes)”、“包括(including)”、“具有(has)”、“含有(contains)”及其变体在本文中的使用而言,这些术语旨在以类似于术语“包含(comprises)”作为开放过渡词的方式包含在内,而不排除任何附加或其他元件。
[0102]
如本文所用,术语“软件”和“固件”是可互换的,并且包括存储在存储器中供处理器执行的任何计算机程序,包括ram存储器、rom存储器、eprom存储器、eeprom存储器和非易失性ram(nvram)存储器。上述存储器类型仅为示例,因此不限制可用于存储计算机程序的存储器类型。
[0103]
此外,如本文所用,术语“实时”是指相关事件的发生时间、预定数据的测量和收集的时间、处理数据的时间以及系统对事件和环境的响应的时间中的至少一个。在本文所描述的示例中,这些活动和事件基本上是瞬时发生的。
[0104]
本文所描述的方法和系统可使用计算机编程或工程技术(包括计算机软件、固件、硬件或任何组合或子集)来实施。如上所公开的,现有系统的至少一个技术问题是需要用于监控通信网络的系统,其中网络可随时间变化。本文所描述的系统和方法解决该技术问题。此外,针对本系统提供的技术问题的至少一种技术解决方案可包括:(i)实时监控消息流量数据;(ii)监控加密消息流量;(iii)改进对其他流量中不频繁或小数据分组数据流的检测;(iv)允许在不需要大量基础设施更新的情况下进行消息流量监控;(v)监控变化网络的信息流量数据;以及(vi)需要更少的分组数据以允许监控消息流量数据。
[0105]
本文所描述的方法和系统可使用计算机编程或工程技术(包括计算机软件、固件、硬件或其任何组合或子集)来实施,其中可通过执行以下步骤中的至少一个来实现技术效果:a)基于通过网络传输的多个数据分组接收到的分组信息,计算多个数据分组的到达间隔时间和分组持续时间,其中分组信息包括与多个数据分组相关联的到达时间、多个数据分组的长度和多个数据分组的比特率,其中计算机系统与分组交换机相关联;b)过滤分组信息以去除噪声;c)基于分组信息、到达间隔时间和分组持续时间生成至少一个直方图;d)基于分组信息、到达间隔时间和分组持续时间生成功率谱密度估计;e)分析至少一个直方图和功率谱密度估计,以检测一个或多个意外数据流;f)报告一个或多个意外数据流;g)基于审查由计算机系统传输的多个数据分组来确定分组信息;h)调整多个数据分组的到达间隔时间,以去除一个或多个间隙;i)基于分组信息计算多个数据分组的到达间隔率;j)计算多个数据分组的中值到达间隔率;k)基于中值到达间隔率调整到达间隔时间,以去除一个或多个间隙;l)对多个数据分组的直方图结果应用检测准则,以过滤分组信息以去除噪声;m)检测至少一个直方图中的一个或多个数据流和功率谱密度估计;n)将一个或多个检测到的数据流与一个或多个预期数据流进行比较;o)基于比较检测一个或多个意外数据流;p)从至少一个直方图中过滤一个或多个预期数据流;o)分析至少一个过滤直方图以检测一个或多个意外数据流;p)接收包括一个或多个预期数据流的安全策略;q)存储安全策略;r)存储多个安全策略,其中多个安全策略中的每个安全策略与网络的配置相关联;以及s)激活与网络的当前配置相关联的安全策略。
[0106]
在一些示例中,可通过执行以下步骤中的至少一个来实现技术效果:a)由处理器接收通过网络传输的多个数据分组的分组信息;b)基于分组信息由处理器计算多个数据分组的到达间隔时间;c)基于分组信息由处理器计算多个数据分组的分组持续时间;d)由处理器过滤分组信息以去除噪声;e)基于分组信息、到达间隔时间和分组持续时间由处理器生成至少一个直方图;f)基于分组信息、到达间隔时间和分组持续时间由处理器生成功率谱密度估计;g)由处理器分析至少一个直方图和功率谱密度估计,以检测一个或多个意外数据流;h)由处理器报告一个或多个意外数据流;i)基于审查由计算机系统传输的多个数据分组来确定分组信息;j)调整多个数据分组的到达间隔时间以去除一个或多个间隙;k)基于分组信息计算多个数据分组的到达间隔率;l)计算多个数据分组的中值到达间隔率;m)基于中值到达间隔率调整到达间隔时间以去除间隙;n)将检测阈值应用于多个数据分组的直方图结果,以过滤分组信息,从而去除噪声;o)检测至少一个直方图和功率谱密度估计
中的一个或多个数据流;p)将一个或多个检测到的数据流与一个或多个预期数据流进行比较;q)从至少一个直方图中过滤一个或多个预期数据流;以及r)分析至少一个过滤直方图以检测一个或多个意外数据流。
[0107]
在一些示例中,可通过执行以下步骤中的至少一个来实现技术效果:a)接收要在系统上执行的安全策略,其中安全策略包括配置数据;b)接收通过网络传输的多个数据分组的分组信息;c)基于分组信息和安全策略计算多个数据分组的到达间隔时间;d)基于分组信息由处理器计算多个数据分组的分组持续时间;e)基于安全策略过滤分组信息以去除噪声;f)基于分组信息、到达间隔时间和分组持续时间生成至少一个直方图;h)基于分组信息、到达间隔时间和分组持续时间生成功率谱密度估计;i)基于安全策略分析至少一个直方图和功率谱密度估计,以检测一个或多个意外数据流;j)报告一个或多个意外数据流;以及k)基于安全策略调整多个数据分组的到达间隔时间以去除一个或多个间隙。
[0108]
本文所论述的计算机实施的方法可包括附加的、较少的或替代的动作,包括本文别处论述的那些动作。这些方法可通过一个或多个本地或远程处理器、收发器、服务器和/或传感器(诸如安装在车辆或移动设备上或与智能基础设施或远程服务器相关联的处理器、收发器、服务器和/或传感器)来实施,和/或通过存储在一个或多个非暂时性计算机可读介质上的计算机可执行指令来实施。此外,本文所论述的计算机系统可包括附加的、较少的或替代的功能,包括本文别处论述的功能。本文所论述的计算机系统可包括或经由存储在一个或多个非暂时性计算机可读介质上的计算机可执行指令来实施。
[0109]
如本文所用,术语“非暂时性计算机可读介质”旨在代表以任何方法或技术实现的任何有形的基于计算机的设备,用于信息的短期和长期存储,诸如计算机可读指令、数据结构、程序模块和子模块,或任何设备中的其他数据。因此,本文所描述的方法可被编码为包含在有形的、非暂时性的计算机可读介质中的可执行指令,包括但不限于存储设备和/或存储器设备。当由处理器执行时,此类指令使处理器执行本文所描述的方法的至少一部分。此外,如本文所用,术语“非暂时性计算机可读介质”包括所有有形的计算机可读介质,包括但不限于非暂时性计算机存储设备,包括但不限于易失性和非易失性介质,以及可移动和不可移动介质,诸如固件、物理和虚拟存储装置、cd-rom、dvd和任何其他数字源,诸如网络或因特网,以及有待开发的数字构件,唯一的例外是暂时性传播信号。
[0110]
此外,本公开包含根据以下条款的实施例:
[0111]
条款1.一种用于检测网络(200)中恶意流量流的系统,其包含计算机系统(1710),该计算机系统包括与至少一个存储器设备(1910)通信的至少一个处理器(1905),其中至少一个处理器(1905)被编程为:
[0112]
基于为通过网络(200)传输的多个数据分组接收的分组信息,计算多个数据分组的到达间隔时间(408)和分组持续时间(420);
[0113]
过滤分组信息以去除噪声;
[0114]
基于分组信息、到达间隔时间(408)和分组持续时间(420)生成至少一个直方图(600);
[0115]
基于分组信息、到达间隔时间(408)和分组持续时间(420)生成功率谱密度估计;
[0116]
分析至少一个直方图(600)和功率谱密度估计,以检测一个或多个意外数据流;以及
[0117]
报告一个或多个意外数据流。
[0118]
条款2.根据条款1所述的系统,其中至少一个处理器(1905)被进一步编程为基于审查由计算机系统(1710)传输的多个数据分组来确定分组信息。
[0119]
条款3.根据条款1或2所述的系统,其中分组信息包括与多个数据分组相关联的到达时间(402)、多个数据分组的长度(404)和多个数据分组的比特率(406)。
[0120]
条款4.根据条款1-3中任一项所述的系统,其中至少一个处理器(1905)被进一步编程为调整多个数据分组的到达间隔时间(408),以去除一个或多个间隙。
[0121]
条款5.根据条款4所述的系统,其中至少一个处理器(1905)被进一步编程为:
[0122]
基于分组信息计算多个数据分组的到达间隔率(412);
[0123]
计算多个数据分组的中值到达间隔率(412);以及
[0124]
调整到达间隔时间(408)以基于中值到达间隔率(412)去除一个或多个间隙。
[0125]
条款6.根据条款1-5中任一项所述的系统,其中至少一个处理器(1905)被进一步编程为将检测准则应用于多个数据分组的直方图结果,以过滤分组信息,从而去除噪声。
[0126]
条款7.根据条款1-6中任一项所述的系统,其中至少一个处理器(1905)被进一步编程为:
[0127]
检测至少一个直方图(600)和功率谱密度估计中的一个或多个数据流;以及
[0128]
将一个或多个检测到的数据流与一个或多个预期数据流进行比较。
[0129]
条款8.根据条款7所述的系统,其中至少一个处理器(1905)被进一步编程为基于比较检测一个或多个意外数据流。
[0130]
条款9.根据条款7所述的系统,其中至少一个处理器(1905)被进一步编程为:
[0131]
从至少一个直方图中过滤一个或多个预期数据流(600);以及
[0132]
分析至少一个过滤直方图(600)以检测一个或多个意外数据流。
[0133]
条款10.根据条款7所述的系统,其中至少一个处理器(1905)被进一步编程为:
[0134]
接收包括一个或多个预期数据流的安全策略;以及
[0135]
存储安全策略。
[0136]
条款11.根据条款10所述的系统,其中至少一个处理器(1905)被进一步编程为存储多个安全策略,其中多个安全策略中的每个安全策略与网络(200)的配置相关联。
[0137]
条款12.根据条款11所述的系统,其中至少一个处理器(1905)被进一步编程为激活与网络(200)的当前配置相关联的安全策略。
[0138]
条款13.根据条款1-12中任一项的系统,其中计算机系统(1710)与分组交换机相关联。
[0139]
条款14.一种用于检测网络(200)中恶意流量流的方法,该方法由计算机系统(1710)实施,该计算机系统(1710)包括与至少一个存储器设备(1910)通信的至少一个处理器(1905),其中该方法包括:
[0140]
由处理器(1905)接收通过网络(200)传输的多个数据分组的分组信息;
[0141]
由处理器(1905)基于分组信息计算多个数据分组的到达间隔时间(408);
[0142]
由处理器(1905)基于分组信息计算多个数据分组的分组持续时间(420);
[0143]
由处理器(1905)过滤分组信息以去除噪声;
[0144]
由处理器(1905)基于分组信息、到达间隔时间(408)和分组持续时间(420)生成至
少一个直方图(600);
[0145]
由处理器(1905)基于分组信息、到达间隔时间(408)和分组持续时间(420)生成功率谱密度估计;
[0146]
由处理器(1905)分析至少一个直方图(600)和功率谱密度估计,以检测一个或多个意外数据流;以及
[0147]
由处理器(1905)报告一个或多个意外数据流。
[0148]
条款15.根据条款14所述的方法,其还包含调整多个数据分组的到达间隔时间(408),以去除一个或多个间隙。
[0149]
条款16.根据条款14或15所述的方法,其还包含:
[0150]
基于分组信息计算多个数据分组的到达间隔率(412);
[0151]
计算多个数据分组的中值到达间隔率(412);以及
[0152]
基于中值到达间隔率(412)调整到达间隔时间(408)以去除间隙。
[0153]
条款17.根据条款15或16所述的方法,其还包含:
[0154]
检测至少一个直方图(600)和功率谱密度估计中的一个或多个数据流;以及
[0155]
将一个或多个检测到的数据流与一个或多个预期数据流进行比较。
[0156]
条款18.根据条款17所述的方法,其还包含:
[0157]
从至少一个直方图中过滤一个或多个预期数据流(600);以及
[0158]
分析至少一个过滤直方图(600)以检测一个或多个意外数据流。
[0159]
条款19.一种用于检测网络(200)中恶意流量流的系统,其包含计算机系统(1710),该计算机系统包括与至少一个存储器设备(1910)通信的至少一个处理器(1905),其中至少一个处理器(1905)被编程为:
[0160]
接收要在系统上执行的安全策略,其中安全策略包括配置数据;
[0161]
接收通过网络(200)传输的多个数据分组的分组信息;
[0162]
基于分组信息和安全策略计算多个数据分组的到达间隔时间(408);
[0163]
由处理器(1905)基于分组信息计算多个数据分组的分组持续时间(420);
[0164]
基于安全策略过滤分组信息以去除噪声;
[0165]
基于分组信息、到达间隔时间(408)和分组持续时间(420)生成至少一个直方图(600);
[0166]
基于分组信息、到达间隔时间(408)和分组持续时间(420)生成功率谱密度估计;
[0167]
基于安全策略分析至少一个直方图(600)和功率谱密度估计,以检测一个或多个意外数据流;以及
[0168]
报告一个或多个意外数据流。
[0169]
条款20.根据条款19所述的系统,其中至少一个处理器(1905)被进一步编程为基于安全策略调整多个数据分组的到达间隔时间(408),以消除一个或多个间隙。
[0170]
本书面描述使用示例来公开各种实施方式,包括最佳模式,并且还使本领域技术人员能够实践各种实施方式,包括制造和使用任何设备或系统以及执行任何合并的方法。本公开的可给予专利权的范围由权利要求限定,并且可包括本领域技术人员想到的其他示例。如果此类其他示例具有与权利要求的字面语言没有不同的结构元件,或者如果此类其他示例包括与权利要求的字面语言没有实质差异的等同结构元件,则此类其他示例意图在
权利要求的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1