加速DPI设备数据处理与转发的方法和DPI设备技术

技术编号:15867408 阅读:47 留言:0更新日期:2017-07-23 16:46
本发明专利技术公开了一种加速DPI设备数据处理与转发的方法和DPI设备,所述方法包括以下步骤:将接收到的流量均匀的分散到多个流量识别分类处理模块;每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息;根据预设的访问控制列表将经过流量识别分类处理模块处理后的流量进行过滤;将过滤后的流量经过限速和整形处理后进行转发。本发明专利技术的技术方案克服了现有技术提到的各种技术缺陷,对数据处理与转发速度有显著的提升。

Method and DPI device for accelerating data processing and forwarding of DPI device

The invention discloses an accelerated DPI device for data processing and forwarding method and DPI device, the method comprises the following steps: receiving the flow evenly distributed to a plurality of flow classification processing module; protocol testing flow on each traffic recognition processing module according to the received, and update connection tracking information; filtered according to the access control list default will be through the traffic recognition processing module processing flow; the filtered flow through the speed limit and plastic processing after forwarding. The technical proposal of the invention overcomes various technical defects mentioned in the prior art, and remarkably improves the speed of data processing and forwarding.

【技术实现步骤摘要】
加速DPI设备数据处理与转发的方法和DPI设备
本专利技术涉及网络
,特别涉及一种加速DPI设备数据处理与转发的方法和DPI设备。
技术介绍
近年来,网络发展越来越迅速,网络的规模不断扩大,网络的用户数不断增加,网络提供的应用和业务种类不断丰富,网络也变得越来越复杂。网络新业务层出不穷,有P2P、VoIP、流媒体、WebTV、音视频聊天、互动在线游戏和虚拟现实等。新业务的数据流量是相当巨大,在很大程度上加重了网络拥塞,降低了网络性能,劣化了网络服务质量,妨碍了正常的网络业务的开展和关键应用的普及。完善网络的运维管理仅仅是网络需求的一方面。随着大数据相关技术越来越受到关注,网络中的大数据蕴含的重大价值如何被充分挖掘出来也需要深入研究,这也提出了如何将网络中的大数据采集上来并很好的分门别类,从而方便在线分析和数据挖掘。深度包检测(DeepPacketInspection,DPI)是解决上述问题和满足上述需求的基础技术。DPI技术基于二层到七层网络协议的分析,能够实现对网络中数据的精确感知,从而做到对网络现状的精确把握。当前DPI主要使用专有的硬件设备,价格昂贵,这不便于升级与扩展,而通用设备则支持快速的升级与扩展但在性能上会有较大的下降。如何在通用平台上增强DPI设备的数据处理与转发能力便显得尤为重要。目前,现有DPI设备软件架构传统实现通常是将报文传给网卡,再送到内核netfilter模块处理,有的甚至需要把报文传递到TCP/IP上层协议处理,最后再将报文转发出去。整个过程要经历CPU中断处理、网络协议栈、内核上下文切换等多个费时的CPU操作和I/O处理环节,由此导致数据处理与转发速度降低,影响设备处理效率。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种加速深度包检测设备数据处理与转发的方法和深度包检测设备。所述技术方案如下:一方面,一种加速深度包检测设备数据处理与转发的方法,包括以下步骤:将接收到的流量均匀的分散到多个流量识别分类处理模块;每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息;将经过协议检测后的流量进行转发。进一步的,所述深度包检测设备至少包括第一网卡和第二网卡,其中,所述将接收到的流量均匀的分散到多个流量识别分类处理模块的步骤具体包括:判断流量是从所述第一网卡接收到还是从所述第二网卡接收到;如果流量是从所述第一网卡接收到,则确定接收到的流量为上行流量,并根据流量中报文的源IP地址或者源MAC地址将接收到的流量均匀的分散到多个流量识别分类处理模块;如果流量是从所述第二网卡接收到,则确定接收到的流量为下行流量,并根据流量中报文的目的IP地址或者目的MAC地址将接收到的流量均匀的分散到多个流量识别分类处理模块。进一步的,所述每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息的步骤具体包括:提取流量中报文的唯一标识;根据所述唯一标识判断该报文是否属于已有的连接跟踪;如果该报文不是属于已有的连接跟踪,则以该报文的唯一标识为键值为该报文创建新的连接跟踪,并进行协议检测,以及记录检测到的连接跟踪信息。进一步的,所述每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息的步骤具体还包括:如果该报文属于已有的连接跟踪,则判断该报文所属的连接跟踪是否完成协议检测;如果没有完成协议检测,则进行协议检测;如果完成了协议检测,则更新该报文所属的连接跟踪信息。进一步的,所述将经过协议检测后的流量进行转发的步骤包括:根据预设的访问控制列表将经过流量识别分类处理模块处理后的流量进行过滤;将过滤后的流量经过限速和整形处理后进行转发。进一步的,所述将过滤后的流量经过限速和整形处理后进行转发的步骤具体包括:将过滤后的上行流量经过限速和整形处理后通过所述第二网卡进行转发;或者将过滤后的下行流量经过限速和整形处理后通过所述第一网卡进行转发。进一步的,所述加速深度包检测设备设有多核CPU,所述每个流量识别分类处理模块通过任务绑定到每个CPU核上。进一步的,采用轮询模式接收和转发报文,并且不同的CPU核与核之间通过共享内存方式进行通信。进一步的,且加速深度包检测设备的内存采用大页内存管理方式。进一步的,所述方法还包括以下步骤:对于已经深度检测多个报文仍然无法确定协议类型的数据连接,则放弃该条数据连接的检测。另一方面,一种深度包检测设备,包括负载均衡模块、访问控制模块、QOS模块和多个流量识别分类处理模块,其中,所述负载均衡模块,用于将接收到的流量均匀的分散到多个流量识别分类处理模块;每一个流量识别分类处理模块,用于根据各自所接收到的流量进行协议检测,并更新连接跟踪信息;所述访问控制模块,用于根据预设的访问控制列表将经过流量识别分类处理模块处理后的流量进行过滤;所述QOS模块,用于将过滤后的流量经过限速和整形处理后进行转发。进一步的,所述深度包检测设备至少包括第一网卡和第二网卡,其中,所述负载均衡模块具体用于:判断流量是从所述第一网卡接收到还是从所述第二网卡接收到;如果流量是从所述第一网卡接收到,则确定接收到的流量为上行流量,并根据流量中报文的源IP地址或者源MAC地址将接收到的流量均匀的分散到多个流量识别分类处理模块。进一步的,所述负载均衡模块具体还用于:如果流量是从所述第二网卡接收到,则确定接收到的流量为下行流量,并根据流量中报文的目的IP地址或者目的MAC地址将接收到的流量均匀的分散到多个流量识别分类处理模块。进一步的,每一个流量识别分类处理模块,具体用于:提取流量中报文的唯一标识;根据所述唯一标识判断该报文是否属于已有的连接跟踪;如果该报文不是属于已有的连接跟踪,则以该报文的唯一标识为键值为该报文创建新的连接跟踪,并进行协议检测,以及记录检测到的连接跟踪信息。进一步的,每一个流量识别分类处理模块,具体还用于:如果该报文属于已有的连接跟踪,则判断该报文所属的连接跟踪是否完成协议检测;如果没有完成协议检测,则进行协议检测;如果完成了协议检测,则更新该报文所属的连接跟踪信息。进一步的,所述访问控制列表包括白名单访问控制列表或者黑名单访问控制列表,其中,所述访问控制模块,具体用于:将流量中与预设白名单访问控制列表相符的报文转发,将流量中与预设白名单访问控制列表不相符的报文丢弃;或者将流量中与预设黑名单访问控制列表相符的报文丢弃,将流量中与预设黑名单访问控制列表不相符的报文转发。进一步的,所述QOS模块,具体用于:将过滤后的上行流量经过限速和整形处理后通过所述第二网卡进行转发;或者将过滤后的下行流量经过限速和整形处理后通过所述第一网卡进行转发。本专利技术实施例提供的技术方案带来的有益效果包括:(1)通过绑定任务到多个CPU上,并行执行以提升效率,不同的业务在相互独立的CPU上面处理,业务之间互不干扰,不会抢占CPU,从而也可以充分利用每一个CPU核的资源,同时本专利技术还可以定制一些业务,如流量数据收集业务、系统日志业务、流量控制业务、流量异常提醒等;(2)根据报文的连接跟踪信息判断报文是否需要协议深度检测,还是进入下一步处理,对已完成检测的报文不需要重新检测,从而减少了冗余处理。使用连接跟踪表来记录连接状态,大部分数据连接仅需检本文档来自技高网
...
加速DPI设备数据处理与转发的方法和DPI设备

