基于网络流量的应用关系分析方法、系统、设备及介质技术方案

技术编号:37152720 阅读:10 留言:0更新日期:2023-04-06 22:10
本申请实施例提供基于网络流量的应用关系分析方法、系统、设备及介质,包括:S10,监听网络流量信息并采集;S20,对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,得到流量聚合数据;S30,将流量聚合数据导入数据库进行持久化,并以此作为应用关系分析的基础数据;S40,对数据库中的数据进行协议类型识别及统计、应用识别及统计,以及未知应用的识别及统计;获取在指定时间范围内,协议类型的流量占比、指定应用名称或应用类型的流量排行以及未知应用的统计及标记;能够有效降低操作难度,适用于计算机领域。适用于计算机领域。适用于计算机领域。

【技术实现步骤摘要】
基于网络流量的应用关系分析方法、系统、设备及介质


[0001]本申请涉及计算机领域,具体涉及基于网络流量的应用关系分析方法、系统、设备及介质。

技术介绍

[0002]随着计算机技术的不断发展,计算机网络已经成为信息时代的重要特征,以计算机和网络通信技术为特征的信息技术在各个领域得到了广泛应用,如:将信息技术与运维工作相结合,能够大大提高设备运维工作的便利性。
[0003]相关技术中,计算机网络中的数据传输都是以数据包的形式进行传输,传统网络运维工作中分析流量数据包采用的手段是:使用抓包软件抓包,再将数据包导出通过抓包分析软件分析,操作难度大,对运维人员素质要求较高,只能进行少量的流量抓取,分析,不便于大量数据的分析工作。

技术实现思路

[0004]为了解决上述技术缺陷之一,本申请实施例中提供了基于网络流量的应用关系分析方法、系统、设备及介质,能够降低实时传输数据量大的压力,有效降低操作难度。
[0005]根据本申请实施例的第一个方面,提供了基于网络流量的应用关系分析方法,包括以下步骤:
[0006]S10,监听网络流量信息并采集;
[0007]S20,对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,得到流量聚合数据;
[0008]S30,将流量聚合数据导入数据库进行持久化,并以此作为应用关系分析的基础数据;
[0009]S40,对数据库中的数据进行协议类型识别及统计、应用识别及统计,以及未知应用的识别及统计;获取在指定时间范围内,协议类型的流量占比、指定应用名称或应用类型的流量排行以及未知应用的统计及标记。
[0010]根据本申请实施例的第二个方面,提供了基于网络流量的应用关系分析系统,包括:
[0011]采集模块,用于监听网络流量信息并采集;
[0012]数据处理模块,用于对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,得到流量聚合数据;
[0013]存储模块,将流量聚合数据导入数据库进行持久化,并以此作为应用关系分析的基础数据;
[0014]分析模块,对数据库中的数据进行协议类型识别及统计、应用识别及统计,以及未知应用的识别及统计;获取在指定时间范围内,协议类型的流量占比、指定应用名称或应用类型的流量排行以及未知应用的统计及标记。
[0015]根据本申请实施例的第三个方面,提供了一种电子设备,包括:
[0016]存储器;
[0017]处理器;以及
[0018]计算机程序;
[0019]其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如上所述的基于网络流量的应用关系分析方法。
[0020]根据本申请实施例的第四个方面,提供了一种计算机可读存储介质,其上存储有计算机程序;所述计算机程序被处理器执行以实现如上所述的基于网络流量的应用关系分析方法。
[0021]采用本申请实施例中提供的技术方案,具有以下技术效果:
[0022]本申请中,通过对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,得到流量聚合数据,降低实时传输数据量大的压力,方便以较低的代价分析数据,实用性极强。
附图说明
[0023]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0024]图1为本申请实施例提供的基于网络流量的应用关系分析方法的流程示意图;
[0025]图2为本申请实施例中步骤S20的流程示意图;
[0026]图3为本申请实施例中步骤S204的流程示意图;
[0027]图4为本申请实施例中步骤S205的流程示意图;
[0028]图5为本申请实施例中步骤S40的流程示意图;
[0029]图6为本申请实施例中黑/白名单的映射关系示意图;
[0030]图7为本申请实施例提供的基于网络流量的应用关系分析系统的结构示意图;
[0031]图中:
[0032]10为采集模块,20为数据处理模块,30为存储模块,40为分析模块。
具体实施方式
[0033]为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
[0034]在实现本申请的过程中,专利技术人发现,现有技术中通过抓包分析软件分析,只能进行少量的流量抓取,分析,不便于大量数据的分析工作。
[0035]鉴于此,本申请实施例中提供了基于网络流量的应用关系分析方法、系统、设备及介质,能够缓解实时传输数据量大的压力。
[0036]以下以通过具体的实施例对本申请的技术方案方案进行说明。
[0037]实施例一
[0038]如图1所示,基于网络流量的应用关系分析方法,包括以下步骤:
[0039]S10,监听网络流量信息并采集;
[0040]S20,对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,得到流量聚合数据;
[0041]S30,将流量聚合数据导入数据库进行持久化,并以此作为应用关系分析的基础数据;
[0042]S40,对数据库中的数据进行协议类型识别及统计、应用识别及统计,以及未知应用的识别及统计;获取在指定时间范围内,协议类型的流量占比、指定应用名称或应用类型的流量排行以及未知应用的统计及标记。
[0043]本实施例中,所述监听网络流量信息并采集,可通过对网络设备的流量镜像,将流量镜像到采集服务器的指定网卡,具体为:使用pcap4j工具库,基于java语言搭建流量采集探针服务,对服务器网卡进行监听,实现对数据包的捕获,从而采集到流量数据。
[0044]本申请中,通过对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,得到流量聚合数据,解决实时传输数据量大的压力,方便以较低的代价分析数据,实现了自动化采集、分析流量数据的目的。
[0045]如图2所示,所述步骤S20中,对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,包括:
[0046]S201,判断采集的数据是否为指定协议类型的数据包,如是,则执行步骤S202,否则,过滤掉该数据包;
[0047]S202,提取数据包信息,获取待分析字段信息;
[0048]S203,将提取的数据包信息放入待处理消息队列中;
[0049]S204,在待处理消息队列中拉取数据包信息,通过数据包指纹对数据包进行指定时间范围的去重,过滤掉重复数据包,并将滤重后的数据包加入到去重结果队列;
[0050]S205,将去重结果队列中的数据包进行聚合运算,得到流量聚合数据;
[0051]其中,所述待分析字段信息包括:数据包去重和数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于网络流量的应用关系分析方法,其特征在于,包括以下步骤:S10,监听网络流量信息并采集;S20,对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,得到流量聚合数据;S30,将流量聚合数据导入数据库进行持久化,并以此作为应用关系分析的基础数据;S40,对数据库中的数据进行协议类型识别及统计、应用识别及统计,以及未知应用的识别及统计;获取在指定时间范围内,协议类型的流量占比、指定应用名称或应用类型的流量排行以及未知应用的统计及标记。2.根据权利要求1所述的基于网络流量的应用关系分析方法,其特征在于,所述步骤S20中,对采集的流量数据进行数据包过滤、数据包去重和数据包聚合处理,包括:S201,判断采集的数据是否为指定协议类型的数据包,如是,则执行步骤S202,否则,过滤掉该数据包;S202,提取数据包信息,获取待分析字段信息;S203,将提取的数据包信息放入待处理消息队列中;S204,在待处理消息队列中拉取数据包信息,通过数据包指纹对数据包进行指定时间范围的去重,过滤掉重复数据包,并将滤重后的数据包加入到去重结果队列;S205,将去重结果队列中的数据包进行聚合运算,得到流量聚合数据;其中,所述待分析字段信息包括:数据包去重和数据包聚合所需的字段信息。3.根据权利要求2所述的基于网络流量的应用关系分析方法,其特征在于,所述步骤S204,包括:S2041,初始化全局数据包指纹对象延时队列;S2042,初始化清理全局数据包指纹队列任务线程;S2043,初始化全局数据包指纹缓存容器;其中,所述数据包指纹缓存容器为key

