Enabling multi-core¶
flexiWAN by default uses 2 cores on flexiEdge. The first core is used of the operating system and the second core is used for the vRouter. Additinal vRouter cores are required for:
When enabling QoS in order to run the scheduler
To increase the throughput
With multi-core devices can utilize more than one core and increase tunnel performance. The encryption and tunnels performance is increased when running multiple tunnels on a flexiEdge and can be boosted significantly.
Requirements¶
In order to enable multi-core, the device must satisfy the following system requirements:
Modern processor with 3 or more cores
A network card which supports RSS - Receive Side Scaling. Learn more about it here.
Note
Power saving mode is not enabled when using multi-core, and due to the DPDK poll mode drivers, the CPU will be utilized in 100%
Recommended use case¶
While it can be tempting to enable multi-core and use all CPU cores, enabling this feature may not be suitable for every deployment. By default flexiWAN utilizes single core for routing, which can provide up to gigabit throughput using encrypted tunnels on most of modern hardware.
Enabling multi-core is recommended if the flexiEdge fits one of the following use cases:
flexiEdge connected to multiple other flexiEdges - Such as Datacenter hub or large sites
Tunnel throughtput improvements will be notable when the main site has three or more tunnels. It will not be noticable with a single tunnel
Note
Enabling multicore will NOT affect NAT performance. Only encrypted tunnels will benefit from it.
Enabling multi-core¶
In previous flexiWAN versions, multi-core was enabled using system checker which is no longer possible. In latest flexiWAn versions in order to enable multi-core navigate to the device you wish to enable multi-core using flexiManage.
In order to enable multi-core, from flexiManage open flexiEdge site on which you wish to enable multi-core. From there, click on the Configuration tab.
From there click on Advanced tab and click on Hardware Configuration
Within Hardware Configuration dialog window observe the following sections:
- HW CPU cores
Shows hardware CPU cores
- Current vRouter cores
Shows currently used CPU cores by flexiWAN’s vRouter
- vRouter cores
Allows defining number of cores used by flexiWAN.
- Power saving
When enabled, the vRouter CPU core will not be utilized 100% at all times. Note, enabling this feature may introduce a delay in packet processing. This function does not work when enabling more than 1 vRouter cores.
For this example, CPU host has 4 hardware CPU cores. By design, one core is reserved for the operating system operation in which case 3 CPU cores are available for multi-core utlilization. In this case, set the vRouter cores to 3 and click on Apply configuration, after which the system will reboot.
Upon reboot, system will utilize 3 CPU cores, which can be confirmed by running top from the command line.