本发明属于通信网络技术领域,尤其涉及一种支持深度报文解析的精细化分流系统及方法。
背景技术:
分流系统是一种在通信网络中进行数据分光采集和分流的系统。随着互联网技术的高速发展,网络应用不断增加,现有的分流系统只能够对数据流量进行基于五元组acl(源地址、目的地址、源端口、目的端口以及协议类型)和特定位置关键字的识别与筛选,并负责按照同源同宿的方式对命中规则的数据进行分发,无法精确识别出数据流量所承载的应用类型,并按照应用类型对数据进行分类。
因此,现有分流系统的识别筛选能力弱、分流粒度不精,将使得大量低价值流量流向后端业务系统,从而导致系统建设扩容成本大幅增加。同时,现有分流系统的获取数据不精细,将导致系统建设封闭,无法建设开放平台,无法为第三方后台系统分流,造成成本、空间和功耗等资源的浪费。
技术实现要素:
发明目的:为解决现有技术方案中存在的技术问题,本发明提供了一种精细化分流系统及分流方法。
技术方案:一种精细化分流系统,该系统包括:数据采集模块、深度报文解析模块和报文分流模块,所述数据采集模块采集互联网报文;所述深度报文解析模块对采集的互联网报文进行深度解析,识别出该互联网报文的分析信息;所述报文分流模块根据应用规则对互联网报文进行精细化分流,并输出给业务系统分析服务器。
进一步,所述深度报文解析模块包含初始化单元、控制单元、深度报文识别引擎和报文信息提取单元;所述初始化单元和控制单元对深度报文识别引擎和报文信息提取单元进行加载和控制;所述深度报文识别引擎将所述的互联网报文进行dpi解析,并识别出该互联网报文的应用层信息;所述报文信息提取单元将深度报文识别引擎的识别信息进行提取。
进一步,所述深度报文识别引擎识别出的信息为应用名称、应用类别和提取的元数据信息。
进一步,所述报文分流模块包括五元组过滤单元、特征码过滤单元和报文信息匹配过滤单元;所述五元组是指源ip、目的ip、源端口、目的端口、协议号,将五元组作为key值建立哈希表,五元组过滤单元将互联网报文的五元组信息与系统配置的五元组规则进行比对,规则匹配后,根据规则动作进行分发处理;所述特征码是指用于描述互联网报文特征的一段字符串,特征码过滤单元将互联网报文的固定位置特征码信息与系统配置的特征码规则进行比对,规则匹配后,根据规则动作进行互联网报文处理;所述报文信息匹配过滤单元,将互联网报文使用匹配算法与系统配置的深度报文特征信息列表进行比对,实现报文信息过滤。
进一步,所述的匹配算法为数字范围比较、关键字匹配、正则表达式,将匹配结果再进行与或非逻辑运算。
进一步,所述的应用规则根据深度报文解析模块输出的应用信息设定。
本发明还给出一种精细化分流系统的分流方法,包括如下步骤:
(1)数据采集模块接收互联网报文,将接收的互联网报文发送给五元组过滤单元,并将该互联网报文复制给深度报文识别引擎;
(2)五元组过滤单元对互联网报文进行五元组匹配过滤,与系统上配置的五元组列表进行比对,若匹配成功,则按照匹配规则进行处理;若匹配失败,则将未被匹配的互联网报文发送给特征码过滤单元;
(3)特征码过滤单元对未被匹配的互联网报文进行特征码匹配过滤,若匹配成功,则按照匹配规则进行处理;若匹配失败,则将未被匹配的互联网报文发送给报文信息匹配过滤单元;
(4)深度报文识别引擎对接收的互联网报文进行dpi解析,并将识别后的dpi解析结果发送给报文信息提取单元;
(5)报文信息提取单元对识别后的dpi解析结果进行提取,并将识别结果发送给报文信息匹配过滤单元;
(6)报文信息匹配过滤单元接收报文信息提取单元的识别结果并形成规则,并根据报文的匹配规则对进入的流量进行不同的分发。
有益效果:本发明将现有分流系统的基于五元组acl或关键字过滤的分流技术提升为对报文结构七层应用的识别与过滤,互联网报文中的应用层信息能够在分流系统中被识别出来,并作为规则进行筛选。由于识别筛选能力的增强,业务细分得以实现,从而实现了后台系统的开放建设。此外,低价值数据能够在前端被有效终结,有效降低了流量增长对后端业务系统的扩容压力。
附图说明
图1是本发明的精细化分流系统的应用示意图;
图2是本发明的精细化分流系统的框图;
图3是本发明的精细化分流系统的分流流程图。
具体实施方式
下面结合具体实施例子对本发明作一步说明。
本实施例提供了一种精细化分流系统,如图1所示,该系统的输入为原始互联网报文,经过精细化分流系统输出精细化分类流量给各个台业务分析服务器系统即:输出给业务a分析服务器、业务b分析服务器、业务c分析服务器。业务系统通过规则下发到所述支持深度报文解析的精细化分流系统上,从而实现对筛选流量的控制。
图2为本发明的精细化分流系统的框图,如图2所示,所述系统包括:数据采集模块100、深度报文解析模块200和报文分流模块300。
所述数据采集模块100,负责互联网报文的采集,一般以并接或串接的方式,采集互联网报文;所述深度报文解析模块200,负责对采集后的互联网报文的深度解析,识别出互联网报文的详细分析信息,如:应用名称、应用类别、提取的元数据信息。元数据信息包括流信息(如:5元组信息、开始/结束时间、持续时间)、http信息、以及应用层信息等;所述报文分流模块300,负责互联网报文的通用解析,并根据配置的基于应用层面的规则对互联网报文进行精细化分流,输出细化后的分类互联网报文到后台业务系统。应用规则可基于深度报文解析模块200输出的应用信息设定,可配置按具体应用分流,如配置已支持应用(例如:百度、新浪、微信等),可按特定元数据分流,也可配置自定义应用规则(如:按指定uri特征分流、指定httppayload内容分流等)。
所述深度报文解析模块200包含初始化单元201、控制单元202、深度报文识别引擎203和报文信息提取单元204。所述初始化单元201和控制单元202,是模块的固有单元,主要负责模块内深度报文识别引擎203和报文信息提取单元204的加载和控制;所述深度报文识别引擎203,使用深度报文解析技术,将互联网报文进行dpi解析,识别出互联网报文的七层信息;所述报文信息提取单元204,负责从互联网报文中提取出dpi解析出的报文信息结果。
所述报文分流模块300包含初始化单元301、控制单元302、五元组过滤单元303、特征码过滤单元304和报文信息匹配过滤单元305。所述初始化单元301和控制单元302,是模块的固有单元,主要负责模块内五元组过滤单元303、特征码过滤单元304和报文信息匹配过滤单元305的加载和控制;所述五元组过滤单元303,五元组是指源ip、目的ip、源端口、目的端口、协议号,将五元组作为key值建立哈希表,将互联网报文的五元组信息与系统上配置的五元组规则进行比对,规则匹配后,根据规则动作,进行流量处理。规则动作可包括丢弃、通过、指定端口输出等;所述特征码过滤单元304,可以将互联网报文的固定位置特征码信息与系统上配置的特征码规则进行比对,规则匹配后,根据规则动作,进行流量处理;所述报文信息匹配过滤单元305,使用数字范围比较、关键字匹配、正则表达式等的与或非、运算、范围匹配等条件与系统上配置的深度报文信息列表进行比对,从而实现报文信息过滤。
图3为精细化分流系统的分流流程图,该系统的分流方法包括以下步骤:
s1.数据采集模块100接收互联网报文,将采集到的互联网报文发送给五元组过滤单元303,并将该互联网报文复制给深度报文识别引擎203;
s2.五元组过滤单元303对互联网报文进行五元组匹配过滤,与系统上配置的五元组列表进行比对,若匹配成功,则按照匹配规则进行处理;若匹配失败,则将未被匹配的互联网报文发送给特征码过滤单元304;
s3.特征码过滤单元304对未被匹配的互联网报文进行特征码匹配过滤,若匹配成功,则按照匹配规则进行处理;若匹配失败,则将未被匹配的互联网报文发送给报文信息匹配过滤单元305;
s4.深度报文识别引擎203对接收的互联网报文进行dpi解析,并将识别后的dpi解析结果发送给报文信息提取单元204;
s5.报文信息提取单元204对识别后的dpi解析结果进行提取,并将识别结果发送给报文信息匹配过滤单元305;
s6.报文信息匹配过滤单元305接收报文信息提取单元204的识别结果并形成规则,并根据报文的匹配规则对进入的流量进行不同的分发。
所述设备能够对采集到的互联网报文进行深度报文解析,从互联网报文中解析出应用id、位置、账号、关键字等信息,并能够基于这些报文信息配置规则对流量进行全方面的筛选,从而达到更精准的数据细分和收敛,提高分流设备的识别筛选能力和分流精度。