致谢 | 第5-6页 |
摘要 | 第6-7页 |
ABSTRACT | 第7-8页 |
1 引言 | 第11-17页 |
1.1 课题研究背景与意义 | 第11页 |
1.2 研究现状 | 第11-13页 |
1.3 研究内容与目标 | 第13-15页 |
1.4 论文的组织结构 | 第15-17页 |
2 原移动互联网审计平台的技术方案与问题分析 | 第17-28页 |
2.1 原系统的数据包采集方案 | 第17-21页 |
2.1.1 Libpcap工作机制 | 第17-19页 |
2.1.2 传统Libpcap抓包机制的问题分析 | 第19-21页 |
2.2 原系统的数据解析方案 | 第21-23页 |
2.2.1 深度包检测技术 | 第21-22页 |
2.2.2 现有工作基础 | 第22-23页 |
2.2.3 原数据解析方案的问题分析 | 第23页 |
2.3 原系统的单进程架构分析 | 第23-26页 |
2.3.1 系统的硬件支持 | 第23-25页 |
2.3.2 单进程架构问题分析 | 第25-26页 |
2.4 小结 | 第26-28页 |
3 基于PF_RING改进的数据采集模块 | 第28-40页 |
3.1 其他数据包捕获技术 | 第28-34页 |
3.1.1 基于Netfilter框架的数据包捕获技术 | 第28-29页 |
3.1.2 NAPI技术 | 第29-31页 |
3.1.3 零拷贝技术 | 第31-32页 |
3.1.4 基于PF_RING套接字的数据包捕获技术 | 第32-34页 |
3.2 改进的PF_RING机制 | 第34-37页 |
3.2.1 PF_RING的可改进空间 | 第34-35页 |
3.2.2 PF_RING的改进方案 | 第35-37页 |
3.2.3 改进后的PF_RING | 第37页 |
3.3 数据包采集性能测试 | 第37-39页 |
3.4 小结 | 第39-40页 |
4 数据解析模块的预处理方案设计 | 第40-52页 |
4.1 其他业务识别技术 | 第40-41页 |
4.1.1 端口检测技术 | 第40-41页 |
4.1.2 深度流检测技术 | 第41页 |
4.2 基于缓存命中的预处理方法 | 第41-49页 |
4.2.1 预处理方法的相关工作 | 第41-44页 |
4.2.2 缓存数据结构的设计 | 第44-48页 |
4.2.3 缓存的创建与维护 | 第48-49页 |
4.3 数据解析性能测试 | 第49-51页 |
4.4 小结 | 第51-52页 |
5 多进程架构的设计与实现 | 第52-63页 |
5.1 数据采集阶段的多进程架构 | 第52-54页 |
5.2 数据解析阶段的多进程架构 | 第54-55页 |
5.3 审计平台的多进程实现 | 第55-60页 |
5.3.1 进程的创建 | 第55-56页 |
5.3.2 多线程下调用fork的锁问题 | 第56-57页 |
5.3.3 进程间通信 | 第57-58页 |
5.3.4 进程间的心跳功能 | 第58-60页 |
5.3.5 进程间的信息校验功能 | 第60页 |
5.4 多进程架构性能测试 | 第60-62页 |
5.5 小结 | 第62-63页 |
6 总结与展望 | 第63-67页 |
6.1 工作总结 | 第63-65页 |
6.2 后续工作展望 | 第65-67页 |
参考文献 | 第67-70页 |
作者简历及攻读硕士学位期间取得的研究成果 | 第70-72页 |
学位论文数据集 | 第72页 |