1.DPI(深度包检测)
传统的IP包流量识别和QoS控制技术,仅对IP包头中的“5Tuples”,即五元组信息进行分析,来确定当前流量的基本信息,传统IP路由器也是通过这一系列信息来实现一定程度的流量识别和QoS保障的,但其仅仅分析IP包的四层以下的内容,包括源地址、目的地址、源端口、目的端口以及协议类型,随着网上应用类型的不断丰富,仅通过第四层端口信息已经不能真正判断流量中的应用类型,更不能应对基于开放端口、随机端口甚至采用加密方式进行传输的应用类型。
DPI技术在分析包头的基础上,增加了对应用层的分析,是一种基于应用层的流量检测和控制技术,当IP数据包、TCP或UDP数据流经过基于DPI技术的宽带管理系统时,该系统通过深入读取IP包载荷的内容来对OSI7层协议中的应用层信息进行重组,从而得到整个应用程序的内容,然后按照系统定义的管理策略对流量进行整形操作。
针对不同类型的协议,DPI识别技术主要分为:
(1)特征字的识别技术
不同的应用通常采用不同的协议,而各种协议都有其特殊的指纹,这些指纹可能是特定的端口、字符串或Bit序列。基于特征字的识别技术通过识别数据报文中的指纹信息来确定业务所承载的应用。根据具体检测方式不同,可以分为固定特征位置匹配、变动特征位置匹配和状态特征字匹配。
(2)应用层网关识别技术
在业务中,有一类的控制流和业务流是分离的,首先由应用层网管识别出控制流,并根据控制流协议选择特定的应用层网关对业务流进行解析,从而识别出相应的业务流。其业务流没有任何特征。
(3)行为模式识别技术
运营商首先必须对终端的各种行为进行研究,并在此基础上建立行为识别模型。根据客户已经实施的行为,判断客户正在进行的动作或者即将实施的动作。例如:从邮件的内容看,垃圾邮件和普通邮件的业务流两者之间根本没有区别,只有进一步分析,具体根据发送邮件的大小、频率、目的邮件和源邮件地址、变化频率和被拒绝的频率等综合分析。
可以把深度包检测总结为以下几个方面:
·深度包检测,增加了对应用层分析,识别各种应用;
·对应用流中的数据报文内容进行探测,从而确定数据报文真正应用;
·基于“特征字”的识别技术;
·应用层网关识别技术;
·行为模式识别技术。
目前,深度包检测技术可以用多种分析方法来识别和分类数据流量,这些方法包括端口识别法、字符串匹配法、数值属性法、行为和启发式方法等。我们主要利用字符串匹配法和行为和启发式方法实现上述功能。
2.DFI
与DPI进行应用层的载荷匹配不同,DFI采用一种基于流量行为的应用识别技术,即不同的应用类型体现会话连接或者数据流是哪个的状态各有不同。通过分析会话连接流的包长、连接速率、传输字节值、包与包之间的间隔等信息来与流量模型对比,从而鉴定应用类型。
深度流检测技术主要分为三部分:流特征选择、流特征提取、分类器。其中常见的流特征有:
·流中数据包的总个数;
·流中数据包的总大小;
·流的持续时间;
·在一定的流深度,流中包的最小、最大长度及均方差;
·在一定的流深度,流中最小、最大时间及均方差;
·在一定的流深度,某方向上的数据包总和。
在深度流检测中,首先对会话流进行识别,提取其流特征,然后经由分类器进行分析,如果判断为异常,则可采取相应的处理行为:如果判断为可疑流量,则可结合其他方法如上下行流量对称法、时间跨度均衡法、行为链关联法进行延迟监控判别。
3.DPI和DFI优缺点
由于DPI技术与DFI技术实现机制不同,故它们在实现效果上各有优点,表现在如下几个方面:
(1) DFI处理速度相对快:采用DPI技术由于要逐包进行拆包操作,并与后台数据库进行匹配对比;采用DFI技术进行流量分析仅需将流量特征与后台流量模型比较即可。
(2) DFI维护成本相对较低:基于DPI技术的带宽管理系统,总是滞后新应用,需要紧跟新协议和新型应用的产生而不断升级后台应用数据库,否则就不能有效识别、管理新技术下的带宽,提高模式匹配效率;而基于DFI技术的系统在管理维护上的工作量要少于DPI系统,因为同一类型的新应用与旧应用的流量特征不会出现大的变化,因此不需要频繁升级流量行为模型。
(3) 识别准确率方面各有千秋:由于DPI采用逐包分析、模式匹配技术,因此,可以对流量中的具体应用类型和协议做到比较准确的识别;而DFI仅对流量行为分析,因此只能对应用类型进行笼统分类,如对满足P2P流量模型的应用统一识别为P2P流量。如果数据包是经过加密传输的,则采用DPI方式的流控技术则不能识别其具体应用,而DFI方式的流控技术则不受影响,因为应用流的状态行为特征不会因加密而根本改变。
资料较少,如果需要深入了解和应用,多去查看相关论文。