车载防火墙NAT的性能测试方法
一前言
车载防火墙是针对城市轨道交通车载TCMS系统和信号系统等设计开发的边界隔离和安全防护产品。产品采用工业级ARM多核处理器芯片的硬件架构和自主知识产权的智能工控安全操作系统(IICS-OS),基于优化的软硬件架构提高报文的处理能力,对主流工业协议进行深度报文解析(DPI,Deep Packet Inspection),运用“白名单+智能学习”技术建立车载数据通信及车载控制网络区域间通信模型,保证只有可信任的流量可以在网络上传输。车载防火墙部署在轨交系统关键环节,并且在涉及车辆和地面通信时使用到防火墙NAT技术。因此,对于防火墙NAT除了全面的功能测试外,其性能测试也是不容小觑的。
二NAT对防火墙性能的影响
一条完整NAT工作流程大致可分为如下几个步骤:当一个内网主机经过防火墙主动向外发起连接时,防火墙NAT模块会将报文IP头部源IP地址转换为公网地址、同时为了提高防火墙资源利用率,还会对报文TCP/UDP头部源端口号进行转换。如此一来,就需要一个NAT转换表来维护这些连接的状态,即在业务首包通过NAT时建立相应的转换表项,该连接的后续报文通过快速查找该表项直接进行相应的转换。当一个连接关闭后,相关转换表项将被删除,回收所占用的资源。
由此可见, NAT对防火墙性能的影响主要表现在以下几个方面:各个字段的转换(包括IP地址、端口号、校验和)、转换表项的建立、转换表项的查找。对于防火墙NAT的性能测试,也将从这几方面进行。
三防火墙NAT性能测试方法
本文中的测试方法以源NAT为例,从NAT吞吐量测试和NAT关联表容量测试两个方面对防火墙NAT进行性能测试,目的NAT方法类似。图3-1为本次测试所使用的组网拓扑图,其中被测防火墙配有ACL策略(如果不配置ACL策略,那么所有报文都会被拦截)和源NAT策略、完成对测试报文的地址转换,辅助防火墙配置ACL策略,用于只放行源NAT转换成功的报文。
图3-1 NAT性能测试组网
3.1 吞吐量性能测试
吞吐量是指在没有丢包的情况下,设备能够承受的最大速率。采用二分法来测试设备的性能,具体如下:在测试中以一定速率发送一定数量的帧,并计算被测设备传输的帧。如果丢包率为0(或者小于指定的可接受值),那么就将发送速率提高到“当前值与最大值的中间值”,并将最小值大小更新为当前值的大小。(例:当前是40%,最大是100%,那么下一个应该测试70%)。如果丢包率不为0(或者大于指定的可接受值),那么就将发送速率降低到“当前值与最小值的中间值”,并将最大值大小更新为当前值的大小,逐渐调整发送速率直至满足没有丢包时的最大发送速率,得出最终结果。这项测试用来确定防火墙NAT在接收和发送数据包而没有丢失情况下的最大数据传输速率,是测试防火墙在正常工作时的数据传输处理能力。
车载防火墙NAT同时支持路由模式NAT和透明模式NAT,相应的两种模式下吞吐量性能测试都需要验证,本文将以路由模式为例,透明模式类似、感兴趣的同学可以实操练习一下。
被测防火墙关键配置
(1)如图3-2所示,1条ACL规则:源安全域-any、目的安全域-any、源MAC-00:00:00:00:00:00、目的MAC-00:00:00:00:00:00、源IP-any、目的IP-any、开始时间-any、结束时间-any、方向-双向、动作-通过、协议-ALL。
图3-2 被测防火墙ACL策略
(2)如图3-3~图3-5所示,依次配置资产、资产池和源NAT策略。
图3-3 被测防火墙资产配置
图3-4 被测防火墙资产池配置
图3-5 被测防火墙源NAT配置
(3)根据实际组网连接情况,配置一条静态路由(目标网段-106.120.100.0/24、出接口-与测试仪2口互联接口、下一跳-测试仪2口IP地址),保证基础路由转发可达。
辅助防火墙关键配置
辅助防火墙工作在透明模式,如图3-6、图3-7所示,依次配置资产、ACL策略,设置ACL策略精确匹配、只放行源NAT转换成功的报文。
图3-6 辅助防火墙资产配置
图3-7 辅助防火墙ACL配置
测试仪关键配置
在测试仪1口构造如下报文发往2口,单向流:
Protocol:UDP
Source IP:10.0.0.1,递增N个
Destination IP:106.120.100.210
Source Port:1024
DestinationPort:1025
报文长度:分别测试64,256,512,1518字节
报文速率:采用二分法逐渐调整报文发送速率,以确定吞吐量
报文流数:调节N值,分别测试1,100,1000条流场景下的NAT吞吐量
3.2 关联表容量测试
对于关联表容量测试,对于1:1的源NAT和N:1的源NAT稍有不同,需要分别测试。其中1:1源NAT转换过程中对于转换后公网IP只需消耗1个源端口资源即可,而对于N:1源NAT转换过程中转换后公网IP则需要消耗N个源端口资源(通常是非知名端口1024-65535)。
1:1源NAT关联表容量测试
被测防火墙、辅助防火墙不变,只需要简单调整测试仪关键配置即可:
Protocol:TCP
Source IP:10.0.0.1,递增N个
Destination IP:106.120.100.210
Source Port:1024
DestinationPort:1025
报文长度:512字节
报文速率:1000pps(可视具体情况动态调整,不大于设备新建能力即可)
报文流数:采用二分法逐渐调整N值,以确定可正确完成地址转换时的IP数量。
N:1源NAT关联表容量测试
相对于1:1源NAT,N:1源NAT转换后源IP为同一个,因此需要调整被测防火墙地址池和源NAT策略。
被测防火墙关键配置
如图3-8、图3-9所示,修改被测防火墙相关资产池和源NAT策略配置。
图3-8 被测防火墙资产池配置
图3-9 被测防火墙源NAT配置
测试仪关键配置
方法同“1:1源NAT关联表容量测试”。
四结语
防火墙NAT性能测试的重点在于流量模型的构建,如何调整参数使得被测设备得到一个更高的性能值是测试中的关键。 因此,在实际测试过程中应当做好参数设置和测试结果的详细记录。 此外,为避免出现一次测试的偶然性,在实际测试过程中还应当多次测试取平均值,这样的结果才会更加准确。
