论文部分内容阅读
随着国内互联网的崛起,各种网络应用如雨后春笋般出现在应用市场上,几乎每个人每天都会接触到网络,人们的信息也都通过网络进行传播。在这样一个信息化的社会中,信息已成为维持社会活动、经济活动以及生产活动的重要资源,保障信息安全,建立可靠、高效的信息安全保障体系,对于维护社会生活的稳定和国家安全具有重要的现实意义。结合特定的应用需求,本文阐述了一个基于协议解析的网络应用监控系统的设计与实现,给出了系统总体设计原则,描述了系统的基本架构、各个功能模块的划分及其主要工作流程。系统主要由五个子系统组成。平台管理子系统,管理系统配置和日志,并负责控制和调度系统进程:业务管理子系统,管理系统业务;数据采集子系统,对各种不同数据源的数据进行采集和整理;协议解码子系统,对数据分别进行底层解码和应用层解码,应用层解码时,对http协议,使用模板技术和多模匹配算法进行解析;输出子系统,将解析的数据按照业务需求进行输出。在数据采集时采用网卡驱动方式,通过零拷贝驱动直接获取数据,能够最大限度的将有限的CPU资源让给应用程序。同时,系统还利用内存缓冲池作为进程间数据传递的缓存模型,使系统能够循环反复的利用已申请的内存块,减少了内存申请和释放的开销,从而改善了系统性能。作者的主要工作是对非http协议比如即时通讯类协议的识别和解码以及模板技术的实现,并输出还原出原始内容和操作行为,即模板技术和应用层解码模块的设计思想和具体实现。该系统目前已经上线,并为相关部门提供了很多有用的线索。实际运行结果表明,系统能够同时对一千多个网络应用进行监听,能够满足实际应用的需求。