CN114979186A - 基于Flink组件的流量链接分析方法及系统 - Google Patents
基于Flink组件的流量链接分析方法及系统 Download PDFInfo
- Publication number
- CN114979186A CN114979186A CN202210525481.2A CN202210525481A CN114979186A CN 114979186 A CN114979186 A CN 114979186A CN 202210525481 A CN202210525481 A CN 202210525481A CN 114979186 A CN114979186 A CN 114979186A
- Authority
- CN
- China
- Prior art keywords
- data
- flow
- traffic
- flink
- message queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 33
- 230000002776 aggregation Effects 0.000 claims abstract description 41
- 238000004220 aggregation Methods 0.000 claims abstract description 41
- 239000000523 sample Substances 0.000 claims abstract description 41
- 238000012545 processing Methods 0.000 claims abstract description 30
- 238000012544 monitoring process Methods 0.000 claims abstract description 23
- 230000001502 supplementing effect Effects 0.000 claims abstract description 20
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000013519 translation Methods 0.000 claims description 28
- 238000004364 calculation method Methods 0.000 claims description 26
- 238000003860 storage Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 13
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000012423 maintenance Methods 0.000 claims description 11
- 238000001816 cooling Methods 0.000 claims description 6
- 230000010365 information processing Effects 0.000 claims description 3
- 238000013500 data storage Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 4
- 230000004931 aggregating effect Effects 0.000 description 3
- 238000005111 flow chemistry technique Methods 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 238000013507 mapping Methods 0.000 description 2
- 230000009469 supplementation Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010224 classification analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
本发明公开了基于Flink组件的流量链接分析方法及系统,属于流量处理技术领域,要解决的技术问题为如何实时收集流量数据并对流量数据进行链路分析。包括如下步骤:通过部署于网络节点的流量监控探针实时采集流量数据;通过探针服务器对流量数据进行解析,将流量包头信息推送至消息队列;通过Flink组件将流量包头信息中热数据存储至Elasticsearch,将冷数据存储至HDFS;通过Flink组件对所述流量数据进行补维操作,将明细数据推送至消息队列;通过Flink组件对明细数据进行聚合操作,将聚合操作得到的指标数据推送至消息队列;将指标数据中热数据存储至时序数据库、将冷数据存储至HDFS。
Description
技术领域
本发明涉及流量处理技术领域,具体地说是基于Flink组件的流量链接分析方法及系统。
背景技术
当前,大部分集团公司拥有庞大的应用服务体系,各个区域的网络线路和设备随着策略的不断改变,也随之不断地调整。当某个网络节点故障导致某些应用出现问题,或者某条交易出现异常时,往往是运维人员根据自己经验选择性的登录机器排查问题,这样的做法需要大量的时间,难以做到在短时间内确定问题节点。
如何实时收集流量数据并对流量数据进行链路分析,是需要解决的技术问题。
发明内容
本发明的技术任务是针对以上不足,提供基于Flink组件的流量链接分析方法及系统,来解决如何对流量数据进行实时收集、分类统计的技术问题。
第一方面,本发明的一种基于Flink组件的流量链路分析方法,包括如下步骤:
对于各网络节点,通过部署于所述网络节点的流量监控探针实时采集流量数据,并将流量数据传输至探针服务器;
对于每个流量数据,通过探针服务器对所述流量数据进行解析,并将解析得到的流量包头信息推送至消息队列;
通过Flink组件将所述流量包头信息中热数据存储至Elasticsearch,将所述流量包头信息中冷数据存储至HDFS;
获取各个网络节点的网络配置表信息,所述网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表,基于所述流量包头信息以及网络配置表信息、通过Flink组件对所述流量数据进行补维操作,基于设定的明细数据集规范对补维操作得到的明细数据进行数据处理后,将明细数据推送至消息队列;
通过Flink组件将所述明细数据中热数据存储至Elasticsearch、将所述明细数据中冷数据存储至HDFS;
基于设定的指标数据集规范以及所述流量数据对应的运维对象,通过Flink组件对所述明细数据进行聚合操作,将聚合操作得到的指标数据推送至消息队列;
通过Flink组件将所述指标数据中热数据存储至时序数据库、将所述指标数据中冷数据存储至HDFS。
作为优选,所述明细数据集规范设定有三类字段,分别为:
度量值,所述度量值作为进行聚合计算的值,包括流量数据中的客户端流量、服务器流量、服务器响应时间以及服务器丢包率;
维度,所述维度为描述度量值的角度,包括流量数据中的源IP、目的IP、源端口以及目的端口;
普通列,流量数据不作为最终分析目标或只作为计算中间量的数据、以及作为说明性的字段均作为普通列,包括备注和描述;
所述指标数据集规范设定有两类字段,分别为:
维度,所述维度与明细数据集规范中对应的维度一致;
指标,所述指标为度量值聚合计算后得到的值,包括客户端总流量、平均服务器响应时间。
作为优选,获取各个网络节点的网络配置表,包括如下步骤:
对于每种网络配置表信息,通过关系型数据库构建对应的数据库表,并设置所述数据库表的字段;
收集各个网络节点的网络配置表信息,并将收集的网络配置表信息按照对应数据库表的字段解析并保存。
作为优选,对于流量数据,基于各个网络配置表、通过Flink组件确定所述流量数据所经过的逻辑路线,按照四元组或三元组将流量包头信息与MAC表、ARP表、路由表以及防火墙地址转化表进行匹配,并根据防火墙的地址转换规则确定地址转换后的地址对,将防火墙前后的流量数据拼接起来,从而得到所述流量数据的整个链路;
所述四元组包括源IP、源端口、目的IP、目的端口;
所述三元组为所述四元组中的任意三元。
作为优选,基于设定的指标数据集规范以及所述流量数据对应的运维对象,通过Flink组件对所述明细数据进行聚合操作,包括如下步骤:
对于消息队列中的明细数据,以指标数据对应的数据规范为数据格式标准,对每个指标数据集创建一个独立的Flink任务;
通过Flink任务消费消息队列中对应的明细数据,并基于指标数据对应的数据规范,对明细数据进行map操作;
对明细数据进行聚合操作,将得到的指标数据推送至消息队列中。
第二方面,本发明的一种基于Flink组件的流量链接分析系统,通过如第一方面任一项所述的基于Flink组件的流量链接分析对流量数据进行实时收集和统计分析,所述系统包括:
流量监控探针,各个网络节点均部署有所述流量监控探针,用于实时采集流量数据;
探针服务器,所述探针服务器与所述流量监控探针连接,用于从流量监控探针获取流量数据并对流量数据进行解析,得到流量包头信息;
消息队列,所述消息队列用于接收探针服务器推送的流量包头信息;
基础数据获取模块,所述基础数据获取模块用于获取各个网络节点的网络配置表信息,所述网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表;
Flink组件,所述Flink组件用于从消息队列获取流量包头信息,并将所述流量包头信息中冷数据和热数据分别推送存储;用于基于所述流量包头信息以及网络配置表信息对所述流量数据进行补维操作,基于设定的明细数据规范对补维操作得到的明细数据进行数据处理后,将明细数据推送至消息队列,并用于将所述明细数据中冷数据和热数据分别推送存储;用于基于设定的指标数据集规范以及所述流量数据对应的运维对象,对所述明细数据进行聚合操作,将聚合操作得到的指标数据推送至消息队列,并用于将所述指标数据中热数据和冷数据分别推送存储;
Elasticsearch,所述Elasticsearch用于存储流量包头信息和明细数据中热数据;
HDFS,所述HDFS用于存储流量包头信息、明细数据以及指标数据中冷数据;
时序数据库,所述时序数据库用于存储所述指标数据中冷数据;
关系型数据库,所述关系型数据库用于存储所述各个网络节点的网络配置表信息。
作为优选,所述明细数据集规范设定有三类字段,分别为:
度量值,所述度量值作为进行聚合计算的值,包括流量数据中的客户端流量、服务器流量、服务器响应时间以及服务器丢包率;
维度,所述维度为描述度量值的角度,包括流量数据中的源IP、目的IP、源端口以及目的端口;
普通列,流量数据不作为最终分析目标或只作为计算中间量的数据、以及作为说明性的字段均作为普通列,包括备注和描述;
所述指标数据集规范设定有两类字段,分别为:
维度,所述维度与明细数据集规范中对应的维度一致;
指标,所述指标为度量值聚合计算后得到的值,包括客户端总流量、平均服务器响应时间。
作为优选,所述基础数据获取模块用于通过如下步骤获取各个网络节点的网络配置表:
对于每种网络配置表信息,通过关系型数据库构建对应的数据库表,并设置所述数据库表的字段;
收集各个网络节点的网络配置表信息,并将收集的网络配置表信息按照对应数据库表的字段解析并保存。
作为优选,对于流量数据,Flink组件用于基于各个网络配置表确定所述流量数据所经过的逻辑路线,按照四元组或三元组将流量包头信息与MAC表、ARP表、路由表以及防火墙地址转化表进行匹配,并根据防火墙的地址转换规则确定地址转换后的地址对,将防火墙前后的流量数据拼接起来,从而得到所述流量数据的整个链路;
所述四元组包括源IP、源端口、目的IP、目的端口;
所述三元组为所述四元组中的任意三元。
作为优选,基于设定的指标数据集规范以及所述流量数据对应的运维对象,Flink组件用于通过如下步骤对所述明细数据进行聚合操作:
对于消息队列中的明细数据,以指标数据对应的数据规范为数据格式标准,对每个指标数据集创建一个独立的Flink任务;
通过Flink任务消费消息队列中对应的明细数据,并基于指标数据对应的数据规范,对明细数据进行map操作;
对明细数据进行聚合操作,将得到的指标数据推送至消息队列中。
本发明的基于Flink组件的流量链接分析方法及系统具有以下优点:
1、基于实时计算组件Flink,配合流量监控探针的流量归类分析方法,实现了流量数据从收集、到补维、到聚合计算、最后入库的一整套流程,最终将杂乱的流量信息从大到应用系统,小到某个网络端口进行了细致的划分,使整个系统与外界、系统与系统之间的交互清晰的展现在眼前,从而可以实现对每一笔交易从发起到结束的全生命周期监控,当某个系统或某笔交易发生问题,根据各个节点的流量信息,便可快速准确定位到问题;
2、可以实时对全量的业务流量进行按应用、阶段进行分类统计,通过对流量中延迟、响应时间、丢包率等指标的汇总分析,更直观的展示各个应用系统各个网络节点的健康状况,并可以在系统发生故障时,快速定位问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
下面结合附图对本发明进一步说明。
图1为实施例1基于Flink组件的流量链接分析方法的流程框图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
本发明实施例提供基于Flink组件的流量链接分析方法及系统,用于解决如何实时收集流量数据并对流量数据进行链路分析的技术问题。
实施例1:
本发明一种基于Flink组件的流量链路分析方法,包括如下步骤:
S100、对于各网络节点,通过部署于所述网络节点的流量监控探针实时采集流量数据,并将流量数据传输至探针服务器;
S200、对于每个流量数据,通过探针服务器对所述流量数据进行解析,并将解析得到的流量包头信息推送至消息队列;
S300、通过Flink组件将所述流量包头信息中热数据存储至Elasticsearch,将所述流量包头信息中冷数据存储至HDFS;
S400、获取各个网络节点的网络配置表信息,所述网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表,基于所述流量包头信息以及网络配置表信息、通过Flink组件对所述流量数据进行补维操作,基于设定的明细数据集规范对补维操作得到的明细数据进行数据处理后,将明细数据推送至消息队列;
通过Flink组件将所述明细数据中热数据存储至Elasticsearch、将所述明细数据中冷数据存储至HDFS;
S500、基于设定的指标数据集规范以及所述流量数据对应的运维对象,通过Flink组件对所述明细数据进行聚合操作,将聚合操作得到的指标数据推送至消息队列;
通过Flink组件将所述指标数据中热数据存储至时序数据库、将所述指标数据中冷数据存储至HDFS。
流量监控探针是能够对网络流量进行采集、分析、信息提取的网络流量处理工具,可以实时对流量进行汇总并进行简单的分析。在关键网络节点部署流量监控探针,例如在接入交换机、汇聚交换机、核心交换机、防火墙等设备部署探针,实时推送该节点的流量情况。
探针服务器对流量数据进行解析后,得到的流量包头信息推送至消息队列中。该流量包头信息数据一方面分冷、热数据分别存入HDFS、Elasticsearch,一方面由Flink补维任务消费进行补维操作,补维后的数据再次推入消息队列。
在通过FLink组件进行补位操作之前,执行基础数据准备工作,即需要预先获取获取各个网络节点的网络配置表信息。网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表。
MAC表,收集内各区域的网络设备的mac表信息,通过关系型数据库建立mac_table,字段可简单设定:id、mac、port_id(外键,与网络设备端口表关联),将收集的mac表信息按照mac_table的字段解析并保存。
ARP表,收集内各区域的网络设备的arp表信息,建立关系型数据库表:arp_table,设定字段:id、ip_adress、mac(外键,与mac表关联)、port_id(外键,与网络设备端口表关联),将收集的arp表按照arp_table的字段解析并保存。
防火墙地址转化表,收集防火墙设备上的地址转换表,建立关系型数据库表:firewall_trans_table,设定字段:id、local_ip(转换前地址)、global_ip(转换后地址)、local_port(转换前端口号)、global_port(转换后端口号)、device_id(外键,与网络设备关联)。将收集的地址转换表按照firewall_trans_table表的字段解析并保存。
另外,梳理全面的CMDB,健全各配置项,尤其是网络相关配置项的关联关系。
步骤S400通过Flink组件对流量数据进行补维操作得到明细数据,步骤S500对明细数据进行聚合操作得到指标数据。
为了更规范的处理数据,在这里提出两个概念:明细数据集和指标数据集。
明细数据集,即为明细数据的集合,我们将补维但未聚合的数据集称为明细数据集,因为数据源的不同,明细数据的字段也可能会存在不一致,所以明细数据集先按数据源进行分类,此处我们的数据源只有一个,就是流量监控探针,所以可设定探针明细数据集。字段分为度量值、维度、普通列三种,度量值指的就是要进行聚合计算的值,例如流量中的客户端流量、服务器流量、服务器响应时间、服务器丢包率等;维度是描述度量值的角度,例如流量中的源IP、目的IP、源端口、目的端口;普通列指的是不作为最终分析目标或者只作为计算中间量的数据,另外包括一些作为说明性的字段,例如备注、描述。
指标数据集,指标数据的集合,将对明细数据按照各维度进行聚合计算后的数据集称为明细数据集,明细数据集的设计可按照面向运维对象的思想进行设计,例如针对应用系统、网络设备、网络线路进行定义指标集。字段分为维度、指标两种,维度与日志集中维度一致,指标则是度量值聚合计算后得到的值,例如客户端总流量、平均服务器响应时间等。
其中明细数据和指标数据可通过数据库表的形式存储,数据库表的元数据存储于关系型数据库中,或者明细数据和指标数据在存储介质如时序数据库中以块的形式存储。
补维和聚合两个数据处理主要靠Flink组件来完成,Flink组件的计算任务总体分为两类,一类是对数据进行计算操作,另一类是将结果进行存库。
对于计算任务,可分为两个阶段进行,第一阶段是对数据进行补维,即把探针推送的流量数据按照四元组或者三元组去匹配mac表、arp表、路由表、防火墙地址转换表,应用系统IP对应表里面的维度数据,进行补维。对于防火墙内的流量,可直接根据应用系统IP对应表确定所属应用系统,然后根据mac表、arp表、路由表可确定该条流量数据所在的抓包点(即从哪里将该流量抓取到)的设备ID、端口ID,所经过的逻辑网络线路。对于防火墙外的流量,要先根据防火墙地址转换表将地址转换为防火墙内地址,然后根据应用系统IP对应表可确定该流量的所属应用系统。最终的明细数据按照明细数据集的数据规范格式进行处理,将处理后的明细数据推送到消息队列。
计算任务的第二个阶段,是消费消息队列中的明细数据,对其进行统计,指标数据集的设计作为数据格式标准,对每一个指标集创建一个独立的Flink任务,先消费消息队列中的明细数据,然后按照指标集的设计,对明细数据进行map,最后将聚合计算后的数据推入到消息队列中。
对于存储任务,大体分为两个:明细数据入库和指标数据入库。
明细数据入库:可分为冷数据、热数据进行存储,选取合适的存储方式对明细数据进行存储,可将全量明细数据通过HDFS进行保存,便于后续历史数据的查找和处理,对于近期明细数据,可使用Elasticsearch进行保存,保存周期可定为一周或者一月。确定好存储方式,提交Flink任务完成存库操作。
指标数据入库:根据也可分为冷数据和热数据。全量的历史数据可保存到HDFS,可为后期的故障预测充当训练数据;热数据的周期可选取一个月,保存到OpenTSDB时序数据库中,便于实时查询、统计,有助于定位故障原因。
以上步骤,便完成了流量数据从收集,到补维,到聚合计算,最后入库的一整套流程,最终将杂乱的流量信息从大到应用系统,小到某个网络端口进行了细致的划分,使整个系统与外界、系统与系统之间的交互清晰的展现在眼前,从而可以实现对每一笔交易从发起到结束的全生命周期监控,当某个系统或某笔交易发生问题,根据各个节点的流量信息,便可快速准确定位到问题。
实施例2:
本发明一种基于Flink组件的流量链接分析系统,通过实施例1公开的方法对流量数据进行实时收集和统计分析,该系统包括流量监控探针、探针服务器、消息队列、基础数据获取模块、Flink组件、Elasticsearch、HDFS、时序数据库以及关系型数据库。
各个网络节点均部署有所述流量监控探针,用于实时采集流量数据。
流量监控探针是能够对网络流量进行采集、分析、信息提取的网络流量处理工具,可以实时对流量进行汇总并进行简单的分析。在关键网络节点部署流量监控探针,例如在接入交换机、汇聚交换机、核心交换机、防火墙等设备部署探针,实时推送该节点的流量情况。
探针服务器与所述流量监控探针连接,用于从流量监控探针获取流量数据并对流量数据进行解析,得到流量包头信息。
消息队列用于接收探针服务器推送的流量包头信息。
探针服务器对流量数据进行解析后,得到的流量包头信息推送至消息队列中。该流量包头信息数据一方面分冷、热数据分别存入HDFS、Elasticsearch,一方面由Flink补维任务消费进行补维操作,补维后的数据再次推入消息队列。
基础数据获取模块用于获取各个网络节点的网络配置表信息,所述网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表。
网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表。
MAC表,收集内各区域的网络设备的mac表信息,通过关系型数据库建立mac_table,字段可简单设定:id、mac、port_id(外键,与网络设备端口表关联),将收集的mac表信息按照mac_table的字段解析并保存。
ARP表,收集内各区域的网络设备的arp表信息,建立关系型数据库表:arp_table,设定字段:id、ip_adress、mac(外键,与mac表关联)、port_id(外键,与网络设备端口表关联),将收集的arp表按照arp_table的字段解析并保存。
防火墙地址转化表,收集防火墙设备上的地址转换表,建立关系型数据库表:firewall_trans_table,设定字段:id、local_ip(转换前地址)、global_ip(转换后地址)、local_port(转换前端口号)、global_port(转换后端口号)、device_id(外键,与网络设备关联)。将收集的地址转换表按照firewall_trans_table表的字段解析并保存。
另外,梳理全面的CMDB,健全各配置项,尤其是网络相关配置项的关联关系。
Flink组件用于从消息队列获取流量包头信息,并将所述流量包头信息中冷数据和热数据分别推送存储;用于基于所述流量包头信息以及网络配置表信息对所述流量数据进行补维操作,基于设定的明细数据规范对补维操作得到的明细数据进行数据处理后,将明细数据推送至消息队列,并用于将所述明细数据中冷数据和热数据分别推送存储;用于基于设定的指标数据集规范以及所述流量数据对应的运维对象,对所述明细数据进行聚合操作,将聚合操作得到的指标数据推送至消息队列,并用于将所述指标数据中热数据和冷数据分别推送存储。
Flink组件的计算任务总体分为两类,一类是对数据进行计算操作,另一类是将结果进行存库。
计算操作包括对流量数据进行补维操作得到明细数据,以及对明细数据进行聚合操作得到指标数据。
为了更规范的处理数据,本实施例提出两个概念:明细数据集和指标数据集。
明细数据集,即为明细数据的集合,我们将补维但未聚合的数据集称为明细数据集,因为数据源的不同,明细数据的字段也可能会存在不一致,所以明细数据集先按数据源进行分类,此处我们的数据源只有一个,就是流量监控探针,所以可设定探针明细数据集。字段分为度量值、维度、普通列三种,度量值指的就是要进行聚合计算的值,例如流量中的客户端流量、服务器流量、服务器响应时间、服务器丢包率等;维度是描述度量值的角度,例如流量中的源IP、目的IP、源端口、目的端口;普通列指的是不作为最终分析目标或者只作为计算中间量的数据,另外包括一些作为说明性的字段,例如备注、描述。
指标数据集,指标数据的集合,将对明细数据按照各维度进行聚合计算后的数据集称为明细数据集,明细数据集的设计可按照面向运维对象的思想进行设计,例如针对应用系统、网络设备、网络线路进行定义指标集。字段分为维度、指标两种,维度与日志集中维度一致,指标则是度量值聚合计算后得到的值,例如客户端总流量、平均服务器响应时间等。
对于计算任务,可分为两个阶段进行,第一阶段是对数据进行补维,即把探针推送的流量数据按照四元组或者三元组去匹配mac表、arp表、路由表、防火墙地址转换表,应用系统IP对应表里面的维度数据,进行补维。对于防火墙内的流量,可直接根据应用系统IP对应表确定所属应用系统,然后根据mac表、arp表、路由表可确定该条流量数据所在的抓包点(即从哪里将该流量抓取到)的设备ID、端口ID,所经过的逻辑网络线路。对于防火墙外的流量,要先根据防火墙地址转换表将地址转换为防火墙内地址,然后根据应用系统IP对应表可确定该流量的所属应用系统。最终的明细数据按照明细数据集的数据规范格式进行处理,将处理后的明细数据推送到消息队列。
计算任务的第二个阶段,是消费消息队列中的明细数据,对其进行统计,指标数据集的设计作为数据格式标准,对每一个指标集创建一个独立的Flink任务,先消费消息队列中的明细数据,然后按照指标集的设计,对明细数据进行map,最后将聚合计算后的数据推入到消息队列中。
对于存储任务,大体分为两个:明细数据入库和指标数据入库。
明细数据入库:可分为冷数据、热数据进行存储,选取合适的存储方式对明细数据进行存储,可将全量明细数据通过HDFS进行保存,便于后续历史数据的查找和处理,对于近期明细数据,可使用Elasticsearch进行保存,保存周期可定为一周或者一月。确定好存储方式,提交Flink任务完成存库操作。
指标数据入库:根据也可分为冷数据和热数据。全量的历史数据可保存到HDFS,可为后期的故障预测充当训练数据;热数据的周期可选取一个月,保存到OpenTSDB时序数据库中,便于实时查询、统计,有助于定位故障原因。
Elasticsearch用于存储流量包头信息和明细数据中热数据,HDFS用于存储流量包头信息、明细数据以及指标数据中冷数据,时序数据库用于存储所述指标数据中冷数据,关系型数据库用于存储所述各个网络节点的网络配置表信息。
本实施例的系统通过执行实例1公开的方法,完成了流量数据从收集,到补维,到聚合计算,最后入库的一整套流程,最终将杂乱的流量信息从大到应用系统,小到某个网络端口进行了细致的划分,使整个系统与外界、系统与系统之间的交互清晰的展现在眼前,从而可以实现对每一笔交易从发起到结束的全生命周期监控,当某个系统或某笔交易发生问题,根据各个节点的流量信息,便可快速准确定位到问题。
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的代码审核手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
Claims (10)
1.一种基于Flink组件的流量链路分析方法,其特征在于包括如下步骤:
对于各网络节点,通过部署于所述网络节点的流量监控探针实时采集流量数据,并将流量数据传输至探针服务器;
对于每个流量数据,通过探针服务器对所述流量数据进行解析,并将解析得到的流量包头信息推送至消息队列;
通过Flink组件将所述流量包头信息中热数据存储至Elasticsearch,将所述流量包头信息中冷数据存储至HDFS;
获取各个网络节点的网络配置表信息,所述网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表,基于所述流量包头信息以及网络配置表信息、通过Flink组件对所述流量数据进行补维操作,基于设定的明细数据集规范对补维操作得到的明细数据进行数据处理后,将明细数据推送至消息队列;
通过Flink组件将所述明细数据中热数据存储至Elasticsearch、将所述明细数据中冷数据存储至HDFS;
基于设定的指标数据集规范以及所述流量数据对应的运维对象,通过Flink组件对所述明细数据进行聚合操作,将聚合操作得到的指标数据推送至消息队列;
通过Flink组件将所述指标数据中热数据存储至时序数据库、将所述指标数据中冷数据存储至HDFS。
2.根据权利要求1所述的基于Flink组件的流量链路分析方法,其特征在于所述明细数据集规范设定有三类字段,分别为:
度量值,所述度量值作为进行聚合计算的值,包括流量数据中的客户端流量、服务器流量、服务器响应时间以及服务器丢包率;
维度,所述维度为描述度量值的角度,包括流量数据中的源IP、目的IP、源端口以及目的端口;
普通列,流量数据不作为最终分析目标或只作为计算中间量的数据、以及作为说明性的字段均作为普通列,包括备注和描述;
所述指标数据集规范设定有两类字段,分别为:
维度,所述维度与明细数据集规范中对应的维度一致;
指标,所述指标为度量值聚合计算后得到的值,包括客户端总流量、平均服务器响应时间。
3.根据权利要求1所述的基于Flink组件的流量链路分析方法,其特征在于获取各个网络节点的网络配置表,包括如下步骤:
对于每种网络配置表信息,通过关系型数据库构建对应的数据库表,并设置所述数据库表的字段;
收集各个网络节点的网络配置表信息,并将收集的网络配置表信息按照对应数据库表的字段解析并保存。
4.根据权利要求1所述的基于Flink组件的流量链路分析方法,其特征在于对于流量数据,基于各个网络配置表、通过Flink组件确定所述流量数据所经过的逻辑路线,按照四元组或三元组将流量包头信息与MAC表、ARP表、路由表以及防火墙地址转化表进行匹配,并根据防火墙的地址转换规则确定地址转换后的地址对,将防火墙前后的流量数据拼接起来,从而得到所述流量数据的整个链路;
所述四元组包括源IP、源端口、目的IP、目的端口;
所述三元组为所述四元组中的任意三元。
5.根据权利要要求1所述的基于Flink组件的流量链路分析方法,其特征在于基于设定的指标数据集规范以及所述流量数据对应的运维对象,通过Flink组件对所述明细数据进行聚合操作,包括如下步骤:
对于消息队列中的明细数据,以指标数据对应的数据规范为数据格式标准,对每个指标数据集创建一个独立的Flink任务;
通过Flink任务消费消息队列中对应的明细数据,并基于指标数据对应的数据规范,对明细数据进行map操作;
对明细数据进行聚合操作,将得到的指标数据推送至消息队列中。
6.一种基于Flink组件的流量链接分析系统,其特征在于通过如权利要求1-5任一项所述的基于Flink组件的流量链接分析对流量数据进行实时收集和统计分析,所述系统包括:
流量监控探针,各个网络节点均部署有所述流量监控探针,用于实时采集流量数据;
探针服务器,所述探针服务器与所述流量监控探针连接,用于从流量监控探针获取流量数据并对流量数据进行解析,得到流量包头信息;
消息队列,所述消息队列用于接收探针服务器推送的流量包头信息;
基础数据获取模块,所述基础数据获取模块用于获取各个网络节点的网络配置表信息,所述网络配置表包括MAC表、ARP表、路由表以及防火墙地址转化表;
Flink组件,所述Flink组件用于从消息队列获取流量包头信息,并将所述流量包头信息中冷数据和热数据分别推送存储;用于基于所述流量包头信息以及网络配置表信息对所述流量数据进行补维操作,基于设定的明细数据规范对补维操作得到的明细数据进行数据处理后,将明细数据推送至消息队列,并用于将所述明细数据中冷数据和热数据分别推送存储;用于基于设定的指标数据集规范以及所述流量数据对应的运维对象,对所述明细数据进行聚合操作,将聚合操作得到的指标数据推送至消息队列,并用于将所述指标数据中热数据和冷数据分别推送存储;
Elasticsearch,所述Elasticsearch用于存储流量包头信息和明细数据中热数据;
HDFS,所述HDFS用于存储流量包头信息、明细数据以及指标数据中冷数据;
时序数据库,所述时序数据库用于存储所述指标数据中冷数据;
关系型数据库,所述关系型数据库用于存储所述各个网络节点的网络配置表信息。
7.根据权利要求6所述的基于Flink组件的流量链接分析系统,其特征在于所述明细数据集规范设定有三类字段,分别为:
度量值,所述度量值作为进行聚合计算的值,包括流量数据中的客户端流量、服务器流量、服务器响应时间以及服务器丢包率;
维度,所述维度为描述度量值的角度,包括流量数据中的源IP、目的IP、源端口以及目的端口;
普通列,流量数据不作为最终分析目标或只作为计算中间量的数据、以及作为说明性的字段均作为普通列,包括备注和描述;
所述指标数据集规范设定有两类字段,分别为:
维度,所述维度与明细数据集规范中对应的维度一致;
指标,所述指标为度量值聚合计算后得到的值,包括客户端总流量、平均服务器响应时间。
8.根据权利要求6所述的基于Flink组件的流量链接分析系统,其特征在于所述基础数据获取模块用于通过如下步骤获取各个网络节点的网络配置表:
对于每种网络配置表信息,通过关系型数据库构建对应的数据库表,并设置所述数据库表的字段;
收集各个网络节点的网络配置表信息,并将收集的网络配置表信息按照对应数据库表的字段解析并保存。
9.根据权利要求6所述的基于Flink组件的流量链接分析系统,其特征在于对于流量数据,Flink组件用于基于各个网络配置表确定所述流量数据所经过的逻辑路线,按照四元组或三元组将流量包头信息与MAC表、ARP表、路由表以及防火墙地址转化表进行匹配,并根据防火墙的地址转换规则确定地址转换后的地址对,将防火墙前后的流量数据拼接起来,从而得到所述流量数据的整个链路;
所述四元组包括源IP、源端口、目的IP、目的端口;
所述三元组为所述四元组中的任意三元。
10.根据权利要求6所述的基于Flink组件的流量链接分析系统,其特征在于基于设定的指标数据集规范以及所述流量数据对应的运维对象,Flink组件用于通过如下步骤对所述明细数据进行聚合操作:
对于消息队列中的明细数据,以指标数据对应的数据规范为数据格式标准,对每个指标数据集创建一个独立的Flink任务;
通过Flink任务消费消息队列中对应的明细数据,并基于指标数据对应的数据规范,对明细数据进行map操作;
对明细数据进行聚合操作,将得到的指标数据推送至消息队列中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210525481.2A CN114979186A (zh) | 2022-05-16 | 2022-05-16 | 基于Flink组件的流量链接分析方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210525481.2A CN114979186A (zh) | 2022-05-16 | 2022-05-16 | 基于Flink组件的流量链接分析方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114979186A true CN114979186A (zh) | 2022-08-30 |
Family
ID=82982959
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210525481.2A Pending CN114979186A (zh) | 2022-05-16 | 2022-05-16 | 基于Flink组件的流量链接分析方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114979186A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116455679A (zh) * | 2023-06-16 | 2023-07-18 | 杭州美创科技股份有限公司 | 异常数据库运维流量监控方法、装置及计算机设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100074480A (ko) * | 2008-12-24 | 2010-07-02 | 한국인터넷진흥원 | 네트워크 기반의 http 봇넷 탐지 방법 |
US20190130004A1 (en) * | 2017-10-27 | 2019-05-02 | Streamsimple, Inc. | Streaming Microservices for Stream Processing Applications |
CN110245158A (zh) * | 2019-06-10 | 2019-09-17 | 上海理想信息产业(集团)有限公司 | 一种基于Flink流计算技术的多源异构数据实时处理系统及方法 |
CN112307057A (zh) * | 2020-10-27 | 2021-02-02 | 北京健康之家科技有限公司 | 数据的处理方法及装置、电子设备、计算机存储介质 |
CN113468019A (zh) * | 2021-06-28 | 2021-10-01 | 康键信息技术(深圳)有限公司 | 基于Hbase的指标监控方法、装置、设备及存储介质 |
-
2022
- 2022-05-16 CN CN202210525481.2A patent/CN114979186A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100074480A (ko) * | 2008-12-24 | 2010-07-02 | 한국인터넷진흥원 | 네트워크 기반의 http 봇넷 탐지 방법 |
US20190130004A1 (en) * | 2017-10-27 | 2019-05-02 | Streamsimple, Inc. | Streaming Microservices for Stream Processing Applications |
CN110245158A (zh) * | 2019-06-10 | 2019-09-17 | 上海理想信息产业(集团)有限公司 | 一种基于Flink流计算技术的多源异构数据实时处理系统及方法 |
CN112307057A (zh) * | 2020-10-27 | 2021-02-02 | 北京健康之家科技有限公司 | 数据的处理方法及装置、电子设备、计算机存储介质 |
CN113468019A (zh) * | 2021-06-28 | 2021-10-01 | 康键信息技术(深圳)有限公司 | 基于Hbase的指标监控方法、装置、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
DEQUAN CHEN等: "Real-Time or Near Real-Time Persisting Daily Healthcare Data Into HDFS and ElasticSearch Index Inside a Big Data Platform", 《IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS》, 28 December 2016 (2016-12-28) * |
毕倪飞;丁光耀;陈启航;徐辰;周傲英;: "数据流计算模型及其在大数据处理中的应用", 大数据, no. 03, 23 February 2022 (2022-02-23) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116455679A (zh) * | 2023-06-16 | 2023-07-18 | 杭州美创科技股份有限公司 | 异常数据库运维流量监控方法、装置及计算机设备 |
CN116455679B (zh) * | 2023-06-16 | 2023-09-08 | 杭州美创科技股份有限公司 | 异常数据库运维流量监控方法、装置及计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108667725A (zh) | 一种基于多种接入及边缘计算的工业软网关以及实现方法 | |
CN108039957B (zh) | 复杂网络流量包智能分析系统 | |
US8521871B2 (en) | System and method for merging monitoring data streams from a server and a client of the server | |
CN107634848A (zh) | 一种采集分析网络设备信息的系统和方法 | |
CN109739742B (zh) | 业务数据核对方法、装置及设备 | |
CN105577454A (zh) | 一种基于日志快速定位业务故障的方法 | |
CN111740884B (zh) | 一种日志处理方法及电子设备、服务器、存储介质 | |
CN110022221B (zh) | 一种系统接口数据的监控方法、装置及系统 | |
CN109670843A (zh) | 投诉业务的数据处理方法、装置、计算机设备及存储介质 | |
CN101902505A (zh) | 一种分布式dns查询日志的实时统计装置及方法 | |
CN104486116A (zh) | 多维度查询流量数据的方法及系统 | |
CN113259467B (zh) | 一种基于大数据的网页资产指纹标签识别与发现方法 | |
US20230094834A1 (en) | Fault Detection Method and Device of Live Stream Service, Electronic Device, and Readable Storage Medium | |
CN111400189A (zh) | 代码覆盖率监测方法、装置、电子设备及存储介质 | |
CN113360554A (zh) | 一种数据抽取、转换和加载etl的方法和设备 | |
US20190197140A1 (en) | Automation of sql tuning method and system using statistic sql pattern analysis | |
CN113505048A (zh) | 基于应用系统画像的统一监控平台及实现方法 | |
CN114979186A (zh) | 基于Flink组件的流量链接分析方法及系统 | |
CN110362456A (zh) | 一种获取服务端性能数据的方法及装置 | |
CN112052134A (zh) | 一种业务数据的监控方法及装置 | |
CN112134719A (zh) | 一种分析基站安全日志的方法和系统 | |
CN107679097A (zh) | 一种分布式数据处理方法、系统和存储介质 | |
CN115695216A (zh) | 一种互联网流量流向的大数据分析的方法 | |
CN108563664A (zh) | 一种工业设备端的实时数据处理方法 | |
CN113138906A (zh) | 一种调用链数据采集方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |