diff options
author | Matias Elo <matias.elo@nokia.com> | 2022-07-01 11:44:35 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-01 11:44:35 +0300 |
commit | 3b9d1514e55955953786211f1fdec8e97f3688c7 (patch) | |
tree | 1d8ffcc8573670792ec788fd4a006103ff5e8a8e /DEPENDENCIES | |
parent | 58fe883d5e43dc315d4751433f73c5d8ed7e5ba7 (diff) | |
parent | 3f7e35f89ff349d531542d73ba854de9695568f4 (diff) |
Merge ODP v1.37.1.0v1.37.1.0_DPDK_19.11
Merge ODP linux-generic v1.37.1.0 into linux-dpdk
Diffstat (limited to 'DEPENDENCIES')
-rw-r--r-- | DEPENDENCIES | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/DEPENDENCIES b/DEPENDENCIES index b18279da2..6d5433094 100644 --- a/DEPENDENCIES +++ b/DEPENDENCIES @@ -336,26 +336,39 @@ Prerequisites for building the OpenDataPlane (ODP) API 3.6.3 Running ODP with AF_XDP socket packet I/O - At the moment, each AF_XDP socket packet I/O binds to a single TRX queue, - this means that NIC(s) of the environment have to be configured accordingly. + AF_XDP socket packet I/Os bind to TRX-combined queues. Based on the packet + prosessing needs, NIC(s) of the environment should be configured + accordingly. - $ ethtool -L <if name> combined 1 + $ ethtool -L <if name> combined <count> + + For example, with four (4) TRX queues, packet processing can be divided to + four (4) processing cores. Additionally, with some NICs (e.g. Mellanox), when zero-copy XDP is in use, the queue configuration is adjusted by the NIC with additional queues on top - of the configured single TRX queue. This requires a forwarding rule: + of the configured amount of TRX queues which are then used as the actual + queues. This will require additional forwarding rules as otherwise packets + do not get forwarded to the zero-copy queues. + + For example: + + ethtool -N <if name> flow-type ether dst <mac of if> action 5 - $ ethtool -N <if name> flow-type ether dst <mac of if> action 1 + Would forward Ethernet frames with a given destination address to queue 5, + which should be one of the zero-copy queues, i.e. queue index on top of the + amount configured with "ethtool -L" option. - Which queue to bind to in a given interface can be controlled with an + Which queues to bind to a given interface can be controlled with an environment variable when starting an ODP executable: $ ODP_PKTIO_XDP_PARAMS="<if name>:<queue index> <if name>:<queue index> ..." ./<odp executable> ... parameter being a string of interface-queue index pairs, where interface and - queue is separated by a colon and pairs separated by a whitespace. If no - environment variable is passed, zero (0) queue is chosen for all AF_XDP - interfaces. + queue are separated by a colon and pairs separated by a whitespace. The queue + index dictates the starting queue in case of multiple TRX queues per packet + I/O. If no environment variable is passed, zero (0) starting queue is chosen + for all AF_XDP interfaces. 4.0 Packages needed to build API tests |