文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

浅谈基于云网关的深度报文检测技术

2024-11-30 06:46

关注

1、系统架构

DPI系统架构采用转控分离的思想进行设计,主要包括数据转发面和控制管理面,控制管理面主要完成对规则的配置管理工作,数据转发面主要完成对报文应用层协议的解析和转发等工作。通过将数据转发面和控制管理面分离开来,对业务进行更好地维护和管理,从而提高系统的可维护性和可扩展性。

从控制管理层面上看,DPI各个业务模块的需求都可以抽象化成“规则”,基于这些规则定义可以生成不同的“分类”对象;规则同时具有“使能状态、报文动作”等属性,内部还设置有特征、选项等关键字部件。 控制管理层面的工作在用户态完成,主要工作包括:

从数据转发层面上看,DPI各个业务需求都需要对应用层协议进行解析、解码和搜索。为了保证高效转发和单次报文处理,有别于传统防火墙的设计思路,在新一代安全产品的实现过程中必须有并行的检测引擎,尽可能保证只对报文进行一次处理。数据转发层面的需求主要在内核态进行处理,涉及到的几个功能模块如下:

图1 DPI系统框架

DPI系统架构如图1所示,这种将控制管理层和数据转发层相互独立的设计模型,使得CPU密集型的引擎预处理(编译和下发)和高性能的搜索算法过程分离在用户态和内核态,也可以使得我们的预处理和匹配在不同的单板甚至不同的设备上进行,易于保证转发流程的检测持续性和稳定性,匹配也易于由软件查表扩展成硬件处理器来完成。

2、报文检测

DPI即深度包检测,所谓的“深度”是相对于传统的IP数据包检测技术而言的,如图2所示,传统的IP数据包检测仅仅分析IP报文应用层以下的内容,例如,根据接收到的IP报文的五元组信息(包括源地址、目的地址、源端口、目的端口以及协议类型)对数据报文进行分类处理,而DPI则对报文进行更深层次的检测,包括对报文进行应用层的分析或基于流量特征的检测,识别出报文对应的应用层业务类型或提取其中的应用层关键信息用于后续业务处理。

普通报文检测是通过端口号来识别应用类型的,比如:当检测到端口号为80时,就默认此应用协议为HTTP协议;当检测到端口号为443时,则默认此应用协议为HTTPS协议。但实际上,出于对应用安全性的考虑,通常不会使用默认端口来暴露业务能力,此时采用L2~L4层的传统检测方法就无能为力了。而DPI 技术能高效识别出网络上的各种应用类型,前提是后台需要维护一个庞大的应用特征数据库,当流量经过时,DPI通过将解包后得到的应用信息与后台的特征数据库进行匹配来确定应用类型。因此,当有新的应用出现时,后台的应用特征数据库也需要更新才能对具有新型应用的识别和控制能力。 

3、特征识别

基于特征字的识别技术是现网DPI 解析中命中流量最主要的DPI 技术,其原理就是不同的业务或应用通常有特殊的“指纹”,这些指纹可能是特定的字符串或者比特流,例如URL就是典型的特征字。基于这些特征字,通过对数据流中特定数据报文中的“指纹”信息进行检测来确定业务流承载的应用类型。此外,还可以基于荷载的特征进行识别,通过对应用层协议交互过程中报文的内容进行分析,找出不同于其他协议的模式特征,根据各种协议特有的模式特征来确定所属协议类型。基于负载的协议识别一般采用固定字符串和正则表达式来表示特征,正则表达式比固定字符串具有更强的表达能力和更好的灵活性,已成为研究DPI技术的热点。本文介绍的基于云网关的深度报文检测系统也是基于正则表达式来实现的,由正则表达式组成的应用特征库如图3所示。

DPI根据自身的应用特征库与数据报文进行匹配,当DPI接收到数据报文时,先对数据报文进行解析,提取报文的五元组信息和特征字信息。 如图4所示,从报文应用层提取的特征字信息为Host信息,根据此Host信息依次与应用特征库中的特征信息进行匹配,并获取相应的标记结果。

如若从报文应用层获取的特征字信息与应用特征库中的特征信息成功匹配,则可在应用特征库中查找到该特征信息对应的业务类型,并给该报文流打上相应的业务标记;如若未能成功匹配,就给报文打上一个未知标记,并将报文特征字信息及其标记结果更新到特征表中,后续云网关将根据特征表对报文流进行策略分流处理,特征表部分特征信息如表1所示。

表1 特征表

4、策略分流

特征匹配完成后,业务报文都会被打上一层应用类型的标记结果,云网关根据标记结果对报文进行策略路由选路,打上未知标记的报文都统一被送到公网服务器进行卸载,而打上其他标记结果的业务报文被分别送往不同的业务服务器进行分流处理。报文内部转发过程如图5所示,上述QQ业务类型的报文经过特征识别后会打上标记tag8,云网关根据标记结果配置相应的策略路由指定下一跳转发,这样QQ业务报文就被送到IP为192.168.2.10的业务服务器进行业务处理了。

5、总结

基于云网关的深度报文检测系统通过对报文的应用信息进行感知和识别,实现了对网络中各项具体业务运行情况的有效管理,主要包括业务识别、业务控制以及业务统计功能。

1) 业务识别:主要分为对运营商开通的合法业务和运营商需要进行监管的业务进行识别,第一类业务可以通过IP五元组来进行识别,第二类业务需要通过DPI技术来进行深度检测,通过解析数据包来确定业务具体内容和信息。

2)业务控制:可以根据既定的策略对网络进行配置,从而对业务流实现控制,主要包括转发流向、限制带宽、阻断、整形、丢弃等处理。

3)业务统计:根据DPI的识别结果对一定时间内的流量行为进行统计,包括:流量流向、业务占比、访问网站TOPN等。统计应用类型的使用比率调整该业务的服务优先级,统计用户正在使用哪种业务进行视频播放、即时通讯、购物支付以及游戏娱乐,也可以统计出消耗网络带宽的非法P2P、VOIP等业务。

来源:移动Labs内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