原文:http://www.youhua.net.cn/html/tc_tech/dpi.htm
DPI技术 版权声明 DPI是目前通过IP来识别和鉴定协议及应用(IP流)的最重要的技术。所谓“深度数据包检测”,“深度”是和标准数据包分析层次相比较而言的, “标准数据包检测”仅分析IP包的4层以下的基础信息,包括源IP地址、目的IP地址、源端口、目的端口以及连接状态,这些信息保存在数据包的4层以下的 包头内。见图一。
仅使用标准的数据包检测来分析鉴定协议及应用是不够的,比如新型的P2P协议所使用的端口是变化的,同样一个应用可能分到多个数据包,重要的数据信息并没有在包头内体现。
为了处理大量的互联网和网络应用及协议,一种系统化的鉴别手段必须被使
用。这个有点类似于法律中通过识别指纹来辨别每个人的情况,签名被用来鉴别应用和协议。在广义上,签名是被用来分析鉴别应用及协议的特征唯一性的手段,当
一个新的应用及协议被发明,同样会有相应的签名,这个签名会被识别和添加到签名数据库中。同样签名也是会不断变化的,比如
BitTorrent/eMule/Skype每升级一个新的版本,可能就会有新的签名,所以对签名的研究是需要持续不断的。如果应用在升级,而签名特征
库不被更新的话,应用及协议的识别会大打折扣。 例如,在图三中,显示了一个数据包的结构,如果只是通过常见的HTTP应 用签名特征进行判断, 就很容易将它误判为一个Web 访问的应用。因为如果我们只观察第一个签名特征样本(例如HTTP/1.1),那么它看上去很像是一个标准的HTTP协议。然而通过对数据包的负载部分的 进一步深入考察,我们发现了该数据包具有的第二个代码样本签名特征,即KaZaA,这样我们就能够了解这个数据包的真实身份和目的。有时候,不同的代码样 本签名特征是分散在一次协议会话的多个数据包之中的。为了能够准确的对应用进行识别,就必须使用精密的第7层协议侦测系统对往来的数据包进行分析,从而实 现与应用代码样本匹配。 |