以大数据流式技术实现网络数据包的分析方法及系统的制作方法

文档序号:9618584阅读:331来源:国知局
以大数据流式技术实现网络数据包的分析方法及系统的制作方法
【技术领域】
[0001]本发明涉及大数据流式技术领域,具体涉及以大数据流式技术实现网络数据包的分析方法及系统,特别是利用大数据计算框架Spark的流式技术用于实时计算,来构建基于集群分布式的、低延迟的网络数据包分析系统。
【背景技术】
[0002]随着大数据的发展,人们对大数据的处理要求也越来越高,原有的批处理框架MapReduce适合离线计算,却无法满足实时性要求较高的业务,如实时推荐、用户行为分析等。Spark Streaming是建立在Spark上的实时计算框架,通过它提供的丰富的AP1、基于内存的高速执行引擎,用户可以结合流式、批处理和交互试查询应用。其中,Spark是UCBerkeley AMP lab所开源的类Hadoop MapReduce的通用并行框架。
[0003]现市场上的网络流量分析系统大多数是实时监测用户网络七层结构中各层的流量分布,进行协议、流量的综合分析。随着网络应用越来越广泛、网络规模日渐增大,网络中承载的业务也越来越丰富,所以网络流量分析的处理量是非常巨大的,传统的技术不能满足于此类超大数据处理,而且系统的架构也决定了容量扩展的能力也是一种瓶颈。
[0004]经对现有技术进行检索,发现如下相关检索结果。
[0005]相关检索结果1:
[0006]申请号:200810171806.1
[0007]名称:基于应用层业务分析的网络流量分析方法
[0008]该专利文献公开了一种应用于网络流量分析的方法,是将互联网业务进行会话跟踪分析,提取每一个会话的流量、业务服务质量(QoS)、会话状态信息等,这些信息形成业务会话统计信息数据库。该专利文献基于统计学理论,解决了当前网络应用业务飞速发展更新频繁情况下,通过对应用层业务数据的完整分析,避免了传统基于Ci sco Netflow技术只能分析TCP/IP的第四层协议以下信息的弊端,避免NetFlow基于抽样统计的数据采样技术的信息失真,在网络流量分析、业务服务质量测量、异常流量识别方面,具有非常重要的意义。本发明基于应用层业务检测技术和流量统计测试技术,统计结果准确,便于复杂网络环境下的网络维护、安全定位、业务质量控制等。
[0009]技术要点比较:
[0010]该专利文献只探测网络应用层面的流量、异常流量、业务服务质量之类的指标,对于具体业务方面的监控几乎没有涉及,所以只是普通网络应用层面通用指标监控,对于需要重点监控的具体业务端口的监控能力就显得不足,具体业务的异常指标无法全面展现。异常告警方面也比较简单,没有重点提示和完整展现。
[0011]本发明提供了业务端口层面的网络监控,不但有网络流量的监控,还有监控具体业务网络端口上的指标如0窗口、TCP重传、应用延时、客户端延时、网络延时。而且在告警方面提供多维度的告警视图,能及时的全面了解网络和业务异常情况,帮助定位和解决异常提供及时、可靠、准确的参考依据。
[0012]相关检索结果2:
[0013]申请号:201310749557.0
[0014]名称:一种基于分布式的网络流量分析系统及方法
[0015]该专利文献公开了一种基于分布式的网络流量分析系统及方法。该专利文献运用分布式技术,构建了可用于大规模网络流量数据分析的网络流量分析系统。所述系统包括:Web服务器、流量分析系统集群和文件服务器。所述系统首先通过流量采集模块采集网络中流量信息,然后提取出所述原始流量信息中的网络层、传输层和应用层信息,再通过对所述网络层、传输层和应用层信息进行分析处理,主要对总流量情况、IP到IP流量数据、IP层网络数据信息以及应用层协议信息进行分析,为企事业用户提供方便、快捷和安全的网络在线服务。
[0016]技术要点比较:
[0017]该专利文献虽然采用了分布式的架构,但还是存在单点故障、系统扩展方面的不足。对于网络流量数据的统计和展现方面也有明显不足,过于单一,无具体网络指标如重传、延时的分析。
[0018]本发明采用集群架构,对于系统的扩展性、健壮性有着明显优势。网络发展非常快速,流量增长也是几何级别增长,所以采用与大数据结合的集群架构可以很好解决系统容量的无限扩展。分析指标更具针对性,如0窗口、TCP重传、延时等。
[0019]综上所述,现有技术显然存在着不足之处,但随着大数据技术的出现,并且不断的成熟,可以考虑结合它的优点应用于系统中,从而能够很好的改进系统。

