基于DFI的云平台用户业务统计分析系统及方法与流程

文档序号:12364293阅读:618来源:国知局
基于DFI的云平台用户业务统计分析系统及方法与流程

本发明属于计算机网络技术相关领域,尤其是涉及一种基于DFI的云平台用户业务统计分析系统及方法。



背景技术:

传统业务分析系统部分基于DPI(Deep Packet Inspection,深度数据包检查),对数据包进行深度检测,然后得到应用级别的分析报表;部分基于netflow/openflow,对数据包进行采样汇聚成流,并分析流对应连接的各个标志位以及状态信息等,得到分析报表。

但是,上述传统业务分析系统存在如下诸多弊端导致无法很好跟云平台结合:

1、基于DPI方式业务分析系统往往由于性能瓶颈,无法满足大规模云平台用户业务分析需求;

2、基于netflow/openflow方式的业务系统,往往会对用户业务流量进行抽样分析,抽样间隔粒度会比较大,无法得到精确的业务分析数据;

3、分析系统独立于云平台,只能得到基于IP的分析报表,无法区分不同用户,无法结合用户业务系统信息形成用户最终希望得到的分析报表;

4、传统业务分析系统无法做到对业务的智能分析,也不支持自定义业务分析模板,导致分析结果准确性无法达到实际需求;

5、传统业务分析系统在分布式场景部署中无法做到灵活扩展。



技术实现要素:

针对现有技术的缺陷,本发明提供一种基于DFI的云平台用户业务统计分析系统及方法。

一方面,本发明实施例提出一种基于DFI的云平台用户业务统计分析系统,包括:

DFI流采集器集群和用户业务统计分析控制器集群;其中,

所述用户业务统计分析控制器集群包括数据存储模块、业务统计分析模块和报表呈现模块;

所述DFI流采集器集群,用于收集云平台的业务流量,对所述业务流量进行处理,得到标准DFI流数据,并将所述标准DFI流数据保存到所述数据存储模块;

所述业务统计分析模块,用于从所述数据存储模块读取标准DFI流数据,对云平台不同用户的不同业务进行统计,得到不同时间粒度的各业务流量统计数据,形成业务统计报表数据,并且将所述统计数据分别与预设的安全分析模板和性能分析模板进行匹配分析,得到不同用户不同业务的业务安全和性能状态报表数据,并将所述业务统计报表数据、业务安全和性能状态报表数据保存到所述数据存储模块;

所述报表呈现模块,用于从所述数据存储模块读取报表数据,并对所述报表数据进行呈现。

优选地,所述DFI流采集器集群包括:

内核空间模块和用户空间模块;其中,

所述内核空间模块,用于对云平台各个机架用户业务流量数据包进行全量采集,并对其中的包信息进行提取整合成基础DFI流数据;

所述用户空间模块,用于通过调用云平台控制器API(应用程序编程接口),获取用户业务系统数据,与所述内核空间模块获取的基础DFI流数据整合成标准DFI流数据,并将所述标准DFI流数据发送至所述数据存储模块进行存储,其中,所述标准DFI流数据包括基础DFI流数据、用户ID、设备ID、私有网络ID、网络接口ID和网络接口类型。

优选地,所述内核空间模块,具体用于对所述数据包进行基础DFI流信息提取,并将同一连接不同的流进行汇聚,得到基础DFI流数据,其中,所述基础DFI流数据包括:起始时间、源ip、目的ip、源mac、目的mac、源端口、目的端口、协议类型、vlan、数据包数量、有效负载、持续时间。

优选地,所述业务统计分析模块,用于通过调用云平台控制器API,获取用户信息,基于所述标准DFI流数据和用户信息,对云平台不同用户的不同业务进行统计。

优选地,所述报表呈现模块采用lcweb作为界面框架,并利用painter调用所述数据存储模块中的报表数据。

优选地,所述报表呈现模块对外提供API,以供云平台控制器和云平台监控系统通过调用该API获取获取所述报表数据。

优选地,所述报表呈现模块,还用于在所述业务安全和性能状态报表数据显示用户业务系统出现安全或性能问题时,向用户发送通知信息。

优选地,所述安全分析模板包括DDos\Dos攻击模板、Synflood攻击模板、ARPspoofing攻击模板、蠕虫病毒攻击模板和/或自定义模板;

