[dpdk-dev] DPDK 21.05 NVIDIA Mellanox Roadmap

Asaf Penso asafp at nvidia.com
Mon Mar 1 20:17:39 CET 2021


Below is NVIDIA Mellanox's roadmap for DPDK21.05, on which we are currently working:

rte_flow new APIs:
===============
[1]Support a new action offload which perform connection tracking window validation.
Motivation:
TCP connection tracking is needed for many applications that act as a mediator and perform forwarding. The new offload connection tracking(CT) window validation is used for enforcing TCP protocol adherence.
It also enforces several sanity checks for TCP packets like the validity of L3 and L4 headers as well as the accuracy of L3 and L4 checksum.
The new offload action API will provide means to create, configure, query, and modify the connection tracking object by a SW application. It will support a bi-directional, cross vport TCP handshake in an optimized manner
 
[2]Add support for matching based on sanity checks of TCP packets. Able to match the validity of L3 and L4 headers as well as L3 checksum and L4 checksum.
Motivation:
Allow TCP connection tracking flow to intercept corrupted packets before they alter the connection tracking object. An application may match on such cases and handle differently than regular route(e.g drop or pass to SW queue
 
[3]Extend meter capabilities with the concept of meter policy
Motivation:
Extend meter capabilities to add support for a shared meter policy. A meter policy is an object that can be shared among different meters. It provides the ability to associate different actions per color Red/Yellow/Green and thus use a meter as a steering mechanism. The first implementation will support queue, rss, jump, mark, and set_tag actions. Given the fact that the policy is shared across many meter flows a performance gain is also expected. 
rte API will be augmented with an additional create meter API to make use of the new policy object.
                           
[4]Add support for writing information related to a single rte flow
Motivation: 
Allow finely grained debug of how flows are represented in the HW. Previously support was added to dump all rte flows using 'flow dump <port> all <output_file>. Now we are extending to support single flow dump using flow dump <port> rule <rule_id> <output_file>


rte_mtr new APIs
===============
[5] add support for a meter profile that enable packet per second metering
Motivation:
Provide flexibility to applications that would like to meter based on packets per second granularity on top of byte per second granularity that exist today as part of meter profile.
 

mlx5 PMD updates: 
================
mlx5 PMD will support the rte_flow update changes listed above and below
 
[6]Extend support for VLAN pop on egress direction and VLAN push on ingress direction
Motivation:
Some applications like firewalls, need to alter the routing information bi-directionally. Today mlx5 PMD supports VLAN pop on ingress and VLAN push on ingress and the intention here is the augment with the corresponding pop/push actions.

[7]Add support for rte_security API
Motivation: enable IPsec inline offload to be used in conjunction with other rte flow API to enable inline encrypt/decrypt of packets. Mlx5 will support Encapsulating Security Payload(ESP) with ConnectX-6 Dx and BlueField-2 

[8]Add support for power saving in rx queues
Motivation: support for umwait command to enable reduction of power consumption if no packets are received.
 
[9]Add support for using HW configured timestamp format 
Motivation: modify the pmd to use the timestamp format based on HW ability - either UTC or free-running


New PMDs:
==============
[10]Implement look aside AES-XTS encryption/decryption PMD over BlueField-2 SmartNIC and ConnectX-6 Dx to support existing rte_cryptodev API


Regex PMD updates:
=================
[11]Added support for regex(regular expression engine in BlueField-2  with chained mbuf   
Motivation: Allow  regex to handle jobs that require a multiple chained mbuf jobs efficiently 


testpmd updates: 
================
testpmd updated to support the changes listed above
 

flow-perf updates:
================
enhance flow-perf application to support the connection tracking window validation offload



More information about the dev mailing list