一种基于交换机全量的业务数据采集分析方法及系统的制作方法

文档序号:7818456阅读:502来源:国知局
一种基于交换机全量的业务数据采集分析方法及系统的制作方法
【专利摘要】本发明涉及一种基于交换机的业务数据采集分析方法和系统,所述方法包括:通过业务系统的交换机镜像端口,采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件,再从消息中间件中调用数据流进行分析处理。本发明不用通过在被采集业务系统中修改代码和加入插件等方式获取数据,对被采集的业务系统无感知,对采集系统无性能影响,无干扰,部署快速,且实施条件简单,兼容多种操作系统和多种操作平台。
【专利说明】一种基于交换机全量的业务数据采集分析方法及系统

【技术领域】
[0001]本发明涉及业务数据处理领域,特别是涉及一种基于交换机全量的业务数据采集分析方法及系统。

【背景技术】
[0002]目前在交换机侧的数据采集产品市面上很少,企业也还没有广泛的使用此技术,尤其是对业务系统的监控,告警,用户行为分析等,目前的市场上多是采用在业务系统上修改源码添加日志或页面插码等方式进行数据采集,这些方式对业务系统影响很大,需要对业务系统进行改造,改造成本相当大,还极大地增加了业务系统的风险。


【发明内容】

[0003]本发明提出了一种基于交换机全量的业务数据采集分析方法及系统,用于解决通过业务系统改造的方式洞察业务系统存在风险的技术问题。
[0004]为了解决上述问题,本发明提出了一种技术方案:一种基于交换机的业务数据采集分析方法,包括:通过业务系统的交换机镜像端口,采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件,再从消息中间件中调用数据流进行分析处理。
[0005]在上述技术方案的基础上,本发明还进行了如下改进。
[0006]进一步,还包括:根据业务需求在交换机上设置镜像端口。
[0007]进一步,所述采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件具体包括:采用Java技术调用Iibpcap组件或者winpcap组件读取网卡的数据流,并将数据流封装成与底层tcp协议数据包对应的数据对象,将数据对象的IP和端口与业务系统的IP和端口进行匹配,匹配则存储数据对象至消息中间件。
[0008]进一步,所述从消息中间件中调用数据流进行分析处理具体包括:从消息中间件中获取数据流,通过tcp协议的seq和ack以及数据包的长度对数据流进行分析和重组,进而还原成http协议的数据对象,再采用多进程及多线程的方式对还原好的数据对象进行处理。
[0009]进一步,所述消息中间件采用tuxedo数据库、DB2数据库或Oracle数据库。
[0010]本发明的技术方案还包括一种基于交换机的业务数据采集分析系统,包括:
[0011]采集服务器,用于通过业务系统的交换机镜像端口,采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件;
[0012]消息中间件,用于所述采集服务器采集的数据流;
[0013]分析服务器,用于从消息中间件中调用数据流进行分析处理。
[0014]进一步,所述采集服务器、消息中间件和分析服务器均能兼容多种操作系统,包括windows操作系统、unix操作系统和Iinux操作系统。
[0015]进一步,所述采集服务器、消息中间件和分析服务器均能兼容多种操作平台,包括32位操作平台和64位操作平台。
[0016]进一步,所述采集服务器为多网卡的服务器,其中一块网卡与维护网络进行连接,以实现远程操作,其余网卡均通过光纤或者网线与业务系统的交换机镜像端口进行连接。
[0017]进一步,所述消息中间件采用tuxedo数据库、DB2数据库或Oracle数据库。
[0018]本发明的有益效果:本发明不用通过在被采集业务系统中修改代码和加入插件等方式获取业务数据,对被采集的业务系统无感知,对采集系统无性能影响,无干扰,部署快速,且实施条件简单。另外,本发明的交换机数据流采集过程采用多线程、多进程、多平台的操作,可以兼容windows、unix、Iinux操作系统,也可以兼容32位、64位操作平台,为不同业务系统提供了一个统一业务数据采集分析,为企业和电商、B2B、B2C等系统提供一个用户行为分析的应用、为企业提供一个商业决策解决方案。

【专利附图】

【附图说明】
[0019]图1为本发明所述基于交换机的业务数据采集分析方法的流程示意图;
[0020]图2为本发明实施例二中应用系统的框架示意图;

