Enhancing FortiGate-VM Performance with DPDK and vNP offloading
DPDK and vNP enhance FortiGate-VM performance by offloading part of packet processing to user space while using a kernel bypass solution within the operating system. You must enable and configure DPDK with FortiOS CLI commands.
FortiOS 7.0 supports DPDK for KVM environments.
FortiOS 7.0 supports IPv6.
The current DPDK+vNP offloading-capable version of FortiOS only supports FortiGate instances with two or more vCPUs. Minimum required RAM sizes differ from those on regular FortiGate-VM models without offloading. Allocating as much RAM size as the licensed limit for maximum performance, as shown, is recommended. See the 5.6 document for minimum size reference. FortiOS 6.2.2 and later versions do not restrict RAM size by license. Therefore, you can allocate as much memory as desired on 7.0-based DPDK-enabled FortiGate-VMs:
Model name |
RAM size (licensed limit) |
---|---|
FG-VM02(v) |
No restriction |
FG-VM04(v) |
No restriction |
FG-VM08(v) |
No restriction |
FG-VM16(v) |
No restriction |
FG-VM32(v) |
No restriction |
You can enable DPDK up to 64 vCPUs.
FortiOS 7.0.5 and earlier versions do not support encrypted traffic. It is recommended to disable the DPDK option using the CLI or adopt regular FortiGate-VM builds when using IPsec and SSL VPN features. FortiOS 7.0.6 and later versions supports encrypted traffic for IPsec VPN and not for SSL VPN. It is recommended to disable the DPDK option using the CLI or adopt regular FortiGate-VM builds when using SSL VPN features. For encrypted traffic support for IPsec VPN with DPDK, FortiOS 7.0.6 also adds support for the following:
|
Enabling DPDK+vNP offloading may result in fewer concurrent sessions when under high load than when DPDK+vNP offloading is not enabled and the same FortiGate-VM license is used. |
Enabling DPDK in polling mode results in high CPU usage. |