深度包检测是相对于仅面向包头的浅度包检测技术而言的。浅度包检测技术仅检查网络数据包的包头,如网络层的IP包头和传输层的面向传输控制协议(transmission control protocol/internet protocol,TCP)/用户数据报协议(user datagram protocol,UDP)包头,针对其中的IP地址、端口号、TCP标志等信息进行分析或过滤。而深度包检测进行逐层拆包,取出数据包中的应用层载荷内容进行分析。具体的分析可以是面向单个包的载荷内容,也可以是TCP报文重组后的完整会话内容。常见的分析方法包括特征字匹配、应用层协议解析,以及基于机器学习的分类识别等。该技术面临的困难和挑战是计算复杂度高、网络流量加密以及用户隐私保护等问题。
深度包检测可以更准确地识别网络数据包的应用层协议和业务类型,也能更有效地检测消息格式的合法性和消息中的恶意内容,从而实现高级的网络管理、服务质量控制、安全防护、安全审计等功能。