【DPI】精讲深度数据包检测技术基础
目录
1. DPI概念
1.1 核心原理与机制
1.2 关键技术方法
2. DPI和传统包过滤有什么区别?
3. DPI如何运行工作
4. DPI部署架构
5. 应用场景
6. 优缺点与挑战
7. 与DFI技术的对比
1. DPI概念
深度数据包检测(英语:Deep packet inspection,缩写为 DPI),又称完全数据包探测(complete packet inspection)或信息萃取(Information eXtraction,IX),是一种计算机网络数据包过滤技术,用来检查通过检测点之数据包的数据部分(亦可能包含其标头),以搜索不匹配规范之协议、病毒、垃圾邮件、入侵,或以预定之准则来决定数据包是否可通过或需被路由至其他不同目的地,亦或是为了收集统计数据之目的。IP数据包有许多个标头;正常运作下,网络设备只需要使用第一个标头(IP标头),而使用到第二个标头(TCP、UDP等)则通常会与深度数据包检测相对,而被称之为浅度数据包检测(一般称为状态数据包检测)。
深度数据包检测(DPI,Deep Packet Inspection)是一种网络流量分析技术,通过检查数据包的完整内容(包括应用层数据)实现精细化识别和管理。以下为技术要点:
1.1 核心原理与机制
- 检测层次:在OSI模型的应用层工作,不仅分析包头信息(如IP地址、端口),还解析数据包的有效载荷。
- 技术流程:
- 数据捕获:通过端口镜像或光纤分光器获取网络流量。
- 内容解析:识别协议类型、应用行为及数据特征,如HTTP请求、视频流等。
- 分类控制:基于预定义规则(如特征库、行为模式)对流量分类,并执行阻断、限速或标记等策略。
1.2 关键技术方法
- 特征匹配:基于已知协议或攻击的特征字(如特定字符串、协议字段)进行精准识别,适用于非加密流量。
- 行为分析:通过流量模式(如传输频率、连接数)判断应用类型,例如识别P2P高频传输行为。
- 应用网关协同:针对信令与数据分离的场景(如视频流),利用信令协商信息辅助识别后续数据流。
2. DPI和传统包过滤有什么区别?
网络中的每个数据包都有一个包头,其中包含关于其发送者、接收者和传输时间的基本信息。使用传统的数据包过滤只能读取到此信息。较旧的防火墙通常以这种方式运行,因为它们无法足够快地处理其他形式的数据。现在,防火墙可以通过DPI来解决这些问题,以进行更彻底、连续的数据包扫描。DPI提取或过滤数据包头以外的数据,以实现更彻底、更复杂的网络监控和防御。
DPI和传统包过滤的区别
DPI 是网络安全生态系统的重要组成部分。不仅仅是简单地查看传入的数据包以检测协议异常,DPI还可以根据需要对数据包进行分析、查找和阻止。这与标准网络数据包过滤形成对比,后者根据源和目的地对数据包进行排序。
3. DPI如何运行工作
传统防火墙通常缺乏对大量流量进行彻底实时检查的处理能力。随着技术的进步,可以使用DPI 执行更复杂的查验,以检查包头和数据。通常,带有入侵检测系统的防火墙经常使用 DPI。在数字信息至上的世界中,每一条数字信息都是以小数据包的形式通过互联网提供的。包括电子邮件、通过应用程序发送的消息、访问过的网站、视频对话等等。除了实际数据之外,这些数据包还包括标识流量源、内容、目的地和其他重要信息的元数据。使用数据包过滤技术,可以持续监控和管理数据,以确保将其转发到正确的位置。但要确保网络安全,传统的数据包过滤是远远不够的。下面列出了网络管理中深度包检测的一些主要方法:
- 匹配模式/签名
每个数据包都由具有入侵检测系统 (IDS) 功能的防火墙针对已知网络攻击数据库进行匹配检查。IDS搜索已知的恶意特定模式,并在发现恶意模式后禁用流量。签名匹配策略的缺点是它只适用于频繁更新的签名。此外,这种技术只能抵抗已知的威胁或攻击。
DPI中的模式匹配
-
协议异常
由于协议异常技术不是简单地允许所有与签名数据库不匹配的数据,所以IDS防火墙使用的协议异常技术不存在模式/签名匹配方法的固有缺陷。相反,它采用默认的拒绝策略。根据协议定义,防火墙决定哪些流量应该被允许,保护网络免受不明威胁。
- 入侵防御系统 (IPS)
IPS 解决方案可以根据内容阻止有害数据包的传输,从而实时阻止可疑的攻击。这意味着如果某个数据包代表已知的安全隐患,IPS 将根据定义的规则集主动阻止网络流量。IPS的一个缺点是需要定期更新有关新威胁详细信息的网络威胁数据库,还可能存在误报。但可以通过创建保守的策略和自定义阈值、为网络组件建立适当的基线行为,并定期评估警告和报告的事件以加强监控和警报来降低这种危险。
4. DPI部署架构
DPI引擎通常与路由器、SDN和数据包网关中的防火墙内联部署。非关键分析也可以进行离线数据包分析。DPI是 4G LTE 和 5G 数据包网关 (P-GW) 中的标准选项。例如,ISP的骨干网络可以是一个 40-Gb/s 系统,带有四个 10-Gb/s DPI模块。在云/ SDN隐含的动态服务环境中,由于对CPU资源的高要求,DPI可能会与网络设备(作为运行在虚拟交换机中的软件)或在控制层(在应用程序和交换机之间的控制器中)共存。使用DPI 的实时分析被输入到大数据分析包中,这有助于服务提供商了解最终用户在做什么并相应地调整服务产品。
内联启用DPI
如果DPI实时分析内容,会不会拖慢网络数据传输速度?
当前许多的DPI方法是资源密集型且成本高昂的,特别是对于高带宽应用程序。由于DPI是实时完成的,因此它不适用于普通处理器或交换机。在最近几年,通过计算机工程和模式匹配算法的进步,DPI才逐渐成为可能。现在,专用路由器能够执行DPI。带有程序字典的路由器有助于识别它们路由的LAN和 Internet 流量背后的目的,消除了来自已知病毒重复攻击的漏洞。
网络流量统计
5. 应用场景
- 网络安全:检测恶意软件、入侵行为及数据泄露,如识别工业加密流量中的异常特征。
- 流量管理:优化网络带宽分配,实现QoS(服务质量)控制,如优先保障视频会议流量。
- 合规审查:执行内容过滤、版权保护及网络审查,如屏蔽非法内容或侵权数据。
6. 优缺点与挑战
- 优势:
-
DPI 是保障网络安全的重要工具。DPI 通过扫描数据包而不仅仅是数据包包头来检测风险或阻止可能隐藏在数据中的攻击。这使企业更容易检测恶意软件、阻止数据泄漏以及阻止对网络及其用户的其他安全威胁。
-
DPI 为控制网络流量提供了更多选择。DPI使规则编程能够搜索特定数据类型,并区分高/低优先级数据包。DPI可以以这种方式在整个数据流中优先处理较高优先级或关键任务数据包,并且这些数据包将在较低优先级通信之前通过网络发送。
-
可以使用DPI来检查试图离开网络的传出流量。使用DPI可以找出数据包的传输位置,这意味着企业可以开发用于阻止数据泄漏的过滤器。
-
DPI 对数据包的实时处理受预定规则的约束。根据团队实施的预编程规则,将检查并自动处理从包头到内容的所有数据包数据。系统自动对每个数据包进行排序、过滤和优先级,可以防止网络变慢。
-
DPI能够对匹配配置文件的流量做出反应。例如提醒用户丢弃数据包或减少该流量可访问的带宽。
-
- 局限性:
- 对加密流量无效(需结合解密手段)。
- 处理性能要求高,可能增加网络延迟。
- 涉及隐私争议,如用户行为监控引发合规风险。
7. 与DFI技术的对比
维度 | DPI | DFI(深度流检测) |
---|---|---|
检测对象 | 数据包内容(应用层) | 流量行为(连接数、速率等) |
加密适应性 | 需解密才能生效 | 不受加密影响 |
识别精度 | 高(可区分具体应用) | 低(仅分类流量类型) |