【发明内容】

[0020]针对现有技术中的缺陷,本发明的目的是提供一种以大数据流式技术实现网络数据包的分析方法及系统。
[0021]根据本发明提供的一种以大数据流式技术实现网络数据包的分析方法,包括重传指标分析步骤和/或延时指标分析步骤;
[0022]所述重传指标分析步骤,包括如下步骤:
[0023]步骤A:得到各个TCP报文的特征字符串,具体为:
[0024]将TCP报文头信息中的报文序号seq、确认号ack、源IP、目的IP以字符串形式组成特征字符串,其中,源IP表示TCP/IP协议中发送方IP,目的IP表示TCP/IP协议中接收方IP ;
[0025]步骤B:统计相同的特征字符串的数量,将所述相同的特征字符串的数量作为TCP重传报文数量;
[0026]所述延时指标分析步骤,包括如下步骤:
[0027]步骤1:将数据流按时间T为时间间隔进行分片;
[0028]步骤2:通过Spark Streaming实时计算框架的滑动窗口操作将分片得到的连续数据作为一次计算处理的数据转换成时间T的DStream数据集;
[0029]步骤3:将时间T的DStream数据集进行map转换得到报文集合map,然后将报文集合map进行一次groupByKey操作,产生key值唯一的报文集合map ;其中,key表示报文集合map中的键;
[0030]步骤4:将从key值唯一的报文集合map中提取出的报文数量大于2的报文集合map,组成一个新报文集合map ;
[0031]步骤5:对所述新报文集合map进行遍历,计算出所述新报文集合map中的值之间的时间间隔,即:
[0032]Ta= T2-T!,
[0033]Tb=T3_T2,
[0034]Tc= T3-T1;
[0035]其中,1;表示应用延时时间值,Τ #示客户端延时时间值,Τ。表示网络延时时间值,!\表示第一次握手报文时间戳,1~2表示第二次握手报文时间戳,1~3表示第三次握手报文时间戳;
[0036]步骤6:将时间Τ内的所有Ta、Tb、T。分别计算出平均值和最大值作为网络延时指标。
[0037]优选地,在报文集合map中:
[0038]客户端发送的SYN = 1、ACK = 0的握手报文的key的计算公式为:
[0039]key =源IP+源端口 +目的IP+目的端口 +报文序号seq ;
[0040]服务端回复的SYN = 1,ACK = 1的确认报文的key的计算公式为:
[0041 ] key =目的IP+目的端口 +源IP+源端口 + (报文确认号ack_l);
[0042]其他报文的key的计算公式为:
[0043]key =源IP+源端口 +目的IP+目的端口 + (报文序号seq_l)。
[0044]根据本发明提供的一种以大数据流式技术实现网络数据包的网络指标计算装置,包括重传指标分析装置和/或延时指标分析装置;
[0045]所述重传指标分析装置,包括如下装置:
[0046]获取装置:用于得到各个TCP报文的特征字符串,具体为:
[0047]将TCP报文头信息中的报文序号seq、确认号ack、源IP、目的IP以字符串形式组成特征字符串,其中,源IP表示TCP/IP协议中发送方IP,目的IP表示TCP/IP协议中接收方IP ;
[0048]统计装置:用于统计相同的特征字符串的数量,将所述相同的特征字符串的数量作为TCP重传报文数量;
[0049]所述延时指标分析装置,包括如下装置:
[0050]分片装置:用于将数据流按时间T为时间间隔进行分片;
[0051]第一转换装置:用于通过Spark Streaming实时计算框架的滑动窗口操作将分片得到的连续数据转换成时间T的DStream数据集;
[0052]第二转换装置:用于将时间T的DStream数据集进行map转换得到报文集合map,然后将报文集合map进行一次groupByKey操作,产生key值唯一的报文集合map ;其中,key表示报文集合map中的键;
[0053]提取装置:用于将从key值唯一的报文集合map中提取出的报文数量大于2的报文集合map,组成一个新报文集合map ;
[0054]计算装置:用于对所述新报文集合map进行遍历,计算出所述新报文集合map中的值之间的时间间隔,即:
[0055]m
[0056]Tb=T3_T2,
[0057]Tc= T3-T1;
[0058]其中,1;表示应用延时时间值,Tb表示客户端延时时间值,T。表示网络延时时间值,!\表示第一次握手报文时间戳,T 2表示第二次握手报文时间戳,T 3表示第三次握手报文时间戳;
[0059]处理装置:用于将时间T内的所有Ta
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1