运行系列性能测试 VM- firewall - 提示和技巧
32018
Created On 07/12/20 00:49 AM - Last Modified 03/26/21 18:29 PM
Symptom
- firewall从通过设备的主机运行 iperf 命令时,性能吞吐量较低。
- 通常,单流iperf命令的吞吐量不尽如人意:
# iperf3 -c 172.17.50.126 -t60 -i1 [ ID] Interval Transfer Bandwidth Retr [ 4] 0.00-60.00 sec 2.15 GBytes 307 Mbits/sec 1758 sender [ 4] 0.00-60.00 sec 2.15 GBytes 307 Mbits/sec receiver
- 吞吐量仅为 307 Mbps,但 VM-700 IPSEC 支持的吞吐量高达 6 Gbps。
- 运行多线程 iperf 命令略有改进:
# iperf3 -c 172.17.50.126 -t60 -i1 -P4 [ ID] Interval Transfer Bandwidth Retr Cwnd [ 4] 0.00-1.00 sec 19.6 MBytes 164 Mbits/sec 11 120 KBytes [ 6] 0.00-1.00 sec 23.5 MBytes 197 Mbits/sec 10 144 KBytes [ 8] 0.00-1.00 sec 20.4 MBytes 171 Mbits/sec 30 102 KBytes [ 10] 0.00-1.00 sec 13.9 MBytes 117 Mbits/sec 34 64.0 KBytes [SUM] 0.00-1.00 sec 77.4 MBytes 649 Mbits/sec 85 # iperf3 -c 172.17.50.126 -t60 -i20 -P16 [SUM] 0.00-60.00 sec 6.01 GBytes 861 Mbits/sec 24601 sender [SUM] 0.00-60.00 sec 6.01 GBytes 860 Mbits/sec receiver
Environment
- 平台: VM- 微软 Azure 系列 AWS , , GCP Vmware 等。。。
- PAN-OS /插件版本:任何
- 部署:现有
Cause
- 运行单会话 iperf 命令来测量性能吞吐量 firewall 不是推荐的解决方案。
- 具有单个会话的 Iperf 无法扩展太多,因为数据包无法分发到所有 DP 内核和队列 NIC 中。
要验证此行为,请检查 PAN-OS CLI 输出以获得命令:
> debug dataplane pow status > show running resource-monitor
- 高性能吞吐量测试的另一个限制是网络限制。 除非您的客户端和服务器与 10Gb 网络相连,否则网络很有可能是瓶装网,并且您无法充分发挥服务器的处理潜力。
Resolution
- 性能团队建议用 mult 线程运行 Iperf。
- 扩大更多会话。
- 尝试使用wrk 进行性能测试和其他工具,这些工具可以生成更多数量的连接,以便会话分布在多个内核上。
- wrk 是一种现代 HTTP 基准测试工具,能够在单个多核上运行时产生大量负载 CPU 。 它将多线程设计与可扩展的事件通知系统(如 epoll 和 kqueue)相结合。
- 在 Linux 或主机上安装 wrk 工具 MAC ,并生成多线程、多连接 HTTP 电车。 请参阅以下文档: