专利名称::网络异常流量分析设备和方法
技术领域:
:本发明涉及网络安全领域,尤其涉及对网络中的异常流量进行分析的i殳备和方法。
背景技术:
:随着网络的普及,网络入侵和黑客攻击事件也日益增加。为此,入侵检测系统(IDS)和入侵防护系统(IPS)应运而生。这些系统工作的主要原理是根据收到的数据包还原出网络中的数据流,然后一般按照特征匹配方法检查所还原出的数据流中是否存在攻击的特征。同时它也会采用一些统计的方法用于检测端口扫描等攻击方式。由于IDS/IPS根据预定规则和检测模式对还原的数据流进行分析,因此,IDS/IPS具有检测结果准确的优点。但是,传统的IDS/IPS具有固有的一些缺点。首先,由于IDS/IPS需要从所收到的数据包中还原出数据流(即,所谓的开包检测),因此这些系统的性能往往受到开包检测处理的限制,当IDS/IPS运行于大网络流量的环境中时,这个性能限制显得愈发明显。其次,由于IDS/IPS中的预定规则和检测模式需要进行更新以便能够检测出当前网络中新出现的各种入侵模式和手段变化,而当前随着社交网站(SNS)和P2P网络等各种新网络的日益普及,新的入侵模式和手段的出现日益快速,而传统的IDS/IPS存在更新较慢的缺点。传统IDS/IPS还有一个固有缺点在于,由于需要对数据包进行开包检测,因此,传统IDS/IPS无法对内容加密的数据包进行检测,也就无法对包含加密内容的数据流进行分析。由于新一代IP传输协议IPV6—般会对数据进行加密,现有的IDS/IPS就很难用于基于IPV6的网络。因此,所期望的是一种在IDS/IPS中使用的、并且能够克服传统IDS/IPS的上述缺点的异常流量分析设备和方法。而且该异常流量分析设备和方法可以很好地应用于基于IPV6的网络。
发明内容6为此,本发明的目的就是提供一种用于克服上述问题的网络异常流量分析设备和方法。根据本发明的一个方面,提供了一种异常流量分析方法,包括步骤采集IP网络数据;根据所采集的IP网络数据来计算受监控服务器的指标值集合,其中所述指标值集合中的每个指标值都反映与所述受监控服务器相关的数据流,并且可以根据IP数据包头来计算所述每个指标值;对所计算的指标值集合进行初次检测以生成向量,所述向量与所述指标值集合相对应,其中的每个向量元素指示相应指标值的异常程度;以及对所述向量进行二次检测以确定是否存在与所述受监控服务器相关的异常流量以及异常类型。根据本发明的另一个方面,提供了一种异常流量分析设备,包括数据采集模块,用于采集IP网络数据;主机指标计算模块,用于根据所采集的IP网络数据来计算受监控服务器的指标值集合,其中所述指标值集合中的每个指标值都反映与所述受监控服务器相关的数据流,并且可以根据IP数据包头来计算所述每个指标值;初次检测模块,用于对所计算的指标值集合进行初次检测以生成向量,所述向量与所述指标值集合相对应,其中的每个向量元素指示相应指标值的异常程度;以及二次检测模块,用于对所述向量进行二次检测以确定是否存在与所述受监控服务器相关的异常流量以及异常类型。本发明还提供了分别利用上述异常流量分析方法和设备的网络流量监测方法和系统。根据本发明的网络异常流量分析设备和方法能够在不需要开包检测的前提下,通过在传输层对网络中每个数据包进行简单的包头分析和检测,就能判定出在给定主机范围内的被攻击主机、精确的攻击类型和精确的攻击来源。因此,根据本发明的网络异常流量分析设备和方法具有检测效率高的优点。通常,一台含有频率为2GHZ的双核处理器的网络异常流量分析设备能够同时分析和检测10万至100万台机器。因此,根据本发明的网络异常流量分析设备通过在骨干网、IDC、企业出口处等网络流量巨大的地方部署而被广泛使用。此外,由于根据本发明的网络异常流量分析设备和方法不需要开包就能进行异常检测,该设备和方法对于加密的数据包同样是有效的,因此,该设备和方法也适用于国家安全部门和军队等通常使用加密数7据进行传输的异常流量检测,而且该设备和方法能够在基于IPV6的网络被广泛使用。通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中图1示出了根据本发明的网络异常流量分析设备的典型应用环境;图2示出了根据本发明实施例的网络异常流量分析和检测方法;图3示出了在根据本发明实施例的网络异常流量分析和检测方法中应用布隆过滤器算法的具体流程;图4中示出了在根据本发明实施例的网络异常流量分析和检测方法中、用于初次检测的基于时间窗的检测方法的具体流程;图5示出了在根据本发明实施例的网络异常流量分析和检测方法中的二次检测步骤所采用的神经网络的示意结构;图6示出了用于对图5所示的神经网络500进行训练的训练方法的示意流程图;以及图7示出了根据本发明实施例的网络异常流量分析和检测设备700的结构框图。具体实施例图l示出了根据本发明的网络异常流量分析设备110的一个典型应用环境。如图1所示,网络服务器132,134和136等通过路由设备120和互联网140相连,因此网络服务器132-136往返于外部网络的数据都需要经过路由设备120。网络异常流量分析设备110与路由设备120相连,获取经由路由设备120访问网络服务器132-136的数据流,从而可以对与网络服务器132-136相关的网络异常流量进行分析。当然,网络异常流量分析设备IIO可以不以单独设备的形式存在,相反,它可以并入到路由设备120中作为路由设备120的一个部件。图2示出了在如图1所示的网络异常流量分析设备110中使用的网络异常流量分析和检测方法200。网络异常流量分析和检测方法200开始于步骤S202。在步骤S202中,首先采集各种格式的网络数据,如图l中,网络异常流量分析设备110依赖于路由设备120来获取各种网络数据,而路由设备120可能采用不同的手段来采集流经它的网络数据,因此所获取的数据格式也是多种多样的。例如,所获取的数据可以有原始数据格式(rawdataformat)、netflow数据格式、sflow数据格式等。在本方法中,为了对所采集的不同格式的数据进行统一处理,步骤S202还包括将不同格式的数据转换为本方法后续步骤中采用的统一数据格式的数据的步骤。根据本发明的一个实施例,本方法中使用的数据格式可以如下列表1所示表格l:统一数据格式<table>tableseeoriginaldocumentpage9</column></row><table>根据表格1所示的格式可以看出,本发明所需要的数据字段均可以根据IP包头中的字段获取,而无需IP包的有效负载的内容。因此,本发明不需要进行开包检测。此外,如果路由设备120所获取的数据本身就具有如表格1所述的格式,则在步骤S202中无需进行任何格式9转换。在步骤S204,基于在步骤S202所获取的数据流来为每台受监测的服务器计算指标值。一般而言,所建立的指标必须非常相关地反映与该服务器相关的IP数据流情况。通常,指标的选取应当首先符合两个要求,即指标值与流量大小无直接关系且与时间尺度也无直接关系,这样,所建立的指标可以适用于各种流量和时间尺度。因此,指标优选采用比例关系。根据本发明的一个实施例,所选取的指标包括XlTcp流量比总流量x2.Udp流量比,荒量总流量x3.Icmp;i;充量t匕总流量目标IP的数目x4.目标IP数目比流的数目源IP的数目x5.源IP数目比涵翻目标端口的数目x6.目标端口数目比麵数目源端口的数目x7,源端口数目比涵翻对各个指标值的计算通常以一定的时间间隔进行(由下述步骤S214控制),该时间间隔一般为几秒到几十秒钟,这和网络异常流量分析设备110所处的具体环境有关。该时间间隔一般选为20秒。因此,在步骤S204中,每隔20秒钟就计算一次上述指标值,以获得一个指标值集合(Xi,i,X2,i,X3,i,…,X7,i}。由于对数据流的采集是个连续的过程。而且,计算各个指标所需要的值,如Tcp流量,Udp流量和流的数目等都需要通过连续的采集和统计来获得。因此,步骤S204的具体处理如下首先,将连续地基于在步骤S202中所采集的数据流来计算对于计算各个指标值所必须的基础数据,如在选定时间间隔内的总流量、Tcp流量、Udp流量、Icmp流量、流数目、源IP和端口的数目、以及目标IP和端口的数目等。然后,在经过由步骤S214所控制的预定时间间隔之后,计算各个指标值,以获得与某个时间i相关的指标值集合^,i,XM,XM,…,X4,i)。在步骤S204中,需要注意的是,对源或者目标IP和端口的数目的统计是非常消耗内存的一种算法。例如,在IPV4网络中,IP地址用32位表示,端口号用16位表示,因此理论上,IP地址有2"-1个,且端口号有216-l个。在对IP和端口的数目进行统计时,就需要判断IP地址和端口是否存在重复,由于IP地址和端口数据较多,因此该判断将耗费相当多的内存,这对于数据流量较大的网络来说,是无法接受的。因此,申请人在步骤S204中,还采用了由Bloom,BurtonH.在1970年的文章"Space/timetrade-offsinhashcodingwithallowableerrors",CommunicationsoftheACM13(7):422-426中所提出的布隆过滤器(bloomfilter)算法来快速并且节省内存地对源或者目标IP和端口的数目进行统计。图3示出了在本发明的步骤S204中应用布隆过滤器算法的具体流程300。首先,在步骤S302,在开始一个新的时间间隔时,建立一个1024位的位数组,并且将其中所有的位都置位为0。然后,在步骤S304,对一个提取的源IP地址进行哈希计算以获得一个在0到1023之间的数字。在步骤S306,将索引为在步骤S304所计算得到的数字的位数组中的位值赋值为1。例如,如果在步骤S304所计算得到的哈希值为450,则把位数组中的第450个位的值设置为1。在步骤S308,判断时间间隔是否已经届满,如果还没有,则通过步骤S310提取新的源IP地址并返回到步骤S304进行处理。如果在步骤S308判断出时间间隔已经到期了,则在步骤S312,对位数组中被置为1的位的数目进行统计,以获得一个与源IP地址相关的统计数值BFNum。可以看出,无论在时间间隔内检测到的源IP地址数目有多少,统计数值BFNumb的值均在0到1024之间。ii应当注意的是,在图3所示的布隆过滤器算法同样适用于对目标IP地址以及源和目标端口号的数目的统计。此外,在处理流程300中所使用的位数组的长度也可以进行调整,即可以不必是1024。例如,可以根据时间间隔的大小、进行异常流量分析和检测的网络环境的数据流量等修改位数组的长度。例如,如果在时间间隔中获取的数据流数量相对较多,则步骤S304中进行的哈希计算所获得的结果发生碰撞的可能性就相对较大,因此可以考虑适当增大位数组的长度来减少碰撞发生的几率。返回图2,在步骤S204,对于源IP数目、目标IP数目、源端口数目和目标端口数目中的每一个,在分别计算出相应的BFNum之后,利用下列公式流的数目来计算上面的指标值X4X5jX6和x7,根据申请人对现有异常流量的分析,根据上式计算得到的指标值X4,X5,X6和X7在判断是否存在异常和是否存在p2p方面具有非常良好的表现。可以看出,在上面选择的指标Xi,x2,…,X7中,都可以仅仅通过根据IP包头中包括的数据来计算得到而无需对IP包进行进一步的解包处理。因此,步骤S204中对指标的选择说明了本发明可以应用于内容加密的网络环境。在步骤S204计算得到一组指标值集合(XM,x2,i,x3,i,…,X7,i)之后,在步骤S206,采用各种常见的检测方法来对该指标值集合(x^,x2,ixM,…,X7,i;j进行初次检测。这些常见的检测方法例如为固定阈值和历史基线检测方法,即将指标值集合中的每个指标值与相应的固定阈值或者历史平均值进行比较来确定这些指标值是否异常。通过初次检测,可以判定出哪些指标出现异常。然后,通过对这些指标进行标准化来创建新的指标向量(yl,y2,…,y7K例如对于正常的指标值,就把yj(j=l-7)的值置为0,对于异常的指标值,就将yj置为0到1之间的某个值,其中yj值离l越近则说明这个指标的异常越大。这样就在某个时间i为每台服务器形成一个向量(yl,y2,...,y7},且向量中的每个元素都在之间。当然在步骤S206不进行标准化而采用其他标准指标也是可行的。根据本发明的一个实施例,在初次检测步骤S206中,优选采用基于12时间窗的检测方法。图4中示出了在步骤S206中采用的基于时间窗的检测方法的具体流程。首先在步骤S402,连续获取N组在步骤S204计算得到的指标值集合(xw,x2,i,x3,i,…,x丄i=l,...,N。即此时,时间窗长度为时间间隔xN,通常将N的值选择为IO。然后在步骤S404,以指标为基准对N组指标值集合进行重新分组,以获得每组包括N个元素的7组指标組,如Tcp流量比指标组{xw,Xi,2,....,x,,n),Udp5危量比冲旨才示纟且(X2j,x2,2,,x2,N},,源端口数目比指标组{xu,x7,2,....,x7,N},并且计算各个新指标组的置信区间。所谓置信区间,即对于某个指标,N个值中的最大值和最小值所覆盖的区间。在步骤S406,获取新的指标值集合(Xi,new,x2,new,x3,new,"x7,,}。然后对于新获取的每个指标值Xj,nsw,j-l-7,在步骤S408判断该指标值Xj,腳是否落入在步骤S404建立的相应指标组(Xj,!,Xj,2,….,Xj,n)的置信区间中。如果该指标值Xj,,落入置信区间中,则在步骤S410把对应的向量元素yj设置为0,并且在步骤S412用该指标值Xj,目来替换指标组(Xu,Xj,2,....,Xj,J中最旧的指标值,并且重新计算置信区间中。相反,如果指标值Xj,^在置信区间之外,则在步骤S414把yj的值设置为其中rangeVal是指标组"w,Xj,2,....,xLN}的置信区间的上界值。通过为在步骤S406获取新的指标值集合(Xl,,x2,new,x3,new,.."x7,neJ中的每个重复步骤S408到S414的处理,就得到了一个7维的向量{yl,y2,....y7}。同样yje,而且yj越接近1说明这个指标异常的可能性越大。对于随后进一步获取的指标值集合,可以直接利用上面已经建立好的时间窗口来进行计算以获得用于每台服务器的向量(yl,y2,...,y7}。返回图2,在步骤S206获得在某个时间点i,用于每台服务器的向量(yl,y2,...,y7)之后,在步骤S208中对该向量进行二次检测处理,以确定向量(yl,y2,…,y7)是否指示异常,以及在存在异常时,该异常的类型。步骤S208通常采用分类器方法来确定异常。图5示出了在图2的二次检测步骤S208中采用的、用于判断向量13(yl,y2,…,y7)是否指示异常以及异常类型的神经网络500的示意结构。如图5所示,在本发明中,神经网络优选采用BP(反向传播)结构。由于在步骤S206生成的向量具有7个元素,因此所定义的神经网络为输入层节点为7个、输出层节点为n个的三层神经网络。其中yi表示输入层节点,ei表示隐藏层节点,di表示输出层节点。n的数目根据要判断的目标数目来确定,当要判断的目标例如为tcpflood(tcp洪水)、udpflood(udp洪7jc)、icmpflood(icmp洪水)、worm(蠕虫)、P2P、portscan(端口扫描)和ipscan(IP扫描)等7个目才示时,n的值也选择为7。隐藏层节点的数目取决于系统所要达到的精确度和学习样本的数量。在BP神经网络中,输入层节点、隐藏层节点和输出层节点相互之间都存在传递关系,为了能够使得神经网络在训练过程中快速收敛,需要进行适当的隐藏层节点数量选择,这可以根据现有的BP神经网络知识获得。在本发明的优选实施例中,选择了7个隐藏层节点。此外,在图5所示的神经网络500中,输入层和隐藏层之间的传递函数采用S型激发函数的形式,而隐藏层和输出层之间的传递函数采用符号型函数的形式。因此输出层节点di的输出只有0和1两种可能值,其中O表示不存在这种异常类型,而l表示存在这种异常类型。因此,如果对神经网络500进行了充分的训练,则对于步骤S206所生成的向量(yl,y2,...,y7},步骤S208可以精确地获得其中存在的流量异常及异常类型。如上所述,在使用神经网络500之前,首先需要对神经网络500进行训练。图6示出了用于对神经网络500进行训练的训练方法600。在图6的步骤S602中,获取训练流量数据,其中该流量数据应当满足下列要求首先,该流量数据应该与某台服务器相关联;其次,应该事先知晓此时是否存在与该台服务器相关的异常流量以及浏览类型,即应该事先获得图5所示的神经网络500的各个输出节点di的输出值即(dl,d2,...,d7}。根据本发明的一个实施例,在训练时,优选为训练数据必须存在上述7种异常类型中的至少一种类型的流量,即di的输出中至少有一个为1。在步骤S604-606中,类似于图2中的步骤S204-206,生成对应于该原始流量的向量(yl,y2,...,y7}。随14后,在步骤S608中,根据向量(yl,y2,...,y7}(即输入层节点的值)和已知的输出层节点di的值,利用已知的神经网络训练方法对神经网络500进行训练。然后返回到步骤S602接着去获取新的训练数据来再次进行训练,直到在步骤S610认为训练过程已经足够充分,而且各个传递函数的系数已经收敛为止。由于神经网络训练方法是本领域已知的4支术,因此在此不再赘述。返回图2,虽然上面结合图5和6描述了在步骤S208的二次检测中采用神经网络的方式,但是步骤S208也可以采用专家系统的方式,由专家直接给出异常指标和异常种类间的概率关系,并建立贝叶斯网络来进行异常的判断和分类。在步骤S208通过二次检测获得流量是否异常和异常类型的判断结果之后,在步骤S210输出该结果,并且在检测到异常类型时启动告警功能,如通过短信,电子邮件等方式通知系统管理员。在由步骤S204到S210对一台受监控服务器进行了异常流量分析和检测之后,在步骤S212判断是否还存在其它要进行分析和检测的服务器,如果还存在,则返回到步骤S204开始对新一台服务器的处理。根据申请人的实际测试,如果根据本发明网络异常流量分析方法在含有频率为2GHZ的双核处理器的计算设备上运行,其能够同时分析和检测IO万至IOO万台机器,因此,本发明通常可以适用于对大量的服务器进行检测和分析。如上所述,本发明通常以一定时间间隔定期处理,所以在完成对所有受监控服务器的分析和检测之后,在步骤S214等待新的时间间隔到来以重复上述步骤S204到S212的处理。但是应当注意的是,在等待期间,步骤S202中对数据流的采集和步骤S204中对需要连续处理数据的处理并不停止。根据上面对根据本发明的网络异常流量分析和检测方法的描述可以看出,同现有的方法比较,根据本发明的方法最明显的不同就是增加了二次检测处理。通过二次检测处理,异常检测的准确度和能进行异常检测的种类会得到大幅度的提升。尤其是在检测P2P,VOIP等传统方式难以处理的地方,这种方法会更为有效。此外,由于图6所示的神经网络训练是在其他系统上完成,而图2所示的实时判断是在训练完成后的神经网络上运行的,因此实时性不会受任何影响。进一步,由于本方法的二次检测步骤所需要的输入值,即向量(yl,y2,...,y7)是通过初次检测生成的,因此二次检测步骤中所采用的分类器模型与先前获取数据时的时间间隔没有任何关系。因此不论如何调整时间间隔,二次检测步骤中的神经网络均不需要作任何重新训练。图7示出了根据本发明实施例的网络异常流量分析和检测设备700的结构框图。如图7所示,网络异常流量分析和检测设备700包括数据采集模块720,主机指标计算模块740,初次检测模块760,二次检测模块780和告警模块790。数据采集模块720采集各种网络数据。由于网络异常流量分析和检测设备700可能采集到的网络数据具有多种不同的格式,因此,数据采集模块720还包括数据格式转换模块722,用于将不同格式的数据转换为其他模块中使用的统一数据格式(如表格l所示)的数据。主机指标计算模块74Q接收来自数据采集模块720的统一数据格式的数据,并基于此为每台受监测的服务器计算指标值。主机指标计算才莫块740的处理类似于上面步骤S204中所描述的处理。初次检测模块760接收由主机指标计算模块740计算得到的指标值,并且基于此计算用于每台服务器的向量(yl,y2,...,y7}。初次检测模块760的处理类似于上面步骤S206中所描述的处理。二次检测模块780根据初次检测模块760计算得到的向量(yl,y2,...,y7},基于分类器方法来确定是否存在异常以及异常的类型。二次检测模块780的处理类似于上面步骤S208中的处理。告警模块790对二次检测模块780的输出结果进行处理,其通常显示该输出结果,并且在输出结果指示存在异常时,通过各种方式、如短信或者电子邮件将该异常和异常类型通知给系统管理员。应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词"包含"不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词"一"或"一个"不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件16以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。权利要求1.一种网络异常流量分析方法,包括步骤采集IP网络数据;根据所采集的IP网络数据来计算受监控服务器的指标值集合,其中所述指标值集合中的每个指标值都反映与所述受监控服务器相关的数据流,并且可以根据IP数据包头来计算所述每个指标值;对所计算的指标值集合进行初次检测以生成向量,所述向量与所述指标值集合相对应,其中的每个向量元素指示相应指标值的异常程度;以及对所述向量进行二次检测以确定是否存在与所述受监控服务器相关的异常流量以及异常类型。2.如权利要求1所述的网络异常流量分析方法,其中所述采集IP网络数据的步骤包括对所采集的IP网络数据进行格式转换,以获取具有统一数据格式的数据。3.如权利要求2所述的网络异常流量分析方法,其中所述统一数据格式至少包括下列字段流开始时间,采样比率,数据流类型,源IP地址,目的IP地址,源端口号,目的端口号,流所包含的包数和流所包含的字节数。4.如权利要求1所述的网络异常流量分析方法,其中所述指标至少包括Tcp流量比,Udp流量比,Icmp流量比,目标IP数目比,源IP数目比,目标端口数目比,源端口数目比。5.如权利要求1所述的网络异常流量分析方法,其中所述计算受监控服务器的指标值集合的步骤包括以一定的时间间隔定时计算所述指标值集合。6.如权利要求4所述的网络异常流量分析方法,其中对于所述目标IP数目比,源IP数目比,目标端口数目比和源端口数目比中的一个或者多个,使用公式<formula>formulaseeoriginaldocumentpage2</formula>来进行计算,其中BFNum是利用布隆过滤器算法对相应的目标IP数目,源IP数目,目标端口数目和源端口数目进行统计而获得的统计数值。7.如权利要求6所述的网络异常流量分析方法,其中在所述布隆过滤器算法中使用的位数组的长度为1024。8.如权利要求1所述的网络异常流量分析方法,其中所述初次检测的步骤包括将所述指标值集合中的每个指标值与相应的固定阔值或者历史平均值进行比较来确定这些指标值是否异常。9.如权利要求8所述的网络异常流量分析方法,其中所述初次检测的步骤还包括通过对所述指标值集合中的每个指标值进行标准化来创建所述向量,其中对于正常的指标值,就将对应的向量元素的值置为0,而对于异常的指标值,就将对应的向量元素置为0到l之间的某个值,其中所述值离1越近则说明所述指标的异常越大。10.如权利要求1所述的网络异常流量分析方法,其中所述初次检测的步骤包括连续获取N组所述指标值集合,其中N为正整数,表示时间窗长度的指示;以指标为基准对N组指标值集合进行重新分组,以获得每组包括N个元素的M组指标组,其中M是所选择的指标的数目;计算M组指标组中每个组的置信区间;获取新的指标值集合;对于所述新的指标值集合中的每个指标如果该指标的值落入所述M组指标组中的相应组的置信区间中,则把所述向量中的对应向量元素的值设置为0,用该指标的所述值来替换所述相应组中最旧的指标值,并且重新计算所述相应组的置信区间;如果该指标的值落入所述M组指标组中的相应组的置信区间之外,则将所述向量中的对应向量元素的值设置为其中Xj,^为该指标的所述值,且rangeVal是所述M组指标组中的相应组的置信区间的上界值。11.如权利要求1所述的网络异常流量分析方法,其中所述二次检测的步骤包括利用BP神经网络来判断所述向量是否指示异常以及异常类型。12.如权利要求11所述的网络异常流量分析方法,其中所述神经网络包括三层结构,其中输入层节点的数目与所述向量相对应,并接收对应的向量元素的值,输出层节点的数目与要判断的目标数目相对应,输出层节点的输出只有0和1两种可能值,且输入层和隐藏层之间的传递函数采用S型激发函数的形式,以及隐藏层和输出层之间的传递函数采用符号型函数的形式。13.如权利要求12所述的网络异常流量分析方法,其中所述要判断的目标数目至少包括下列中的一种或者几种tcp洪水,udp洪水,icmp洪水,蠕虫,P2P,端口扫描和IP扫描。14.如权利要求11所述的网络异常流量分析方法,其中在对所述神经网络进行训练时,训练流量数据应该与某台服务器相关联,并且事先知晓此时是否存在与该台服务器相关的异常流量以及浏览类型。15.如权利要求1所述的网络异常流量分析方法,还包括告警步骤,在检测到异常类型时来发出告警。16.如权利要求1所述的网络异常流量分析方法,还包括以一定时间间隔为多台受监控服务器重复所述计算受监控服务器的指标值集合、初次检测和二次检测的处理。17.—种网络异常流量分析设备,包括数据采集模块,用于采集IP网络数据;主机指标计算模块,用于根据所采集的IP网络数据来计算受监控服务器的指标值集合,其中所述指标值集合中的每个指标值都反映与所述受监控服务器相关的数据流,并且可以根据IP数据包头来计算所述每个指标值;初次检测模块,用于对所计算的指标值集合进行初次检测以生成向量,所述向量与所述指标值集合相对应,其中的每个向量元素指示相应指标值的异常程度;以及二次检测模块,用于对所述向量进行二次检测以确定是否存在与所述受监控服务器相关的异常流量以及异常类型。18.如权利要求17所述的网络异常流量分析设备,其中所述数据采集模块还包括数据格式转换模块,用于对所采集的IP网络数据进行格式转换,以获取具有统一数据格式的数据。19.如权利要求17所述的网络异常流量分析设备,还包括告警模块,用于在检测到异常类型时来发出告警。20.—种网络流量监测系统,包括多台服务器,往返于外部网络接收和发送网络数据;以及如权利要求17-19中任一个所述的网络异常流量分析设备,用于对上述网络数据是否存在流量异常及异常的类型进行分析和检测。21.—种网络流量监测方法,包括步骤在多台服务器和外部网络之间接收和发送网络数据;以及采用如权利要求1-16中的任一个所述的方法来对上述网络数据是否存在流量异常及异常的类型进行分析和检测。全文摘要本发明公开了一种网络异常流量分析方法,其通过根据采集的IP网络数据来计算受监控服务器的指标值集合;对所计算的指标值集合进行初次检测以生成与所述指标值集合相对应的向量;以及对所述向量进行二次检测以确定是否存在与所述受监控服务器相关的异常流量以及异常类型。本发明还涉及与此相关的网络异常流量分析设备,以及采用这些网络异常流量分析方法和设备的网络流量监测系统和方法。文档编号H04L12/26GK101686235SQ20081022305公开日2010年3月31日申请日期2008年9月26日优先权日2008年9月26日发明者丁思捷,陈景妹申请人:中联绿盟信息技术(北京)有限公司