公开/公告号CN106453550A
专利类型发明专利
公开/公告日2017-02-22
原文格式PDF
申请/专利权人 武汉烽火网络有限责任公司;
申请/专利号CN201610880585.X
申请日2016-10-09
分类号H04L29/08;H04L12/26;
代理机构北京捷诚信通专利事务所(普通合伙);
代理人王卫东
地址 430074 湖北省武汉市东新区创业街67号关东光通信产业大楼
入库时间 2023-06-19 01:41:15
法律状态公告日
法律状态信息
法律状态
2019-08-27
授权
授权
2019-02-01
专利申请权的转移 IPC(主分类):H04L29/08 登记生效日:20190115 变更前: 变更后: 申请日:20161009
专利申请权、专利权的转移
2017-03-22
实质审查的生效 IPC(主分类):H04L29/08 申请日:20161009
实质审查的生效
2017-02-22
公开
公开
技术领域
本发明涉及深度包检测技术领域,具体涉及一种基于云计算的深度包检测系统及方法。
背景技术
Deep Packet Inspection,深度包检测,通常简称为DPI。所谓“深度”是和普通的报文分析层次相比较而言的,“普通报文检测”仅分析IP包的层4以下的内容,包括源地址、目的地址、源端口、目的端口以及协议类型,而DPI技术基于从二层到七层网络协议的分析,能够实现对网络中数据的精确感知,从而做到对网络现状的精确把握。
目前进行DPI检测采用单个DPI设备或由多个DPI设备组成的DPI系统完成DPI功能。这一方式存在以下缺陷:首先,DPI规则库随着网络信息量的不断增大而变得越来越庞大,已不是独立DPI系统的存储资源能够存储的。其次,网络的流量不断增长也使得独立DPI系统的计算资源不能够满足DPI操作的需要。再者,若通过升级硬件来提高DPI系统的存储资源和计算资源,则作为独立的DPI系统的硬件投入巨大,由于网络环境的差异,其资源并不都能够被充分利用,从造成了资源浪费。
同时,若独立的DPI系统中某个DPI设备出现故障,将导致整个系统无法使用。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于云计算的深度包检测系统及方法,能解决独立DPI系统的存储资源不能满足DPI规则库存储需求的问题以及其计算资源不能满足网络流量需求的问题,也能避免不断升级独立DPI系统硬件资源带来的巨大浪费。
为达到以上目的,本发明采取的技术方案是:一种基于云计算的深度包检测系统,包括:端DPI子系统,DPI云代理及控制子系统和DPI云子系统,其中:
端DPI子系统,其用于接收网络中的数据包,对数据包执行依赖其自身的配置资源可以处理的DPI操作,得到端DPI子系统处理结果;将需要发送至DPI云子系统处理的数据包通过DPI云代理及控制子系统发送给DPI云子系统;根据端DPI子系统处理结果和云端处理结果形成对数据包的操作指令并执行该操作指令。
DPI云代理及控制子系统,用于向DPI云子系统和端DPI子系统配置DPI规则和其它信息;分别与端DPI子系统、DPI云子系统连接,实现端DPI子系统和DPI云子系统之间的信息中转;
DPI云子系统,用于接收端DPI子系统通过DPI云代理及控制子系统发来的数据包,对数据包执行端DPI子系统依赖其配置资源不能处理的DPI操作,得到云端处理结果,并将云端处理结果通过DPI云代理及控制子系统发送至端DPI子系统。
在上述技术方案的基础上,所述DPI云代理及控制子系统还用于向端DPI子系统发送配置命令。
在上述技术方案的基础上,是否将数据包发送至DPI云代理及控制子系统处理,由端DPI子系统根据DPI云代理及控制子系统的发送的配置指令判断。
在上述技术方案的基础上,所述端DPI子系统包括至少一个端DPI节点;所述端DPI节点可以是独立DPI处理设备或支持DPI功能的网络设备。
在上述技术方案的基础上,所述DPI云子系统包括多个DPI云节点和至少一个云控制中心,所述DPI云节点包括存储资源和计算资源;所述云控制中心用于统一管理和协调DPI云子系统中所有DPI云节点的存储资源和计算资源。
在上述技术方案的基础上,各DPI云节点既可以调用自身存储的DPI规则也可以调用其它DPI云节点存储的DPI规则。
在上述技术方案的基础上,DPI云代理及控制子系统实现端DPI子系统和DPI云子系统之间的信息中转包括:将端DPI子系统发来的的数据包发送至DPI云子系统,并将DPI云子系统发来的对数据包的处理结果发送至端DPI子系统。
本发明还公开了一种基于云计算的深度包检测方法,其特征在于:
S1,DPI云代理及控制子系统将需要配置的DPI规则配置到端DPI子系统和DPI云子系统;
S2,DPI云代理及控制子系统向端DPI子系统发送配置指令;
S3,端DPI子系统接收到数据包时,基于端DPI子系统存储的DPI规则进行DPI操作,得到对该数据包的端DPI子系统处理结果;
S4,端DPI子系统根据DPI云代理及控制子系统的发送的配置指令判断是否将数据包发送至DPI云代理及控制子系统处理;若是,进入步骤S6;若否,进入步骤S5;
S5,端DPI子系统根据自身对该数据包的端DPI子系统处理结果执行对数据包的操作,结束;
S6,端DPI子系统通过DPI云代理及控制子系统将需处理的数据包发送至DPI云子系统;
S7,DPI云子系统接收到数据包后,基于DPI云存储的DPI规则进行DPI操作,得对该数据包的云端处理结果;并将云端处理结果通过DPI云代理及控制子系统发送至端DPI子系统;
S8,端DPI子系统接收到云端处理结果后,与端DPI子系统处理结果合并形成对数据包的操作指令并执行该操作指令,结束。
在上述技术方案的基础上,步骤S1的具体过程包括:
S101,DPI云代理及控制子系统将需要配置的DPI规则配置到端DPI子系统;若配置成功,进入步骤S102;若配置失败,进入步骤S103;
S102,该规则配置完成,结束;
S103,DPI云代理及控制子系统将该规则配置到对应的DPI云;若配置成功,进入步骤S104;若配置失败,进入步骤S105;
S104,该规则配置完成,结束;
S105,DPI云代理及控制子系统向发起该规则的实体返回失败信息,结束。
在上述技术方案的基础上,端DPI子系统通过DPI云代理及控制子系统将需处理的数据包发送至DPI云子系统和DPI云子系统将云端处理结果通过DPI云代理及控制子系统发送至端DPI子系统过程中,采用加密算法对发送的信息进行加密。
与现有技术相比,本发明的优点在于:
1、本发明是基于云计算架构,采用端DPI子系统,DPI云代理及控制子系统三个子系统共同组成深度包检测系统,端DPI子系统对数据包执行依赖其自身的配置资源可以处理的DPI操作后,将需要发送至DPI云子系统处理的数据包通过DPI云代理及控制子系统发送给DPI云子系统,通过DPI云子系统的整体存储资源和计算资源执行DPI操作,系统的存储能力和计算能力大大增强,且避免不断升级独立DPI系统硬件资源带来的巨大浪费。
2、本发明基于云计算架构,DPI云子系统可扩展性强,任何独立DPI系统均可通过云网络加入DPI云子系统,无须升级硬件即可实现系统扩展。
3、本发明中整个DPI云子系统的DPI规则存储、DPI操作是统一协调、统一处理的,对于端DPI子系统来说,整个DPI云子系统就等价于一个独立的端DPI节点。因此,即使某DPI云节点出故障,整个系统依然可正常使用。
附图说明
图1是背景技术中独立DPI系统的结构示意图。
图2是本发明实施例中基于云计算的深度包检测系统的结构示意图。
图3为本发明实施例中基于云计算的深度包检测系统的拓扑结构示意图;
图4是本发明实施例中基于云计算的深度包检测系统的各子系统数据交换示意图;
图5是背景技术中独立DPI系统的DPI规则表存储示意图。
图6是本发明实施例中基于云计算的深度包检测系统的DPI规则表存储示意图。
图7为本发明实施例中基于云计算的深度包检测方法的流程示意图;
图8为本发明实施例中基于云计算的深度包检测方法步骤S1的流程示意图。
具体实施方式
以下结合附图及实施例对本发明作进一步详细说明。
参见图2和图3所示,本发明实施例提供一种基于云计算的深度包检测系统包括:端DPI子系统,DPI云代理及控制子系统和DPI云子系统,其中:端DPI子系统,其用于接收网络中的数据包,对数据包执行依赖其自身的配置资源可以处理的DPI操作,得到端DPI子系统处理结果;将需要发送至DPI云子系统处理的数据包通过DPI云代理及控制子系统发送给DPI云子系统;根据端DPI子系统处理结果和云端处理结果形成对数据包的操作指令并执行该操作指令。如丢弃、镜像、重定向、修改、上报等等,端DPI子系统负责执行上述操作。
DPI云代理及控制子系统,用于向DPI云子系统和端DPI子系统配置DPI规则;分别与端DPI子系统、DPI云子系统连接,实现端DPI子系统和DPI云子系统之间的信息中转;
DPI云子系统,用于接收端DPI子系统通过DPI云代理及控制子系统发来的数据包,对数据包执行端DPI子系统依赖其配置资源不能处理的DPI操作,得到云端处理结果,并将云端处理结果通过DPI云代理及控制子系统发送至端DPI子系统。
参见图4所示,DPI云代理及控制子系统实现端DPI子系统和DPI云子系统之间的信息中转包括:将端DPI子系统发来的的数据包发送至DPI云子系统,和将DPI云子系统发来的对数据包的处理结果发送至端DPI子系统。
参见图4所示,DPI云代理及控制子系统还用于向端DPI子系统发送配置命令。是否将数据包发送至DPI云代理及控制子系统处理,由端DPI子系统根据DPI云代理及控制子系统的发送的配置指令判断。
参见图2所示,所述端DPI子系统包括至少一个端DPI节点;端DPI节点可以是独立DPI处理设备或支持DPI功能的网络设备。DPI处理设备用于执行DPI操作,DPI处理设备通过支持DPI功能的网络设备连接网络。
DPI云代理及控制子系统包括至少一个DPI云代理及控制节点。参见图2所示,DPI云子系统包括多个DPI云节点和至少一个云控制中心,DPI云节点包括存储资源和计算资源;云控制中心用于统一管理和协调DPI云子系统中所有DPI云节点的存储资源和计算资源。云控制中心可以独立存在或嵌入在DPI云节点中。DPI云子系统可扩展性强,任何独立DPI系统均可通过云网络加入DPI云子系统,无须升级硬件即可实现系统扩展。
参见图2所示,DPI操作的执行在各DPI云节点之间的分配并无限制,可根据各个DPI云节点的硬件资源情况来确定,整个DPI云子系统的DPI规则存储、DPI操作是统一协调、统一处理的,对于端DPI子系统来说,整个DPI云子系统就等价于一个独立的端DPI节点。因此,即使某DPI云节点出故障,整个系统依然可正常使用。可以由以下几个例子说明上述特点:
假设DPI云子系统包括DPI云节点A、B、C、D、E、F;
DPI云节点A存储资源大而计算资源弱,可以配置DPI云节点A仅存储DPI规则,而不必执行DPI处理。
假设DPI云节点B存储资源小而计算资源强,可以配置DPI云节点B仅执行DPI处理,DPI规则可以使用其它DPI云节点的存储资源。
假设DPI云节点C存储资源和计算资源都可以用,则可以配置DPI云节点B不仅存储DPI规则,同时执行DPI处理,DPI规则可以使用本节点的或其它DPI云节点的存储资源。
假设DPI云节点D、E、F均可用,可以配置DPI云节点D、E、F协同处理,例如可以配置DPI云节点D、E、F分别处理不同协议的数据包,也可以配置DPI云节点D、E、F分别处理同一数据包的不同字段。
端DPI子系统接收网络中的数据包并发送至DPI云代理及控制子系统时,有两种方式:1、所有数据包全部发送至DPI云代理及控制子系统。2、仅发送与端DPI子系统存储的全部DPI规则均不匹配的数据包。此外,可以根据具体需要定义扩展选项。例如:1、向上提交长数据包;2、向上提交某种协议的数据包;3、向上提交某个用户流的数据包。
参见图1和图2所示,本发明中端DPI子系统相对于传统的独立DPI系统可以简化,如端DPI子系统包括至少一个端DPI节点;端DPI节点可以是独立DPI处理设备或支持DPI功能的网络设备。传统的独立DPI系统包括数个DPI设备和控制DPI设备的控制中心,DPI设备包括DPI处理单元和DPI规则库,还具有DPI处理单元和DPI规则库的控制器。
参见图2所示,而DPI云子系统中的DPI云节点既可与端DPI节点的结构相同,也可以不同,并且各DPI云节点结构可以不同。例如,DPI云节点A包括DPI处理单元和DPI规则库;DPI云节点B仅包括DPI处理单元;DPI云节点C仅包括DPI规则库。
参见图5所示,传统的独立DPI系统的各DPI设备之间的存储的DPI规则形成DPI规则表,各DPI设备的DPI规则表不共享。参见图6所示,本发明各DPI云节点既可以调用自身存储的DPI规则也可以调用其它DPI云节点存储的DPI规则。各DPI云节点存储的DPI规则形成DPI规则表,各DPI云节点之间共享其DPI规则表,DPI规则表的调用非常灵活。
本发明是基于云计算架构,采用端DPI子系统,DPI云代理及控制子系统三个子系统共同组成深度包检测系统,端DPI子系统依赖其配置资源不能处理的DPI操作,在DPI云代理及控制子系统的控制下发送数据包至DPI云子系统,通过DPI云子系统的整体存储资源和计算资源执行DPI操作,其存储能力和计算能力大大增强,且避免不断升级独立DPI系统硬件资源带来的巨大浪费。
参见图7所示,本发明还公开了一种基于云计算的深度包检测方法,包括以下步骤:
S1,DPI云代理及控制子系统将需要配置的DPI规则配置到端DPI子系统和DPI云子系统;
S2,DPI云代理及控制子系统向端DPI子系统发送配置指令;
S3,端DPI子系统接收到数据包时,基于端DPI子系统存储的DPI规则进行DPI操作,得到对该数据包的端DPI子系统处理结果;如果端DPI子系统处理结果为空,则表明该数据包在该端DPI子系统存储的DPI规则中无匹配。
S4,端DPI子系统根据DPI云代理及控制子系统的发送的配置指令判断是否将数据包发送至DPI云代理及控制子系统处理;若是,进入步骤S6;若否,进入步骤S5;
S5,端DPI子系统根据自身对该数据包的端DPI子系统处理结果执行对数据包的操作,结束;
S6,端DPI子系统通过DPI云代理及控制子系统将需处理的数据包发送至DPI云子系统;
S7,DPI云子系统接收到数据包后,基于DPI云存储的DPI规则进行DPI操作,得对该数据包的云端处理结果;并将云端处理结果通过DPI云代理及控制子系统发送至端DPI子系统;
S8,端DPI子系统接收到云端处理结果后,与端DPI子系统处理结果合并形成对数据包的操作指令并执行该操作指令,结束。
参见图8所示,步骤S1的具体过程包括:
S101,DPI云代理及控制子系统将需要配置的DPI规则配置到端DPI子系统;若配置成功,进入步骤S103;若配置失败,进入步骤S102;
S102,DPI云代理及控制子系统将该规则配置到对应的DPI云;若配置成功,进入步骤S103;若配置失败,进入步骤S104;
S103,该规则配置完成,结束;
S104,DPI云代理及控制子系统向发起该规则的实体返回失败信息,结束。
端DPI子系统通过DPI云代理及控制子系统将需处理的数据包发送至DPI云子系统和DPI云子系统将云端处理结果通过DPI云代理及控制子系统发送至端DPI子系统过程中,采用加密算法对发送的信息进行加密。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
机译: 一种基于云计算的保险合同处理系统,一种方法以及一种用于减少纸张形式和文件数量的相关业务管理工具
机译: 一种基于任务截止时间的云计算网络带宽分配方法和系统
机译: 云计算系统,一种云计算系统及其管理应用程序的控制方法,