value结构,key为数据包指纹对象,value为固定空值;S2044,监听数据包指纹队列的数据包,若,未监听到数据包,则继续循环监听;否则,执行步骤S2045;S2045,拉取数据包指纹队列中的数据包,并包装数据包指纹对象,从数据包中提取指纹对象信息;其中,所述数据包指纹对象信息包括:源/目的地ip、源/目的地端口号、协议类型、payload hash、ip校验和、UDP数据报文长度、UDP校验和、TCP ACK序号、TCP SEQ序号、TCP FLAG信息、数据包长度;S2046,检查数据包指纹缓存容器的key集合是否包含当前数据包的指纹对象,若包含,则过滤掉重复的数据包,否则,将数据包指纹缓存对象作为key,value为固定空值存储到指纹缓存容器内;S2047,设定延时时间,将数据包指纹对象添加到指纹对象延时队列;以及将滤重后的数据包加入到去重结果队列;S2048,清理全局数据包指纹缓存容器任务运行;包括:S2048

1,判断指纹对象延时队列中的指纹对象停留时间是否超过设定的延时时间,若
超过,则执行步骤S2048

2,否则,继续判断指纹对象延时队列中的指纹对象停留时间是否超过设定的延时时间;S2048

2,拉取出指纹对象,并以指纹对象为key,从指纹缓存容器中删除与之对应的记录。4.根据权利要求2所述的基于网络流量的应用关系分析方法,其特征在于,所述步骤S205,包括:S2051,设定全局变量容器切换开关值;所述全局变量容器切换开关用于控制两个缓存容器的切换使用,以使两个缓存容器交替使用;S2052,启动定时任务,以使每个定时周期执行一次结果导出任务;S2053,监听去重结果队列的数据包,若,未监听到数据包,则继续循环监听;否则,执行步骤S2054;S2054,拉取去重结果队列中的数据包,并提取数据包的分组KEY;其中,分组KEY通过源/目的地ip、目的地端口号、协议类型的组合作为分组的依据;S2055,判断全局变量容器切换开关值,若开关值为1,则选择缓存容器A作为当前计算容器,否则,选择缓存容器B作为当前计...

【专利技术属性】
技术研发人员:杨凯敏史晶晶刘岚杜俊莲赵昌健王涛吕冬冬周健李浩男高晓梅樊蓉代汶君
申请(专利权)人:山西合力创新科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1