论文部分内容阅读
自因特网兴起以来,其迅猛增长的势头就从未停止,通信链路以吉比特乃至更高的速度进行数据传输己不成问题,而承担网络通讯任务的传统路由器,通常对数据包未加区分尽力而为地转发,这种方式己不能满足网络用户对不同服务的需求。因此路由器需要对数据包进行分类,以提供有差别的网络服务来满足不同的用户需求,流分类技术已成为实现防火墙包过滤、基于策略的路由、虚拟专用网和流量计费等差别服务的基础。由于对每个数据包都要进行分类处理,因此流分类也成为了高速路由器的一个性能瓶颈,如何在可接受的时间和空间复杂度下进行快速的流分类是目前需要解决的一个难题。基于网络处理器的流分类系统的研究与设计,为高速网络下信息安全的实时检测,促进新一代信息安全检测技术研究的深入,提供了基础。本文对流分类算法进行了研究,以网络处理器为硬件核心,对HiCuts流分类算法进行了改进,将网络处理器技术和并行流分类算法结合起来,研究与设计了一个流分类系统。主要工作包括:1、在HiCuts算法基础上,提出了改进的HiCuts流分类算法。该算法通过对现有策略库的统计分析,结合HiCuts算法的并行思想,将每次切割的维数变成2维,而且对子空间进行了有效的合并压缩。从而降低了HiCuts算法的空间复杂度,提高了查找速度,同时更适合用网络处理器来实现。2、以IXP2400为硬件核心,运用改进的HiCuts算法设计和实现了一个高速流分类系统。文章分析了IXP2400的硬件体系架构,基于Intel IXA框架提出了实现流分类系统的软件架构和硬件架构,并给出了软件架构中各功能模块的详细设计及性能分析。同时根据HiCuts算法的并行性要求,对IXP2400的微引擎和存储资源分配作了合理的规划。3、在算法的实现过程中,针对HiCuts算法实现过程中的数据分配进行了优化,对内存进行压缩,并合理利用网络处理器的任务分配方式。针对IXP2400网络处理器的特点,对流分类算法进行相应的改进,达到了良好的分类效果。