【具体实施方式】
[0021]以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
[0022]实施例一
[0023]如图1所示,本实施例提出了一种基于交换机的业务数据采集分析方法,包括:根据业务需求在交换机上设置镜像端口,通过业务系统的交换机镜像端口,采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件,再从消息中间件中调用数据流进行分析处理。
[0024]其中,采用Java技术调用底层Iibpcap或者winpcap组件读取网卡的数据流,将数据流的分析封装成与底层tcp协议数据包对应的数据对象,根据数据对象的源IP、源端口、目标IP和目标端口与业务系统的IP和端口进行匹配,匹配则存储至消息中间件,否则丢弃。
[0025]对应地,本实施例还给出了一种基于交换机的业务数据采集分析系统,包括:
[0026]采集服务器,为多网卡的服务器,其中一块网卡与维护网络进行连接进行远程操作,其它的网卡通过光纤或者网线与业务系统的核心交换机的镜像端口进行连接。采集服务器用于通过业务系统的交换机镜像端口,采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件。
[0027]消息中间件,用于所述采集服务器采集的数据流。
[0028]分析服务器,用于从消息中间件中获取数据流,通过tcp协议的Seq、ack以及数据包的长度对数据包进行分析和重组进而还原成http协议的数据对象,采用多进程及多线程的方式对还原好的数据对象进行处理,静态数据(图片、js文件、CSS文件等)以文件方式进行存储,动态数据(图片、js文件、CSS文件外)存储至数据库,同时动态数据通过http协议的请求的Uri及请求参数与配置的业务系统业务规则的uri和参数进行匹配,如匹配则进行业务分析处理。
[0029]其中,所述采集服务器、消息中间件和分析服务器均能兼容多种操作系统,包括windows操作系统、unix操作系统和Iinux操作系统,且均能兼容多种操作平台,包括32位操作平台和64位操作平台。例如,当采集服务器是一个Iinux系统时,有Iinux部署安装版本,如果是一个32位系统的话,对应有32系统版本的应用软件。当采集服务器是一个64位系统的windows,对应的是64位系统安装版本的应用软件。
[0030]本实施例中,采集服务器通过把采集上来的业务数据以200_2000mb/s的速度存储到消息中间件,在消息中间件中进行数据交互,其数据交互是通过Java通信实现的。所述采集服务器是兼容多种操作系统和多种操作平台,如可以采集不同类型的TCP/IP包,并解析HTTP包。
[0031]实施例二
[0032]实施例二公开了一种应用上述业务数据采集方法的应用系统,其框架结构示意图,如图2所示:客户终端访问被采集系统如系统1、系统2到系统N等通过F5过核心交换机,交换机的数据是终端访问系统的全量数据,采集服务器通过java采集交换机镜像端口的数据交易,并和消息中间件MQ进行通信交易保存交易结果,分析服务器用多进程和多线程方式把MQ的交易结果取出进行分析汇总。
[0033]其中,所述的客户终端包含连接到业务系统的个人掌上电脑PDA、个人PC、手机终端、终端机等;交换机包括业务系统的核心交换机;所述F5为业务系统的负载均衡,消息中间件包括:tuxedo数据库、DB2数据库和oracle数据库等。
[0034]其中个人掌上电脑PDA和个人PC等通过业务网访问业务系统,所有的数据交易都会通过交换机的端口镜像到采集服务器,采集服务器用java把采集到的数据与MQ中间件进行数据交易,再由中间件MQ与实时分析服务器和数据统计服务器进行数据交互。
[0035]在本实施例中,基于JAVA语音编程技术开发采集服务器,且交换机的业务数据采集过程中,通过多进程和多线程的方式进行分发处理,模块独立性和耦合性强。
[0036]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种基于交换机的业务数据采集分析方法,其特征在于,包括:通过业务系统的交换机镜像端口,采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件,再从消息中间件中调用数据流进行分析处理。
2.根据权利要求1所述的业务数据采集分析方法,其特征在于,还包括:根据业务需求在交换机上设置镜像端口。
3.根据权利要求1所述的业务数据采集分析方法,其特征在于,所述采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件具体包括:采用Java技术调用Iibpcap组件或者winpcap组件读取网卡的数据流,并将数据流封装成与底层tcp协议数据包对应的数据对象,将数据对象的IP和端口与业务系统的IP和端口进行匹配,匹配则存储数据对象至消息中间件。
4.根据权利要求1所述的业务数据采集分析方法,其特征在于,所述从消息中间件中调用数据流进行分析处理具体包括:从消息中间件中获取数据流,通过tcp协议的seq和ack以及数据包的长度对数据流进行分析和重组,进而还原成http协议的数据对象,再采用多进程及多线程的方式对还原好的数据对象进行处理。
5.根据权利要求1所述的业务数据采集分析方法,其特征在于,所述消息中间件采用tuxedo数据库、DB2数据库或Oracle数据库。
6.一种基于交换机的业务数据采集分析系统,其特征在于,包括: 采集服务器,用于通过业务系统的交换机镜像端口,采集与交换机连接的网卡的数据流,并将采集的数据流存储到消息中间件; 消息中间件,用于所述采集服务器采集的数据流; 分析服务器,用于从消息中间件中调用数据流进行分析处理。
7.根据权利要求6所述的业务数据采集分析系统,其特征在于:所述采集服务器、消息中间件和分析服务器均能兼容多种操作系统,包括windows操作系统、unix操作系统和Iinux操作系统。
8.根据权利要求6所述的业务数据采集分析系统,其特征在于,所述采集服务器、消息中间件和分析服务器均能兼容多种操作平台,包括32位操作平台和64位操作平台。
9.根据权利要求6所述的业务数据采集分析系统,其特征在于,所述采集服务器为多网卡的服务器,其中一块网卡与维护网络进行连接,以实现远程操作,其余网卡均通过光纤或者网线与业务系统的交换机镜像端口进行连接。
10.根据权利要求6所述的业务数据采集分析系统,其特征在于,所述消息中间件采用tuxedo数据库、DB2数据库或Oracle数据库。
【文档编号】H04L29/08GK104333485SQ201410602088
【公开日】2015年2月4日 申请日期:2014年10月31日 优先权日:2014年10月31日
【发明者】苏荣韩 申请人:北京思特奇信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1