所述性能分析模板包括web服务性能分析模板、数据库性能分析模板、负载均衡器性能分析模板、文件服务器性能分析模板,以及混合分析模板和/或自定义模板。

优选地,所述DFI流采集器集群和用户业务统计分析控制器集群采用分布式架构。

另一方面,本发明实施例提出一种基于DFI的云平台用户业务统计分析方法,包括:

所述DFI流采集器集群收集云平台的业务流量,对所述业务流量进行处理,得到标准DFI流数据,并将所述标准DFI流数据保存到所述数据存储模块;

所述业务统计分析模块从所述数据存储模块读取标准DFI流数据,对云平台不同用户的不同业务进行统计,得到不同时间粒度的各业务流量统计数据,形成业务统计报表数据,并且将所述统计数据分别与预设的安全分析模板和性能分析模板进行匹配分析,得到不同用户不同业务的业务安全和性能状态报表数据,并将所述业务统计报表数据、业务安全和性能状态报表数据保存到所述数据存储模块;

所述报表呈现模块从所述数据存储模块读取报表数据,并对所述报表数据进行呈现。

本发明实施例具有如下有益效果:

1、由于DFI流采集器集群和用户业务统计分析控制器集群可以采用分布式架构,因而能够满足大规模云平台用户业务分析需求,且在分布式场景部署中能够做到灵活扩展;

2、本发明直接收集云平台的业务流量进行分析,而非抽样分析,因而能够得到精确的业务分析数据;

3、本发明利用业务统计分析模块基于标准DFI流数据,对云平台不同用户的不同业务进行统计,得到不同时间粒度的各业务流量统计数据,形成业务统计报表数据,并且将所述统计数据分别与预设的安全分析模板和性能分析模板进行匹配分析,得到不同用户不同业务的业务安全和性能状态报表数据,能够区分不同用户,而标准DFI流数据由用户业务系统数据,与基础DFI流数据整合形成,因此能够结合用户业务系统信息形成用户最终希望得到的分析报表;

4、本发明能够做到对业务的智能分析,且支持自定义业务分析模板,使得分析结果准确性能够达到实际需求。

附图说明

图1为本发明基于DFI的云平台用户业务统计分析系统一实施例的结构示意图;

图2为本发明基于DFI的云平台用户业务统计分析方法一实施例的流程示意图;

图3为本发明基于DFI的云平台用户业务统计分析方法另一实施例的流程示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参看图1,本实施例公开一种基于DFI(Deep Flow Inspection,深度流检测)的云平台用户业务统计分析系统,包括:

DFI流采集器集群和用户业务统计分析控制器集群;其中,

所述DFI流采集器集群包括至少一个DFI流采集器,所述DFI流采集器旁挂在机架ToR上;所述用户业务统计分析控制器集群包括至少一个用户业务统计分析控制器,具体可根据云平台实际规模情况灵活进行资源扩充。

所述用户业务统计分析控制器集群包括数据存储模块、业务统计分析模块和报表呈现模块;

所述数据存储模块具体实现可为数据存储集群Elasticsearch,所述业务统计分析模块具体实现可为用户业务统计分析analyzer,所述报表呈现模块具体实现可为报表呈现系统,可以采用lcweb作为界面框架,并利用painter调用所述数据存储模块中的报表数据。

所述DFI流采集器集群,用于收集云平台的业务流量,对所述业务流量进行处理,得到标准DFI流数据,并将所述标准DFI流数据保存到所述数据存储模块;

本实施例中,DFI流采集器集群可以包括:

内核空间模块和用户空间模块;其中,

所述内核空间模块,用于对云平台各个机架用户业务流量数据包进行全量采集,并对其中的包信息进行提取整合成基础DFI流数据;

本实施例中,所述内核空间模块,具体可以用于对所述数据包进行基础DFI流信息提取,并将同一连接不同的流进行汇聚,得到基础DFI流数据,其中,所述基础DFI流数据包括:起始时间、源ip、目的ip、源mac、目的mac、源端口、目的端口、协议类型、vlan、数据包数量、有效负载、持续时间。

所述用户空间模块,用于通过调用云平台控制器API,获取用户业务系统数据(DFI流扩展信息),与所述内核空间模块获取的基础DFI流数据整合成标准DFI流数据,并将所述标准DFI流数据发送至所述数据存储模块进行存储,其中,所述标准DFI流数据包括基础DFI流数据、用户ID、设备ID、私有网络ID、网络接口ID和网络接口类型。

