Intel® Ethernet Controller E810 Application Device Queues (ADQ)

Configuration Guide

ID Date Version Classification
609008 07/04/2024 Public
Document Table of Contents

Configure Symmetric Queues

This must be done after TC creation.

Symmetric queuing method is used for aligning egress/ingress traffic on a pre-configured Tx/Rx queue pair. XPS using receive queues map is used to select transmit queue based on the receive queue(s) map configuration set by the administrator. A 1:1 mapping between receive queues and transmit queues enables sending packets on the same queue associations for transmit and receive.

XPS is only available if the kconfig symbol CONFIG_​XPS is enabled. As specified in the kernel build section, the kernel needs to compiled with CONFIG_​SMP=y for this. For symmetric transmit queue selection based on receive queues map, xps_​rxqs map attribute for the transmit queue needs to be configured using the sysfs file entry.

The following variables are used in the examples in this section:

$iface The interface in use (PF or VF).
tx-${i} The transmit queue being configured.
$mask A bitmap of receive queues that might use the transmit queue.

Automatic configuration can be done easily using the script included in the scripts folder of the ice driver package:

${pathtoicepackage}/scripts/set_xps_rxqs $iface

Or configuration can be done manually by echoing a CPU mask into the desired Tx queue's xps_​rxqs location:

echo ${mask} > /sys/class/net/${iface}/queues/tx-${i}/xps_rxqs

Example:

echo 10 > /sys/class/net/eth0/queues/tx-4/xps_rxqs

This enables egress traffic to be sent on transmit queue 4 when ingress traffic is received on receive queue 4.

Note:An additional requirement for symmetric queuing to work correctly with ADQ, is 1) cgroup configuration, or 2) setsockopt with SO_​PRIORITY. Both are outlined in Set cgroup Priority for Application Network Traffic (If Needed). Failure to configure cgroup or SO_​PRIORITY will result in Tx traffic going to default TC queues.