【技术保护点】
一种加速深度包检测设备数据处理与转发的方法,其特征在于,所述方法包括以下步骤:将接收到的流量均匀的分散到多个流量识别分类处理模块;每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息;将经过协议检测后的流量进行转发。

【技术特征摘要】
1.一种加速深度包检测设备数据处理与转发的方法,其特征在于,所述方法包括以下步骤:将接收到的流量均匀的分散到多个流量识别分类处理模块;每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息;将经过协议检测后的流量进行转发。2.如权利要求1所述的加速深度包检测设备数据处理与转发的方法,其特征在于,所述深度包检测设备至少包括第一网卡和第二网卡,其中,所述将接收到的流量均匀的分散到多个流量识别分类处理模块的步骤具体包括:判断流量是从所述第一网卡接收到还是从所述第二网卡接收到;如果流量是从所述第一网卡接收到,则确定接收到的流量为上行流量,并根据流量中报文的源IP地址或者源MAC地址将接收到的流量均匀的分散到多个流量识别分类处理模块;如果流量是从所述第二网卡接收到,则确定接收到的流量为下行流量,并根据流量中报文的目的IP地址或者目的MAC地址将接收到的流量均匀的分散到多个流量识别分类处理模块。3.如权利要求1所述的加速深度包检测设备数据处理与转发的方法,其特征在于,所述每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息的步骤具体包括:提取流量中报文的唯一标识;根据所述唯一标识判断该报文是否属于已有的连接跟踪;如果该报文不是属于已有的连接跟踪,则以该报文的唯一标识为键值为该报文创建新的连接跟踪,并进行协议检测,以及记录检测到的连接跟踪信息。4.如权利要求3所述的加速深度包检测设备数据处理与转发的方法,其特征在于,所述每一个流量识别分类处理模块根据各自所接收到的流量进行协议检测,并更新连接跟踪信息的步骤具体还包括:如果该报文属于已有的连接跟踪,则判断该报文所属的连接跟踪是否完成协议检测;如果没有完成协议检测,则进行协议检测;如果完成了协议检测,则更新该报文所属的连接跟踪信息。5.如权利要求2所述的加速深度包检测设备数据处理与转发的方法,其特征在于,所述将经过协议检测后的流量进行转发的步骤包括:根据预设的访问控制列表将经过流量识别分类处理模块处理后的流量进行过滤;将过滤后的流量经过限速和整形处理后进行转发。6.如权利要求5所述的加速深度包检测设备数据处理与转发的方法,其特征在于,所述将过滤后的流量经过限速和整形处理后进行转发的步骤具体包括:将过滤后的上行流量经过限速和整形处理后通过所述第二网卡进行转发;或者将过滤后的下行流量经过限速和整形处理后通过所述第一网卡进行转发。7.如权利要求1所述的加速深度包检测设备数据处理与转发的方法,其特征在于,所述加速深度包检测设备设有多核CPU,所述每个流量识别分类处理模块通过任务绑定到每个CPU核上。8.如权利要求7所述的加速深度包检测设备数据处理与转发的方法,其特征在于,采用轮询模式接收和转发报文,并且不同的CPU核与核之间通过共享内存方式进行通信。9.如权利要求7所述的加速深度包检测设备数据处理与转...

【专利技术属性】
技术研发人员:程杜勇曹志文吴胜万许加烜
申请(专利权)人:网宿科技股份有限公司
类型:发明
国别省市:上海,31

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

1