论文部分内容阅读
随着千兆网络的建设和升级,传统防火墙在硬件和结构上已不能满足同益增长的性能方面的要求。针对当前防火墙的不足,以互联网交换架构(IXA,InternetExchangeArchitecture)为基础,设计并部分实现了基于NP(networkprocessor,网络处理器)的防火墙。
在阐述了网络处理器和防火墙的一些背景和技术后,对传统防火墙的优缺点进行了分析。在此基础上,充分利用互联网交换架构的网络处理器本身所具有的优点,选择合适的多线程编程模式,设计了一个多线程NP防火墙。系统设计的核心是利用微引擎多线程实现对数据包的高速处理和转发。微引擎具有10Gbps的线速转发能力。设计方案中,绝大多数网络数据包只流经微引擎,通过微引擎/线程的合理分配,可达到3×2.5Gbps吞吐率的设计目标。
提出数据层面与控制层面剥离的多层面并行设计思想,在实现过程中,重点对三个难点模块(数据包接收模块、数据包过滤模块和数据包转发模块)的数据结构进行了分析和描述,流程图绘制,及其程序开发实现。
对系统程序的功能正确性、时空间复杂度、系统稳定性以及系统吞吐率等系统性能进行了分析和测试,结果表明:基于IXP2400的防火墙基本实现了状念检测、ACL过滤、流量控制、NAT转换和日志等当前硬件防火墙的功能。由于防火墙大部分功能由软件实现,在功能升级时,只需要对某些部分进行软件修改,不需要硬件的重新设计,降低了开发的周期和费用。基于NP的防火墙在性能和功能可扩展等方面具有较大的发展潜力。