论文部分内容阅读
网络数据包捕获是指在ISO七层网络模型中的数据链路层采集其协议单元。通过对捕获到的数据包进行分析,就可以产生很多进一步的应用。入侵检测,网络测量以及网络行为分析等系统的成功应用,都是以可靠的数据包捕获为前提的。 Libpcap与PF_RING都是比较流行的数据包捕获技术。同时随着多核处理器的发展,并行计算的提出,采用多核处理器进行数据包捕获已经逐渐成为发展趋势。本文着眼于各种数据包捕获技术的比较研究,意在找出这些技术的适用范围与影响因素。本文的主要工作内容包括以下几个方面: 首先对基于Libpcap和PF_RING的数据包捕获方法进行了实现。在并行计算思想下,本文提出了一个基于Tilera Pro64平台的数据包捕获应用框架。这个数据包捕获框架具有高度可扩展性,能够利用平台IPP机制对数据包进行并行处理。同时采用数据并行模式,配合多个处于同等地位的数据包捕获进程,可以极大的利用多核处理器优势来提高数据包捕获能力。 其次针对Libpcap等数据包捕获技术适用场景问题,本文设计了捕获率对比、CPU策略等多组实验并且做出了相应测试。通过对捕获效率的对比,查看它们在数据捕获方面的优劣性。另外还分别从CPU调度策略、处理负载以及多线程协作等方面对数据包捕获技术的影响进行了实验。最后对实验结果进行分析,寻找实验中各种优劣表现的原因所在,从而在不同的应用环境下,向开发者提出在系统配置、多核分配策略、多进程协作等方面的建议指导。