具体地,所述用户空间模块将用户业务系统数据与基础DFI流数据进行整合的过程为:获取基础DFI流数据中的vlan信息和mac信息,将所述基础DFI流数据中的vlan信息和mac信息与所述用户业务系统数据中的vlan信息和mac信息信息进行匹配,找出vlan信息和mac信息均相同的用户业务系统数据和基础DFI流数据进行整合,得到标准DFI流数据。

所述业务统计分析模块,用于从所述数据存储模块读取标准DFI流数据,对云平台不同用户的不同业务进行统计,得到不同时间粒度的各业务流量统计数据,形成业务统计报表数据,并且将所述统计数据分别与预设的安全分析模板和性能分析模板进行匹配分析,得到不同用户不同业务的业务安全和性能状态报表数据,并将所述业务统计报表数据、业务安全和性能状态报表数据保存到所述数据存储模块;

在具体应用中,安全分析模板是在大数据基础上,针对可能遇到的网络安全情景(如:DDos攻击,端口扫描,Synflood,ARP Sproof等)进行建模形成泛匹配模板,性能分析模板是在各类业务系统性能需求以及网络连接状态基础上,针对不同业务的特性归纳出的匹配模板。具体地,所述安全分析模板包括但不限于如下内容:DDos\Dos攻击模板、Synflood攻击模板、ARPspoofing攻击模板、蠕虫病毒攻击模板等,以及自定义模板。所述性能分析模板包括但不限于如下内容:web服务性能分析模板、数据库性能分析模板、负载均衡器性能分析模板、文件服务器性能分析模板,以及混合分析模板,如:游戏业务性能分析模板、视频业务性能分析模板、基于web服务的业务系统性能分析模板等,以及自定义模板。

业务统计分析模块主要从两方面对用户业务进行分析:一是业务安全,一是业务性能。用户业务统计分析analyzer将标准DFI流数据与内置安全分析模板和性能分析模板进行匹配分析,得到安全分析和性能分析报表数据。另外analyzer会利用通过调用云平台控制器API获取的用户信息将用户同一业务、同一虚拟化实例网络接口的不同流数据进行整合,并切分成不同时间粒度进行存储,形成业务统计报表数据。业务统计分析模块采取的算法具有智能化以及自学习能力,能够精确匹配出常见的网络安全问题以及性能瓶颈问题。

所述报表呈现模块,用于从所述数据存储模块读取报表数据,并对所述报表数据进行呈现。

对于报表呈现模块,针对市场上大部分统计分析系统采用独立的报表呈现系统的短板,发明了一种混合呈现模式的方法,既可以以独立系统呈现,又可以对外提供标准API,供其它系统(如:云平台控制器,云平台监控系统等)调用,用于云平台高度集成开发,给客户以更好的体验。比如,云平台控制器可以通过调用该API获取用户业务统计分析数据,通过云平台自身的统计信息显示系统做业务分析展示以及报表下载服务。

所述报表呈现模块,还可以用于在所述业务安全和性能状态报表数据显示用户业务系统出现安全或性能问题时,向用户发送通知信息。

本发明通过DFI流以及安全分析模板和性能分析模板进行匹配分析,能够快速定位出云平台中网络安全问题所在:哪个用户的哪个业务系统下的哪个虚拟机。并综合多方面分析给出客户可参考的解决方案,便于客户快速处理问题,保证业务连续稳定性。

参看图2,本实施例公开一种基于DFI的云平台用户业务统计分析方法,包括:

S1、所述DFI流采集器集群收集云平台的业务流量,对所述业务流量进行处理,得到标准DFI流数据,并将所述标准DFI流数据保存到所述数据存储模块;

S2、所述业务统计分析模块从所述数据存储模块读取标准DFI流数据,对云平台不同用户的不同业务进行统计,得到不同时间粒度的各业务流量统计数据,形成业务统计报表数据,并且将所述统计数据分别与预设的安全分析模板和性能分析模板进行匹配分析,得到不同用户不同业务的业务安全和性能状态报表数据,并将所述业务统计报表数据、业务安全和性能状态报表数据保存到所述数据存储模块;

S3、所述报表呈现模块从所述数据存储模块读取报表数据,并对所述报表数据进行呈现。

