网络安全问题逐渐受到重视,防火墙也变成企业不可或缺的设备。防火墙的大规模应用使得很多重点行业、重点领域的核心应用严重依赖于防火墙的性能指标。防火墙的性能正在成为防火墙的安全性之外正在备受关注的重要指标。
本文介绍对防火墙进行优化的思路。
1. 防火墙性能优化的一般性方法
本节推荐的方法可以明显的改进系统的性能。而且这些方法是平台独立的,不需要任何特别的调整。
使用防火墙产品的最新版本。
将最常访问的防火墙规则放置在规则基的顶端。
保持规则基小而简单。将相似的规则合并,以减少规则的数量。
清除不需要的隐含的规则。
如果防火墙有其它的模块,如VPN、IDS,如果不需要的话,就不要打开它。
在NAT中,使用网络代替地址范围。
2. 防火墙性能的硬件优化方法
在硬件规格中,影响防火墙性能的首要因素是CPU速度。尽量使用最快的CPU。
对于高性能的防火墙系统来说,内存的最低配置是256M,在大多数情况下,推荐512M。
L2 Cache的数量也对防火墙的性能有积极的影响。因此,尽可能的使用大的L2 Cache。
多CPU处理系统可以促使防火墙性能明显的增长。但是,对不同的软件系统而言,增长的幅度不同。有的系统针对多处理器做过优化,性能可以达到线性的增长,而有的系统专为单处理器设计,系统的性能增长的有限。
另一个非常重要的硬件因素是PCI总线带宽。特别是在千兆防火墙上,为了实现几个G的转发速率,必须使用多个66Mhz/64-bit PCI or 133Mhz/64-bit PCI-X总线扩展槽。如果使用PCI-X总线,就必须使用PCI-X兼容的网卡,以充分发挥PCI-X 133MHz标准。为了提供更好的带宽利用,多个网卡必须合理地分布在PCI/PCI-X总线上。
3. 防火墙操作系统和TCP/IP协议栈的优化
(1)加固操作系统
这不是真正的性能优化的建议,但是对于安全来说,是至关重要的。在安装防火墙之前,操作系统必须尽可能的达到最高的安全水平。有很多的指导手册详细的描述了加固的操作步骤。这里不再赘述。下面介绍几种方法:
停止所有非必须的网络服务和守护进程
修改IP协议栈的参数
(2)多网卡情况下的参数优化
将不同网卡的MAC地址设置成不同的值。
(3)当应用时,强制所有网卡处于最大速度和全双工模式,禁止自动协商
(4)调整STREAMS队列,可以使系统明显的提高吞吐量
(5)调整TCP hiwater参数,以最大化吞吐量
这些值主要是扩大发送和接收缓冲区
(6)调整TCP的Slow Start和TCP队列大小
可以影响服务器的性能。这种方法也可用于最大化HTTP服务器的性能
(7)调整TCP SACK机制
(8)调整特定厂商的网卡驱动参数
调整特定厂商的网卡驱动可以产生显著的效果。尽管NIC的安装接口和NIC调整参数属于特定的网络适配器厂商,但是大多数的基本调整参数还是差不多的。