Multi-Queue Basic Configuration

You configure Multi-QueueClosed An acceleration feature on Security Gateway that configures more than one traffic queue for each network interface. Multi-Queue assigns more than one receive packet queue (RX Queue) and more than one transmit packet queue (TX Queue) to an interface. Multi-Queue is applicable only if SecureXL is enabled (this is the default). Acronym: MQ. on the command line in one of these shells:

Multi-Queue Configuration in the Expert mode

Description

The mq_mng utility shows and configures the Multi-Queue on supported interfaces.

Syntax

Important:

  • To see the built-in help

    mq_mng {-h | --help}

  • To show the existing Multi-Queue configuration:

    mq_mng {-o | --show} [{-v | -vv}] [-a]

  • To configure the Multi-Queue for the specified driver:

    mq_mng {-s | --set-mode}

          auto

          manual

                {-i | --interface} <Names of Interfaces>

                {-c | --core} <IDs of CPU Cores>

          off

                [{-i | --interface} <Names of Interfaces>]

  • To apply the existing Multi-Queue policy:

    mq_mng {-r | --reconf}

Parameters

Parameter

Description

-h | --help

Shows built-in help.

-o | --show

Shows the existing Multi-Queue configuration.

-v | -vv

Verbose output.

-a

Shows all interfaces in the output.

-s | --set-mode

Configures the Multi-Queue mode:

Important - Change in the Multi-Queue mode can cause short packet loss.

 

Notes:

  • To specify interfaces:

    • Use this syntax:

      {-i | --interface} <Names of Interfaces>

    • If you do not specify interfaces, then the configuration applies to all supported interfaces.

    • To specify a specific interface, enter its name (for example: -i eth2).

    • To specify several interfaces, enter their names separates with spaces (for example: -i eth2 eth4).

  • To specify CPU cores:

    • Use this syntax:

      {-c | --core} <IDs of CPU Cores that run CoreXL SND Instances>

    • To specify a specific CPU core, enter its ID number (for example: -c 1).

    • To specify several nonconsecutive CPU cores, enter their ID numbers separated with spaces (for example: -c 1 3) or commas (for example: -c 1,3).

    • To specify several consecutive CPU cores, enter their first and last ID numbers separated with a hyphen (for example: -c 3-6).

  • To see the current CoreXL affinity configuration, run the fw ctl affinity command (with applicable parameters).

  • To see the CoreXL Firewall Instances and which CPU cores they use, run the fw ctl multik stat command.

  • To see all available CPU cores, run:

    cat /proc/cpuinfo | grep processor

-r | --reconf

Applies the existing Multi-Queue policy.

Examples

Multi-Queue Configuration in Gaia Clish

Syntax

Important:

  • To show the existing Multi-Queue configuration for the specified interface:

    show interface <Name of Interface> multi-queue [verbose]

  • To configure the Multi-Queue for the specified interface:

    set interface <Name of Interface> multi-queue

          auto

          manual core <IDs of CPU Cores that run CoreXL SND Instances>

          off

Parameters

Parameter

Description

<Name of Interface>

Specifies the interface.

verbose

Verbose output that also includes:

  • IRQ numbers for traffic queues

  • Total number of RX and TX packets in traffic queues

auto

Configures the automatic Multi-Queue mode (this is the default).

Multi-Queue automatically configures the affinity of the specified interface to CPU cores that run CoreXL SND Instances.

manual core <IDs of CPU Cores>

Configures the manual Multi-Queue mode.

Administrator configures the affinity of the specified interface to CPU cores that run CoreXL SND Instances.

Notes:

  • To specify a specific CPU core, enter its ID number (for example: manual core 1).

  • To specify several nonconsecutive CPU cores, enter their ID numbers separated with commas and without spaces (for example: manual core 1,3).

  • To specify several consecutive CPU cores, enter their first and last ID numbers separated with a hyphen (for example: manual core 3-6).

  • To see the current CoreXL affinity configuration, run the fw ctl affinity command (with applicable parameters).

  • To see the CoreXL Firewall Instances and which CPU cores they use, run the fw ctl multik stat command.

  • To see all available CPU cores, run:

    cat /proc/cpuinfo | grep processor

off

Disables the Multi-Queue on the specified interface.

Examples