如图3所述为本发明基于DFI的云平台用户业务统计分析方法另一实施例的流程示意图,参见图3,本发明基于DFI的云平台用户业务统计分析方法的过程如下:

(1)利用DFI流采集器集群收集云平台的业务流量,对所述业务流量进行聚合,得到基础DFI流数据,并将其存储在DFI流和报表数据库中。

(2)将所述基础DFI流数据与调用API从云平台控制器用户信息和业务信息数据库中获取的用户业务系统数据进行聚合,得到标准DFI流数据。

(3)利用业务统计分析模块对所述标准DFI流数据进行用户业务统计,得到不同时间粒度的各业务流量统计数据,形成业务统计报表数据。同时,基于模版数据库中存储的安全分析模板和性能分析模板,利用业务统计分析模块对所述标准DFI流数据进行用户业务分析,得到不同用户不同业务的业务安全和性能状态数据,形成业务安全和性能状态报表数据。具体对所述标准DFI流数据进行用户业务分析的过程为:

(30)对所述标准DFI流数据进行用户业务统计,得到不同时间粒度的各业务流量统计数据;

(31)对所述统计数据进行关键信息提取,并将提取到的关键信息组成某一种特定的格式,而该格式与所使用的模板的格式一致;

(31)将所述特定格式的数据分别与安全分析模板和性能分析模板进行匹配分析,得到不同用户不同业务的业务安全和性能状态数据。

在具体应用中,安全分析模板对应的关键信息包括协议类型、IP、mac信息、虚拟ID、虚拟接口等,性能分析模板对应的关键信息包括IP、负载、网络延时、虚拟ID、虚拟接口等。

将所述特定格式的数据与模板进行匹配分析时,若特定格式的数据与模板匹配上,则得到异常业务分析数据,否则,则得到正常业务分析数据。

需要说明的是,前述的业务统计分析模块的用户业务统计与分析是两个独立的过程,当然,为了提高运算效率,用户业务分析过程也可以基于用户业务统计的结果进行。

(4)将步骤(3)得到的报表数据存储在DFI流和报表数据库中,最后报表呈现模块可以从DFI流和报表数据库中读取报表数据进行呈现。

本发明具有如下优点:不需要在云平台内部主机增加流量探针,只需要在机架ToR上旁挂DFI流采集器;能够针对不同的云平台系统做用户业务系统分析,并提供标准的API可供云平台控制器调用获取用户业务分析报表数据。

下面以2个具体的实施例对本发明的实施过程进行说明。

实例1

云平台租户虚拟机被进行密码暴力破解实例:

云平台环境复杂,各种租户各种业务的网络流量交织在一起,密码暴力破解特征在于流量小,持续性,固定端口,半开链接等。本实例能够实现快速检测定位。

租户云平台业务系统中某一台linux虚拟机的ssh端口对公网开放,给黑客进行密码破解留下可乘之机,黑客可以采用固定或者非固定ip对租户linux虚拟机进行ssh登录尝试,该linux虚拟机的网络流量中包含大量ssh端口的数据包。则本发明的实现过程如下:

1).通过DFI流采集器获取到linux虚拟机的ssh服务连接流信息;

2).DFI流采集器获取到的流信息经过业务统计分析模块进行密码暴力破解模板匹配,定位出ssh登录密码暴力破解问题;

3).报表呈现系统会在报表页面显著的显示问题虚拟机以及问题分析结果,并且能够发送邮件通知租户,进行及时处理;

实例2

虚拟机服务性能检测实例:

租户业务负载随时都在变动,具有一定的不可预期性,本实例能够快速定位租户业务系统的瓶颈所在,使租户能够及时的扩充资源,以应对业务负载的变动,具体实现方法如下:

1).DFI流采集器负责底层业务系统流量采集汇聚,得到不同业务应用的实时网络流量和网络连接情况;

2).DFI采集器将收集到的流信息发送给业务统计分析模块,从多个维度进行信息分析:网络带宽使用率,包速率,端口,协议,连接状态。并与系统内置性能分析模板进行匹配,得到精确的分析数据;

3).分析数据通过界面呈现系统呈现给租户,并在业务应用性能出现瓶颈时,发送告警邮件,租户能够及时的调整业务系统资源,保证业务的连续和稳定。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

本发明的说明书中,说明了大量具体细节。然而能够理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释呈反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本发明并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1